#include <stdio.h> typedef struct stack { int *base; int *top; } stack; int main() { int n,i,j,k,pri[60],succ; char in[12],out[12]; stack s; s.base = (int *)malloc(12*sizeof(int)); if(!s.base) exit(-1); while(scanf("%d",&n)!=EOF) { scanf("%s%s",in,out); *s.base = in[0]-'0'; s.top = s.base +1; i = 1; j=0; pri[0] = 1; k=1; succ = 0; while(1) { if(*(s.top-1)==out[j]-'0') { s.top = s.top-1; j++; pri[k++] = 0; } else if(i<n&&*(s.top-1)!=out[j]-'0') { *s.top = in[i]-'0'; s.top++; i++; pri[k++] = 1; } else if(i == n && j== n && s.top == s.base) { succ = 1; break; } else break; } if(succ == 1) { printf("Yes./n"); for(i=0;i<k;i++) { if(pri[i]==0) printf("out/n"); else printf("in/n"); } printf("FINISH/n"); } else printf("No./nFINISH/n"); } return 0; }