降幂公式:ABmodC = ABmodφ[C]+φ[C]modC(降幂公式中 phi[] 为欧拉函数)
// https://ac.nowcoder.com/acm/contest/330/E
#include <bits/stdc++.h>
using namespace std;
const int Mod = 1e9+7;
typedef long long ll;
char a[1000006];
ll Pow(ll a,ll b){
ll res = 1,base = a;
while(b){
if(b&1) res = res*base % Mod;
base = base * base % Mod;
b >>= 1;
}
return res;
}
ll Eular(ll n){
ll res = n;
for(ll i=2;i*i<=n;i++){
if(n%i == 0) res = res/i*(i-1);
while(n%i == 0) n/=i;
}
if(n > 1) res = res/n*(n-1);
return res;
}
int main(){
ll m;
scanf("%s%lld",a,&m);
ll phi = Eular(Mod);
ll len=strlen(a);
ll ans=0;
for(ll i=0;i<len;i++)
ans=(ans*10+a[i]-'0')%phi;
ans+=phi;
printf("%lld\n",Pow(2,ans));
return 0;
}