#include <bits/stdc++.h>
using namespace std;
struct node {
  long long x;
  long long y;
  long long id;
} a[200005];
long long n, t;
long long totx, toty;
inline void read(long long &x) {
  long long f;
  char c;
  for (f = 1, c = getchar(); c < '0' || c > '9'; c = getchar())
    if (c == '-') f = -1;
  for (x = 0; c <= '9' && c >= '0'; c = getchar()) x = x * 10 + (c & 15);
  x *= f;
}
inline bool cmp(node p, node q) { return p.y < q.y; }
int main() {
  read(t);
  while (t--) {
    totx = toty = 0;
    read(n);
    for (int i = 1; i < 2 * n; i++) {
      read(a[i].x);
      read(a[i].y);
      a[i].id = (long long)i;
      totx += a[i].x;
    }
    sort(a + 1, a + 2 * n, cmp);
    for (int i = 1; i < 2 * n; i += 2) toty += a[i].x;
    puts("YES");
    if (toty * 2 >= totx) {
      for (int i = 1; i < 2 * n; i += 2) printf("%lld ", a[i].id);
      puts("");
    } else {
      for (int i = 2; i < 2 * n; i += 2) printf("%lld ", a[i].id);
      printf("%lld\n", a[2 * n - 1].id);
    }
  }
  return 0;
}
