#include <bits/stdc++.h>
using namespace std;
const int M = 1200000;
const int inf = 0x3f3f3f3f;
int n, m, k;
int get(int x) { return (x + 1) * x / 2; }
int cal(int x) { return get((x - 1) / 2) + get(x / 2 - 1); }
bool work() {
  int ans;
  for (int i = (n); i >= (1); --i) {
    if (cal(i) <= m) {
      ans = i;
      break;
    }
  }
  int bg = 1e8;
  int ex = m - cal(ans);
  if (ex == 0) {
    for (int i = (1); i <= (ans); ++i) cout << i << ' ';
    for (int i = (ans + 1); i <= (n); ++i) cout << bg + i * 10000 << ' ';
    cout << endl;
    return 1;
  }
  if (ans - ex * 2 < 0) return 0;
  if (ans == n && ex) return 0;
  for (int i = (1); i <= (ans); ++i) cout << i << ' ';
  cout << (ans + ans - ex * 2 + 1) << ' ';
  for (int i = (ans + 2); i <= (n); ++i) cout << bg + i * 10000 << ' ';
  cout << endl;
  return 1;
}
int main() {
  cin >> n >> m;
  if (!work()) cout << -1 << endl;
  return 0;
}
