#include <bits/stdc++.h>
int team[1000010][2], ans[1010], n, x;
bool used[1010];
int main() {
  scanf("%d", &n);
  n *= 2;
  for (int i = 1; i <= n; i++)
    for (int j = 1; j < i; j++) {
      scanf("%d", &x);
      team[x][0] = i;
      team[x][1] = j;
    }
  used[0] = 1;
  for (int i = 1000000; i > 0; i--) {
    if (!used[team[i][0]] && !used[team[i][1]]) {
      used[team[i][0]] = 1;
      used[team[i][1]] = 1;
      ans[team[i][0]] = team[i][1];
      ans[team[i][1]] = team[i][0];
    }
  }
  for (int i = 1; i < n; i++) printf("%d ", ans[i]);
  printf("%d\n", ans[n]);
  return 0;
}
