#include using namespace std; #define F first #define S second #define pi M_PI #define R cin>> #define Z class #define ll long long #define ln cout<<'\n' #define in(a) insert(a) #define pb(a) push_back(a) #define pd(a) printf("%.10f\n",a) #define mem(a) memset(a,0,sizeof(a)) #define all(c) (c).begin(),(c).end() #define iter(c) __typeof((c).begin()) #define rrep(i,n) for(int i=(int)(n)-1;i>=0;i--) #define REP(i,m,n) for(int i=(int)(m);i<(int)(n);i++) #define rep(i,n) REP(i,0,n) #define tr(it,c) for(iter(c) it=(c).begin();it!=(c).end();it++) templatevoid pr(A a){cout<void pr(A a,B b){cout<void pr(A a,B b,C c){cout<void pr(A a,B b,C c,D d){cout<void PR(A a,ll n){rep(i,n){if(i)cout<<' ';cout<=0&&x=0&&y P; string S(ll n){stringstream ss;string s;ss<>s;return s;} ll N(string s){stringstream ss;ll n;ss<>n;return n;} string T(string s){int i;for(i=0;it.size())t='0'+t;int c=0; rrep(i,s.size()) { if(c){if(s[i]=='9'){s[i]='0';c=1;}else{s[i]=(char)(s[i]+1);c=0;}} int sum=(int)s[i]+(int)t[i]-'0'*2; if(sum>=10){s[i]=(char)(sum-10+'0');c=1;} else s[i]=(char)(sum+'0'); } return T(s); } string MUL(string s,string t) { string z1="",ans=""; rrep(i,t.size()) { string z2="",r=""; rrep(j,s.size()){r=ADD(r,S((s[j]-'0')*(t[i]-'0'))+z2);z2+="0";} ans=ADD(ans,r+z1);z1+="0"; } return T(ans); } bool cmp(string s,string t) { if(s.size()!=t.size())return s.size()>t.size(); rep(i,s.size())if(s[i]!=t[i])return s[i]>t[i]; return 1; } void Main() { string s,t; cin >> s >> t; string s1=ADD(s,t); string s2=MUL(s,t); if(s1==s2) pr("E"); else if(cmp(s1,s2)) pr("S"); else pr("P"); } int main(){ios::sync_with_stdio(0);cin.tie(0);Main();return 0;}