#include #define Max(a,b) ((ab)&&(a=b)) #define rep(i,a,b) for(ll i=a,i##end=b;i<=i##end;++i) #define drep(i,a,b) for(ll i=a,i##end=b;i>=i##end;--i) #define erep(i,a) for(ll i=hd[a],y;(y=to[i]);i=nxt[i]) using namespace std; typedef long long ll; char C; inline ll rd() { ll res=0,f=1; while(C=getchar(),C<48||C>57)if(C=='-')f=0; do res=(res<<3)+(res<<1)+(C^48); while(C=getchar(),C>=48&&C<=57); if(f)return res; return -res; } int main(){ ll T=rd(); while(T--){ ll n=rd(),m=rd(); Min(m,n/2); printf("%lld\n",2*n*m-2*(m+1)*m+m); } }