#include <bits/stdc++.h>
using namespace std;
void solve() {
  int n, i, j, x, y;
  scanf("%d", &n);
  pair<pair<int, int>, int> p[n];
  for (i = 0; i < n; i++) {
    scanf("%d %d", &x, &y);
    p[i].first.first = x;
    p[i].first.second = y;
    p[i].second = i;
  }
  sort(p, p + n);
  int l = p[0].first.first;
  int r = p[0].first.second;
  set<int> ans;
  ans.insert(p[0].second);
  int f = 0;
  for (i = 1; i < n; i++) {
    if (p[i].first.first <= r) {
      ans.insert(p[i].second);
      r = max(r, p[i].first.second);
    } else {
      f = 1;
      break;
    }
  }
  if (f) {
    for (i = 0; i < n; i++) {
      if (ans.find(i) != ans.end()) {
        printf("1 ");
      } else {
        printf("2 ");
      }
    }
  } else {
    printf("-1");
  }
  printf("\n");
  return;
}
int main() {
  int t;
  scanf("%d", &t);
  while (t--) {
    solve();
  }
  return 0;
}
