$ od -c -N 50000 [eris]<LispCore>CML>MORGUE>ControlDesign.TEdit!1 0000000 D e s i g n n o t e s f o r 0000020 C o m m o n L i s p c o n 0000040 t r o l s t r u c t u r e s : 0000060 \r \r T h e b a s i c n o n - 0000100 l o c a l j u m p c o n s t 0000120 r u c t s d e f i n e d b y 0000140 C o m m o n L i s p a r e 0000160 r e t u r n , r e t u r n - 0000200 f r o m a n d g o . F r o 0000220 m n o w o n I w i l l 0000240 u s e g o t o r e p r e s 0000260 e n t a l l o f t h e m , 0000300 a s t h e f i r s t t w 0000320 o c a n b e t h o u g h t 0000340 o f a s j u m p s t o 0000360 a s p e c i a l b l o c k - 0000400 e x i t t a g . T h e t a 0000420 r g e t o f a g o i s 0000440 a ( f r a m e , p c ) p a 0000460 i r . W h e n a n o n - l 0000500 o c a l g o i s e x e c u 0000520 t e d , t h e s t a c k m 0000540 u s t b e u n w o u n d b 0000560 a c k t o t h e t a r g e 0000600 t f r a m e , a n y i n t 0000620 e r m e d i a t e b i n d i n 0000640 g s u n d o n e , t h e e 0000660 v a l - s t a c k a d j u s t 0000700 e d , p o s s i b l y p u s 0000720 h i n g n e w v a l u e s 0000740 o n t o i t , a n d e x e 0000760 c u t i o n r e s u m e d a 0001000 t t h e n e w p c . I n 0001020 a d d i t i o n , t a r g e 0001040 t s o f g o s a r e l e 0001060 x i c a l l y s c o p e d a 0001100 n d h a v e d y n a m i c 0001120 e x t e n t . I n p a r t i 0001140 c u l a r , i t i s a n 0001160 e r r o r t o g o t o a 0001200 t a g o n c e t h e b o 0001220 d y c o n t a i n i n g i t 0001240 h a s b e e n e x i t e d 0001260 . \r \r T h e c a s e w h e r 0001300 e t h e t a r g e t f r a 0001320 m e i s t h e s a m e a 0001340 s t h e o n e b e i n g 0001360 j u m p e d f r o m c a n 0001400 b e a d e q u a t e l y h a 0001420 n d l e d b y e x i s t i n 0001440 g m e c h a n i s m s . I f 0001460 t h e f r a m e s a r e 0001500 n o t t h e s a m e , t h 0001520 e j u m p m u s t b e f 0001540 r o m a l e x i c a l l y 0001560 n e s t e d c l o s u r e . 0001600 N B : t h i s m e a n s t 0001620 h a t t a r g e t s o f g 0001640 o s m u s t b e c l o s e 0001660 d o v e r . I t i s n o 0001700 t s u f f i c i e n t t o 0001720 t r e a t g o t a r g e t s 0001740 e x a c t l y t h e s a m 0001760 e w a y a s f r e e v a 0002000 r i a b l e s t h a t a r e 0002020 c l o s e d o v e r . S i 0002040 n c e g o t a r g e t s h 0002060 a v e d y n a m i c e x t e 0002100 n t , t h e y m u s t s o 0002120 m e h o w b e i n v a l i d 0002140 a t e d . T h e c o m p i l 0002160 e r c a n c e r t a i n l y 0002200 k n o w t h e t a r g e t 0002220 p c , b u t t h e t a r 0002240 g e t f r a m e c a n b e 0002260 a r b i t r a r i l y f a r 0002300 f r o m t h e j u m p e r 0002320 . T h u s s o m e r u n t 0002340 i m e m e c h a n i s m i s 0002360 n e e d e d t h a t w i l 0002400 l u n i q u e l y i d e n t 0002420 i f y t h e t a r g e t o 0002440 f a j u m p . \r \r T h e c 0002460 u r r e n t t h i n k i n g 0002500 i s t h a t w h e n a c 0002520 o n t o u r c o n t a i n i n 0002540 g a g o t a r g e t t h 0002560 a t i s c l o s e d o v e 0002600 r i s e n t e r e d , a 0002620 u n i q u e i d e n t i f y i 0002640 n g m a r k w i l l g e t 0002660 p u s h e d o n t o t h e 0002700 s t a c k . B e c a u s e 0002720 o f t h e i n v a l i d a t 0002740 i o n r e q u i r e m e n t , 0002760 t h i s m a r k m u s t 0003000 b e a h e a p - a l l o c a 0003020 t e d o b j e c t , ( e i t 0003040 h e r a C O N S o r a 0003060 s p e c i a l d a t a t y p 0003100 e ) . T h e c l o s u r e 0003120 o b j e c t t h e n p o i n 0003140 t s t o t h i s m a r k . 0003160 W h e n t h e c o n t o u 0003200 r i s e x i t e d , t h e 0003220 m a r k e r i s s i m p l 0003240 y p o p p e d o f f t h e 0003260 s t a c k . [ W h e r e d 0003300 o e s t h e m a r k a c t 0003320 u a l l y g o ? ( A d i s 0003340 t i n g u s h e d l o c a l 0003360 v a r i a b l e j u s t o n 0003400 t h e s t a c k , y o u 0003420 c a n r e c o g n i z e i t 0003440 i f i t s a s p e c i a 0003460 l d a t a t y p e ) W h a t 0003500 d o y o u d o f o r n 0003520 e s t e d t a g b o d y s ? 0003540 ( N e w f r a m e ( d o n ' 0003560 t n e e d i t i f y o u 0003600 c a n r e c o n g i z e t 0003620 h e m ) ) ] \r \r W h e n a n 0003640 o n - l o c a l g o i s e 0003660 x e c u t e d , t h e s t a 0003700 c k i s s e a r c h e d f 0003720 o r t h e c o r r e s p o n 0003740 d i n g m a r k . T h e s 0003760 t a c k t h e n g e t s u 0004000 n w o u n d t o t h a t f 0004020 r a m e , a n d e x e c u t 0004040 i o n p r o c e e d s f r o 0004060 m t h e n e w p c . A s 0004100 s o c i a t e d w i t h e a 0004120 c h t a g i s t h e a b 0004140 s o l u t e s t a c k d e p 0004160 t h a t t h a t p o i n t 0004200 . B e f o r e e x e c u t i 0004220 o n i s r e s u m e d a t 0004240 t h e n e w l o c a t i o 0004260 n , t h e s t a c k m u s 0004300 t b e a d j u s t e d t o 0004320 t h e a p p r o p r i a t e 0004340 d e p t h . [ I ' m n o t 0004360 t o o c l e a r o n e x 0004400 a c t l y h o w a l l t h 0004420 i s i s t o h a p p e n ] 0004440 \r \r A s t h e s t a c k i 0004460 s u n w o u n d b e c a u s 0004500 e o f a n o n - l o c a l 0004520 g o , f r a m e s t h a t 0004540 a r e a b o u t t o b e 0004560 u n w o u n d a r e g i v 0004600 e n a c h a n c e t o h 0004620 a n d l e t h e s i g n a l 0004640 U n w i n d . T h i s l e 0004660 a d s u s t o t h e e r 0004700 r o r s y s t e m . \r \r T h 0004720 e e r r o r s y s t e m b 0004740 o r r o w s h e a v i l y f 0004760 r o m M e s a S I G N A L s 0005000 . W e i n t r o d u c e t 0005020 h e n e w f o r m s r a i 0005040 s e - s i g n a l , e n a b l 0005060 e , r e j e c t a n d r e 0005100 s u m e . \r \r r a i s e - s i g 0005120 n a l s i g t y p e & k e y 0005140 : r e s u m a b l e : m u s 0005160 t - c a t c h & a l l o w - o 0005200 t h e r - k e y s \t [ F u n c t 0005220 i o n ] \r \r \t r a i s e - s i g 0005240 n a l r a i s e s a s i g 0005260 n a l o f t y p e s i g t 0005300 y p e , w h i c h m u s t 0005320 b e a s u b t y p e o f 0005340 C o n d i t i o n . I t c r 0005360 e a t e s a n o b j e c t 0005400 o f t h e g i v e n t y p 0005420 e , p a s s i n g a l o n g 0005440 a n y k e y w o r d p a r 0005460 a m e t e r s g i v e n t o 0005500 b e u s e d a s p a r a 0005520 m e t e r s t o t h e c r 0005540 e a t i o n f u n c t i o n . 0005560 I t w i l l l o o k u p 0005600 t h e c a l l c h a i n 0005620 f o r s i g n a l c a t c h 0005640 e r s s e t u p b y e n 0005660 a b l e . I f a m a t c h 0005700 i n g c a t c h p h r a s e 0005720 i s f o u n d , i t i s 0005740 e x e c u t e d . T h e c 0005760 a t c h p h r a s e m a y 0006000 c a u s e a n o n - l o c a 0006020 l t r a n s f e r o u t o 0006040 f t h e e n a b l e , i t 0006060 m a y r e j e c t t h e 0006100 s i g n a l , o r i t m a 0006120 y r e s u m e t h e s i g 0006140 n a l . I n t h e l a t t 0006160 e r c a s e , t h e v a l 0006200 u e o f t h e r a i s e - 0006220 s i g n a l e x p r e s s i o 0006240 n i s t h e r e s u m e d 0006260 v a l u e , u n l e s s r 0006300 e s u m a b l e i s f a l s 0006320 e , i n w h i c h c a s e 0006340 a r e s u m e e r r o r 0006360 i s s i g n a l l e d . I f 0006400 n o c a t c h p h r a s e 0006420 a c c e p t s t h e s i g 0006440 n a l a n d m u s t - c a t 0006460 c h i s t r u e , a n u 0006500 n c a u g h t s i g n a l 0006520 w i l l b e r a i s e d a 0006540 n d t h e u n c a u g h t 0006560 s i g n a l h a n d l e r i 0006600 n v o k e d . T h i s w i l 0006620 l t y p i c a l l y c a u s 0006640 e a b r e a k . \r \r e n a b 0006660 l e f o r m { ( { s i g 0006700 | ( { s i g } * ) } { r e c 0006720 o v e r y - f o r m } * ) } * \t 0006740 \t \t \t [ S p e c i a l f o r m 0006760 ] \r \r \t e n a b l e i s t h 0007000 e p r i m i t i v e f o r m 0007020 f o r c a t c h i n g s i 0007040 g n a l s . I t e s t a b l 0007060 i s h e s a s i g n a l c 0007100 a t c h e r s i m i l a r t 0007120 o t h a t e s t a b l i s h 0007140 e d b y t h e c a t c h 0007160 s p e c i a l f o r m . f o 0007200 r m i s e v a l u a t e d , 0007220 a n d i f t h e r e a r 0007240 e n o c o n d i t i o n s 0007260 s i g n a l l e d d u r i n g 0007300 t h i s e v a l u a t i o n 0007320 , t h e v a l u e o f t 0007340 h e e n t i r e e n a b l e 0007360 i s s i m p l y t h e v 0007400 a l u e o f f o r m . F o 0007420 l l o w i n g t h e f o r m 0007440 t o b e e v a l u a t e d 0007460 a r e a s e r i e s o f 0007500 c a t c h p h r a s e s . 0007520 E a c h c a t c h p h r a s 0007540 e c o n s i s t s o f a 0007560 s i g n a l o r l i s t o 0007600 f s i g n a l s t o b e 0007620 c a u g h t , f o l l o w e d 0007640 b y a s e r i e s o f 0007660 f o r m s w h i c h a r e 0007700 t h e a c t i o n s t o b 0007720 e t a k e n . A c a t c h 0007740 p h r a s e m u s t b e 0007760 e x i t e d i n o n e o f 0010000 t h e w a y s d e s c r i 0010020 b e d a b o v e . S i g n a 0010040 l s a r e m a t c h e d b 0010060 y t y p e , s o t h e o 0010100 r d e r o f t h e c a t c 0010120 h p h r a s e s w i t h i n 0010140 a n e n a b l e i s i m 0010160 p o r t a n t . T h e e n a 0010200 b l e i s a n i m p l i c 0010220 i t b l o c k . I f f o r 0010240 m r e t u r n s m u l t i p 0010260 l e v a l u e s t h e n s 0010300 o d o e s t h e e n a b l 0010320 e . \r \r r e s u m e [ v a l u 0010340 e ] \t \t \t \t \t \t \t \t \t \t \t [ S p 0010360 e c i a l f o r m ] \r \r \t r e 0010400 s u m e s t o p s t h e p 0010420 r o p a g a t i o n o f a 0010440 s i g n a l a n d c a u s e 0010460 s v a l u e t o b e r e 0010500 t u r n e d a s t h e v a 0010520 l u e o f t h e m o s t 0010540 r e c e n t r a i s e - s i g 0010560 n a l . r e s u m e m u s t 0010600 b e w i t h i n t h e l 0010620 e x i c a l s c o p e o f 0010640 a c a t c h p h r a s e . 0010660 I f t h e s i g n a l i 0010700 s n o t r e s u m a b l e , 0010720 r e s u m e w i l l c a u 0010740 s e a n e r r o r . \r \r r e 0010760 j e c t \t \t \t \t \t \t \t \t \t \t \t \t 0011000 [ S p e c i a l f o r m ] \r \r 0011020 \t r e j e c t r e t u r n s 0011040 f r o m a c a t c h p h r 0011060 a s e a n d c a u s e s t 0011100 h e c u r r e n t s i g n a 0011120 l t o c o n t i n u e p r 0011140 o p a g a t i n g u p t h e 0011160 c a l l c h a i n . I f 0011200 a c a t c h p h r a s e i 0011220 s n o t e x i t e d b y 0011240 e i t h e r a n o n - l o c 0011260 a l j u m p o r a r e s 0011300 u m e , i t i m p l i c i t 0011320 l y r e j e c t s t h e s 0011340 i g n a l . A n e x p l i c 0011360 i t r e j e c t f o r m i 0011400 s p r o v i d e d f o r c 0011420 l a r i t y . [ T h i s i s 0011440 s i m i l a r t o t h e 0011460 w a y I L : P R O G i s n 0011500 o w h a n d l e d - ( R E 0011520 T U R N N I L ) i s t a c 0011540 k e d o n t o t h e e n 0011560 d a n d t h e n p o s s i 0011600 b l y o p t i m i z e d o u 0011620 t . ] r e j e c t m u s t 0011640 b e w i t h i n t h e l e 0011660 x i c a l s c o p e o f a 0011700 c a t c h p h r a s e . \r \r 0011720 S i g n a l s a r e i n s t 0011740 a n c e s o f s u b c l a s 0011760 s e s o f C o n d i t i o n 0012000 . T h e i r i n s t a n c e 0012020 v a r i a b l e s c a r r y 0012040 w h a t e v e r i n f o r m 0012060 a t i o n t h e s i g n a l 0012100 n e e d s t o c o n v e y 0012120 . T h e s i g n a l l e r 0012140 m a i n t a i n s t h e i n 0012160 v a r i a n t t h a t d u r 0012200 i n g a n y i n v o c a t i 0012220 o n o f t h e s i g n a l 0012240 l e r , a c a t c h p h r 0012260 a s e w i l l a p a r t i 0012300 c u l a r s i g n a l a t 0012320 m o s t o n c e . T h i s 0012340 i s s o t h a t n o s t 0012360 a t e n e e d b e k e p t 0012400 i n t h e e v e n t t h 0012420 a t c a t c h p h r a s e s 0012440 t h e m s e l v e s r a i s 0012460 e s i g n a l s . A n o u 0012500 t s a n d i n g q u e s t i o 0012520 n i s t h e m e a n i n g 0012540 o f " s a m e s i g n a l 0012560 " . T h e c h o i c e s a 0012600 r e s a m e o b j e c t o 0012620 r s a m e t y p e o f o 0012640 b j e c t . \r \r u n w i n d - p 0012660 r o t e c t , c a t c h a n 0012700 d t h r o w a r e e a s i 0012720 l y i m p l e m e n t e d u 0012740 s i n g t h i s m e c h a n 0012760 i s m . N a m e l y , \r \r ( 0013000 d e f m a c r o u n w i n d - 0013020 p r o t e c t ( f o r m & r 0013040 e s t r e c o v e r y ) \r 0013060 ` ( e n a b l e ( m u l t i p 0013100 l e - v a l u e - p r o g 1 , 0013120 f o r m , @ r e c o v e r y ) 0013140 ( U n w i n d , @ r e c o v 0013160 e r y ( r e j e c t ) ) ) \r \r 0013200 ( d e f s t r u c t ( T h r o 0013220 w ( : i n c l u d e C o n d 0013240 i t i o n ) ) t a g r e s u 0013260 l t ) \r \r ( d e f m a c r o c 0013300 a t c h ( t a g & r e s t 0013320 f o r m s ) \r ( l e t ( ( 0013340 t g ( g e n s y m ) ) ) \r 0013360 ` ( l e t ( ( , t g , t a 0013400 g ) ) \r ( e n a b l 0013420 e ( p r o g n , @ f o r m s 0013440 ) \r ( T h r o w 0013460 ( i f ( e q , t g ( T h 0013500 r o w - t a g c o n d i t i o 0013520 n ) ) \r 0013540 ( r e t u r n ( v a 0013560 l u e - l i s t ( T h r o w - 0013600 r e s u l t c o n d i t i o n 0013620 ) ) ) \r 0013640 ( r e j e c t ) ) ) \r 0013660 ) ) \r ) ) \r \r ( d e f m 0013700 a c r o t h r o w ( t a g 0013720 r e s u l t ) \r ' ( p r o g 0013740 n \r ( r a i s e - s i g 0013760 n a l ' T h r o w : t a g 0014000 , t a g : r e s u l t ( m u 0014020 l t i p l e - v a l u e - l i s 0014040 t , r e s u l t ) \r 0014060 : r e s u m a b l e n i l 0014100 : m u s t - c a t c h n i l ) 0014120 \r ( u n c a u g h t - t 0014140 h r o w , t a g ) ) ) \r \r I m 0014160 p l e m e n t a t i o n d e t 0014200 a i l s : \r \r e n a b l e i s 0014220 a c t u a l l y i m p l e m 0014240 e n t e d b y t h e f u n 0014260 c t i o n e n a b l e ! . T 0014300 h i s i s a f u n c t i o 0014320 n o f t w o a r g u m e n 0014340 t s , a c l o s u r e t h 0014360 a t r e p r e s e n t s t h 0014400 e f o r m t o b e e v a 0014420 l u a t e d , a n d a n o t 0014440 h e r c l o s u r e t h a t 0014460 c o n t a i n s a l l t h 0014500 e c a t c h p h r a s e s . 0014520 W h e n t h e s i g n a l 0014540 l e r l o o k s f o r a 0014560 c a t c h p h r a s e t h a 0014600 t e n a b l e s a p a r t 0014620 i c u l a r s i g n a l , i 0014640 t a c t u a l l y l o o k s 0014660 f o r e n a b l e ! f r a 0014700 m e s , t h e n a p p l y s 0014720 t h e c a t c h c l o s u 0014740 r e . T h e c a t c h c l 0014760 o s u r e i s w h a t d e 0015000 t e r m i n e s i f t h e r 0015020 e i s a m a t c h o r 0015040 n o t . I t w i l l e i t 0015060 h e r g o s o m e w h e r e 0015100 e l s e , r e t u r n n i 0015120 l , m e a n i n g t h a t 0015140 t h e s i g n a l i s r e 0015160 j e c t e d b y t h e c a 0015200 t c h , o r r e t u r n t 0015220 h e s y m b o l r e s u m e 0015240 a l o n g w i t h a l i 0015260 s t o f v a l u e s t o 0015300 b e r e t u r n e d . T h e 0015320 r e i s a t h i r d c a 0015340 s e t h a t i s u s e d 0015360 i n t e r n a l l y t o m a 0015400 i n t a i n t h e s i g n a 0015420 l l e r i n v a r i a n t . 0015440 A c a t c h c l o s u r e 0015460 c a n r e t u r n t h e s 0015500 y m b o l s k i p a n d a 0015520 f r a m e p o i n t e r . 0015540 T h e s i g n a l i s c o 0015560 n s i d e r e d t o b e r 0015600 e j e c t e d , a n d t h e 0015620 c a t c h p h r a s e s e 0015640 a r c h i s r e s u m e d 0015660 f r o m t h e g i v e n f 0015700 r a m e i n s t e a d o f 0015720 t h e n e x t f r a m e t 0015740 h a t w o u l d n o r m a l 0015760 l y b e u s e d . \r \r O t 0016000 h e r i s s u e s : S i n c 0016020 e e n a b l e i s a n i 0016040 m p l i c i t b l o c k , r 0016060 e t u r n s f r o m t h e 0016100 p r o t e c t e d f o r m w 0016120 i l l o n l y r e t u r n 0016140 f r o m t h e e n a b l e . 0016160 I s t h i s O K f o r 0016200 u n w i n d - p r o t e c t ? \r 0016220 \r T h i s i s a f a i r 0016240 a m o u n t o f o v e r h e 0016260 a d f o r c a t c h a n d 0016300 t h r o w . S i n c e u n 0016320 w i n d i n g a f t e r t h 0016340 e t h r o w n e e d s t o 0016360 o b s e r v e u n w i n d - 0016400 p r o t e c t s , t h e r e 0016420 i s n o t a l o t w e 0016440 c a n d o t o s p e e d 0016460 u p t h a t e n d o f t 0016500 h e p r o c e s s . O n t 0016520 h e o t h e r h a n d , w 0016540 e c a n e a s i l y s p e 0016560 c i a l - c a s e t h e c a 0016600 t c h - f i n d i n g p h a s 0016620 e i f t h a t t u r n s 0016640 o u t t o b e a s e r i 0016660 o u s p e r f o r m a n c e 0016700 p r o b l e m . \r \r H a v i n g 0016720 s i g n a l s b e m a t c 0016740 h e d b y t y p e i s v 0016760 e r y h a n d y . U n f o r 0017000 t u n a t e l y , h a v i n g 0017020 t h e s i g n a l s t h e 0017040 m s e l v e s b e i n s t a 0017060 n c e s o f t h a t t y p 0017100 e i s s o m e w h a t c l 0017120 u m s y . I f a n a p p l 0017140 i c a t i o n w a n t s t o 0017160 d e f i n e a s i g n a l 0017200 , i t n e e d s t o d o 0017220 s o m e t h i n g l i k e 0017240 ( d e f s t r u c t ( m y S i 0017260 g ( : i n c l u d e s o m e 0017300 O t h e r S i g ) ) . . . ) . 0017320 I ' v e h i d d e n s o m 0017340 e o f t h e g r o s s n e 0017360 s s b y h a v i n g r a i 0017400 s e - s i g n a l t a k e a 0017420 s i g n a l t y p e i n s 0017440 t e a d o f a s i g n a l 0017460 o b j e c t , a l o n g w 0017500 i t h w h a t e v e r k e y 0017520 w o r d p a r a m e t e r s 0017540 y o u w a n t t o p a s s 0017560 t o t h e c r e a t o r 0017600 f u n c t i o n . T h i s l 0017620 e a v e s t h e i m p l e m 0017640 e n t a t i o n p r o b l e m 0017660 o f f i n d i n g t h e 0017700 c r e a t i o n f u n c t i o 0017720 n g i v e n t h e t y p e 0017740 . I t ' s s i m p l e e n 0017760 o u g h t o c o n s t r u c 0020000 t t h e d e f a u l t n a 0020020 m e , m a k e - f o o , b u 0020040 t w h i c h p a c k a g e 0020060 d o y o u l o o k i n ? \r 0020100 \r [ N O T E A L S O : t y p 0020120 e - o f i s n ' t g u a r a 0020140 n t e e d . S h o u l d i n 0020160 s t e a d u s e T Y P E P ? 0020200 M a y b e a s i m p l e r 0020220 m e c h a n i s m , e . g . 0020240 , w i t h t y p e t a g s 0020260 , a n d i n h e r i t a n c 0020300 e j u s t d o n e b y p 0020320 r o p e r t y l i s t s o r 0020340 s o m e o t h e r s i m p 0020360 l e r d a t a s t r u c t u 0020400 r e ? ] \r \r N o t c o v e r e 0020420 d i n t h i s n o t e : 0020440 I n t e r a c t i o n w i t h 0020460 c u r r e n t I n t e r l i 0020500 s p e r r o r s y s t e m , 0020520 i . e . , R E S E T L S T , 0020540 E R R O R S E T , N L S E T 0020560 Q , e t a l . \r \r [ E R R O 0020600 R S E T c a n b e d o n e 0020620 a s a n u n w i n d - p r 0020640 o t e c t . R E S E T L S T 0020660 u s e s E R R O R S E T , I 0020700 t h i n k . D u n n o i f 0020720 w e w a n t t o c h a n 0020740 g e i t . O n l y p r o b 0020760 l e m i s t h a t t h e r 0021000 e a r e f o l k s i n t 0021020 h e s y s t e m w h o l o 0021040 o k u p t h e s t a c k 0021060 f o r E R R O R S E T s a n 0021100 d l o o k a t t h e i r 0021120 3 r d a r g u m e n t , e t 0021140 c . ) . ] \r \r \0 \0 \0 \0 \0 005 \0 002 \0 0021160 ( \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 002 004 \0 0021200 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0021220 \0 \0 \0 \0 \0 \0 \0 \0 ( \0 \0 \0 \0 \0 \0 \0 0021240 \0 \0 \0 \0 \0 002 001 \0 \0 \0 \0 \0 \0 \0 \0 \0 0021260 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0021300 \0 \0 \0 \0 004 \0 \f \0 023 \0 005 G A C H A 0021320 \0 \b \0 \0 \0 \0 \0 \0 \0 \0 \0 024 \0 006 M O 0021340 D E R N \0 \n \0 \0 \0 \0 \0 \0 002 \0 \0 024 0021360 \0 006 M O D E R N \0 \n \0 \0 \0 \0 \0 \0 0021400 \0 \0 \0 024 \0 006 M O D E R N \0 016 \0 \0 0021420 \0 \0 \0 \0 \0 \0 \0 024 \0 006 M O D E R N 0021440 \0 \f \0 \0 \0 \0 \0 \0 001 \0 \0 024 \0 006 M O 0021460 D E R N \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 023 0021500 \0 005 G A C H A \0 \n \0 \0 \0 \0 \0 \0 \0 0021520 \0 \0 023 \0 005 G A C H A \0 \n \0 \0 \0 \0 0021540 \0 \0 001 \0 \0 ? \0 1 ( D E F A U L T 0021560 F O N T 1 ( G A C H A 1 0 0021600 ) ( G A C H A 8 ) ( T E R 0021620 M I N A L 8 ) ) \0 \n \0 \0 \0 \0 \0 0021640 \0 \0 \0 \0 023 \0 005 G A C H A \0 \n \0 \0 0021660 \0 \0 \0 \0 002 \0 \0 023 \0 005 G A C H A \0 0021700 \n \0 \0 \0 \0 \0 \0 \0 \0 \0 ? \0 1 ( D E 0021720 F A U L T F O N T 1 ( G A C 0021740 H A 1 0 ) ( G A C H A 8 ) 0021760 ( T E R M I N A L 8 ) ) \0 \n 0022000 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 002 \0 002 0022020 \0 \0 \0 1 \0 \0 \0 \0 004 \0 \0 \0 \0 \0 002 \0 0022040 002 \0 \0 \0 001 \0 \0 \0 \0 \f \0 \0 \0 \0 \0 002 0022060 \0 001 \0 \0 \0 ? \0 \0 \0 \0 006 \0 \0 \0 006 \0 0022100 \0 \0 \0 \a \0 \0 \0 002 \0 \0 \0 \0 006 \0 \0 \0 0022120 \v \0 \0 \0 \0 \a \0 \0 \0 005 \0 \0 \0 \0 006 \0 0022140 \0 \0 002 \0 \0 \0 \0 \a \0 \0 \0 031 \0 \0 \0 \0 0022160 006 \0 \0 \0 002 \0 \0 \0 \0 \a \0 \0 \0 t \0 \0 0022200 \0 \0 006 \0 \0 \0 002 \0 \0 \0 \0 \a \0 \0 \0 ) 0022220 \0 \0 \0 \0 006 \0 \0 \0 002 \0 \0 \0 \0 \a \0 \0 0022240 \0 337 \0 \0 \0 \0 006 \0 \0 \0 002 \0 \0 \0 \0 \a 0022260 \0 \0 \0 Q \0 \0 \0 \0 006 \0 \0 \0 002 \0 \0 \0 0022300 \0 \a \0 \0 \0 7 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 0022320 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 \0 0022340 \0 002 \0 001 \0 \0 \0 354 \0 \0 \0 \0 006 \0 \0 \0 0022360 002 \0 \0 \0 \0 \a \0 \0 \0 5 \0 \0 \0 \0 006 \0 0022400 \0 \0 002 \0 \0 \0 \0 \a \0 \0 \0 L \0 \0 \0 \0 0022420 006 \0 \0 \0 002 \0 \0 \0 \0 \a \0 \0 001 004 \0 \0 0022440 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 0022460 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 9 0022500 \0 \0 \0 \0 006 \0 \0 \0 002 \0 \0 \0 \0 \a \0 \0 0022520 \0 306 \0 \0 \0 \0 006 \0 \0 \0 025 \0 \0 \0 \0 005 0022540 \0 \0 \0 313 \0 \0 \0 \0 006 \0 \0 \0 . \0 \0 \0 0022560 \0 005 \0 \0 \0 034 \0 \0 \0 \0 006 \0 \0 \0 \a \0 0022600 \0 \0 \0 \a \0 \0 \0 017 \0 \0 \0 \0 006 \0 \0 \0 0022620 ' \0 \0 \0 \0 005 \0 \0 \0 004 \0 \0 \0 \0 006 \0 0022640 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 0022660 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 021 \0 \0 \0 \0 0022700 006 \0 \0 \0 002 \0 \0 \0 \0 \a \0 \0 001 v \0 \0 0022720 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 0022740 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 / 0022760 \0 \0 \0 \0 006 \0 \0 \0 002 \0 \0 \0 \0 \a \0 \0 0023000 \0 N \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 \a 0023020 \0 \0 \0 % \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 0023040 001 \0 \0 \0 002 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 0023060 \0 001 \0 \0 \0 + \0 \0 \0 \0 006 \0 \0 \0 006 \0 0023100 \0 \0 \0 002 \0 \0 \0 036 \0 \0 \0 \0 006 \0 \0 \0 0023120 \f \0 \0 \0 \0 \a \0 \0 \0 002 \0 \0 \0 \0 006 \0 0023140 \0 \0 006 \0 \0 \0 \0 \a \0 \0 \0 002 \0 \0 \0 \0 0023160 006 \0 \0 \0 006 \0 \0 \0 \0 \a \0 \0 \0 005 \0 \0 0023200 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 \a \0 \0 \0 002 0023220 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 0023240 001 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 0023260 \0 \f \0 \0 \0 \0 \n \0 \0 \0 001 \0 \0 \0 \0 \t 0023300 \0 \0 \0 \t \0 \0 \0 \0 \b \0 \0 \0 , \0 \0 \0 0023320 \0 \a \0 \0 \0 002 \0 \0 \0 \0 \t \0 \0 \0 \b \0 0023340 \0 \0 \0 \b \0 \0 \0 002 \0 \0 \0 \0 \t \0 \0 \0 0023360 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 \t \0 \0 0023400 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 0023420 \0 \0 \f \0 \0 \0 \0 \a \0 \0 \0 031 \0 \0 \0 \0 0023440 006 \0 \0 \0 \a \0 \0 \0 \0 005 \0 \0 \0 035 \0 \0 0023460 \0 \0 006 \0 \0 \0 \t \0 \0 \0 \0 \a \0 \0 \0 305 0023500 \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 \a \0 \0 0023520 \0 r \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 \a 0023540 \0 \0 \0 \t \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 0023560 \0 \a \0 \0 \0 027 \0 \0 \0 \0 006 \0 \0 \0 006 \0 0023600 \0 \0 \0 \a \0 \0 \0 2 \0 \0 \0 \0 006 \0 \0 \0 0023620 \f \0 \0 \0 \0 \a \0 \0 \0 ) \0 \0 \0 \0 006 \0 0023640 \0 \0 \t \0 \0 \0 \0 \b \0 \0 \0 ` \0 \0 \0 \0 0023660 006 \0 \0 \0 \n \0 \0 \0 \0 \b \0 \0 \0 y \0 \0 0023700 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 0023720 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 006 0023740 \0 \0 \0 \0 \n \0 \0 \0 001 \0 \0 \0 \0 \t \0 \0 0023760 \0 004 \0 \0 \0 \0 \b \0 \0 \0 005 \0 \0 \0 \0 \t 0024000 \0 \0 \0 003 \0 \0 \0 \0 \b \0 \0 \0 005 \0 \0 \0 0024020 \0 \t \0 \0 \0 003 \0 \0 \0 \0 \b \0 \0 \0 006 \0 0024040 \0 \0 \0 \t \0 \0 \0 \r \0 \0 \0 \0 \b \0 \0 \0 0024060 \n \0 \0 \0 \0 \t \0 \0 \0 \f \0 \0 \0 \0 \b \0 0024100 \0 \0 002 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 0024120 \0 \0 \0 001 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 0024140 001 \0 \0 \0 \a \0 \0 \0 \0 \a \0 \0 \0 001 \0 \0 0024160 \0 \0 \t \0 \0 \0 o \0 \0 \0 \0 006 \0 \0 \0 005 0024200 \0 \0 \0 \0 \v \0 \0 \0 017 \0 \0 \0 \0 006 \0 \0 0024220 \0 004 \0 \0 \0 \0 \b \0 \0 \0 h \0 \0 \0 \0 006 0024240 \0 \0 \0 006 \0 \0 \0 \0 \a \0 \0 \0 030 \0 \0 \0 0024260 \0 006 \0 \0 \0 004 \0 \0 \0 \0 \b \0 \0 \0 5 \0 0024300 \0 \0 \0 006 \0 \0 \0 \r \0 \0 \0 \0 005 \0 \0 001 0024320 026 \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 \a \0 0024340 \0 \0 023 \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 0024360 \a \0 \0 \0 020 \0 \0 \0 \0 006 \0 \0 \0 005 \0 \0 0024400 \0 \0 \a \0 \0 \0 005 \0 \0 \0 \0 006 \0 \0 \0 004 0024420 \0 \0 \0 \0 \b \0 \0 \0 * \0 \0 \0 \0 006 \0 \0 0024440 \0 006 \0 \0 \0 \0 \a \0 \0 \0 002 \0 \0 \0 \0 006 0024460 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 0024500 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 006 \0 \0 \0 0024520 \0 \n \0 \0 \0 002 \0 \0 \0 \0 \t \0 \0 \0 005 \0 0024540 \0 \0 \0 \b \0 \0 \0 \r \0 \0 \0 \0 \t \0 \0 \0 0024560 \f \0 \0 \0 \0 \b \0 \0 \0 002 \0 \0 \0 \0 \t \0 0024600 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 \t 0024620 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 0024640 006 \0 \0 \0 006 \0 \0 \0 \0 \a \0 \0 \0 . \0 \0 0024660 \0 \0 006 \0 \0 \0 005 \0 \0 \0 \0 \b \0 \0 \0 0 0024700 \0 \0 \0 \0 006 \0 \0 \0 \f \0 \0 \0 \0 \a \0 \0 0024720 \0 002 \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 \a 0024740 \0 \0 \0 V \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 0024760 \0 \a \0 \0 \0 026 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 0025000 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 \0 0025020 \0 002 \0 001 \0 \0 \0 006 \0 \0 \0 \0 \n \0 \0 \0 0025040 \r \0 \0 \0 \0 \t \0 \0 \0 \f \0 \0 \0 \0 \b \0 0025060 \0 \0 002 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 0025100 \0 \0 \0 001 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 0025120 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 0025140 \0 \0 \a \0 \0 \0 334 \0 \0 \0 \0 006 \0 \0 \0 006 0025160 \0 \0 \0 \0 \a \0 \0 \0 233 \0 \0 \0 \0 006 \0 \0 0025200 \0 006 \0 \0 \0 \0 \a \0 \0 \0 5 \0 \0 \0 \0 006 0025220 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 0025240 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 ' \0 \0 \0 0025260 \0 006 \0 \0 \0 \t \0 \0 \0 \0 \a \0 \0 001 247 \0 0025300 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 0025320 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 0025340 016 \0 \0 \0 \0 \a \0 \0 \0 002 \0 \0 \0 \0 006 \0 0025360 \0 \0 005 \0 \0 \0 \0 \a \0 \0 \0 005 \0 \0 \0 \0 0025400 006 \0 \0 \0 005 \0 \0 \0 \0 \a \0 \0 \0 7 \0 \0 0025420 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 0025440 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 / 0025460 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 0025500 Q \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 0025520 \0 001 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 0025540 \0 \0 4 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 0025560 \0 \0 \0 001 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 0025600 001 \0 \0 \0 " \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 0025620 \0 001 \0 \0 \0 027 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 0025640 002 \0 001 \0 \0 \0 026 \0 \0 \0 \0 \t \0 \0 \0 \0 0025660 \0 002 \0 001 \0 \0 \0 036 \0 \0 \0 \0 \t \0 \0 \0 0025700 \0 \0 002 \0 001 \0 \0 \0 2 \0 \0 \0 \0 \t \0 \0 0025720 \0 \0 \0 002 \0 001 \0 \0 \0 @ \0 \0 \0 \0 \t \0 0025740 \0 \0 \0 \0 002 \0 001 \0 \0 \0 034 \0 \0 \0 \0 \t 0025760 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 \a \0 \0 \0 \0 0026000 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 003 \0 \0 \0 0026020 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 0026040 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 035 \0 0026060 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 \n 0026100 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 0026120 I \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 0026140 \0 & \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 0026160 \0 \0 034 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 0026200 \0 \0 \0 001 \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 0026220 001 \0 \0 \0 030 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 0026240 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 0026260 002 \0 001 \0 \0 \0 006 \0 \0 \0 \0 \t \0 \0 \0 ) 0026300 \0 \0 \0 \0 006 \0 \0 \0 \a \0 \0 \0 \0 \t \0 \0 0026320 \0 370 \0 \0 \0 \0 006 \0 \0 \0 \a \0 \0 \0 \0 \t 0026340 \0 \0 \0 222 \0 \0 \0 \0 006 \0 \0 \0 003 \0 \0 \0 0026360 \0 \t \0 \0 \0 I \0 \0 \0 \0 006 \0 \0 \0 006 \0 0026400 \0 \0 \0 \t \0 \0 \0 - \0 \0 \0 \0 006 \0 \0 \0 0026420 y \0 \0 \0 \0 003 \0 \0 \0 004 \0 \0 \0 \0 001 \0 0026440 \0 \0 261 \0 \0 \0 \0 003 \0 \0 \0 001 \0 \0 \0 \0 0026460 006 \0 \0 \0 001 \0 \0 \0 \0 003 \0 \0 \0 \0 \0 002 0026500 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 0026520 002 \0 001 \0 \0 \0 \r \0 \0 \0 \0 005 \0 \0 \0 \a 0026540 \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 \0 \t \0 \0 0026560 \0 020 \0 \0 \0 \0 006 \0 \0 \0 005 \0 \0 \0 \0 \t 0026600 \0 \0 \0 < \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 \0 0026620 \0 \t \0 \0 \0 021 \0 \0 \0 \0 006 \0 \0 \0 016 \0 0026640 \0 \0 \0 \t \0 \0 \0 002 \0 \0 \0 \0 006 \0 \0 \0 0026660 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 0026700 \0 \0 \0 002 \0 001 \0 \0 \0 & \0 \0 \0 \0 006 \0 0026720 \0 \0 005 \0 \0 \0 \0 \t \0 \0 \0 005 \0 \0 \0 \0 0026740 006 \0 \0 \0 005 \0 \0 \0 \0 \t \0 \0 \0 034 \0 \0 0026760 \0 \0 006 \0 \0 \0 005 \0 \0 \0 \0 \t \0 \0 \0 022 0027000 \0 \0 \0 \0 006 \0 \0 \0 016 \0 \0 \0 \0 \t \0 \0 0027020 \0 302 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 \0 0027040 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 001 0027060 \0 \0 002 v \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 \0 0027100 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 002 0027120 \0 001 \0 \0 \0 304 \0 \0 \0 \0 006 \0 \0 \0 \0 \0 0027140 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 \0 0027160 \0 002 \0 001 \0 \0 \0 031 \0 \0 \0 \0 005 \0 \0 \0 0027200 8 \0 \0 \0 \0 006 \0 \0 \0 \b \0 \0 \0 \0 \t \0 0027220 \0 \0 002 \0 \0 \0 \0 006 \0 \0 \0 \b \0 \0 \0 \0 0027240 \t \0 \0 \0 002 \0 \0 \0 \0 006 \0 \0 \0 006 \0 \0 0027260 \0 \0 \t \0 \0 \0 \t \0 \0 \0 \0 006 \0 \0 \0 \0 0027300 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 0027320 \0 \0 002 \0 001 \0 \0 \0 353 \0 \0 \0 \0 006 \0 \0 0027340 \0 \0 \0 002 \0 002 \0 \0 \0 001 \0 \0 \0 \0 006 \0 0027360 \0 \0 \0 \0 002 \0 002 \0 \0 " g 001 ? z 272 0027377