#include <stdio.h>
#include <string.h>
#define N 30
void main()
{
int n,m;
__int64 c1[N+2]={1},c2[N+2]={1}, result;
int j,k;
while(scanf("%d %d",&n,&m)==2){
if(n==0 && m==0) break;
if(n>1 && m>=n*2-1) { printf("0\n"); continue; };
memset(c1+1,0,sizeof(c1)-sizeof(__int64));
memset(c2+1,0,sizeof(c2)-sizeof(__int64));
for(k=1;k<=n;k+=2){
for(j=k;j>0;j--) c1[j]+=c1[j-1]*(k-(j-1));
if(k==n) break;
for(j=k;j>0;j--) c1[j]+=c1[j-1]*(k-(j-1));
}
for(k=2;k<=n;k+=2){
for(j=k;j>0;j--) c2[j]+=c2[j-1]*(k-(j-1));
if(k==n) break;
for(j=k;j>0;j--) c2[j]+=c2[j-1]*(k-(j-1));
}
for(result=j=0;j<=m;j++) result+=c1[j] * c2[m-j];
printf("%I64d\n",result);
}
}