#include <cstdio>
#define MAXN 300
#define MOD 10007
int d[MAXN + 1][MAXN + 1];
int main(){
FILE *in = fopen("permutari2.in", "r");
int n, k, f = 1, r;
long long aux;
fscanf(in, "%d%d", &n, &k);
fclose(in);
int i, j, p;
d[1][1] = 1;
for(i = 2; i <= n; i++){
f = f * i % MOD;
r = f;
for(j = 2; j <= i; j++){
aux = 0;
for(p = 1; p < i; p++)
aux += d[i - p][1] * d[p][j - 1];
d[i][j] = aux % MOD;
r += MOD - d[i][j];
}
d[i][1] = r % MOD;
}
FILE *out = fopen("permutari2.out", "w");
fprintf(out, "%d", d[n][k]);
fclose(out);
return 0;
}