#include using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pair pii; #define FOR(i,a,n) for(int i=a;i<(int)(n);i++) #define REP(i,n) FOR(i,0,n) #define ALL(a) (a).begin(),(a).end() #define MP(a,b) make_pair(a,b) #define PB(a) push_back(a) #define F first #define S second const int INF = 2000000000; const int DX[4]={0,1,0,-1}, DY[4]={-1,0,1,0}; struct P{int x;int y;P(int X=0,int Y=0){x=X;y=Y;}}; int main() { int N; string sb,sa; cin >> sb >> N >> sa; int nb = 0, na = 0; REP(i,3) { nb += (sb[i]=='x'); na += (sa[i]=='x'); } if(nb!=na) { cout << "SUCCESS" << endl; return 0; } if(sb==sa) { if(sb=="ooo" || sb=="xxx" || sb=="oxx" || sb=="xxo" || sb=="xoo" || sb=="oox") cout << "FAILURE" << endl; else { if(N%2==0) cout << "FAILURE" << endl; else cout << "SUCCESS" << endl; } return 0; } if(nb==2) REP(i,3) { sb[i] = (sb[i]=='o'?'x':'o'); sa[i] = (sa[i]=='o'?'x':'o'); } if(sb=="xoo") { int t=0; if(sa=="oxo") t=1; else if(sa=="oox") t=2; if(N>=t) cout << "FAILURE" << endl; else cout << "SUCCESS" << endl; return 0; } else if(sb=="oox") { int t=0; if(sa=="oxo") t=1; else if(sa=="xoo") t=2; if(N>=t) cout << "FAILURE" << endl; else cout << "SUCCESS" << endl; return 0; } else if(sb=="oxo") { if(N>=1) cout << "FAILURE" << endl; else cout << "SUCCESS" << endl; return 0; } return 0; }