#include <bits/stdc++.h>
using namespace std;
const int MAXN = 5001;
const int MOD = 1000000007;
int n, m, i = 1;
vector<int> res;
map<int, int> cnts;
void addAll(int x) {
  for (int v : res) {
    cnts[x + v]++;
  }
  res.push_back(x);
  n--;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> n >> m;
  if ((n - 1) * (n - 2) / 2 < m) {
    cout << -1 << endl;
    return 0;
  }
  int on = n;
  while (n > 0 && m > 0 && i <= 1e9) {
    auto it = cnts.find(i);
    if (it == cnts.end() || it->second <= m) {
      addAll(i);
      m -= cnts[i];
    }
    i++;
  }
  while (n > 0) {
    res.push_back(100000001 + 10000 * n);
    n--;
  }
  sort(res.begin(), res.end());
  if (res.size() != on || m > 0) {
    cout << -1 << endl;
  } else {
    for (int v : res) printf("%d ", v);
    printf("\n");
  }
  return 0;
}
