$ od -c -N 50000 [eris]<LispCore>SOURCES>CMLTYPES.DCOM!15 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 " I N T 0000060 E R L I S P " ) \r ( f i l e c r 0000100 e a t e d " 1 6 - O c t - 8 6 0000120 1 6 : 5 6 : 0 2 " ( " c o m 0000140 p i l e d o n " { e r i s 0000160 } < l i s p c o r e > s o u r c 0000200 e s > c m l t y p e s . \ ; 1 3 0000220 ) \r " 1 4 - O c t - 8 6 2 1 0000240 : 0 6 : 0 5 " " C O M P I L E 0000260 - F I L E d " | i n | " X e 0000300 r o x L i s p 1 4 - O c t - 0000320 8 6 . . . " | d a t e d | 0000340 " 1 4 - O c t - 8 6 2 2 : 2 4 0000360 : 4 7 " ) \r ( f i l e c r e a t 0000400 e d " 1 6 - O c t - 8 6 1 6 0000420 : 5 5 : 0 0 " { e r i s } < l 0000440 i s p c o r e > s o u r c e s > 0000460 c m l t y p e s . \ ; 1 3 4 6 0000500 0 5 3 | c h a n g e s | | t 0000520 o : | ( f n s \r \ \ t y p e 0000540 p . p r e d ) | p r e v i o u 0000560 s | | d a t e : | " 1 6 - O 0000600 c t - 8 6 1 3 : 5 1 : 5 0 " 0000620 { e r i s } < l i s p c o r e > 0000640 s o u r c e s > c m l t y p e s 0000660 . \ ; 1 2 ) \r ( r p a q q c m 0000700 l t y p e s c o m s ( ( * | 0000720 ; ; ; | " P r e d i c a t e s 0000740 " ) ( f u n c t i o n s c l 0000760 : e q u a l c l : e q u a l p 0001000 ) ( * \ ; \r " E Q L i s 0001020 n o w i n t h e i n i t 0001040 " ) ( * | ; ; ; | " T y p 0001060 e p a n d f r i e n d s " ) 0001100 ( f u n c t i o n s c o e r 0001120 c e c l : t y p e c a s e t 0001140 y p e p c l : t y p e - o f \r 0001160 ) ( * | ; ; ; | " O p t i 0001200 m i z e r s " ) ( o p t i m i 0001220 z e r s c o e r c e f a l s 0001240 e t r u e t y p e p c l : 0001260 n u m b e r p c l : f l o a t 0001300 p ) ( * \ ; \r " O p t i m 0001320 i z e b y c o n s t a n t 0001340 f o l d a n d c o e r c e 0001360 t o E Q w h e r e p o s s 0001400 i b l e " ) ( p r o p b y t 0001420 e m a c r o c l : e q u a l 0001440 c l : e q u a l p ) ( * \r | 0001460 ; ; ; | " f o r D E F T Y P 0001500 E " ) ( f u n c t i o n s c 0001520 l : d e f t y p e t y p e - e 0001540 x p a n d e r s e t f - t y p 0001560 e - e x p a n d e r ) ( d e f 0001600 i n e - t y p e s t y p e s ) 0001620 ( \r s e t f s t y p e - e x 0001640 p a n d e r ) ( * | ; ; ; | 0001660 " S u p p o r t f u n c t i 0001700 o n s " ) ( f n s a r r a y 0001720 - t y p e f a l s e s y m b 0001740 o l - t y p e t r u e \ \ r 0001760 a n g e . t y p e \r ) ( f u n 0002000 c t i o n s c l : n u m b e r 0002020 p c l : f l o a t p ) ( * 0002040 | ; ; ; | " f o r S U B T Y 0002060 P E P " ) ( f u n c t i o n 0002100 s s i : : d a t a t y p e - p 0002120 \r s i : : s u b - d a t a t y 0002140 p e - p s u b - s u b t y p e 0002160 p c l : s u b t y p e p t y 0002200 p e - e x p a n d h a n d l e 0002220 - t y p e 1 - m e t a - e x p r 0002240 e s s i o n \r h a n d l e - t 0002260 y p e 2 - m e t a - e x p r e s 0002300 s i o n ) ( v a r i a b l e s 0002320 % n o - s u p e r - t y p e 0002340 t y p e - m e t a - e x p r e s 0002360 s i o n s ) ( * | ; ; ; | 0002400 " F o r T Y P E P " ) ( \r f 0002420 n s \ \ t y p e p . p r e d ) 0002440 ( t y p e s c l : a t o m 0002460 b i g n u m b i t c l : c h 0002500 a r a c t e r c o n s c l : 0002520 d o u b l e - f l o a t c l : 0002540 f i x n u m f l o a t \r c l 0002560 : f u n c t i o n c l : h a s 0002600 h - t a b l e i n t e g e r 0002620 c l : k e y w o r d l i s t 0002640 c l : l o n g - f l o a t c l 0002660 : m e m b e r c l : m o d n 0002700 u l l c l : n u m b e r \r p 0002720 a c k a g e c l : s h o r t - 0002740 f l o a t c l : : s i g n e d 0002760 - b y t e c l : s t a n d a r 0003000 d - c h a r c l : s t r i n g 0003020 - c h a r c l : s i n g l e - 0003040 f l o a t c l : s y m b o l 0003060 \r c l : : u n s i g n e d - b y 0003100 t e c l : r a t i o n a l c 0003120 l : r e a d t a b l e c l : c 0003140 o m m o n c l : c o m p i l e 0003160 d - f u n c t i o n c o m p l 0003200 e x s e q u e n c e ) ( * 0003220 | ; ; ; | \r " A r r a y T y 0003240 p e s " ) ( t y p e s c l : 0003260 a r r a y c l : v e c t o r 0003300 c l : s i m p l e - s t r i n g 0003320 s t r i n g c l : s i m p l 0003340 e - a r r a y c l : s i m p l 0003360 e - v e c t o r \r c l : b i t 0003400 - v e c t o r c l : s i m p l 0003420 e - b i t - v e c t o r ) ( * 0003440 | ; ; ; | \r " f o r T Y P 0003460 E - O F I n t e r l i s p t 0003500 y p e s t h a t h a v e d 0003520 i f f e r e n t c o m m o n 0003540 L i s p n a m e s " ) ( p r 0003560 o p c m l t y p e c h a r a 0003600 c t e r f i x p \r f l o a t 0003620 p g e n e r a l - a r r a y 0003640 l i s t p l i t a t o m o n 0003660 e d - a r r a y s m a l l p 0003700 s t r i n g p h a r r a y p 0003720 t w o d - a r r a y ) ( p r o 0003740 p \r c m l s u b t y p e d e s 0003760 c r i m i n a t o r c l : s y 0004000 m b o l c l : a r r a y ) ( 0004020 * | ; ; ; | \r " t e l l t 0004040 h e f i l e p k g w h a t 0004060 t o d o w i t h t h e \ 0004100 " d e f t y p e \ " p r o p e 0004120 r t y " ) ( c o m s ( p r o 0004140 p p r o p t y p e c l : d e 0004160 f t y p e ) ) ( * \r | ; ; ; 0004200 | " C o m p i l e r o p t i 0004220 o n s " ) ( p r o p f i l e 0004240 t y p e c m l t y p e s ) ( 0004260 d e c l a r e \ : d o n t e v 0004300 a l @ l o a d d o e v a l @ c 0004320 o m p i l e d o n t c o p y 0004340 ( \r l o c a l v a r s . t ) 0004360 ) ( d e c l a r e \ : d o n 0004400 t e v a l @ l o a d d o e v a 0004420 l @ c o m p i l e d o n t c o 0004440 p y c o m p i l e r v a r s 0004460 ( a d d v a r s ( n l a m a ) 0004500 ( n l a m l ) \r ( l a m a ) 0004520 ) ) ) ) \r c l : e q u a l d 1 0004540 \r ( l ( 1 y 0 x ) ) \0 0004560 210 004 \0 \0 002 @ A : 265 003 202 261 \0 200 @ 021 0004600 1 003 H d 303 \0 \0 262 030 277 A 003 264 o @ 001 0004620 A 001 \n \0 \0 264 f @ 002 A 002 \n \0 \0 020 \t 0004640 \0 \0 233 A \t \0 \0 264 T @ A \n \0 \0 020 H 0004660 d \t \0 \0 262 7 277 A \t \0 \0 264 @ @ \t \0 0004700 \0 Y A \t \0 \0 : 264 4 I j 273 272 J K 363 0004720 221 h 200 i 221 i 020 @ K 266 A K 266 360 221 h 0004740 200 i 221 h 020 K k 324 273 260 344 303 \0 \0 264 \r 0004760 A \t \0 \0 264 \a @ A \n \0 \0 020 \0 ( 1 3 0005000 3 % p a t h n a m e - e q u a 0005020 l 1 2 6 c l : p a t h n a m 0005040 e p 8 0 c l : l e n g t h 0005060 7 5 c l : l e n g t h 6 9 0005100 c l : b i t - v e c t o r - p 0005120 6 2 c l : b i t - v e c t o r 0005140 - p 5 6 c l : s t r i n g = 0005160 4 9 c l : s t r i n g p 4 0005200 4 c l : s t r i n g p 4 0 0005220 c l : e q u a l 3 1 c l : e 0005240 q u a l ) \r ( 1 2 0 p a t h n 0005260 a m e 1 7 l i s t p ) \r ( ) 0005300 \r c l : e q u a l p d 1 \r ( l 0005320 ( 1 y 0 x ) ) 001 177 \r \0 0005340 \0 002 @ A : 265 003 202 261 \0 250 @ 021 301 \f H 0005360 d 3 020 237 277 A 3 020 264 003 202 261 \0 225 @ A 0005400 \n \0 \0 020 303 \0 \0 262 033 A 003 264 003 202 261 \0 0005420 202 @ 001 A 001 \n \0 \0 264 x @ 002 A 002 \n \0 0005440 \0 020 H d 303 \0 \0 262 G 277 A 303 \0 \0 264 b 0005460 @ 006 \0 \0 323 271 l a I 363 221 h 200 i 235 I 0005500 l z 363 221 h 200 i 224 I l 325 200 I A 006 0005520 \0 \0 323 272 l a J 363 221 h 200 i 235 J l z 0005540 363 221 h 200 i 224 J l 325 200 J 360 020 \t \0 0005560 \0 233 A \t \0 \0 264 032 @ A \n \0 \0 020 H d 0005600 303 \0 \0 234 277 A \t \0 \0 264 \a @ A \n \0 \0 0005620 020 \t \0 \0 262 9 A \t \0 \0 264 366 @ \t \0 \0 0005640 [ A \t \0 \0 : 264 352 K j 275 274 L M 363 221 0005660 h 200 i 222 261 \0 217 @ M 266 A M 266 \n \0 \0 0005700 221 h 200 i 221 h 020 M k 324 275 260 341 H \t \0 0005720 \0 262 R A \t \0 \0 264 271 @ \t \0 \0 A \t \0 0005740 \0 \n \0 \0 264 254 @ \t \0 \0 A \t \0 \0 _ 016 0005760 277 276 @ \t \0 \0 j _ 022 277 _ 020 277 O 020 O 0006000 022 363 221 h 200 i 263 = N O 022 266 O 016 O 022 0006020 266 \n \0 \0 221 h 200 i 263 255 O 022 k 324 _ 022 0006040 277 260 334 @ \t \0 \0 _ 024 A \t \0 \0 360 264 003 0006060 202 261 377 _ O 024 \t \0 \0 d 242 261 377 U _ 026 0006100 003 265 004 i 020 001 _ 030 @ \n \0 \0 O 030 A \n 0006120 \0 \0 \n \0 \0 264 003 202 261 377 n O 026 002 260 340 0006140 \0 ( 3 7 0 c l : e q u a l p 0006160 3 6 7 f e t c h f i e l d 3 0006200 6 1 f e t c h f i e l d 3 4 0006220 2 g e t d e s c r i p t o r s 0006240 3 3 0 t y p e n a m e 3 2 0006260 4 t y p e n a m e 3 0 5 c 0006300 l : e q u a l p 2 7 5 c l : 0006320 a r r a y - t o t a l - s i z e 0006340 2 6 7 \ \ f l a t t e n - a 0006360 r r a y 2 6 3 \ \ f l a t t 0006400 e n - a r r a y 2 5 7 c l : 0006420 e q u a l 2 5 4 c l : a r r 0006440 a y - d i m e n s i o n s 2 5 0006460 0 c l : a r r a y - d i m e n 0006500 s i o n s 2 4 4 c l : a r r 0006520 a y p 2 3 8 c l : a r r a y 0006540 p 2 2 1 c l : e q u a l p 0006560 1 9 4 c l : l e n g t h 1 8 0006600 9 c l : l e n g t h 1 8 3 0006620 c l : v e c t o r p 1 7 7 c 0006640 l : v e c t o r p 1 7 3 % p 0006660 a t h n a m e - e q u a l 1 6 0006700 6 c l : p a t h n a m e p 1 0006720 5 4 s t r i n g - e q u a l 0006740 1 4 7 c l : s t r i n g p 1 0006760 4 2 c l : s t r i n g p 6 2 0007000 c l : e q u a l p 5 3 c l 0007020 : e q u a l p 3 2 % = ) \r ( 0007040 1 6 0 p a t h n a m e 1 1 1 0007060 c h a r a c t e r 8 1 c h 0007100 a r a c t e r 7 5 c h a r a 0007120 c t e r 6 8 c h a r a c t e 0007140 r 3 6 l i s t p ) \r ( ) \r c 0007160 o e r c e d 1 \r ( l ( 1 r 0007200 e s u l t - t y p e 0 o b j 0007220 e c t ) ) \0 b \0 \0 \0 002 A d i 360 0007240 221 @ 020 g \0 \0 360 224 @ \t \0 \0 020 A g \0 0007260 \0 360 263 026 A g \0 \0 360 255 A g \0 \0 360 247 0007300 A d g \0 \0 360 225 277 @ 006 \0 \0 020 g \0 \0 0007320 360 234 @ d d \t \0 \0 263 312 277 \t \0 \0 020 @ 0007340 \t \0 \0 246 @ 224 @ 303 \0 \0 230 A g \0 \0 @ 0007360 \v \0 \0 020 o \0 \0 \0 A \n \0 \0 020 \0 ( 9 0007400 5 c l : e r r o r 8 6 c l 0007420 : m a p 7 0 c l : v e c t o 0007440 r p 6 5 c o m p l e x 5 9 0007460 c l : c o m p l e x p 1 5 0007500 c l : c h a r a c t e r ) \r ( 8 0007520 2 c l : i d e n t i t y 7 7 0007540 l i s t p 5 1 c o m p l e 0007560 x 4 7 f l o a t p 4 0 c 0007600 l : l o n g - f l o a t 3 3 0007620 c l : d o u b l e - f l o a t 0007640 2 7 c l : s i n g l e - f l o 0007660 a t 2 0 f l o a t 9 c l 0007700 : c h a r a c t e r ) \r ( 9 1 0007720 " C a n n o t c o e r c e 0007740 t o t y p e : ~ S " ) \r ( l 0007760 e t * ( ( a 0 4 7 2 ( q u o 0010000 t e c o e r c e ) ) ( a 0 4 0010020 7 3 ( q u o t e c l : f u n 0010040 c t i o n ) ) ( a 0 4 7 4 \r 0010060 " C o e r c e o b j e c t t 0010100 o r e s u l t - t y p e i f 0010120 p o s s i b l e " ) ) ( p r 0010140 o g n ( c o n d ( ( c l : f 0010160 b o u n d p ( q u o t e s e 0010200 t - d o c u m e n t a t i o n ) 0010220 ) ( \r s e t - d o c u m e n t 0010240 a t i o n a 0 4 7 2 a 0 4 7 0010260 3 a 0 4 7 4 ) ) ) a 0 4 7 4 0010300 ) ) \r | e x p a n d - T Y P E C 0010320 A S E A 0 0 0 1 | d 1 \r ( l 0010340 ( 0 c l : : f o r m ) ) \0 5 0010360 \0 \0 \0 001 @ 001 d g \0 \0 360 243 d i 360 222 0010400 277 i 201 277 h 222 i 260 024 g \0 \0 g \0 \0 g 0010420 \0 \0 @ 001 h 032 032 h 032 032 032 @ d 002 245 277 0010440 o \0 \0 \0 200 002 032 020 \0 n i l \r ( 2 9 0010460 q u o t e 2 6 c l : : $ $ 0010500 t y p e - v a l u e 2 3 t y 0010520 p e p 5 c l : o t h e r w i 0010540 s e ) \r ( 4 7 ( n i l ) ) \r 0010560 c l : : | e x p a n d - T Y P E 0010600 C A S E | d 1 \r ( l ( 1 $ 0010620 $ m a c r o - e n v i r o n m e 0010640 n t 0 $ $ m a c r o - f o r 0010660 m ) ) \0 ( 003 \0 \0 002 @ 002 021 ! 002 H 0010700 001 271 H 002 272 g \0 \0 g \0 \0 I h 032 032 h 0010720 032 g \0 \0 g \0 \0 J \n \0 \0 032 h 032 032 032 0010740 020 \0 ( 3 2 c l : m a p c a r ) 0010760 \r ( 2 8 | e x p a n d - T Y P 0011000 E C A S E A 0 0 0 1 | 2 5 c 0011020 o n d 1 6 c l : : $ $ t y p 0011040 e - v a l u e 1 3 l e t ) \r 0011060 ( ) \r ( s e t f - m a c r o - f 0011100 u n c t i o n ( q u o t e c 0011120 l : t y p e c a s e ) ( q u o 0011140 t e c l : : | e x p a n d - T 0011160 Y P E C A S E | ) ) \r ( l e t * 0011200 ( ( a 0 4 7 7 ( q u o t e 0011220 c l : t y p e c a s e ) ) ( a 0011240 0 4 7 8 ( q u o t e c l : f 0011260 u n c t i o n ) ) ( a 0 4 7 9 0011300 \r " T y p e d i s p a t c h 0011320 , o r d e r i s i m p o r 0011340 t a n t , m o r e s p e c i 0011360 f i c t y p e s s h o u l d 0011400 a p p e a r f i r s t " ) ) 0011420 ( p r o g n ( c o n d ( ( 0011440 c l : f b o u n d p \r ( q u o 0011460 t e s e t - d o c u m e n t a 0011500 t i o n ) ) ( s e t - d o c u 0011520 m e n t a t i o n a 0 4 7 7 0011540 a 0 4 7 8 a 0 4 7 9 ) ) ) a 0011560 0 4 7 9 ) ) \r t y p e p d 1 \r 0011600 ( l ( 1 t y p e 0 o b j 0011620 e c t ) ) \0 \f \0 \0 \0 002 @ k A \t 0011640 \0 \0 016 264 003 i 020 \0 ( 5 \ \ t y p 0011660 e p . p r e d ) \r n i l \r ( ) \r 0011700 ( l e t * ( ( a 0 4 8 0 ( q 0011720 u o t e t y p e p ) ) ( a 0 0011740 4 8 1 ( q u o t e c l : f u 0011760 n c t i o n ) ) ( a 0 4 8 2 0012000 " C h e c k i f O B J E C T 0012020 i s o f t y p e T Y P E 0012040 " ) ) ( \r p r o g n ( c o n 0012060 d ( ( c l : f b o u n d p ( 0012100 q u o t e s e t - d o c u m e 0012120 n t a t i o n ) ) ( s e t - d 0012140 o c u m e n t a t i o n a 0 4 0012160 8 0 a 0 4 8 1 a 0 4 8 2 ) ) 0012200 ) a 0 4 8 2 ) ) \r c l : t y p 0012220 e - o f d 1 \r ( l ( 0 x ) 0012240 ) \0 $ 002 \0 \0 001 @ \t \0 \0 021 021 001 H 0012260 g \0 \0 \n \0 \0 265 003 H X d g \0 \0 \n \0 0012300 \0 Y 225 @ k I 016 265 003 H 020 \0 ( 2 4 0012320 g e t p r o p 1 3 g e t p r 0012340 o p 3 t y p e n a m e ) \r ( 0012360 2 1 c m l s u b t y p e d e s 0012400 c r i m i n a t o r 1 0 c m 0012420 l t y p e ) \r ( ) \r c l : : | o 0012440 p t i m i z e - C O E R C E | 0012460 d 1 \r ( l ( 2 $ $ c t x 1 0012500 $ $ e n v 0 $ $ w h o l e 0012520 ) ) \0 i 003 \0 \0 003 @ 002 021 ! 002 H 001 0012540 271 H 002 001 \t \0 \0 001 Z d i 360 221 I 020 g 0012560 \0 \0 360 227 g \0 \0 I h 032 032 020 J d g \0 0012600 \0 360 262 033 277 g \0 \0 g \0 \0 I h 032 032 I 0012620 g \0 \0 I h 032 032 h 032 032 032 032 020 g \0 \0 0012640 360 263 024 J g \0 \0 360 253 J g \0 \0 360 245 J 0012660 g \0 \0 360 227 g \0 \0 I h 032 032 020 g \0 \0 0012700 020 \0 ( 1 3 c o n s t a n t e x 0012720 p r e s s i o n p ) \r ( 1 0 2 0012740 c o m p i l e r : p a s s 9 4 0012760 f l o a t 8 9 c l : l o n 0013000 g - f l o a t 8 3 c l : d o 0013020 u b l e - f l o a t 7 7 c l 0013040 : s i n g l e - f l o a t 7 0 0013060 f l o a t 5 7 c o m p l e 0013100 x 4 9 c l : c o m p l e x p 0013120 4 6 c l : i f 3 9 c o m 0013140 p l e x 2 9 c l : c h a r a 0013160 c t e r 2 4 c l : c h a r a 0013200 c t e r ) \r ( ) \r ( p u t p r o 0013220 p ( q u o t e c o e r c e ) 0013240 ( q u o t e c o m p i l e r 0013260 : o p t i m i z e r - l i s t ) 0013300 ( u n i o n ( g e t p r o p 0013320 ( q u o t e c o e r c e ) 0013340 ( q u o t e \r c o m p i l e r 0013360 : o p t i m i z e r - l i s t ) 0013400 ) ( l i s t ( q u o t e c 0013420 l : : | o p t i m i z e - C O E 0013440 R C E | ) ) ) ) \r | o p t i m i 0013460 z e - F A L S E | d 1 \r ( l 0013500 ( 2 $ $ c t x 1 $ $ e n v 0013520 0 $ $ w h o l e ) ) \0 016 001 0013540 \0 \0 003 @ 002 021 001 \0 g \0 \0 h H 032 032 020 0013560 \0 n i l \r ( 7 p r o g 1 ) \r ( 0013600 ) \r ( p u t p r o p ( q u o t 0013620 e f a l s e ) ( q u o t e 0013640 c o m p i l e r : o p t i m i z 0013660 e r - l i s t ) ( u n i o n 0013700 ( g e t p r o p ( q u o t e 0013720 f a l s e ) ( q u o t e \r c 0013740 o m p i l e r : o p t i m i z e 0013760 r - l i s t ) ) ( l i s t ( 0014000 q u o t e | o p t i m i z e - 0014020 F A L S E | ) ) ) ) \r | o p t i 0014040 m i z e - T R U E | d 1 \r ( l 0014060 ( 2 $ $ c t x 1 $ $ e n 0014100 v 0 $ $ w h o l e ) ) \0 016 0014120 001 \0 \0 003 @ 002 021 001 \0 g \0 \0 i H 032 032 0014140 020 \0 n i l \r ( 7 p r o g 1 ) \r 0014160 ( ) \r ( p u t p r o p ( q u o 0014200 t e t r u e ) ( q u o t e 0014220 c o m p i l e r : o p t i m i z 0014240 e r - l i s t ) ( u n i o n 0014260 ( g e t p r o p ( q u o t e 0014300 t r u e ) ( q u o t e \r c o 0014320 m p i l e r : o p t i m i z e r 0014340 - l i s t ) ) ( l i s t ( q 0014360 u o t e | o p t i m i z e - T 0014400 R U E | ) ) ) ) \r c l : : | o p 0014420 t i m i z e - T Y P E P | d 1 0014440 \r ( l ( 2 $ $ c t x 1 $ 0014460 $ e n v 0 $ $ w h o l e ) ) 0014500 \0 ) 003 \0 \0 003 @ 002 021 ! 002 H 001 271 H 0014520 002 001 \t \0 \0 Z 262 025 g \0 \0 J 001 \t \0 \0 0014540 I h 032 032 o \0 \0 \0 032 032 020 g \0 \0 020 \0 0014560 ( 2 4 \ \ t y p e p . p r e d 0014600 1 3 c o n s t a n t e x p r 0014620 e s s i o n p ) \r ( 3 8 c o m 0014640 p i l e r : p a s s 1 9 a n 0014660 d ) \r ( 3 2 ( t ) ) \r ( p u 0014700 t p r o p ( q u o t e t y p 0014720 e p ) ( q u o t e c o m p i 0014740 l e r : o p t i m i z e r - l i 0014760 s t ) ( u n i o n ( g e t p 0015000 r o p ( q u o t e t y p e p 0015020 ) ( q u o t e \r c o m p i l 0015040 e r : o p t i m i z e r - l i s 0015060 t ) ) ( l i s t ( q u o t e 0015100 c l : : | o p t i m i z e - T 0015120 Y P E P | ) ) ) ) \r c l : : | o 0015140 p t i m i z e - N U M B E R P | 0015160 d 1 \r ( l ( 2 $ $ c t x 0015200 1 $ $ e n v 0 $ $ w h o l 0015220 e ) ) \0 030 001 \0 \0 003 @ 002 001 021 001 \0 0015240 g \0 \0 g \0 \0 H h 032 032 o \0 \0 \0 032 032 0015260 020 \0 n i l \r ( 1 1 n u m b e r 0015300 p 8 a n d ) \r ( 1 9 ( t 0015320 ) ) \r ( p u t p r o p ( q u o 0015340 t e c l : n u m b e r p ) ( 0015360 q u o t e c o m p i l e r : o 0015400 p t i m i z e r - l i s t ) ( 0015420 u n i o n ( g e t p r o p ( 0015440 q u o t e c l : n u m b e r p 0015460 ) ( q u o t e \r c o m p i l 0015500 e r : o p t i m i z e r - l i s 0015520 t ) ) ( l i s t ( q u o t e 0015540 c l : : | o p t i m i z e - N 0015560 U M B E R P | ) ) ) ) \r c l : : 0015600 | o p t i m i z e - F L O A T P 0015620 | d 1 \r ( l ( 2 $ $ c t x 0015640 1 $ $ e n v 0 $ $ w h o 0015660 l e ) ) \0 030 001 \0 \0 003 @ 002 001 021 001 0015700 \0 g \0 \0 g \0 \0 H h 032 032 o \0 \0 \0 032 0015720 032 020 \0 n i l \r ( 1 1 f l o a t 0015740 p 8 a n d ) \r ( 1 9 ( t 0015760 ) ) \r ( p u t p r o p ( q u o 0016000 t e c l : f l o a t p ) ( q 0016020 u o t e c o m p i l e r : o p 0016040 t i m i z e r - l i s t ) ( u 0016060 n i o n ( g e t p r o p ( q 0016100 u o t e c l : f l o a t p ) 0016120 ( q u o t e \r c o m p i l e r 0016140 : o p t i m i z e r - l i s t ) 0016160 ) ( l i s t ( q u o t e c 0016200 l : : | o p t i m i z e - F L O 0016220 A T P | ) ) ) ) \r ( p u t p r o 0016240 p s c l : e q u a l b y t e 0016260 m a c r o c o m p . e q ) \r ( 0016300 p u t p r o p s c l : e q u a 0016320 l p b y t e m a c r o c o m 0016340 p . e q ) \r c l : : | e x p a n 0016360 d - D E F T Y P E | d 1 \r ( l 0016400 ( 1 $ $ m a c r o - e n v i 0016420 r o n m e n t 0 $ $ m a c r 0016440 o - f o r m ) ) 001 ( \f \0 \0 002 @ 0016460 002 \t \0 \0 021 261 \v @ 271 H 001 272 H 002 [ 001 0016500 274 K 002 275 g \0 \0 g \0 \0 J 221 h 200 i 251 0016520 J 004 l 004 360 221 h 200 i 230 o \0 \0 \0 J \n 0016540 \0 \0 277 o \0 \0 \0 J h 032 032 J \t \0 \0 \n 0016560 \0 \0 _ 026 277 L g \0 \0 M J h g \0 \0 o 0016600 \0 \0 \0 \r \a \0 \0 \t \0 \0 _ 024 001 _ 022 277 0016620 O 024 002 _ 020 001 _ 016 277 O 020 002 001 276 g \0 0016640 \0 o \0 \0 \0 g \0 \0 g \0 \0 g \0 \0 O 026 0016660 h 032 032 h 032 032 g \0 \0 g \0 \0 o \0 \0 \0 0016700 O 016 g \0 \0 J O 022 h 032 032 032 h 032 \n \0 0016720 \0 032 032 h 032 032 h 032 032 032 g \0 \0 g \0 \0 0016740 g \0 \0 J h 032 032 h 032 032 g \0 \0 O 026 h 0016760 032 032 h 032 032 032 N 264 034 g \0 \0 g \0 \0 g 0017000 \0 \0 J h 032 032 o \0 \0 \0 032 032 N h 032 032 0017020 032 h 032 032 032 032 032 h 032 032 g \0 \0 o \0 \0 0017040 \0 g \0 \0 g \0 \0 g \0 \0 g \0 \0 J h 032 0017060 032 o \0 \0 \0 g \0 \0 I h 032 032 h 032 032 032 0017100 032 h 032 032 032 h 032 032 032 g \0 \0 J h 032 032 0017120 h 032 032 032 032 020 \0 ( 1 6 1 \ \ a p 0017140 p e n d 2 9 0 \ \ m v l i s 0017160 t 8 7 p a r s e - d e f m a 0017200 c r o 6 6 x c l : p a c k 0017220 6 3 c l : s y m b o l - p a c 0017240 k a g e 5 0 c l : e r r o r 0017260 4 r e m o v e - c o m m e n 0017300 t s ) \r ( 2 8 4 q u o t e 2 0017320 6 4 q u o t e 2 5 3 q u o 0017340 t e 2 5 0 \ \ d e f i n e - 0017360 t y p e - s a v e - d e f n 2 0017400 4 7 f i l e p k g f l g 2 4 0017420 4 a n d 2 3 7 c l : e v a 0017440 l - w h e n 2 1 0 q u o t e 0017460 2 0 7 c l : d o c u m e n t 0017500 a t i o n 2 0 4 c l : s e t 0017520 f 1 8 9 q u o t e 1 7 9 0017540 q u o t e 1 7 6 t y p e - e 0017560 x p a n d e r 1 7 3 c l : s 0017600 e t f 1 4 9 c l : b l o c k 0017620 1 4 0 c l : l a m b d a 1 0017640 3 7 c l : f u n c t i o n 1 0017660 2 6 q u o t e 1 2 3 c l : 0017700 s y m b o l - f u n c t i o n 0017720 1 2 0 c l : s e t f 1 1 3 0017740 c l : e v a l - w h e n 7 9 0017760 : d e f a u l t - d e f a u l t 0020000 7 3 $ $ t y p e - f o r m 0020020 2 6 w i t h o u t - f i l e p 0020040 k g 2 3 p r o g n ) \r ( 2 0020060 6 1 ( q u o t e t y p e s ) 0020100 2 4 1 ( c l : e v a l ) 2 0020120 1 8 ( ( q u o t e t y p e ) 0020140 ) 1 4 4 ( $ $ t y p e - f o 0020160 r m ) 1 1 7 ( c l : e v a l 0020200 c l : c o m p i l e c l : l 0020220 o a d ) \r 8 3 ( q u o t e 0020240 c l : * ) 5 5 " t y p e - e 0020260 x p a n d - " 4 6 " I l l e 0020300 g a l n a m e u s e d i n 0020320 D E F T Y P E : ~ S " ) \r ( 0020340 s e t f - m a c r o - f u n c t 0020360 i o n ( q u o t e c l : d e 0020400 f t y p e ) ( q u o t e c l 0020420 : : | e x p a n d - D E F T Y P 0020440 E | ) ) \r ( a d d t o v a r p 0020460 r e t t y p r i n t m a c r o s 0020500 ( c l : d e f t y p e . p 0020520 p r i n t - d e f i n e r ) ) \r 0020540 t y p e - e x p a n d e r d 1 0020560 \r ( l ( 0 t y p e ) ) \0 , 0020600 001 \0 \0 001 @ 021 001 \0 H d 303 \0 \0 223 277 @ 0020620 260 025 303 \0 \0 264 005 @ 001 212 g \0 \0 H o \0 0020640 \0 \0 \f \0 \0 022 301 002 311 \0 g \0 \0 ' 020 \0 0020660 ( 3 2 c h e c k - t y p e - f 0020700 a i l ) \r ( 4 0 t y p e - e x 0020720 p a n d e r 2 4 t y p e 1 0020740 6 l i s t p 8 l i t a t o 0020760 m ) \r ( 2 9 ( o r c l : s 0021000 y m b o l c o n s ) ) \r | e x 0021020 p a n d - S E T F - T Y P E - E 0021040 X P A N D E R | d 1 \r ( l ( 0021060 1 $ $ m a c r o - e n v i r o 0021100 n m e n t 0 $ $ m a c r o - 0021120 f o r m ) ) \0 034 003 \0 \0 002 @ 002 021 0021140 ! 002 H 001 271 H 002 001 272 g \0 \0 I o \0 \0 0021160 \0 J h 032 032 032 032 020 \0 n i l \r ( 1 4 0021200 p u t ) \r ( 1 9 ( q u o t 0021220 e t y p e - e x p a n d e r ) 0021240 ) \r ( s e t f - m a c r o - f u 0021260 n c t i o n ( q u o t e s e 0021300 t f - t y p e - e x p a n d e r 0021320 ) ( q u o t e | e x p a n d 0021340 - S E T F - T Y P E - E X P A N 0021360 D E R | ) ) \r ( a d d t o v a r 0021400 p r e t t y d e f m a c r o s 0021420 ( t y p e s x ( p * ( 0021440 m a p c a r ( q u o t e x ) 0021460 ( f u n c t i o n ( l a m b 0021500 d a ( i t e m ) ( c l : d o 0021520 ( ( d e f ( \r g e t d e f 0021540 i t e m ( q u o t e t y p e 0021560 s ) ) ) ) ( d e f d e f ) 0021600 ( c l : c e r r o r " R e - f 0021620 e t c h t h e d e f i n i t 0021640 i o n " " N o ~ S d e f i 0021660 n i t i o n f o r ~ S " \r 0021700 ( q u o t e t y p e s ) i t 0021720 e m ) ) ) ) ) ) ) ) \r ( a d d t 0021740 o v a r p r e t t y t y p e l 0021760 s t ( c h a n g e d t y p e s 0022000 l s t t y p e s " C o m m o 0022020 n L i s p t y p e d e f i 0022040 n i t i o n s " ) ) \r ( c o n d 0022060 ( ( n o t ( c l : g e t h a 0022100 s h ( q u o t e t y p e s ) 0022120 * d e f i n i t i o n - h a s 0022140 h - t a b l e * ) ) ( l e t * 0022160 ( ( a 0 4 9 3 ( q u o t e 0022200 t y p e s ) ) ( a 0 4 9 4 \r 0022220 * d e f i n i t i o n - h a s h 0022240 - t a b l e * ) ( a 0 4 9 6 0022260 ( c l : m a k e - h a s h - t a 0022300 b l e ( q u o t e : t e s t 0022320 ) ( q u o t e c l : e q u a 0022340 l ) ( q u o t e : s i z e ) 0022360 5 0 ( \r q u o t e : r e h 0022400 a s h - s i z e ) 5 0 ) ) ) 0022420 ( c l : p u t h a s h a 0 4 9 0022440 3 a 0 4 9 4 a 0 4 9 6 ) ) ) 0022460 ) \r ( a d d t o v a r f i l e 0022500 p k g t y p e s t y p e s ) \r 0022520 ( p u t p r o p s t y p e s 0022540 g e t d e f \ \ d e f i n e - 0022560 t y p e - g e t d e f ) \r ( p u 0022600 t p r o p s t y p e s f i l 0022620 e p k g c o n t e n t s n i l 0022640 l ) \r ( p u t p r o p s t y p 0022660 e s p r o p t y p e t y p e 0022700 s ) \r ( r e m p r o p ( q u o 0022720 t e t y p e - e x p a n d e r 0022740 ) ( q u o t e s e t f - m e 0022760 t h o d - e x p a n d e r ) ) \r 0023000 ( p u t p r o p s t y p e - e 0023020 x p a n d e r s e t f - i n v 0023040 e r s e s e t f - t y p e - e 0023060 x p a n d e r ) \r a r r a y - t 0023100 y p e d 1 \r ( l ( 0 a r r 0023120 a y ) ) \0 241 004 \0 \0 001 @ \t \0 \0 021 0023140 1 003 @ \t \0 \0 262 S H k : 262 > @ \t \0 0023160 \0 271 @ d \t \0 \0 230 277 g \0 \0 I h 032 032 0023200 020 \t \0 \0 227 g \0 \0 I h 032 032 020 @ \t \0 0023220 \0 Z i 360 227 g \0 \0 I h 032 032 020 g \0 \0 0023240 J I h 032 h 032 032 032 020 g \0 \0 @ \t \0 \0 0023260 @ \t \0 \0 h 032 032 032 020 H k : 262 / @ \t 0023300 \0 \0 273 @ d \t \0 \0 230 277 g \0 \0 K h 032 0023320 032 020 \t \0 \0 227 g \0 \0 K h 032 032 020 g \0 0023340 \0 @ \t \0 \0 K h 032 032 032 020 g \0 \0 @ \t 0023360 \0 \0 @ \t \0 \0 h 032 032 032 020 \0 ( 1 5 4 0023400 c l : a r r a y - d i m e n s 0023420 i o n s 1 5 0 c l : a r r a 0023440 y - e l e m e n t - t y p e 1 0023460 3 7 c l : a r r a y - e l e m 0023500 e n t - t y p e 1 2 1 c l : 0023520 b i t - v e c t o r - p 1 0 8 0023540 c l : s t r i n g p 1 0 2 0023560 c l : a r r a y - t o t a l - s 0023600 i z e 8 8 c l : a r r a y - 0023620 d i m e n s i o n s 8 4 c l 0023640 : a r r a y - e l e m e n t - t 0023660 y p e 5 3 c l : a r r a y - 0023700 e l e m e n t - t y p e 4 0 0023720 c l : s i m p l e - b i t - v e 0023740 c t o r - p 2 7 c l : s i m 0023760 p l e - s t r i n g - p 2 1 0024000 c l : a r r a y - t o t a l - s 0024020 i z e 1 0 s i m p l e - a r 0024040 r a y - p 3 c l : a r r a y 0024060 - r a n k ) \r ( 1 4 6 c l : a 0024100 r r a y 1 3 3 c l : v e c t 0024120 o r 1 2 5 c l : b i t - v e 0024140 c t o r 1 1 3 s t r i n g 0024160 8 0 c l : s i m p l e - a r r 0024200 a y 6 8 c l : s i m p l e - 0024220 a r r a y 6 0 c l : s i m p 0024240 l e - v e c t o r 4 4 c l : 0024260 s i m p l e - b i t - v e c t o 0024300 r 3 2 c l : s i m p l e - s 0024320 t r i n g ) \r ( ) \r f a l s e 0024340 d 1 \r n i l \0 003 \0 \0 \0 \0 h 020 \0 0024360 n i l \r n i l \r ( ) \r s y m b o 0024400 l - t y p e d 1 \r ( l ( 0 0024420 x ) ) \0 016 \0 \0 \0 001 @ \t \0 \0 223 g 0024440 \0 \0 020 g \0 \0 020 \0 ( 3 c l : k e 0024460 y w o r d p ) \r ( 1 1 c l : s 0024500 y m b o l 7 c l : k e y w o 0024520 r d ) \r ( ) \r t r u e d 1 \r n 0024540 i l \0 003 \0 \0 \0 \0 i 020 \0 n i l \r 0024560 n i l \r ( ) \r \ \ r a n g e . t 0024600 y p e d 1 \r ( l ( 3 r a n 0024620 g e l i s t 2 h i g h 1 0024640 l o w 0 b a s e t y p e ) ) 0024660 001 ? 006 \0 \0 004 A 245 g \0 \0 b 002 277 B 0024700 245 g \0 \0 b 004 277 A d g \0 \0 360 231 277 B 0024720 g \0 \0 360 221 @ 020 A g \0 \0 360 246 B g \0 0024740 \0 360 262 l g \0 \0 @ g \0 \0 g \0 \0 o \0 0024760 \0 \0 g \0 \0 A g \0 \0 360 221 h 200 i 264 022 0025000 A 003 265 026 g \0 \0 A o \0 \0 \0 032 032 h 032 0025020 B g \0 \0 360 232 h 211 001 b 002 277 g \0 \0 260 0025040 350 i 264 023 B 003 265 037 g \0 \0 g \0 \0 B h 0025060 032 032 032 h 032 \n \0 \0 032 h 032 032 032 h 032 032 0025100 h 032 032 032 020 001 b 004 277 g \0 \0 260 337 C 021 0025120 021 001 H 265 R g \0 \0 @ g \0 \0 g \0 \0 o 0025140 \0 \0 \0 g \0 \0 A 003 265 4 g \0 \0 A o \0 0025160 \0 \0 032 032 B 003 265 035 g \0 \0 g \0 \0 B h 0025200 032 032 032 h 032 032 032 h 032 032 032 h 032 032 h 032 0025220 032 032 020 001 b 004 277 g \0 \0 260 341 001 b 002 277 0025240 g \0 \0 260 312 001 271 A I 001 364 232 B I 002 001 0025260 364 224 I 002 002 001 020 I 001 A d 003 222 001 k 324 0025300 B d 003 222 001 k 325 I 002 001 021 004 005 J K 363 0025320 221 h 200 i 264 022 K L 363 221 h 200 i 264 \t L 0025340 M 363 221 h 200 i 022 226 I 002 002 001 b \0 277 H 0025360 002 X 261 377 a \0 ( 1 2 8 \ \ a p p 0025400 e n d 2 ) \r ( 2 3 5 < 2 2 6 0025420 < 1 9 8 x 1 9 5 < = 0025440 1 8 1 < = 1 7 4 a n d 1 0025460 6 7 l a m b d a 1 6 4 s a 0025500 t i s f i e s 1 6 0 a n d 0025520 1 4 8 < 1 1 8 x 1 1 5 0025540 < = 1 0 3 < 9 2 c l : * 0025560 7 9 < = 6 5 c l : * 6 0025600 1 a n d 5 4 l a m b d a 0025620 5 1 s a t i s f i e s 4 7 0025640 a n d 4 1 c l : * 3 5 c 0025660 l : * 2 7 c l : * 2 0 c 0025700 l : * 1 2 c l : * 4 c l 0025720 : * ) \r ( 1 8 6 ( x ) 1 7 0025740 1 ( x ) 8 4 ( x ) 5 8 0025760 ( x ) ) \r c l : n u m b e r p 0026000 d 1 \r ( l ( 0 x ) ) \0 \b \0 0026020 \0 \0 001 @ 3 020 264 003 i 020 \0 n i l \r n 0026040 i l \r ( ) \r c l : f l o a t p 0026060 d 1 \r ( l ( 0 x ) ) \0 \b \0 0026100 \0 \0 001 @ 005 003 264 003 i 020 \0 n i l \r n 0026120 i l \r ( ) \r s i : : d a t a t y 0026140 p e - p d 1 \r ( l ( 0 n a 0026160 m e ) ) \0 \t \0 \0 \0 001 @ \t \0 \0 264 0026200 003 i 020 \0 ( 3 \ \ t y p e n u m 0026220 b e r f r o m n a m e ) \r n i l 0026240 \r ( ) \r ( l e t * ( ( a 0 4 9 0026260 7 ( q u o t e s i : : d a t 0026300 a t y p e - p ) ) ( a 0 4 9 8 0026320 ( q u o t e c l : f u n c t 0026340 i o n ) ) ( a 0 4 9 9 \r " R 0026360 e t u r n s T i f n a m e 0026400 i s a d a t a t y p e k 0026420 n o w n t o t h e X A I E 0026440 t y p e s y s t e m " ) ) 0026460 ( p r o g n ( c o n d ( ( c 0026500 l : f b o u n d p ( q u o t e 0026520 \r s e t - d o c u m e n t a t 0026540 i o n ) ) ( s e t - d o c u m 0026560 e n t a t i o n a 0 4 9 7 a 0026600 0 4 9 8 a 0 4 9 9 ) ) ) a 0 0026620 4 9 9 ) ) \r s i : : s u b - d a 0026640 t a t y p e - p d 1 \r ( l ( 0026660 1 t y p e 2 0 t y p e 1 ) 0026700 ) \0 ' 003 \0 \0 002 @ \t \0 \0 021 ! 002 A 0026720 \t \0 \0 271 H Z d j 360 221 h 020 I 360 221 i 0026740 020 ` \0 \0 J 340 340 340 340 320 310 017 260 351 \0 ( 0026760 1 0 \ \ t y p e n u m b e r f 0027000 r o m n a m e 3 \ \ t y p e 0027020 n u m b e r f r o m n a m e ) \r 0027040 ( 2 7 | \ \ D T D S p a c e B 0027060 a s e | ) \r ( ) \r ( l e t * ( 0027100 ( a 0 5 0 1 ( q u o t e s i 0027120 : : s u b - d a t a t y p e - p 0027140 ) ) ( a 0 5 0 2 ( q u o t e 0027160 c l : f u n c t i o n ) ) ( 0027200 a 0 5 0 3 \r " R e t u r n s 0027220 T i f t y p e 2 i s a 0027240 ( n o t n e c e s s a r i l y 0027260 p r o p e r ) s u p e r t y 0027300 p e o f t y p e 1 . " ) ) 0027320 ( p r o g n ( c o n d ( ( c 0027340 l : f b o u n d p ( \r q u o t 0027360 e s e t - d o c u m e n t a t 0027400 i o n ) ) ( s e t - d o c u m 0027420 e n t a t i o n a 0 5 0 1 a 0027440 0 5 0 2 a 0 5 0 3 ) ) ) a 0 0027460 5 0 3 ) ) \r s u b - s u b t y p 0027500 e p d 1 \r ( l ( 1 t y p e 0027520 2 0 t y p e 1 ) ) \0 311 004 \0 0027540 \0 002 @ d A \n \0 \0 237 277 g \0 \0 i d \n 0027560 \0 \0 \t \0 \0 \n \0 \0 020 262 361 A d i 360 263 0027600 352 256 g \0 \0 h i \n \0 \0 \t \0 \0 \n \0 \0 0027620 020 @ d 003 262 1 277 A 003 262 + @ d 001 g \0 0027640 \0 360 262 # 277 A 001 g \0 \0 360 262 031 g \0 \0 0027660 @ 002 001 A 002 001 \n \0 \0 i \n \0 \0 \t \0 \0 0027700 \n \0 \0 020 @ 003 237 @ 001 o \0 \0 \0 \n \0 \0 0027720 225 @ A \n \0 \0 020 A 003 265 A @ \t \0 \0 021 0027740 1 003 H 264 006 @ \t \0 \0 271 A \t \0 \0 Z 264 0027760 006 A \t \0 \0 273 H 262 024 J 226 I K \n \0 \0 0030000 265 031 H 226 I A \n \0 \0 265 020 J 264 \t @ K 0030020 \n \0 \0 d 243 d \n \0 \0 020 001 o \0 \0 \0 \n 0030040 \0 \0 262 271 @ A \n \0 \0 020 \0 ( 1 9 8 0030060 h a n d l e - t y p e 2 - m e t 0030100 a - e x p r e s s i o n 1 9 1 0030120 m e m b e r 1 8 2 c l : v 0030140 a l u e s 1 7 6 s u b - s u 0030160 b t y p e p 1 6 6 s u b - s 0030200 u b t y p e p 1 5 7 s u b - 0030220 s u b t y p e p 1 4 6 t y p 0030240 e - e x p a n d 1 3 9 t y p 0030260 e - e x p a n d e r 1 3 4 t 0030300 y p e - e x p a n d 1 2 4 t 0030320 y p e - e x p a n d e r 1 1 5 0030340 h a n d l e - t y p e 1 - m e 0030360 t a - e x p r e s s i o n 1 0 0030400 9 m e m b e r 9 6 \ \ d o 0030420 - t h r o w 9 3 \ \ m v l i 0030440 s t 9 0 c l : v a l u e s 0030460 8 6 s i : : s u b - d a t a t 0030500 y p e - p 4 5 \ \ d o - t h 0030520 r o w 4 2 \ \ m v l i s t 0030540 3 9 c l : v a l u e s 2 1 0030560 \ \ d o - t h r o w 1 8 \ \ 0030600 m v l i s t 1 5 c l : v a l 0030620 u e s 5 c l : e q u a l ) \r 0030640 ( 7 7 h a i r y - s u b t y p 0030660 e p 7 1 d a t a t y p e 6 0030700 2 d a t a t y p e 3 4 h a 0030720 i r y - s u b t y p e p 1 0 0030740 h a i r y - s u b t y p e p ) \r 0030760 ( 1 8 8 ( a n d o r ) 1 0031000 0 6 ( a n d o r ) ) \r ( l e 0031020 t * ( ( a 0 5 0 4 ( q u o t 0031040 e s u b - s u b t y p e p ) ) 0031060 ( a 0 5 0 5 ( q u o t e c 0031100 l : f u n c t i o n ) ) ( a 0 0031120 5 0 6 \r " R e t u r n s ( T 0031140 T ) i f f t y p e 1 i s 0031160 a s u b t y p e o f t y 0031200 p e 2 . " ) ) ( p r o g n ( 0031220 c o n d ( ( c l : f b o u n d 0031240 p ( q u o t e s e t - d o c 0031260 u m e n t a t i o n ) \r ) ( s 0031300 e t - d o c u m e n t a t i o n 0031320 a 0 5 0 4 a 0 5 0 5 a 0 5 0031340 0 6 ) ) ) a 0 5 0 6 ) ) \r s u 0031360 b t y p e p a 0 0 0 1 d 1 \r ( 0031400 f 0 t y p e 1 f 1 t y 0031420 p e 2 ) \0 \f \0 002 \0 \0 P Q \n \0 \0 0031440 h d \n \0 \0 020 \0 ( 9 c l : v a l 0031460 u e s 4 s u b - s u b t y p 0031500 e p ) \r n i l \r ( ) \r c l : s u 0031520 b t y p e p d 1 \r ( i 1 t 0031540 y p e 2 i 0 t y p e 1 ) 0031560 \0 \v \0 \0 \0 002 g \0 \0 g \0 \0 \n \0 \0 020 0031600 \0 ( 8 \ \ c a t c h - f u n c 0031620 a l l ) \r ( 5 s u b t y p e p 0031640 a 0 0 0 1 2 h a i r y - s u 0031660 b t y p e p ) \r ( ) \r ( l e t * 0031700 ( ( a 0 5 0 7 ( q u o t e 0031720 c l : s u b t y p e p ) ) ( a 0031740 0 5 0 8 ( q u o t e c l : f 0031760 u n c t i o n ) ) ( a 0 5 0 9 0032000 \r " R e t u r n s T i f 0032020 t y p e 1 i s a s u b t y 0032040 p e o f t y p e 2 . I f 0032060 s e c o n d v a l u e i s 0032100 ( ) , c o u l d n ' t \r 0032120 d e c i d e . " ) ) ( p r o g 0032140 n ( c o n d ( ( c l : f b o 0032160 u n d p ( q u o t e s e t - 0032200 d o c u m e n t a t i o n ) ) 0032220 ( s e t - d o c u m e n t a t i 0032240 o n a 0 5 0 7 a 0 5 0 8 a 0032260 0 5 0 9 \r ) ) ) a 0 5 0 9 ) ) 0032300 \r t y p e - e x p a n d d 1 \r 0032320 ( l ( 0 | - a r g s - | ) ) 0032340 \0 d 005 \0 002 \0 e 021 001 \0 k a 021 1 004 0032360 l 002 H 361 262 $ I Z d 303 \0 \0 223 277 I 260 0032400 025 303 \0 \0 264 005 I 001 212 g \0 \0 J o \0 \0 0032420 \0 \f \0 \0 \t \0 \0 202 l 002 a [ 262 % I \ 0032440 d 303 \0 \0 225 277 I h 032 260 024 303 \0 \0 264 004 0032460 I 212 g \0 \0 L o \0 \0 \0 \f \0 \0 k K 016 0032500 020 o \0 \0 \0 I \n \0 \0 020 \0 ( 9 7 c 0032520 l : e r r o r 8 5 c h e c k 0032540 - t y p e - f a i l 4 7 t y 0032560 p e - e x p a n d e r 4 4 c 0032600 h e c k - t y p e - f a i l ) \r 0032620 ( 7 7 f o r m 7 0 l i s t 0032640 p 6 0 l i t a t o m 3 6 0032660 f o r m 2 8 l i s t p 2 0 0032700 l i t a t o m ) \r ( 9 3 " 0032720 n o t y p e e x p a n d e r 0032740 f o r ~ s " 8 2 ( o r 0032760 c l : s y m b o l c o n s ) 0033000 4 1 ( o r c l : s y m b o l 0033020 c o n s ) ) \r ( l e t * ( ( 0033040 a 0 5 1 0 ( q u o t e t y p 0033060 e - e x p a n d ) ) ( a 0 5 1 0033100 1 ( q u o t e c l : f u n c 0033120 t i o n ) ) ( a 0 5 1 2 \r " 0033140 e x p a n d s a t y p e f 0033160 o r m a c c o r d i n g t o 0033200 d e f t y p e s i n e f f 0033220 e c t . T h e c a l l e r 0033240 m u s t e n s u r e t h e 0033260 r e i s a n e x p a n d e 0033300 r f o r t h e f o r m " \r 0033320 ) ) ( p r o g n ( c o n d 0033340 ( ( c l : f b o u n d p ( q u 0033360 o t e s e t - d o c u m e n t 0033400 a t i o n ) ) ( s e t - d o c 0033420 u m e n t a t i o n a 0 5 1 0 0033440 a 0 5 1 1 a 0 5 1 2 ) ) ) 0033460 a 0 5 1 2 ) \r ) \r h a n d l e - 0033500 t y p e 1 - m e t a - e x p r e 0033520 s s i o n d 1 \r ( l ( 1 t 0033540 y p e 2 0 t y p e 1 ) ) \0 0033560 200 006 \0 \0 002 @ 001 021 Q 005 H d g \0 \0 360 0033600 221 h 020 g \0 \0 360 262 # @ 002 Y d 262 7 d 0033620 001 A \n \0 \0 262 365 277 g \0 \0 i d \n \0 \0 0033640 \t \0 \0 \n \0 \0 277 I 260 342 H g \0 \0 360 262 0033660 = @ 002 Z 265 021 g \0 \0 i d \n \0 \0 \t \0 0033700 \0 \n \0 \0 020 001 A \n \0 \0 \t \0 \0 ] 001 274 0033720 M 002 001 273 L 263 024 K 264 354 g \0 \0 h i \n 0033740 \0 \0 \t \0 \0 \n \0 \0 277 J 260 310 o \0 \0 \0 0033760 \t \0 \0 020 \0 ( 1 2 5 e r r o r 0034000 1 1 4 \ \ d o - t h r o w 1 0034020 1 1 \ \ m v l i s t 1 0 8 0034040 c l : v a l u e s 8 7 \ \ m 0034060 v l i s t 8 4 c l : s u b t 0034100 y p e p 7 8 \ \ d o - t h r 0034120 o w 7 5 \ \ m v l i s t 7 0034140 2 c l : v a l u e s 4 8 \ 0034160 \ d o - t h r o w 4 5 \ \ m 0034200 v l i s t 4 2 c l : v a l u 0034220 e s 3 1 c l : s u b t y p e 0034240 p ) \r ( 1 0 3 h a i r y - s u 0034260 b t y p e p 6 7 h a i r y - 0034300 s u b t y p e p 5 6 o r 3 0034320 7 h a i r y - s u b t y p e p 0034340 1 6 a n d 9 s a t i s f 0034360 i e s ) \r ( 1 2 2 " a n e 0034400 n t r y i n T Y P E - M E T 0034420 A - E X P R E S S I O N S i s 0034440 n o t h a n d l e d b y 0034460 h a n d l e - t y p e 1 - m e t 0034500 a - e x p r e s s i o n " ) \r h 0034520 a n d l e - t y p e 2 - m e t a 0034540 - e x p r e s s i o n d 1 \r ( 0034560 l ( 1 t y p e 2 0 t y p 0034600 e 1 ) ) \0 247 \b \0 \0 002 A 001 021 q \a 0034620 H d g \0 \0 360 262 @ 277 A 002 Y 265 021 g \0 0034640 \0 i d \n \0 \0 \t \0 \0 \n \0 \0 020 001 272 @ 0034660 J \n \0 \0 \t \0 \0 ] 001 274 M 002 001 273 L 263 0034700 024 K 264 f g \0 \0 h i \n \0 \0 \t \0 \0 \n 0034720 \0 \0 277 I 260 306 g \0 \0 360 262 % A 002 ^ d 0034740 262 H 001 _ 016 277 @ O 016 \n \0 \0 236 g \0 \0 0034760 i d \n \0 \0 \t \0 \0 \n \0 \0 277 N 260 340 H 0035000 g \0 \0 360 262 % @ 003 264 @ 001 g \0 \0 360 0035020 264 030 g \0 \0 @ 002 001 A 002 001 \n \0 \0 i \n 0035040 \0 \0 \t \0 \0 \n \0 \0 020 o \0 \0 \0 \t \0 \0 0035060 020 \0 ( 1 6 4 e r r o r 1 5 6 0035100 \ \ d o - t h r o w 1 5 3 0035120 \ \ m v l i s t 1 5 0 c l : 0035140 v a l u e s 1 4 6 s i : : s 0035160 u b - d a t a t y p e - p 1 1 0035200 1 \ \ d o - t h r o w 1 0 8 0035220 \ \ m v l i s t 1 0 5 c l 0035240 : v a l u e s 9 6 s u b - s 0035260 u b t y p e p 7 0 \ \ d o - 0035300 t h r o w 6 7 \ \ m v l i s 0035320 t 6 4 c l : v a l u e s 4 0035340 3 \ \ m v l i s t 4 0 c l 0035360 : s u b t y p e p 3 2 \ \ d 0035400 o - t h r o w 2 9 \ \ m v l 0035420 i s t 2 6 c l : v a l u e s 0035440 ) \r ( 1 3 7 h a i r y - s u b 0035460 t y p e p 1 3 1 d a t a t y 0035500 p e 1 1 9 d a t a t y p e 0035520 1 0 0 h a i r y - s u b t y p 0035540 e p 7 7 o r 5 9 h a i r 0035560 y - s u b t y p e p 2 1 h a 0035600 i r y - s u b t y p e p 9 a 0035620 n d ) \r ( 1 6 1 " a n e n 0035640 t r y i n T Y P E - M E T A 0035660 - E X P R E S S I O N S i s 0035700 n o t h a n d l e d b y h 0035720 a n d l e - t y p e 2 - m e t a 0035740 - e x p r e s s i o n " ) \r ( s 0035760 e t q % n o - s u p e r - t y 0036000 p e 0 ) \r ( p u t h a s h ( 0036020 q u o t e % n o - s u p e r - 0036040 t y p e ) ( q u o t e ( c o 0036060 n s t a n t % n o - s u p e r 0036100 - t y p e ) ) c o m p v a r m 0036120 a c r o h a s h ) \r ( l e t * 0036140 ( ( a 0 5 1 5 ( q u o t e % 0036160 n o - s u p e r - t y p e ) ) 0036200 ( a 0 5 1 6 ( q u o t e v a 0036220 r i a b l e ) ) ( a 0 5 1 7 0036240 \r " t h e v a l u e i n t 0036260 h e d t d s u p e r t y p e 0036300 f i e l d w h i c h i n d i 0036320 c a t e s n o s u p e r t 0036340 y p e . " ) ) ( p r o g n ( 0036360 c o n d ( ( c l : f b o u n d 0036400 p ( \r q u o t e s e t - d o 0036420 c u m e n t a t i o n ) ) ( s 0036440 e t - d o c u m e n t a t i o n 0036460 a 0 5 1 5 a 0 5 1 6 a 0 5 0036500 1 7 ) ) ) a 0 5 1 7 ) ) \r ( s 0036520 e t q t y p e - m e t a - e x 0036540 p r e s s i o n s ( q u o t e 0036560 ( a n d o r ) ) ) \r ( p u t 0036600 h a s h ( q u o t e t y p e 0036620 - m e t a - e x p r e s s i o n 0036640 s ) ( q u o t e ( c o n s t 0036660 a n t t y p e - m e t a - e x 0036700 p r e s s i o n s ) ) c o m p 0036720 v a r m a c r o h a s h ) \r ( l 0036740 e t * ( ( a 0 5 1 8 ( q u o 0036760 t e t y p e - m e t a - e x p 0037000 r e s s i o n s ) ) ( a 0 5 1 0037020 9 ( q u o t e v a r i a b l 0037040 e ) ) ( a 0 5 2 0 \r " t h e 0037060 e x p r e s s i o n s t h a 0037100 t s u b - s u b t y p e p k 0037120 n o w s h o w t o d i s s 0037140 e c t " ) ) ( p r o g n ( c 0037160 o n d ( ( c l : f b o u n d p 0037200 ( q u o t e \r s e t - d o c 0037220 u m e n t a t i o n ) ) ( s e 0037240 t - d o c u m e n t a t i o n 0037260 a 0 5 1 8 a 0 5 1 9 a 0 5 2 0037300 0 ) ) ) a 0 5 2 0 ) ) \r \ \ t 0037320 y p e p . p r e d a 0 0 0 1 d 0037340 1 \r ( l ( 0 p r e d ) ) \0 0037360 \f \0 \0 \0 001 @ \t \0 \0 g \0 \0 h 032 032 020 0037400 \0 ( 3 \ \ t y p e p . p r e d 0037420 ) \r ( 6 x ) \r ( ) \r \ \ t y p 0037440 e p . p r e d d 1 \r ( l ( 0 0037460 t y p e ) p 2 d f n f l 0037500 g ) 001 005 003 \0 \0 001 @ d 003 242 261 \0 226 0037520 ` \0 \0 \n \0 \0 265 003 202 261 \0 211 @ d 001 021 0037540 021 001 H d g \0 \0 360 225 277 @ 002 001 260 n g 0037560 \0 \0 360 262 " g \0 \0 o \0 \0 \0 g \0 \0 g 0037600 \0 \0 g \0 \0 @ 002 001 h 032 032 h 032 032 032 h 0037620 032 032 032 260 H H g \0 \0 360 254 H g \0 \0 360 0037640 246 H g \0 \0 360 262 032 g \0 \0 o \0 \0 \0 @ 0037660 001 g \0 \0 @ 002 \n \0 \0 032 h 032 032 032 260 035 0037700 @ 001 \t \0 \0 Y 227 @ k I 016 \t \0 \0 213 o 0037720 \0 \0 \0 o \0 \0 \0 @ \v \0 \0 022 ` \0 \0 \v 0037740 \0 \0 020 i 360 223 g \0 \0 020 @ d 243 g \0 \0 0037760 020 \t \0 \0 021 001 \0 H 233 @ h 032 k H 016 b 0040000 \0 023 261 377 G @ d \t \0 \0 262 / 277 o \0 \0 0040020 \0 @ \n \0 \0 277 021 020 002 g \0 \0 @ h g \0 0040040 \0 g \0 \0 @ h 032 032 h 032 032 h 032 032 032 032 0040060 \t \0 \0 023 023 261 377 024 @ \t \0 \0 263 370 o \0 0040100 \0 \0 o \0 \0 \0 @ \v \0 \0 277 260 355 \0 ( 2 0040120 5 6 c l : c e r r o r 2 4 2 0040140 t y p e - e x p a n d e r 2 0040160 3 3 e v a l 2 0 3 c l : w 0040200 a r n 1 9 2 s i : : d a t a 0040220 t y p e - p 1 7 0 t y p e - 0040240 e x p a n d e r 1 5 2 p u t 0040260 h a s h 1 4 5 c l : c e r r 0040300 o r 1 3 2 \ \ t y p e p . p 0040320 r e d 1 2 3 t y p e - e x p 0040340 a n d e r 1 1 1 c l : m a p 0040360 c a r 1 2 g e t h a s h ) \r 0040400 ( 2 1 8 d a t a t y p e 2 1 0040420 5 q u o t e 2 1 0 c l : d 0040440 e f t y p e 1 6 6 f a l s e 0040460 1 5 9 t r u e 1 4 9 c l 0040500 i s p a r r a y 1 0 6 \ \ t 0040520 y p e p . p r e d a 0 0 0 1 9 0040540 7 o p e n l a m b d a 9 1 0040560 n o t 8 5 o r 7 9 a n d 0040600 5 9 q u o t e 5 6 x 5 0040620 3 t y p e n a m e p 4 6 o 0040640 p e n l a m b d a 4 0 d a t 0040660 a t y p e 2 9 s a t i s f i 0040700 e s 9 c l i s p a r r a y ) 0040720 \r ( 2 5 2 " N o t y p e 0040740 d e f i n i t i o n f o r ~ 0040760 S . S p e c i f y o n e w 0041000 i t h D E F T Y P E . " 2 4 0041020 8 " U s e t h e d e f t y 0041040 p e y o u h a v e s p e c 0041060 i f i e d . " \r 1 9 9 " I n 0041100 s t a l l i n g D E F T Y P E 0041120 f o r d a t a t y p e ~ S 0041140 " 1 4 1 " N o t y p e d 0041160 e f i n i t i o n f o r ~ S 0041200 . S p e c i f y o n e w i 0041220 t h D E F T Y P E . " 1 3 7 0041240 \r " L o o k a g a i n f o 0041260 r a d e f t y p e o n ~ 0041300 S . " 1 0 1 ( x ) 5 0 ( 0041320 x ) ) \r c l : : | t y p e - e x 0041340 p a n d - A T O M | d 1 \r ( l 0041360 ( 0 $ $ t y p e - f o r m ) 0041400 ) \0 006 \0 \0 \0 001 o \0 \0 \0 020 \0 n i 0041420 l \r n i l \r ( 3 ( s a t i s 0041440 f i e s c l : a t o m ) ) \r ( 0041460 p u t ( q u o t e c l : a t 0041500 o m ) ( q u o t e t y p e - 0041520 e x p a n d e r ) ( q u o t e 0041540 c l : : | t y p e - e x p a n 0041560 d - A T O M | ) ) \r c l : : | t 0041600 y p e - e x p a n d - B I G N U 0041620 M | d 1 \r ( l ( 0 $ $ t y 0041640 p e - f o r m ) ) \0 006 \0 \0 \0 001 0041660 o \0 \0 \0 020 \0 n i l \r n i l \r ( 0041700 3 ( o r ( d a t a t y p e 0041720 f i x p ) ( d a t a t y p e 0041740 b i g n u m ) ) ) \r ( p u t ( 0041760 q u o t e b i g n u m ) ( q 0042000 u o t e t y p e - e x p a n d 0042020 e r ) ( q u o t e c l : : | 0042040 t y p e - e x p a n d - B I G N 0042060 U M | ) ) \r c l : : | t y p e - 0042100 e x p a n d - B I T | d 1 \r ( 0042120 l ( 0 $ $ t y p e - f o r m 0042140 ) ) \0 006 \0 \0 \0 001 o \0 \0 \0 020 \0 n 0042160 i l \r n i l \r ( 3 ( c l : m 0042200 o d 2 ) ) \r ( p u t ( q u o 0042220 t e b i t ) ( q u o t e t 0042240 y p e - e x p a n d e r ) ( q 0042260 u o t e c l : : | t y p e - e 0042300 x p a n d - B I T | ) ) \r c l : 0042320 : | t y p e - e x p a n d - C H 0042340 A R A C T E R | d 1 \r ( l ( 0042360 0 $ $ t y p e - f o r m ) ) 0042400 \0 006 \0 \0 \0 001 o \0 \0 \0 020 \0 n i l \r 0042420 n i l \r ( 3 ( s a t i s f i 0042440 e s c l : c h a r a c t e r p 0042460 ) ) \r ( p u t ( q u o t e c 0042500 l : c h a r a c t e r ) ( q u 0042520 o t e t y p e - e x p a n d e 0042540 r ) ( q u o t e c l : : | t 0042560 y p e - e x p a n d - C H A R A 0042600 C T E R | ) ) \r c l : : | t y p 0042620 e - e x p a n d - C O N S | d 0042640 1 \r ( l ( 0 $ $ t y p e - f 0042660 o r m ) ) \0 006 \0 \0 \0 001 o \0 \0 \0 0042700 020 \0 n i l \r n i l \r ( 3 ( d 0042720 a t a t y p e l i s t p ) ) \r 0042740 ( p u t ( q u o t e c o n s 0042760 ) ( q u o t e t y p e - e x 0043000 p a n d e r ) ( q u o t e c 0043020 l : : | t y p e - e x p a n d - 0043040 C O N S | ) ) \r c l : : | t y p 0043060 e - e x p a n d - D O U B L E - 0043100 F L O A T | d 1 \r ( l ( 0 0043120 $ $ t y p e - f o r m ) ) \0 \f 0043140 001 \0 \0 001 @ 002 021 001 \0 g \0 \0 H 032 020 \0 0043160 n i l \r ( 7 f l o a t ) \r ( ) 0043200 \r ( p u t ( q u o t e c l : 0043220 d o u b l e - f l o a t ) ( q 0043240 u o t e t y p e - e x p a n d 0043260 e r ) ( q u o t e c l : : | 0043300 t y p e - e x p a n d - D O U B 0043320 L E - F L O A T | ) ) \r c l : : 0043340 | t y p e - e x p a n d - F I X 0043360 N U M | d 1 \r ( l ( 0 $ $ 0043400 t y p e - f o r m ) ) \0 006 \0 \0 0043420 \0 001 o \0 \0 \0 020 \0 n i l \r n i l \r 0043440 ( 3 ( d a t a t y p e s m 0043460 a l l p ) ) \r ( p u t ( q u o 0043500 t e c l : f i x n u m ) ( q 0043520 u o t e t y p e - e x p a n d 0043540 e r ) ( q u o t e c l : : | 0043560 t y p e - e x p a n d - F I X N 0043600 U M | ) ) \r c l : : | t y p e - 0043620 e x p a n d - F L O A T | d 1 0043640 \r ( l ( 0 $ $ t y p e - f o 0043660 r m ) ) \0 % 003 \0 \0 001 @ 002 021 ! 002 0043700 H 265 \r g \0 \0 271 H 002 226 H 002 001 205 001 260 0043720 367 g \0 \0 272 o \0 \0 \0 I J \v \0 \0 020 \0 0043740 ( 3 4 \ \ r a n g e . t y p e 0043760 ) \r ( 2 4 c l : * 1 0 c l 0044000 : * ) \r ( 2 9 ( d a t a t y 0044020 p e f l o a t p ) ) \r ( p u t 0044040 ( q u o t e f l o a t ) ( 0044060 q u o t e t y p e - e x p a n 0044100 d e r ) ( q u o t e c l : : 0044120 | t y p e - e x p a n d - F L O 0044140 A T | ) ) \r c l : : | t y p e - 0044160 e x p a n d - F U N C T I O N | 0044200 d 1 \r ( l ( 0 $ $ t y p e 0044220 - f o r m ) ) \0 006 \0 \0 \0 001 o \0 0044240 \0 \0 020 \0 n i l \r n i l \r ( 3 0044260 ( s a t i s f i e s c l : f u 0044300 n c t i o n p ) ) \r ( p u t ( 0044320 q u o t e c l : f u n c t i o 0044340 n ) ( q u o t e t y p e - e 0044360 x p a n d e r ) ( q u o t e 0044400 c l : : | t y p e - e x p a n d 0044420 - F U N C T I O N | ) ) \r c l : 0044440 : | t y p e - e x p a n d - H A 0044460 S H - T A B L E | d 1 \r ( l 0044500 ( 0 $ $ t y p e - f o r m ) ) 0044520 \0 006 \0 \0 \0 001 o \0 \0 \0 020 \0 n i l 0044540 \r n i l \r ( 3 ( d a t a t y 0044560 p e h a r r a y p ) ) \r ( p u 0044600 t ( q u o t e c l : h a s h 0044620 - t a b l e ) ( q u o t e t 0044640 y p e - e x p a n d e r ) ( q 0044660 u o t e c l : : | t y p e - e 0044700 x p a n d - H A S H - T A B L E 0044720 | ) ) \r c l : : | t y p e - e x 0044740 p a n d - I N T E G E R | d 1 0044760 \r ( l ( 0 $ $ t y p e - f o 0045000 r m ) ) \0 ) 003 \0 \0 001 @ 002 021 ! 002 0045020 H 265 \r g \0 \0 271 H 002 226 H 002 001 205 001 260 0045040 367 g \0 \0 272 o \0 \0 \0 I J o \0 \0 \0 \f 0045060 \0 \0 020 \0 ( 3 8 \ \ r a n g e . 0045100 t y p e ) \r ( 2 4 c l : * 1 0045120 0 c l : * ) \r ( 3 5 ( ( - 0045140 6 5 5 3 6 6 5 5 3 5 c l : f 0045160 i x n u m ) ( 0 1 ( c l : 0045200 m e m b e r 0 1 ) ) ) 2 9 0045220 ( s a t i s f i e s c l : i 0045240 n t e g e r p ) ) \r ( p u t ( 0045260 q u o t e i n t e g e r ) ( 0045300 q u o t e t y p e - e x p a n 0045320 d e r ) ( q u o t e c l : : 0045340 | t y p e - e x p a n d - I N T 0045360 E G E R | ) ) \r c l : : | t y p 0045400 e - e x p a n d - K E Y W O R D 0045420 | d 1 \r ( l ( 0 $ $ t y p 0045440 e - f o r m ) ) \0 006 \0 \0 \0 001 o 0045460 \0 \0 \0 020 \0 n i l \r n i l \r ( 3 0045500 ( s a t i s f i e s c l : k 0045520 e y w o r d p ) ) \r ( p u t ( 0045540 q u o t e c l : k e y w o r d 0045560 ) ( q u o t e t y p e - e x 0045600 p a n d e r ) ( q u o t e c 0045620 l : : | t y p e - e x p a n d - 0045640 K E Y W O R D | ) ) \r c l : : | 0045660 t y p e - e x p a n d - L I S T 0045700 | d 1 \r ( l ( 0 $ $ t y p 0045720 e - f o r m ) ) \0 ` 001 \0 \0 001 @ 0045740 002 265 023 g \0 \0 021 001 \0 H g \0 \0 360 227 o 0045760 \0 \0 \0 020 001 260 361 g \0 \0 g \0 \0 g \0 \0 0046000 g \0 \0 o \0 \0 \0 g \0 \0 g \0 \0 g \0 \0 0046020 o \0 \0 \0 g \0 \0 g \0 \0 g \0 \0 H h 032 0046040 032 h 032 032 032 h 032 032 032 h 032 032 o \0 \0 \0 0046060 032 032 h 032 032 032 h 032 032 h 032 032 032 020 \0 n 0046100 i l \r ( 6 1 q u o t e 5 8 0046120 e l e m e n t 5 5 t y p e p 0046140 4 8 c l : l a m b d a 4 5 0046160 c l : f u n c t i o n 4 2 0046200 c l : e v e r y 3 5 l a m b 0046220 d a 3 2 s a t i s f i e s 0046240 2 9 l i s t 2 6 a n d 1 0046260 3 c l : * 6 c l : * ) \r ( 0046300 8 0 ( x ) 5 2 ( e l e m 0046320 e n t ) 3 9 ( x ) 1 9 ( 0046340 o r n u l l c o n s ) ) \r ( 0046360 p u t ( q u o t e l i s t ) 0046400 ( q u o t e t y p e - e x p 0046420 a n d e r ) ( q u o t e c l 0046440 : : | t y p e - e x p a n d - L 0046460 I S T | ) ) \r c l : : | t y p e 0046500 - e x p a n d - L O N G - F L O 0046520 A T | d 1 \r ( l ( 0 $ $ t 0046540 y p e - f o r m ) ) \0 \f 001 \0 \0 0046560 001 @ 002 021 001 \0 g \0 \0 H 032 020 \0 n i l 0046600 \r ( 7 f l o a t ) \r ( ) \r ( p 0046620 u t ( q u o t e c l : l o n 0046640 g - f l o a t ) ( q u o t e 0046660 t y p e - e x p a n d e r ) ( 0046700 q u o t e c l : : | t y p e - 0046720 e x p a n d - L O N G - F L O A 0046740 T | ) ) \r c l : : | t y p e - e 0046760 x p a n d - M E M B E R | d 1 0047000 \r ( l ( 0 $ $ t y p e - f o 0047020 r m ) ) \0 ) 001 \0 \0 001 @ 002 021 001 \0 0047040 g \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 g \0 \0 0047060 g \0 \0 H h 032 032 h 032 032 032 h 032 032 032 h 0047100 032 032 020 \0 n i l \r ( 2 3 q u o t 0047120 e 2 0 x 1 7 c l : m e m 0047140 b e r 1 0 l a m b d a 7 0047160 s a t i s f i e s ) \r ( 1 4 0047200 ( x ) ) \r ( p u t ( q u o t e 0047220 c l : m e m b e r ) ( q u o 0047240 t e t y p e - e x p a n d e r 0047260 ) ( q u o t e c l : : | t y 0047300 p e - e x p a n d - M E M B E R 0047320 | ) ) \r c l : : | t y p e - e x 0047340 p a n d - M O D | d 1 \r ( l 0047360 ( 0 $ $ t y p e - f o r m ) ) 0047400 \0 023 001 \0 \0 001 @ 002 001 021 001 \0 g \0 \0 0047420 j H k 325 h 032 032 032 020 \0 n i l \r ( 8 0047440 i n t e g e r ) \r ( ) \r ( p u 0047460 t ( q u o t e c l : m o d ) 0047500 ( q u o t e t y p e - e x p 0047520 a n d e r ) ( q u o t e c l 0047540 : : | t y p e - e x p a n d - M 0047560 O D | ) ) \r c l : : | t y p e - 0047600 e x p a n d - N U L L | d 1 \r 0047620 ( l ( 0 $ $ t y p e - f o r 0047640 m ) ) \0 006 \0 \0 \0 001 o \0 \0 \0 020 \0 0047660 n i l \r n i l \r ( 3 ( s a t 0047700 i s f i e s n u l l ) ) \r ( p 0047720 u t ( q u o t e n u l l ) 0047740 ( q u o t e t y p e - e x p a 0047760 n d e r ) ( q u o t e c l : 0050000 : | t y p e - e x p a n d - N U 0050020 L L | ) ) \r c l : : | t y p e - 0050040 e x p a n d - N U M B E R | d 0050060 1 \r ( l ( 0 $ $ t y p e - f 0050100 o r m ) ) \0 006 \0 \0 \0 001 o \0 \0 \0 0050120 020 \0 n i l \r n i l \r ( 3 ( s 0050140 a t i s f i e s n u m b e r p 0050160 ) ) \r ( p u t ( q u o t e c 0050200 l : n u m b e r ) ( q u o t e 0050220 t y p e - e x p a n d e r ) 0050240 ( q u o t e c l : : | t y p e 0050260 - e x p a n d - N U M B E R | ) 0050300 ) \r c l : : | t y p e - e x p a 0050320 n d - P A C K A G E | d 1 \r ( 0050340 l ( 0 $ $ t y p e - f o r m 0050360 ) ) \0 006 \0 \0 \0 001 o \0 \0 \0 020 \0 n 0050400 i l \r n i l \r ( 3 ( d a t a 0050420 t y p e p a c k a g e ) ) \r ( 0050440 p u t ( q u o t e p a c k a 0050460 g e ) ( q u o t e t y p e - 0050500 e x p a n d e r ) ( q u o t e 0050520 c l : : | t y p e - e x p a n 0050540 d - P A C K A G E | ) ) \r c l : 0050560 : | t y p e - e x p a n d - S H 0050600 O R T - F L O A T | d 1 \r ( l 0050620 ( 0 $ $ t y p e - f o r m ) 0050640 ) \0 \f 001 \0 \0 001 @ 002 021 001 \0 g \0 \0 0050660 H 032 020 \0 n i l \r ( 7 f l o a t 0050700 ) \r ( ) \r ( p u t ( q u o t e 0050720 c l : s h o r t - f l o a t ) 0050740 ( q u o t e t y p e - e x p 0050760 a n d e r ) ( q u o t e c l 0051000 : : | t y p e - e x p a n d - S 0051020 H O R T - F L O A T | ) ) \r c l 0051040 : : | t y p e - e x p a n d - S 0051060 I G N E D - B Y T E | d 1 \r ( 0051100 l ( 0 $ $ t y p e - f o r m 0051120 ) ) \0 / 002 \0 \0 001 @ 002 265 022 g \0 \0 0051140 021 021 001 H g \0 \0 360 226 g \0 \0 020 001 260 362 0051160 l 002 H k 325 \n \0 \0 271 g \0 \0 j I 325 I 0051200 k 325 h 032 032 032 020 \0 ( 3 0 c l : e 0051220 x p t ) \r ( 3 4 i n t e g e r 0051240 1 8 i n t e g e r 1 3 c 0051260 l : * 6 c l : * ) \r ( ) \r ( 0051300 p u t ( q u o t e c l : : s 0051320 i g n e d - b y t e ) ( q u o 0051340 t e t y p e - e x p a n d e r 0051360 ) ( q u o t e c l : : | t y 0051400 p e - e x p a n d - S I G N E D 0051420 - B Y T E | ) ) \r c l : : | t y 0051440 p e - e x p a n d - S T A N D A 0051460 R D - C H A R | d 1 \r ( l ( 0051500 0 $ $ t y p e - f o r m ) ) 0051520 \0 006 \0 \0 \0 001 o \0 \0 \0 020 \0 n i l \r 0051540 n i l \r ( 3 ( s a t i s f i 0051560 e s c l : s t a n d a r d - c 0051600 h a r - p ) ) \r ( p u t ( q u 0051620 o t e c l : s t a n d a r d - 0051640 c h a r ) ( q u o t e t y p 0051660 e - e x p a n d e r ) ( q u o 0051700 t e c l : : | t y p e - e x p 0051720 a n d - S T A N D A R D - C H A 0051740 R | ) ) \r c l : : | t y p e - e 0051760 x p a n d - S T R I N G - C H A 0052000 R | d 1 \r ( l ( 0 $ $ t y 0052020 p e - f o r m ) ) \0 006 \0 \0 \0 001 0052040 o \0 \0 \0 020 \0 n i l \r n i l \r ( 0052060 3 ( s a t i s f i e s c l : 0052100 s t r i n g - c h a r - p ) ) \r 0052120 ( p u t ( q u o t e c l : s 0052140 t r i n g - c h a r ) ( q u o 0052160 t e t y p e - e x p a n d e r 0052200 ) ( q u o t e c l : : | t y 0052220 p e - e x p a n d - S T R I N G 0052240 - C H A R | ) ) \r c l : : | t y 0052260 p e - e x p a n d - S I N G L E 0052300 - F L O A T | d 1 \r ( l ( 0 0052320 $ $ t y p e - f o r m ) ) \0 0052340 \f 001 \0 \0 001 @ 002 021 001 \0 g \0 \0 H 032 020 0052360 \0 n i l \r ( 7 f l o a t ) \r ( 0052400 ) \r ( p u t ( q u o t e c l 0052420 : s i n g l e - f l o a t ) ( 0052440 q u o t e t y p e - e x p a n 0052460 d e r ) ( q u o t e c l : : 0052500 | t y p e - e x p a n d - S I N 0052520 G L E - F L O A T | ) ) \r c l : 0052540 : | t y p e - e x p a n d - S Y 0052560 M B O L | d 1 \r ( l ( 0 $ 0052600 $ t y p e - f o r m ) ) \0 006 \0 0052620 \0 \0 001 o \0 \0 \0 020 \0 n i l \r n i l 0052640 \r ( 3 ( d a t a t y p e l 0052660 i t a t o m ) ) \r ( p u t ( q 0052700 u o t e c l : s y m b o l ) 0052720 ( q u o t e t y p e - e x p a 0052740 n d e r ) ( q u o t e c l : 0052760 : | t y p e - e x p a n d - S Y 0053000 M B O L | ) ) \r c l : : | t y p 0053020 e - e x p a n d - U N S I G N E 0053040 D - B Y T E | d 1 \r ( l ( 0 0053060 $ $ t y p e - f o r m ) ) \0 0053100 * 001 \0 \0 001 @ 002 265 023 g \0 \0 021 001 \0 H 0053120 g \0 \0 360 227 o \0 \0 \0 020 001 260 361 g \0 \0 0053140 j l 002 H \n \0 \0 h 032 h 032 032 032 020 \0 ( 0053160 3 3 c l : e x p t ) \r ( 2 6 0053200 i n t e g e r 1 3 c l : * 0053220 6 c l : * ) \r ( 1 9 ( i n 0053240 t e g e r 0 ) ) \r ( p u t ( 0053260 q u o t e c l : : u n s i g n 0053300 e d - b y t e ) ( q u o t e 0053320 t y p e - e x p a n d e r ) ( 0053340 q u o t e c l : : | t y p e - 0053360 e x p a n d - U N S I G N E D - 0053400 B Y T E | ) ) \r c l : : | t y p 0053420 e - e x p a n d - R A T I O N A 0053440 L | d 1 \r ( l ( 0 $ $ t y 0053460 p e - f o r m ) ) \0 006 \0 \0 \0 001 0053500 o \0 \0 \0 020 \0 n i l \r n i l \r ( 0053520 3 ( o r r a t i o i n t e 0053540 g e r ) ) \r ( p u t ( q u o t 0053560 e c l : r a t i o n a l ) ( 0053600 q u o t e t y p e - e x p a n 0053620 d e r ) ( q u o t e c l : : 0053640 | t y p e - e x p a n d - R A T 0053660 I O N A L | ) ) \r c l : : | t y 0053700 p e - e x p a n d - R E A D T A 0053720 B L E | d 1 \r ( l ( 0 $ $ 0053740 t y p e - f o r m ) ) \0 006 \0 \0 0053760 \0 001 o \0 \0 \0 020 \0 n i l \r n i l \r 0054000 ( 3 ( d a t a t y p e r e 0054020 a d t a b l e p ) ) \r ( p u t 0054040 ( q u o t e c l : r e a d t a 0054060 b l e ) ( q u o t e t y p e 0054100 - e x p a n d e r ) ( q u o t 0054120 e c l : : | t y p e - e x p a 0054140 n d - R E A D T A B L E | ) ) \r 0054160 c l : : | t y p e - e x p a n d 0054200 - C O M M O N | d 1 \r ( l ( 0054220 0 $ $ t y p e - f o r m ) ) 0054240 \0 003 \0 \0 \0 001 i 020 \0 n i l \r n i l 0054260 \r ( ) \r ( p u t ( q u o t e 0054300 c l : c o m m o n ) ( q u o t 0054320 e t y p e - e x p a n d e r ) 0054340 ( q u o t e c l : : | t y p 0054360 e - e x p a n d - C O M M O N | 0054400 ) ) \r c l : : | t y p e - e x p 0054420 a n d - C O M P I L E D - F U N 0054440 C T I O N | d 1 \r ( l ( 0 0054460 $ $ t y p e - f o r m ) ) \0 006 0054500 \0 \0 \0 001 o \0 \0 \0 020 \0 n i l \r n i 0054520 l \r ( 3 ( s a t i s f i e s 0054540 c l : c o m p i l e d - f u n 0054560 c t i o n - p ) ) \r ( p u t ( 0054600 q u o t e c l : c o m p i l e 0054620 d - f u n c t i o n ) ( q u o 0054640 t e t y p e - e x p a n d e r 0054660 ) ( q u o t e c l : : | t y 0054700 p e - e x p a n d - C O M P I L 0054720 E D - F U N C T I O N | ) ) \r c 0054740 l : : | t y p e - e x p a n d - 0054760 C O M P L E X | d 1 \r ( l ( 0055000 0 $ $ t y p e - f o r m ) ) 0055020 \0 ` 001 \0 \0 001 @ 002 265 023 g \0 \0 021 001 \0 0055040 H g \0 \0 360 227 o \0 \0 \0 020 001 260 361 g \0 0055060 \0 g \0 \0 g \0 \0 g \0 \0 o \0 \0 \0 g \0 0055100 \0 g \0 \0 o \0 \0 \0 g \0 \0 H h 032 032 h 0055120 032 032 032 g \0 \0 o \0 \0 \0 g \0 \0 H h 032 0055140 032 h 032 032 032 h 032 032 032 h 032 032 032 h 032 032 0055160 h 032 032 032 020 \0 n i l \r ( 7 0 q u 0055200 o t e 6 3 t y p e p 5 2 0055220 q u o t e 4 5 t y p e p 4 0055240 2 a n d 3 5 l a m b d a 0055260 3 2 s a t i s f i e s 2 9 0055300 c o m p l e x 2 6 a n d 1 0055320 3 c l : * 6 c l : * ) \r ( 0055340 6 7 ( c o m p l e x - i m a 0055360 g p a r t x ) 4 9 ( c o m 0055400 p l e x - r e a l p a r t x ) 0055420 3 9 ( x ) 1 9 ( d a t a 0055440 t y p e c o m p l e x ) ) \r ( 0055460 p u t ( q u o t e c o m p l 0055500 e x ) ( q u o t e t y p e - 0055520 e x p a n d e r ) ( q u o t e 0055540 c l : : | t y p e - e x p a n 0055560 d - C O M P L E X | ) ) \r c l : 0055600 : | t y p e - e x p a n d - S E 0055620 Q U E N C E | d 1 \r ( l ( 0 0055640 $ $ t y p e - f o r m ) ) \0 0055660 ` 001 \0 \0 001 @ 002 265 023 g \0 \0 021 001 \0 H 0055700 g \0 \0 360 227 o \0 \0 \0 020 001 260 361 g \0 \0 0055720 g \0 \0 g \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 0055740 g \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 g \0 \0 0055760 g \0 \0 H h 032 032 h 032 032 032 h 032 032 032 h 0056000 032 032 o \0 \0 \0 032 032 h 032 032 032 h 032 032 h 0056020 032 032 032 020 \0 n i l \r ( 6 1 q u o 0056040 t e 5 8 e l e m e n t 5 5 0056060 t y p e p 4 8 c l : l a m 0056100 b d a 4 5 c l : f u n c t i 0056120 o n 4 2 c l : e v e r y 3 0056140 5 l a m b d a 3 2 s a t i 0056160 s f i e s 2 9 s e q u e n c 0056200 e 2 6 a n d 1 3 c l : * 0056220 6 c l : * ) \r ( 8 0 ( x 0056240 ) 5 2 ( e l e m e n t ) 3 0056260 9 ( x ) 1 9 ( o r c l : 0056300 v e c t o r l i s t ) ) \r ( p 0056320 u t ( q u o t e s e q u e n 0056340 c e ) ( q u o t e t y p e - 0056360 e x p a n d e r ) ( q u o t e 0056400 c l : : | t y p e - e x p a n 0056420 d - S E Q U E N C E | ) ) \r c l 0056440 : : | t y p e - e x p a n d - A 0056460 R R A Y | d 1 \r ( l ( 0 $ 0056500 $ t y p e - f o r m ) ) 002 \b \t 0056520 \0 \0 001 @ 002 021 Q 005 H 265 \r g \0 \0 271 H 0056540 002 226 H 002 001 205 001 260 367 g \0 \0 Z 303 \0 \0 0056560 232 J g \0 \0 g \0 \0 \v \0 \0 272 I g \0 \0 0056600 360 221 h 200 i 224 I \t \0 \0 271 J d g \0 \0 0056620 360 262 = 277 I g \0 \0 360 224 o \0 \0 \0 020 g 0056640 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 0056660 g \0 \0 o \0 \0 \0 g \0 \0 I h 032 032 h 032 0056700 032 032 h 032 032 032 h 032 032 032 h 032 032 020 o \0 0056720 \0 \0 364 262 V I d g \0 \0 360 223 g \0 \0 020 0056740 g \0 \0 360 223 g \0 \0 020 I g \0 \0 360 246 I 0056760 o \0 \0 \0 364 223 g \0 \0 020 g \0 \0 g \0 \0 0057000 o \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 0057020 \0 \0 g \0 \0 I h 032 032 h 032 032 032 h 032 032 0057040 032 h 032 032 032 h 032 032 020 J [ 265 004 i 213 001 0057060 g \0 \0 360 221 h 200 i 262 - h 262 P g \0 \0 0057100 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 0057120 \0 o \0 \0 \0 J \t \0 \0 h 032 032 032 I g \0 0057140 \0 360 225 h 204 K 002 260 303 i 264 026 g \0 \0 o 0057160 \0 \0 \0 g \0 \0 I h 032 032 h 032 032 032 h 032 0057200 032 032 032 h 032 032 032 h 032 032 020 J h 275 \ 265 0057220 005 i 260 024 001 ] g \0 \0 360 244 M 303 \0 \0 221 0057240 h 200 i 262 026 h 242 261 \0 242 J k \n \0 \0 254 0057260 g \0 \0 J 001 h 032 032 020 L 002 260 323 g \0 \0 0057300 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 0057320 \0 o \0 \0 \0 J \t \0 \0 h 032 032 032 J j 021 0057340 022 \b N 265 017 O 020 022 I g \0 \0 360 262 7 h 0057360 260 5 001 g \0 \0 360 221 h 200 i 262 035 g \0 \0 0057400 g \0 \0 g \0 \0 O 016 h 032 032 032 N 001 h 032 0057420 032 032 O 020 032 _ 020 277 N 002 O 016 k 324 _ 016 0057440 277 ^ 260 301 i 264 026 g \0 \0 o \0 \0 \0 g \0 0057460 \0 I h 032 032 h 032 032 032 h 032 \n \0 \0 032 032 0057500 032 h 032 032 032 h 032 032 020 o \0 \0 \0 g \0 \0 0057520 I J h 032 032 032 \n \0 \0 020 \0 ( 5 1 7 0057540 c l : e r r o r 4 9 0 \ \ a 0057560 p p e n d 2 3 8 9 c l : l e 0057600 n g t h 3 4 7 c l : l e n g 0057620 t h 2 6 1 c l : l e n g t h 0057640 5 4 % g e t - c a n o n i c 0057660 a l - c m l - t y p e 3 9 c 0057700 l : m a k e - l i s t ) \r ( 5 0 0057720 8 c l : a r r a y 4 7 7 q 0057740 u o t e 4 7 0 e q u a l 4 0057760 3 4 x 4 3 1 c l : a r r a 0060000 y - d i m e n s i o n 4 2 8 0060020 e q l 4 1 8 c l : * 4 0 8 0060040 c l : * 3 8 1 e q l 3 7 0060060 4 a n d 3 6 7 l a m b d a 0060100 3 6 4 s a t i s f i e s 3 0060120 5 1 c l : v e c t o r 3 3 1 0060140 s m a l l p 3 2 5 c l : * 0060160 2 9 0 q u o t e 2 8 3 e 0060200 q u a l 2 6 9 c l : * 2 5 0060220 3 e q l 2 4 6 a n d 2 3 0060240 9 l a m b d a 2 3 6 s a t 0060260 i s f i e s 2 2 3 c l : * 0060300 1 9 3 q u o t e 1 8 6 e q 0060320 u a l 1 7 9 a n d 1 7 2 0060340 l a m b d a 1 6 9 s a t i s 0060360 f i e s 1 6 5 c l : b i t - 0060400 v e c t o r 1 5 3 b i t 1 0060420 4 8 s t r i n g 1 4 3 c l 0060440 : s t r i n g - c h a r 1 3 9 0060460 c l : v e c t o r 1 3 4 c 0060500 l : * 1 0 2 q u o t e 9 5 0060520 e q u a l 8 8 a n d 8 1 0060540 l a m b d a 7 8 s a t i s 0060560 f i e s 6 8 c l : * 6 0 0060600 c l : * 4 4 c l : * 3 6 0060620 c l : * 3 3 : i n i t i a l 0060640 - e l e m e n t 2 8 s m a l 0060660 l p 2 4 c l : * 1 0 c l 0060700 : * ) \r ( 5 0 5 " B a d ( 0060720 f i n a l ) a r r a y t y p 0060740 e d e s i g n a t o r : ~ S 0060760 " 4 7 4 ( c l : a r r a y - 0061000 e l e m e n t - t y p e x ) 0061020 3 8 5 ( c l : a r r a y - r a 0061040 n k x ) 3 7 8 ( c l : a r 0061060 r a y p x ) \r 3 7 1 ( x ) 0061100 2 8 7 ( c l : a r r a y - e 0061120 l e m e n t - t y p e x ) 2 0061140 5 7 ( c l : a r r a y - r a n 0061160 k x ) 2 5 0 ( c l : a r r 0061200 a y p x ) 2 4 3 ( x ) 1 0061220 9 0 ( c l : a r r a y - e l e 0061240 m e n t - t y p e x ) \r 1 8 0061260 3 ( c l : v e c t o r p x ) 0061300 1 7 6 ( x ) 1 6 0 ( u n 0061320 s i g n e d - b y t e 1 ) 1 0061340 2 6 ( c l : * ) 9 9 ( c l 0061360 : a r r a y - e l e m e n t - t 0061400 y p e x ) 9 2 ( c l : a r 0061420 r a y p x ) \r 8 5 ( x ) 0061440 7 4 ( s a t i s f i e s c l 0061460 : a r r a y p ) ) \r ( p u t ( 0061500 q u o t e c l : a r r a y ) 0061520 ( q u o t e t y p e - e x p a 0061540 n d e r ) ( q u o t e c l : 0061560 : | t y p e - e x p a n d - A R 0061600 R A Y | ) ) \r c l : : | t y p e 0061620 - e x p a n d - V E C T O R | 0061640 d 1 \r ( l ( 0 $ $ t y p e - 0061660 f o r m ) ) \0 300 003 \0 \0 001 @ 002 021 0061700 ! 002 H 265 \r g \0 \0 271 H 002 226 H 002 001 205 0061720 001 260 367 g \0 \0 272 I d g \0 \0 360 262 7 277 0061740 J g \0 \0 360 224 o \0 \0 \0 020 g \0 \0 g \0 0061760 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o 0062000 \0 \0 \0 J h 032 032 032 h 032 032 032 h 032 032 032 0062020 h 032 032 020 g \0 \0 360 227 g \0 \0 J h 032 032 0062040 020 I o \0 \0 \0 \n \0 \0 227 g \0 \0 J h 032 0062060 032 020 g \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o 0062100 \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 I \t \0 0062120 \0 h 032 032 h 032 032 032 J g \0 \0 360 221 h 200 0062140 i 264 020 g \0 \0 o \0 \0 \0 J h 032 032 032 h 0062160 032 032 032 032 h 032 032 032 h 032 032 020 \0 ( 1 4 0062200 7 % g e t - c a n o n i c a l 0062220 - c m l - t y p e 1 0 7 m e 0062240 m b e r ) \r ( 1 6 8 e q l 1 0062260 5 8 c l : * 1 4 3 q u o t 0062300 e 1 3 6 e q u a l 1 2 9 0062320 a n d 1 2 2 l a m b d a 1 0062340 1 9 s a t i s f i e s 1 1 1 0062360 c l : b i t - v e c t o r 9 0062400 4 s t r i n g 8 9 c l : s 0062420 t r i n g - c h a r 6 5 e q 0062440 l 5 8 a n d 5 1 l a m b 0062460 d a 4 8 s a t i s f i e s 0062500 3 8 c l : * 3 0 c l : * 0062520 2 4 c l : * 1 0 c l : * ) 0062540 \r ( 1 7 2 ( c l : a r r a y 0062560 - t o t a l - s i z e v ) 1 0062600 4 0 ( c l : a r r a y - e l e 0062620 m e n t - t y p e v ) 1 3 3 0062640 ( c l : v e c t o r p v ) 0062660 1 2 6 ( v ) 1 0 4 ( b i t 0062700 ( u n s i g n e d - b y t e 0062720 1 ) ) \r 6 9 ( c l : a r r a 0062740 y - t o t a l - s i z e v ) 0062760 6 2 ( c l : v e c t o r p v 0063000 ) 5 5 ( v ) 4 4 ( s a t 0063020 i s f i e s c l : v e c t o r 0063040 p ) ) \r ( p u t ( q u o t e 0063060 c l : v e c t o r ) ( q u o t 0063100 e t y p e - e x p a n d e r ) 0063120 ( q u o t e c l : : | t y p 0063140 e - e x p a n d - V E C T O R | 0063160 ) ) \r c l : : | t y p e - e x p 0063200 a n d - S I M P L E - S T R I N 0063220 G | d 1 \r ( l ( 0 $ $ t y 0063240 p e - f o r m ) ) \0 B 001 \0 \0 001 0063260 @ 002 265 023 g \0 \0 021 001 \0 H g \0 \0 360 227 0063300 o \0 \0 \0 020 001 260 361 g \0 \0 g \0 \0 o \0 0063320 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 0063340 H h 032 032 032 h 032 032 032 h 032 032 032 h 032 032 0063360 020 \0 n i l \r ( 4 3 e q l 3 6 0063400 a n d 2 9 l a m b d a 2 0063420 6 s a t i s f i e s 1 3 c 0063440 l : * 6 c l : * ) \r ( 4 7 0063460 ( c l : a r r a y - t o t a l 0063500 - s i z e v ) 4 0 ( c l : 0063520 s i m p l e - s t r i n g - p 0063540 v ) 3 3 ( v ) 1 9 ( s a 0063560 t i s f i e s c l : s i m p l 0063600 e - s t r i n g - p ) ) \r ( p u 0063620 t ( q u o t e c l : s i m p 0063640 l e - s t r i n g ) ( q u o t 0063660 e t y p e - e x p a n d e r ) 0063700 ( q u o t e c l : : | t y p 0063720 e - e x p a n d - S I M P L E - 0063740 S T R I N G | ) ) \r c l : : | t 0063760 y p e - e x p a n d - S T R I N 0064000 G | d 1 \r ( l ( 0 $ $ t y 0064020 p e - f o r m ) ) \0 B 001 \0 \0 001 0064040 @ 002 265 023 g \0 \0 021 001 \0 H g \0 \0 360 227 0064060 o \0 \0 \0 020 001 260 361 g \0 \0 g \0 \0 o \0 0064100 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 0064120 H h 032 032 032 h 032 032 032 h 032 032 032 h 032 032 0064140 020 \0 n i l \r ( 4 3 e q l 3 6 0064160 a n d 2 9 l a m b d a 2 0064200 6 s a t i s f i e s 1 3 c 0064220 l : * 6 c l : * ) \r ( 4 7 0064240 ( c l : a r r a y - t o t a l 0064260 - s i z e x ) 4 0 ( c l : 0064300 s t r i n g p x ) 3 3 ( x 0064320 ) 1 9 ( s a t i s f i e s 0064340 c l : s t r i n g p ) ) \r ( p u 0064360 t ( q u o t e s t r i n g ) 0064400 ( q u o t e t y p e - e x p 0064420 a n d e r ) ( q u o t e c l 0064440 : : | t y p e - e x p a n d - S 0064460 T R I N G | ) ) \r c l : : | t y 0064500 p e - e x p a n d - S I M P L E 0064520 - A R R A Y | d 1 \r ( l ( 0 0064540 $ $ t y p e - f o r m ) ) 002 0064560 \a \t \0 \0 001 @ 002 021 Q 005 H 265 \r g \0 \0 0064600 271 H 002 226 H 002 001 205 001 260 367 g \0 \0 Z 303 0064620 \0 \0 232 J g \0 \0 g \0 \0 \v \0 \0 272 I g 0064640 \0 \0 360 221 h 200 i 224 I \t \0 \0 271 J d g 0064660 \0 \0 360 262 = 277 I g \0 \0 360 224 o \0 \0 \0 0064700 020 g \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 0064720 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 I h 032 032 0064740 h 032 032 032 h 032 032 032 h 032 032 032 h 032 032 020 0064760 o \0 \0 \0 364 262 d I d g \0 \0 360 223 g \0 0065000 \0 020 g \0 \0 360 247 I d o \0 \0 \0 364 223 g 0065020 \0 \0 020 i 360 223 g \0 \0 020 g \0 \0 g \0 \0 0065040 o \0 \0 \0 g \0 \0 o \0 \0 \0 o \0 \0 \0 I 0065060 g \0 \0 360 221 h 200 i 264 026 g \0 \0 o \0 \0 0065100 \0 g \0 \0 I h 032 032 h 032 032 032 h 032 032 032 0065120 032 h 032 032 032 h 032 032 020 J [ 265 004 i 213 001 0065140 g \0 \0 360 221 h 200 i 262 - h 262 P g \0 \0 0065160 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 0065200 \0 o \0 \0 \0 J \t \0 \0 h 032 032 032 I g \0 0065220 \0 360 225 h 204 K 002 260 303 i 264 026 g \0 \0 o 0065240 \0 \0 \0 g \0 \0 I h 032 032 h 032 032 032 h 032 0065260 032 032 032 h 032 032 032 h 032 032 020 J h 275 \ 265 0065300 005 i 260 024 001 ] g \0 \0 360 244 M 303 \0 \0 221 0065320 h 200 i 262 < h 242 261 \0 223 g \0 \0 g \0 \0 0065340 o \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 0065360 \0 \0 J \t \0 \0 h 032 032 032 J j 021 022 \b N 0065400 265 023 O 020 022 I g \0 \0 360 262 ; h 260 9 L 0065420 002 260 255 001 g \0 \0 360 221 h 200 i 262 035 g \0 0065440 \0 g \0 \0 g \0 \0 O 016 h 032 032 032 N 001 h 0065460 032 032 032 O 020 032 _ 020 277 N 002 O 016 k 324 _ 0065500 016 277 ^ 260 275 i 264 026 g \0 \0 o \0 \0 \0 g 0065520 \0 \0 I h 032 032 h 032 032 032 h 032 \n \0 \0 032 0065540 032 032 h 032 032 032 h 032 032 020 o \0 \0 \0 g \0 0065560 \0 I J h 032 032 032 \n \0 \0 020 \0 ( 5 1 6 0065600 c l : e r r o r 4 8 9 \ \ 0065620 a p p e n d 2 3 8 4 c l : l 0065640 e n g t h 2 7 5 c l : l e n 0065660 g t h 5 4 % g e t - c a n o 0065700 n i c a l - c m l - t y p e 3 0065720 9 c l : m a k e - l i s t ) \r 0065740 ( 5 0 7 c l : s i m p l e - a 0065760 r r a y 4 7 6 q u o t e 4 0066000 6 9 e q u a l 4 3 3 x 4 0066020 3 0 c l : a r r a y - d i m e 0066040 n s i o n 4 2 7 e q l 4 1 0066060 7 c l : * 4 0 3 c l : * 0066100 3 7 6 e q l 3 6 9 a n d 0066120 3 6 2 l a m b d a 3 5 9 s 0066140 a t i s f i e s 3 4 5 s m a 0066160 l l p 3 3 9 c l : * 3 0 4 0066200 q u o t e 2 9 7 e q u a l 0066220 2 8 3 c l : * 2 6 7 e q 0066240 l 2 6 0 a n d 2 5 3 l a 0066260 m b d a 2 5 0 s a t i s f i 0066300 e s 2 3 7 c l : * 2 0 6 0066320 q u o t e 1 9 9 e q u a l 0066340 1 8 9 c l : * 1 7 7 a n d 0066360 1 7 0 l a m b d a 1 6 7 0066400 s a t i s f i e s 1 6 3 c l 0066420 : s i m p l e - v e c t o r 1 0066440 5 6 c l : s i m p l e - b i t 0066460 - v e c t o r 1 4 3 b i t 0066500 1 3 9 c l : s i m p l e - s t 0066520 r i n g 1 3 4 c l : s t r i 0066540 n g - c h a r 1 0 2 q u o t 0066560 e 9 5 e q u a l 8 8 a n 0066600 d 8 1 l a m b d a 7 8 s 0066620 a t i s f i e s 6 8 c l : * 0066640 6 0 c l : * 4 4 c l : * 0066660 3 6 c l : * 3 3 : i n i 0066700 t i a l - e l e m e n t 2 8 0066720 s m a l l p 2 4 c l : * 1 0066740 0 c l : * ) \r ( 5 0 4 " B 0066760 a d ( f i n a l ) a r r a y 0067000 t y p e d e s i g n a t o r 0067020 : ~ S " 4 7 3 ( c l : a r 0067040 r a y - e l e m e n t - t y p e 0067060 x ) 3 8 0 ( c l : a r r a 0067100 y - r a n k x ) 3 7 3 ( s 0067120 i m p l e - a r r a y - p x ) 0067140 \r 3 6 6 ( x ) 3 0 1 ( c 0067160 l : a r r a y - e l e m e n t - 0067200 t y p e x ) 2 7 1 ( c l : 0067220 a r r a y - r a n k x ) 2 6 0067240 4 ( s i m p l e - a r r a y - 0067260 p x ) 2 5 7 ( x ) 2 0 3 0067300 ( c l : a r r a y - e l e m e 0067320 n t - t y p e x ) \r 1 8 5 0067340 ( e q l 1 ( c l : a r r a y 0067360 - r a n k x ) ) 1 8 1 ( s 0067400 i m p l e - a r r a y - p x ) 0067420 1 7 4 ( x ) 1 5 1 ( u n 0067440 s i g n e d - b y t e 1 ) 1 0067460 2 6 ( c l : * ) 9 9 ( c l 0067500 : a r r a y - e l e m e n t - t 0067520 y p e x ) \r 9 2 ( s i m p 0067540 l e - a r r a y - p x ) 8 5 0067560 ( x ) 7 4 ( s a t i s f i 0067600 e s s i m p l e - a r r a y - 0067620 p ) ) \r ( p u t ( q u o t e 0067640 c l : s i m p l e - a r r a y ) 0067660 ( q u o t e t y p e - e x p 0067700 a n d e r ) ( q u o t e c l 0067720 : : | t y p e - e x p a n d - S 0067740 I M P L E - A R R A Y | ) ) \r ( 0067760 l e t * ( ( a 0 5 6 0 ( q u 0070000 o t e c l : s i m p l e - a r 0070020 r a y ) ) ( a 0 5 6 1 ( q u 0070040 o t e t y p e ) ) ( a 0 5 6 0070060 2 " S i m p l e - a r r a y 0070100 t y p e e x p a n d e r " ) ) 0070120 ( \r p r o g n ( c o n d ( 0070140 ( c l : f b o u n d p ( q u o 0070160 t e s e t - d o c u m e n t a 0070200 t i o n ) ) ( s e t - d o c u 0070220 m e n t a t i o n a 0 5 6 0 0070240 a 0 5 6 1 a 0 5 6 2 ) ) ) a 0070260 0 5 6 2 ) ) \r c l : : | t y p e 0070300 - e x p a n d - S I M P L E - V 0070320 E C T O R | d 1 \r ( l ( 0 0070340 $ $ t y p e - f o r m ) ) \0 B 0070360 001 \0 \0 001 @ 002 265 023 g \0 \0 021 001 \0 H g 0070400 \0 \0 360 227 o \0 \0 \0 020 001 260 361 g \0 \0 g 0070420 \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 0070440 o \0 \0 \0 H h 032 032 032 h 032 032 032 h 032 032 0070460 032 h 032 032 020 \0 n i l \r ( 4 3 e q 0070500 l 3 6 a n d 2 9 l a m b 0070520 d a 2 6 s a t i s f i e s 0070540 1 3 c l : * 6 c l : * ) \r 0070560 ( 4 7 ( c l : a r r a y - t 0070600 o t a l - s i z e v ) 4 0 0070620 ( c l : s i m p l e - v e c t o 0070640 r - p v ) 3 3 ( v ) 1 9 0070660 ( s a t i s f i e s c l : s 0070700 i m p l e - v e c t o r - p ) ) 0070720 \r ( p u t ( q u o t e c l : 0070740 s i m p l e - v e c t o r ) ( 0070760 q u o t e t y p e - e x p a n 0071000 d e r ) ( q u o t e c l : : 0071020 | t y p e - e x p a n d - S I M 0071040 P L E - V E C T O R | ) ) \r c l 0071060 : : | t y p e - e x p a n d - B 0071100 I T - V E C T O R | d 1 \r ( l 0071120 ( 0 $ $ t y p e - f o r m ) 0071140 ) \0 B 001 \0 \0 001 @ 002 265 023 g \0 \0 021 0071160 001 \0 H g \0 \0 360 227 o \0 \0 \0 020 001 260 361 0071200 g \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 0071220 \0 g \0 \0 o \0 \0 \0 H h 032 032 032 h 032 032 0071240 032 h 032 032 032 h 032 032 020 \0 n i l \r ( 4 0071260 3 e q l 3 6 a n d 2 9 0071300 l a m b d a 2 6 s a t i s f 0071320 i e s 1 3 c l : * 6 c l 0071340 : * ) \r ( 4 7 ( c l : a r r 0071360 a y - t o t a l - s i z e v ) 0071400 4 0 ( c l : b i t - v e c t 0071420 o r - p v ) 3 3 ( v ) 1 0071440 9 ( s a t i s f i e s c l : 0071460 b i t - v e c t o r - p ) ) \r ( 0071500 p u t ( q u o t e c l : b i 0071520 t - v e c t o r ) ( q u o t e 0071540 t y p e - e x p a n d e r ) 0071560 ( q u o t e c l : : | t y p e 0071600 - e x p a n d - B I T - V E C T 0071620 O R | ) ) \r c l : : | t y p e - 0071640 e x p a n d - S I M P L E - B I 0071660 T - V E C T O R | d 1 \r ( l 0071700 ( 0 $ $ t y p e - f o r m ) ) 0071720 \0 B 001 \0 \0 001 @ 002 265 023 g \0 \0 021 001 0071740 \0 H g \0 \0 360 227 o \0 \0 \0 020 001 260 361 g 0071760 \0 \0 g \0 \0 o \0 \0 \0 g \0 \0 o \0 \0 \0 0072000 g \0 \0 o \0 \0 \0 H h 032 032 032 h 032 032 032 0072020 h 032 032 032 h 032 032 020 \0 n i l \r ( 4 3 0072040 e q l 3 6 a n d 2 9 l 0072060 a m b d a 2 6 s a t i s f i 0072100 e s 1 3 c l : * 6 c l : 0072120 * ) \r ( 4 7 ( c l : a r r a 0072140 y - t o t a l - s i z e v ) 0072160 4 0 ( c l : s i m p l e - b i 0072200 t - v e c t o r - p v ) 3 3 0072220 ( v ) 1 9 ( s a t i s f i 0072240 e s c l : s i m p l e - b i t 0072260 - v e c t o r - p ) ) \r ( p u t 0072300 ( q u o t e c l : s i m p l 0072320 e - b i t - v e c t o r ) ( q 0072340 u o t e t y p e - e x p a n d 0072360 e r ) ( q u o t e c l : : | 0072400 t y p e - e x p a n d - S I M P 0072420 L E - B I T - V E C T O R | ) ) 0072440 \r ( p u t p r o p s c h a r a 0072460 c t e r c m l t y p e c l : 0072500 c h a r a c t e r ) \r ( p u t p 0072520 r o p s f i x p c m l t y p 0072540 e b i g n u m ) \r ( p u t p r 0072560 o p s f l o a t p c m l t y 0072600 p e c l : s i n g l e - f l o 0072620 a t ) \r ( p u t p r o p s g e 0072640 n e r a l - a r r a y c m l t 0072660 y p e c l : a r r a y ) \r ( p 0072700 u t p r o p s l i s t p c m 0072720 l t y p e c o n s ) \r ( p u t 0072740 p r o p s l i t a t o m c m 0072760 l t y p e c l : s y m b o l ) 0073000 \r ( p u t p r o p s o n e d - 0073020 a r r a y c m l t y p e c l 0073040 : a r r a y ) \r ( p u t p r o p 0073060 s s m a l l p c m l t y p e 0073100 c l : f i x n u m ) \r ( p u t 0073120 p r o p s s t r i n g p c m 0073140 l t y p e c l : s i m p l e - 0073160 s t r i n g ) \r ( p u t p r o p 0073200 s h a r r a y p c m l t y p 0073220 e c l : h a s h - t a b l e ) 0073240 \r ( p u t p r o p s t w o d - 0073260 a r r a y c m l t y p e c l 0073300 : a r r a y ) \r ( p u t p r o p 0073320 s c l : s y m b o l c m l s 0073340 u b t y p e d e s c r i m i n a 0073360 t o r s y m b o l - t y p e ) 0073400 \r ( p u t p r o p s c l : a r 0073420 r a y c m l s u b t y p e d e 0073440 s c r i m i n a t o r a r r a 0073460 y - t y p e ) \r ( p u t p r o p 0073500 s c l : d e f t y p e p r o 0073520 p t y p e i g n o r e ) \r ( p 0073540 u t p r o p s c m l t y p e s 0073560 f i l e t y p e c l : c o m 0073600 p i l e - f i l e ) \r ( p u t p 0073620 r o p s c m l t y p e s c o 0073640 p y r i g h t ( " X e r o x 0073660 C o r p o r a t i o n " 1 9 8 0073700 5 1 9 8 6 ) ) \r n i l \r 0073715