#include <bits/stdc++.h>
using namespace std;
const long long N = 10e5 + 5;
const long long NN = 105;
const double pi = 3.14159;
const long long MAX = 2e5 + 123;
const long long MOD = 1e9 + 7;
const long long INF = 1000000000000000000;
const long long pw = 31;
void speed() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
}
long long n1, n2, k1, k2, dp[105][105][3];
void hajime() {
  scanf("%I64d%I64d%I64d%I64d", &n1, &n2, &k1, &k2);
  dp[0][0][1] = dp[0][0][2] = 1;
  for (long long i = 0; i <= n1; i++) {
    for (long long j = 0; j <= n2; j++) {
      for (long long k = 1; k <= min(i, k1); k++) {
        dp[i][j][1] = (dp[i][j][1] + dp[i - k][j][2]) % 100000000;
      }
      for (long long k = 1; k <= min(j, k2); k++) {
        dp[i][j][2] = (dp[i][j][2] + dp[i][j - k][1]) % 100000000;
      }
    }
  }
  printf("%I64d", (dp[n1][n2][1] + dp[n1][n2][2]) % 100000000);
}
int main() {
  long long miyagi = 1;
  while (miyagi--) hajime();
}
