U101ttfstsplitAtNXSU11ttsndsplitAtNXSU21ttXU31ttNU41ttconsNU51ttheadafterNthNXSU61ttYU71ttpairnilXSU81ttU82splitAtNXSU82pairYSZSpairconsXZSU91ttXSandttXafterNthNXSU11andisNaturalfstpairXYU21andisLNatheadconsNU31andisNaturalisLNatttisLNatandisNaturalisLNatisPLNatisLNatisNaturalisLNatisLNatisNaturalttisNaturalisLNatisNaturalisNaturalisNaturalandisNaturalisPLNatandisLNatisPLNatandisNaturalnatsFromNU41isNaturalselNXSU51andisNaturalsndpairXYU61andisLNatsplitAt0XSU71isLNatsplitAtsNconsXU81andisNaturaltailconsNU91andisNaturaltakeNXSU101andisNatural2.1U101ttU101ttfstsplitAtNXSfstsplitAtU101ttXSNU101ttfstsplitAtXSttt21.14if standard then (var | con | (lpo || unfold[1] || (dp;(tdg | sccs | sc)*;(edg[2] | sccs | sc | sct | {ur?;lpo -dp -af[2]}restore | {ur?;matrix -dp -dim 2 -ib 2 -ob 2 -ur[2]}restore | uncurryx?;uncurryx -top )[10]*)!)) else if relative then (trivial | var | (unfold[2] || (( lpo -quasi | matrix -dim 2 -ib 2 -ob 3 | matrix -dim 3 -ib 2 -ob 2 | uncurryx )[10]*))) else fail