#include <bits/stdc++.h>
using namespace std;
class arr {
 public:
  int a, b, value;
};
bool so(arr p, arr q) {
  if (p.value > q.value)
    return 1;
  else
    return 0;
}
int main() {
  int n, flag[1000] = {}, m;
  arr a[600000];
  cin >> n;
  m = n;
  n *= 2;
  int k = 0;
  for (int i = 1; i < n; i++) {
    for (int j = 0; j < i; j++) {
      cin >> a[k].value;
      a[k].a = i + 1;
      a[k++].b = j + 1;
    }
  }
  sort(a, a + k, so);
  int j = 0;
  for (int i = 0; i < k; i++) {
    if (!flag[a[i].a] && !flag[a[i].b]) {
      flag[a[i].a] = a[i].b;
      flag[a[i].b] = a[i].a;
      j++;
      if (j == m) break;
    }
  }
  for (int i = 1; i <= n; i++) cout << flag[i] << " ";
  cout << endl;
  return 0;
}
