     Int L[A],m,b,*D=A,
      *c,*a=L,C,*U=L,u;s
       (Int*m){return!*U?
        *m=g()?U++,!g()?m[
         1]=s(++U),2:3:1,s(
          U):g()?U+=2:s(U[1]
           ++),U-m;}v(){for(D
            =a;u--;a=*a);C=a[3
             ];++1[a=a[2]];d(D)
              ;}char *B,I,O,*S =
               "-,&,,/.--/,:-,'/"
               ".-,-,,/.-,*,//..,"
              ;d(Int*l){--l[1]||d(l
             [d(*l),*l=B,B=l,2]);}g(
            ){b=b--?b:m|read(0,&I,1)-
           1;return~I>>b&1;}x(){for(k(
          0,6),U[-5]=96;b;*U++=g())k(0,
         9);}k(l,u){for(;l<=u;U-L-A?*U++
        =S[l++]^46:exit(5));}main(e){for(
       k(10,33),a[4]-=m =e-2&7,a[23]=s(U),
      b=0;;e?e-1?e-2?c   ?D=c,c=*D,*D=a,a=D
     :exit(L[C+1]):(D     =B?B:calloc(4,X))?
    B=*D,*D=c,c=D,D[       3]=++C+u, D[2]=a,a
   [++D[1] ]++:exit         (6):v():C -->22?g(
  ),1<++b &&x(),k(           7*!b,9),* U++=b&&g
 ():(C=u+m&1?O=O+             O|C&1,9:write(m||(
O=C+28),&O,1)+1)               )e=L[C++],u=L[C];}
