#include <bits/stdc++.h>
using namespace std;
const int N = 1000;
int n, match[N];
vector<pair<int, pair<int, int> > > team;
int main() {
  cin >> n;
  for (int i = 0; i < 2 * n; i++) {
    for (int j = 0; j < i; j++) {
      int t;
      cin >> t;
      team.push_back({t, {i, j}});
    }
  }
  sort(team.begin(), team.end());
  reverse(team.begin(), team.end());
  for (int i = 0; i < team.size(); i++) {
    int a = team[i].second.first;
    int b = team[i].second.second;
    if (!match[a] && !match[b]) match[a] = b + 1, match[b] = a + 1;
  }
  for (int i = 0; i < 2 * n; i++) cout << match[i] << " ";
  cout << endl;
}
