activenatsFromNmarkconsNnatsFromsNactivefstpairXSYSmarkXSactivesndpairXSYSmarkYSactivesplitAt0XSmarkpairnilXSactivesplitAtsNconsXXSmarkusplitAtNXSNXXSactiveupairYSZSNXXSmarkpairconsXYSZSactiveheadconsNXSmarkNactivetailconsNXSmarkXSactiveselNXSmarkheadafterNthNXSactivetakeNXSmarkfstsplitAtNXSactiveafterNthNXSmarksndsplitAtNXSmarknatsFromXactivenatsFrommarkXmarkconsX1X2activeconsmarkX1X2marksXactivesmarkXmarkfstXactivefstmarkXmarkpairX1X2activepairmarkX1markX2marksndXactivesndmarkXmarksplitAtX1X2activesplitAtmarkX1markX2mark0active0marknilactivenilmarkuX1X2X3X4activeumarkX1X2X3X4markheadXactiveheadmarkXmarktailXactivetailmarkXmarkselX1X2activeselmarkX1markX2markafterNthX1X2activeafterNthmarkX1markX2marktakeX1X2activetakemarkX1markX2natsFrommarkXnatsFromXnatsFromactiveXnatsFromXconsmarkX1X2consX1X2consX1markX2consX1X2consactiveX1X2consX1X2consX1activeX2consX1X2smarkXsXsactiveXsXfstmarkXfstXfstactiveXfstXpairmarkX1X2pairX1X2pairX1markX2pairX1X2pairactiveX1X2pairX1X2pairX1activeX2pairX1X2sndmarkXsndXsndactiveXsndXsplitAtmarkX1X2splitAtX1X2splitAtX1markX2splitAtX1X2splitAtactiveX1X2splitAtX1X2splitAtX1activeX2splitAtX1X2umarkX1X2X3X4uX1X2X3X4uX1markX2X3X4uX1X2X3X4uX1X2markX3X4uX1X2X3X4uX1X2X3markX4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4uX1activeX2X3X4uX1X2X3X4uX1X2activeX3X4uX1X2X3X4uX1X2X3activeX4uX1X2X3X4headmarkXheadXheadactiveXheadXtailmarkXtailXtailactiveXtailXselmarkX1X2selX1X2selX1markX2selX1X2selactiveX1X2selX1X2selX1activeX2selX1X2afterNthmarkX1X2afterNthX1X2afterNthX1markX2afterNthX1X2afterNthactiveX1X2afterNthX1X2afterNthX1activeX2afterNthX1X2takemarkX1X2takeX1X2takeX1markX2takeX1X2takeactiveX1X2takeX1X2takeX1activeX2takeX1X2activenatsFromNsNactivenatsFromNnatsFromsNactivenatsFromNconsNnatsFromsNactivenatsFromNmarkconsNnatsFromsNactivefstpairXSYSmarkXSactivesndpairXSYSmarkYSactivesplitAt0XSpairnilXSactivesplitAt0XSmarkpairnilXSactivesplitAtsNconsXXSsplitAtNXSactivesplitAtsNconsXXSusplitAtNXSNXXSactivesplitAtsNconsXXSmarkusplitAtNXSNXXSactiveupairYSZSNXXSconsXYSactiveupairYSZSNXXSpairconsXYSZSactiveupairYSZSNXXSmarkpairconsXYSZSactiveheadconsNXSmarkNactivetailconsNXSmarkXSactiveselNXSafterNthNXSactiveselNXSheadafterNthNXSactiveselNXSmarkheadafterNthNXSactivetakeNXSsplitAtNXSactivetakeNXSfstsplitAtNXSactivetakeNXSmarkfstsplitAtNXSactiveafterNthNXSsplitAtNXSactiveafterNthNXSsndsplitAtNXSactiveafterNthNXSmarksndsplitAtNXSmarknatsFromXmarkXmarknatsFromXnatsFrommarkXmarknatsFromXactivenatsFrommarkXmarkconsX1X2markX1markconsX1X2consmarkX1X2markconsX1X2activeconsmarkX1X2marksXmarkXmarksXsmarkXmarksXactivesmarkXmarkfstXmarkXmarkfstXfstmarkXmarkfstXactivefstmarkXmarkpairX1X2markX2markpairX1X2markX1markpairX1X2pairmarkX1markX2markpairX1X2activepairmarkX1markX2marksndXmarkXmarksndXsndmarkXmarksndXactivesndmarkXmarksplitAtX1X2markX2marksplitAtX1X2markX1marksplitAtX1X2splitAtmarkX1markX2marksplitAtX1X2activesplitAtmarkX1markX2mark0active0marknilactivenilmarkuX1X2X3X4markX1markuX1X2X3X4umarkX1X2X3X4markuX1X2X3X4activeumarkX1X2X3X4markheadXmarkXmarkheadXheadmarkXmarkheadXactiveheadmarkXmarktailXmarkXmarktailXtailmarkXmarktailXactivetailmarkXmarkselX1X2markX2markselX1X2markX1markselX1X2selmarkX1markX2markselX1X2activeselmarkX1markX2markafterNthX1X2markX2markafterNthX1X2markX1markafterNthX1X2afterNthmarkX1markX2markafterNthX1X2activeafterNthmarkX1markX2marktakeX1X2markX2marktakeX1X2markX1marktakeX1X2takemarkX1markX2marktakeX1X2activetakemarkX1markX2natsFrommarkXnatsFromXnatsFromactiveXnatsFromXconsmarkX1X2consX1X2consX1markX2consX1X2consactiveX1X2consX1X2consX1activeX2consX1X2smarkXsXsactiveXsXfstmarkXfstXfstactiveXfstXpairmarkX1X2pairX1X2pairX1markX2pairX1X2pairactiveX1X2pairX1X2pairX1activeX2pairX1X2sndmarkXsndXsndactiveXsndXsplitAtmarkX1X2splitAtX1X2splitAtX1markX2splitAtX1X2splitAtactiveX1X2splitAtX1X2splitAtX1activeX2splitAtX1X2umarkX1X2X3X4uX1X2X3X4uX1markX2X3X4uX1X2X3X4uX1X2markX3X4uX1X2X3X4uX1X2X3markX4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4uX1activeX2X3X4uX1X2X3X4uX1X2activeX3X4uX1X2X3X4uX1X2X3activeX4uX1X2X3X4headmarkXheadXheadactiveXheadXtailmarkXtailXtailactiveXtailXselmarkX1X2selX1X2selX1markX2selX1X2selactiveX1X2selX1X2selX1activeX2selX1X2afterNthmarkX1X2afterNthX1X2afterNthX1markX2afterNthX1X2afterNthactiveX1X2afterNthX1X2afterNthX1activeX2afterNthX1X2takemarkX1X2takeX1X2takeX1markX2takeX1X2takeactiveX1X2takeX1X2takeX1activeX2takeX1X2truemarktakeX1X2markX2marknatsFromXmarkXmarknatsFromXactivenatsFrommarkXactivenatsFromNmarkconsNnatsFromsNmarkconsX1X2markX1markconsX1X2activeconsmarkX1X2activefstpairXSYSmarkXSmarksXmarkXmarksXactivesmarkXactivesndpairXSYSmarkYSmarkfstXmarkXmarkfstXactivefstmarkXactivesplitAt0XSmarkpairnilXSmarkpairX1X2markX2markpairX1X2markX1markpairX1X2activepairmarkX1markX2activesplitAtsNconsXXSmarkusplitAtNXSNXXSmarksndXmarkXmarksndXactivesndmarkXactiveupairYSZSNXXSmarkpairconsXYSZSmarksplitAtX1X2markX2marksplitAtX1X2markX1marksplitAtX1X2activesplitAtmarkX1markX2activeheadconsNXSmarkNmark0active0activetailconsNXSmarkXSmarknilactivenilactiveselNXSmarkheadafterNthNXSmarkuX1X2X3X4markX1markuX1X2X3X4activeumarkX1X2X3X4activetakeNXSmarkfstsplitAtNXSmarkheadXmarkXmarkheadXactiveheadmarkXactiveafterNthNXSmarksndsplitAtNXSmarktailXmarkXmarktailXactivetailmarkXmarkselX1X2markX2markselX1X2markX1markselX1X2activeselmarkX1markX2markafterNthX1X2markX2markafterNthX1X2markX1markafterNthX1X2activeafterNthmarkX1markX2marktakeX1X2markX1marktakeX1X2activetakemarkX1markX2truemarktakeX1X2markX2marktakeX1X2activetakemarkX1markX2activeafterNthNXSmarksndsplitAtNXSmarktakeX1X2markX1markafterNthX1X2activeafterNthmarkX1markX2activetakeNXSmarkfstsplitAtNXSmarkafterNthX1X2markX1markafterNthX1X2markX2markselX1X2activeselmarkX1markX2activeselNXSmarkheadafterNthNXSmarkselX1X2markX1markselX1X2markX2marktailXactivetailmarkXactivetailconsNXSmarkXSmarktailXmarkXmarkheadXactiveheadmarkXactiveheadconsNXSmarkNmarkheadXmarkXmarkuX1X2X3X4activeumarkX1X2X3X4activeupairYSZSNXXSmarkpairconsXYSZSmarkuX1X2X3X4markX1marksplitAtX1X2activesplitAtmarkX1markX2activesplitAtsNconsXXSmarkusplitAtNXSNXXSmarksplitAtX1X2markX1marksplitAtX1X2markX2marksndXactivesndmarkXactivesplitAt0XSmarkpairnilXSmarksndXmarkXmarkpairX1X2activepairmarkX1markX2activesndpairXSYSmarkYSmarkpairX1X2markX1markpairX1X2markX2markfstXactivefstmarkXactivefstpairXSYSmarkXSmarkfstXmarkXmarksXactivesmarkXactivenatsFromNmarkconsNnatsFromsNmarksXmarkXmarkconsX1X2activeconsmarkX1X2markconsX1X2markX1marknatsFromXactivenatsFrommarkXmarknatsFromXmarkXtrue1mark1018active1810take201021afterNth201021sel201021tail1011head1011u4010203041nil00splitAt201021000snd1011fst1011pair201021mark1010cons201020s1011active1010natsFrom1011marktakeX1X2markX2marktakeX1X2activetakemarkX1markX2activeafterNthNXSmarksndsplitAtNXSmarktakeX1X2markX1markafterNthX1X2activeafterNthmarkX1markX2activetakeNXSmarkfstsplitAtNXSmarkafterNthX1X2markX1markafterNthX1X2markX2markselX1X2activeselmarkX1markX2activeselNXSmarkheadafterNthNXSmarkselX1X2markX1markselX1X2markX2marktailXactivetailmarkXactivetailconsNXSmarkXSmarktailXmarkXmarkheadXactiveheadmarkXactiveheadconsNXSmarkNmarkheadXmarkXmarkuX1X2X3X4activeumarkX1X2X3X4activeupairYSZSNXXSmarkpairconsXYSZSmarkuX1X2X3X4markX1marksplitAtX1X2activesplitAtmarkX1markX2activesplitAtsNconsXXSmarkusplitAtNXSNXXSmarksplitAtX1X2markX1marksplitAtX1X2markX2marksndXactivesndmarkXactivesplitAt0XSmarkpairnilXSmarksndXmarkXmarkpairX1X2activepairmarkX1markX2activesndpairXSYSmarkYSmarkpairX1X2markX1markpairX1X2markX2markfstXactivefstmarkXactivefstpairXSYSmarkXSmarkfstXmarkXmarksXactivesmarkXactivenatsFromNmarkconsNnatsFromsNmarksXmarkXmarkconsX1X2markX1marknatsFromXactivenatsFrommarkXmarknatsFromXmarkXactivenatsFromNmarkconsNnatsFromsNactivefstpairXSYSmarkXSactivesndpairXSYSmarkYSactivesplitAt0XSmarkpairnilXSactivesplitAtsNconsXXSmarkusplitAtNXSNXXSactiveupairYSZSNXXSmarkpairconsXYSZSactiveheadconsNXSmarkNactivetailconsNXSmarkXSactiveselNXSmarkheadafterNthNXSactivetakeNXSmarkfstsplitAtNXSactiveafterNthNXSmarksndsplitAtNXSmarknatsFromXactivenatsFrommarkXmarkconsX1X2activeconsmarkX1X2marksXactivesmarkXmarkfstXactivefstmarkXmarkpairX1X2activepairmarkX1markX2marksndXactivesndmarkXmarksplitAtX1X2activesplitAtmarkX1markX2mark0active0marknilactivenilmarkuX1X2X3X4activeumarkX1X2X3X4markheadXactiveheadmarkXmarktailXactivetailmarkXmarkselX1X2activeselmarkX1markX2markafterNthX1X2activeafterNthmarkX1markX2marktakeX1X2activetakemarkX1markX2natsFrommarkXnatsFromXnatsFromactiveXnatsFromXconsmarkX1X2consX1X2consX1markX2consX1X2consactiveX1X2consX1X2consX1activeX2consX1X2smarkXsXsactiveXsXfstmarkXfstXfstactiveXfstXpairmarkX1X2pairX1X2pairX1markX2pairX1X2pairactiveX1X2pairX1X2pairX1activeX2pairX1X2sndmarkXsndXsndactiveXsndXsplitAtmarkX1X2splitAtX1X2splitAtX1markX2splitAtX1X2splitAtactiveX1X2splitAtX1X2splitAtX1activeX2splitAtX1X2umarkX1X2X3X4uX1X2X3X4uX1markX2X3X4uX1X2X3X4uX1X2markX3X4uX1X2X3X4uX1X2X3markX4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4uX1activeX2X3X4uX1X2X3X4uX1X2activeX3X4uX1X2X3X4uX1X2X3activeX4uX1X2X3X4headmarkXheadXheadactiveXheadXtailmarkXtailXtailactiveXtailXselmarkX1X2selX1X2selX1markX2selX1X2selactiveX1X2selX1X2selX1activeX2selX1X2afterNthmarkX1X2afterNthX1X2afterNthX1markX2afterNthX1X2afterNthactiveX1X2afterNthX1X2afterNthX1activeX2afterNthX1X2takemarkX1X2takeX1X2takeX1markX2takeX1X2takeactiveX1X2takeX1X2takeX1activeX2takeX1X21mark1018active1410take201022afterNth201022sel201022tail1012head1012u4010203042nil00splitAt201022001snd1012fst1012pair201020mark1810cons211123s1010active1010natsFrom1012marktakeX1X2markX2marktakeX1X2activetakemarkX1markX2activeafterNthNXSmarksndsplitAtNXSmarktakeX1X2markX1markafterNthX1X2activeafterNthmarkX1markX2activetakeNXSmarkfstsplitAtNXSmarkafterNthX1X2markX1markafterNthX1X2markX2markselX1X2activeselmarkX1markX2activeselNXSmarkheadafterNthNXSmarkselX1X2markX1markselX1X2markX2marktailXactivetailmarkXactivetailconsNXSmarkXSmarktailXmarkXmarkheadXactiveheadmarkXactiveheadconsNXSmarkNmarkheadXmarkXmarkuX1X2X3X4activeumarkX1X2X3X4activeupairYSZSNXXSmarkpairconsXYSZSmarkuX1X2X3X4markX1marksplitAtX1X2activesplitAtmarkX1markX2activesplitAtsNconsXXSmarkusplitAtNXSNXXSmarksplitAtX1X2markX1marksplitAtX1X2markX2marksndXactivesndmarkXactivesplitAt0XSmarkpairnilXSmarksndXmarkXactivesndpairXSYSmarkYSmarkpairX1X2markX1markpairX1X2markX2markfstXactivefstmarkXactivefstpairXSYSmarkXSmarkfstXmarkXactivenatsFromNmarkconsNnatsFromsNmarksXmarkXmarkconsX1X2markX1marknatsFromXactivenatsFrommarkXmarknatsFromXmarkXnatsFrommarkXnatsFromXnatsFromactiveXnatsFromXsmarkXsXsactiveXsXfstmarkXfstXfstactiveXfstXpairmarkX1X2pairX1X2pairX1markX2pairX1X2pairactiveX1X2pairX1X2pairX1activeX2pairX1X2sndmarkXsndXsndactiveXsndXsplitAtmarkX1X2splitAtX1X2splitAtX1markX2splitAtX1X2splitAtactiveX1X2splitAtX1X2splitAtX1activeX2splitAtX1X2umarkX1X2X3X4uX1X2X3X4uX1markX2X3X4uX1X2X3X4uX1X2markX3X4uX1X2X3X4uX1X2X3markX4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4uX1activeX2X3X4uX1X2X3X4uX1X2activeX3X4uX1X2X3X4uX1X2X3activeX4uX1X2X3X4headmarkXheadXheadactiveXheadXtailmarkXtailXtailactiveXtailXselmarkX1X2selX1X2selX1markX2selX1X2selactiveX1X2selX1X2selX1activeX2selX1X2afterNthmarkX1X2afterNthX1X2afterNthX1markX2afterNthX1X2afterNthactiveX1X2afterNthX1X2afterNthX1activeX2afterNthX1X2takemarkX1X2takeX1X2takeX1markX2takeX1X2takeactiveX1X2takeX1X2takeX1activeX2takeX1X2mark0active0falsemarknilactivenilfalsemarkafterNthX1X2afterNthmarkX1markX2falsemarkselX1X2selmarkX1markX2falsemarktailXtailmarkXfalseactiveafterNthNXSsndsplitAtNXSfalseactiveafterNthNXSsplitAtNXSfalsemarkheadXheadmarkXfalseactivetakeNXSfstsplitAtNXSfalseactivetakeNXSsplitAtNXSfalsemarkuX1X2X3X4umarkX1X2X3X4falseactiveselNXSheadafterNthNXSfalseactiveselNXSafterNthNXSfalsemarksplitAtX1X2splitAtmarkX1markX2falseactiveupairYSZSNXXSpairconsXYSZSfalseactiveupairYSZSNXXSconsXYSfalsemarksndXsndmarkXfalseactivesplitAtsNconsXXSusplitAtNXSNXXSfalseactivesplitAtsNconsXXSsplitAtNXSfalsemarkpairX1X2pairmarkX1markX2falseactivesplitAt0XSpairnilXSfalsemarkfstXfstmarkXfalsemarksXsmarkXfalsemarkconsX1X2consmarkX1X2falseactivenatsFromNconsNnatsFromsNfalseconsmarkX1X2consX1X2consX1markX2consX1X2consactiveX1X2consX1X2consX1activeX2consX1X2truecons22consmarkX1X2consX1X2consactiveX1X2consX1X2cons21activenatsFromNnatsFromsNfalseactivenatsFromNsNfalsesmarkXsXsactiveXsXtrues11marknatsFromXnatsFrommarkXfalsenatsFrommarkXnatsFromXnatsFromactiveXnatsFromXtruenatsFrom11marktakeX1X2takemarkX1markX2falsepairmarkX1X2pairX1X2pairX1markX2pairX1X2pairactiveX1X2pairX1X2pairX1activeX2pairX1X2truepair22pairmarkX1X2pairX1X2pairactiveX1X2pairX1X2pair21splitAtmarkX1X2splitAtX1X2splitAtX1markX2splitAtX1X2splitAtactiveX1X2splitAtX1X2splitAtX1activeX2splitAtX1X2truesplitAt22splitAtmarkX1X2splitAtX1X2splitAtactiveX1X2splitAtX1X2splitAt21umarkX1X2X3X4uX1X2X3X4uX1markX2X3X4uX1X2X3X4uX1X2markX3X4uX1X2X3X4uX1X2X3markX4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4uX1activeX2X3X4uX1X2X3X4uX1X2activeX3X4uX1X2X3X4uX1X2X3activeX4uX1X2X3X4trueu44umarkX1X2X3X4uX1X2X3X4uX1markX2X3X4uX1X2X3X4uX1X2markX3X4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4uX1activeX2X3X4uX1X2X3X4uX1X2activeX3X4uX1X2X3X4u43umarkX1X2X3X4uX1X2X3X4uX1markX2X3X4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4uX1activeX2X3X4uX1X2X3X4u42umarkX1X2X3X4uX1X2X3X4uactiveX1X2X3X4uX1X2X3X4u41afterNthmarkX1X2afterNthX1X2afterNthX1markX2afterNthX1X2afterNthactiveX1X2afterNthX1X2afterNthX1activeX2afterNthX1X2trueafterNth22afterNthmarkX1X2afterNthX1X2afterNthactiveX1X2afterNthX1X2afterNth21headmarkXheadXheadactiveXheadXtruehead11fstmarkXfstXfstactiveXfstXtruefst11sndmarkXsndXsndactiveXsndXtruesnd11tailmarkXtailXtailactiveXtailXtruetail11selmarkX1X2selX1X2selX1markX2selX1X2selactiveX1X2selX1X2selX1activeX2selX1X2truesel22selmarkX1X2selX1X2selactiveX1X2selX1X2sel21takemarkX1X2takeX1X2takeX1markX2takeX1X2takeactiveX1X2takeX1X2takeX1activeX2takeX1X2truetake22takemarkX1X2takeX1X2takeactiveX1X2takeX1X2take21