# 题意符合排列组合问题,从左上到右下需要向右移动m次和向下移动n次(或向右n次和向下m次)
# 移动总步数为T=m+n,则可能的移动情况为C(T,m)或者C(T,n)
def factorial(n):
res = 1
for i in range(1,n+1):
res *= i
return res
while True:
try:
m,n = list(map(int,input().split()))
# calculate C_m+n_m
s = factorial(m+n)/(factorial(m)*factorial(n))
print (str(int(s)))
except:
break