#include #define rep(i,a,b) for(ll i=ll(a);i> n; rep(i,1,n+1){ if(n % i)cnt++; } cout << cnt << endl; */ string S; cin >> S; S += '^'; ll num[3],ind = 0; string buf; rep(i,0,S.size()){ if(S[i] == '^'){ num[ind++] = stoll(buf); buf = ""; }else{ buf += S[i]; } } ll mod2 = 5*1e8+3; cout << powmod( powmod(num[0]%MOD,num[1]%(MOD-1),MOD) ,num[2]%(MOD-1),MOD) << " "; cout << powmod( num[0]%MOD, powmod(num[1]%(MOD-1),num[2]%(mod2-1), (MOD-1)) ,MOD) << endl; //1e9+6 // }