import java.util.Scanner;

public class Main {
    long fact(long n){
        return n == 1 ? 1 : n * fact( n-1 );
    }
    long selection(int n){
        if(n==0 || n==1)
            return 0;
        if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        }
    }
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int N=sc.nextInt();
        int M=sc.nextInt();
        Main ob1=new Main();
//        System.out.println(ob1.selection(N) + ob1.selection(M));
        System.out.println((N*(N-1)+(M*(M-1)))/2);

    }
} import java.util.Scanner; Scanner java.util public class Main {
    long fact(long n){
        return n == 1 ? 1 : n * fact( n-1 );
    }
    long selection(int n){
        if(n==0 || n==1)
            return 0;
        if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        }
    }
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int N=sc.nextInt();
        int M=sc.nextInt();
        Main ob1=new Main();
//        System.out.println(ob1.selection(N) + ob1.selection(M));
        System.out.println((N*(N-1)+(M*(M-1)))/2);

    }
} Main long fact(long n){
        return n == 1 ? 1 : n * fact( n-1 );
    } fact {
        return n == 1 ? 1 : n * fact( n-1 );
    } return n == 1 ? 1 : n * fact( n-1 ); n == 1 ? 1 : n * fact( n-1 ) n == 1 n 1 1 n * fact( n-1 ) n fact( n-1 ) fact n-1 n 1 long n n long selection(int n){
        if(n==0 || n==1)
            return 0;
        if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        }
    } selection {
        if(n==0 || n==1)
            return 0;
        if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        }
    } if(n==0 || n==1)
            return 0; n==0 || n==1 n==0 n 0 n==1 n 1 return 0; 0 if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        } n==2 n 2 return 1; 1 {
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        } long k=fact(n); k fact(n) fact n long l=fact(n-2); l fact(n-2) fact n-2 n 2 long m=fact(2); m fact(2) fact 2 long p=k/(l*m); p k/(l*m) k (l*m) l m return p; p int n n public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int N=sc.nextInt();
        int M=sc.nextInt();
        Main ob1=new Main();
//        System.out.println(ob1.selection(N) + ob1.selection(M));
        System.out.println((N*(N-1)+(M*(M-1)))/2);

    } main {

        Scanner sc = new Scanner(System.in);
        int N=sc.nextInt();
        int M=sc.nextInt();
        Main ob1=new Main();
//        System.out.println(ob1.selection(N) + ob1.selection(M));
        System.out.println((N*(N-1)+(M*(M-1)))/2);

    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N=sc.nextInt(); N sc.nextInt() sc.nextInt sc int M=sc.nextInt(); M sc.nextInt() sc.nextInt sc Main ob1=new Main(); ob1 new Main() System.out.println((N*(N-1)+(M*(M-1)))/2) System.out.println System.out System System.out (N*(N-1)+(M*(M-1)))/2 (N*(N-1)+(M*(M-1))) N*(N-1) N (N-1) N 1 (M*(M-1)) M (M-1) M 1 2 String[] args args public class Main {
    long fact(long n){
        return n == 1 ? 1 : n * fact( n-1 );
    }
    long selection(int n){
        if(n==0 || n==1)
            return 0;
        if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        }
    }
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int N=sc.nextInt();
        int M=sc.nextInt();
        Main ob1=new Main();
//        System.out.println(ob1.selection(N) + ob1.selection(M));
        System.out.println((N*(N-1)+(M*(M-1)))/2);

    }
} public class Main {
    long fact(long n){
        return n == 1 ? 1 : n * fact( n-1 );
    }
    long selection(int n){
        if(n==0 || n==1)
            return 0;
        if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        }
    }
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int N=sc.nextInt();
        int M=sc.nextInt();
        Main ob1=new Main();
//        System.out.println(ob1.selection(N) + ob1.selection(M));
        System.out.println((N*(N-1)+(M*(M-1)))/2);

    }
} Main
import java.util.Scanner;

public class Main {
    long fact(long n){
        return n == 1 ? 1 : n * fact( n-1 );
    }
    long selection(int n){
        if(n==0 || n==1)
            return 0;
        if(n==2)
            return 1;
        else{
            long k=fact(n);
            long l=fact(n-2);
            long m=fact(2);
            long p=k/(l*m);

            return p;
        }
    }
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int N=sc.nextInt();
        int M=sc.nextInt();
        Main ob1=new Main();
//        System.out.println(ob1.selection(N) + ob1.selection(M));
        System.out.println((N*(N-1)+(M*(M-1)))/2);

    }
}
