#include <bits/stdc++.h>
using namespace std;
const int INF = INT_MAX;
const long long mod = 1e9 + 7;
int main() {
  cin.tie(0);
  ios_base::sync_with_stdio(0);
  int n, d, h;
  cin >> n >> d >> h;
  if (n == 2) {
    cout << "1 2\n";
    return 0;
  }
  if (d == 1 || d > 2 * h) {
    cout << "-1\n";
    return 0;
  }
  int pr = 1, v = 2, k = 0;
  vector<pair<int, int> > e;
  while (k < h) {
    k++;
    e.push_back(make_pair(pr, v));
    pr = v, v++;
  }
  int vr = h + 1, f = 0;
  if (d > h) {
    vr += (d - h);
    pr = 1;
    k = 0;
    f = 1;
    while (k < d - h) {
      k++;
      e.push_back(make_pair(pr, v));
      pr = v, v++;
    }
  }
  int t = 2;
  if (f) t = 1;
  while (vr < n) {
    e.push_back(make_pair(t, v));
    v++;
    vr++;
  }
  for (int i = 0; i < n - 1; i++)
    cout << e[i].first << ' ' << e[i].second << "\n";
  return 0;
}
