#include <bits/stdc++.h>   using namespace std;   const int MaxN = 400007;   const int mod = (int)1e9 + 7;   int a, b, k, t, N;   int ans, f[MaxN], s[MaxN];   int main() {     int i, j;     scanf( %d%d%d%d , &a, &b, &k, &t);     f[2 * k * t + 1] = 1;     N = 4 * k * t + 1;     for (i = 1; i <= t + t; i++) {       for (j = 1; j <= N; j++) {         s[j] = (s[j - 1] + f[j]) % mod;       }       for (j = 1; j <= N; j++) {         f[j] = (s[min(N - 1, j + k)] - s[max(1, j - k - 1)]) % mod;         if (f[j] < 0) f[j] += mod;       }     }     ans = 0;     for (i = 2 * k * t + b - a + 2; i <= N; i++) ans = (ans + f[i]) % mod;     printf( %d n , ans);     return 0;   }   