$ od -c -N 50000 [eris]<LispCore>SOURCES>CL-ERROR!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 " I N
0000040 T E R L I S P " 247 P A C K A G
0000060 E " I N T E R L I S P " ) \r 006
0000100 001 ( F I L E C R E A T E D " 1
0000120 7 - O c t - 8 6 1 7 : 3 0 : 1
0000140 0 " 006 004 { E R I S } < D A N I
0000160 E L S > L I S P > C L - E R R O
0000200 R . ; 1 4 006 001 3 4 9 8 3 \r
0000220 \r c h a n g e s t
0000240 o % : ( F U N C T I O N S
0000260 D E F I N E - C O N D I T I O N
0000300 I G N O R E - E R R O R S W
0000320 I T H - G E N S Y M S C L : C
0000340 H E C K - T Y P E H A N D L E
0000360 R - B I N D \r
0000400
0000420 P R O C E E D - A R G - C
0000440 O L L E C T O R P R O C E E D
0000460 - C A S E R E A L - P R O C E
0000500 E D - C A S E C O N D I T I O
0000520 N - T Y P E C A S E \r
0000540
0000560 W I T H - E R R -
0000600 L O O P - V A R S M A K E - F
0000620 A K E - R E P O R T - F U N C T
0000640 I O N M A K E - R E P O R T -
0000660 F U N C T I O N \r
0000700
0000720 N O R M A L I Z E - C
0000740 O N D I T I O N - C L A U S E S
0000760 P R O C E E D - C A S E - F R
0001000 O M - C L A U S E \r
0001020
0001040 C O L L E C T - C A
0001060 S E - S E L E C T O R S N O -
0001100 P R O C E E D - T E S T C L :
0001120 E T Y P E C A S E C O N D I T
0001140 I O N - C A S E \r
0001160
0001200 R E A L - C O N D I T
0001220 I O N - C A S E ) \r
0001240 ( V
0001260 A R S C L - E R R O R C O M S
0001300 ) \r \r p r e v i o u
0001320 s d a t e % : " 1 6 - O c t
0001340 - 8 6 1 7 : 3 4 : 0 9 " { E
0001360 R I S } < D A N I E L S > L I S
0001400 P > C L - E R R O R . ; 1 3 ) \r
0001420 \r \r ( * " \r C o p y r i g h t
0001440 ( c ) 1 9 8 6 b y X e r
0001460 o x C o r p o r a t i o n .
0001500 A l l r i g h t s r e s e
0001520 r v e d . \r " ) \r \r ( P R E T T
0001540 Y C O M P R I N T C L - E R R
0001560 O R C O M S ) \r \r ( R P A Q Q
0001600 006 002 C L - E R R O R C O M S 006 001
0001620 \r ( ( C O M S
0001640 ( * ; ; \r
0001660 " T e m p o r a r y
0001700 b o o t s t r a p p i n g s
0001720 t u f f . A n y t h i n g i
0001740 n h e r e g e t s c h a n
0001760 g e d o n c e C L s t a r
0002000 t s w o r k i n g . " \r
0002020 ) \r
0002040 ( F
0002060 U N C T I O N S C O N D I T I
0002100 O N - T Y P E C A S E C O N D
0002120 I T I O N - B L O C K C O N D
0002140 I T I O N - R E T U R N ) ) \r
0002160 ( C O M S ( *
0002200 ; ; " I n t e r n a l s t u
0002220 f f . " ) \r
0002240 ( E X P O R T ( V A R
0002260 I A B L E S % % C O N D I T I
0002300 O N - T Y P E S - R E A L ) ) \r
0002320 ( F
0002340 U N C T I O N S D E F A U L T
0002360 - P R O C E E D - R E P O R T )
0002400 \r (
0002420 F U N C T I O N S W I T H - G
0002440 E N S Y M S W I T H - E R R -
0002460 L O O P - V A R S S T R I P -
0002500 K E Y W O R D S M A K E - F A
0002520 K E - R E P O R T - F U N C T I
0002540 O N \r
0002560 M A K E - R E
0002600 P O R T - F U N C T I O N M A
0002620 K E - E N C A P S U L A T I O N
0002640 N O R M A L I Z E - S L O T -
0002660 D E S C R I P T I O N S \r
0002700
0002720 E X T R A C T - C O N D I
0002740 T I O N - B I N D I N G S N O
0002760 R M A L I Z E - C O N D I T I O
0003000 N - C L A U S E S \r
0003020
0003040 M A S S A G E - C A T C H - C O
0003060 N D I T I O N - C L A U S E S
0003100 S P L I T - P R O C E E D - C L
0003120 A U S E S P R O C E E D - C A
0003140 S E - F R O M - C L A U S E \r
0003160
0003200 P R O C E S S - P R O
0003220 C E E D - K E Y W O R D S C H
0003240 E C K - * C A S E - S E L E C T
0003260 O R C O L L E C T - C A S E -
0003300 S E L E C T O R S \r
0003320
0003340 N O - P R O C E E D - T E S T
0003360 % % P R E F I X - S Y M B O L
0003400 % % S U F F I X - S Y M B O L
0003420 P R O C E E D - A R G - C O L L
0003440 E C T O R ) ) \r
0003460 ( C O M S ( * ; ; \r
0003500 " U s e r - v i
0003520 s i b l e f o r m s . T h e
0003540 s e s h o u l d a l l b e
0003560 e x t e r n a l s y m b o l
0003600 s . A n y o t h e r s s h
0003620 o u l d b e i n t e r n a l
0003640 . " \r
0003660 ) \r
0003700 ( F U N C T I O N S D
0003720 E F I N E - C O N D I T I O N
0003740 C L : C H E C K - T Y P E C L
0003760 : E T Y P E C A S E C T Y P E
0004000 C A S E C L : E C A S E C L
0004020 : C C A S E \r
0004040 C L :
0004060 A S S E R T H A N D L E R - B
0004100 I N D C O N D I T I O N - B I
0004120 N D C O N D I T I O N - C A S
0004140 E R E A L - C O N D I T I O N
0004160 - C A S E \r
0004200 I G N O
0004220 R E - E R R O R S P R O C E E
0004240 D - C A S E R E A L - P R O C
0004260 E E D - C A S E D E F I N E -
0004300 P R O C E E D - F U N C T I O N
0004320 C A T C H - A B O R T \r
0004340
0004360 ) ) \r ( P R
0004400 O P F I L E T Y P E C L - E
0004420 R R O R ) \r ( D
0004440 E C L A R E % : D O N T E V A
0004460 L @ L O A D D O E V A L @ C O
0004500 M P I L E D O N T C O P Y C
0004520 O M P I L E R V A R S ( A D D
0004540 V A R S ( N L A M A ) \r
0004560
*
0004660 ( N L A M L
0004700 ) \r
0004720
*
0005000 (
0005020 L A M A ) ) ) ) ) \r \r \r \r 006 004 (
0005040 * ; ; " T e m p o r a r y
0005060 b o o t s t r a p p i n g s t
0005100 u f f . A n y t h i n g i n
0005120 h e r e g e t s c h a n g
0005140 e d o n c e C L s t a r t
0005160 s w o r k i n g . " ) 006 001 \r \r
0005200 ( D E F M A C R O 006 002 C O N D
0005220 I T I O N - T Y P E C A S E 006 001
0005240 ( O B J E C T & R E S T C
0005260 L A U S E S ) \r ( L E T \r
0005300 ( ( V A L ( C L : G E
0005320 N S Y M ) ) ) \r ( C L :
0005340 I F \r % % C O N D I T
0005360 I O N - T Y P E S - R E A L \r
0005400 ` ( C L : T Y P E C A S
0005420 E , O B J E C T , @ C L A U
0005440 S E S ) \r ` ( L E T
0005460 ( ( , V A L , O B J E C T ) )
0005500 \r ( C O N
0005520 D \r
0005540 , @ ( C L : M A P C A R # ' (
0005560 C L : L A M B D A ( C L A U S
0005600 E ) \r
0005620
0005640 ( D E S T R U C T
0005660 U R I N G - B I N D ( S E L E
0005700 C T O R . B O D Y ) \r
0005720
*
0005760 C L A U S E \r
0006000
*
0006040 ( C L : I F
0006060 ( E Q S E L E C T O R T )
0006100 \r
0006120
*
0006160 C L A U S E \r
0006200
*
0006240 ` ( ( C
0006260 O N D I T I O N - T Y P E P ,
0006300 V A L ' , S E L E C T O R ) \r
0006320
*
0006400 , @ B O D Y ) ) ) ) C
0006420 L A U S E S ) ) ) ) ) ) \r \r ( D
0006440 E F M A C R O 006 002 C O N D I T
0006460 I O N - B L O C K 006 001 ( T A G
0006500 & B O D Y F O R M S ) ` (
0006520 C L : C A T C H ' , T A G ,
0006540 @ F O R M S ) ) \r \r ( D E F M A
0006560 C R O 006 002 C O N D I T I O N -
0006600 R E T U R N 006 001 ( T A G & O
0006620 P T I O N A L R E S U L T )
0006640 ` ( C L : T H R O W ' , T A G
0006660 , R E S U L T ) ) \r \r \r \r \r 006
0006700 004 ( * ; ; " I n t e r n a l
0006720 s t u f f . " ) 006 001 \r \r ( *
0006740 F O L L O W I N G D E F I N I
0006760 T I O N S E X P O R T E D ) \r
0007000 \r \r ( C L : D E F C O N S T A N
0007020 T 006 002 % % C O N D I T I O N -
0007040 T Y P E S - R E A L 006 001 N I L
0007060 ) \r \r \r \r ( * E N D E X P O
0007100 R T E D D E F I N I T I O N S
0007120 ) \r \r ( D E F M A C R O 006 002 D
0007140 E F A U L T - P R O C E E D - R
0007160 E P O R T 006 001 ( P R O C E E D
0007200 - T Y P E ) ` ( C L : G E T
0007220 , P R O C E E D - T Y P E ' %
0007240 % D E F A U L T - P R O C E E D
0007260 - R E P O R T \r
0007300
*
0007360 ' D E F A U L T - P R O C E E D
0007400 - R E P O R T E R ) ) \r \r ( D E
0007420 F M A C R O 006 002 W I T H - G E
0007440 N S Y M S 006 001 ( V A R S P R
0007460 E F I X & B O D Y B O D Y )
0007500 \r ` ( L E T , ( M A P C
0007520 A R V A R S ( F U N C T I O
0007540 N ( C L : L A M B D A ( V A
0007560 R ) \r
0007600
0007620 ` ( , V A
0007640 R ( G E N S Y M , P R E F I
0007660 X ) ) ) ) ) , @ B O D Y ) ) \r
0007700 \r ( D E F M A C R O 006 002 W I T
0007720 H - E R R - L O O P - V A R S 006
0007740 001 ( P R E F I X & B O D Y
0007760 B O D Y ) ` ( W I T H - G E N
0010000 S Y M S ( V A L B L O C K -
0010020 N A M E A G A I N ) \r
0010040
*
0010120 , P R E F I X \r
0010140
*
0010220 , @ B O D Y ) ) \r \r
0010240 ( D E F U N 006 002 S T R I P - K
0010260 E Y W O R D S 006 001 ( A R G S )
0010300 ( C L : V A L U E S ( 006 002 F
0010320 O R 006 001 006 002 O L D 006 001 A R G
0010340 S 006 002 O N 006 001 A R G S 006 002
0010360 B Y 006 001 C D D R \r
0010400
*
0010440 006 002 W H I L E 006 001 (
0010460 C L : K E Y W O R D P ( C L :
0010500 F I R S T A R G S ) ) \r
0010520
*
0010560 006 002 C O L L E C
0010600 T 006 001 ( L I S T ( C L : F I
0010620 R S T A R G S ) \r
0010640
*
0010720 ( C L : S E C O N D A R
0010740 G S ) ) ) \r
0010760
0011000 A R G S ) )
0011020 \r \r ( D E F U N 006 002 M A K E -
0011040 F A K E - R E P O R T - F U N C
0011060 T I O N 006 001 ( D A T U M B O
0011100 U N D - V A R & O P T I O N A
0011120 L E N C A P S U L A T I O N )
0011140 \r ( C L : E T Y P E C A S
0011160 E D A T U M ( C L : S T R I
0011200 N G ` ( L A M B D A ( D A T
0011220 U M S T R E A M ) \r
0011240
*
0011300 ( 006 002 D E C L A R E 006 001 ( I G
0011320 N O R E D A T U M ) ) \r
0011340
*
0011400 ( C L : W R I T E - S T R I
0011420 N G , D A T U M S T R E A M
0011440 ) ) ) \r ( L
0011460 I S T ` ( L A M B D A ( , B
0011500 O U N D - V A R * S T A N D A
0011520 R D - O U T P U T * ) \r
0011540 ,
0011560 ( C L : I F ( N U L L E N C
0011600 A P S U L A T I O N ) \r
0011620
0011640 D A T U M \r
0011660
0011700 ` ( L E T , E
0011720 N C A P S U L A T I O N , D A
0011740 T U M ) ) ) ) ) ) \r \r ( D E F U
0011760 N 006 002 M A K E - R E P O R T -
0012000 F U N C T I O N 006 001 ( D A T U
0012020 M B O U N D - V A R & O P T
0012040 I O N A L T Y P E - N A M E )
0012060 \r ( C L : E T Y P E C A S
0012100 E D A T U M ( C L : S T R I
0012120 N G ` ( L A M B D A ( D A T
0012140 U M S T R E A M ) \r
0012160
*
0012220 ( 006 002 D E C L A R E 006 001 ( I G
0012240 N O R E D A T U M ) ) \r
0012260
*
0012320 ( C L : W R I T E - S T R I
0012340 N G , D A T U M S T R E A M
0012360 ) ) ) \r ( L
0012400 I S T ` ( L A M B D A ( , B
0012420 O U N D - V A R * S T A N D A
0012440 R D - O U T P U T * ) \r
0012460 ,
0012500 ( C L : I F T Y P E - N A M E
0012520 ` ( 006 002 W I T H 006 001 , T Y P
0012540 E - N A M E , B O U N D - V A
0012560 R , D A T U M ) D A T U M )
0012600 ) ) ) ) \r \r ( D E F U N 006 002 M
0012620 A K E - E N C A P S U L A T I O
0012640 N 006 001 ( C O N D I T I O N - T
0012660 Y P E S L O T - N A M E S ) \r
0012700 ( M A P C A R ( C L : R
0012720 E M O V E ' - - D U M M Y - S
0012740 L O T - - S L O T - N A M E S
0012760 ) \r # ' ( L
0013000 A M B D A ( S L O T ) \r
0013020 ` ( , S L
0013040 O T ( , ( % % S U F F I X - S
0013060 Y M B O L C O N D I T I O N -
0013100 T Y P E ( C L : C O N C A T E
0013120 N A T E ' C L : S T R I N G
0013140 " - " ( \r
0013160
*
0013260 C L :
0013300 S Y M B O L - N A M E \r
0013320
*
0013440 S L O T ) ) ) \r
0013460
0013500 C O N D I T I O N ) ) ) )
0013520 ) \r \r ( D E F U N 006 002 N O R M
0013540 A L I Z E - S L O T - D E S C R
0013560 I P T I O N S 006 001 ( S L O T S
0013600 ) \r ( M A P C A R S L O
0013620 T S ( F U N C T I O N ( C L
0013640 : L A M B D A ( S L O T ) \r
0013660
*
0013720 ( 006 002 i f 006 001 ( L I S T P
0013740 S L O T ) \r
0013760
0014000 006 002 t h
0014020 e n 006 001 ( 006 002 i f 006 001 ( E Q
0014040 U A L ( L E N G T H S L O T
0014060 ) \r
0014100
*
0014140 1 ) \r
0014160
*
0014220 006 002 t h e n
0014240 006 001 ( A P P E N D S L O T
0014260 ' ( N I L : R E A D O N L Y
0014300 T ) ) \r
0014320
*
0014360 006 002 e l s e 006 001 ` ( , ( C A
0014400 R S L O T ) , ( C A D R S
0014420 L O T ) : R E A D - O N L Y
0014440 T \r
0014460
*
0014520 , @ ( C
0014540 D D R S L O T ) ) ) \r
0014560
*
0014620 006 002 e l s e 006 001 ` ( , S L O T
0014640 N I L : R E A D - O N L Y
0014660 T ) ) ) ) ) ) \r \r ( D E F U N
0014700 006 002 E X T R A C T - C O N D I T
0014720 I O N - B I N D I N G S 006 001 (
0014740 C L A U S E S ) ( M A P C A R
0014760 C L A U S E S \r
0015000
*
0015040 ( F U N
0015060 C T I O N ( C L : L A M B D A
0015100 \r
0015120
*
0015160 (
0015200 C L A U S E ) \r
0015220
*
0015300 ` ( C O N S ' , (
0015320 C L : F I R S T C L A U S E )
0015340 \r
0015360
*
0015440 , ( C L : S E C O N
0015460 D C L A U S E ) ) ) ) ) ) \r \r
0015500 ( D E F U N 006 002 N O R M A L I
0015520 Z E - C O N D I T I O N - C L A
0015540 U S E S 006 001 ( C L A U S E S )
0015560 \r ( M A P C O N C C L A
0015600 U S E S ( F U N C T I O N (
0015620 C L : L A M B D A \r
0015640
0015660 ( C L A U S E
0015700 ) \r
0015720
0015740 ( L E T ( ( C O N D I T I O
0015760 N S ( C L : F I R S T C L A
0016000 U S E ) ) ) \r
0016020
0016040 ( C L : T
0016060 Y P E C A S E \r
0016100
0016120 C O N
0016140 D I T I O N S \r
0016160
0016200 ( L I
0016220 S T ( C L : I F ( E Q ( C
0016240 L : F I R S T C O N D I T I O
0016260 N S ) \r
0016300
*
0016340 ' Q U O T E
0016360 ) \r
0016400
*
0016440 ( C L : E R R O R \r
0016460
*
0016540 " B a d c o n
0016560 d i t i o n s p e c ~ s .
0016600 S h o u l d b e u n q u o t
0016620 e d . " \r
0016640
*
0016700 C
0016720 O N D I T I O N S ) \r
0016740
*
0017000 ( M A
0017020 P C A R C O N D I T I O N S \r
0017040
*
0017120 ( F U N C T I
0017140 O N ( C L : L A M B D A \r
0017160
*
0017260 ( C ) \r
0017300
*
0017360 ( C L : I F
0017400 ( C L : S Y M B O L P C ) \r
0017420
*
0017520 ( C O N S
0017540 C ( C D R C L A U S E ) )
0017560 \r
0017600
*
0017660 ( C L :
0017700 E R R O R \r
0017720
*
0017760 " B a d c o n d i t i o n s
0020000 p e c ~ s . S h o u l d b
0020020 e l i s t o f u n q u o t
0020040 e d s y m b o l s . " \r
0020060
*
0020200 C O N D I T I O N S ) ) ) ) ) )
0020220 ) \r
0020240
0020260 ( C L : S Y M B O
0020300 L ( L I S T C L A U S E ) )
0020320 \r
0020340
0020360 ( T ( C L : E R R
0020400 O R \r
0020420
0020440 " B a d
0020460 c o n d i t i o n s p e c
0020500 ~ s . S h o u l d b e s y
0020520 m b o l o r l i s t o f
0020540 s y m b o l s . " \r
0020560
*
0020620 C O N D I T
0020640 I O N S ) ) ) ) ) ) ) ) \r \r ( D
0020660 E F U N 006 002 M A S S A G E - C
0020700 A T C H - C O N D I T I O N - C
0020720 L A U S E S 006 001 ( C L A U S E
0020740 S I N I T - V A L U E ) \r
0020760 ( M A P C A R C L A U S E S
0021000 ( F U N C T I O N ( C L : L
0021020 A M B D A \r
0021040
0021060 ( C L A U S E ) \r
0021100
0021120 ( D E S T
0021140 R U C T U R I N G - B I N D \r
0021160
0021200 ( S
0021220 E L E C T O R B V L . F O
0021240 R M S ) \r
0021260
0021300 C L A U S E \r
0021320
0021340 ( C L : I F
0021360 ( N U L L B V L ) \r
0021400
*
0021440 ( C O N S S E L E C T O R
0021460 F O R M S ) \r
0021500
0021520 ( L
0021540 I S T S E L E C T O R ` ( L
0021560 E T ( , ( L I S T ( C A R
0021600 B V L ) \r
0021620
*
0021700 I N I T - V A L
0021720 U E ) , @ ( C D R B V L ) )
0021740 \r
0021760
*
0022020 , @ F O
0022040 R M S ) ) ) ) ) ) ) ) \r \r ( D E
0022060 F U N 006 002 S P L I T - P R O C
0022100 E E D - C L A U S E S 006 001 ( C
0022120 L A U S E S T A G ) \r (
0022140 L E T \r ( C A S E S B
0022160 O D I E S ) \r ( 006 002 f o
0022200 r 006 001 C L A U S E 006 002 i n 006
0022220 001 C L A U S E S 006 002 a s 006 001
0022240 S E L E C T O R 006 002 f r o m
0022260 006 001 0 \r 006 002 d o
0022300 006 001 ( D E S T R U C T U R I N
0022320 G - B I N D \r
0022340 ( N A M E V A R S ) \r
0022360 C L A U S E \r
0022400 ( C L : M
0022420 U L T I P L E - V A L U E - B I
0022440 N D \r (
0022460 T E S T R E P O R T T A I L
0022500 ) \r ( P
0022520 R O C E S S - P R O C E E D - K
0022540 E Y W O R D S N A M E ( C D
0022560 D R C L A U S E ) ) \r
0022600 ( 006 002 i f 006 001
0022620 ( N U L L N A M E ) \r
0022640 006 002 t h
0022660 e n 006 001 ( C L : U N L E S S
0022700 T E S T ( C L : S E T F T E
0022720 S T ' T R U E ) ) \r
0022740
0022760 ( C L : U N L E S S R E P O R
0023000 T ( C L : E R R O R \r
0023020
*
0023060 " U n n a
0023100 m e d p r o c e e d c a s e
0023120 s m u s t h a v e a r e
0023140 p o r t m e t h o d : ~ S "
0023160 \r
0023200
*
0023240 C L A U S E ) ) \r
0023260 006 002 e l s e 006 001
0023300 ( C L : U N L E S S T E S T
0023320 ( 006 002 i f 006 001 ( N O T ( C L
0023340 : G E T N A M E ' % % D E F
0023360 A U L T - P R O C E E D - T E S
0023400 T ) ) \r
0023420
0023440 006 002 t h e
0023460 n 006 001 ( C L : W A R N \r
0023500
*
0023540 " N o t e s
0023560 t s p e c i f i e d f o r
0023600 p r o c e e d t y p e ~ A :
0023620 m a y b e u n d e f i n e
0023640 d . " \r
0023660
*
0023720 N A M E ) ) ) \r
0023740
0023760 ( C L : U N L E S S R E
0024000 P O R T ( C L : S E T F R E
0024020 P O R T ` ( C L : L A M B D A
0024040 ( P C S T R E A M ) \r
0024060
*
0024140 ( C L : F U
0024160 N C A L L ( D E F A U L T - P
0024200 R O C E E D - R E P O R T \r
0024220
*
0024320 ' , N A M E ) \r
0024340
*
0024440 P C S T R E A M ) ) )
0024460 ) ) \r (
0024500 C L : P U S H ` ( M A K E - P
0024520 R O C E E D - C A S E : N A M
0024540 E ' , N A M E : T A G , T
0024560 A G : S E L E C T O R , S E
0024600 L E C T O R : T E S T \r
0024620
0024640 , ( A N D
0024660 T E S T ` # ' , T E S T ) :
0024700 R E P O R T # ' , R E P O R T
0024720 ) C A S E S ) \r
0024740 ( C L : P U S H ` (
0024760 , S E L E C T O R ( F U N C T
0025000 I O N ( C L : L A M B D A ,
0025020 V A R S , @ T A I L ) ) ) B
0025040 O D I E S ) ) ) ) \r ( C
0025060 L : V A L U E S ( R E V E R S
0025100 E C A S E S ) \r
0025120 ( R E V E R S E B O D
0025140 I E S ) ) ) ) \r \r ( D E F U N
0025160 006 002 P R O C E E D - C A S E - F
0025200 R O M - C L A U S E 006 001 ( C L
0025220 A U S E T A G D U M M Y ) \r
0025240 ( D E S T R U C T U R I N
0025260 G - B I N D \r ( N A M E
0025300 V A R S . T A I L ) \r
0025320 C L A U S E \r ( C L
0025340 : M U L T I P L E - V A L U E -
0025360 B I N D \r ( T E S T
0025400 R E P O R T B O D Y ) \r
0025420 ( P R O C E S S - P R O C E
0025440 E D - K E Y W O R D S N A M E
0025460 T A I L ) \r ( 006 002 i
0025500 f 006 001 ( N U L L N A M E ) \r
0025520 006 002 t h e n 006
0025540 001 ( C L : U N L E S S T E S
0025560 T ( C L : S E T F T E S T
0025600 ' T R U E ) ) \r
0025620 ( C L : U N L E S S
0025640 R E P O R T ( C L : E R R O
0025660 R " U n n a m e d p r o c e
0025700 e d c a s e s m u s t h a
0025720 v e a r e p o r t m e t h
0025740 o d : ~ S " \r
0025760
*
0026020 C L A U S E ) ) \r
0026040 006 002 e l s e 006 001 ( C L : U N L
0026060 E S S T E S T ( 006 002 i f 006 001
0026100 ( N O T ( C L : G E T N A
0026120 M E ' % % D E F A U L T - P R
0026140 O C E E D - T E S T ) ) \r
0026160
0026200 006 002 t
0026220 h e n 006 001 ( C L : W A R N \r
0026240
*
0026300 " N o t
0026320 e s t s p e c i f i e d f o
0026340 r p r o c e e d t y p e ~
0026360 A : m a y b e u n d e f i
0026400 n e d . " \r
0026420
*
0026460 N A M E ) ) ) \r
0026500 ( C L : U N L E S
0026520 S R E P O R T ( C L : S E T
0026540 F R E P O R T ` ( C L : L A
0026560 M B D A ( P C S T R E A M )
0026600 \r
0026620
*
0026660 ( C L : F U N C A
0026700 L L ( D E F A U L T - P R O C
0026720 E E D - R E P O R T \r
0026740
*
0027020 ' ,
0027040 N A M E ) \r
0027060
*
0027140 P C S T R E A M ) ) ) )
0027160 ) \r ` ( M A K E - R E
0027200 A L - P R O C E E D - C A S E
0027220 : N A M E ' , N A M E : T A
0027240 G , T A G : C O N T I N U A
0027260 T I O N \r
0027300 # ' ( C L : L A M B D A (
0027320 & O P T I O N A L , @ ( O R
0027340 V A R S ( L I S T D U M M Y
0027360 ) ) ) \r
0027400 , @ B O D Y
0027420 ) : T E S T , ( A N D T E
0027440 S T ` # ' , T E S T ) : R E
0027460 P O R T # ' , R E P O R T ) )
0027500 ) ) \r \r ( D E F U N 006 002 P R O
0027520 C E S S - P R O C E E D - K E Y
0027540 W O R D S 006 001 ( N A M E A R
0027560 G ) \r ( L E T ( T E S T
0027600 R E P O R T ) \r
0027620 ( C L : M U L T I P L E - V A
0027640 L U E - B I N D \r
0027660 ( K E Y S T A I L ) \r
0027700 ( S T R I P - K E
0027720 Y W O R D S A R G ) \r
0027740 ( 006 002 f o r 006 001 P A
0027760 I R 006 002 i n 006 001 K E Y S \r
0030000 006 002 d o 006
0030020 001 ( D E S T R U C T U R I N G
0030040 - B I N D ( K E Y V A L U E
0030060 ) \r
0030100 P A I R \r
0030120
0030140 ( C A S E K E Y ( : T
0030160 E S T ( C L : I F T E S T
0030200 ( C L : E R R O R \r
0030220
*
0030260 " D u p
0030300 l i c a t e t e s t f o r m
0030320 s p e c i f i e d f o r p
0030340 r o c e e d t y p e ~ S . "
0030360 \r
0030400
*
0030440 N A M E
0030460 ) ) \r
0030500
0030520 ( C L : S E
0030540 T F T E S T V A L U E ) ) \r
0030560
0030600 ( : C O
0030620 N D I T I O N ( C L : I F T
0030640 E S T ( C L : E R R O R \r
0030660
*
0030740 " D u p l i c a t e t e s t
0030760 f o r m s p e c i f i e d f
0031000 o r p r o c e e d t y p e
0031020 ~ S . " \r
0031040
*
0031120 N A M E ) ) \r
0031140
0031160 ( C L : S
0031200 E T F T E S T ` ( C L : L A
0031220 M B D A ( C ) \r
0031240
*
0031320 ( C O N D I T I O N - T Y P
0031340 E P C ' , V A L U E ) ) ) )
0031360 \r
0031400 ( : R
0031420 E P O R T - F U N C T I O N (
0031440 C L : I F R E P O R T ( C L
0031460 : E R R O R \r
0031500
*
0031540 " D u p l i c a t
0031560 e r e p o r t f o r m s p
0031600 e c i f i e d f o r p r o c
0031620 e e d t y p e ~ S . " \r
0031640
*
0031740 N A M E ) ) \r
0031760
0032000 ( C L :
0032020 S E T F R E P O R T V A L U
0032040 E ) ) \r
0032060
0032100 ( : R E P O R T ( C L : I F
0032120 R E P O R T ( C L : E R R O R
0032140 \r
0032160
*
0032220 " D u p l i c a t e r e p o
0032240 r t f o r m s p e c i f i e
0032260 d f o r p r o c e e d t y
0032300 p e ~ S . " \r
0032320
*
0032400 N A M E ) ) \r
0032420
0032440 ( C L
0032460 : S E T F R E P O R T ( M A
0032500 K E - R E P O R T - F U N C T I
0032520 O N V A L U E ' P R O C E E
0032540 D - C A S E ) ) ) \r
0032560
0032600 ( O T H E R W I S E
0032620 ( C L : C E R R O R " I g n
0032640 o r e k e y / v a l u e p a
0032660 i r " \r
0032700
*
0032740 " I l l e g a l k e y w
0032760 o r d ~ S i n p r o c e e
0033000 d c a s e ~ S . " K E Y
0033020 N A M E ) ) ) ) ) \r
0033040 ( C L : V A L U E S T E
0033060 S T R E P O R T T A I L ) )
0033100 ) ) \r \r ( D E F U N 006 002 C H E
0033120 C K - * C A S E - S E L E C T O
0033140 R 006 001 ( S E L E C T O R N A
0033160 M E ) ( C L : I F ( O R (
0033200 E Q S E L E C T O R ' T ) \r
0033220
*
0033300 ( E Q S E L E C
0033320 T O R ' O T H E R W I S E ) )
0033340 \r
0033360
*
0033420 ( C L : E R R O R " ~
0033440 A n o t a l l o w e d i n
0033460 t h e ~ A f o r m . " \r
0033500
*
0033560 S E L E C T
0033600 O R N A M E ) \r
0033620
*
0033660 S E L E
0033700 C T O R ) ) \r \r ( D E F U N 006
0033720 002 C O L L E C T - C A S E - S E
0033740 L E C T O R S 006 001 ( C L A U S
0033760 E S N A M E ) \r ( M A P
0034000 C O N C C L A U S E S ( F U
0034020 N C T I O N ( C L : L A M B D
0034040 A ( C L A U S E ) \r
0034060
*
0034120 ( 006 002 i f 006 001 ( A N D ( C L
0034140 : C O N S P ( C A R C L A U
0034160 S E ) ) \r
0034200
*
0034240 ( F M E M B N A M E '
0034260 ( C L : E C A S E C L : C C A
0034300 S E ) ) ) \r
0034320
0034340 006
0034360 002 t h e n 006 001 ( C L : C O P Y
0034400 - L I S T ( C A R C L A U S
0034420 E ) ) \r
0034440
0034460 006 002 e l s
0034500 e 006 001 ( L I S T ( C H E C K
0034520 - * C A S E - S E L E C T O R
0034540 ( C A R C L A U S E ) \r
0034560
*
0034640 N A M E ) ) ) ) ) )
0034660 ) \r \r ( D E F U N 006 002 N O - P
0034700 R O C E E D - T E S T 006 001 ( N
0034720 A M E & A U X O N C E ) \r
0034740 ( P R O C E E D - C A S E
0034760 ( H A N D L E R - B I N D ( (
0035000 N O - P R O C E E D - T E S T
0035020 ( F U N C T I O N ( C L : L A
0035040 M B D A \r
0035060
*
0035140 ( C ) \r
0035160
*
0035240 ( C L : W H E N ( E Q ( N
0035260 O - P R O C E E D - T E S T - N
0035300 A M E C ) \r
0035320
*
0035420 N A M E ) \r
0035440
*
0035520 ( C L : I F
0035540 O N C E ( C L : T H R O W '
0035560 \r
0035600
*
0035700 S K I P - P R O C E E
0035720 D - C A S E \r
0035740
*
0036040 N I
0036060 L ) \r
0036100
*
0036160 ( C L
0036200 : S E T F O N C E T ) ) ) )
0036220 ) ) ) \r
0036240 ( C L :
0036260 E R R O R ' N O - P R O C E E
0036300 D - T E S T : N A M E N A M
0036320 E ) ) \r ( N
0036340 I L N I L : R E P O R T "
0036360 U s e F A L S E f o r t h
0036400 e t e s t " : C O N D I T I
0036420 O N N O - P R O C E E D - T E
0036440 S T ( F U N C T I O N F A L
0036460 S E ) ) \r (
0036500 P R O C E E D N I L : R E P
0036520 O R T " M a k e T R U E t
0036540 h e d e f a u l t t e s t "
0036560 : C O N D I T I O N N O - P
0036600 R O C E E D - T E S T \r
0036620 ( C L
0036640 : S E T F ( D E F A U L T - P
0036660 R O C E E D - T E S T N A M E
0036700 ) \r
0036720 # ' T R U E
0036740 ) ) ) ) \r \r ( D E F U N 006 002 %
0036760 % P R E F I X - S Y M B O L 006 001
0037000 ( P R E F I X C L : S Y M B
0037020 O L ) ( C L : I N T E R N (
0037040 C L : C O N C A T E N A T E '
0037060 C L : S T R I N G P R E F I X
0037100 ( \r
0037120
*
0037220 C L : S Y M
0037240 B O L - N A M E \r
0037260
*
0037400 C L : S Y M B O L ) ) \r
0037420
*
0037460 ( C
0037500 L : S Y M B O L - P A C K A G E
0037520 C L : S Y M B O L ) ) ) \r \r (
0037540 D E F U N 006 002 % % S U F F I X
0037560 - S Y M B O L 006 001 ( C L : S Y
0037600 M B O L S U F F I X ) ( C L
0037620 : I N T E R N ( C L : C O N C
0037640 A T E N A T E ' C L : S T R I
0037660 N G ( C L : S Y M B O L - N A
0037700 M E \r
0037720
*
0040020 C L : S Y M B O L ) \r
0040040
*
0040120 S U F F I
0040140 X ) \r
0040160
*
0040220 ( C L : S Y M B O L - P
0040240 A C K A G E C L : S Y M B O L
0040260 ) ) ) \r \r ( D E F M A C R O 006
0040300 002 P R O C E E D - A R G - C O L
0040320 L E C T O R 006 001 ( N A M E )
0040340 " F u n c t i o n t h a t c
0040360 o l l e c t s u s e r - s p e
0040400 c i f i e d o p t i o n a l
0040420 a r g s ( e x c l u d i n g
0040440 t h e c o n d i t i o n ) f
0040460 o r a n a m e d p r o c e
0040500 e d c a s e . " \r ` ( C
0040520 L : G E T , N A M E ' % % P
0040540 R O C E E D - A R G - C O L L E
0040560 C T O R ) ) \r \r \r \r \r 006 004 ( *
0040600 ; ; \r " U s e r - v i s i b l
0040620 e f o r m s . T h e s e s
0040640 h o u l d a l l b e e x t
0040660 e r n a l s y m b o l s . A
0040700 n y o t h e r s s h o u l d
0040720 b e i n t e r n a l . " ) 006
0040740 001 \r \r ( D E F D E F I N E R 006
0040760 002 D E F I N E - C O N D I T I O
0041000 N 006 001 \r S T R U C T U R E
0041020 S \r ( N A M E P A R E N
0041040 T - T Y P E & R E S T A R G
0041060 S ) \r " D e f i n e s a
0041100 n e w c o n d i t i o n t
0041120 y p e " \r ( C L : F L E T
0041140 \r ( ( E X T R A C T - S
0041160 L O T - N A M E ( X ) \r
0041200 ( S L O T - N
0041220 A M E X ) ) ) \r ( L E
0041240 T \r ( ( C L A S S - O
0041260 P T I O N S ` ( , @ ( C L : I
0041300 F % % C O N D I T I O N - T Y
0041320 P E S - R E A L ' ( ( : P R I
0041340 N T - F U N C T I O N % % P R
0041360 I N T - C O N D I T I O N ) ) \r
0041400
*
0041440 ' ( ( : T Y P E L I S T ) \r
0041460
*
0041520 : N A M E D ) ) ( : C O N S
0041540 T R U C T O R , ( % % P R E F
0041560 I X - S Y M B O L " % % M A K
0041600 E - " N A M E ) ) \r
0041620
0041640 ( : C O P I E R
0041660 N I L ) \r
0041700
0041720 ( : P R E D I C A T E N
0041740 I L ) ) ) \r R E P O
0041760 R T E R H A N D L E R E N C
0042000 A P S U L A T I O N ) \r
0042020 ( C L : M U L T I P L E - V A
0042040 L U E - B I N D \r (
0042060 K E Y S S L O T - D E S C R I
0042100 P T I O N S ) \r ( S
0042120 T R I P - K E Y W O R D S A R
0042140 G S ) \r ( C L : S E
0042160 T F S L O T - D E S C R I P T
0042200 I O N S ( N O R M A L I Z E -
0042220 S L O T - D E S C R I P T I O N
0042240 S S L O T - D E S C R I P T I
0042260 O N S ) ) \r ( A N D
0042300 ( N E Q P A R E N T - T Y P
0042320 E N A M E ) \r
0042340 ( L E T * ( ( A L L - S
0042360 U P E R - S L O T S ( S L O T
0042400 - L I S T P A R E N T - T Y P
0042420 E ) ) \r
0042440 ( R E D E F I N E D
0042460 - S L O T S ( 006 002 f o r 006 001
0042500 S L O T 006 002 i n 006 001 S L O T
0042520 - D E S C R I P T I O N S 006 002
0042540 w h e n 006 001 ( C L : M E M B E
0042560 R ( C A R S L O T ) \r
0042600
*
0042700 A L L - S
0042720 U P E R - S L O T S : K E Y \r
0042740
*
0043040 # '
0043060 E X T R A C T - S L O T - N A M
0043100 E ) \r
0043120
0043140 006 002 c o l l e
0043160 c t 006 001 S L O T ) ) ) \r
0043200 ( C
0043220 L : P U S H ( L I S T * : I
0043240 N C L U D E P A R E N T - T Y
0043260 P E R E D E F I N E D - S L O
0043300 T S ) \r
0043320 C L A S
0043340 S - O P T I O N S ) \r
0043360 ( C L :
0043400 S E T F S L O T - D E S C R I
0043420 P T I O N S ( 006 002 f o r 006 001
0043440 S L O T 006 002 i n 006 001 S L O T
0043460 - D E S C R I P T I O N S \r
0043500
*
0043540 006 002 u
0043560 n l e s s 006 001 ( C L : M E M B
0043600 E R S L O T R E D E F I N E
0043620 D - S L O T S ) 006 002 c o l l e
0043640 c t 006 001 S L O T ) ) \r
0043660 ) ) \r
0043700 ( C L : U N L E S S
0043720 ( A N D N I L % % C O N D
0043740 I T I O N - T Y P E S - R E A L
0043760 ) \r (
0044000 C L : S E T F E N C A P S U L
0044020 A T I O N ( M A K E - E N C A
0044040 P S U L A T I O N N A M E (
0044060 N C O N C ( M A P C A R ( S
0044100 L O T - L I S T P A R E N T -
0044120 T Y P E ) \r
0044140
*
0044240 # ' E X T R A C T - S L O T -
0044260 N A M E ) \r
0044300
*
0044360 ( M A P C A
0044400 R S L O T - D E S C R I P T I
0044420 O N S \r
0044440
*
0044520 #
0044540 ' E X T R A C T - S L O T - N A
0044560 M E ) ) ) ) ) \r ( 006
0044600 002 f o r 006 001 P A I R 006 002 i n
0044620 006 001 K E Y S \r
0044640 006 002 d o 006 001 \r
0044660 ( D E S T R U C T U R I N G -
0044700 B I N D \r (
0044720 K E Y V A L U E ) \r
0044740 P A I R \r
0044760 ( C A S E K E Y ( :
0045000 C O N C - N A M E ( C L : P U
0045020 S H P A I R C L A S S - O P
0045040 T I O N S ) ) \r
0045060 ( : R E P O R T
0045100 - F U N C T I O N ( 006 002 i f 006
0045120 001 R E P O R T E R \r
0045140
*
0045200 006 002 t h e n 006 001 ( C L : E R
0045220 R O R " R e p o r t f u n c
0045240 t i o n a l r e a d y s p e
0045260 c i f i e d f o r ~ S . "
0045300 N A M E \r
0045320
*
0045360 ) \r
0045400
0045420 006 002 e
0045440 l s e 006 001 ( C L : S E T F R
0045460 E P O R T E R V A L U E ) ) )
0045500 \r
0045520 ( : R E P O R T ( 006 002 i f 006
0045540 001 R E P O R T E R \r
0045560
0045600 006 002 t h e n 006 001
0045620 ( C L : E R R O R " R e p o
0045640 r t f u n c t i o n a l r e
0045660 a d y s p e c i f i e d f o
0045700 r ~ S . " N A M E ) \r
0045720
0045740 006 002 e l s e 006 001
0045760 ( C L : S E T F R E P O R T
0046000 E R ( C L : I F ( A N D N
0046020 I L % % C O N D I T I O N - T
0046040 Y P E S - R E A L ) \r
0046060
*
0046140 ( M A K E - R E P O R T
0046160 - F U N C T I O N V A L U E
0046200 ' C O N D I T I O N N A M E )
0046220 \r
0046240
*
0046300 ( M A K E -
0046320 F A K E - R E P O R T - F U N C
0046340 T I O N V A L U E \r
0046360
*
0046440 ' C O N D
0046460 I T I O N E N C A P S U L A T
0046500 I O N ) ) ) ) ) \r
0046520 ( : H A N D L
0046540 E R - F U N C T I O N ( 006 002 I
0046560 F 006 001 H A N D L E R \r
0046600
*
0046640 006 002 T H E N 006 001 ( C L :
0046660 E R R O R " H a n d l e r a
0046700 l r e a d y s p e c i f i e d
0046720 f o r ~ S . " N A M E ) \r
0046740
*
0047000 006 002 E L S E 006 001 ( C
0047020 L : S E T F H A N D L E R V
0047040 A L U E ) ) ) \r
0047060 ( : H A N D L E
0047100 ( 006 002 I F 006 001 H A N D L E R
0047120 \r
0047140 006 002
0047160 T H E N 006 001 ( C L : E R R O R
0047200 " H a n d l e r a l r e a d
0047220 y s p e c i f i e d f o r
0047240 ~ S . " N A M E ) \r
0047260
0047300 006 002 E L S E 006 001 (
0047320 C L : S E T F H A N D L E R
0047340 ` ( L A M B D A ( C O N D I T
0047360 I O N ) \r
0047400
*
0047440 , ( C L : I F
0047460 ( N U L L E N C A P S U L A
0047500 T I O N ) \r
0047520
*
0047600 V A L U E \r
0047620
*
0047700 ` ( L E T , E N C A P
0047720 S U L A T I O N , V A L U E )
0047740 ) ) ) ) ) \r
0047760 ( O T H E R W I S E
0050000 ( C L : C E R R O R " S k i
0050020 p k e y - v a l u e p a i r
0050040 " " I l l e g a l k e y w o
0050060 r d ~ S i n ~ S . " K E
0050100 Y \r
0050120
0050140 ' D E F I N E - C O N D
0050160 I T I O N ) ) ) ) ) \r
0050200 ` ( P R O G N ( D E F S T R
0050220 U C T ( 006 002 ( \ , N A M E )
0050240 006 001 , @ C L A S S - O P T I O
0050260 N S ) , @ S L O T - D E S C R
0050300 I P T I O N S ) \r \r
0050320 , @ ( C L : I
0050340 F ( N E Q N A M E P A R E
0050360 N T - T Y P E ) \r
0050400
0050420 ` ( ( F I X - I N H E R I T A N
0050440 C E - L I N K S ' , N A M E
0050460 ' , P A R E N T - T Y P E ) ) )
0050500 \r ,
0050520 @ ( C L : I F ( C L : C O N S
0050540 P H A N D L E R ) \r
0050560
0050600 ( L E T ( ( H A N D L E R
0050620 - N A M E ( % % S U F F I X -
0050640 S Y M B O L N A M E " d e
0050660 f a u l t h a n d l e r " ) )
0050700 ) \r
0050720 ( P
0050740 R O G 1 ` ( ( C L : S E T F
0050760 ( C L : S Y M B O L - F U N C T
0051000 I O N ' , H A N D L E R - N A
0051020 M E ) \r
0051040
*
0051100 # ' , H A N D L E R ) ) ( S E
0051120 T Q H A N D L E R H A N D L
0051140 E R - N A M E ) ) ) ) \r
0051160 ( C L : S E
0051200 T F ( C O N D I T I O N - H A
0051220 N D L E R ' , N A M E ) \r
0051240
0051260 , ( A N D H A N D L E R
0051300 ` # ' , H A N D L E R ) ) \r
0051320 , @ (
0051340 C L : I F ( C L : C O N S P
0051360 R E P O R T E R ) \r
0051400
0051420 ( L E T ( ( R E P O R T E R
0051440 - N A M E ( % % S U F F I X -
0051460 S Y M B O L N A M E " r e
0051500 p o r t m e t h o d " ) ) ) \r
0051520
0051540 ( P R O
0051560 G 1 ` ( ( C L : S E T F ( C
0051600 L : S Y M B O L - F U N C T I O
0051620 N ' , R E P O R T E R - N A M
0051640 E ) \r
0051660
0051700 #
0051720 ' , R E P O R T E R ) ) ( S E
0051740 T Q R E P O R T E R R E P O
0051760 R T E R - N A M E ) ) ) ) \r
0052000 ( C L :
0052020 S E T F ( C O N D I T I O N -
0052040 R E P O R T E R ' , N A M E )
0052060 \r
0052100 , ( A N D R E P O
0052120 R T E R ` # ' , R E P O R T E
0052140 R ) ) \r
0052160 ' , N A M E ) ) ) ) ) \r \r (
0052200 D E F M A C R O 006 002 C L : C H
0052220 E C K - T Y P E 006 001 ( P L A C
0052240 E T Y P E S P E C & O P T I
0052260 O N A L C L : S T R I N G ) \r
0052300 ( W I T H - E R R - L O O
0052320 P - V A R S " C H E C K - T Y
0052340 P E " ` ( C L : B L O C K ,
0052360 B L O C K - N A M E \r
0052400
*
0052440 ( C L : T A G B O
0052460 D Y , A G A I N \r
0052500
*
0052540 ( L E
0052560 T ( ( , V A L , P L A C E )
0052600 ) \r
0052620
*
0052660 ( C L : W H
0052700 E N ( T Y P E P , V A L '
0052720 , T Y P E S P E C ) \r
0052740
*
0053020 ( C L : R E
0053040 T U R N - F R O M , B L O C K
0053060 - N A M E ) ) \r
0053100
*
0053160 ( C L : S E T F , P L A C E
0053200 ( C H E C K - T Y P E - F A I L
0053220 \r
0053240
*
0053320 T \r
0053340
*
0053440 ' , P L A C E \r
0053460
*
0053560 , V A L \r
0053600
*
0053700 ' , T Y P E S P E C \r
0053720
*
0054020 , C L : S T R I
0054040 N G ) ) \r
0054060
*
0054120 ( G O
0054140 , A G A I N ) ) ) ) ) ) \r \r (
0054160 D E F M A C R O 006 002 C L : E T
0054200 Y P E C A S E 006 001 ( K E Y F O
0054220 R M & B O D Y C L A U S E S
0054240 ) \r ( W I T H - G E N S Y
0054260 M S ( V A L U E ) \r
0054300 " E T Y P E C A S E "
0054320 \r ( L E T
0054340 ( ( C A S E - S E L E C T O R S
0054360 ( C O N S ' O R ( C O L L
0054400 E C T - C A S E - S E L E C T O
0054420 R S C L A U S E S ' C L : E
0054440 T Y P E C A S E ) ) ) ) \r
0054460 ` ( L E
0054500 T ( ( , V A L U E , K E Y F
0054520 O R M ) ) \r
0054540 ( C L : T
0054560 Y P E C A S E , V A L U E ,
0054600 @ C L A U S E S ( T ( C H E
0054620 C K - T Y P E - F A I L N I L
0054640 ' , K E Y F O R M , V A L U
0054660 E \r
0054700
*
0054740 '
0054760 , C A S E - S E L E C T O R S
0055000 N I L ) ) ) ) ) ) ) \r \r ( D E F
0055020 M A C R O 006 002 C T Y P E C A S
0055040 E 006 001 ( K E Y P L A C E & B
0055060 O D Y C L A U S E S ) \r
0055100 ( L E T ( ( C A S E - S E L E
0055120 C T O R S ( C O N S ' O R
0055140 ( C O L L E C T - C A S E - S E
0055160 L E C T O R S C L A U S E S
0055200 ' C T Y P E C A S E ) ) ) ) \r
0055220 ( W I T H - E R R
0055240 - L O O P - V A R S \r
0055260 " C T Y P E C A S E " \r
0055300 ` ( C L : B L
0055320 O C K , B L O C K - N A M E
0055340 ( C L : T A G B O D Y \r
0055360
0055400 , A G
0055420 A I N \r
0055440
0055460 ( L E T ( ( , V A L
0055500 , K E Y P L A C E ) ) \r
0055520
*
0055560 ( C L : R E T U R N - F R
0055600 O M , B L O C K - N A M E \r
0055620
*
0055660 ( C L :
0055700 T Y P E C A S E , V A L , @
0055720 C L A U S E S \r
0055740
*
0056000 ( T (
0056020 C L : S E T F , K E Y P L A C
0056040 E ( C H E C K - T Y P E - F A
0056060 I L \r
0056100
*
0056160 T \r
0056200
*
0056300 ' , K E Y
0056320 P L A C E \r
0056340
*
0056440 , V A L \r
0056460
*
0056560 ' , C A S E - S E L E C T O R
0056600 S N I L ) ) \r
0056620
*
0056660 (
0056700 G O , A G A I N ) ) ) ) ) ) )
0056720 ) ) ) \r \r ( D E F M A C R O 006
0056740 002 C L : E C A S E 006 001 ( K E Y
0056760 F O R M & R E S T C L A U S
0057000 E S ) \r ( W I T H - G E N
0057020 S Y M S ( V A L U E ) \r
0057040 " E C A S E " \r
0057060 ( L E T ( (
0057100 C A S E - S E L E C T O R S (
0057120 C O L L E C T - C A S E - S E L
0057140 E C T O R S C L A U S E S '
0057160 C L : E C A S E ) ) ) \r
0057200 ( C L : I
0057220 F C A S E - S E L E C T O R S
0057240 ` ( L E T ( ( , V A L U E
0057260 , K E Y F O R M ) ) \r
0057300
*
0057340 ( C A S E , V A L
0057360 U E , @ C L A U S E S ( T
0057400 ( E C A S E - F A I L N I L \r
0057420
*
0057520 ' , K E
0057540 Y F O R M \r
0057560
*
0057660 , V A L U E \r
0057700
*
0060000 ' , C A S E - S E L E
0060020 C T O R S ) ) ) ) \r
0060040
0060060 ` ( C L : E R R O R " E m p t
0060100 y c a s e s t a t e m e n t
0060120 . " ) ) ) ) ) \r \r ( D E F M A C
0060140 R O 006 002 C L : C C A S E 006 001
0060160 ( K E Y F O R M & B O D Y C
0060200 L A U S E S ) \r ( L E T
0060220 ( ( C A S E - S E L E C T O R S
0060240 ( C O L L E C T - C A S E - S
0060260 E L E C T O R S C L A U S E S
0060300 ' C L : C C A S E ) ) ) \r
0060320 ( C L : U N L E S S
0060340 C A S E - S E L E C T O R S
0060360 ( C L : E R R O R " E m p t y
0060400 C C A S E . " ) ) \r
0060420 ( W I T H - E R R - L O O
0060440 P - V A R S \r
0060460 " C C A S E " \r
0060500 ` ( C L : B L O C K , B L O
0060520 C K - N A M E ( C L : T A G B
0060540 O D Y \r
0060560
0060600 , A G A I N \r
0060620
0060640 ( L E
0060660 T ( ( , V A L , K E Y F O R
0060700 M ) ) \r
0060720
0060740 ( C L : R E
0060760 T U R N - F R O M , B L O C K
0061000 - N A M E \r
0061020
*
0061060 ( C A S E , V A L , @
0061100 C L A U S E S \r
0061120
*
0061160 ( T ( C
0061200 L : S E T F , K E Y F O R M
0061220 ( E C A S E - F A I L \r
0061240
*
0061340 T \r
0061360
*
0061460 ' , K E Y F O R M \r
0061500
*
0061600 , V A L \r
0061620
*
0061720 ' , C A S E - S E L E C T O R
0061740 S ) ) \r
0061760
*
0062020 ( G O , A
0062040 G A I N ) ) ) ) ) ) ) ) ) ) \r \r
0062060 ( D E F M A C R O 006 002 C L : A
0062100 S S E R T 006 001 ( T E S T - F O
0062120 R M & O P T I O N A L P L A
0062140 C E S C L : S T R I N G & R
0062160 E S T A R G S ) \r ( C L
0062200 : U N L E S S ( C L : L I S T
0062220 P P L A C E S ) \r
0062240 ( C L : E R R O R " ~
0062260 S s h o u l d b e a l i
0062300 s t o f p l a c e s . " P
0062320 L A C E S ) ) \r ( W I T H
0062340 - E R R - L O O P - V A R S "
0062360 A S S E R T " ` ( C L : B L O
0062400 C K , B L O C K - N A M E (
0062420 C L : T A G B O D Y , A G A I
0062440 N ( C L : W H E N \r
0062460
*
0062560 , T E S T - F O R M
0062600 \r
0062620
*
0062700 ( C L :
0062720 R E T U R N - F R O M \r
0062740
*
0063040 , B L O C K - N
0063060 A M E \r
0063100
*
0063200 ( C L : V A L U E S ) ) ) \r
0063220
*
0063300 ( A S S
0063320 E R T - F A I L , C L : S T R
0063340 I N G , @ A R G S ) \r
0063360
*
0063440 ( G O , A
0063460 G A I N ) ) ) ) ) \r \r ( D E F M
0063500 A C R O 006 002 H A N D L E R - B
0063520 I N D 006 001 ( B I N D I N G S
0063540 & R E S T F O R M S ) " E v
0063560 a l f o r m s u n d e r t
0063600 e m p o r a r y n e w c o n
0063620 d i t i o n h a n d l e r s .
0063640 " \r ` ( L E T ( ( * C O
0063660 N D I T I O N - H A N D L E R -
0063700 B I N D I N G S * ( L I S T *
0063720 , @ ( E X T R A C T - C O N D
0063740 I T I O N - B I N D I N G S (
0063760 \r
0064000
*
0064060 N O R M A
0064100 L I Z E - C O N D I T I O N - C
0064120 L A U S E S \r
0064140
*
0064240 B I N D I N G S ) )
0064260 \r
0064300
*
0064340 * C O N D I T I O N - H A N D L
0064360 E R - B I N D I N G S * ) ) ) \r
0064400 , @ F O R M S
0064420 ) ) \r \r ( D E F M A C R O 006 002
0064440 C O N D I T I O N - B I N D 006 001
0064460 ( B I N D I N G S & R E S T
0064500 F O R M S ) \r
0064520
0064540 " E v a l f o r m s u n d
0064560 e r t e m p o r a r y n e w
0064600 c o n d i t i o n h a n d l
0064620 e r s ; s y n o n y m f o r
0064640 H A N D L E R - B I N D " \r
0064660 ` ( H A N D L E R - B I N D
0064700 , B I N D I N G S , @ F O R
0064720 M S ) ) \r \r ( D E F M A C R O
0064740 006 002 C O N D I T I O N - C A S E
0064760 006 001 ( F O R M & R E S T B
0065000 I N D I N G S ) \r
0065020
0065040 " E v a l f o r m
0065060 u n d e r c o n d i t i o n
0065100 h a n d l e r s t h a t p r
0065120 o v i d e a l t e r n a t e
0065140 c o n t i n u a t i o n s . " \r
0065160 ( W I T H - G E N S Y M S
0065200 \r ( C O N D I T I O N
0065220 C L : V A L U E S B N A M E
0065240 H A N D L E R ) \r " C O
0065260 N D I T I O N - C A S E " \r
0065300 ( L E T \r ( ( C L
0065320 A U S E S ( N O R M A L I Z E
0065340 - C O N D I T I O N - C L A U S
0065360 E S B I N D I N G S ) ) ) \r
0065400 ( 006 002 i f 006 001 ( N U L
0065420 L C L A U S E S ) \r
0065440 006 002 t h e n 006 001 F O R
0065460 M \r 006 002 e l s e 006
0065500 001 ` ( L E T * ( ( , C O N D
0065520 I T I O N N I L ) \r
0065540 (
0065560 , C L : V A L U E S ( C O N D
0065600 I T I O N - B L O C K \r
0065620
0065640 , B N
0065660 A M E \r
0065700
0065720 ( L E T ( ( , H A N
0065740 D L E R ( F U N C T I O N (
0065760 C L : L A M B D A ( C ) \r
0066000
*
0066100 ( C L : S E T F , C O N D I T
0066120 I O N C ) \r
0066140
*
0066220 ( C O N D I T
0066240 I O N - R E T U R N , B N A M
0066260 E ) ) ) ) ) \r
0066300
0066320 ( H A
0066340 N D L E R - B I N D ( ( , ( C
0066360 L : M A P C A R ( F U N C T I
0066400 O N C A R ) \r
0066420
*
0066500 C L A U S E S ) ,
0066520 H A N D L E R ) ) \r
0066540
*
0066600 ( C L : M U L T I
0066620 P L E - V A L U E - L I S T ,
0066640 F O R M ) ) ) ) ) ) \r
0066660 ( C
0066700 L : I F , C O N D I T I O N
0066720 , ( 006 002 i f 006 001 ( E Q L ( L
0066740 E N G T H C L A U S E S ) \r
0066760
*
0067020 1 )
0067040 \r
0067060
0067100 006 002 t h e
0067120 n 006 001 ( C A D R ( C A R (
0067140 M A S S A G E - C A T C H - C O
0067160 N D I T I O N - C L A U S E S
0067200 C L A U S E S \r
0067220
*
0067300 C O N D I T
0067320 I O N ) ) ) \r
0067340
0067360 006
0067400 002 e l s e 006 001 ` ( C O N D I T
0067420 I O N - T Y P E C A S E , C O
0067440 N D I T I O N , @ ( \r
0067460
*
0067560 M A S S A G E - C A T C H -
0067600 C O N D I T I O N - C L A U S E
0067620 S \r
0067640
*
0067740 C L A U S E S C O N D I T
0067760 I O N ) \r
0070000
*
0070040 ( T ( C L
0070060 : E R R O R \r
0070100
*
0070140 " B u g i
0070160 n c o n d i t i o n - c a s e
0070200 ! ~ & U n e x p e c t e d c o
0070220 n d i t i o n : ~ S . " \r
0070240
*
0070320 , C O
0070340 N D I T I O N ) ) ) ) ( C L :
0070360 V A L U E S - L I S T \r
0070400
*
0070500 , C L : V
0070520 A L U E S ) ) ) ) ) ) ) \r \r ( D
0070540 E F M A C R O 006 002 R E A L - C
0070560 O N D I T I O N - C A S E 006 001
0070600 ( F O R M & R E S T C A S E
0070620 S ) \r
0070640 "
0070660 E v a l f o r m u n d e r
0070700 c o n d i t i o n h a n d l e
0070720 r s t h a t p r o v i d e
0070740 a l t e r n a t e c o n t i n
0070760 u a t i o n s . " \r ( W I
0071000 T H - G E N S Y M S \r (
0071020 O U T E R I N N E R C O N D
0071040 I T I O N D U M M Y ) \r
0071060 " C O N D I T I O N - C A S E
0071100 " \r ` ( C L : B L O C K
0071120 \r , O U T E R \r
0071140 ( C L : M U L T I P L E
0071160 - V A L U E - C A L L \r
0071200 ' C L : F U N C A L L \r
0071220 ( C L : B L O C K \r
0071240 , I N N E R \r
0071260 ( H A N D L E R -
0071300 B I N D \r , (
0071320 006 002 F O R 006 001 C A S E 006 002 I
0071340 N 006 001 C A S E S \r
0071360 006 002 C O L L E C T
0071400 006 001 \r
0071420 ( D E S T R U C T U R I N G - B
0071440 I N D \r
0071460 ( T Y P E S B V L . B
0071500 O D Y ) \r
0071520 C A S E \r
0071540 ` ( , T Y P E S \r
0071560 #
0071600 ' ( C L : L A M B D A \r
0071620 (
0071640 , C O N D I T I O N ) \r
0071660 (
0071700 C L : R E T U R N - F R O M \r
0071720
0071740 , I N N E R \r
0071760 ( C
0072000 L : V A L U E S # ' ( C L : L
0072020 A M B D A , @ ( C L : I F B
0072040 V L ( L I S T B V L ) \r
0072060
*
0072140 ` ( ( , D U M M Y ) \r
0072160
*
0072240 ( 006 002 D E C L A R E 006
0072260 001 ( I G N O R E , D U M M Y
0072300 ) ) ) ) , @ B O D Y ) \r
0072320
0072340 , C O N D I T I
0072360 O N ) ) ) ) ) ) \r
0072400 ( C L : R E T U R N - F R O
0072420 M , O U T E R , F O R M ) )
0072440 ) ) ) ) ) \r \r ( D E F M A C R O
0072460 006 002 I G N O R E - E R R O R S
0072500 006 001 ( & B O D Y F O R M S )
0072520 " E v a l f o r m s w i t
0072540 h h a n d l e r f o r a n
0072560 y c o n d i t i o n o f t
0072600 y p e E R R O R . " \r `
0072620 ( C O N D I T I O N - C A S E
0072640 ( P R O G N , @ F O R M S ) \r
0072660 ( E R R O
0072700 R ( C O N D I T I O N ) \r
0072720
0072740 N I L ) ) ) \r \r ( D E F M A C R
0072760 O 006 002 P R O C E E D - C A S E
0073000 006 001 ( F O R M & R E S T C
0073020 L A U S E S ) \r
0073040
*
0073100 " E v a l f o r m s ,
0073120 e s t a b l i s h i n g a
0073140 p l a c e t o p r o c e e d
0073160 f r o m e r r o r s . " \r
0073200 ( W I T H - G E N S Y M S \r
0073220 ( S E L E C T O R C L
0073240 : V A L U E S T A G ) \r
0073260 " P R O C E E D - C A S E " \r
0073300 ( C L : M U L T I P L E
0073320 - V A L U E - B I N D \r
0073340 ( C A S E S B O D I E S ) \r
0073360 ( S P L I T - P R O C
0073400 E E D - C L A U S E S C L A U
0073420 S E S T A G ) \r ( 006
0073440 002 i f 006 001 ( N U L L C A S E
0073460 S ) \r 006 002 t h
0073500 e n 006 001 F O R M \r
0073520 006 002 e l s e 006 001 ` ( D E S T
0073540 R U C T U R I N G - B I N D (
0073560 , S E L E C T O R \ , C L :
0073600 V A L U E S ) \r
0073620 ( L E T
0073640 ( ( , T A G ( L I S T N I
0073660 L ) ) ) \r
0073700 ( C
0073720 L : C A T C H , T A G ( C O
0073740 N S : N O R M A L ( L E T
0073760 ( ( * P R O C E E D - C A S E S
0074000 * ( L I S T * , @ C A S E S
0074020 \r
0074040
*
0074140 * P R O C E E D - C
0074160 A S E S * ) ) \r
0074200
*
0074260 ) \r
0074300
*
0074360 ( C L : M U L T I P L E - V A
0074400 L U E - L I S T , F O R M ) )
0074420 ) ) ) \r
0074440 ( C L : I F (
0074460 E Q , S E L E C T O R : N O
0074500 R M A L ) \r
0074520
0074540 ( C L : V A L U E S - L I S T
0074560 , C L : V A L U E S ) \r
0074600
0074620 ( C L : A P P L
0074640 Y , ( 006 002 i f 006 001 ( E Q L
0074660 ( L E N G T H B O D I E S ) \r
0074700
*
0074740 1
0074760 ) \r
0075000
0075020 006 002 t h
0075040 e n 006 001 ( C A D R ( C A R
0075060 B O D I E S ) ) \r
0075100
*
0075140 006 002 e l s e 006 001 ` ( C A S E
0075160 , S E L E C T O R , @ B O D
0075200 I E S ) ) , C L : V A L U E S
0075220 ) ) ) ) ) ) ) \r \r ( D E F M A C
0075240 R O 006 002 R E A L - P R O C E E
0075260 D - C A S E 006 001 ( F O R M &
0075300 R E S T C L A U S E S ) \r
0075320
*
0075360 " E v a l
0075400 f o r m s , e s t a b l i s h
0075420 i n g a p l a c e t o p
0075440 r o c e e d f r o m e r r o
0075460 r s . " \r ( W I T H - G E
0075500 N S Y M S ( O U T E R T A G
0075520 D U M M Y ) \r
0075540 " P R O C E E D - C A S E "
0075560 \r ` ( C L :
0075600 B L O C K , O U T E R ( L E
0075620 T * ( ( , T A G ( L I S T
0075640 N I L ) ) \r
0075660
0075700 ( * P R O C E
0075720 E D - C A S E S * ( L I S T *
0075740 , @ ( M A P C A R C L A U S
0075760 E S \r
0076000
*
0076060 # ' ( C L : L A M
0076100 B D A ( C L A U S E ) \r
0076120
*
0076220 ( \r
0076240
*
0076340 P R O C E E D
0076360 - C A S E - F R O M - C L A U S
0076400 E \r
0076420
*
0076520 C L A U S E T A G D U M M Y
0076540 ) ) ) \r
0076560
*
0076640 * P R O C E E D - C A S E S * )
0076660 ) ) \r
0076700
0076720 ( C L : M U L T I P L
0076740 E - V A L U E - C A L L ' C L
0076760 : F U N C A L L ( C L : C A T
0077000 C H , T A G \r
0077020
*
0077120 ( C L : R E T U R N -
0077140 F R O M \r
0077160
*
0077260 , O U T E R \r
0077300
*
0077400 , F O R M ) ) )
0077420 ) ) ) ) \r \r ( D E F D E F I N E
0077440 R 006 002 D E F I N E - P R O C E
0077460 E D - F U N C T I O N 006 001 \r
0077500 F U N C T I O N S \r ( N
0077520 A M E & R E S T T A I L &
0077540 A U X V A R S ) \r ( C L
0077560 : M U L T I P L E - V A L U E -
0077600 B I N D \r ( T E S T R
0077620 E P O R T A R G L I S T ) \r
0077640 ( P R O C E S S - P R O C
0077660 E E D - K E Y W O R D S N A M
0077700 E T A I L ) \r ( C L :
0077720 S E T F V A R S ( M A P C A
0077740 R A R G L I S T # ' ( L A M
0077760 B D A ( X ) \r
0100000
0100020 ( C
0100040 L : I F ( C L : S Y M B O L P
0100060 X ) \r
0100100
*
0100140 X \r
0100160
*
0100220 ( C A R X ) ) ) ) ) \r
0100240 ( C L : U N L E S S T E S T
0100260 ( C L : S E T F T E S T ' T
0100300 R U E ) ) \r ( C L : U N
0100320 L E S S R E P O R T ( C L :
0100340 S E T F R E P O R T ' D E F
0100360 A U L T - P R O C E E D - R E P
0100400 O R T E R ) ) \r ` ( P R
0100420 O G N , @ ( C L : I F ( C L
0100440 : C O N S P T E S T ) \r
0100460
0100500 ( L E T ( ( T E S T E R
0100520 ( % % S U F F I X - S Y M B O L
0100540 N A M E " - p r o c e e d -
0100560 t e s t " ) ) ) \r
0100600
0100620 ( P R O G 1 ` ( ( C L :
0100640 S E T F ( C L : S Y M B O L -
0100660 F U N C T I O N ' , T E S T E
0100700 R ) \r
0100720
0100740 # ' ,
0100760 T E S T ) ) ( S E T Q T E S
0101000 T T E S T E R ) ) ) ) \r
0101020 ( C L : S E T
0101040 F ( D E F A U L T - P R O C E
0101060 E D - T E S T ' , N A M E ) \r
0101100
0101120 ' , T E S T ) \r
0101140 , @ ( C L : I F
0101160 ( C L : C O N S P R E P O R T
0101200 ) \r
0101220 ( L E T ( ( R E
0101240 P O R T E R ( % % S U F F I X
0101260 - S Y M B O L N A M E " - p
0101300 r o c e e d - r e p o r t e r "
0101320 ) ) ) \r
0101340 ( P
0101360 R O G 1 ` ( ( C L : S E T F
0101400 ( C L : S Y M B O L - F U N C T
0101420 I O N ' , R E P O R T E R ) \r
0101440
*
0101500 # ' , R E P
0101520 O R T ) ) ( S E T Q R E P O
0101540 R T R E P O R T E R ) ) ) ) \r
0101560 ( C L :
0101600 S E T F ( D E F A U L T - P R
0101620 O C E E D - R E P O R T ' , N
0101640 A M E ) \r
0101660 ' , R E P O R T
0101700 ) \r ( C
0101720 L : S E T F ( P R O C E E D -
0101740 A R G - C O L L E C T O R ' ,
0101760 N A M E ) \r
0102000 # ' ( C L : L
0102020 A M B D A ( & O P T I O N A L
0102040 C O N D I T I O N , @ A R G
0102060 L I S T ) \r
0102100
0102120 ( L I S T , @ V A R S ) )
0102140 ) \r ( D
0102160 E F U N ( 006 002 \ , 006 001 N A M
0102200 E ) ( & O P T I O N A L C O
0102220 N D I T I O N , @ A R G L I S
0102240 T ) ( C O N D I T I O N - C A
0102260 S E \r
0102300
*
0102360 ( I N V O K E - P R O C E E D
0102400 - C A S E \r
0102420
*
0102500 ' , N A M E C O N D
0102520 I T I O N , @ V A R S ) \r
0102540
*
0102620 ( B A D
0102640 - P R O C E E D - C A S E N I
0102660 L N I L ) ) ) \r ) ) ) \r \r ( D
0102700 E F M A C R O 006 002 C A T C H -
0102720 A B O R T 006 001 ( P R I N T - F
0102740 O R M & B O D Y F O R M S )
0102760 ` ( P R O C E E D - C A S E
0103000 ( P R O G N , @ F O R M S ) \r
0103020
*
0103100 ( A B O R T ( C
0103120 O N D I T I O N ) \r
0103140
*
0103220 : R E P O R T \r
0103240
*
0103320 , P
0103340 R I N T - F O R M : T E S T
0103360 T R U E ( C L : V A L U E S \r
0103400
*
0103520 N I L C O N D I T
0103540 I O N ) ) \r
0103560
*
0103620 ) ) \r
0103640 \r \r ( P U T P R O P S 006 002 C L
0103660 - E R R O R F I L E T Y P E 006
0103700 001 C L : C O M P I L E - F I L
0103720 E ) \r ( D E C L A R E % : D O
0103740 N T E V A L @ L O A D D O E V
0103760 A L @ C O M P I L E D O N T C
0104000 O P Y C O M P I L E R V A R S
0104020 \r \r ( A D D T O V A R 006 002 N
0104040 L A M A 006 001 ) \r \r ( A D D T O
0104060 V A R 006 002 N L A M L 006 001 ) \r
0104100 \r ( A D D T O V A R 006 002 L A M
0104120 A 006 001 ) \r ) \r ( P U T P R O P
0104140 S C L - E R R O R C O P Y R
0104160 I G H T ( " X e r o x C o r
0104200 p o r a t i o n " 1 9 8 6 ) )
0104220 \r ( D E C L A R E % : D O N T
0104240 C O P Y \r ( F I L E M A P
0104260 ( N I L ) ) ) \r S T O P \r
0104275