#include #include int main() { int a,b,c,k; scanf("%d %d %d %d", &a, &b, &k, &c); if(c != a && c != b) { printf("0\n"); return 0; } int result = 1; int maxMult = pow(2, 29); int i = k; while(i > 1) { // 2^29 int currentMult = i >= 29 ? maxMult : pow(2, i); result *= currentMult; i -= currentMult; result = result % 1000000007; } printf("%d\n", (result * k / 2) % 1000000007); return 0; }