#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k;
  scanf("%d %d", &n, &k);
  int quantidade_num = n / 2;
  if (quantidade_num > k) {
    printf("-1\n");
    return 0;
  }
  if (n == 1) {
    if (k == 0) {
      printf("1\n");
    } else {
      printf("-1\n");
    }
    return 0;
  }
  set<int> conj;
  conj.insert(k - quantidade_num + 1);
  conj.insert((k - quantidade_num + 1) * 2);
  printf("%d %d ", k - quantidade_num + 1, (k - quantidade_num + 1) * 2);
  int proximo = 1;
  for (int i = 0; i < quantidade_num - 1; i++) {
    while (conj.find(proximo) != conj.end() ||
           conj.find(2 * proximo + 1) != conj.end())
      proximo++;
    conj.insert(proximo);
    conj.insert(2 * proximo + 1);
    printf("%d %d ", proximo, 2 * proximo + 1);
  }
  if (n % 2 == 1) {
    while (conj.find(proximo) != conj.end()) proximo++;
    printf("%d", proximo);
  }
  printf("\n");
  return 0;
}
