#include <bits/stdc++.h>
using namespace std;
int n, d, h, i, j;
int main() {
  scanf("%d%d%d", &n, &d, &h);
  if (h * 2 < d || d + 1 > n || (n == 2 && d != 1) || (h == 1 && d > 2) ||
      (h == 1 && d == 1 && n != 2)) {
    cout << -1 << endl;
    return 0;
  }
  for (i = 2; i <= h + 1; i++) {
    printf("%d %d\n", (i - 1), i);
  }
  if (h < d) {
    printf("%d %d\n", 1, h + 2);
    for (i = h + 2; i < h + d - h + 1; i++) printf("%d %d\n", (i), i + 1);
    for (i = h + d - h + 2; i <= n; i++) printf("%d %d\n", 1, i);
    return 0;
  } else {
    for (i = h + 2; i <= n; i++) printf("%d %d\n", 2, i);
    return 0;
  }
  return 0;
}
