#include <bits/stdc++.h>
using namespace std;
void read_file(bool outToFile = true) {}
int n, a, b;
int main() {
  read_file();
  while (scanf("%d", &n) != EOF) {
    scanf("%d%d", &a, &b);
    vector<int> ans;
    ans.push_back(1);
    int sum = 1, last = 1;
    bool ok = true;
    for (int i = 1; i < n; i++) {
      if (b > 0) {
        b--;
        ans.push_back(sum + 1);
        last = sum + 1;
        sum += last;
        if (last > 50000) break;
      } else if (a > 0) {
        if (last + 1 <= sum) {
          a--;
          ans.push_back(last + 1);
          last = last + 1;
        } else {
          ans.push_back(last);
        }
        sum += last;
        if (last > 50000) break;
      } else {
        ans.push_back(last);
        sum += last;
      }
    }
    if (a != 0 || b != 0) ok = false;
    for (int i = 0, sz = ans.size(); i < sz; i++)
      if (ans[i] > 50000) ok = false;
    if (ok == false) {
      printf("-1\n");
      continue;
    }
    assert(ans.size() == n);
    for (int i = 0; i < n; i++) printf("%d%c", ans[i], " \n"[i == n - 1]);
  }
}
