#include <iostream>
#define N 30
int main() {
	// Создаем треугольную матрицу для хранения всех ответов
	long *x[N];
	for (int i=0; i < N; ++i) x[i] = new long[i+1];
	// Находим все ответы
	x[0][0] = 1;
	for (int i=1; i < N; ++i) {
		x[i][0] = 1;
		for (int j=1; j < i; ++j) x[i][j] = x[i-1][j] + x[i][j-1];
		x[i][i] = 2 * x[i][i-1];		
	}
	// Проходим все тесты
	int m, n; 
	std::cin >> m >> n;
	std::cout << x[std::max(n,m)-1][std::min(n,m)-1];
}