-- 1 - ? dup bool && nulco [nullary [false]] dip branch ++ 1 + || nulco [nullary] dip [true] branch !- 0 >= <{} [] swap <<{} [] rolldown abs dup 0 < [] [neg] branch anamorphism [pop []] swap [dip swons] genrec app1 grba infrst app2 [grba swap grba swap] dip [infrst] cons ii app3 3 appN appN [grabN] codi map disenstacken at drop first average [sum] [size] cleave / b [i] dip i binary unary popd ccccons ccons ccons ccons cons cons clear stack bool [pop stack bool] loop cleave fork popdd clop cleave popdd codi cons dip codireco codi reco dinfrirst dip infrst dipd [dip] codi disenstacken ? [uncons ?] loop pop down_to_zero [0 >] [dup --] while drop [rest] times dupd [dup] dip dupdd [dup] dipd dupdip dupd dip dupdipd dup dipd enstacken stack [clear] dip flatten <{} [concat] step fork [i] app2 fourth rest third gcd true [tuck mod dup 0 >] loop pop genrec [[genrec] ccccons] nullary swons concat ifte grabN <{} [cons] times grba [stack popd] dip hypot [sqr] ii + sqrt ifte [nullary] dipd swap branch ii [dip] dupdip i infra swons swaack [i] dip swaack infrst infra first make_generator [codireco] ccons mod % neg 0 swap - not [true] [false] branch nulco [nullary] cons nullary [stack] dinfrirst of swap at pam [i] map pm [+] [-] clop popd [pop] dip popdd [pop] dipd popop pop pop popopop pop popop popopd [popop] dip popopdd [popop] dipd product 1 swap [*] step quoted [unit] dip range [0 <=] [1 - dup] anamorphism range_to_zero unit [down_to_zero] infra reco rest cons rest [pop] infra reverse <{} shunt roll> swap swapd roll< swapd swap rollup roll> rolldown roll< rrest rest rest run <{} infra second rest first shift uncons [swons] dip shunt [swons] step size [pop ++] step_zero spiral_next [[[abs] ii <=] [[<>] [pop !-] ||] &&] [[!-] [[++]] [[--]] ifte dip] [[pop !-] [--] [++] ifte] ifte split_at [drop] [take] clop split_list [take reverse] [drop] clop sqr dup * stackd [stack] dip step_zero 0 roll> step sum [+] step_zero swapd [swap] dip swons swap cons swoncat swap concat tailrec [i] genrec take [] roll> [shift] times pop ternary binary popd third rest second tuck dup swapd unary nullary popd uncons [first] [rest] cleave unit [] cons unquoted [i] dip unswons uncons swap while swap nulco dupdipd concat loop x dup i step [_step0] x _step0 _step1 [popopop] [_stept] branch _step1 [?] dipd roll< _stept [uncons] dipd [dupdipd] dip x times [_times0] x _times0 _times1 [popopop] [_timest] branch _times1 [dup 0 >] dipd roll< _timest [[--] dip dupdipd] dip x map [_map0] cons [[] [_map?] [_mape]] dip tailrec _map? pop bool not _mape popd reverse _map0 [_map1] dipd _map2 _map1 stackd shift _map2 [infrst] cons dipd roll< swons