$ od -c -N 50000 [eris]<LispCore>SOURCES>ERROR-RUNTIME!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 3 : 2 9 " 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 > e r r o r - r u 0000200 n t i m e . \ ; 8 006 001 3 4 8 0 0000220 0 \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 : e r 0000300 r o r - r u n t i m e c o m s ) 0000320 \r 0000340 ( i 0000360 l : f u n c t i o n s i l : c 0000400 o n d i t i o n - t y p e p i 0000420 l : c o n d i t i o n - s u b t 0000440 y p e p \r 0000460 0000500 i l : c o n 0000520 d i t i o n - t y p e - o f ) \r 0000540 0000560 ( i l 0000600 : s t r u c t u r e s e r r o 0000620 r ) \r \r i l : | p r 0000640 e v i o u s | i l : | d a t e 0000660 : | " 1 7 - O c t - 8 6 1 7 0000700 : 4 9 : 2 6 " i l : { e r i s 0000720 } < l i s p c o r e > s o u r c 0000740 e s > e r r o r - r u n t i m e 0000760 . \ ; 7 ) \r \r \r ; C o p y r i 0001000 g h t ( c ) 1 9 8 6 b y 0001020 X e r o x C o r p o r a t i o 0001040 n . A l l r i g h t s r 0001060 e s e r v e d . \r \r ( i l : p r 0001100 e t t y c o m p r i n t i l : 0001120 e r r o r - r u n t i m e c o m 0001140 s ) \r \r ( i l : r p a q q 006 002 0001160 i l : e r r o r - r u n t i m e 0001200 c o m s 006 001 \r 0001220 ( ( i l : c o m s ( i l : 0001240 * i l : | ; ; ; | " I n t e 0001260 r n a l f u n c t i o n s . " 0001300 ) \r 0001320 ( i l : f u n c t i o n 0001340 s i l : c o n d i t i o n - t 0001360 y p e p i l : c o n d i t i o 0001400 n - s u b t y p e p i l : c o 0001420 n d i t i o n - t y p e - o f 0001440 \r 0001460 i l : f a k 0001500 e - t y p e p - f o r - c o n d 0001520 i t i o n s i l : f a k e - s 0001540 u b t y p e p - f o r - c o n d 0001560 i t i o n s \r 0001600 0001620 i l : f a k e - t y p e - o f 0001640 - f o r - c o n d i t i o n s ) 0001660 \r 0001700 ( i l : f u n c t i o n s 0001720 i l : c o n d i t i o n - h a 0001740 n d l e r i l : c o n d i t i 0001760 o n - r e p o r t e r i l : % 0002000 p r i n t - c o n d i t i o n 0002020 \r 0002040 i l : % p r 0002060 o c e e d - c a s e - p r i n t 0002100 e r i l : % p r o c e e d - c 0002120 a s e - d e f a u l t - r e p o 0002140 r t e r \r 0002160 i 0002200 l : r e p o r t - c o n d i t i 0002220 o n i l : c o n d i t i o n - 0002240 p a r e n t ) \r 0002260 ( i l : v a 0002300 r i a b l e s i l : * c o n d 0002320 i t i o n - h a n d l e r - b i 0002340 n d i n g s * i l : * p r o c 0002360 e e d - c a s e s * ) \r 0002400 ( i 0002420 l : f u n c t i o n s i l : c 0002440 h e c k - t y p e - f a i l i 0002460 l : e c a s e - f a i l i l : 0002500 a s s e r t - f a i l ) \r 0002520 ( 0002540 i l : f u n c t i o n s i l : 0002560 m a k e - i n t o - c o n d i t 0002600 i o n i l : r a i s e - s i g 0002620 n a l i l : d e f a u l t - h 0002640 a n d l e - c o n d i t i o n 0002660 \r 0002700 i l : d e f 0002720 a u l t - p r o c e e d - r e p 0002740 o r t e r i l : f i x - i n h 0002760 e r i t a n c e - l i n k s i 0003000 l : d e f a u l t - p r o c e e 0003020 d - t e s t \r 0003040 0003060 i l : t e s t - p r o c e e d 0003100 - c a s e ) ) \r 0003120 ( i l : c o m s ( i l : 0003140 * i l : | ; ; ; | " P r e - 0003160 d e f i n e d c o n d i t i o 0003200 n t y p e s . " ) \r 0003220 ( i l 0003240 : s t r u c t u r e s i l : c 0003260 o n d i t i o n i l : s i m p 0003300 l e - c o n d i t i o n i l : 0003320 w a r n i n g i l : s i m p l 0003340 e - w a r n i n g \r 0003360 0003400 i l : o l d - b r e a k 0003420 1 i l : s e r i o u s - c o n 0003440 d i t i o n e r r o r i l : 0003460 s i m p l e - e r r o r \r 0003500 0003520 i l : o l d - i n 0003540 t e r l i s p - e r r o r i l 0003560 : a s s e r t i o n - f a i l e 0003600 d i l : c e l l - e r r o r 0003620 i l : u n b o u n d - v a r i a 0003640 b l e \r 0003660 i l 0003700 : u n d e f i n e d - f u n c t 0003720 i o n i l : n o - p r o c e e 0003740 d - t e s t i l : i n d e x - 0003760 b o u n d s - e r r o r ) \r 0004000 0004020 ( i l : c o m s ( i l : f u n 0004040 c t i o n s i l : p r e t t y 0004060 - t y p e - n a m e ) \r 0004100 0004120 ( i l : s t r u c t u 0004140 r e s i l : t y p e - m i s m 0004160 a t c h ) ) \r 0004200 ( i l : s t r 0004220 u c t u r e s i l : c o n t r 0004240 o l - e r r o r i l : i l l e 0004260 g a l - g o i l : i l l e g a 0004300 l - r e t u r n i l : i l l e 0004320 g a l - t h r o w \r 0004340 0004360 i l : b a d - p r o c e 0004400 e d - c a s e ) \r 0004420 ( i l : s 0004440 t r u c t u r e s i l : c a l 0004460 l - e r r o r i l : t o o - m 0004500 a n y - a r g u m e n t s i l 0004520 : t o o - f e w - a r g u m e n 0004540 t s \r 0004560 i l : 0004600 i n v a l i d - a r g u m e n t 0004620 - l i s t ) \r 0004640 ( i l : s t r 0004660 u c t u r e s i l : s t r e a 0004700 m - e r r o r i l : r e a d - 0004720 e r r o r i l : e n d - o f - 0004740 f i l e ) \r 0004760 ( i l : s t r u 0005000 c t u r e s i l : s t o r a g 0005020 e - c o n d i t i o n i l : s 0005040 t a c k - o v e r f l o w i l 0005060 : s t o r a g e - e x h a u s t 0005100 e d ) ) \r 0005120 ( i l : c o m s ( i l : * i 0005140 l : | ; ; ; | \r 0005160 0005200 " E x p o r t e d s y m 0005220 b o l s . A n y t h i n g h 0005240 e r e t h a t ' s n o t i 0005260 n C L s h o u l d b e i 0005300 n X C L . " ) \r 0005320 ( i l : v 0005340 a r i a b l e s * b r e a k - 0005360 o n - w a r n i n g s * ) \r 0005400 0005420 ( i l : f u n c t i o n s i l 0005440 : m a k e - c o n d i t i o n 0005460 i l : s i g n a l e r r o r 0005500 c e r r o r w a r n b r e a 0005520 k i l : d e b u g ) \r 0005540 ( i 0005560 l : s t r u c t u r e s i l : 0005600 p r o c e e d - c a s e i l : 0005620 r e a l - p r o c e e d - c a s 0005640 e ) \r 0005660 ( i l : f u n c t i o 0005700 n s i l : f i n d - p r o c e 0005720 e d - c a s e i l : c o m p u 0005740 t e - p r o c e e d - c a s e s 0005760 i l : i n v o k e - p r o c e 0006000 e d - c a s e ) \r 0006020 ( i l : f 0006040 u n c t i o n s i l : a b o r 0006060 t i l : p r o c e e d i l : 0006100 u s e - v a l u e i l : s t o 0006120 r e - v a l u e ) ) \r 0006140 ( i l : c o m s ( 0006160 i l : f u n c t i o n s i l : 0006200 s i m p l e - f o r m a t ) \r 0006220 0006240 ( i l : p ( i l : m o v d ? 0006260 ' i l : s i m p l e - f o r m 0006300 a t ' f o r m a t ) ) ) \r 0006320 ( i l : d e c 0006340 l a r e \ : i l : d o n t c o 0006360 p y ( i l : v a r s i l : s 0006400 h o u l d - b e - i n - p a c k 0006420 a g e ) ) \r 0006440 ( i l : p r o p i l : f i l 0006460 e t y p e i l : e r r o r - r 0006500 u n t i m e ) ) ) \r \r \r \r 006 004 ( 0006520 i l : * i l : | ; ; ; | " I 0006540 n t e r n a l f u n c t i o n 0006560 s . " ) 006 001 \r \r ( d e f m a c r 0006600 o 006 002 i l : c o n d i t i o n 0006620 - t y p e p 006 001 ( i l : d a t 0006640 u m t y p e ) ( i f i l : 0006660 % c o n d i t i o n - t y p e s 0006700 - r e a l ` ( t y p e p , i 0006720 l : d a t u m \r 0006740 * 0007040 , t y p e ) 0007060 \r 0007100 * 0007140 ` ( i l : f a k e - t y p e 0007160 p - f o r - c o n d i t i o n s 0007200 , i l : d a t u m \r 0007220 * 0007300 , t y p e ) ) ) \r \r ( d 0007320 e f m a c r o 006 002 i l : c o n 0007340 d i t i o n - s u b t y p e p 006 0007360 001 ( i l : t 1 i l : t 2 ) 0007400 ( i f i l : % c o n d i t i o 0007420 n - t y p e s - r e a l ` ( s 0007440 u b t y p e p , i l : t 1 \r 0007460 * 0007600 , i l : t 2 ) \r 0007620 * 0007660 ` ( i l 0007700 : f a k e - s u b t y p e p - f 0007720 o r - c o n d i t i o n s , i 0007740 l : t 1 \r 0007760 * 0010020 , 0010040 i l : t 2 ) ) ) \r \r ( d e f m a 0010060 c r o 006 002 i l : c o n d i t i 0010100 o n - t y p e - o f 006 001 ( i l 0010120 : d a t u m ) ( i f i l : % 0010140 c o n d i t i o n - t y p e s - 0010160 r e a l ` ( t y p e - o f , 0010200 i l : d a t u m ) \r 0010220 * 0010260 ` ( i l : f a k 0010300 e - t y p e - o f - f o r - c o 0010320 n d i t i o n s , i l : d a t 0010340 u m ) ) ) \r \r ( d e f u n 006 002 0010360 i l : f a k e - t y p e p - f o 0010400 r - c o n d i t i o n s 006 001 ( 0010420 i l : d a t u m t y p e ) 006 0010440 006 006 001 006 006 ( i 0010460 l : * i l : | a m d | " 9 0010500 - A p r - 8 6 1 7 : 4 1 " ) 006 0010520 001 \r ( a n d ( c o n s p 0010540 i l : d a t u m ) \r 0010560 ( s y m b o l p ( c a r 0010600 i l : d a t u m ) ) \r 0010620 ( i l : c o n d i t i o 0010640 n - s u b t y p e p ( c a r 0010660 i l : d a t u m ) \r 0010700 t y p e ) ) ) 0010720 \r \r ( d e f u n 006 002 i l : f a 0010740 k e - s u b t y p e p - f o r - 0010760 c o n d i t i o n s 006 001 ( i l 0011000 : t 1 i l : t 2 ) ( v a l u 0011020 e s ( a n d ( i l : | f o r 0011040 | i l : | o l d | i l : t 1 0011060 i l : | b y | \r 0011100 * 0011200 ( i l : c o n d i t i o n - 0011220 p a r e n t i l : t 1 ) \r 0011240 * 0011340 i l : | w h i l e 0011360 | i l : t 1 \r 0011400 * 0011500 i l : | t h e r e i s | \r 0011520 * 0011620 ( e q i l : t 0011640 1 i l : t 2 ) ) \r 0011660 * 0011740 t ) \r 0011760 * 0012040 t ) ) \r \r 0012060 ( d e f u n 006 002 i l : f a k e 0012100 - t y p e - o f - f o r - c o n 0012120 d i t i o n s 006 001 ( i l : d a 0012140 t u m ) ( c a r i l : d a t 0012160 u m ) ) \r \r ( d e f m a c r o 0012200 006 002 i l : c o n d i t i o n - h 0012220 a n d l e r 006 001 ( i l : c o n 0012240 d i t i o n - t y p e ) ` ( i 0012260 l : g e t p r o p , i l : c o 0012300 n d i t i o n - t y p e ' \r 0012320 * 0012400 i l : % c o 0012420 n d i t i o n - h a n d l e r ) 0012440 ) \r \r ( d e f m a c r o 006 002 i 0012460 l : c o n d i t i o n - r e p o 0012500 r t e r 006 001 ( i l : c o n d i 0012520 t i o n - t y p e ) ` ( i l : 0012540 g e t p r o p , i l : c o n d 0012560 i t i o n - t y p e ' \r 0012600 * 0012660 i l : % c o n 0012700 d i t i o n - r e p o r t e r ) 0012720 ) \r \r ( d e f u n 006 002 i l : % 0012740 p r i n t - c o n d i t i o n 006 0012760 001 ( i l : c o n d i t i o n 0013000 s t r e a m i l : l e v e l ) 0013020 ( d e c l a r e ( i g n o r 0013040 e i l : l e v e l ) ) \r 0013060 * 0013140 ( i f * p r i n 0013160 t - e s c a p e * ( f o r m a 0013200 t s t r e a m \r 0013220 * 0013320 " # < C o n d i t i 0013340 o n ~ S @ ~ O , ~ O > " \r 0013360 * 0013500 ( t y p e - o f \r 0013520 * 0013640 i l : c o n d i t 0013660 i o n \r 0013700 * 0014000 ) 0014020 \r 0014040 * 0014140 ( i l : \ \ h i l o c 0014160 \r 0014200 * 0014300 i l : c o n d i t i 0014320 o n ) \r 0014340 * 0014440 ( i l : \ \ l o 0014460 l o c \r 0014500 * 0014600 i l : c o n d 0014620 i t i o n ) ) \r 0014640 * 0014720 ( i l : r e p o r t 0014740 - c o n d i t i o n i l : c o 0014760 n d i t i o n \r 0015000 * 0015060 s t 0015100 r e a m ) ) ) \r \r ( d e f u n 0015120 006 002 i l : % p r o c e e d - c a 0015140 s e - p r i n t e r 006 001 ( i l 0015160 : p c s t r e a m i l : l e 0015200 v e l ) ( d e c l a r e ( i 0015220 g n o r e i l : l e v e l ) ) 0015240 \r 0015260 * 0015320 ( i f * p r 0015340 i n t - e s c a p e * ( \r 0015360 * 0015460 i l : d e f a u l 0015500 t - s t r u c t u r e - p r i n 0015520 t e r \r 0015540 * 0015640 i l : p c s t r e a m i l : 0015660 l e v e l ) \r 0015700 * 0015760 ( f u n c a l l ( i l : 0016000 p r o c e e d - c a s e - r e p 0016020 o r t i l : p c ) \r 0016040 * 0016120 i l 0016140 : p c s t r e a m ) ) ) \r \r ( 0016160 d e f u n 006 002 i l : % p r o c 0016200 e e d - c a s e - d e f a u l t 0016220 - r e p o r t e r 006 001 ( i l : 0016240 p c s t r e a m ) ( f u n c 0016260 a l l ( i l : d e f a u l t - 0016300 p r o c e e d - r e p o r t \r 0016320 * 0016420 ( i l : p r o c e e d - c a s 0016440 e - n a m e i l : p c ) ) \r 0016460 * 0016540 i l 0016560 : p c s t r e a m ) ) \r \r ( d 0016600 e f u n 006 002 i l : r e p o r t 0016620 - c o n d i t i o n 006 001 ( i l 0016640 : c o n d i t i o n s t r e a 0016660 m ) ( d o * ( ( t y p e ( 0016700 i l : c o n d i t i o n - t y p 0016720 e - o f i l : c o n d i t i o 0016740 n ) \r 0016760 * 0017040 ( i l : c o n d i t i o n - p a 0017060 r e n t t y p e ) ) \r 0017100 * 0017160 ( i l : r e p o r t e r 0017200 ( i l : c o n d i t i o n - r e 0017220 p o r t e r t y p e ) \r 0017240 * 0017320 ( i l : c 0017340 o n d i t i o n - r e p o r t e 0017360 r t y p e ) ) ) \r 0017400 * 0017460 ( ( n u l l t y p e ) \r 0017500 * 0017560 ( b r e a k " N o r 0017600 e p o r t f u n c t i o n f 0017620 o u n d f o r ~ S . " \r 0017640 * 0017720 i l : 0017740 c o n d i t i o n ) ) \r 0017760 * 0020040 ( w h e n i l : r e p o r 0020060 t e r \r 0020100 * 0020160 ( r e t u r n ( i f s t r e 0020200 a m ( f u n c a l l i l : r 0020220 e p o r t e r \r 0020240 * 0020340 i 0020360 l : c o n d i t i o n \r 0020400 * 0020520 s t r e a m ) \r 0020540 * 0020640 ( w i t h - o u t p u t - 0020660 t o - s t r i n g \r 0020700 * 0021000 ( s t r e a m ) \r 0021020 * 0021120 ( f u n c a l l i l 0021140 : r e p o r t e r \r 0021160 * 0021260 i l : c o 0021300 n d i t i o n s t r e a m ) ) 0021320 \r 0021340 * 0021420 ) ) ) ) ) \r \r 0021440 ( d e f m a c r o 006 002 i l : c 0021460 o n d i t i o n - p a r e n t 006 0021500 001 ( t y p e ) ` ( i l : g e 0021520 t p r o p , t y p e ' i l : 0021540 % c o n d i t i o n - p a r e n 0021560 t ) ) \r \r ( d e f v a r 006 002 i 0021600 l : * c o n d i t i o n - h a n 0021620 d l e r - b i n d i n g s * 006 001 0021640 n i l " C o n d i t i o n 0021660 h a n d l e r b i n d i n g 0021700 s t a c k " ) \r \r ( d e f v a r 0021720 006 002 i l : * p r o c e e d - c 0021740 a s e s * 006 001 n i l " A c t 0021760 i v e p r o c e e d c a s e 0022000 s t a c k " ) \r \r ( d e f u n 0022020 006 002 i l : c h e c k - t y p e 0022040 - f a i l 006 001 ( i l : p r o c 0022060 e e d a b l e i l : p l a c e 0022100 i l : v a l u e i l : d e s 0022120 i r e d - t y p e i l : m e s 0022140 s a g e ) \r ( i l : p r o 0022160 c e e d - c a s e ( e r r o r 0022200 ' i l : t y p e - m i s m a t 0022220 c h : n a m e i l : p l a c 0022240 e : v a l u e i l : v a l u 0022260 e : d e s i r e d - t y p e 0022300 \r 0022320 i l : d 0022340 e s i r e d - t y p e : m e s 0022360 s a g e i l : m e s s a g e ) 0022400 \r ( i l : s 0022420 t o r e - v a l u e ( i g n o 0022440 r e i l : n e w ) \r 0022460 : r e p 0022500 o r t \r 0022520 ( f o r m a t t " 0022540 C h a n g e t h e v a l u e 0022560 o f ~ A " i l : p l a c e 0022600 ) \r 0022620 : t e s t \r 0022640 ( l a m b d 0022660 a ( i l : c o n d i t i o n ) 0022700 \r 0022720 ( a n d i l 0022740 : p r o c e e d a b l e ( i l 0022760 : c o n d i t i o n - t y p e p 0023000 i l : c o n d i t i o n ' i 0023020 l : t y p e - m i s m a t c h ) 0023040 ) ) \r 0023060 i l : n e w ) ) ) \r \r ( 0023100 d e f u n 006 002 i l : e c a s e 0023120 - f a i l 006 001 ( i l : p r o c 0023140 e e d a b l e i l : p l a c e 0023160 i l : v a l u e i l : s e l 0023200 e c t o r s ) \r ( i l : p 0023220 r o c e e d - c a s e ( e r r 0023240 o r " T h e v a l u e o f 0023260 ~ S , ~ S , ~ & i s ~ ? . 0023300 " i l : p l a c e i l : v a 0023320 l u e \r 0023340 0023360 " ~ # [ w r o n g ~ ; n o t ~ 0023400 S ~ ; n e i t h e r ~ S n o 0023420 r ~ S ~ : ; n o t ~ @ { ~ # [ 0023440 ~ ; o r ~ ] ~ S ~ ^ , ~ } ~ 0023460 ] " \r 0023500 i 0023520 l : s e l e c t o r s ) \r 0023540 ( i l : s t o r e 0023560 - v a l u e ( i g n o r e i 0023600 l : v ) \r 0023620 : t e s t \r 0023640 ( l a 0023660 m b d a ( i l : c o n d i t i 0023700 o n ) \r 0023720 ( d e c 0023740 l a r e ( i g n o r e i l : 0023760 c o n d i t i o n ) ) \r 0024000 0024020 i l : p r o c e e d a b 0024040 l e ) \r 0024060 : r e p o r t \r 0024100 ( f 0024120 o r m a t t " C h a n g e 0024140 t h e v a l u e o f ~ A " 0024160 i l : p l a c e ) \r 0024200 i l : v 0024220 ) ) ) \r \r ( d e f u n 006 002 i l 0024240 : a s s e r t - f a i l 006 001 ( 0024260 s t r i n g & r e s t i l : 0024300 a r g s ) ( i l : p r o c e e 0024320 d - c a s e ( e r r o r ' i 0024340 l : a s s e r t i o n - f a i l 0024360 e d \r 0024400 * 0024460 : f o r m a t 0024500 - s t r i n g s t r i n g \r 0024520 * 0024620 : f o r m a t - a r g 0024640 u m e n t s i l : a r g s ) \r 0024660 * 0024740 ( i l : p r o c e e d 0024760 n i l : r e p o r t " R e - 0025000 t e s t a s s e r t i o n " ) 0025020 ) ) \r \r ( d e f u n 006 002 i l : 0025040 m a k e - i n t o - c o n d i t 0025060 i o n 006 001 ( i l : d a t u m 0025100 i l : d e s i r e d - t y p e 0025120 i l : a r g s ) 006 006 006 001 \r 0025140 * 0025220 006 006 ( i l : * i l : | ; ; | 0025240 \r 006 001 0025260 * 0025320 006 006 " T h e e n t i 0025340 r e t h i n g s h o u l d 0025360 b e a t y p e c a s e . " ) 0025400 006 001 \r ( i f ( i l : c o 0025420 n d i t i o n - t y p e p i l 0025440 : d a t u m ' i l : c o n d i 0025460 t i o n ) \r i l : 0025500 d a t u m \r ( e t 0025520 y p e c a s e i l : d a t u m 0025540 ( s y m b o l ( i f ( i l 0025560 : c o n d i t i o n - s u b t y 0025600 p e p i l : d a t u m ' i l 0025620 : c o n d i t i o n ) \r 0025640 * 0025700 ( a p p l y ( i l : f u 0025720 n c t i o n i l : m a k e - c 0025740 o n d i t i o n ) \r 0025760 * 0026020 i l : d a t u m 0026040 i l : a r g s ) \r 0026060 * 0026120 ( e r r o r " ~ S i s n 0026140 o t a c o n d i t i o n t 0026160 y p e . " i l : d a t u m ) ) 0026200 ) \r 0026220 ( s t r i n g ( i l : m a k e 0026240 - c o n d i t i o n i l : d e 0026260 s i r e d - t y p e : f o r m 0026300 a t - s t r i n g i l : d a t 0026320 u m : f o r m a t - a r g u m 0026340 e n t s \r 0026360 0026400 i l : a r g s ) ) ) ) ) \r 0026420 \r ( d e f u n 006 002 i l : r a i 0026440 s e - s i g n a l 006 001 ( i l : 0026460 c ) ( d o * ( ( i l : * c o 0026500 n d i t i o n - h a n d l e r - 0026520 b i n d i n g s * i l : * c o 0026540 n d i t i o n - h a n d l e r - 0026560 b i n d i n g s * \r 0026600 * 0026640 ( c d r i l : * c o 0026660 n d i t i o n - h a n d l e r - 0026700 b i n d i n g s * ) ) ) \r 0026720 * 0026760 ( ( n u l l i l : * c o n d i 0027000 t i o n - h a n d l e r - b i n 0027020 d i n g s * ) \r 0027040 0027060 ( i l : 0027100 d e f a u l t - h a n d l e - c 0027120 o n d i t i o n i l : c ) \r 0027140 * 0027200 i l : c ) \r 0027220 0027240 ( i l : 0027260 d e s t r u c t u r i n g - b i 0027300 n d ( t y p e . i l : h a 0027320 n d l e r ) \r 0027340 * 0027400 ( c a r i l : * c o n d i t 0027420 i o n - h a n d l e r - b i n d 0027440 i n g s * ) \r 0027460 * 0027520 ( w h e n ( i l : c o n d i 0027540 t i o n - t y p e p i l : c 0027560 t y p e ) \r 0027600 * 0027640 ( l e t ( ( i l : 0027660 * c o n d i t i o n - h a n d l 0027700 e r - b i n d i n g s * ( c d 0027720 r \r 0027740 * 0030020 i l : * c o n 0030040 d i t i o n - h a n d l e r - b 0030060 i n d i n g s * \r 0030100 * 0030220 ) ) ) \r 0030240 * 0030300 ( f 0030320 u n c a l l i l : h a n d l e 0030340 r i l : c ) ) ) ) ) ) \r \r ( d 0030360 e f u n 006 002 i l : d e f a u l 0030400 t - h a n d l e - c o n d i t i 0030420 o n 006 001 ( i l : c o n d i t i 0030440 o n ) ( d o ( ( t y p e ( 0030460 i l : c o n d i t i o n - t y p 0030500 e - o f i l : c o n d i t i o 0030520 n ) \r 0030540 * 0030620 ( i l : c o n d i t i o n - p a 0030640 r e n t t y p e ) ) ) \r 0030660 * 0030740 ( ( n u l l t y p e ) ) 0030760 \r 0031000 * 0031040 ( l e t ( ( i l 0031060 : h a n d l e r ( i l : c o n 0031100 d i t i o n - h a n d l e r t 0031120 y p e ) ) ) \r 0031140 * 0031220 ( w h e n i l : h a n d l 0031240 e r ( f u n c a l l i l : h 0031260 a n d l e r \r 0031300 * 0031400 i l : c o 0031420 n d i t i o n ) ) ) ) ) \r \r ( d 0031440 e f u n 006 002 i l : d e f a u l 0031460 t - p r o c e e d - r e p o r t 0031500 e r 006 001 ( i l : p c s t r e 0031520 a m ) ( f o r m a t s t r e 0031540 a m " P r o c e e d - t y p e 0031560 : ~ A " ( \r 0031600 * 0031700 i l : p r o c 0031720 e e d - c a s e - n a m e \r 0031740 * 0032060 i l : p c ) ) ) \r \r ( d e 0032100 f u n 006 002 i l : f i x - i n h 0032120 e r i t a n c e - l i n k s 006 001 0032140 ( i l : n a m e i l : n e w 0032160 - p a r e n t ) \r ( l e t 0032200 ( ( i l : o l d - p a r e n t 0032220 ( i l : c o n d i t i o n - p 0032240 a r e n t i l : n a m e ) ) ) 0032260 \r ( u n l e s s 0032300 ( o r ( e q i l : n e w - 0032320 p a r e n t i l : o l d - p a 0032340 r e n t ) \r 0032360 ( n u l l 0032400 i l : o l d - p a r e n t ) ) \r 0032420 ( 0032440 l e t ( ( i l : c h i l d r e 0032460 n ( g e t i l : o l d - p a 0032500 r e n t ' i l : % c o n d i t 0032520 i o n - c h i l d r e n ) ) ) \r 0032540 0032560 ( s e t f ( g e t i 0032600 l : o l d - p a r e n t ' i l 0032620 : % c o n d i t i o n - c h i l 0032640 d r e n ) \r 0032660 0032700 ( i l : d r e m o v e i l : n 0032720 a m e i l : c h i l d r e n ) 0032740 ) ) ) \r ( p u s 0032760 h n e w i l : n a m e ( i l 0033000 : g e t p r o p i l : n e w - 0033020 p a r e n t ' i l : % c o n d 0033040 i t i o n - c h i l d r e n ) ) 0033060 \r ( s e t f ( 0033100 i l : c o n d i t i o n - p a r 0033120 e n t i l : n a m e ) \r 0033140 i l : n e 0033160 w - p a r e n t ) ) ) \r \r ( d e 0033200 f m a c r o 006 002 i l : d e f a 0033220 u l t - p r o c e e d - t e s t 0033240 006 001 ( i l : p r o c e e d - t 0033260 y p e ) ` ( i l : g e t p r o 0033300 p , i l : p r o c e e d - t y 0033320 p e ' \r 0033340 * 0033420 i l : % d e f a u l t - p r o 0033440 c e e d - t e s t ) ) \r \r ( d e 0033460 f u n 006 002 i l : t e s t - p r 0033500 o c e e d - c a s e 006 001 ( i l 0033520 : p c i l : c o n d i t i o n 0033540 & a u x i l : t e s t ) \r 0033560 ( c o n d \r ( ( 0033600 s e t f i l : t e s t ( i l 0033620 : p r o c e e d - c a s e - t e 0033640 s t i l : p c ) ) \r 0033660 ( f u n c a l l i l : t e 0033700 s t i l : c o n d i t i o n ) 0033720 ) \r ( ( a n d ( i 0033740 l : p r o c e e d - c a s e - n 0033760 a m e i l : p c ) \r 0034000 ( s e t f i l : 0034020 t e s t ( o r ( i l : d e f 0034040 a u l t - p r o c e e d - t e s 0034060 t ( i l : p r o c e e d - c a 0034100 s e - n a m e i l : p c ) ) \r 0034120 0034140 ( i 0034160 l : n o - p r o c e e d - t e s 0034200 t ( i l : p r o c e e d - c a 0034220 s e - n a m e i l : p c ) ) ) 0034240 ) ) \r ( f u n c a 0034260 l l i l : t e s t i l : c o 0034300 n d i t i o n ) ) \r 0034320 ( t 006 006 006 001 0034340 * 0034400 006 006 ( i l : * 0034420 i l : \ ; " T h i s c a s 0034440 e s h o u l d n ' t h a p p 0034460 e n " ) 006 001 \r 0034500 ( i l : p r o c e e d - c a s e 0034520 ( e r r o r " C o u l d n ' 0034540 t f i n d t e s t f u n c 0034560 t i o n f o r ~ S . " i l 0034600 : p c ) \r 0034620 ( i l : p r o c e e d 0034640 n i l : t e s t i l : t r 0034660 u e : r e p o r t " A s s u 0034700 m e p r o c e e d c a s e 0034720 i s e n a b l e d " t ) ) ) 0034740 ) ) \r \r \r \r \r 006 004 ( i l : * i 0034760 l : | ; ; ; | " P r e - d e f 0035000 i n e d c o n d i t i o n t 0035020 y p e s . " ) 006 001 \r \r ( i l : d 0035040 e f i n e - c o n d i t i o n 0035060 006 002 i l : c o n d i t i o n 006 001 0035100 i l : c o n d i t i o n : r 0035120 e p o r t " C o n d i t i o n 0035140 ~ S o c c u r r e d . " i 0035160 l : - - d u m m y - s l o t - - 0035200 ) \r \r ( i l : d e f i n e - c o 0035220 n d i t i o n 006 002 i l : s i m 0035240 p l e - c o n d i t i o n 006 001 0035260 i l : c o n d i t i o n : r e 0035300 p o r t ( a p p l y ( i l : 0035320 f u n c t i o n f o r m a t ) 0035340 \r 0035360 * 0035440 t i l : f o r m a 0035460 t - s t r i n g \r 0035500 * 0035560 i 0035600 l : f o r m a t - a r g u m e n 0035620 t s ) \r 0035640 * 0035700 i l : f o r m a t - s t r 0035720 i n g i l : f o r m a t - a r 0035740 g u m e n t s ) \r \r ( i l : d e 0035760 f i n e - c o n d i t i o n 006 0036000 002 i l : w a r n i n g 006 001 i l 0036020 : c o n d i t i o n ) \r \r ( i l 0036040 : d e f i n e - c o n d i t i o 0036060 n 006 002 i l : s i m p l e - w a 0036100 r n i n g 006 001 i l : w a r n i 0036120 n g : r e p o r t ( a p p l 0036140 y ( i l : f u n c t i o n f 0036160 o r m a t ) \r 0036200 * 0036260 t i l : f o r 0036300 m a t - s t r i n g \r 0036320 * 0036400 i l : 0036420 f o r m a t - a r g u m e n t s 0036440 ) \r 0036460 0036500 i 0036520 l : f o r m a t - s t r i n g 0036540 i l : f o r m a t - a r g u m e 0036560 n t s ) \r \r ( i l : d e f i n e 0036600 - c o n d i t i o n 006 002 i l : 0036620 o l d - b r e a k 1 006 001 i l : 0036640 c o n d i t i o n : r e p o r 0036660 t ( i l : d e s t r u c t u r 0036700 i n g - b i n d ( i l : m e s 0036720 s 1 i l : m e s s 2 \r 0036740 * 0037060 i l : m e s s 3 ) \r 0037100 * 0037160 l i s t 0037200 \r 0037220 * 0037300 ( i l : e r r o r m e s s 1 i 0037320 l : m e s s 1 i l : m e s s 2 0037340 \r 0037360 * 0037440 i l : m e s s 3 0037460 ) ) \r 0037500 0037520 l i s t 0037540 ) \r \r ( i l : d e f i n e - c o 0037560 n d i t i o n 006 002 i l : s e r 0037600 i o u s - c o n d i t i o n 006 001 0037620 i l : c o n d i t i o n : r 0037640 e p o r t ( f o r m a t t 0037660 \r 0037700 * 0037760 " S e r i o u s c 0040000 o n d i t i o n ~ S o c c u 0040020 r r e d . " \r 0040040 * 0040120 ( i l 0040140 : c o n d i t i o n - t y p e - 0040160 o f \r 0040200 * 0040300 i l : c o n d i t i o n ) ) ) 0040320 \r \r ( i l : d e f i n e - c o n 0040340 d i t i o n 006 002 e r r o r 006 001 0040360 i l : s e r i o u s - c o n d 0040400 i t i o n ) \r \r ( i l : d e f i 0040420 n e - c o n d i t i o n 006 002 i 0040440 l : s i m p l e - e r r o r 006 001 0040460 i l : e r r o r : r e p o r 0040500 t ( a p p l y ( i l : f u n 0040520 c t i o n f o r m a t ) \r 0040540 * 0040620 t i l : 0040640 f o r m a t - s t r i n g i l 0040660 : f o r m a t - a r g u m e n t 0040700 s ) \r 0040720 0040740 i l 0040760 : f o r m a t - s t r i n g i 0041000 l : f o r m a t - a r g u m e n 0041020 t s ) \r \r ( i l : d e f i n e - 0041040 c o n d i t i o n 006 002 i l : o 0041060 l d - i n t e r l i s p - e r r 0041100 o r 006 001 i l : e r r o r : r 0041120 e p o r t ( i f ( e q i l 0041140 : n u m b e r 1 7 ) \r 0041160 * 0041240 ( i l 0041260 : d e s t r u c t u r i n g - b 0041300 i n d \r 0041320 * 0041400 ( i l : m e s s 1 0041420 . i l : m e s s 2 ) \r 0041440 * 0041520 i l 0041540 : m e s s a g e \r 0041560 * 0041640 ( i l : e 0041660 r r o r m e s s 1 i l : m e s 0041700 s 1 i l : m e s s 2 \r 0041720 * 0042020 ' i l : e r r o r ) ) 0042040 \r 0042060 * 0042140 ( i l : e r r o r m ( l i 0042160 s t i l : n u m b e r \r 0042200 * 0042320 i l : m e s s a g e ) ) ) \r 0042340 * 0042420 i l : n u m b e r i l : m e s 0042440 s a g e ) \r \r ( i l : d e f i n 0042460 e - c o n d i t i o n 006 002 i l 0042500 : a s s e r t i o n - f a i l e 0042520 d 006 001 i l : s i m p l e - e r 0042540 r o r : r e p o r t ( a p p 0042560 l y ( i l : f u n c t i o n 0042600 f o r m a t ) \r 0042620 * 0042720 t \r 0042740 * 0043020 ( o r i l 0043040 : f o r m a t - s t r i n g \r 0043060 * 0043160 " A s s 0043200 e r t i o n f a i l e d . " ) 0043220 \r 0043240 * 0043320 i l : f o r m 0043340 a t - a r g u m e n t s ) ) \r \r 0043360 ( i l : d e f i n e - c o n d i 0043400 t i o n 006 002 i l : c e l l - e 0043420 r r o r 006 001 i l : e r r o r 0043440 i l : n a m e ) \r \r ( i l : d e 0043460 f i n e - c o n d i t i o n 006 0043500 002 i l : u n b o u n d - v a r i 0043520 a b l e 006 001 i l : c e l l - e 0043540 r r o r : r e p o r t ( f o 0043560 r m a t t " U n b o u n d 0043600 v a r i a b l e : ~ S . " \r 0043620 * 0043720 i l : n a m e ) ) \r 0043740 \r ( i l : d e f i n e - c o n d 0043760 i t i o n 006 002 i l : u n d e f 0044000 i n e d - f u n c t i o n 006 001 0044020 i l : c e l l - e r r o r : r 0044040 e p o r t ( f o r m a t t 0044060 " U n d e f i n e d f u n c t 0044100 i o n : ~ S . " \r 0044120 * 0044220 i l : n a m e ) ) \r \r ( i 0044240 l : d e f i n e - c o n d i t i 0044260 o n 006 002 i l : n o - p r o c e 0044300 e d - t e s t 006 001 i l : u n d 0044320 e f i n e d - f u n c t i o n 0044340 : r e p o r t ( f o r m a t 0044360 t \r 0044400 * 0044440 " 0044460 N o t e s t s p e c i f i e 0044500 d f o r p r o c e e d c a 0044520 s e : ~ S . " \r 0044540 * 0044640 i l : n a m e ) ) 0044660 \r \r ( i l : d e f i n e - c o n 0044700 d i t i o n 006 002 i l : i n d e 0044720 x - b o u n d s - e r r o r 006 001 0044740 i l : c e l l - e r r o r : 0044760 r e p o r t ( f o r m a t t 0045000 " I n d e x o u t o f b 0045020 o u n d s : ~ D . " \r 0045040 * 0045140 i l : i n d e x ) \r 0045160 * 0045240 i l : i n d e x ) \r \r ( d e f u 0045260 n 006 002 i l : p r e t t y - t y 0045300 p e - n a m e 006 001 ( i l : t y 0045320 p e s p e c ) ( i l : c o n c 0045340 a t " a " i l : t y p e s 0045360 p e c ) ) \r \r ( i l : d e f i n 0045400 e - c o n d i t i o n 006 002 i l 0045420 : t y p e - m i s m a t c h 006 001 0045440 i l : c e l l - e r r o r : 0045460 r e p o r t ( f o r m a t t 0045500 \r 0045520 * 0045600 " T h e v a l u e 0045620 o f ~ A , ~ A , i s n o 0045640 t ~ A . " \r 0045660 * 0045740 i l : n a 0045760 m e i l : v a l u e \r 0046000 * 0046060 ( 0046100 o r i l : m e s s a g e ( \r 0046120 * 0046240 i l : p r e t t y - t y p e 0046260 - n a m e \r 0046300 * 0046400 i l : d e s i 0046420 r e d - t y p e ) ) ) \r 0046440 * 0046500 i l : v a l u e 0046520 i l : d e s i r e d - t y p e 0046540 i l : m e s s a g e ) \r \r ( i 0046560 l : d e f i n e - c o n d i t i 0046600 o n 006 002 i l : c o n t r o l - 0046620 e r r o r 006 001 i l : e r r o r 0046640 ) \r \r ( i l : d e f i n e - c o 0046660 n d i t i o n 006 002 i l : i l l 0046700 e g a l - g o 006 001 i l : c o n 0046720 t r o l - e r r o r : r e p o 0046740 r t ( f o r m a t t " G O 0046760 t o a n o n - e x i s t a 0047000 n t t a g : ~ S . " \r 0047020 * 0047120 i l : t a g ) \r 0047140 * 0047200 i l : t a g ) \r \r ( i l : d 0047220 e f i n e - c o n d i t i o n 0047240 006 002 i l : i l l e g a l - r e t 0047260 u r n 006 001 i l : c o n t r o l 0047300 - e r r o r : r e p o r t ( 0047320 f o r m a t t \r 0047340 * 0047420 " R E T 0047440 U R N t o n o n - e x i s t 0047460 a n t b l o c k : ~ S . " 0047500 \r 0047520 * 0047600 i l : t a g ) \r 0047620 * 0047660 i l : 0047700 t a g ) \r \r ( i l : d e f i n e 0047720 - c o n d i t i o n 006 002 i l : 0047740 i l l e g a l - t h r o w 006 001 0047760 i l : c o n t r o l - e r r o r 0050000 : r e p o r t ( f o r m a t 0050020 t \r 0050040 * 0050120 " T a g f 0050140 o r T H R O W n o t f o u 0050160 n d : ~ S . " \r 0050200 * 0050300 i l : t a g ) \r 0050320 * 0050360 i l : t a g ) \r \r ( i l 0050400 : d e f i n e - c o n d i t i o 0050420 n 006 002 i l : b a d - p r o c e 0050440 e d - c a s e 006 001 i l : c o n 0050460 t r o l - e r r o r : r e p o 0050500 r t ( f o r m a t t \r 0050520 * 0050600 " P r o c e e 0050620 d c a s e ~ S i s n o t 0050640 c u r r e n t l y a c t i v 0050660 e . " \r 0050700 * 0050760 i l 0051000 : n a m e ) \r 0051020 * 0051060 i l : n a m e ) \r \r 0051100 ( i l : d e f i n e - c o n d i 0051120 t i o n 006 002 i l : c a l l - e 0051140 r r o r 006 001 i l : c o n t r o 0051160 l - e r r o r i l : c a l l e 0051200 e ) \r \r ( i l : d e f i n e - c 0051220 o n d i t i o n 006 002 i l : t o 0051240 o - m a n y - a r g u m e n t s 0051260 006 001 i l : c a l l - e r r o r 0051300 : r e p o r t \r 0051320 * 0051360 ( i f ( a 0051400 n d i l : m a x i m u m i l 0051420 : a c t u a l ) \r 0051440 * 0051500 ( f 0051520 o r m a t t " T o o m a n 0051540 y a r g u m e n t s t o ~ 0051560 A : ~ % ~ D ~ : * ~ [ w 0051600 e r e ~ ; w a s ~ : ; w e r e ~ 0051620 ] g i v e n b u t a t m 0051640 o s t ~ D ~ : * ~ [ a r e ~ 0051660 ; i s ~ : ; a r e ~ ] a c c e 0051700 p t e d " \r 0051720 * 0052000 i l : c a l l e e i l : 0052020 a c t u a l i l : m a x i m u 0052040 m ) \r 0052060 * 0052120 ( f o r m a t 0052140 t " T o o m a n y a r g u 0052160 m e n t s t o ~ A " i l : 0052200 c a l l e e ) ) \r 0052220 * 0052260 i l : m a x 0052300 i m u m i l : a c t u a l ) \r 0052320 \r ( i l : d e f i n e - c o n d 0052340 i t i o n 006 002 i l : t o o - f 0052360 e w - a r g u m e n t s 006 001 i 0052400 l : c a l l - e r r o r : r e 0052420 p o r t \r 0052440 * 0052500 ( i f ( a n d i l 0052520 : m i n i m u m i l : a c t u 0052540 a l ) \r 0052560 * 0052620 ( f o r m a t 0052640 t " T o o f e w a r g u m 0052660 e n t s t o ~ A : ~ % 0052700 ~ D ~ : * ~ [ w e r e ~ ; w a 0052720 s ~ : ; w e r e ~ ] g i v e n 0052740 b u t a t l e a s t ~ D 0052760 ~ : * ~ [ a r e ~ ; i s ~ : ; 0053000 a r e ~ ] n e c e s s a r y " 0053020 \r 0053040 * 0053100 i l : 0053120 c a l l e e i l : a c t u a l 0053140 i l : m i n i m u m ) \r 0053160 * 0053240 ( f o r m a t t " T o o 0053260 f e w a r g u m e n t s t o 0053300 ~ A " i l : c a l l e e ) ) 0053320 \r 0053340 * 0053400 i l : m i n i m u m i l : a 0053420 c t u a l ) \r \r ( i l : d e f i 0053440 n e - c o n d i t i o n 006 002 i 0053460 l : i n v a l i d - a r g u m e 0053500 n t - l i s t 006 001 i l : c a l 0053520 l - e r r o r : r e p o r t 0053540 ( f o r m a t t \r 0053560 * 0053640 " 0053660 ~ S h a s a n i n v a l i 0053700 d a r g u m e n t l i s t " 0053720 \r 0053740 * 0054020 i l : 0054040 c a l l e e ) ) \r \r ( i l : d e 0054060 f i n e - c o n d i t i o n 006 0054100 002 i l : s t r e a m - e r r o r 0054120 006 001 i l : e r r o r : r e p 0054140 o r t ( f o r m a t t " S 0054160 t r e a m e r r o r o n ~ 0054200 S . " s t r e a m ) \r 0054220 * 0054260 s t r e a m ) \r \r 0054300 ( i l : d e f i n e - c o n d i 0054320 t i o n 006 002 i l : r e a d - e 0054340 r r o r 006 001 i l : s t r e a m 0054360 - e r r o r ) \r \r ( i l : d e f 0054400 i n e - c o n d i t i o n 006 002 0054420 i l : e n d - o f - f i l e 006 001 0054440 i l : r e a d - e r r o r : 0054460 r e p o r t " E n d o f f 0054500 i l e : ~ % ~ S " s t 0054520 r e a m ) \r \r ( i l : d e f i n 0054540 e - c o n d i t i o n 006 002 i l 0054560 : s t o r a g e - c o n d i t i 0054600 o n 006 001 i l : s e r i o u s - 0054620 c o n d i t i o n ) \r \r ( i l : 0054640 d e f i n e - c o n d i t i o n 0054660 006 002 i l : s t a c k - o v e r 0054700 f l o w 006 001 i l : s t o r a g 0054720 e - c o n d i t i o n : r e p 0054740 o r t " S t a c k o v e r f 0054760 l o w " ) \r \r ( i l : d e f i n 0055000 e - c o n d i t i o n 006 002 i l 0055020 : s t o r a g e - e x h a u s t 0055040 e d 006 001 i l : s t o r a g e - 0055060 c o n d i t i o n ) \r \r \r \r \r 006 0055100 004 ( i l : * i l : | ; ; ; | 0055120 " E x p o r t e d s y m b o l 0055140 s . A n y t h i n g h e r e 0055160 t h a t ' s n o t i n C 0055200 L s h o u l d b e i n X 0055220 C L . " ) 006 001 \r \r ( d e f v a r 0055240 006 002 * b r e a k - o n - w a r 0055260 n i n g s * 006 001 n i l \r 0055300 0055320 " I f t r u e 0055340 , c a l l s t o W A R N 0055360 w i l l c a u s e a b r e 0055400 a k a s w e l l a s l o 0055420 g g i n g t h e w a r n i n 0055440 g . " ) \r \r ( d e f u n 006 002 i 0055460 l : m a k e - c o n d i t i o n 0055500 006 001 ( t y p e & r e s t i 0055520 l : s l o t - i n i t i a l i z 0055540 a t i o n s ) \r 0055560 * 0055620 " C r e 0055640 a t e a c o n d i t i o n 0055660 o b j e c t o f t h e s p 0055700 e c i f i e d t y p e . " \r 0055720 ( a p p l y ( i l : s t r 0055740 u c t u r e - c o n s t r u c t 0055760 o r t y p e ) \r 0056000 i l : s l o t - i n i t i 0056020 a l i z a t i o n s ) ) \r \r ( d 0056040 e f u n 006 002 i l : s i g n a l 0056060 006 001 ( i l : d a t u m & r e 0056100 s t i l : a r g s ) ( l e t 0056120 ( ( i l : c o n d i t i o n 0056140 ( i l : m a k e - i n t o - c o 0056160 n d i t i o n i l : d a t u m 0056200 \r 0056220 * 0056300 ' i l : s i m p l e 0056320 - c o n d i t i o n i l : a r 0056340 g s ) ) ) \r 0056360 * 0056420 ( i l : r a i s e - s 0056440 i g n a l i l : c o n d i t i 0056460 o n ) \r 0056500 * 0056540 ( i f ( i l : c o n d i 0056560 t i o n - t y p e p i l : c o 0056600 n d i t i o n ' \r 0056620 * 0056700 i l : s e r i o u s - c 0056720 o n d i t i o n ) \r 0056740 * 0057000 ( i l 0057020 : d e b u g i l : c o n d i t 0057040 i o n ) \r 0057060 * 0057120 ( r e t u r n - 0057140 f r o m i l : s i g n a l i 0057160 l : c o n d i t i o n ) ) ) ) \r 0057200 \r ( d e f u n 006 002 e r r o r 006 0057220 001 ( i l : d a t u m & r e s 0057240 t i l : a r g s ) ( i l : d 0057260 e b u g ( i l : r a i s e - s 0057300 i g n a l ( i l : m a k e - i 0057320 n t o - c o n d i t i o n i l 0057340 : d a t u m \r 0057360 * 0057440 ' 0057460 i l : s i m p l e - e r r o r 0057500 i l : a r g s ) ) ) ) \r \r ( d e 0057520 f u n 006 002 c e r r o r 006 001 ( 0057540 i l : p r o c e e d - f o r m a 0057560 t - s t r i n g i l : d a t u 0057600 m & r e s t i l : a r g u m 0057620 e n t s & a u x i l : c o n 0057640 d i t i o n ) \r ( i l : p 0057660 r o c e e d - c a s e ( i l : 0057700 d e b u g ( i l : r a i s e - 0057720 s i g n a l ( s e t f i l : 0057740 c o n d i t i o n ( i l : m a 0057760 k e - i n t o - c o n d i t i o 0060000 n \r 0060020 * 0060100 i l : d a t u m \r 0060120 * 0060220 ' i l : s i m p l e - e r r o 0060240 r i l : a r g u m e n t s ) ) 0060260 ) ) \r ( i l 0060300 : p r o c e e d n i l : r e 0060320 p o r t ( a p p l y ( i l : 0060340 f u n c t i o n f o r m a t ) 0060360 \r 0060400 0060420 t i l : p 0060440 r o c e e d - f o r m a t - s t 0060460 r i n g i l : a r g u m e n t 0060500 s ) \r 0060520 i l : c o n d i t i o n 0060540 ) ) ) \r \r ( d e f u n 006 002 w a 0060560 r n 006 001 ( i l : d a t u m & 0060600 r e s t i l : a r g u m e n t 0060620 s ) ( l e t ( ( i l : c o n 0060640 d i t i o n ( i l : m a k e - 0060660 i n t o - c o n d i t i o n i 0060700 l : d a t u m \r 0060720 * 0061000 ' i l 0061020 : s i m p l e - w a r n i n g 0061040 i l : a r g u m e n t s ) \r 0061060 * 0061140 ) ) \r 0061160 * 0061220 ( u n l e s s ( 0061240 i l : c o n d i t i o n - t y p 0061260 e p i l : c o n d i t i o n 0061300 ' i l : w a r n i n g ) \r 0061320 * 0061400 ( c e r r o r \r 0061420 * 0061500 " S i g n a l 0061520 a n d r e p o r t t h e 0061540 c o n d i t i o n a n y w a y 0061560 " \r 0061600 * 0061640 ' 0061660 i l : t y p e - m i s m a t c h 0061700 : n a m e ' i l : c o n d i 0061720 t i o n \r 0061740 * 0062020 : v a l u e i l : c o n 0062040 d i t i o n : d e s i r e d - 0062060 t y p e \r 0062100 * 0062160 ' i l : w a r n i n g ) ) \r 0062200 * 0062240 ( 0062260 i l : r a i s e - s i g n a l 0062300 i l : c o n d i t i o n ) \r 0062320 * 0062360 ( i f 0062400 i l : % c o n d i t i o n - t 0062420 y p e s - r e a l ( f o r m a 0062440 t * e r r o r - o u t p u t * 0062460 \r 0062500 * 0062600 " ~ & W a r n i n g : 0062620 ~ A ~ % " \r 0062640 * 0062740 i l : c o 0062760 n d i t i o n ) \r 0063000 * 0063040 ( f o r 0063060 m a t * e r r o r - o u t p u 0063100 t * " ~ & W a r n i n g : ~ 0063120 A ~ % " \r 0063140 * 0063200 ( 0063220 i l : r e p o r t - c o n d i t 0063240 i o n i l : c o n d i t i o n 0063260 n i l ) ) ) \r 0063300 * 0063340 ( w h e n * b r 0063360 e a k - o n - w a r n i n g s * 0063400 ( b r e a k i l : c o n d i 0063420 t i o n ) ) \r 0063440 * 0063500 i l : c o n d i t i 0063520 o n ) ) \r \r ( d e f u n 006 002 b 0063540 r e a k 006 001 ( & o p t i o n a 0063560 l ( i l : d a t u m " B r e 0063600 a k " ) \r 0063620 & r e s t i 0063640 l : a r g u m e n t s & a u x 0063660 i l : c o n d i t i o n ) 006 0063700 006 006 001 \r 0063720 * 0063760 006 006 ( i l : * i l 0064000 : | ; ; | \r 006 001 0064020 0064040 006 006 " W a n t t o t r 0064060 y a n d g e t s o m e i 0064100 n d i c a t i o n o f w h i 0064120 c h b r e a k y o u ' r e 0064140 r e t u r n i n g f r o m . " 0064160 ) 006 001 \r ( i l : p r o c e 0064200 e d - c a s e ( i l : d e b u 0064220 g ( s e t f i l : c o n d i 0064240 t i o n ( i l : m a k e - i n 0064260 t o - c o n d i t i o n i l : 0064300 d a t u m ' \r 0064320 * 0064400 i l : s i m p l e - c o n d i t 0064420 i o n i l : a r g u m e n t s 0064440 ) ) ) \r ( i 0064460 l : p r o c e e d n i l : r 0064500 e p o r t " R e t u r n f r 0064520 o m B R E A K " i l : c o n 0064540 d i t i o n ) ) ) \r \r ( d e f u 0064560 n 006 002 i l : d e b u g 006 001 ( 0064600 & o p t i o n a l ( i l : d a 0064620 t u m " B r e a k " ) \r 0064640 0064660 & r e s t i l : a r g 0064700 s ) ( l o o p ( i l : e r r 0064720 o r x ( i l : m a k e - i n t 0064740 o - c o n d i t i o n i l : d 0064760 a t u m ' \r 0065000 * 0065060 i l : s i m p l e - c 0065100 o n d i t i o n i l : a r g s 0065120 ) ) ) ) \r \r ( d e f s t r u c t 0065140 ( 006 002 i l : p r o c e e d - c 0065160 a s e 006 001 ( : p r i n t - f u 0065200 n c t i o n i l : % p r o c e 0065220 e d - c a s e - p r i n t e r ) 0065240 ) i l : n a m e i l : t a g 0065260 i l : s e l e c t o r \r 0065300 * 0065400 i l : t 0065420 e s t \r 0065440 * 0065540 ( i l : r e p o r t ' \r 0065560 * 0065660 i l : % p r o c e e d - c 0065700 a s e - d e f a u l t - r e p o 0065720 r t e r \r 0065740 * 0066040 ) ) \r \r ( d 0066060 e f s t r u c t ( 006 002 i l : r 0066100 e a l - p r o c e e d - c a s e 0066120 006 001 ( : i n c l u d e i l : 0066140 p r o c e e d - c a s e ) \r 0066160 0066200 ( 0066220 : p r i n t - f u n c t i o n 0066240 i l : % p r o c e e d - c a s e 0066260 - p r i n t e r ) ) i l : c o 0066300 n t i n u a t i o n ) \r \r ( d e 0066320 f u n 006 002 i l : f i n d - p r 0066340 o c e e d - c a s e 006 001 ( i l 0066360 : d a t u m i l : c o n d i t 0066400 i o n ) \r ( e t y p e c a 0066420 s e i l : d a t u m ( n u l 0066440 l ( e r r o r " ~ S i s 0066460 a n i n v a l i d a r g u m 0066500 e n t t o ~ S ; ~ % 0066520 u s e ~ S i n s t e a d " 0066540 n i l \r 0066560 0066600 ' i l : f i n d 0066620 - p r o c e e d - c a s e \r 0066640 * 0066700 ' i l : c o m p u t e - p r 0066720 o c e e d - c a s e s ) ) \r 0066740 ( i l : p r o c 0066760 e e d - c a s e ( a n d ( i 0067000 l : f m e m b i l : d a t u m 0067020 i l : * p r o c e e d - c a s 0067040 e s * ) \r 0067060 0067100 ( i l : t e s t - p r 0067120 o c e e d - c a s e i l : d a 0067140 t u m i l : c o n d i t i o n 0067160 ) \r 0067200 0067220 i l : d a t u m ) ) \r 0067240 ( s y m b o l ( 0067260 i l : | f o r | i l : p c i 0067300 l : | i n | i l : * p r o c e 0067320 e d - c a s e s * i l : | t h 0067340 e r e i s | ( a n d ( e q 0067360 ( \r 0067400 * 0067500 i l : p r o c e e d - c a 0067520 s e - n a m e \r 0067540 * 0067640 i l : p 0067660 c ) \r 0067700 * 0070000 i l : d a t u m ) \r 0070020 * 0070120 ( 0070140 i l : t e s t - p r o c e e d - 0070160 c a s e \r 0070200 * 0070300 i l : p c i l : c o 0070320 n d i t i o n ) \r 0070340 * 0070440 i l : p c ) ) ) 0070460 ) ) \r \r ( d e f u n 006 002 i l : 0070500 c o m p u t e - p r o c e e d - 0070520 c a s e s 006 001 ( i l : c o n d 0070540 i t i o n ) ( i l : | f o r | 0070560 i l : p c i l : | i n | i 0070600 l : * p r o c e e d - c a s e s 0070620 * i l : | w h e n | \r 0070640 * 0070720 ( c a t c h ' i l : s k i 0070740 p - p r o c e e d - c a s e ( 0070760 \r 0071000 * 0071100 i l : t e s t - p r o c e e 0071120 d - c a s e \r 0071140 * 0071240 i l : p c 0071260 \r 0071300 * 0071400 i l : c o n d i t i 0071420 o n ) ) \r 0071440 * 0071500 i l : | c 0071520 o l l e c t | i l : p c ) ) \r 0071540 \r ( d e f u n 006 002 i l : i n v 0071560 o k e - p r o c e e d - c a s e 0071600 006 001 ( i l : p r o c e e d - c 0071620 a s e i l : c o n d i t i o n 0071640 & r e s t v a l u e s ) \r 0071660 ( l e t ( ( i l : p c ( 0071700 i l : f i n d - p r o c e e d - 0071720 c a s e i l : p r o c e e d - 0071740 c a s e i l : c o n d i t i o 0071760 n ) ) ) \r ( i l 0072000 : i f i l : p c i l : t h e 0072020 n 006 006 006 001 0072040 006 006 ( i 0072060 l : * i l : | ; ; | " H a c 0072100 k u n t i l r e a l u n w 0072120 i n d e r i s i n . " ) 006 0072140 001 \r 0072160 ( a n d ( b o u n d p ' i 0072200 l : b r e a k r e s e t v a l s 0072220 ) \r 0072240 ( b o u n d p ' i 0072260 l : \ \ b r e a k r e s e t e x 0072300 p r ) \r 0072320 ( i l : b r e a 0072340 k r e s e t f n ' i l : l e a 0072360 v i n g ) ) \r 0072400 ( t y p e c a s e 0072420 i l : p c ( i l : r e a l - p 0072440 r o c e e d - c a s e \r 0072460 0072500 ( i l : 0072520 | w i t h | i l : r e a l - p 0072540 r o c e e d - c a s e i l : p 0072560 c \r 0072600 0072620 ( t h r o w 0072640 i l : t a g ( v a l u e s - l 0072660 i s t ( l i s t * i l : c o 0072700 n t i n u a t i o n i l : c o 0072720 n d i t i o n \r 0072740 * 0073040 ( c o n d \r 0073060 * 0073160 ( ( s y m b o l p i l : 0073200 p r o c e e d - c a s e \r 0073220 * 0073340 ) \r 0073360 * 0073460 v a l u e s ) \r 0073500 * 0073600 ( ( f b o u n d p i l 0073620 : n a m e ) \r 0073640 * 0073740 ( a p p l y ( \r 0073760 * 0074060 i l : p r o 0074100 c e e d - a r g - c o l l e c t 0074120 o r \r 0074140 * 0074240 i l : n a m e ) 0074260 \r 0074300 * 0074400 i l : c o n d i t i o 0074420 n \r 0074440 * 0074540 v a l u e s ) ) \r 0074560 * 0074660 ( t v 0074700 a l u e s ) ) ) ) ) ) ) \r 0074720 0074740 ( i l : p r o c e e d - c 0074760 a s e ( i l : | w i t h | i 0075000 l : p r o c e e d - c a s e i 0075020 l : p c \r 0075040 * 0075100 ( t h r o w i l : t a g 0075120 ( l i s t * i l : s e l e c 0075140 t o r i l : c o n d i t i o n 0075160 \r 0075200 * 0075260 ( c o n d \r 0075300 * 0075400 ( ( s y m b o l p i l : p r o 0075420 c e e d - c a s e ) \r 0075440 * 0075540 v a l u e s ) \r 0075560 * 0075660 ( ( f b o u n d p i l : n a m 0075700 e ) \r 0075720 * 0076000 ( a p p l y 0076020 ( \r 0076040 * 0076140 i l : p r o c e e d - a r g - c 0076160 o l l e c t o r \r 0076200 * 0076300 i l : n a m e ) 0076320 \r 0076340 * 0076420 i 0076440 l : c o n d i t i o n v a l u 0076460 e s ) ) \r 0076500 * 0076560 ( t v a 0076600 l u e s ) ) ) ) ) ) ) \r 0076620 i l : e l 0076640 s e \r 0076660 ( e r r o r ' i l : b a d 0076700 - p r o c e e d - c a s e : n 0076720 a m e i l : p r o c e e d - c 0076740 a s e ) ) ) ) \r \r ( i l : d e f 0076760 i n e - p r o c e e d - f u n c 0077000 t i o n 006 002 i l : a b o r t 006 0077020 001 : t e s t i l : t r u e 0077040 : r e p o r t " A b o r t " ) 0077060 \r \r ( i l : d e f i n e - p r o 0077100 c e e d - f u n c t i o n 006 002 0077120 i l : p r o c e e d 006 001 : r e 0077140 p o r t " P r o c e e d w i 0077160 t h n o s p e c i a l a c 0077200 t i o n " : t e s t i l : t 0077220 r u e ) \r \r ( i l : d e f i n e 0077240 - p r o c e e d - f u n c t i o 0077260 n 006 002 i l : u s e - v a l u e 0077300 006 001 : r e p o r t " U s e 0077320 a d i f f e r e n t v a l u 0077340 e " : t e s t i l : t r u e 0077360 \r 0077400 * 0077440 ( i l : v a l u e ( p r o g n 0077460 ( f o r m a t * q u e r y - 0077500 i o * \r 0077520 * 0077600 " E n t 0077620 e r a n e w v a l u e : 0077640 " ) \r 0077660 * 0077740 ( i l : e v a l ( r e a 0077760 d * q u e r y - i o * ) ) ) ) 0100000 ) \r \r ( i l : d e f i n e - p r 0100020 o c e e d - f u n c t i o n 006 0100040 002 i l : s t o r e - v a l u e 006 0100060 001 : r e p o r t " S t o r e 0100100 a n e w v a l u e a n d 0100120 u s e i t " : t e s t i 0100140 l : t r u e \r 0100160 * 0100220 ( i l : v a l u 0100240 e ( p r o g n ( f o r m a t 0100260 * q u e r y - i o * \r 0100300 * 0100400 " E n t e r a v 0100420 a l u e t o s t o r e : " 0100440 ) \r 0100460 * 0100540 ( e v a l ( r e a d 0100560 * q u e r y - i o * ) ) ) ) ) \r 0100600 \r ( d e f u n 006 002 i l : s i m 0100620 p l e - f o r m a t 006 001 ( s t 0100640 r e a m & r e s t i l : a r 0100660 g s ) ( w h e n ( e q s t 0100700 r e a m t ) \r 0100720 * 0100760 ( s e 0101000 t f s t r e a m * s t a n d 0101020 a r d - o u t p u t * ) ) \r 0101040 * 0101100 ( d o 0101120 l i s t ( i l : x i l : a r 0101140 g s ) \r 0101160 * 0101220 ( p r i n t 0101240 i l : x s t r e a m ) ) ) \r 0101260 \r ( i l : m o v d ? ' i l : s 0101300 i m p l e - f o r m a t ' f o 0101320 r m a t ) \r ( i l : d e c l a r 0101340 e \ : i l : d o n t c o p y 0101360 \r \r ( i l : r p a q q 006 002 i l 0101400 : s h o u l d - b e - i n - p a 0101420 c k a g e 006 001 \r 0101440 ( ( " X C L " : e x t e 0101460 r n a l i l : d e f i n e - c 0101500 o n d i t i o n i l : h a n d 0101520 l e r - b i n d i l : c o n d 0101540 i t i o n - b i n d i l : c o 0101560 n d i t i o n - c a s e \r 0101600 0101620 i l : i g n o r e - e r r o r s 0101640 i l : p r o c e e d - c a s e 0101660 i l : d e f i n e - p r o c e 0101700 e d - f u n c t i o n i l : c 0101720 a t c h - a b o r t \r 0101740 i l 0101760 : c o n d i t i o n i l : s i 0102000 m p l e - c o n d i t i o n i 0102020 l : w a r n i n g i l : s i m 0102040 p l e - w a r n i n g i l : s 0102060 e r i o u s - c o n d i t i o n 0102100 \r 0102120 i l : e r r o r i l : 0102140 s i m p l e - e r r o r i l : 0102160 a s s e r t i o n - f a i l e d 0102200 i l : c e l l - e r r o r i 0102220 l : u n b o u n d - v a r i a b 0102240 l e \r 0102260 i l : u n d e f i n 0102300 e d - f u n c t i o n i l : i 0102320 n d e x - b o u n d s - e r r o 0102340 r i l : t y p e - m i s m a t 0102360 c h i l : c o n t r o l - e r 0102400 r o r \r 0102420 i l : i l l e g a 0102440 l - g o i l : i l l e g a l - 0102460 r e t u r n i l : i l l e g a 0102500 l - t h r o w i l : c a l l - 0102520 e r r o r \r 0102540 i l : t o o - 0102560 m a n y - a r g u m e n t s i 0102600 l : t o o - f e w - a r g u m e 0102620 n t s i l : i n v a l i d - a 0102640 r g u m e n t - l i s t i l : 0102660 s t r e a m - e r r o r \r 0102700 0102720 i l : r e a d - e r r o r i l 0102740 : e n d - o f - f i l e i l : 0102760 s t o r a g e - c o n d i t i o 0103000 n i l : s t a c k - o v e r f 0103020 l o w \r 0103040 i l : s t o r a g 0103060 e - e x h a u s t e d i l : m 0103100 a k e - c o n d i t i o n i l 0103120 : s i g n a l i l : d e b u g 0103140 i l : f i n d - p r o c e e d 0103160 - c a s e \r 0103200 i l : c o m p 0103220 u t e - p r o c e e d - c a s e 0103240 s i l : i n v o k e - p r o c 0103260 e e d - c a s e i l : a b o r 0103300 t i l : p r o c e e d i l : 0103320 u s e - v a l u e \r 0103340 i l : 0103360 s t o r e - v a l u e ) \r 0103400 ( " S I " : i 0103420 n t e r n a l i l : * p r o c 0103440 e e d - c a s e s * i l : * c 0103460 o n d i t i o n - h a n d l e r 0103500 - b i n d i n g s * ) ) ) \r ) \r 0103520 \r ( i l : p u t p r o p s 006 002 0103540 i l : e r r o r - r u n t i m e 0103560 i l : f i l e t y p e 006 001 c 0103600 o m p i l e - f i l e ) \r ( i l 0103620 : p u t p r o p s i l : e r r 0103640 o r - r u n t i m e i l : c o 0103660 p y r i g h t ( " X e r o x 0103700 C o r p o r a t i o n " 1 9 8 0103720 6 ) ) \r ( i l : d e c l a r e \ 0103740 : i l : d o n t c o p y \r 0103760 ( i l : f i l e m a p ( n i l 0104000 ) ) ) \r i l : s t o p \r 0104014