#include <bits/stdc++.h>
using namespace std;
#pragma comment(linker, "/STACK:1024000000,1024000000")
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  srand(__rdtsc());
  int n, d, h;
  cin >> n >> d >> h;
  if (d > 2 * h || d < h || n <= h || n <= d) {
    cout << -1 << endl;
    return 0;
  }
  if (d == h) {
    if (h == 1) {
      if (n == 2)
        cout << "1 2" << endl;
      else
        cout << -1 << endl;
      return 0;
    }
    for (int i = 2; i <= h + 1; i++) cout << (i - 1) << " " << i << endl;
    for (int i = h + 2; i <= n; i++) cout << 2 << " " << i << endl;
    return 0;
  }
  for (int i = 1; i <= h; i++) cout << i << " " << i + 1 << endl;
  int cur = h + 2;
  cout << 1 << " " << cur << endl;
  cur++;
  while (cur <= d + 1) {
    cout << (cur - 1) << " " << cur << endl;
    cur++;
  }
  for (int i = cur; i <= n; i++) cout << 1 << " " << i << endl;
  return 0;
}
