//    ŦĦ€Ř€'Ş ŇØŦĦƗŇǤ ĦØŁĐƗ'Ň Μ€ βΔĆҜ ΔŁŴΔ¥Ş ΔŇĐ ₣ØŘ€V€Ř 😈🤩🤟🤜👊🤛💪😉😇:

#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")
#pragma GCC optimization ("unroll-loops")

#include<bits/stdc++.h>

#define mod 1000003
#define ll long long
#define vll vector<ll>
#define vi vector<int>
#define vp vector<pair<ll,ll>>
#define vs vector<string>
#define mll map<ll,ll>
#define mi map<int,int>
#define all(a) a.begin(),a.end()
#define rall(a) a.rbegin(),a.rend()
#define B(a) a.begin()
#define E(a) a.end()
#define For(i,a,b) for(ll i=a;i<b;i++)
#define Forr(i,a,b) for(ll i=a;i>=b;i--)
#define Itr(it,a) for(auto it=a.begin();it!=a.end();it++)
#define F first
#define S second
#define M_P make_pair
#define P_B push_back
#define add(x,y) P_B(M_P(x,y))
#define endd "\n"

using namespace std;

/////////////////////////////////////////////"SUIT YOURSELF"/////////////////////////////////////////////

vector<ll> zeus(ll n)
{
    vll a(n);

    For(i,0,n)
    cin>>a[i];

    return a;

}

///////////////////////////////////////////////"ASSEMBLE"////////////////////////////////////////////////

void Shazam()
{
    ll n,k; cin>>n>>k;

    if(k==n)
    {
        cout<<-1<<endd;
        return;

    }

    if((n%2==0 && k>=n/2) || (n%2!=0 && k>n/2))
    {
        cout<<-1<<endd;
        return;

    }

    ll srt=1,en=n;

    For(i,0,n)
    {
        if(i%2==0)
        {
            cout<<srt<<" ";
            srt++;

        }

        else if(k>0)
        {
            cout<<en<<" ";
            k--;
            en--;

        }

        else
        {
            cout<<srt<<" ";
            srt++;

        }

    }

    cout<<endd;

}

//////////////////////////////////////////"WHATEVER IT TAKES"////////////////////////////////////////////

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);

    ll t; cin>>t;

    while(t--)
    {
        Shazam();

    }


    return 0;
}
