import java.io.*;import java.math.*;import java.util.*;public class Main{ public static BigInteger combin(int n,int r) { if(n<r) return BigInteger.ZERO; if(n==r||r==0) return BigInteger.ONE; BigInteger numerator = fact(n); BigInteger denominator = fact(r).multiply(fact(n-r)); BigInteger ret = numerator.divide(denominator); return ret; } public static BigInteger fact(int n) { BigInteger p = new BigInteger("1"); BigInteger nn = new BigInteger(""+n); BigInteger i = new BigInteger("2"); for(;i.compareTo(nn)<=0;i=i.add(BigInteger.ONE)) p=p.multiply(i); return p; } public static void main(String[] args) throws IOException { BigInteger X,Y,Z,t1,t2; int n,m,N,R; BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); StringTokenizer st = new StringTokenizer(str," "); n = Integer.parseInt(st.nextToken()); m = Integer.parseInt(st.nextToken()); t1 = new BigInteger(""+(2*n)); t2 = new BigInteger(""+(2*n*n-n)); N = n*m + n - 1; R = 2*n - 1; X = combin(N,R); Y = combin(N-m,R).multiply(t1); Z = combin(N-2*m,R).multiply(t2); BigInteger ans = X.subtract(Y).add(Z); System.out.println(ans); }}