#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int n, m;
cin >> n >> m;
double** x = new double* [n+1];
for (int i = 0; i < n+1; i++) {
x[i] = new double [2*n+1];
}
x[0][n] = 1;
double a, b;
for(int i = 1; i <= n; i++) {
for(int j = n - i; j <= n + i; j++) {
a = (j - 1 < 0)? 0 : x[i-1][j-1];
b = (j + 1 > 2*n)? 0 : x[i-1][j+1];
x[i][j] = (a + b) / 2;
}
}
double h = (n + m > 2*n)? 0 : x[n][n+m];
cout << fixed << setprecision(9) << h;
for (int i = 0; i < n+1; i++) {
delete []x[n-i];
}
delete []x;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAppbnQgbWFpbigpIHsKICAgIGludCBuLCBtOwogICAgY2luID4+IG4gPj4gbTsKICAgIGRvdWJsZSoqIHggPSBuZXcgZG91YmxlKiBbbisxXTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbisxOyBpKyspIHsKICAgIAl4W2ldID0gbmV3IGRvdWJsZSBbMipuKzFdOwogICAgfQogICAgeFswXVtuXSA9IDE7CiAgICBkb3VibGUgYSwgYjsKICAgIGZvcihpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CiAgICAgIGZvcihpbnQgaiA9IG4gLSBpOyBqIDw9IG4gKyBpOyBqKyspIHsKICAgICAgICBhID0gKGogLSAxIDwgMCk/IDAgOiB4W2ktMV1bai0xXTsKICAgICAgICBiID0gKGogKyAxID4gMipuKT8gMCA6IHhbaS0xXVtqKzFdOwogICAgICAgIHhbaV1bal0gPSAoYSArIGIpIC8gMjsKICAgICAgfQogICAgfQogICAgZG91YmxlIGggPSAobiArIG0gPiAyKm4pPyAwIDogeFtuXVtuK21dOwogICAgY291dCA8PCBmaXhlZCA8PCBzZXRwcmVjaXNpb24oOSkgPDwgaDsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbisxOyBpKyspIHsKICAgIAlkZWxldGUgW114W24taV07CiAgICB9CiAgICBkZWxldGUgW114OwogICAgcmV0dXJuIDA7Cn0=