#include<bits/stdc++.h> usingnamespace std; typedeflonglong ll; constint N = 1e5+5; const ll mod= 1e9+7; string s; int num[N];
voidInput(){ cin>>s; }
ll chuli(){ ll ans = 0; for(int i = 0; i < s.length(); i++) num[i] = s[i] - '0'; int len = s.length(); for(int i = 0; i < len; i++) { ans *= 10; ans += num[i]; ans %= (mod - 1); } ans -= 1; ans = (ans + mod - 1) % (mod - 1); return ans; } ll quick_pow(ll a,ll k){ ll ans = 1; while(k) { if(k & 1) { ans = (ans * a) % mod; } a = (a * a) % mod; k /= 2; } return ans % mod; }
voidWork(){ ll k = chuli(); ll ans = quick_pow(2, k); ans = (ans + mod) % mod; cout << ans << endl; }