#include <bits/stdc++.h>
using namespace std;
long long int power(long long int x, unsigned long long int y) {
  int temp;
  if (y == 0) return 1;
  temp = power(x, y / 2);
  if (y % 2 == 0)
    return temp * temp;
  else
    return x * temp * temp;
}
long long int min(long long int a, long long int b) { return a > b ? b : a; }
long long int fun(set<long long int> q, set<long long int> w,
                  set<long long int> e) {
  long long int ou = 1e18 + 1e18;
  for (auto i : q) {
    long long int r;
    auto it = w.lower_bound(i);
    auto zt = e.upper_bound(i);
    if (it == w.end() || zt == e.begin()) {
      continue;
    }
    zt--;
    r = ((i - *it) * (i - *it)) + ((i - *zt) * (i - *zt)) +
        ((*it - *zt) * (*it - *zt));
    ou = min(ou, r);
  }
  return ou;
}
int main() {
  int t;
  cin >> t;
  while (t--) {
    int a, b, c;
    cin >> a >> b >> c;
    set<long long int> q, w, e;
    for (int i = 0; i < a; i++) {
      int r;
      cin >> r;
      q.insert(r);
    }
    for (int i = 0; i < b; i++) {
      int r;
      cin >> r;
      w.insert(r);
    }
    for (int i = 0; i < c; i++) {
      int r;
      cin >> r;
      e.insert(r);
    }
    long long int ans = (1e18) * 9;
    ans = min(ans, fun(q, w, e));
    ans = min(ans, fun(q, e, w));
    ans = min(ans, fun(w, q, e));
    ans = min(ans, fun(w, e, q));
    ans = min(ans, fun(e, w, q));
    ans = min(ans, fun(e, q, w));
    cout << ans << endl;
  }
}
