#include __int64 mmg[1005],n,k; __int64 C[1005][1000],flag[1005][1000]; int main() { int i,j; while(scanf("%I64d%I64d",&n,&k)!=EOF) { C[1][0]=C[1][1]=1%k; flag[1][0]=flag[1][1]=(1/k)%2; for(i=2;i<=n;i++) { C[i][0]=C[i][i]=1%k; flag[i][0]=flag[i][i]=(1/k)%2; for(j=1;j