#include<bits/stdc++.h>
typedef long long ll;
const int maxn=500 + 5;
const int INF=0x3f3f3f3f;
using namespace std;
ll t,l,r,n,s;
vector<int> ve;
int arr[maxn];
bool vis[maxn];
int main()
{
	cin>>t;
	while(t--)
	{
		ve.clear();
		cin>>n>>l>>r>>s;
		int k = (r-l)+1;
		int ma = (n+n-k+1)*k/2; 
		int mi = (1+k)*k/2;
//		cout<<k<<"   "<<ma<<"   "<<mi<<endl;
		if(s>ma || s<mi)
		{
			cout<<-1<<endl;
			continue;
		}
		for(int a=n-k+1;a<=n;a++)
		{
			ve.push_back(a);
		}
		int de = ma-s;
		int d = de/k;
		for(int a=0;a<k;a++)
		{
			ve[a]-=d;
		}
		de%=k;
		memset(vis,0,sizeof(vis));
		memset(arr,0,sizeof(arr));
//		for(int a=0;a<k;a++)
//		{
//			cout<<"===="<<ve[a];
//		}
//		cout<<endl;
		for(int a=0;a<de;a++)
		{
			ve[a]--;
		}
//		for(int a=0;a<k;a++)
//		{
//			cout<<"===="<<ve[a];
//		}
//		cout<<endl;
		for(int a=0;a<k;a++)
		{
			vis[ve[a]] =1;
		}
		int i=1;
//		cout<<"=========";
		for(int a=1;a<=n;a++)
		{
			while(vis[i])i++;
			if(a>=l && a<=r)cout<<ve[a-l]<<" ";
			else cout<<i++<<" ";
		}
		cout<<endl;
	}
	return 0; 
}