# 题意符合排列组合问题,从左上到右下需要向右移动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