#include #define int long long using namespace std; const int mod1=1e9,mod2=1e9+7; int n,f,ans1,ans2;string s; int qpow(int a,int x,int mod) { if(x==0)return 1; if(x==1)return a%mod; int c=qpow(a,x/2,mod),y=qpow(a,x%2,mod); return c*y%mod*c%mod; } signed main() { cin>>s;n=s.size(); reverse(s.begin(),s.end()); for(int i=0;in/2;i--) { (ans1+=(s[i]-'0')*qpow(10,i-n/2,mod1)%mod1)%=mod1; (ans2+=(s[i]-'0')*qpow(10,i-n/2,mod2)%mod2)%=mod2; } f=1; if(n&1) { for(int i=0;i<=n/2;i++) { if(s[n/2+i]>s[n/2-i]){f=0;break;} if(s[n/2+i]s[n/2-i-1]){f=0;break;} if(s[n/2+i]