#include <bits/stdc++.h>

using namespace std;

#ifdef LOCAL
#include "rfd_wrap.h"
#endif

typedef long long ll;
typedef pair<int, int> pii;

#define bt(x) (1LL << (x))
#define all(x) (x).begin(), (x).end()
#define FastIO ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);

const int inf = 0x3f3f3f3f;
const ll INF = 2e18;

int main() {
	FastIO;

	int t;
	cin >> t;

	while(t--) {
		int n, l, r, s;
		cin >> n >> l >> r >> s;

		int p = r - l + 1;
		vector<int> v;

		int cs = p * (p + 1) / 2, cur = 0;
		for(int i=p; i>0 and cs<=s; --i) {
			cur++;
			int add = (s - cs) / i;
			cur += add;
			cs += add * i;
			v.push_back(cur);
		}

		if(cs != s or cur > n) cout << "-1\n";
		else {
			vector<bool> ok(n + 1, false);
			for(int x : v) ok[x] = true;
			for(int i=1, c=1; i<=n and c<l; ++i) {
				if(!ok[i]) {
					cout << i << " ";
					++c;
					ok[i] = true;
				}
			}
			for(int x : v) cout << x << " ";
			for(int i=1, c=r; i<=n and c<n; ++i) {
				if(!ok[i]) {
					cout << i << " ";
					++c;
					ok[i] = true;
				}
			}
			cout << "\n";
		}
	}

	return 0;
}