#include <bits/stdc++.h>
using namespace std;
const long long int N = 1e6 + 9;
const long long int inf = 1e14;
const long long int MOD = 1e9 + 7;
const long long int mod = 1e9 + 7;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
long long int powm(long long int a, long long int b) {
  a = a % mod;
  long long int res = 1;
  while (b) {
    if (b & 1) res = (res * a) % mod;
    a = (a * a) % mod;
    b >>= 1;
  }
  return res;
}
int main() {
  long long int t = 1;
  cin >> t;
  while (t--) {
    long long int n;
    cin >> n;
    std::vector<pair<long long int, long long int> > v;
    set<long long int> b;
    for (int i = 0; i < n; i++) {
      pair<long long int, long long int> a;
      cin >> a.first >> a.second;
      b.insert(a.first);
      b.insert(a.second);
      v.push_back(a);
    }
    map<long long int, long long int> comp;
    long long int ct = 0;
    for (auto i : b) {
      comp[i] = ct++;
    }
    long long int here[ct];
    memset(here, 0, sizeof(here));
    for (auto i : v) {
      here[comp[i.first]]++;
      here[comp[i.second]]--;
    }
    long long int ans = -1, curr_sum = 0;
    for (int i = 0; i < ct - 1; i++) {
      curr_sum += here[i];
      if (curr_sum == 0) {
        ans = i;
        break;
      }
    }
    if (ans == -1) {
      cout << ans << '\n';
    } else {
      for (auto i : v) {
        if (comp[i.second] <= ans) {
          cout << 1 << " ";
        } else {
          cout << 2 << " ";
        }
      }
      cout << '\n';
    }
  }
}
