#include <bits/stdc++.h>
using namespace std;
const int mod = 100000000;
const int INF = 0x3f3f3f3f;
const long long LL_INF = 0x3f3f3f3f3f3f3f3f;
const double PI = 3.14159265359;
int dx[4] = {1, -1, 0, 0};
int dy[4] = {0, 0, 1, -1};
int n1, n2, k1, k2;
long long dp[105][105][15][15];
long long solve(int i, int j, int c1, int c2) {
  if (c1 > k1 or c2 > k2 or i > n1 or j > n2) return 0;
  if (i == n1 and j == n2) return 1;
  long long &ret = dp[i][j][c1][c2];
  if (~ret) return ret;
  ret = 0;
  ret += (solve(i + 1, j, c1 + 1, 0) + solve(i, j + 1, 0, c2 + 1)) % mod;
  return ret;
}
int main() {
  cin >> n1 >> n2 >> k1 >> k2;
  memset(dp, -1, sizeof dp);
  cout << solve(0, 0, 0, 0) << endl;
  return 0;
}
