def hoge(n, k, m): n %= m if k == 0: return 1 if k & 1 == 0: return hoge(n * n % m, k // 2, m) if k & 1 == 1: return hoge(n * n % m, k // 2, m) * (n % m) a, b, c = map(int, input().split('^')) mod = int(1e9+7) print(hoge(hoge(a, b, mod), c, mod) % mod,hoge(a, hoge(b, c, mod), mod) % mod)