#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 100;
long long n_r, n_g, n_b, r[maxn], g[maxn], b[maxn], ans;
void cal(long long n_r, long long n_g, long long n_b, long long r[],
         long long g[], long long b[]) {
  long long x, y, z, i, j = 1, k = 1;
  for (i = 1; i <= n_g; ++i) {
    y = g[i];
    while (r[j] <= y && j <= n_r) ++j;
    if (j == 1) continue;
    --j;
    x = r[j];
    while (b[k] < y) ++k;
    if (k > n_b) break;
    z = b[k];
    ans = min(ans, (x - y) * (x - y) + (y - z) * (y - z) + (z - x) * (z - x));
  }
}
void solve() {
  ans = 0x7fffffffffffffff;
  cal(n_r, n_g, n_b, r, g, b);
  cal(n_r, n_b, n_g, r, b, g);
  cal(n_g, n_r, n_b, g, r, b);
  cal(n_g, n_b, n_r, g, b, r);
  cal(n_b, n_g, n_r, b, g, r);
  cal(n_b, n_r, n_g, b, r, g);
  cout << ans << '\n';
}
int main() {
  int t, i, j;
  ios::sync_with_stdio(false);
  cin >> t;
  while (t--) {
    cin >> n_r >> n_g >> n_b;
    for (i = 1; i <= n_r; ++i) cin >> r[i];
    for (i = 1; i <= n_g; ++i) cin >> g[i];
    for (i = 1; i <= n_b; ++i) cin >> b[i];
    sort(r + 1, r + 1 + n_r);
    sort(g + 1, g + 1 + n_g);
    sort(b + 1, b + 1 + n_b);
    solve();
  }
  return 0;
}
