func_code_string: /*   --------------------       |       LOSER        |       |     ~NOOBOSS~      |        --------------------   */   #include <bits/stdc++.h>   using namespace std;   #define      mxx                 1e18   #define      mnn                 -1e18   #define      Y()                 cout<<  YES  <<endl   #define      N()                 cout <<  NO <<endl   #define      endl                  n    #define      Ceil(x,y)           ((x+y-1)/y)   #define      sz(s)               (int)s.size()   #define      angle(x)            double(x * acos(-1) / 180.0)   #define      max_3(a,b,c)        max(a, max(b,c))   #define      min_3(a,b,c)        min(a, min(b,c))   #define      gcd(a,b)            __gcd(a,b)   #define      lcm(a,b)           (a*b)/gcd(a,b)   #define      loser               return 0   #define      ll                  long long   #define      PI                  acos(-1)   #define      mem(a,v)            memset(a,v,sizeof(a))   #define      SORT(v)             sort(v.begin(),v.end())   #define      REV(v)              reverse(v.begin(),v.end())   #define      B                   begin()   #define      E                   end()   #define      V                   vector   #define      F                   first   #define      S                   second   #define      PSB                 push_back   #define      MP                  make_pair   #define      flash               cout.flush()   #define      InTheNameOfGod      ios::sync_with_stdio(0);cin.tie(0); cout.tie(0);   constexpr ll MOD = 998244353;   constexpr ll mod = 1e9  + 7;   int dx[] = {0,0,1,-1};   int dy[] = {1,-1,0,0};   /*-----*/   #define bug1(a)  cerr<<a<<endl;   #define bug2(a,b)  cerr<<a<<   <<b<<endl;   #define bug3(a,b,c)  cerr<<a<<   <<b<<   <<c<<endl;   /*----*/   const ll N=3e6+5;   vector<ll> adj[N];   ll power(ll n,ll p){if(p==0) return 1;if(p==1)return n;if(p%2)return power(n,p-1)*n;else{ll x=power(n,p/2);return x*x;}}   ll modpow(ll a,ll b,ll m){ll ans=1;while(b){if(b&1)ans=(ans*a)%m;b/=2;a=(a*a)%m;}return ans;}   ll nsum(ll num){return (num*(num+1))/2;}   void edge (ll u,ll v) {adj[u].PSB(v) ;adj[v].PSB(u);}   /*------------------START---------------------*/      /*-----*/   void solve(){      ll n,k;      string s;      cin>>n>>k;      if(n<3){        if(k) cout<<-1<<endl;        else{           for(ll i=1;i<=n;i++) cout<<i<<   ;           cout<<endl;        }        return;      }         ll mx=1; ll bal=n-3;      mx+=bal/2;      if(k>mx){       cout<<-1<<endl;      }      else{         cout<<1<<   ;         ll ct=2;         for(ll i=2;i<=n;i++){           if(k){               cout<<i+1<<   <<i<<   ;               --k; i++;           }           else{               cout<<i<<   ;           }         }         cout<<endl;      }         //cout << fixed << setprecision(10);   }   /*-----*/   int main(){      InTheNameOfGod         ll Test=1;      cin>>Test;      while(Test--){        solve();       }     loser;   }   ///////   C O D I N G  I S  L I F E   ///////   