Must be first line in a file:
sub'_{q} tsuJ}}_();sub's{seek+DATA,0,0}sub'p{print&_}sub'r{reverse$_[0 ]}@_=(('')x2,split" ",<DATA>);s!!&s,$_=<DATA>;s/}.*?}/$_[$s+1]/ if$s;s/(}.*?})/r$1/e;eval$_;p,$s++!efor@_[0..3]; __DATA__ } rehtona} } lreP} },rekcah}