import std.stdio, std.string, std.array, std.conv, std.algorithm, std.typecons, std.range, std.container, std.math, std.algorithm.searching, std.functional,std.mathspecial;

void main(){
    auto hwab=readln().split.map!(to!int).array;
    auto h=hwab[0];
    auto w=hwab[1];
    auto a=hwab[2];
    auto b=hwab[3];

    long res=0;

    foreach(x;b..w){
        res+=xy(x,h-a-1)*xy(w-x-1,a-1);
        res%=1000000007;
    }
    writeln(res);
}

long xy(int x,int y){
    return cast(long)(round(gamma(x+y+1)/gamma(x+1)/gamma(y+1))) % 1000000007;
}