#include<iostream>
using namespace std;
unsigned long long fastpow(long long a, long long b,long long p) {
if (b == 0) return 1;
unsigned long long res =fastpow(a,b/2,p);
if (b%2)
return res*res*a%p;
else
return res*res%p;
}
int main()
{
unsigned long long a,b,p;
cin>>a>>b>>p;
cout<<a<<'^'<<b<<" "<<"mod"<<" "<<p<<'='<<fastpow(a,b,p);
}