#include using namespace std; typedef long long ll; typedef vector vll; typedef vector vvll; #define REP(i, n) for(ll i = 0; i < n; ++i) #define REPs(i, x, n) for(ll i = x; i < n; ++i) #define endli "\n" ll power(ll a, ll b){ ll temp = a; REPs(i, 1, b){ a = a * temp; a %= 1000000007; } return a; } int main(){ ll a, b, k,c; cin >> a >> b >> k >> c; ll hell; ll vystup = 1; if(a != b){ hell = power(2, k)*k; hell%=1000000007; if(c == a || c == b){ vystup = hell/2; } else { vystup = 0; } } else { hell = 1; vystup = k; if(c != a){ vystup = 0; } } cout << vystup << endli; return 0; }