$a='/:$1:/s||s/s';$,='(.{8})';$/="{(s/:$,s$a$,:$a:|:s/::/)&&redo;/(.*:){4}/s&&y/:/ /&&\$|++;y/:/;/;s)s):)&&redo;y/;/s/;y/a-y/ya-x/}"x$=.'1while s/(\w)$, / $2$1/s;$:+=$|;$|=0;';$_=<>;eval$/x20;print"$_ $: chains"
Note that non-ascii characters in the above source code will be escaped (such as \x9f).