$ od -c -N 50000 [eris]<LispCore>SOURCES>CMLSEQMAPPERS!8 0000000 ( D E F I N E - F I L E - I N F 0000020 O 247 R E A D T A B L E " X C 0000040 L " 247 P A C K A G E " L I S 0000060 P " ) \r 006 001 ( I L : F I L E C R 0000100 E A T E D " 2 0 - O c t - 8 6 0000120 1 7 : 2 8 : 0 6 " 006 004 I L : 0000140 { E R I S } < L I S P C O R E > 0000160 S O U R C E S > C M L S E Q M A 0000200 P P E R S . \ ; 8 006 001 2 3 3 1 0000220 4 \r \r I L : | c 0000240 h a n g e s | I L : | t o : | 0000260 ( I L : V A R S I L : C M 0000300 L S E Q M A P P E R S C O M S ) 0000320 \r 0000340 ( I 0000360 L : F U N C T I O N S I L : E 0000400 L T - S L I C E I L : M A P - 0000420 F O R - E F F E C T ) \r \r 0000440 I L : | p r e v i o u s | 0000460 I L : | d a t e : | " 1 2 - 0000500 O c t - 8 6 1 7 : 3 1 : 0 6 " 0000520 I L : { E R I S } < L I S P C 0000540 O R E > S O U R C E S > C M L S 0000560 E Q M A P P E R S . \ ; 7 ) \r \r 0000600 \r ; C o p y r i g h t ( c ) 0000620 1 9 8 6 b y X e r o x C 0000640 o r p o r a t i o n . A l l 0000660 r i g h t s r e s e r v e d 0000700 . \r \r ( I L : P R E T T Y C O M 0000720 P R I N T I L : C M L S E Q M 0000740 A P P E R S C O M S ) \r \r ( I L 0000760 : R P A Q Q 006 002 I L : C M L S 0001000 E Q M A P P E R S C O M S 006 001 0001020 ( ( I L : D E C L A R E \ : I 0001040 L : E V A L @ C O M P I L E I 0001060 L : D O N T C O P Y ( I L : F 0001100 I L E S I L : C M L S E Q C O 0001120 M M O N ) ) \r 0001140 0001160 ( I L : F U N C T 0001200 I O N S I L : E L T - S L I C 0001220 E I L : M A P - F O R - E F F 0001240 E C T I L : % M A P - F O R - 0001260 E F F E C T \r 0001300 0001320 I 0001340 L : % M A P - S I N G L E - F O 0001360 R - E F F E C T I L : M A P - 0001400 T O - L I S T I L : % M A P - 0001420 T O - L I S T \r 0001440 * 0001500 I L : % M A P - S I N G L E - T 0001520 O - L I S T I L : M A P - T O 0001540 - S I M P L E I L : % M A P - 0001560 T O - S I M P L E \r 0001600 * 0001640 I L : % M A P - S I N G L E 0001660 - T O - S I M P L E M A P ) \r 0001700 * 0001740 ( I L : O P T I M I Z E R S I 0001760 L : % M A P - F O R - E F F E C 0002000 T I L : % M A P - T O - L I S 0002020 T I L : % M A P - T O - S I M 0002040 P L E \r 0002060 0002100 M A P ) 0002120 \r 0002140 0002160 ( I L : F U N C T I O N S I 0002200 L : % S I N G L E - S O M E S 0002220 O M E I L : % S I N G L E - E 0002240 V E R Y E V E R Y \r 0002260 * 0002320 I L : % S I N G L E - N O 0002340 T A N Y N O T A N Y I L : % 0002360 S I N G L E - N O T E V E R Y 0002400 N O T E V E R Y ) \r 0002420 0002440 ( I L : O P 0002460 T I M I Z E R S S O M E E V 0002500 E R Y N O T A N Y N O T E V 0002520 E R Y ) \r 0002540 0002560 ( I L : F U N C T I O 0002600 N S I L : L I S T - R E D U C 0002620 E - F R O M - E N D I L : L I 0002640 S T - R E D U C E \r 0002660 * 0002720 I L : M U M B L E - R E D U 0002740 C E - F R O M - E N D I L : M 0002760 U M B L E - R E D U C E R E D 0003000 U C E ) \r 0003020 0003040 ( I L : P R O P I L 0003060 : F I L E T Y P E I L : C M L 0003100 S E Q M A P P E R S ) ) ) \r ( I 0003120 L : D E C L A R E \ : I L : E 0003140 V A L @ C O M P I L E I L : D 0003160 O N T C O P Y \r ( I L : F I L 0003200 E S L O A D I L : C M L S E Q 0003220 C O M M O N ) \r ) \r ( D E F M A 0003240 C R O 006 002 I L : E L T - S L I 0003260 C E 006 001 ( I L : S E Q U E N C 0003300 E S I L : N ) ` ( M A P C A 0003320 R ( I L : F U N C T I O N ( 0003340 L A M B D A ( I L : S E Q ) \r 0003360 * 0003460 ( E L T I L : 0003500 S E Q , I L : N ) ) ) \r 0003520 * 0003600 , I L : S E Q U E N C E S ) ) \r 0003620 \r ( D E F M A C R O 006 002 I L : 0003640 M A P - F O R - E F F E C T 006 001 0003660 N I L ` ( I F ( N U L L 0003700 I L : M O R E - S E Q U E N C E 0003720 S ) \r 0003740 0003760 ( I L : S E Q - 0004000 D I S P A T C H I L : F I R S 0004020 T - S E Q U E N C E ( I L : M 0004040 A P C I L : F I R S T - S E Q 0004060 U E N C E \r 0004100 * 0004200 I L : F U N C T I O 0004220 N ) \r 0004240 0004260 ( 0004300 D O T I M E S ( I L : I ( I 0004320 L : V E C T O R - L E N G T H 0004340 I L : F I R S T - S E Q U E N C 0004360 E ) ) \r 0004400 * 0004440 ( F U N C A L L 0004460 I L : F U N C T I O N ( A R E 0004500 F I L : F I R S T - S E Q U E 0004520 N C E I L : I ) \r 0004540 * 0004620 ) ) ) \r 0004640 0004660 ( D O 0004700 ( ( I L : S E Q S I L : M O 0004720 R E - S E Q U E N C E S ( C D 0004740 R I L : S E Q S ) ) \r 0004760 * 0005020 ( I L : M I N - L E 0005040 N G T H ( L E N G T H I L : 0005060 F I R S T - S E Q U E N C E ) ) 0005100 ) \r 0005120 0005140 ( ( N U L 0005160 L I L : S E Q S ) \r 0005200 * 0005240 ( D O ( ( I L : I N 0005260 D E X 0 ( 1 + I L : I N D 0005300 E X ) ) ) \r 0005320 * 0005360 ( ( = I L : I N D E X 0005400 I L : M I N - L E N G T H ) \r 0005420 * 0005460 N 0005500 I L ) \r 0005520 * 0005560 ( A P P L Y I L : F U N C 0005600 T I O N ( I L : E L T - S L I 0005620 C E I L : S E Q U E N C E S 0005640 I L : I N D E X ) \r 0005660 * 0005720 ) 0005740 ) ) \r 0005760 0006000 ( L E T 0006020 ( ( I L : L E N G T H ( L E 0006040 N G T H ( C A R I L : S E Q 0006060 S ) ) ) ) \r 0006100 * 0006140 ( W H E N ( < I L : 0006160 L E N G T H I L : M I N - L E 0006200 N G T H ) \r 0006220 * 0006260 ( I L : S E 0006300 T Q I L : M I N - L E N G T H 0006320 I L : L E N G T H ) ) ) ) ) ) 0006340 \r \r ( I L : D E F U N I L : % 0006360 M A P - F O R - E F F E C T ( 0006400 I L : F U N C T I O N I L : F 0006420 I R S T - S E Q U E N C E & R 0006440 E S T I L : M O R E - S E Q U 0006460 E N C E S ) \r ( L 0006500 E T ( ( I L : S E Q U E N C E 0006520 S ( C O N S I L : F I R S T 0006540 - S E Q U E N C E I L : M O R 0006560 E - S E Q U E N C E S ) ) ) \r 0006600 ( I L : M 0006620 A P - F O R - E F F E C T ) ) ) 0006640 \r ( I L : D E F U N I L : % M 0006660 A P - S I N G L E - F O R - E F 0006700 F E C T ( I L : F U N C T I O 0006720 N S E Q U E N C E ) \r 0006740 ( I L : S E Q - D I S P A 0006760 T C H S E Q U E N C E ( I L 0007000 : M A P C S E Q U E N C E I 0007020 L : F U N C T I O N ) \r 0007040 ( D O T I M 0007060 E S ( I L : I ( I L : V E C 0007100 T O R - L E N G T H S E Q U E 0007120 N C E ) ) \r 0007140 ( F U N C 0007160 A L L I L : F U N C T I O N 0007200 ( A R E F S E Q U E N C E I 0007220 L : I ) ) ) ) ) \r ( D E F M A C 0007240 R O 006 002 I L : M A P - T O - L 0007260 I S T 006 001 N I L ` ( I F ( 0007300 N U L L I L : M O R E - S E Q 0007320 U E N C E S ) \r 0007340 0007360 ( I L : S E 0007400 Q - D I S P A T C H I L : F I 0007420 R S T - S E Q U E N C E ( I L 0007440 : M A P C A R I L : F I R S T 0007460 - S E Q U E N C E \r 0007500 * 0007600 I L : F U N C T I 0007620 O N ) \r 0007640 0007660 ( 006 002 0007700 I L : | f o r | 006 001 I L : I 0007720 006 002 I L : | f r o m | 006 001 0 0007740 006 002 I L : | t o | 006 001 ( I L : 0007760 V E C T O R - L E N G T H \r 0010000 * 0010120 I L : F I R S T - S E Q U E 0010140 N C E ) \r 0010160 * 0010220 006 002 I L : | c o l l e c t | 006 0010240 001 ( F U N C A L L I L : F U 0010260 N C T I O N ( A R E F I L : 0010300 I \r 0010320 * 0010420 I L : F I R S T - 0010440 S E Q U E N C E \r 0010460 * 0010560 ) ) ) 0010600 ) \r 0010620 0010640 ( D O ( ( I L : S E Q 0010660 S I L : M O R E - S E Q U E N 0010700 C E S ( C D R I L : S E Q S 0010720 ) ) \r 0010740 0010760 ( I L : M I 0011000 N - L E N G T H ( L E N G T H 0011020 I L : F I R S T - S E Q U E N 0011040 C E ) ) ) \r 0011060 0011100 ( ( N U 0011120 L L I L : S E Q S ) \r 0011140 * 0011200 ( 006 002 I L : F O R 006 001 I 0011220 L : I N D E X 006 002 I L : F R O 0011240 M 006 001 0 006 002 I L : T O 006 001 0011260 ( 1 - I L : M I N - L E N G T 0011300 H ) \r 0011320 0011340 006 002 I 0011360 L : C O L L E C T 006 001 ( A P P 0011400 L Y I L : F U N C T I O N ( 0011420 I L : E L T - S L I C E I L : 0011440 S E Q U E N C E S \r 0011460 * 0011560 I L : I N D 0011600 E X ) ) ) ) \r 0011620 0011640 ( L E 0011660 T ( ( I L : L E N G T H ( L 0011700 E N G T H ( C A R I L : S E 0011720 Q S ) ) ) ) \r 0011740 * 0012000 ( W H E N ( < I L : L E 0012020 N G T H I L : M I N - L E N G 0012040 T H ) \r 0012060 * 0012120 ( S E T F I L : M I 0012140 N - L E N G T H I L : L E N G 0012160 T H ) ) ) ) ) ) \r \r ( I L : D E 0012200 F U N I L : % M A P - T O - L 0012220 I S T ( I L : F U N C T I O N 0012240 I L : F I R S T - S E Q U E N 0012260 C E & R E S T I L : M O R E 0012300 - S E Q U E N C E S ) \r 0012320 ( L E T ( ( I L : S E Q 0012340 U E N C E S ( C O N S I L : 0012360 F I R S T - S E Q U E N C E I 0012400 L : M O R E - S E Q U E N C E S 0012420 ) ) ) \r 0012440 ( I L : M A P - T O - L I S T ) 0012460 ) ) \r ( I L : D E F U N I L : 0012500 % M A P - S I N G L E - T O - L 0012520 I S T ( I L : F U N C T I O N 0012540 S E Q U E N C E ) \r 0012560 ( I L : S E Q - D I S P A T 0012600 C H S E Q U E N C E ( I L : 0012620 M A P C A R S E Q U E N C E 0012640 I L : F U N C T I O N ) \r 0012660 ( I L : | 0012700 f o r | I L : I I L : | f r 0012720 o m | 0 I L : | t o | ( I 0012740 L : V E C T O R - L E N G T H 0012760 S E Q U E N C E ) \r 0013000 I 0013020 L : | c o l l e c t | \r 0013040 0013060 ( F U N C A L L I L : F U N 0013100 C T I O N ( A R E F I L : I 0013120 S E Q U E N C E ) ) ) ) ) \r ( 0013140 D E F M A C R O 006 002 I L : M A 0013160 P - T O - S I M P L E 006 001 N I 0013200 L ` ( I F ( N U L L ( C D 0013220 R I L : S E Q U E N C E S ) ) 0013240 \r 0013260 0013300 ( L E T * ( ( I L : 0013320 L E N G T H ( L E N G T H I 0013340 L : F I R S T - S E Q U E N C E 0013360 ) ) \r 0013400 0013420 ( I 0013440 L : R E S U L T ( I L : M A K 0013460 E - S E Q U E N C E - O F - T Y 0013500 P E I L : R E S U L T - T Y P 0013520 E \r 0013540 * 0013620 I L : L E N G T H ) ) ) \r 0013640 * 0013700 ( I L : S E Q - D 0013720 I S P A T C H I L : F I R S T 0013740 - S E Q U E N C E \r 0013760 * 0014020 ( 006 002 I L 0014040 : | f o r | 006 001 I L : X 006 002 0014060 I L : | i n | 006 001 ( T H E L 0014100 I S T I L : F I R S T - S E Q 0014120 U E N C E ) \r 0014140 * 0014200 006 002 I L : 0014220 | a s | 006 001 I L : I 006 002 I L 0014240 : | f r o m | 006 001 0 \r 0014260 * 0014340 006 002 I L : | d o | 006 001 ( S E T 0014360 F ( A R E F I L : R E S U L 0014400 T I L : I ) \r 0014420 * 0014500 ( F U N C A 0014520 L L I L : F U N C T I O N I 0014540 L : X ) ) \r 0014560 * 0014620 006 002 I L : | 0014640 f i n a l l y | 006 001 ( R E T U 0014660 R N I L : R E S U L T ) ) \r 0014700 * 0014760 ( D O T I M E S ( I L : I I 0015000 L : L E N G T H I L : R E S U 0015020 L T ) \r 0015040 * 0015100 ( S E T 0015120 F ( A R E F I L : R E S U L 0015140 T I L : I ) \r 0015160 * 0015240 ( F U N C A L L I 0015260 L : F U N C T I O N \r 0015300 * 0015400 ( A R E F ( T H E V E C T O 0015420 R \r 0015440 * 0015540 I L : F I R S T - S E Q U 0015560 E N C E ) \r 0015600 * 0015700 I L : I ) ) ) ) ) ) \r 0015720 * 0015760 ( D O ( ( I L : S E Q S I L 0016000 : M O R E - S E Q U E N C E S 0016020 ( C D R I L : S E Q S ) ) \r 0016040 * 0016100 ( I L : M I N - 0016120 L E N G T H ( L E N G T H I 0016140 L : F I R S T - S E Q U E N C E 0016160 ) ) ) \r 0016200 0016220 ( ( N U 0016240 L L I L : S E Q S ) \r 0016260 * 0016320 ( D O ( ( I L : I N 0016340 D E X 0 ( 1 + I L : I N D 0016360 E X ) ) \r 0016400 * 0016440 ( I L : R E S U L T ( I 0016460 L : M A K E - S E Q U E N C E - 0016500 O F - T Y P E I L : R E S U L 0016520 T - T Y P E \r 0016540 * 0016620 I L : M I N - L 0016640 E N G T H ) ) ) \r 0016660 * 0016720 ( ( = I L : I N D 0016740 E X I L : M I N - L E N G T H 0016760 ) \r 0017000 * 0017040 I L : R E S U L T ) \r 0017060 * 0017120 ( S E T F ( A 0017140 R E F I L : R E S U L T I L 0017160 : I N D E X ) \r 0017200 * 0017240 ( A P P L 0017260 Y I L : F U N C T I O N ( I 0017300 L : E L T - S L I C E I L : S 0017320 E Q U E N C E S \r 0017340 * 0017440 I L : I N D E X ) 0017460 ) ) ) ) \r 0017500 0017520 ( L E 0017540 T ( ( I L : L E N G T H ( L 0017560 E N G T H ( C A R I L : S E 0017600 Q S ) ) ) ) \r 0017620 * 0017660 ( W H E N ( < I L : 0017700 L E N G T H I L : M I N - L E 0017720 N G T H ) \r 0017740 * 0020000 ( S E T F I 0020020 L : M I N - L E N G T H I L : 0020040 L E N G T H ) ) ) ) ) ) \r \r ( I 0020060 L : D E F U N I L : % M A P - 0020100 T O - S I M P L E ( I L : R E 0020120 S U L T - T Y P E I L : F U N 0020140 C T I O N I L : F I R S T - S 0020160 E Q U E N C E & R E S T I L 0020200 : M O R E - S E Q U E N C E S ) 0020220 \r ( L E T ( ( I 0020240 L : S E Q U E N C E S ( C O N 0020260 S I L : F I R S T - S E Q U E 0020300 N C E I L : M O R E - S E Q U 0020320 E N C E S ) ) ) \r 0020340 ( I L : M A P - T O - 0020360 S I M P L E ) ) ) \r ( I L : D E 0020400 F U N I L : % M A P - S I N G 0020420 L E - T O - S I M P L E ( I L 0020440 : O U T P U T - T Y P E - S P E 0020460 C I L : F U N C T I O N S E 0020500 Q U E N C E ) \r ( 0020520 L E T * ( ( I L : L E N G T H 0020540 ( L E N G T H S E Q U E N C 0020560 E ) ) \r 0020600 ( I L : R E S U L T ( I L 0020620 : M A K E - S E Q U E N C E - O 0020640 F - T Y P E I L : O U T P U T 0020660 - T Y P E - S P E C I L : L E 0020700 N G T H ) ) ) \r 0020720 ( I L : S E Q - D I S 0020740 P A T C H S E Q U E N C E ( 0020760 I L : | f o r | I L : X I L 0021000 : | i n | ( T H E L I S T 0021020 S E Q U E N C E ) \r 0021040 * 0021100 I L : | a s | 0021120 I L : I I L : | f r o m | 0 0021140 I L : | d o | \r 0021160 * 0021220 ( S E T F ( A R 0021240 E F I L : R E S U L T I L : 0021260 I ) \r 0021300 * 0021340 ( F U N C A L L 0021360 I L : F U N C T I O N I L : X 0021400 ) ) \r 0021420 * 0021460 I L : | f i n a l l y | \r 0021500 * 0021540 ( R E T 0021560 U R N I L : R E S U L T ) ) \r 0021600 0021620 ( D O T I M E S ( I L 0021640 : I I L : L E N G T H I L : 0021660 R E S U L T ) \r 0021700 0021720 ( S E T F ( A R E F I 0021740 L : R E S U L T I L : I ) \r 0021760 * 0022020 ( F U N C A L L I L : F U N C 0022040 T I O N ( A R E F ( T H E 0022060 V E C T O R S E Q U E N C E ) 0022100 \r 0022120 * 0022160 I L : 0022200 I ) ) ) ) ) ) ) \r ( I L : D E F 0022220 U N M A P ( I L : R E S U L 0022240 T - T Y P E I L : F U N C T I 0022260 O N I L : F I R S T - S E Q U 0022300 E N C E & R E S T I L : M O 0022320 R E - S E Q U E N C E S ) \r 0022340 " F U N C T I O N m 0022360 u s t t a k e a s m a n y 0022400 a r g u m e n t s a s t h 0022420 e r e a r e s e q u e n c e 0022440 s p r o v i d e d . T h e 0022460 r e s u l t i s a s e q 0022500 u e n c e s u c h t h a t 0022520 e l e m e n t i i s t h e 0022540 r e s u l t o f a p p l y 0022560 i n g F U N C T I O N t o 0022600 e l e m e n t i o f e a c 0022620 h o f t h e a r g u m e n 0022640 t s e q u e n c e s . " \r 0022660 ( L E T ( ( I L : S 0022700 E Q U E N C E S ( C O N S I 0022720 L : F I R S T - S E Q U E N C E 0022740 I L : M O R E - S E Q U E N C 0022760 E S ) ) ) \r 0023000 ( C A S E ( I L : T Y P E 0023020 - S P E C I F I E R I L : R E 0023040 S U L T - T Y P E ) \r 0023060 ( N I 0023100 L ( I L : M A P - F O R - E F 0023120 F E C T ) ) \r 0023140 ( L I S T ( 0023160 I L : M A P - T O - L I S T ) ) 0023200 \r 0023220 ( ( S I M P L E - V E C T 0023240 O R S I M P L E - S T R I N G 0023260 V E C T O R S T R I N G A 0023300 R R A Y S I M P L E - A R R A 0023320 Y B I T - V E C T O R \r 0023340 0023360 S I M P L E - B 0023400 I T - V E C T O R ) \r 0023420 ( I 0023440 L : M A P - T O - S I M P L E ) 0023460 ) \r 0023500 ( T ( E R R O R " ~ 0023520 S : i n v a l i d o u t p u 0023540 t t y p e s p e c i f i e r 0023560 . " I L : R E S U L T - T Y P 0023600 E ) ) ) ) ) \r ( I L : D E F O P 0023620 T I M I Z E R 006 002 I L : % M A 0023640 P - F O R - E F F E C T 006 001 ( 0023660 I L : F U N C T I O N S E Q U 0023700 E N C E & R E S T I L : M O 0023720 R E - S E Q U E N C E S ) \r 0023740 ( C O N D \r ( ( N 0023760 U L L I L : M O R E - S E Q U 0024000 E N C E S ) \r ` ( 0024020 I L : % M A P - S I N G L E - F 0024040 O R - E F F E C T , I L : F U 0024060 N C T I O N , S E Q U E N C E 0024100 ) ) \r ( T ' C O M 0024120 P I L E R : P A S S ) ) ) \r \r ( 0024140 I L : D E F O P T I M I Z E R 0024160 006 002 I L : % M A P - T O - L I S 0024200 T 006 001 ( I L : F U N C T I O N 0024220 S E Q U E N C E & R E S T 0024240 I L : M O R E - S E Q U E N C E 0024260 S ) \r ( C O N D \r 0024300 ( ( N U L L I L : M O R E 0024320 - S E Q U E N C E S ) \r 0024340 ` ( I L : % M A P - S I N 0024360 G L E - T O - L I S T , I L : 0024400 F U N C T I O N , S E Q U E N 0024420 C E ) ) \r ( T ' C 0024440 O M P I L E R : P A S S ) ) ) \r 0024460 \r ( I L : D E F O P T I M I Z E 0024500 R 006 002 I L : % M A P - T O - S 0024520 I M P L E 006 001 ( I L : O U T P 0024540 U T - T Y P E - S P E C I L : 0024560 F U N C T I O N S E Q U E N C 0024600 E & R E S T I L : M O R E - 0024620 S E Q U E N C E S ) \r ( C 0024640 O N D \r ( ( N U L L 0024660 I L : M O R E - S E Q U E N C 0024700 E S ) \r ` ( I L : 0024720 % M A P - S I N G L E - T O - S 0024740 I M P L E , I L : O U T P U T 0024760 - T Y P E - S P E C , I L : F 0025000 U N C T I O N , S E Q U E N C 0025020 E ) ) \r ( T ' C O 0025040 M P I L E R : P A S S ) ) ) \r \r 0025060 ( I L : D E F O P T I M I Z E R 0025100 006 002 M A P 006 001 ( I L : R E S 0025120 U L T - T Y P E I L : F U N C 0025140 T I O N & R E S T I L : S E 0025160 Q U E N C E S & C O N T E X T 0025200 I L : C T X & A U X I L : 0025220 R E S - T Y P E ) \r ( C O 0025240 N D \r ( ( I L : Z E 0025260 R O P ( C O M P I L E R : C O 0025300 N T E X T - V A L U E S - U S E 0025320 D I L : C T X ) ) \r 0025340 ` ( I L : % M A P - F O R - 0025360 E F F E C T , I L : F U N C T 0025400 I O N , @ I L : S E Q U E N C 0025420 E S ) ) \r ( ( P R O 0025440 G 1 ( I L : S E T Q I L : R 0025460 E S - T Y P E ( I L : C O N S 0025500 T A N T E X P R E S S I O N P 0025520 I L : R E S U L T - T Y P E ) ) 0025540 \r ( 0025560 I L : S E T Q I L : R E S - T 0025600 Y P E ( C A R I L : R E S - 0025620 T Y P E ) ) ) \r ( 0025640 C A S E I L : R E S - T Y P E 0025660 ( N I L ` ( I L : % M A P - 0025700 F O R - E F F E C T , I L : F 0025720 U N C T I O N , @ I L : S E Q 0025740 U E N C E S ) ) \r 0025760 ( L I S T ` ( I L 0026000 : % M A P - T O - L I S T , I 0026020 L : F U N C T I O N , @ I L : 0026040 S E Q U E N C E S ) ) \r 0026060 ( I L : O T H 0026100 E R W I S E ` ( I L : % M A P 0026120 - T O - S I M P L E , I L : R 0026140 E S - T Y P E , I L : F U N C 0026160 T I O N , @ I L : S E Q U E N 0026200 C E S ) ) ) ) \r ( T 0026220 ' C O M P I L E R : P A S S ) 0026240 ) ) \r \r ( I L : D E F U N I L 0026260 : % S I N G L E - S O M E ( I 0026300 L : P R E D I C A T E S E Q U 0026320 E N C E ) \r ( I L 0026340 : S E Q - D I S P A T C H S E 0026360 Q U E N C E ( D O L I S T ( 0026400 I L : E ( T H E L I S T S 0026420 E Q U E N C E ) \r 0026440 * 0026500 N I L ) \r 0026520 * 0026560 ( L E T ( ( I L : X 0026600 ( F U N C A L L I L : P R E 0026620 D I C A T E I L : E ) ) ) \r 0026640 * 0026700 ( W H E 0026720 N I L : X ( R E T U R N I 0026740 L : X ) ) ) ) \r 0026760 ( D O T I M E S ( 0027000 I L : I ( I L : V E C T O R - 0027020 L E N G T H S E Q U E N C E 0027040 N I L ) \r 0027060 0027100 ( L E T ( ( I L : X ( F 0027120 U N C A L L I L : P R E D I C 0027140 A T E ( A R E F ( T H E V 0027160 E C T O R S E Q U E N C E ) \r 0027200 * 0027300 I L : I ) ) ) ) \r 0027320 * 0027360 ( W H E N I L : X ( R E T U 0027400 R N I L : X ) ) ) ) ) ) ) \r ( 0027420 I L : D E F U N S O M E ( I 0027440 L : P R E D I C A T E I L : F 0027460 I R S T - S E Q U E N C E & R 0027500 E S T I L : M O R E - S E Q U 0027520 E N C E S ) \r " P 0027540 R E D I C A T E i s a p p l 0027560 i e d t o t h e e l e m e 0027600 n t s w i t h i n d e x 0 0027620 o f t h e s e q u e n c e 0027640 s , t h e n p o s s i b l y 0027660 t o t h o s e w i t h i 0027700 n d e x 1 , a n d s o o 0027720 n . S O M E r e t u r n s 0027740 t h e f i r s t n o n - ( 0027760 ) v a l u e e n c o u n t e 0030000 r e d , o r ( ) i f t h 0030020 e e n d o f a s e q u e 0030040 n c e i s r e a c h e d . " 0030060 \r ( I F ( N U L 0030100 L I L : M O R E - S E Q U E N 0030120 C E S ) \r 0030140 ( I L : % S I N G L E - S O M E 0030160 I L : P R E D I C A T E I L 0030200 : F I R S T - S E Q U E N C E ) 0030220 \r ( D O 0030240 ( ( I L : S E Q S I L : M O R 0030260 E - S E Q U E N C E S ( C D R 0030300 I L : S E Q S ) ) \r 0030320 ( I L : L 0030340 E N G T H ( L E N G T H I L 0030360 : F I R S T - S E Q U E N C E ) 0030400 ) \r 0030420 ( I L : S E Q U E N C E S 0030440 ( C O N S I L : F I R S T - S 0030460 E Q U E N C E I L : M O R E - 0030500 S E Q U E N C E S ) ) ) \r 0030520 ( ( N U 0030540 L L I L : S E Q S ) \r 0030560 ( D O 0030600 ( ( I L : I N D E X 0 ( 1 + 0030620 I L : I N D E X ) ) ) \r 0030640 0030660 ( ( = I L : I N D E X I L 0030700 : L E N G T H ) \r 0030720 N I 0030740 L ) \r 0030760 ( L E T ( ( I L 0031000 : R E S U L T ( A P P L Y I 0031020 L : P R E D I C A T E ( I L : 0031040 E L T - S L I C E I L : S E Q 0031060 U E N C E S I L : I N D E X ) 0031100 ) ) ) \r 0031120 ( W H 0031140 E N I L : R E S U L T ( R E 0031160 T U R N I L : R E S U L T ) ) 0031200 ) ) ) \r 0031220 ( L E T ( ( I L : T H I 0031240 S ( L E N G T H ( C A R I 0031260 L : S E Q S ) ) ) ) \r 0031300 ( 0031320 W H E N ( < I L : T H I S 0031340 I L : L E N G T H ) \r 0031360 0031400 ( I L : S E T Q I L 0031420 : L E N G T H I L : T H I S ) 0031440 ) ) ) ) ) \r ( I L : D E F U N 0031460 I L : % S I N G L E - E V E R Y 0031500 ( I L : P R E D I C A T E S 0031520 E Q U E N C E ) \r 0031540 ( I L : S E Q - D I S P A T C H 0031560 S E Q U E N C E ( D O L I S 0031600 T ( I L : E ( T H E L I S 0031620 T S E Q U E N C E ) \r 0031640 * 0031700 T ) \r 0031720 * 0031760 ( U N L E S S ( F 0032000 U N C A L L I L : P R E D I C 0032020 A T E I L : E ) \r 0032040 * 0032100 ( R E T U R N 0032120 N I L ) ) ) \r 0032140 ( D O T I M E S ( 0032160 I L : I ( I L : V E C T O R - 0032200 L E N G T H S E Q U E N C E ) 0032220 \r 0032240 T ) 0032260 \r 0032300 ( D E C L A R E ( 0032320 V E C T O R S E Q U E N C E ) 0032340 ) \r 0032360 ( U N L E S S ( 0032400 F U N C A L L I L : P R E D I 0032420 C A T E ( A R E F S E Q U E 0032440 N C E I L : I ) ) \r 0032460 0032500 ( R E T U R N N 0032520 I L ) ) ) ) ) \r ( I L : D E F U 0032540 N E V E R Y ( I L : P R E D 0032560 I C A T E I L : F I R S T - S 0032600 E Q U E N C E & R E S T I L 0032620 : M O R E - S E Q U E N C E S ) 0032640 \r " P R E D I C A 0032660 T E i s a p p l i e d t o 0032700 t h e e l e m e n t s w i 0032720 t h i n d e x 0 o f t h 0032740 e s e q u e n c e s , t h e 0032760 n p o s s i b l y t o t h 0033000 o s e w i t h i n d e x 1 0033020 , a n d s o o n . E V 0033040 E R Y r e t u r n s ( ) a 0033060 s s o o n a s a n y i n 0033100 v o c a t i o n o f P R E D 0033120 I C A T E r e t u r n s ( ) 0033140 , o r T i f e v e r y 0033160 i n v o c a t i o n i s n o 0033200 n - ( ) . " \r ( I 0033220 F ( N U L L I L : M O R E - 0033240 S E Q U E N C E S ) \r 0033260 ( I L : % S I N G L 0033300 E - E V E R Y I L : P R E D I 0033320 C A T E I L : F I R S T - S E 0033340 Q U E N C E ) \r 0033360 ( D O ( ( I L : S E Q S 0033400 I L : M O R E - S E Q U E N C 0033420 E S ( C D R I L : S E Q S ) 0033440 ) \r 0033460 ( I L : L E N G T H ( L E 0033500 N G T H I L : F I R S T - S E 0033520 Q U E N C E ) ) \r 0033540 ( I L : S E Q 0033560 U E N C E S ( C O N S I L : 0033600 F I R S T - S E Q U E N C E I 0033620 L : M O R E - S E Q U E N C E S 0033640 ) ) ) \r 0033660 ( ( N U L L I L : S E Q 0033700 S ) \r 0033720 ( D O ( ( I L : I N D E 0033740 X 0 ( 1 + I L : I N D E X 0033760 ) ) ) \r 0034000 ( ( = I L : I 0034020 N D E X I L : L E N G T H ) \r 0034040 0034060 T ) \r 0034100 ( L E T 0034120 ( ( I L : R E S U L T ( A P 0034140 P L Y I L : P R E D I C A T E 0034160 ( I L : E L T - S L I C E I 0034200 L : S E Q U E N C E S I L : I 0034220 N D E X ) ) ) ) \r 0034240 0034260 ( U N L E S S I L : R E S 0034300 U L T ( R E T U R N N I L ) 0034320 ) ) ) ) \r 0034340 ( L E T ( ( I L : T H 0034360 I S ( L E N G T H ( C A R 0034400 I L : S E Q S ) ) ) ) \r 0034420 0034440 ( W H E N ( < I L : T H I S 0034460 I L : L E N G T H ) \r 0034500 0034520 ( I L : S E T Q I 0034540 L : L E N G T H I L : T H I S 0034560 ) ) ) ) ) ) \r ( I L : D E F U N 0034600 I L : % S I N G L E - N O T A 0034620 N Y ( I L : P R E D I C A T E 0034640 S E Q U E N C E ) \r 0034660 ( I L : S E Q - D I S P A T 0034700 C H S E Q U E N C E ( D O L 0034720 I S T ( I L : E ( T H E L 0034740 I S T S E Q U E N C E ) \r 0034760 * 0035020 T ) \r 0035040 * 0035100 ( W H E N ( F 0035120 U N C A L L I L : P R E D I C 0035140 A T E I L : E ) \r 0035160 * 0035220 ( R E T U R N 0035240 N I L ) ) ) \r 0035260 ( D O T I M E S ( I 0035300 L : I ( I L : V E C T O R - L 0035320 E N G T H S E Q U E N C E ) \r 0035340 0035360 T ) \r 0035400 0035420 ( D E C L A R E ( V 0035440 E C T O R S E Q U E N C E ) ) 0035460 \r 0035500 ( W H E N ( F U N 0035520 C A L L I L : P R E D I C A T 0035540 E ( A R E F S E Q U E N C E 0035560 I L : I ) ) \r 0035600 0035620 ( R E T U R N N I L ) ) 0035640 ) ) ) \r ( I L : D E F U N N O 0035660 T A N Y ( I L : P R E D I C A 0035700 T E I L : F I R S T - S E Q U 0035720 E N C E & R E S T I L : M O 0035740 R E - S E Q U E N C E S ) \r 0035760 " P R E D I C A T E 0036000 i s a p p l i e d t o t h 0036020 e e l e m e n t s w i t h 0036040 i n d e x 0 o f t h e s 0036060 e q u e n c e s , t h e n p 0036100 o s s i b l y t o t h o s e 0036120 w i t h i n d e x 1 , a 0036140 n d s o o n . N O T A N 0036160 Y r e t u r n s ( ) a s 0036200 s o o n a s a n y i n v o 0036220 c a t i o n o f P R E D I C 0036240 A T E r e t u r n s a n o 0036260 n - ( ) v a l u e , o r T 0036300 i f t h e e n d o f a 0036320 s e q u e n c e i s r e a 0036340 c h e d . " \r ( I 0036360 F ( N U L L I L : M O R E - 0036400 S E Q U E N C E S ) \r 0036420 ( I L : % S I N G L 0036440 E - N O T A N Y I L : P R E D 0036460 I C A T E I L : F I R S T - S 0036500 E Q U E N C E ) \r 0036520 ( D O ( ( I L : S E Q 0036540 S I L : M O R E - S E Q U E N 0036560 C E S ( C D R I L : S E Q S 0036600 ) ) \r 0036620 ( I L : L E N G T H ( L 0036640 E N G T H I L : F I R S T - S 0036660 E Q U E N C E ) ) \r 0036700 ( I L : S E 0036720 Q U E N C E S ( C O N S I L 0036740 : F I R S T - S E Q U E N C E 0036760 I L : M O R E - S E Q U E N C E 0037000 S ) ) ) \r 0037020 ( ( N U L L I L : S E 0037040 Q S ) \r 0037060 ( D O ( ( I L : I N D 0037100 E X 0 ( 1 + I L : I N D E 0037120 X ) ) ) \r 0037140 ( ( = I L : 0037160 I N D E X I L : L E N G T H ) 0037200 \r 0037220 T ) \r 0037240 ( L E 0037260 T ( ( I L : R E S U L T ( A 0037300 P P L Y I L : P R E D I C A T 0037320 E ( I L : E L T - S L I C E 0037340 I L : S E Q U E N C E S I L : 0037360 I N D E X ) ) ) ) \r 0037400 0037420 ( W H E N I L : R E S U 0037440 L T ( R E T U R N N I L ) ) 0037460 ) ) ) \r 0037500 ( L E T ( ( I L : T H I 0037520 S ( L E N G T H ( C A R I 0037540 L : S E Q S ) ) ) ) \r 0037560 ( 0037600 W H E N ( < I L : T H I S 0037620 I L : L E N G T H ) \r 0037640 0037660 ( I L : S E T Q I L 0037700 : L E N G T H I L : T H I S ) 0037720 ) ) ) ) ) \r ( I L : D E F U N 0037740 I L : % S I N G L E - N O T E V 0037760 E R Y ( I L : P R E D I C A T 0040000 E S E Q U E N C E ) \r 0040020 ( I L : S E Q - D I S P A 0040040 T C H S E Q U E N C E ( D O 0040060 L I S T ( I L : E ( T H E 0040100 L I S T S E Q U E N C E ) \r 0040120 * 0040160 N I 0040200 L ) \r 0040220 0040240 ( L E T 0040260 ( ( I L : X ( F U N C A L L 0040300 I L : P R E D I C A T E I L : 0040320 E ) ) ) \r 0040340 * 0040400 ( W H E N I L : X ( R E 0040420 T U R N T ) ) ) ) \r 0040440 ( D O T I M E 0040460 S ( I L : I ( I L : V E C T 0040500 O R - L E N G T H S E Q U E N 0040520 C E ) \r 0040540 0040560 N I L ) \r 0040600 ( D E C L 0040620 A R E ( V E C T O R S E Q U 0040640 E N C E ) ) \r 0040660 ( L E T 0040700 ( ( I L : X ( F U N C A L L 0040720 I L : P R E D I C A T E ( A 0040740 R E F S E Q U E N C E I L : 0040760 I ) ) ) ) \r 0041000 0041020 ( W H E N I L : X ( R E T U 0041040 R N T ) ) ) ) ) ) \r ( I L : D 0041060 E F U N N O T E V E R Y ( I 0041100 L : P R E D I C A T E I L : F 0041120 I R S T - S E Q U E N C E & R 0041140 E S T I L : M O R E - S E Q U 0041160 E N C E S ) \r " P 0041200 R E D I C A T E i s a p p l 0041220 i e d t o t h e e l e m e 0041240 n t s w i t h i n d e x 0 0041260 o f t h e s e q u e n c e 0041300 s , t h e n p o s s i b l y 0041320 t o t h o s e w i t h i 0041340 n d e x 1 , a n d s o o 0041360 n . N O T E V E R Y r e t 0041400 u r n s T a s s o o n a 0041420 s a n y i n v o c a t i o n 0041440 o f P R E D I C A T E r e 0041460 t u r n s ( ) , o r ( ) 0041500 i f e v e r y i n v o c a t 0041520 i o n i s n o n - ( ) . " \r 0041540 ( I F ( N U L L 0041560 I L : M O R E - S E Q U E N C 0041600 E S ) \r ( 0041620 I L : % S I N G L E - N O T E V 0041640 E R Y I L : P R E D I C A T E 0041660 I L : F I R S T - S E Q U E N 0041700 C E ) \r ( 0041720 D O ( ( I L : S E Q S I L : 0041740 M O R E - S E Q U E N C E S ( 0041760 C D R I L : S E Q S ) ) \r 0042000 ( I 0042020 L : L E N G T H ( L E N G T H 0042040 I L : F I R S T - S E Q U E N 0042060 C E ) ) \r 0042100 ( I L : S E Q U E N C 0042120 E S ( C O N S I L : F I R S 0042140 T - S E Q U E N C E I L : M O 0042160 R E - S E Q U E N C E S ) ) ) \r 0042200 ( 0042220 ( N U L L I L : S E Q S ) \r 0042240 ( 0042260 D O ( ( I L : I N D E X 0 0042300 ( 1 + I L : I N D E X ) ) ) \r 0042320 0042340 ( ( = I L : I N D E X 0042360 I L : L E N G T H ) \r 0042400 0042420 N I L ) \r 0042440 ( L E T ( 0042460 ( I L : R E S U L T ( A P P L 0042500 Y I L : P R E D I C A T E ( 0042520 I L : E L T - S L I C E I L : 0042540 S E Q U E N C E S I L : I N D 0042560 E X ) ) ) ) \r 0042600 0042620 ( U N L E S S I L : R E S U L 0042640 T ( R E T U R N T ) ) ) ) ) 0042660 \r 0042700 ( L E T ( ( I L : T H I S ( 0042720 L E N G T H ( C A R I L : S 0042740 E Q S ) ) ) ) \r 0042760 ( W H E 0043000 N ( < I L : T H I S I L : 0043020 L E N G T H ) \r 0043040 0043060 ( I L : S E T Q I L : L E 0043100 N G T H I L : T H I S ) ) ) ) 0043120 ) ) \r ( I L : D E F O P T I M I 0043140 Z E R 006 002 S O M E 006 001 ( I L 0043160 : P R E D I C A T E S E Q U E 0043200 N C E & R E S T I L : M O R 0043220 E - S E Q U E N C E S ) ( C O 0043240 N D \r 0043260 * 0043340 ( ( N U 0043360 L L I L : M O R E - S E Q U E 0043400 N C E S ) \r 0043420 * 0043520 ` ( I L : % S I N G L E - S O M 0043540 E \r 0043560 * 0043640 , I 0043660 L : P R E D I C A T E \r 0043700 * 0044000 , S E Q U E N C 0044020 E ) ) \r 0044040 * 0044120 ( T 0044140 ' C O M P I L E R : P A S S ) ) 0044160 ) \r \r ( I L : D E F O P T I M I 0044200 Z E R 006 002 E V E R Y 006 001 ( I 0044220 L : P R E D I C A T E S E Q U 0044240 E N C E & R E S T I L : M O 0044260 R E - S E Q U E N C E S ) ( C 0044300 O N D \r 0044320 * 0044400 ( ( 0044420 N U L L I L : M O R E - S E Q 0044440 U E N C E S ) \r 0044460 * 0044560 ` ( I L : % S I N G L E - 0044600 E V E R Y \r 0044620 * 0044720 , I L : P R E D I C A T E 0044740 \r 0044760 * 0045040 , S 0045060 E Q U E N C E ) ) \r 0045100 * 0045200 ( T ' C O M P I L E R 0045220 : P A S S ) ) ) \r \r ( I L : D E 0045240 F O P T I M I Z E R 006 002 N O T 0045260 A N Y 006 001 ( I L : P R E D I C 0045300 A T E S E Q U E N C E & R E 0045320 S T I L : M O R E - S E Q U E 0045340 N C E S ) \r ( C O N D \r 0045360 ( ( N U L L I L : M 0045400 O R E - S E Q U E N C E S ) \r 0045420 ` ( I L : % S I N G 0045440 L E - N O T A N Y , I L : P R 0045460 E D I C A T E , S E Q U E N C 0045500 E ) ) \r ( T ' C O 0045520 M P I L E R : P A S S ) ) ) \r \r 0045540 ( I L : D E F O P T I M I Z E R 0045560 006 002 N O T E V E R Y 006 001 ( I 0045600 L : P R E D I C A T E S E Q U 0045620 E N C E & R E S T I L : M O 0045640 R E - S E Q U E N C E S ) \r 0045660 ( C O N D \r ( ( N 0045700 U L L I L : M O R E - S E Q U 0045720 E N C E S ) \r ` ( 0045740 I L : % S I N G L E - N O T E V 0045760 E R Y , I L : P R E D I C A T 0046000 E , S E Q U E N C E ) ) \r 0046020 ( T ' C O M P I L E R 0046040 : P A S S ) ) ) \r \r ( D E F M A 0046060 C R O 006 002 I L : L I S T - R E 0046100 D U C E - F R O M - E N D 006 001 0046120 ( I L : F U N C T I O N S E Q 0046140 U E N C E I L : S T A R T I 0046160 L : E N D I L : I N I T I A L 0046200 - V A L U E \r 0046220 * 0046260 I L : I N I T I A L - P R O V 0046300 I D E D ) \r ` ( L E T ( 0046320 ( S E Q U E N C E ( N T H C D 0046340 R ( - ( L E N G T H , S E 0046360 Q U E N C E ) \r 0046400 0046420 , I L : E N D ) \r 0046440 0046460 ( I L : R 0046500 E V E R S E , S E Q U E N C E 0046520 ) ) ) ) \r ( W 0046540 H E N , I L : I N I T I A L - 0046560 P R O V I D E D ( P U S H , 0046600 I L : I N I T I A L - V A L U E 0046620 S E Q U E N C E ) ) \r 0046640 ( D O * ( ( 006 002 I L 0046660 : C O U N T 006 001 ( - , I L : 0046700 E N D , I L : S T A R T ( I 0046720 F , I L : I N I T I A L - P R 0046740 O V I D E D 0 1 ) ) \r 0046760 0047000 ( 1 - I L : C O U N T ) 0047020 ) \r 0047040 ( S E Q U E N C E S E Q U E 0047060 N C E ( C D R S E Q U E N C 0047100 E ) ) \r 0047120 ( I L : V A L U E ( C A 0047140 R S E Q U E N C E ) \r 0047160 0047200 ( F U N C A L L , I L : F 0047220 U N C T I O N ( C A R S E Q 0047240 U E N C E ) \r 0047260 0047300 I L : V A L U E ) ) ) \r 0047320 ( ( 0047340 = I L : C O U N T 0 ) \r 0047360 I L : 0047400 V A L U E ) ) ) ) \r \r ( D E F M 0047420 A C R O 006 002 I L : L I S T - R 0047440 E D U C E 006 001 ( I L : F U N C 0047460 T I O N S E Q U E N C E I L 0047500 : S T A R T I L : E N D I L 0047520 : I N I T I A L - V A L U E I 0047540 L : I N I T I A L - P R O V I D 0047560 E D ) \r ` ( L E T ( ( S 0047600 E Q U E N C E ( N T H C D R 0047620 , I L : S T A R T , S E Q U E 0047640 N C E ) ) ) \r 0047660 ( W H E N , I L : I N I T I A 0047700 L - P R O V I D E D ( P U S H 0047720 , I L : I N I T I A L - V A L 0047740 U E S E Q U E N C E ) ) \r 0047760 ( D O * ( ( 006 002 0050000 I L : C O U N T 006 001 ( - I L 0050020 : E N D I L : S T A R T ( I 0050040 F , I L : I N I T I A L - P R 0050060 O V I D E D 0 1 ) ) \r 0050100 0050120 ( 1 - I L : C O U N T ) 0050140 ) \r 0050160 ( S E Q U E N C E S E Q U E 0050200 N C E ( C D R S E Q U E N C 0050220 E ) ) \r 0050240 ( I L : V A L U E ( C A 0050260 R S E Q U E N C E ) \r 0050300 0050320 ( F U N C A L L , I L : F 0050340 U N C T I O N I L : V A L U E 0050360 ( C A R S E Q U E N C E ) ) 0050400 ) ) \r 0050420 ( ( = I L : C O U N T 0 ) 0050440 \r 0050460 I L : V A L U E ) ) ) ) \r \r ( D 0050500 E F M A C R O 006 002 I L : M U M 0050520 B L E - R E D U C E - F R O M - 0050540 E N D 006 001 ( I L : F U N C T I 0050560 O N S E Q U E N C E I L : S 0050600 T A R T I L : E N D I L : I 0050620 N I T I A L - V A L U E I L : 0050640 R E F ) \r ` ( D O ( ( I 0050660 L : I N D E X ( 1 - , I L : 0050700 E N D ) \r 0050720 ( 1 - I L : I N D E 0050740 X ) ) \r ( I L 0050760 : V A L U E , I L : I N I T I 0051000 A L - V A L U E ) \r 0051020 ( I L : T E R M I N U S 0051040 ( 1 - , I L : S T A R T ) ) ) 0051060 \r ( ( < = I L 0051100 : I N D E X I L : T E R M I N 0051120 U S ) \r I L : 0051140 V A L U E ) \r ( 0051160 I L : S E T Q I L : V A L U E 0051200 ( F U N C A L L , I L : F U 0051220 N C T I O N ( , I L : R E F 0051240 , S E Q U E N C E I L : I N D 0051260 E X ) \r 0051300 0051320 I L : V A L U E ) ) ) 0051340 ) \r \r ( D E F M A C R O 006 002 I 0051360 L : M U M B L E - R E D U C E 006 0051400 001 ( I L : F U N C T I O N S 0051420 E Q U E N C E I L : S T A R T 0051440 I L : E N D I L : I N I T I 0051460 A L - V A L U E I L : R E F ) 0051500 \r ` ( D O ( ( I L : I N 0051520 D E X , I L : S T A R T ( 1 0051540 + I L : I N D E X ) ) \r 0051560 ( I L : V A L U E 0051600 , I L : I N I T I A L - V A L U 0051620 E ) ) \r ( ( > = 0051640 I L : I N D E X , I L : E N 0051660 D ) \r I L : V 0051700 A L U E ) \r ( I 0051720 L : S E T Q I L : V A L U E 0051740 ( F U N C A L L , I L : F U N 0051760 C T I O N I L : V A L U E ( 0052000 , I L : R E F , S E Q U E N C 0052020 E I L : I N D E X ) ) ) ) ) \r 0052040 \r ( I L : D E F U N R E D U C 0052060 E ( I L : F U N C T I O N S 0052100 E Q U E N C E & K E Y I L : 0052120 F R O M - E N D ( I L : S T A 0052140 R T 0 ) \r 0052160 I L 0052200 : E N D \r 0052220 ( I L 0052240 : I N I T I A L - V A L U E N 0052260 I L I L : I N I T I A L - P R 0052300 O V I D E D ) \r 0052320 0052340 & A U X \r 0052360 ( I L 0052400 : L E N G T H ( L E N G T H 0052420 S E Q U E N C E ) ) ) \r 0052440 ( U N L E S S I L : E N 0052460 D ( I L : S E T Q I L : E N 0052500 D I L : L E N G T H ) ) \r 0052520 ( I L : C H E C K - S 0052540 U B S E Q S E Q U E N C E I 0052560 L : S T A R T I L : E N D I 0052600 L : L E N G T H ) \r 0052620 ( C O N D ( ( = I L : E N 0052640 D I L : S T A R T ) \r 0052660 ( I F I L 0052700 : I N I T I A L - P R O V I D E 0052720 D I L : I N I T I A L - V A L 0052740 U E ( F U N C A L L I L : F 0052760 U N C T I O N ) ) ) \r 0053000 ( ( L I S T P 0053020 S E Q U E N C E ) \r 0053040 ( I F I L : F 0053060 R O M - E N D ( I L : L I S T 0053100 - R E D U C E - F R O M - E N D 0053120 I L : F U N C T I O N S E Q 0053140 U E N C E I L : S T A R T I 0053160 L : E N D \r 0053200 0053220 I L : I 0053240 N I T I A L - V A L U E I L : 0053260 I N I T I A L - P R O V I D E D 0053300 ) \r 0053320 ( I L : L I S T - R E D 0053340 U C E I L : F U N C T I O N 0053360 S E Q U E N C E I L : S T A R 0053400 T I L : E N D I L : I N I T 0053420 I A L - V A L U E \r 0053440 0053460 I L : I N I T I A L - P 0053500 R O V I D E D ) ) ) \r 0053520 ( T ( C O N D 0053540 ( I L : F R O M - E N D ( U 0053560 N L E S S I L : I N I T I A L 0053600 - P R O V I D E D ( S E T Q 0053620 I L : E N D ( 1 - I L : E N 0053640 D ) \r 0053660 * 0053740 I L : I N I T I 0053760 A L - V A L U E \r 0054000 * 0054060 ( A 0054100 R E F S E Q U E N C E I L : 0054120 E N D ) ) ) \r 0054140 0054160 ( I L : M U M B L E - R 0054200 E D U C E - F R O M - E N D I 0054220 L : F U N C T I O N S E Q U E 0054240 N C E I L : S T A R T I L : 0054260 E N D \r 0054300 0054320 I L : I N I T 0054340 I A L - V A L U E A R E F ) ) 0054360 \r 0054400 ( T ( U N L E S 0054420 S I L : I N I T I A L - P R O 0054440 V I D E D ( S E T Q I L : I 0054460 N I T I A L - V A L U E ( A R 0054500 E F S E Q U E N C E I L : S 0054520 T A R T ) \r 0054540 * 0054620 I L : S T A R T \r 0054640 * 0054720 ( 1 + I L : S T A R 0054740 T ) ) ) \r 0054760 ( I 0055000 L : M U M B L E - R E D U C E 0055020 I L : F U N C T I O N S E Q U 0055040 E N C E I L : S T A R T I L 0055060 : E N D I L : I N I T I A L - 0055100 V A L U E A R E F \r 0055120 0055140 ) ) ) ) ) 0055160 ) \r \r ( I L : P U T P R O P S 0055200 006 002 I L : C M L S E Q M A P P E 0055220 R S I L : F I L E T Y P E 006 001 0055240 C O M P I L E - F I L E ) \r ( 0055260 I L : P U T P R O P S I L : C 0055300 M L S E Q M A P P E R S I L : 0055320 C O P Y R I G H T ( " X e r o 0055340 x C o r p o r a t i o n " 1 0055360 9 8 6 ) ) \r ( I L : D E C L A R 0055400 E \ : I L : D O N T C O P Y \r 0055420 ( I L : F I L E M A P ( N 0055440 I L ) ) ) \r I L : S T O P \r 0055456