#include #include #include #include #include #include #include #include #include #include using ll = long long; using namespace std; ll mpow(ll x, ll n, ll mod){ ll ans = 1; while (n){ if (n&1) ans = ans * x % mod; x = x * x % mod; n >>= 1; } return ans; } int main() { ll a, b, c, n, mod = 1e9+7, r; cin >> a >> b >> c >> n; r = mpow(2, n, mod-1); a = a*b%mod; a = a*c%mod; a = mpow(a, r, mod); cout << a << endl; }