import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    static int modulo = 1000000007;

    public static void main(String args[]) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String line = br.readLine();
        String[] numbers = line.split(" ");
        int firstDigit = Integer.parseInt(numbers[0]);
        int secondDigit = Integer.parseInt(numbers[1]);
        int length =  Integer.parseInt(numbers[2]);
        int searchedNumber = Integer.parseInt(numbers[3]);

        if (searchedNumber != firstDigit && searchedNumber != secondDigit) {
            System.out.println("0");
        } else {
            if (firstDigit != secondDigit) {

                int result = 0;

                for (int i = 1; i <= length; i++) {
                    result += (fact(length)/(fact(i)*fact(length - i))) * i;
                    result %= modulo;
                }
                System.out.println(result);
            } else {
                System.out.println(length % modulo);
            }
        }


    }

    public static int fact(int number) {
        int result = 1;
        for (int i = 1; i <= number; i++) {
            result *= i;
        }
        return result;
    }
}

