MOD = 10**9 + 7 N, D, K = map(int,input().split()) def power(base, exp, op=lambda x, y: x * y, ie=1): res = ie while exp: if exp & 1: res = op(res, base) base = op(base, base) exp >>= 1 return res def mul(f, g): h = [0 for _ in range(K + 1)] for i in range(K + 1): for j in range(K + 1): if i + j <= K: h[i + j] += f[i] * g[j] h[i + j] %= MOD return h ie = [0 for _ in range(K + 1)] ie[0] = 1 base = [0 for _ in range(K + 1)] for i in range(1, D + 1): base[i] = 1 print(power(base, N, mul, ie)[K])