#include <bits/stdc++.h>   using namespace std;   inline void read(int &x) {     char ch = getchar();     x = 0;     while (!isdigit(ch)) ch = getchar();     while (isdigit(ch)) x = x * 10 + ch - 48, ch = getchar();   }   int n, m, mx, now, a[5200];   signed main() {     read(n), read(m);     int tmp = 0;     for (int i = 3; i <= n; ++i) {       if (i & 1) ++tmp;       mx += tmp;     }     if (m > mx) return puts( -1 ), 0;     a[1] = 1, a[2] = 2;     int p = n + 1;     tmp = 0;     for (int i = 3; i <= n; ++i) {       if (i & 1) ++tmp;       if (now + tmp > m) {         p = i - 1;         break;       }       now += tmp, a[i] = i;     }     m -= now;     if (m)       a[p + 1] = p - m * 2 + 1 + p, p += 2;     else       ++p;     for (int i = p; i <= n; ++i) a[i] = 200000000 + i * n;     for (int i = 1; i <= n; ++i) printf( %d  , a[i]);     puts(  );     return 0;   }   