use warnings;use strict; (@ARGV eq 4)?(($",$~,$:,$.) = @ARGV,$^=$_='0000'): ($"=$_=$^=$.=$:='0000',$~='0001');{$|=1;select $,,$,,$,,1; ((s:0000:0001:)?():((s:0001:0010:)?():((s:0010:0011:)?():((s:0011:0100:)?():((s:0100:0101:)?():((s:0101:0110:)?():((s:0110:0111:)?():((s:0111:1000:)?():((s:1000:1001:))))))))))?():((s:1001:0000:)?((($^=~s:0000:0001:)?():(($^=~s:0001:0010:)?():(($^=~s:0010:0011:)?():(($^=~s:0011:0100:)?():(($^=~s:0100:0101:))))))?():(($^=~s:0101:0000:)?((($.=~s:0000:0001:)?():(($.=~s:0001:0010:)?():(($.=~s:0010:0011:)?():(($.=~s:0011:0100:)?():(($.=~s:0100:0101:)?():(($.=~s:0101:0110:)?():(($.=~s:0110:0111:)?():(($.=~s:0111:1000:)?():(($.=~s:1000:1001:))))))))))?():(($.=~s:1001:0000:)?((($:=~s:0000:0001:)?():(($:=~s:0001:0010:)?():(($:=~s:0010:0011:)?():(($:=~s:0011:0100:)?():(($:=~s:0100:0101:))))))?():(($:=~s:0101:0000:)?((($~=~s:0000:0001:)?():(($~=~s:0001:0010:)?():(($~=~s:0010:0011:)?(($"=='0001')?($~=$",$"='0000'):()):(($~=~s:0011:0100:)?():(($~=~s:0100:0101:)?():(($~=~s:0101:0110:)?():(($~=~s:0110:0111:)?():(($~=~s:0111:1000:)?():(($~=~s:1000:1001:))))))))))?():(($~=~s:1001:0000:)?(($"=~s:0000:0001:)?():($"=~s:0001:0000:)):())):())):())):())):()), (print "\r",$",' ',$~,':',$:,' ',$.,':',$^,' ',$_)&&redo}