#include <bits/stdc++.h>
using namespace std;
int n, d, h, bag;
void Work() {
  if (d > 2 * h) {
    puts("-1");
    return;
  }
  if (d == 1 && n > 2) {
    puts("-1");
    return;
  }
  if (n == 2) {
    puts("1 2");
    return;
  }
  if (h == d)
    bag = 2;
  else
    bag = 1;
  d -= h;
  for (int i = 2; i <= h + 1; i++) printf("%d %d\n", i - 1, i);
  if (h + 2 <= n) printf("%d %d\n", bag, h + 2);
  for (int i = h + 3; i <= d + h + 1; i++) printf("%d %d\n", i - 1, i);
  for (int i = max(h + 3, d + h + 2); i <= n; i++) printf("%d %d\n", bag, i);
}
int main() {
  scanf("%d%d%d", &n, &d, &h);
  Work();
  return 0;
}
