#include<bits/stdc++.h>
#define int long long
using namespace std;
int a, b, k;
int solve() {
return (1+sqrt(1+8*(a+b)))/2;
}
bool bl = 0;
int arr[210];
void check(int index, int fa) {
if(index == 0) {
cout << fa <<endl;
if(fa == a) {
bl = 1;
}
return;
}
for(int i=1; i<=index; ++i) {
if(arr[i] != arr[i+1]) {
arr[i] = 0;
} else {
arr[i] = 1;
}
if(arr[i] == 1) {
fa++;
}
}
check(index-1, fa);
}
signed main() {
cin >> a >> b;
k = solve();
int ans = 0;
for(int i=0; i<(1<<k); ++i) {
bl = 0;
int a = 0;
for(int j=1; j<=k; ++j) {
if(((i>>(j-1)) & 1) == 1) {
arr[k-j+1] = 1;
a++;
} else {
arr[k-j+1] = 0;
}
}
check(k-1, a);
if(bl) {
ans++;
}
}
cout << ans;
return 0;
}