p *$<.map(&f=->s,n=9e99{!t=s[/.+/]or(1..n).find{|i|n>(m=t[-i,99].to_i)?t[-i]>?0&&f[t[0...-i],m]:break}})