g(b:c)[]u=(u++c):g c[]u
g(b:c)n@(o:p)u|b==o=g c p(u++[o])|1<2=((u++o:c):g c p(u++[o]))!((u++c):g c n u)
a!b|l a<l b=a|1<2=b
p[a,n]=g a n""
bD1sZW5ndGgKZ1tdbiB1PW1hcChcXy0+IiIpbgpnKGI6YylbXXU9KHUrK2MpOmcgY1tddQpnKGI6YyluQChvOnApdXxiPT1vPWcgYyBwKHUrK1tvXSl8MTwyPSgodSsrbzpjKTpnIGMgcCh1Kytbb10pKSEoKHUrK2MpOmcgYyBuIHUpCmEhYnxsIGE8bCBiPWF8MTwyPWIKcFthLG5dPWcgYSBuIiIKbWFpbj1pbnRlcmFjdCR1bmxpbmVzLnAubGluZXM=