#include <bits/stdc++.h>
using namespace std;
long long MOD = 100000000;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long t;
  t = 1;
  for (long long z = 0; z < t; ++z) {
    long long n, m, k, q;
    cin >> n >> m >> k >> q;
    vector<vector<vector<long long>>> dp(
        n + 1, vector<vector<long long>>(m + 1, vector<long long>(2, 0)));
    long long res = 0;
    for (long long i = 0; i <= n; ++i) {
      for (long long j = 0; j <= m; ++j) {
        if (i == 0 && j <= q && j > 0) {
          dp[i][j][1] = 1;
          continue;
        } else if (i > 0 && i <= k && j == 0) {
          dp[i][j][0] = 1;
          continue;
        }
        for (long long w = 1; w <= min(k, i); ++w) {
          dp[i][j][0] += dp[i - w][j][1];
          dp[i][j][0] %= MOD;
        }
        for (long long w = 1; w <= min(q, j); ++w) {
          dp[i][j][1] += dp[i][j - w][0];
          dp[i][j][1] %= MOD;
        }
      }
    }
    res = dp[n][m][0] + dp[n][m][1];
    res %= MOD;
    cout << res << '\n';
  }
  return 0;
}
