Derivative by yshl

/n{dup 0 get 64 lt{1{2 copy exch length ge{exit}if 2 copy get 46 mod 11
gt{exit}if 1 add}loop 2 copy 1 index length 1 index sub getinterval 3 1 roll 0
exch getinterval dup(+)eq{pop(1)}if dup(-)eq{pop(-1)}if}{(1)}ifelse}def
42{false(%stdin)(r)file 99 string readline pop{dup()eq{exit}if n 1 index()eq{2
index not{(0)print}if exit}if{1 index 1 get 94 eq{cvx exec 1 index 2 1 index
length 2 sub getinterval n cvx exec dup 3 index mul dup dup cvi eq{cvi}if dup 0
ge 6 index and{(+)=only}if dup 1 ne{dup -1 eq{(-)print}{=only[}ifelse}if
pop(x)print 1 sub dup 1 ne{(^)print =only}{pop}ifelse true
exch}{[[stop}ifelse}stopped{pop pop cvx exec dup 0 ge 3 index and{(+)print}if
=only 1 1 index length 1 sub getinterval true exch}if}loop/ =}repeat

Note that non-ascii characters in the above source code will be escaped (such as \x9f).

download

return to the top page