import java.util.Scanner;

public class Barrels {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        int B = sc.nextInt();
        int K = sc.nextInt();
        int C = sc.nextInt();

        if (C != A && C != B) {
            System.out.println(0);
            return;
        }

        if (C == A && C == B) {
            System.out.println(K);
            return;
        }

        if (K == 1) {
            System.out.println(1);
            return;
        }

        int r = 2;

        for (int i = 2; i < K; i++) {
            r *= 2;
            r = r % 1000000007;
        }

        r *= K;
        r = r % 1000000007;

        System.out.println(r);
    }
}

