n, m, l, k, MOD = map(int, input().split()) if l == 1: print(pow(m + 1, n, MOD)) exit() def mul(f, g): h = [0] * (2 * l) for i in range(l): for j in range(l): h[i + j] += f[i] * g[j] h[i + j] %= MOD for i in range(l): h[i] += h[i + l] * m h[i] %= MOD return h f = [0] * l f[0] = 1 p = [0] * l p[0] = 1 p[1] = 1 while n > 0: if n % 2 == 1: f = mul(f, p) p = mul(p, p) n //= 2 print(f[k])