#include<bits/stdc++.h>
using namespace std;
int a,b,c;
int lx[]={0,0,0,1,-1},ly[]={0,1,-1,0,0};
bool l[22][22];
bool jy(){
for(int i=1;i<=a;i++)
for(int j=1;j<=b;j++)
if(l[i][j]==0)return 0;
return 1;
}
void dfs(int x,int y){
if(jy()) {
c++;
return;
}
for(int i=1;i<=4;i++){
int xx=x+lx[i],xy=y+ly[i];
if(xx>=1&&xx<=a&&xy>=1&&xy<=b&&l[xx][xy]==0)l[xx][xy]=1,dfs(xx,xy),l[xx][xy]=0;
}return;
}
int main(){
cin>>a>>b;
l[1][1]=1;
dfs(1,1);
cout<<c;
return 0;
}