#include <bits/stdc++.h>
using namespace std;
int main() {
  int t, n, d, h, c, nn, i, k;
  cin >> n >> d >> h;
  vector<pair<int, int> > e;
  int ed = 0;
  c = 1;
  for (k = 0; ed < n - 1 && k < h; k++) {
    e.push_back(make_pair(c, c + 1));
    c++;
    ed++;
  }
  nn = c + 1;
  c = nn;
  d = d - h;
  int spl = 1;
  if (d > h) {
    cout << "-1\n";
    return 0;
  }
  if (d == 0 && !(h == 1)) {
    d = 1;
    spl = 2;
  } else if (d == 0 && h == 1 && n != 2) {
    cout << "-1\n";
    return 0;
  }
  while (nn <= n) {
    int flag = 0;
    for (k = 0; ed < n - 1 && k < d; k++) {
      if (!flag) {
        e.push_back(make_pair(spl, c));
      } else {
        e.push_back(make_pair(c, c + 1));
        c++;
      }
      ed++;
      flag = 1;
    }
    nn = c + 1;
    c = nn;
  }
  for (i = 0; i < e.size(); i++) {
    cout << e[i].first << " " << e[i].second << endl;
  }
  return 0;
}
