#include using namespace std; typedef long long ll; #define rep(i, srt, end) for (long long i = (srt); i < (long long)(end); i++) ll mod = 1e9+7; ll n, d, k; vector> v; int main(){ cin >> n >> d >> k; v.resize(k+1, vector(n+1, 0)); v[0][0] = 1; rep(i, 0, k){ rep(j, i+1, min(i+d+1,k+1)){ rep(l, 0, n){ v[j][l+1] += v[i][l]; v[j][l+1] %= mod; } } } cout << v[k][n]%mod << endl; return 0; }