import java.util.*;


public class Main {

	
	// test #1
//	public static void main(String args[]) {
//		System.out.println("staring #1");
//		Scanner sc = new Scanner(System.in);
//		
//		int a = sc.nextInt();
//		
//		int b = sc.nextInt();
//		int c = sc.nextInt();
//		String s = sc.next();
//		
//		System.out.println(a+b+c+" "+s);
//		sc.close();
//	}

	// test #1  0322
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);
		
		int cntN = sc.nextInt();		// 偶数
		int cntM = sc.nextInt();		// 奇数
		
		int pat1=1;
		int pat2=1;
		
		int ctr=0;
		
		// pattern 1 ( N+N )
		for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		}
		pat1 = pat1/2;

		
		ctr=0;
		// pattern 2 ( M+M )
		for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		}
		pat2 = pat2/2;
		
		log( pat1+pat2);
		sc.close();
	}

	static void log(String s) {
		System.out.println(s);
	}

	static void log(int i) {
		System.out.println(i);
	}
	
} import java.util.*; util.* java public class Main {

	
	// test #1
//	public static void main(String args[]) {
//		System.out.println("staring #1");
//		Scanner sc = new Scanner(System.in);
//		
//		int a = sc.nextInt();
//		
//		int b = sc.nextInt();
//		int c = sc.nextInt();
//		String s = sc.next();
//		
//		System.out.println(a+b+c+" "+s);
//		sc.close();
//	}

	// test #1  0322
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);
		
		int cntN = sc.nextInt();		// 偶数
		int cntM = sc.nextInt();		// 奇数
		
		int pat1=1;
		int pat2=1;
		
		int ctr=0;
		
		// pattern 1 ( N+N )
		for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		}
		pat1 = pat1/2;

		
		ctr=0;
		// pattern 2 ( M+M )
		for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		}
		pat2 = pat2/2;
		
		log( pat1+pat2);
		sc.close();
	}

	static void log(String s) {
		System.out.println(s);
	}

	static void log(int i) {
		System.out.println(i);
	}
	
} Main // test #1  0322
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);
		
		int cntN = sc.nextInt();		// 偶数
		int cntM = sc.nextInt();		// 奇数
		
		int pat1=1;
		int pat2=1;
		
		int ctr=0;
		
		// pattern 1 ( N+N )
		for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		}
		pat1 = pat1/2;

		
		ctr=0;
		// pattern 2 ( M+M )
		for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		}
		pat2 = pat2/2;
		
		log( pat1+pat2);
		sc.close();
	} main {
		Scanner sc = new Scanner(System.in);
		
		int cntN = sc.nextInt();		// 偶数
		int cntM = sc.nextInt();		// 奇数
		
		int pat1=1;
		int pat2=1;
		
		int ctr=0;
		
		// pattern 1 ( N+N )
		for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		}
		pat1 = pat1/2;

		
		ctr=0;
		// pattern 2 ( M+M )
		for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		}
		pat2 = pat2/2;
		
		log( pat1+pat2);
		sc.close();
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int cntN = sc.nextInt(); cntN sc.nextInt() sc.nextInt sc int cntM = sc.nextInt(); cntM sc.nextInt() sc.nextInt sc int pat1=1; pat1 1 int pat2=1; pat2 1 int ctr=0; ctr 0 for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		} int i=cntN; int i=cntN; i cntN i>0 && ctr<2 i>0 i 0 ctr<2 ctr 2 i-- i-- i {
			pat1=pat1*i;
			ctr++;
		} {
			pat1=pat1*i;
			ctr++;
		} pat1=pat1*i pat1 pat1*i pat1 i ctr++ ctr pat1 = pat1/2 pat1 pat1/2 pat1 2 ctr=0 ctr 0 for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		} int i=cntM; int i=cntM; i cntM i>0 && ctr<2 i>0 i 0 ctr<2 ctr 2 i-- i-- i {
			pat2=pat2*i;
			ctr++;
		} {
			pat2=pat2*i;
			ctr++;
		} pat2=pat2*i pat2 pat2*i pat2 i ctr++ ctr pat2 = pat2/2 pat2 pat2/2 pat2 2 log( pat1+pat2) log pat1+pat2 pat1 pat2 sc.close() sc.close sc String args[] args static void log(String s) {
		System.out.println(s);
	} log {
		System.out.println(s);
	} System.out.println(s) System.out.println System.out System System.out s String s s static void log(int i) {
		System.out.println(i);
	} log {
		System.out.println(i);
	} System.out.println(i) System.out.println System.out System System.out i int i i public class Main {

	
	// test #1
//	public static void main(String args[]) {
//		System.out.println("staring #1");
//		Scanner sc = new Scanner(System.in);
//		
//		int a = sc.nextInt();
//		
//		int b = sc.nextInt();
//		int c = sc.nextInt();
//		String s = sc.next();
//		
//		System.out.println(a+b+c+" "+s);
//		sc.close();
//	}

	// test #1  0322
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);
		
		int cntN = sc.nextInt();		// 偶数
		int cntM = sc.nextInt();		// 奇数
		
		int pat1=1;
		int pat2=1;
		
		int ctr=0;
		
		// pattern 1 ( N+N )
		for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		}
		pat1 = pat1/2;

		
		ctr=0;
		// pattern 2 ( M+M )
		for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		}
		pat2 = pat2/2;
		
		log( pat1+pat2);
		sc.close();
	}

	static void log(String s) {
		System.out.println(s);
	}

	static void log(int i) {
		System.out.println(i);
	}
	
} public class Main {

	
	// test #1
//	public static void main(String args[]) {
//		System.out.println("staring #1");
//		Scanner sc = new Scanner(System.in);
//		
//		int a = sc.nextInt();
//		
//		int b = sc.nextInt();
//		int c = sc.nextInt();
//		String s = sc.next();
//		
//		System.out.println(a+b+c+" "+s);
//		sc.close();
//	}

	// test #1  0322
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);
		
		int cntN = sc.nextInt();		// 偶数
		int cntM = sc.nextInt();		// 奇数
		
		int pat1=1;
		int pat2=1;
		
		int ctr=0;
		
		// pattern 1 ( N+N )
		for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		}
		pat1 = pat1/2;

		
		ctr=0;
		// pattern 2 ( M+M )
		for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		}
		pat2 = pat2/2;
		
		log( pat1+pat2);
		sc.close();
	}

	static void log(String s) {
		System.out.println(s);
	}

	static void log(int i) {
		System.out.println(i);
	}
	
} Main
import java.util.*;


public class Main {

	
	// test #1
//	public static void main(String args[]) {
//		System.out.println("staring #1");
//		Scanner sc = new Scanner(System.in);
//		
//		int a = sc.nextInt();
//		
//		int b = sc.nextInt();
//		int c = sc.nextInt();
//		String s = sc.next();
//		
//		System.out.println(a+b+c+" "+s);
//		sc.close();
//	}

	// test #1  0322
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);
		
		int cntN = sc.nextInt();		// 偶数
		int cntM = sc.nextInt();		// 奇数
		
		int pat1=1;
		int pat2=1;
		
		int ctr=0;
		
		// pattern 1 ( N+N )
		for (int i=cntN; i>0 && ctr<2;i--) {
			pat1=pat1*i;
			ctr++;
		}
		pat1 = pat1/2;

		
		ctr=0;
		// pattern 2 ( M+M )
		for (int i=cntM; i>0 && ctr<2; i--) {
			pat2=pat2*i;
			ctr++;
		}
		pat2 = pat2/2;
		
		log( pat1+pat2);
		sc.close();
	}

	static void log(String s) {
		System.out.println(s);
	}

	static void log(int i) {
		System.out.println(i);
	}
	
}
