#include <cmath>
#include <complex>
#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n, m, x, y;
    cin >> n >> m;
    cin >> x >> y;
    vector<vector<long long>> dp(n + 1, vector<long long>(m + 1));
    dp[0][0] = 1;
    for (int i = 1; i <= m; i++) { //列是y坐标
        if (((abs(i - y) + abs(0 - x) ) == 3 && (i != y) && 0 != x) || (x == 0 && y == i))
            dp[0][i] = 0;
        else {
            dp[0][i] = dp[0][i - 1];
        };
    }
    for (int i = 1; i <= n; i++) { //行坐标是x坐标
        if (((abs(i - x) + abs(0 - y)) == 3 && i != x && 0 != y) || (x == i &&y == 0)) dp[i][0] = 0;
        else {
            dp[i][0] = dp[i - 1][0];
        };
    }
    for (int i = 1; i <= n; i ++) {
        for (int j = 1; j <= m; j++) {
            if ((abs(i - x) + abs(j - y) == 3 && i != x && j != y) || (i == x && j == y)) dp[i][j] = 0;
            else {
                dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
            }
        }
    }
    cout << dp[n][m];
    return 0;

}