#include<stdio.h>
//c标准规定 有返回值的函数所有可能的分支必须要有 return 否者可能会报错
int Hermite(int n, int x) {
    if (n == 0) {
        return 1;
    } else if (n == 1) {
        return 2 * n;
    } else if (n > 1) {
        return (2 * x * Hermite(n - 1, x)) - (2 * (n - 1) * Hermite(n - 2, x));
    }
    else
    return 0;
}

int main() {
    int n = 0, x = 0;
    scanf("%d %d", &n, &x);
    printf("%d", Hermite(n, x));
    return 0;
}