#include using namespace std; long constXYZ = 1000000007; long myPow(int K) { long x = K; for (int i = 1; i < K; i++) x = (x * 2) % constXYZ; return x; } int main() { int A, B, K, C; while (scanf("%d %d %d %d", &A, &B, &K, &C) != EOF) { if (K == 0) { printf("0\n"); break; } if (C != A && C != B) { printf("0\n"); break; } if (A == B) { printf("%d\n", K); break; } printf("%ld\n", myPow(K)); } return 0; }