#include <stdio.h>
int t;
long long p = 1000000007;
long long n, a, b, x, y, z, w;
int main() {
	scanf("%d", &t);
	for (int q = 0; q < t; q++) {
		scanf("%lld%lld%lld", &n, &a, &b);
		if (a + b > n) {
			printf("0\n");
			continue;
		}
		x = n - a - b + 2;
		y = x - 1;
		z = (n - a + 1) * (n - b + 1) % p;
		z *= 2 * x;
		z %= p;
		z *= y;
		z %= p;
		w = x * y % p;
		w *= x * y % p;
		w %= p;
		z += p - w;
		printf("%lld\n", z % p);
	}
}
#include "bits/stdc++.h"
using namespace std;
#ifdef _DEBUG
#define dlog(str) cout << "====" << str << endl;
#else
#define dlog(str)
#endif
#define INF 999999999
#define MOD 1000000007
#define REP(i, n) for(int i = 0, i##_l = (n); i < i##_l; i++)
#define FOR(i, s, e) for(int i = s, i##_l = (e); i < i##_l; i++)
#define LLI long long int
#define _min(a,b) ((a<b)?a:b)
#define _max(a,b) ((a<b)?b:a)
#define chmax(a, b) a = _max(a, b)
#define chmin(a, b) a = _min(a, b)
#define bit(a, shift) ((a>>shift)&1))
#define pm(a) ((a)?1:-1)
#define SORT(v) sort(v.begin(),v.end())
#define RSORT(v) sort((v).rbegin(), (v).rend())
// int 2.14E±9    lli 9.2E±18    double 1.7E±380

LLI power(LLI a, LLI b) { LLI res = 1; while (b > 0) { if (b & 1)res = res * a % MOD; a = a * a % MOD; b >>= 1; }return res; }
int main()
{
	cout << fixed << setprecision(10);

	int t;
	cin >> t;

	REP(i, t)
	{
		LLI n, a, b;
		cin >> n >> a >> b;

		LLI x4 = (n - a - b + 2) * (n - a - b + 1) / 2;
		if (n - a - b < 0)x4 = 0;
		LLI x3 = 2 * x4;
		LLI x2 = (n - a + 1) * (n - b + 1) - x3;
		x2 %= MOD;
		LLI x1 = x2 * x2;

		cout << ((power(n - a + 1, 2) * power(n - b + 1, 2)) % MOD + MOD - x1 % MOD) % MOD << endl;
	}

	return 0;
}