#include <bits/stdc++.h>
const int maxn = 210;
long long n, d, MOD, c[maxn][maxn], sum[maxn], ans, f[maxn][maxn];
int main() {
  scanf("%lld%lld%lld", &n, &d, &MOD);
  for (int i = 0; i <= n; i++) {
    c[i][0] = 1;
    for (int j = 1; j <= i; j++)
      c[i][j] = (c[i - 1][j - 1] + c[i - 1][j]) % MOD;
  }
  f[1][0] = sum[1] = 1;
  for (int i = 2; i <= n; i++) {
    for (int j = 1; j <= d; j++) {
      for (int k = 1; k < i; k++) {
        f[i][j] =
            (f[i][j] + f[i - k][j - 1] * c[i - 2][k - 1] % MOD * sum[k]) % MOD;
      }
      if (j != d) sum[i] = (sum[i] + f[i][j]) % MOD;
    }
  }
  for (int i = 1; i <= n; i++)
    for (int j = 0; j <= d; j++)
      for (int k = 0; j + k <= d; k++)
        if (k != 1) ans = (ans + f[i][j] * f[n - i + 1][k]) % MOD;
  printf("%lld", 2 * n * (n - 1) * ans % MOD);
  return 0;
}
