#include using namespace std; int modpow(long long a, long long b, int m) { if(a == 0 && b == 0) return 0; int ret = 1; a %= m; for(int i = 60; i >= 0; i--) { ret = 1LL * ret * ret % m; if(b & (1LL << i)) ret = 1LL * ret * a % m; } return ret; } const int mod = 1000000007; long long A, B, C; char buf; int main() { cin >> A >> buf >> B >> buf >> C; A %= 1000000007; int res1 = modpow(modpow(A, B, mod), C, mod); int res2 = modpow(A, modpow(B, C, mod - 1), mod); cout << res1 << ' ' << res2 << endl; return 0; }