#include using namespace std; #define M 1000000007 #define f first #define s second #define pb push_back #define ll long long #define mp make_pair #define r0 return 0 int mini(int a,int b){return ab?a:b;} ll lmaxi(ll a,ll b){return a>b?a:b;} int gcd(int a, int b){ if(b==0) return a; return gcd(b,a%b); } ll lgcd(ll a, ll b){ if(b==0) return a; return gcd(b,a%b); } int lcm(int a, int b) {return a*(b/gcd(a,b));} ll llcm(ll a, ll b) {return a*(b/gcd(a,b));} ll q,n,c,a; /*void fun(vector v,int n,int c){ if((c((n*(n-1))/2)){ return; } int i,l; for(i=0;i<=n/2;i++){ v.push_back(i,n-i); l=n-i; if(i!=0){ fun(v,i,c-(l-1)-(i-1)); fun(v,l,c-(l-1)-(i-1)); } else{ fun(v,n,c-(n-1)); } } return; }*/ int main(){ cin>>q; while(q--){ cin>>n>>c; a=1; int flag=0; // while(1){ if(n==1){ cout<((n*(n-1))/2)&&flag==0){ cout<<-1<=n-2){ cout<