#include #include #include #include #include using namespace std; long long int recur(long long int n,long long int m) { if(n==1 && m==1 || (m==0 || n==0)) return (0); else if(n==1) return (m-1); else if(m==1) return (n-1); else if(m==2 && n==2) return 2; else if(m==3 && n==3) return 8; else if((m==2 && n==3) || (m==3 && n==2)) return 5; else{ if(n>=m){ if(n%2==0) return (1+2*recur(n/2,m)); else return (2+2*recur(n/2,m)+recur(n%2,m)); } else{ if(m%2==0) return (1+2*recur(m/2,n)); else return (2+2*recur(m/2,n)+recur(m%2,n)); } } } int main() { long long int n,m,cuts; cin>>n>>m; cout<