#include <iostream>
#include <cstdio>
using namespace std;

int main() {
	int sum, lim, low_bit, n=0, a[100005];
	scanf("%d%d", &sum, &lim);
	for(int i=lim; i>=1; i--) {
		low_bit = i & -i;
		if(sum>=low_bit) a[n]=i, n++, sum-=low_bit;
		if(sum==0) break;
	}
	if(sum>0) printf("-1");
	else {
		printf("%d\n", n);
		while(n--) printf("%d ", a[n]);
	}
	return 0;
}