$ od -c -N 50000 [eris]<LispCore>SOURCES>APRINT!51
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 006 001 ( f i l e
0000100 c r e a t e d " 1 6 - O c t -
0000120 8 6 2 1 : 2 8 : 0 6 " 006 004 {
0000140 e r i s } < l i s p c o r e > s
0000160 o u r c e s > a p r i n t . \ ;
0000200 5 1 006 001 7 2 8 5 7 \r \r
0000220 | c h a n g e s | | t
0000240 o : | ( f n s p r i n t -
0000260 c i r c l e - e n t e r p r i
0000300 n t - c i r c l e - s c a n p
0000320 r i n t - c i r c l e - l o o k
0000340 u p \ \ c o n v e r t n u m b
0000360 e r ) \r \r | p r e v
0000400 i o u s | | d a t e : | " 1
0000420 4 - O c t - 8 6 2 0 : 1 1 : 0
0000440 9 " { e r i s } < l i s p c o
0000460 r e > s o u r c e s > a p r i n
0000500 t . \ ; 4 7 ) \r \r \r ; C o p y
0000520 r i g h t ( c ) 1 9 8 2 ,
0000540 1 9 8 3 , 1 9 8 4 , 1 9 8 5
0000560 , 1 9 8 6 b y X e r o x
0000600 C o r p o r a t i o n . A l
0000620 l r i g h t s r e s e r v e
0000640 d . \r \r ( p r e t t y c o m p r
0000660 i n t a p r i n t c o m s ) \r
0000700 \r ( r p a q q 006 002 a p r i n t
0000720 c o m s 006 001 \r (
0000740 ( c o m s ( * \ ; " U s e
0000760 r - l e v e l p r i n t f u
0001000 n c t i o n s " ) \r
0001020 ( f n s p r i
0001040 n 1 p r i n 2 p r i n 3 p
0001060 r i n 4 p r i n t p r i n t
0001100 c c o d e p r i n t l e v e l
0001120 r a d i x s p a c e s t e
0001140 r p r i f r e s h l i n e \r
0001160
0001200 d e f p r i n t l i n e
0001220 l e n g t h ) ) \r
0001240 ( i n i t v a r s ( p l v l
0001260 f i l e f l g n i l ) \r
0001300 ( \ \ l
0001320 i n e l e n g t h 8 2 ) \r
0001340 ( \ \
0001360 f l o a t f o r m a t t ) \r
0001400 ( p
0001420 r x f l g n i l ) \r
0001440 ( * p r i n
0001460 t - b a s e * 1 0 ) \r
0001500 ( * r e a
0001520 d - b a s e * 1 0 ) \r
0001540 ( * p r i
0001560 n t - r a d i x * n i l ) \r
0001600 ( *
0001620 p r i n t - e s c a p e * t )
0001640 \r
0001660 ( * p r i n t - c a s e * ' :
0001700 u p c a s e ) \r
0001720 ( * p r i n t - g
0001740 e n s y m * t ) \r
0001760 ( * p r i n t
0002000 - l e v e l * n i l ) \r
0002020 ( * p r
0002040 i n t - l e n g t h * n i l )
0002060 \r
0002100 ( * p r i n t - p r e t t y *
0002120 n i l ) \r
0002140 ( * p r i n t - c i r c
0002160 l e * n i l ) \r
0002200 ( * p r i n t -
0002220 a r r a y * n i l ) \r
0002240 ( * p r i
0002260 n t - c i r c l e - h a s h t a
0002300 b l e * n i l ) \r
0002320 ( * p a c k a
0002340 g e * n i l ) \r
0002360 ( * k e y w o r
0002400 d - p a c k a g e * n i l ) \r
0002420 (
0002440 * i n t e r l i s p - p r i n 1
0002460 - c a s e * ' : u p c a s e )
0002500 \r
0002520 ( \ \ d e f p r i n t f n s n
0002540 i l ) ) \r ( c o
0002560 m s ( * \ ; " P R I N T
0002600 i n t e r n a l s " ) \r
0002620 ( f n s p
0002640 r i n t - c i r c l e - l o o k
0002660 u p p r i n t - c i r c l e -
0002700 l a b e l - p p r i n t - c i
0002720 r c l e - s c a n p r i n t -
0002740 c i r c l e - e n t e r ) \r
0002760 ( f n s
0003000 \ \ p r i n d a t u m \ \ e
0003020 l i d e . p r i n t . e l e m e
0003040 n t \ \ e l i d e . e l e m e
0003060 n t . c h a r \ \ e l i d e .
0003100 p r i n t . t a i l \r
0003120 \
0003140 \ e l i d e . t a i l . s t r i
0003160 n g \ \ c k p o s b o u t \
0003200 \ c k p o s s o u t \ \ c o n
0003220 v e r t n u m b e r \ \ l i t
0003240 p r i n \r
0003260 \ \ l i t p r
0003300 i n . i n t e r n a l \ \ s y
0003320 m b o l . e s c a p e . c o u n
0003340 t \ \ n u m e r i c . p n a m
0003360 e p \ \ p r i n s t a c k p
0003400 \ \ p r i n t a d d r \r
0003420
0003440 \ \ p r i n s t r i n g \ \ s
0003460 o u t \ \ o u t c h a r \ \
0003500 f i l e o u t c h a r f n \ \
0003520 t t y o u t c h a r f n ) \r
0003540 ( d e c
0003560 l a r e \ : e v a l @ c o m p
0003600 i l e d o n t c o p y ( m a
0003620 c r o s . f i l e l i n e l e
0003640 n g t h . ) \r
0003660 ( e x p
0003700 o r t ( m a c r o s . s p a
0003720 c e c h e c k . \ \ c h e c k
0003740 r a d i x ) ) ) \r
0003760 ( f n s \ \ i n
0004000 v a l i d . r a d i x ) \r
0004020 ( s p e c
0004040 v a r s \ \ t h i s f i l e l
0004060 i n e l e n g t h ) ) \r
0004100 ( c o m s ( * \ ;
0004120 " I n t e r n a l p r i n t i
0004140 n g " ) \r
0004160 ( f n s \ \ m a p p n a
0004200 m e \ \ m a p p n a m e . i n
0004220 t e r n a l p n a m e s t r e
0004240 a m p ) \r
0004260 ( d e c l a r e \ : d o
0004300 n t c o p y ( r e s o u r c e
0004320 s \ \ m a p p n a m e s t r e
0004340 a m ) \r
0004360 ( m a c r o s
0004400 p n a m e s t r e a m p ) ) \r
0004420 ( i
0004440 n i t r e s o u r c e s \ \ m
0004460 a p p n a m e s t r e a m ) \r
0004500 ( i n
0004520 i t v a r s ( \ \ p n a m e d
0004540 e v i c e ( n c r e a t e '
0004560 f d e v ( \ \ g e t d e v i c
0004600 e f r o m h o s t n a m e ' n
0004620 u l l t ) ) ) ) \r
0004640 ( g l o b a l v
0004660 a r s \ \ p n a m e d e v i c
0004700 e ) ) \r ( c o m
0004720 s ( * \ ; " O b s o l e t
0004740 e " ) \r
0004760 ( f n s \ \ m a p c h a r
0005000 s ) ) \r ( d e c
0005020 l a r e \ : e v a l @ c o m p
0005040 i l e d o c o p y \r
0005060 ( a d d v a
0005100 r s ( s y s s p e c v a r s
0005120 * p r i n t - b a s e * * r e
0005140 a d - b a s e * * p r i n t -
0005160 r a d i x * * p r i n t - e s
0005200 c a p e * \r
0005220
0005240 * p r i n t - c a s
0005260 e * * p r i n t - g e n s y m
0005300 * * p r i n t - l e v e l *
0005320 * p r i n t - l e n g t h * \r
0005340
0005360 *
0005400 p r i n t - p r e t t y * * p
0005420 r i n t - c i r c l e * * p r
0005440 i n t - a r r a y * * p a c k
0005460 a g e * ) ) ) \r
0005500 ( c o m s ( * \ ; " P R I
0005520 N T N U M a n d f r i e n d
0005540 s " ) \r
0005560 ( f n s p r i n t n u m
0005600 f l t f m t \ \ c h e c k f l
0005620 t f m t ) \r
0005640 ( m a c r o s n u m f
0005660 o r m a t c o d e ) \r
0005700 ( i n i t v a
0005720 r s ( n i l n u m p r i n t f
0005740 l g ) ) ) \r ( l
0005760 o c a l v a r s . t ) \r
0006000 ( g l o b a l v a r
0006020 s \ \ l i n e l e n g t h \
0006040 \ f l o a t f o r m a t p r x
0006060 f l g \ \ d e f p r i n t f n
0006100 s ) \r ( d e c l
0006120 a r e \ : d o n t e v a l @ l
0006140 o a d d o e v a l @ c o m p i
0006160 l e d o n t c o p y c o m p
0006200 i l e r v a r s ( a d d v a r
0006220 s ( n l a m a ) \r
0006240
*
0006340 ( n l a m l ) \r
0006360
*
0006460 ( l a m
0006500 a p r i n t - c i r c l e - e
0006520 n t e r \r
0006540
*
0006640 p r i n t - c
0006660 i r c l e - s c a n \r
0006700
*
0007000 p r i
0007020 n t - c i r c l e - l a b e l -
0007040 p \r
0007060
*
0007160 ) ) ) ) ) \r \r \r \r 006 004
0007200 ( * \ ; " U s e r - l e v e
0007220 l p r i n t f u n c t i o n
0007240 s " ) 006 001 \r \r ( d e f i n e q \r
0007260 \r ( 006 004 p r i n 1 006 001 \r ( l
0007300 a m b d a ( x f i l e ) 006 003
0007320 006 001
0007340
0007360 006 003 (
0007400 * | b v m : | " 2 9 - S e p
0007420 - 8 6 2 3 : 5 9 " ) 006 001 006 003 006
0007440 001 \r
0007460
*
0007520 006 003 ( * | ; ; ; | "
0007540 L i k e P R I N 2 b u t n
0007560 o e s c a p i n g . A l s
0007600 o i m p l i e s n o r a d
0007620 i x q u a l i f i e r s , a
0007640 l t h o u g h C o m m o n L
0007660 i s p s e p a r a t e s * P
0007700 R I N T - R A D I X * f r o m
0007720 * P R I N T - E S C A P E *
0007740 - - m i g h t w a n t t o
0007760 b i n d * P R I N T - R A D
0010000 I X * t o ( A N D ( f e t
0010020 c h ( R E A D T A B L E P C
0010040 O M M O N L I S P ) o f * R
0010060 E A D T A B L E * ) * P R I N
0010100 T - R A D I X * ) " ) 006 001 \r
0010120 ( l e t * ( ( s t r m (
0010140 \ \ g e t s t r e a m f i l e
0010160 ' o u t p u t ) ) \r
0010200 ( o b e y - p r i n
0010220 t - l e v e l ( o r ( 006 002 |
0010240 f f e t c h | 006 001 ( r e a d t
0010260 a b l e p c o m m o n l i s p
0010300 ) 006 002 | o f | 006 001 ( \ \ d t
0010320 e s t * r e a d t a b l e * \r
0010340
*
0010440 '
0010460 r e a d t a b l e p ) ) \r
0010500
0010520 ( o
0010540 r ( \ \ o u t t e r m p s t
0010560 r m ) \r
0010600
0010620 p l v l f i l
0010640 e f l g ) ) ) ) \r
0010660 ( l e t ( ( * p r i n t
0010700 - e s c a p e * n i l ) \r
0010720 ( *
0010740 p r i n t - r a d i x * n i l
0010760 ) \r
0011000 ( * p r i n t - l e v e l *
0011020 ( a n d o b e y - p r i n t
0011040 - l e v e l * p r i n t - l e
0011060 v e l * ) ) \r
0011100 ( * p r i n t - l
0011120 e n g t h * ( a n d o b e y
0011140 - p r i n t - l e v e l * p r
0011160 i n t - l e n g t h * ) ) \r
0011200 ( *
0011220 p r i n t - c a s e * ( o r
0011240 * i n t e r l i s p - p r i n 1
0011260 - c a s e * * p r i n t - c a
0011300 s e * ) ) \r
0011320 \ \ t h i s f i l e
0011340 l i n e l e n g t h ) \r
0011360 ( 006 002 d e
0011400 c l a r e 006 001 ( s p e c v a r
0011420 s * p r i n t - r a d i x *
0011440 * p r i n t - e s c a p e * *
0011460 p r i n t - l e v e l * * p r
0011500 i n t - l e n g t h * \r
0011520
0011540 * p r i
0011560 n t - c a s e * \ \ t h i s f
0011600 i l e l i n e l e n g t h ) ) 006
0011620 003 006 001 \r
0011640
*
0011700 006 003 ( * \ ; \r 006
0011720 001 006 003 " * P R I
0011740 N T - C A S E * b e c a u s e
0011760 t o o m a n y t h i n g s
0012000 i n I n t e r l i s p p r
0012020 i n 1 t h i n g s e x p e c
0012040 t i n g t h e s y m b o l '
0012060 s p n a m e " ) 006 001 \r
0012100 ( s e t q
0012120 \ \ t h i s f i l e l i n e l
0012140 e n g t h ( . f i l e l i n e
0012160 l e n g t h . s t r m ) ) \r
0012200 ( 006
0012220 002 \ \ p r i n d a t u m 006 001 x
0012240 s t r m 0 ) \r
0012260 x ) ) ) ) \r \r (
0012300 006 004 p r i n 2 006 001 \r ( l a m
0012320 b d a ( x f i l e r d t b
0012340 l ) 006 003 006 001
0012360
0012400 006 003 ( *
0012420 | b v m : | " 3 0 - S e p - 8
0012440 6 0 0 : 0 2 " ) 006 001 \r
0012460 ( l e t * ( ( s t r m ( \ \
0012500 g e t s t r e a m f i l e '
0012520 o u t p u t ) ) \r
0012540 ( o b e y - p r i n t -
0012560 l e v e l ( o r ( 006 002 | f e
0012600 t c h | 006 001 ( r e a d t a b l
0012620 e p c o m m o n l i s p ) 006
0012640 002 | o f | 006 001 ( s e t q r d
0012660 t b l ( \ \ g t r e a d t a b
0012700 l e \r
0012720
*
0013020 r d t b l ) ) ) \r
0013040
*
0013100 ( o r ( \ \ o u t t e r m p
0013120 s t r m ) \r
0013140
0013160 p l v l
0013200 f i l e f l g ) ) ) ) \r
0013220 ( l e t ( ( * r e
0013240 a d t a b l e * r d t b l ) \r
0013260
0013300 ( * p r i n t - e s c a p e *
0013320 t ) \r
0013340 ( * p r i n t - r a d i x
0013360 * ( n e q * p r i n t - b a
0013400 s e * 1 0 ) ) \r
0013420 ( * p r i n t
0013440 - l e v e l * ( a n d o b e
0013460 y - p r i n t - l e v e l * p
0013500 r i n t - l e v e l * ) ) \r
0013520 ( *
0013540 p r i n t - l e n g t h * ( a
0013560 n d o b e y - p r i n t - l e
0013600 v e l * p r i n t - l e n g t
0013620 h * ) ) \r
0013640 ( * p a c k a g e *
0013660 ( 006 002 | i f | 006 001 ( 006 002 | f e
0013700 t c h | 006 001 ( r e a d t a b l
0013720 e p u s e s i l p a c k a g e
0013740 ) 006 002 | o f | 006 001 r d t b l
0013760 ) \r
0014000
0014020 006 002 | t h e n | 006 001 * i n t
0014040 e r l i s p - p a c k a g e * \r
0014060
0014100 006 002 |
0014120 e l s e | 006 001 * p a c k a g e
0014140 * ) ) \r
0014160 \ \ t h i s f i l e l i
0014200 n e l e n g t h ) \r
0014220 ( 006 002 d e c l
0014240 a r e 006 001 ( s p e c v a r s
0014260 * p r i n t - r a d i x * * p
0014300 r i n t - e s c a p e * * r e
0014320 a d t a b l e * * p r i n t -
0014340 l e v e l * \r
0014360
0014400 * p r i n t - l e
0014420 n g t h * * p a c k a g e *
0014440 \ \ t h i s f i l e l i n e l e
0014460 n g t h ) ) \r
0014500 ( s e t q \ \ t h
0014520 i s f i l e l i n e l e n g t h
0014540 ( . f i l e l i n e l e n g t
0014560 h . s t r m ) ) \r
0014600 ( 006 002 \ \ p r
0014620 i n d a t u m 006 001 x s t r m
0014640 0 ) \r
0014660 x ) ) ) ) \r \r ( 006 004 p r i
0014700 n 3 006 001 \r ( l a m b d a (
0014720 x f i l e ) 006 003 006 001
0014740
*
0015000 006 003 ( * | b v m :
0015020 | " 2 9 - S e p - 8 6 2 3 :
0015040 5 9 " ) 006 001 \r
0015060 \r 006 003 ( *
0015100 * | L i k e | p r i n 1
0015120 | b u t | | n o | | l i n e
0015140 l e n g t h | | c h e c k i n
0015160 g | ) 006 001 \r \r ( l e t *
0015200 ( ( s t r m ( \ \ g e t s t
0015220 r e a m f i l e ' o u t p u
0015240 t ) ) \r (
0015260 o b e y - p r i n t - l e v e l
0015300 ( o r ( 006 002 | f f e t c h |
0015320 006 001 ( r e a d t a b l e p c
0015340 o m m o n l i s p ) 006 002 | o f
0015360 | 006 001 ( \ \ d t e s t * r e
0015400 a d t a b l e * \r
0015420
*
0015520 ' r e a d t a b
0015540 l e p ) ) \r
0015560
0015600 ( o r ( \ \ o u
0015620 t t e r m p s t r m ) \r
0015640
*
0015700 p l v l f i l e f l g ) ) )
0015720 ) \r ( l e t
0015740 ( ( * p r i n t - e s c a p e
0015760 * n i l ) \r
0016000 ( * p r i n t - r
0016020 a d i x * n i l ) \r
0016040 ( * p r i
0016060 n t - l e v e l * ( a n d o
0016100 b e y - p r i n t - l e v e l
0016120 * p r i n t - l e v e l * ) ) \r
0016140
0016160 ( * p r i n t - l e n g t h *
0016200 ( a n d o b e y - p r i n t -
0016220 l e v e l * p r i n t - l e n
0016240 g t h * ) ) \r
0016260 ( * p r i n t - c
0016300 a s e * ( o r * i n t e r l
0016320 i s p - p r i n 1 - c a s e *
0016340 * p r i n t - c a s e * ) ) \r
0016360 \
0016400 \ t h i s f i l e l i n e l e n
0016420 g t h ) \r
0016440 ( 006 002 d e c l a r e 006 001
0016460 ( s p e c v a r s * p r i n
0016500 t - r a d i x * * p r i n t -
0016520 e s c a p e * * p r i n t - l
0016540 e v e l * * p r i n t - l e n
0016560 g t h * \r
0016600
0016620 \ \ t h i s f i l e l
0016640 i n e l e n g t h ) ) \r
0016660 ( 006 002 \ \
0016700 p r i n d a t u m 006 001 x s t
0016720 r m 0 ) \r
0016740 x ) ) ) ) \r \r ( 006 004 p
0016760 r i n 4 006 001 \r ( l a m b d a
0017000 ( x f i l e r d t b l ) 006
0017020 003 006 001
0017040
0017060 006 003 ( * | b v
0017100 m : | " 3 0 - S e p - 8 6 0
0017120 0 : 0 3 " ) 006 001 \r
0017140 \r 006 003
0017160 ( * * | L i k e | p r i n
0017200 2 | b u t | | d o e s n ' t
0017220 | | c h e c k | | l i n e l
0017240 e n g t h | ) 006 001 \r \r (
0017260 l e t * ( ( s t r m ( \ \ g
0017300 e t s t r e a m f i l e ' o
0017320 u t p u t ) ) \r
0017340 ( o b e y - p r i n t - l
0017360 e v e l ( o r ( 006 002 | f e t
0017400 c h | 006 001 ( r e a d t a b l e
0017420 p c o m m o n l i s p ) 006 002
0017440 | o f | 006 001 ( s e t q r d t
0017460 b l ( \ \ g t r e a d t a b l
0017500 e \r
0017520
*
0017620 r d t b l ) ) ) \r
0017640
*
0017700 ( o r ( \ \ o u t t e r m p
0017720 s t r m ) \r
0017740
0017760 p l v l f
0020000 i l e f l g ) ) ) ) \r
0020020 ( l e t ( ( * r e a
0020040 d t a b l e * r d t b l ) \r
0020060 (
0020100 * p r i n t - e s c a p e * t
0020120 ) \r
0020140 ( * p r i n t - r a d i x *
0020160 ( n e q * p r i n t - b a s
0020200 e * 1 0 ) ) \r
0020220 ( * p r i n t -
0020240 l e v e l * ( a n d o b e y
0020260 - p r i n t - l e v e l * p r
0020300 i n t - l e v e l * ) ) \r
0020320 ( * p
0020340 r i n t - l e n g t h * ( a n
0020360 d o b e y - p r i n t - l e v
0020400 e l * p r i n t - l e n g t h
0020420 * ) ) \r
0020440 ( * p a c k a g e * (
0020460 006 002 | i f | 006 001 ( 006 002 | f e t
0020500 c h | 006 001 ( r e a d t a b l e
0020520 p u s e s i l p a c k a g e )
0020540 006 002 | o f | 006 001 r d t b l )
0020560 \r
0020600
0020620 006 002 | t h e n | 006 001 * i n t e
0020640 r l i s p - p a c k a g e * \r
0020660
0020700 006 002 | e
0020720 l s e | 006 001 * p a c k a g e *
0020740 ) ) \r
0020760 \ \ t h i s f i l e l i n
0021000 e l e n g t h ) \r
0021020 ( 006 002 d e c l a
0021040 r e 006 001 ( s p e c v a r s *
0021060 p r i n t - r a d i x * * p r
0021100 i n t - e s c a p e * * r e a
0021120 d t a b l e * * p r i n t - l
0021140 e v e l * \r
0021160
0021200 * p r i n t - l e n
0021220 g t h * * p a c k a g e * \
0021240 \ t h i s f i l e l i n e l e n
0021260 g t h ) ) \r
0021300 ( 006 002 \ \ p r i n d a
0021320 t u m 006 001 x s t r m 0 ) \r
0021340 x
0021360 ) ) ) ) \r \r ( 006 004 p r i n t 006 001
0021400 \r ( l a m b d a ( x f i
0021420 l e r d t b l ) 006 003 006 001
0021440
*
0021500 006 003 ( * | b v m : | "
0021520 9 - M a y - 8 6 2 3 : 0 8 " )
0021540 006 001 \r ( l e t ( ( s t
0021560 r m ( \ \ g e t s t r e a m
0021600 f i l e ' o u t p u t ) ) ) \r
0021620 ( 006 002 p r i n
0021640 2 006 001 x s t r m r d t b l
0021660 ) \r ( 006 002 \ \
0021700 o u t c h a r 006 001 s t r m (
0021720 c h a r c o d e e o l ) ) \r
0021740 x ) ) ) \r \r ( 006
0021760 004 p r i n t c c o d e 006 001 \r
0022000 ( l a m b d a ( c h a r c o d
0022020 e f i l e ) 006 003 006 001
0022040
0022060 006
0022100 003 ( * | b v m : | " 9 - M
0022120 a y - 8 6 2 2 : 4 4 " ) 006 001 \r
0022140 ( 006 002 \ \ o u t c h a r
0022160 006 001 ( \ \ g e t s t r e a m
0022200 f i l e ' o u t p u t ) \r
0022220 ( c o n d \r
0022240 ( ( \
0022260 \ c h a r c o d e p c h a r c
0022300 o d e ) \r
0022320 c h a r c o d e ) \r
0022340 ( t (
0022360 \ \ i l l e g a l . a r g c h
0022400 a r c o d e ) ) ) ) ) ) \r \r ( 006
0022420 004 p r i n t l e v e l 006 001 \r
0022440 ( l a m b d a ( c a r v a l
0022460 c d r v a l ) 006 003 006 001
0022500
0022520 006
0022540 003 ( * | b v m : | " 9 - M
0022560 a y - 8 6 2 2 : 4 7 " ) 006 001 \r
0022600 \r
0022620 006 003 ( * * | S e t
0022640 s | | I n t e r l i s p | |
0022660 p r i n t | | l e v e l | |
0022700 t o | | t h e | | g i v e n
0022720 | | v a l u e s | | i n |
0022740 c a r \r 006 001
0022760 006 003 | a n d | c d r | d i
0023000 r e c t i o n s . | | T h e s
0023020 e | | c o r r e s p o n d |
0023040 | t o | * p r i n t - l e v e
0023060 l * | a n d | \r 006 001
0023100 006 003 * p r i n t - l
0023120 e n g t h * | i n | | C o m
0023140 m o n | | L i s p | ) 006 001 \r \r
0023160 ( c o n d \r
0023200 ( ( l i s t p c a r v a l )
0023220 \r ( s e t q c
0023240 d r v a l ( c d r c a r v a
0023260 l ) ) \r ( s e t
0023300 q c a r v a l ( c a r c a
0023320 r v a l ) ) ) ) \r ( p r
0023340 o g 1 ( c o n s ( o r * p
0023360 r i n t - l e v e l * - 1 ) \r
0023400
0023420 ( o r * p r i n t - l e n g
0023440 t h * - 1 ) ) \r
0023460 ( c o n d \r
0023500 ( c a r v a l
0023520 ( s e t q * p r i n t - l e v
0023540 e l * ( a n d ( i g e q c
0023560 a r v a l 0 ) \r
0023600
*
0023640 c a r v a l ) )
0023660 ) ) \r ( c
0023700 o n d \r
0023720 ( c d r v a l ( s e t q
0023740 * p r i n t - l e n g t h * (
0023760 a n d ( i g e q c d r v a l
0024000 0 ) \r
0024020
*
0024060 c d r v a l ) ) ) ) ) )
0024100 ) \r \r ( 006 004 r a d i x 006 001 \r
0024120 ( l a m b d a ( n ) 006 003 006 001
0024140
*
0024200 006
0024220 003 ( * | b v m : | " 5 - M
0024240 a y - 8 6 1 0 : 5 6 " ) 006 001 \r
0024260 ( p r o g 1 * p r i n
0024300 t - b a s e * ( a n d n (
0024320 s e t q * p r i n t - b a s e
0024340 * ( \ \ c h e c k r a d i x
0024360 n ) ) ) ) ) ) \r \r ( 006 004 s p a c
0024400 e s 006 001 \r ( l a m b d a (
0024420 n f i l e ) 006 003 006 001
0024440
*
0024500 006 003 ( * | r m k :
0024520 | " 2 1 - O C T - 8 3 1 2 :
0024540 3 2 " ) 006 001 \r ( p r o g
0024560 ( ( s t r e a m ( \ \ g e t
0024600 s t r e a m f i l e ' o u t
0024620 p u t ) ) \r
0024640 \ \ t h i s f i l e l i n e l
0024660 e n g t h ) \r
0024700 ( s e t q \ \ t h i s f i l
0024720 e l i n e l e n g t h ( . f i
0024740 l e l i n e l e n g t h . s t
0024760 r e a m ) ) \r
0025000 ( . s p a c e c h e c k . s
0025020 t r e a m n ) \r
0025040 ( f r p t q n ( 006 002 \
0025060 \ o u t c h a r 006 001 s t r e a
0025100 m ( c h a r c o d e s p a c
0025120 e ) ) ) ) \r n i l ) ) \r
0025140 \r ( 006 004 t e r p r i 006 001 \r (
0025160 l a m b d a ( f i l e ) 006 003 006
0025200 001
0025220
0025240 006 003
0025260 ( * | r m k : | " 2 1 - O C
0025300 T - 8 3 1 2 : 3 1 " ) 006 001 \r
0025320 ( 006 002 \ \ o u t c h a r 006
0025340 001 ( \ \ g e t s t r e a m f
0025360 i l e ' o u t p u t ) \r
0025400 ( c h a r c o d
0025420 e e o l ) ) \r n i l )
0025440 ) \r \r ( 006 004 f r e s h l i n e 006
0025460 001 \r ( l a m b d a ( s t r
0025500 e a m ) 006 003 006 001
0025520
*
0025560 006 003 ( * | r m k : | "
0025600 2 2 - A U G - 8 3 1 3 : 4 8 "
0025620 ) 006 001 \r \r
0025640 006 003 ( * | A
0025660 d j u s t s | | t h e | s t
0025700 r e a m | t o | | b e | |
0025720 a t | \ a | n e w | | l i
0025740 n e | - - \r 006 001
0025760 006 003 | d o e s | | e q u
0026000 i v a l e n t | | o f | t e
0026020 r p r i | u n l e s s | | i
0026040 t | | i s | | a l r e a d y
0026060 | \r 006 001 006
0026100 003 " s i t t i n g a t t h e
0026120 b e g i n n i n g o f a
0026140 l i n e " ) 006 001 \r \r ( c
0026160 o n d \r ( ( n e q
0026200 0 ( 006 002 | f e t c h | 006 001
0026220 c h a r p o s i t i o n 006 002 |
0026240 o f | 006 001 ( c o n d \r
0026260
*
0026320 ( ( a n d (
0026340 006 002 | t y p e ? | 006 001 s t r e
0026360 a m s t r e a m ) \r
0026400
*
0026440 ( w
0026460 r i t e a b l e s t r e a m )
0026500 ) \r
0026520
*
0026560 s t r e a m ) \r
0026600
*
0026640 ( t ( s e t q s t
0026660 r e a m ( g e t s t r e a m
0026700 s t r e a m ' o u t p u t ) )
0026720 ) ) ) ) \r ( 006 002
0026740 \ \ o u t c h a r 006 001 s t r e
0026760 a m ( c h a r c o d e e o l
0027000 ) ) \r t ) ) ) )
0027020 \r \r ( 006 004 d e f p r i n t 006 001 \r
0027040 ( l a m b d a ( t y p e
0027060 f n ) 006 003 006 001
0027100
*
0027140 006 003 ( * | r m k : | " 2 8
0027160 - A P R - 8 0 1 2 : 0 4 " ) 006
0027200 001 \r ( a n d ( f i x p
0027220 t y p e ) \r
0027240 ( s e t q t y p e ( \ \ t y
0027260 p e n a m e f r o m n u m b e r
0027300 t y p e ) ) )
0027320 006 003 ( * | T h e | f
0027340 i x p | c a s e | | s h o u
0027360 l d | | n e v e r | \r 006 001
0027400
*
0027460 006 003 | o
0027500 c c u r | ) 006 001 \r ( p r
0027520 o g ( ( f ( f a s s o c t
0027540 y p e \ \ d e f p r i n t f n
0027560 s ) ) ) \r (
0027600 c o n d \r
0027620 ( f ( s e t q \ \ d e f
0027640 p r i n t f n s ( d r e m o v
0027660 e f \ \ d e f p r i n t f n
0027700 s ) ) ) ) \r
0027720 ( c o n d \r
0027740 ( f n ( s e t q \ \ d
0027760 e f p r i n t f n s ( c o n s
0030000 ( c o n s t y p e f n ) \r
0030020
*
0030060 \ \ d e f
0030100 p r i n t f n s ) ) ) ) \r
0030120 ( r e t u r n (
0030140 c d r f ) ) ) ) ) \r \r ( 006 004 l
0030160 i n e l e n g t h 006 001 \r ( l
0030200 a m b d a ( n f i l e ) 006 003
0030220 006 001
0030240
0030260 006 003 (
0030300 * | b v m : | " 1 1 - M a r
0030320 - 8 6 1 4 : 5 6 " ) 006 001 \r
0030340 \r
0030360 006 003 ( * * | S e t s |
0030400 | t o | n | t h e | | l
0030420 i n e l e n g t h | | o f |
0030440 f i l e - - \r 006 001
0030460 006 003 | d e f a u l t s |
0030500 | t o | | p r i m a r y |
0030520 | o u t p u t | | f i l e | )
0030540 006 001 \r \r ( l e t ( ( s
0030560 t r e a m ( \ \ g e t s t r e
0030600 a m f i l e ' o u t p u t )
0030620 ) ) \r ( p r o
0030640 g 1 ( 006 002 | f e t c h | 006 001
0030660 ( s t r e a m l i n e l e n g
0030700 t h ) 006 002 | o f | 006 001 s t r
0030720 e a m ) \r
0030740 ( a n d n ( c o n
0030760 d \r
0031000 ( ( a n
0031020 d ( n u m b e r p n ) \r
0031040
0031060 ( i
0031100 l e s s p n 1 ) ) \r
0031120
0031140 ( \ \ i l l e g a
0031160 l . a r g n ) ) \r
0031200
0031220 ( t ( 006 002 | r e p l a
0031240 c e | 006 001 ( s t r e a m l i
0031260 n e l e n g t h ) 006 002 | o f |
0031300 006 001 s t r e a m 006 002 | w i t
0031320 h | 006 001 ( c o n d \r
0031340
*
0031440 ( ( e
0031460 q n t ) \r
0031500
*
0031560 006 003 ( * | I n f i n i
0031600 t e | ) 006 001 \r
0031620
*
0031720 m a x . s m
0031740 a l l p ) \r
0031760
*
0032060 ( t ( f i x
0032100 n ) ) ) ) ) ) ) ) ) ) ) \r ) \r \r
0032120 ( r p a q ? 006 002 p l v l f i l
0032140 e f l g 006 001 n i l ) \r \r ( r p
0032160 a q ? 006 002 \ \ l i n e l e n g
0032200 t h 006 001 8 2 ) \r \r ( r p a q ?
0032220 006 002 \ \ f l o a t f o r m a t
0032240 006 001 t ) \r \r ( r p a q ? 006 002
0032260 p r x f l g 006 001 n i l ) \r \r (
0032300 r p a q ? 006 002 * p r i n t - b
0032320 a s e * 006 001 1 0 ) \r \r ( r p a
0032340 q ? 006 002 * r e a d - b a s e *
0032360 006 001 1 0 ) \r \r ( r p a q ? 006
0032400 002 * p r i n t - r a d i x * 006 001
0032420 n i l ) \r \r ( r p a q ? 006 002
0032440 * p r i n t - e s c a p e * 006 001
0032460 t ) \r \r ( r p a q ? 006 002 * p
0032500 r i n t - c a s e * 006 001 ' : u
0032520 p c a s e ) \r \r ( r p a q ? 006
0032540 002 * p r i n t - g e n s y m * 006
0032560 001 t ) \r \r ( r p a q ? 006 002 *
0032600 p r i n t - l e v e l * 006 001 n
0032620 i l ) \r \r ( r p a q ? 006 002 * p
0032640 r i n t - l e n g t h * 006 001 n
0032660 i l ) \r \r ( r p a q ? 006 002 * p
0032700 r i n t - p r e t t y * 006 001 n
0032720 i l ) \r \r ( r p a q ? 006 002 * p
0032740 r i n t - c i r c l e * 006 001 n
0032760 i l ) \r \r ( r p a q ? 006 002 * p
0033000 r i n t - a r r a y * 006 001 n i
0033020 l ) \r \r ( r p a q ? 006 002 * p r
0033040 i n t - c i r c l e - h a s h t
0033060 a b l e * 006 001 n i l ) \r \r ( r
0033100 p a q ? 006 002 * p a c k a g e *
0033120 006 001 n i l ) \r \r ( r p a q ?
0033140 006 002 * k e y w o r d - p a c k a
0033160 g e * 006 001 n i l ) \r \r ( r p a
0033200 q ? 006 002 * i n t e r l i s p -
0033220 p r i n 1 - c a s e * 006 001 ' :
0033240 u p c a s e ) \r \r ( r p a q ?
0033260 006 002 \ \ d e f p r i n t f n s 006
0033300 001 n i l ) \r \r \r \r 006 004 ( * \
0033320 ; " P R I N T i n t e r n a
0033340 l s " ) 006 001 \r \r ( d e f i n e q
0033360 \r \r ( 006 004 p r i n t - c i r c l
0033400 e - l o o k u p 006 001 \r ( l a
0033420 m b d a ( o b j e c t ) 006 003 006
0033440 001
0033460
0033500 006 003 ( *
0033520 | P a v e l | " 1 6 - O c t
0033540 - 8 6 2 1 : 1 3 " ) 006 001 \r
0033560 ( l e t ( ( t a b l e e n
0033600 t r y ( g e t h a s h o b j
0033620 e c t * p r i n t - c i r c l
0033640 e - h a s h t a b l e * ) ) ) \r
0033660 ( c a s e t
0033700 a b l e e n t r y ( ( t 1 n
0033720 i l ) \r
0033740 (
0033760 c l : v a l u e s n i l n i
0034000 l ) ) \r
0034020 ( t 2 ( c l : v a l u e
0034040 s ( p r o g 1 ( c o n c a t
0034060 ( c h a r a c t e r ( 006 002 |
0034100 f e t c h | 006 001 ( r e a d t a
0034120 b l e p h a s h m a c r o c h
0034140 a r ) \r
0034160
*
0034220 006
0034240 002 | o f | 006 001 * r e a d t a b
0034260 l e * ) ) \r
0034300
*
0034340 * p r i n t - c i r c l e -
0034360 n u m b e r * " = " ) \r
0034400
*
0034440 ( c l : s e t f ( c l : g
0034460 e t h a s h o b j e c t * p
0034500 r i n t - c i r c l e - h a s h
0034520 t a b l e * ) \r
0034540
*
0034600 * p r i n t - c i r c l
0034620 e - n u m b e r * ) \r
0034640
*
0034700 ( c l : i n c f * p r i n t -
0034720 c i r c l e - n u m b e r * ) )
0034740 \r
0034760 t ) ) \r
0035000 ( c
0035020 l : o t h e r w i s e ( c l :
0035040 i f ( n u m b e r p t a b l
0035060 e e n t r y ) \r
0035100
0035120 ( c l :
0035140 v a l u e s ( c o n c a t (
0035160 c h a r a c t e r ( 006 002 | f e
0035200 t c h | 006 001 ( r e a d t a b l
0035220 e p h a s h m a c r o c h a r
0035240 ) \r
0035260
*
0035340 006 002 | o f | 006 001
0035360 * r e a d t a b l e * ) ) \r
0035400
*
0035460 t a b l e e n t r y "
0035500 # " ) \r
0035520
0035540 n
0035560 i l ) \r
0035600
0035620 ( c l : e r r o
0035640 r " P r i n t - c i r c l e -
0035660 l o o k u p h a s h t a b l e
0035700 e r r o r ! " ) ) ) ) ) ) ) \r
0035720 \r ( 006 004 p r i n t - c i r c l e
0035740 - l a b e l - p 006 001 \r ( c l
0035760 : l a m b d a ( o b j e c t )
0036000 006 003 006 001
0036020
0036040 006 003 ( *
0036060 | j r b : | " 3 0 - J u n -
0036100 8 6 2 3 : 0 4 " ) 006 001 \r
0036120 ( 006 002 d e c l a r e
0036140 006 001 ( c l : s p e c i a l *
0036160 p r i n t - c i r c l e - h a s
0036200 h t a b l e * ) ) \r
0036220 ( c l : b l o c k p r i
0036240 n t - c i r c l e - l a b e l -
0036260 p ( l e t ( ( t a b l e e n
0036300 t r y ( g e t h a s h o b j
0036320 e c t * p r i n t - c i r c l
0036340 e - h a s h t a b l e * ) ) ) \r
0036360
*
0036420 ( c o
0036440 n d \r
0036460
*
0036520 ( ( e q t a b l e e n t
0036540 r y ' t 2 ) ) \r
0036560
*
0036620 ( ( c l : i n
0036640 t e g e r p t a b l e e n t r
0036660 y ) \r
0036700
*
0036740 t a b l e e n t r y ) \r
0036760
*
0037040 ( t n i l ) ) ) ) ) ) \r \r ( 006
0037060 004 p r i n t - c i r c l e - s c
0037100 a n 006 001 \r ( c l : l a m b d
0037120 a ( o b j e c t ) 006 003 006 001
0037140
*
0037200 006 003 ( * | P a v e
0037220 l | " 1 6 - O c t - 8 6 2 1
0037240 : 1 7 " ) 006 001 \r
0037260 ( 006 002 d e c l a r e 006 001 ( c
0037300 l : s p e c i a l * p r i n t
0037320 - a r r a y * ) ) \r
0037340 ( c l : t y p e c a s e
0037360 o b j e c t ( c o n s ( c l
0037400 : w h e n ( n o t ( 006 002 p r
0037420 i n t - c i r c l e - e n t e r
0037440 006 001 o b j e c t ) ) \r
0037460
*
0037520 ( 006 002 p r i n t - c
0037540 i r c l e - s c a n 006 001 ( c a
0037560 r o b j e c t ) ) \r
0037600
*
0037640 ( 006 002 p r i n t - c i
0037660 r c l e - s c a n 006 001 ( c d r
0037700 o b j e c t ) ) ) ) \r
0037720 ( ( c l
0037740 : a r r a y t ) \r
0037760 ( c l : w
0040000 h e n ( a n d * p r i n t -
0040020 a r r a y * ( n o t ( 006 002 p
0040040 r i n t - c i r c l e - e n t e
0040060 r 006 001 o b j e c t ) ) ) 006 003 006
0040100 001 \r
0040120
*
0040160 006 003 ( * \ ; \r 006 001
0040200
*
0040260 006 003 " N o n e e d t o w
0040300 a l k a r r a y i f w e '
0040320 r e n o t p r i n t i n g
0040340 t h e m " ) 006 001 \r
0040360
0040400 ( l e t * ( ( a s i z e (
0040420 c l : a r r a y - t o t a l - s
0040440 i z e o b j e c t ) ) \r
0040460
0040500 ( v a r
0040520 r a y ( c l : i f ( > ( c
0040540 l : a r r a y - r a n k o b j
0040560 e c t ) \r
0040600
*
0040640 1 ) \r
0040660
*
0040720 ( c l : m a k e -
0040740 a r r a y a s i z e : d i s
0040760 p l a c e d - t o o b j e c t
0041000 ) \r
0041020
*
0041060 o b j e c t ) ) ) \r
0041100
0041120 ( c l : d o t i
0041140 m e s ( x a s i z e ) \r
0041160
*
0041220 ( 006 002 p r i n t - c i r c
0041240 l e - s c a n 006 001 ( c l : a r
0041260 e f v a r r a y x ) ) ) ) )
0041300 ) ) ) ) \r \r ( 006 004 p r i n t - c
0041320 i r c l e - e n t e r 006 001 \r
0041340 ( c l : l a m b d a ( o b j e
0041360 c t ) \r ( 006 002
0041400 d e c l a r e 006 001 ( c l : s p
0041420 e c i a l * p r i n t - c i r
0041440 c l e - h a s h t a b l e * t
0041460 h e r e - a r e - c i r c l e s
0041500 ) ) 006 003 006 001 \r
0041520
*
0041600 006 003 ( * | P a v e l |
0041620 " 1 6 - O c t - 8 6 2 1 : 2
0041640 7 " ) 006 001 \r (
0041660 c a s e ( c l : g e t h a s h
0041700 o b j e c t * p r i n t - c
0041720 i r c l e - h a s h t a b l e *
0041740 ) \r
0041760 ( n i l ( c l : s e t f (
0042000 c l : g e t h a s h o b j e c
0042020 t * p r i n t - c i r c l e -
0042040 h a s h t a b l e * ) \r
0042060
0042100 ' t 1 ) \r
0042120
0042140 n i l ) \r
0042160 ( t 1 ( c l : s e t f
0042200 ( c l : g e t h a s h o b j
0042220 e c t * p r i n t - c i r c l
0042240 e - h a s h t a b l e * ) \r
0042260
0042300 ' t 2 ) \r
0042320
0042340 ( s e t q t h e r e - a r e -
0042360 c i r c l e s t ) \r
0042400 t )
0042420 \r
0042440 ( t 2 t ) \r
0042460 ( c l : o t h e r w
0042500 i s e ( c l : e r r o r " P
0042520 r i n t - c i r c l e - e n t e
0042540 r h a s h t a b l e e r r o
0042560 r ! " ) ) ) ) ) \r ) \r ( d e f i
0042600 n e q \r \r ( 006 004 \ \ p r i n d a
0042620 t u m 006 001 \r ( l a m b d a
0042640 ( x s t r e a m c p l ) 006 003
0042660 006 001
0042700
0042720 006 003 ( * | g b n
0042740 | " 7 - A u g - 8 6 1 6 :
0042760 2 0 " ) 006 001 \r ( s e l e
0043000 c t c ( n t y p x x ) \r
0043020 ( \ \ l i t a t o m
0043040 ( 006 002 \ \ l i t p r i n 006 001
0043060 x s t r e a m ) ) \r
0043100 ( \ \ l i s t p ( o r
0043120 c p l ( s e t q c p l 0 )
0043140 ) \r
0043160 ( l e t ( l a b e l f
0043200 i r s t t i m e ) \r
0043220
0043240 ( 006 002 | i f | 006 001 * p r i n t
0043260 - c i r c l e - h a s h t a b l
0043300 e * \r
0043320 006 002 |
0043340 t h e n | 006 001 ( c l : m u l t
0043360 i p l e - v a l u e - s e t q
0043400 ( l a b e l f i r s t t i m e
0043420 ) \r
0043440
0043460 ( 006 002 p r i
0043500 n t - c i r c l e - l o o k u p
0043520 006 001 x ) ) ) \r
0043540 ( 006
0043560 002 | i f | 006 001 l a b e l \r
0043600
0043620 006 002 | t h e n |
0043640 006 001 ( 006 002 \ \ c k p o s s o u
0043660 t 006 001 s t r e a m l a b e l
0043700 ) \r
0043720
0043740 ( c l : w h e n f i r s t
0043760 t i m e ( 006 002 \ \ c k p o s b
0044000 o u t 006 001 s t r e a m ( c h
0044020 a r c o d e s p a c e ) ) ) )
0044040 \r
0044060 ( c o n d \r
0044100
0044120 ( ( a n d l a b e
0044140 l ( n o t f i r s t t i m e
0044160 ) ) 006 003 ( * |
0044200 S e c o n d | | r e f e r e n
0044220 c e | - \r 006 001
0044240
*
0044320 006 003 | j u s t | | p
0044340 r i n t | | l a b e l | ) 006 001
0044360 \r
0044400 n i l ) \r
0044420
0044440 ( ( a n d *
0044460 p r i n t - l e v e l * ( i l
0044500 e q * p r i n t - l e v e l *
0044520 c p l ) ) \r
0044540
0044560 ( 006 002 \ \ e l i d e . p r i n
0044600 t . e l e m e n t 006 001 s t r e
0044620 a m ) ) \r
0044640 ( t
0044660 ( p r o g ( c d r c n t ) \r
0044700
*
0044740 ( c o n d \r
0044760
0045000 ( * p
0045020 r i n t - l e n g t h * ( s e
0045040 t q c d r c n t ( c o n d \r
0045060
*
0045160 ( ( 006 002 | f e t c h |
0045200 006 001 ( r e a d t a b l e p c
0045220 o m m o n l i s p \r
0045240
*
0045360 ) 006 002 | o f | 006 001 \r
0045400
*
0045520 * r e a d t a b l e
0045540 * \r
0045560
*
0045640 )
0045660 \r
0045700
*
0045760 0 ) \r
0046000
*
0046060 (
0046100 t \r
0046120
*
0046200 006 003 ( * | I n t e r l i s p |
0046220 | p r i n t | | d e p t h |
0046240 | i s | \r 006 001
0046260
*
0046340 006 003 | t r i a n g u
0046360 l a r , | | C o m m o n | |
0046400 L i s p | | i s n ' t | ) 006 001
0046420 \r
0046440
*
0046520 ( c o n d \r
0046540
*
0046640 ( ( i g e q
0046660 c p l * p r i n t - l e n g
0046700 t h * ) \r \r
0046720 006 003 ( * w
0046740 \ e | w o u l d | | j u s t
0046760 | | p r i n t | " ( - - ) "
0047000 | s o | | i t ' s | | n i
0047020 c e r | | t o | | p r i n t
0047040 | " & " ) 006 001 \r \r
0047060
*
0047160 ( r e t u r n ( 006
0047200 002 \r 006 001
0047220
*
0047320 006 002 \ \ e l i d e . p r
0047340 i n t . e l e m e n t 006 001 \r
0047360
*
0047500 s t r e a m ) ) ) ) \r
0047520
*
0047620 c p l ) ) ) ) ) \r
0047640
*
0047700 ( 006 002 | a d d | 006 001 c p l
0047720 1 )
0047740 006 003 ( * | R e c u r s i v e |
0047760 | c a l l s | | w i l l |
0050000 | b e | \r 006 001
0050020
*
0050100 006 003 | a t | 1 | g
0050120 r e a t e r | | d e p t h | )
0050140 006 001 \r
0050160
0050200 ( 006 002 \ \ c k p o s b
0050220 o u t 006 001 s t r e a m ( c h
0050240 a r c o d e \ ( ) ) \r
0050260
0050300 l p ( c
0050320 o n d \r
0050340
0050360 ( ( a n d c
0050400 d r c n t ( i g r e a t e r p
0050420 ( 006 002 | a d d | 006 001 c d r c
0050440 n t 1 ) \r
0050460
*
0050520 *
0050540 p r i n t - l e n g t h * ) ) \r
0050560
*
0050640 006 003 (
0050660 * | h a v e | | p r i n t e
0050700 d | | a s | | m a n y | \r
0050720 006 001
0050740
*
0051000 006
0051020 003 | e l e m e n t s | | a s |
0051040 | a l l o w e d | ) 006 001 \r
0051060
*
0051120 ( 006 002 \ \ e l i d e . p
0051140 r i n t . t a i l 006 001 s t r e
0051160 a m t ) ) \r
0051200
0051220 ( t (
0051240 006 002 \ \ p r i n d a t u m 006 001
0051260 ( c a r x ) \r
0051300
*
0051340 s t r e a m c p
0051360 l ) \r
0051400
0051420 ( c o n d
0051440 \r
0051460
0051500 ( ( l i
0051520 s t p ( s e t q x ( c d r
0051540 x ) ) ) \r
0051560
*
0051620 ( 006 002 \ \ c k p o s b o u t
0051640 006 001 s t r e a m ( c h a r c
0051660 o d e s p a c e ) ) \r
0051700
*
0051740 ( 006 002 | i f | 006
0051760 001 ( a n d * p r i n t - c i
0052000 r c l e - h a s h t a b l e *
0052020 ( 006 002 p r i n t - c i r c l e -
0052040 l a b e l - p 006 001 \r
0052060
*
0052160 x ) ) \r
0052200
*
0052240 006
0052260 002 | t h e n | 006 001
0052300 006 003 ( * " M u s t p r i n t
0052320 a s a d o t t e d t a i
0052340 l " ) 006 001 \r
0052360
*
0052420 ( 006 002 \
0052440 \ c k p o s s o u t 006 001 s t r
0052460 e a m " . " ) \r
0052500
*
0052560 ( 006 002 \ \ p r i n d a t u m 006 001
0052600 x s t r e a m c p l ) \r
0052620
*
0052660 006 002 |
0052700 e l s e | 006 001 ( g o l p ) )
0052720 ) \r
0052740
0052760 ( x
0053000 006
0053020 003 ( * | D o t t e d | | t a
0053040 i l | ) 006 001 \r
0053060
*
0053120 ( 006 002 \ \ c k p o s s
0053140 o u t 006 001 s t r e a m " .
0053160 " ) \r
0053200
*
0053240 ( 006 002 \ \ p r i n d a t u m
0053260 006 001 x s t r e a m ) ) ) ) )
0053300 \r
0053320
0053340 ( 006 002 \ \ c k p o s b o u
0053360 t 006 001 s t r e a m ( c h a r
0053400 c o d e " ) " ) ) ) ) ) ) ) \r
0053420 ( ( l i s t \
0053440 \ s m a l l p \ \ f i x p )
0053460 \r ( w
0053500 i t h - r e s o u r c e s ( \
0053520 \ n u m s t r \ \ n u m s t r
0053540 1 ) \r
0053560 ( 006 002 \ \ c k p o
0053600 s s o u t 006 001 s t r e a m (
0053620 006 002 \ \ c o n v e r t n u m b e
0053640 r 006 001 x ( \ \ c h e c k r a
0053660 d i x * p r i n t - b a s e *
0053700 ) \r
0053720
*
0053760 t \r
0054000
*
0054040 ( a n d * p r i n t - r a
0054060 d i x * * r e a d t a b l e *
0054100 ) \r
0054120
*
0054160 \ \ n u m s t r \ \ n u m s
0054200 t r 1 ) ) ) ) \r
0054220 ( \ \ f l o a t p ( w i t h -
0054240 r e s o u r c e s ( \ \ n u m
0054260 s t r \ \ n u m s t r 1 ) \r
0054300
0054320 ( 006 002 \ \ c k p
0054340 o s s o u t 006 001 s t r e a m
0054360 ( \ \ c o n v e r t . f l o a t
0054400 i n g . n u m b e r x \ \ n
0054420 u m s t r \ \ n u m s t r 1 \r
0054440
*
0054520 ( c o n d \r
0054540
*
0054620 ( ( a n d ( 006 002 p n a m e s
0054640 t r e a m p 006 001 s t r e a m )
0054660 \r
0054700
*
0054740 ( n
0054760 o t p r x f l g ) ) \r
0055000 \r
0055020 006 003 ( * | T h e | | p n a
0055040 m e | | o f | \ a | n u m
0055060 b e r | | i s | | u n a f f
0055100 e c t e d | | b y | r a d i
0055120 x | u n l e s s | p r x f l
0055140 g \r 006 001 006
0055160 003 | i s | | t r u e . | | T
0055200 h i s | | s e e m s | | s i
0055220 l l y , | | b u t | | a s s
0055240 o r t e d | | c o d e | | w
0055260 i l l | | b r e a k | \r 006 001
0055300 006 003 | o t h
0055320 e r w i s e | ) 006 001 \r \r
0055340
*
0055420 t ) \r
0055440
*
0055500 ( t
0055520 \ \ f l o a t f o r m a t ) )
0055540 ) ) ) ) \r ( \ \
0055560 s t r i n g p ( 006 002 \ \ p r i
0055600 n s t r i n g 006 001 x s t r e
0055620 a m ) ) \r ( \ \
0055640 s t a c k p ( 006 002 \ \ p r i n
0055660 s t a c k p 006 001 x s t r e a
0055700 m ) ) \r ( c o n
0055720 d \r ( ( \
0055740 \ i n s t a n c e - p x ' t
0055760 ) \r \r
0056000 006 003 ( * | t h i
0056020 s | | i s | \ a | c o m m
0056040 o n - l o o p s | | o b j e c
0056060 t , | | s i n c e | | i t |
0056100 | i s | \ a | s u b - c l
0056120 a s s | \r 006 001
0056140 006 003 | o f | \ t ) 006 001 \r \r
0056160 ( p r i
0056200 n t - i n s t a n c e x s t
0056220 r e a m 0 ) ) \r
0056240 ( t ( l e t * ( ( t
0056260 y p e ( t y p e n a m e x )
0056300 ) \r
0056320 ( f n ( f a s s
0056340 o c t y p e \ \ d e f p r i
0056360 n t f n s ) ) ) \r
0056400 ( c o
0056420 n d \r
0056440 ( ( o r (
0056460 n u l l f n ) \r
0056500
0056520 ( n u l l ( s e t q
0056540 f n ( l e t ( ( * p r i n
0056560 t - l e v e l * ( a n d * p
0056600 r i n t - l e v e l * \r
0056620
*
0056720 ( i d i f f e r e n c e * p
0056740 r i n t - l e v e l * \r
0056760
*
0057060 ( o r c p l
0057100 0 ) ) ) ) ) \r
0057120 \r 006 003 ( *
0057140 | T h i s | | w a y | | r
0057160 e c u r s i v e | | c a l l s
0057200 | | t o | p r i n t | e t
0057220 c | | w i l l | | b e | |
0057240 a t | | t h e | " r i g h t
0057260 " \r 006 001 006
0057300 003 | l e v e l | ) 006 001 \r \r
0057320
*
0057360 ( a p
0057400 p l y * ( c d r f n ) \r
0057420
*
0057500 x s t r e a m 0 )
0057520 ) ) ) ) \r
0057540
*
0057620 006 003 ( * n \ o | d e f i
0057640 n e d | | p r i n t e r , |
0057660 | o r | \r 006 001
0057700
*
0057760 006 003 | p r i n t e r |
0060000 | d e c l i n e d | | t o |
0060020 | d o | \r 006 001
0060040
*
0060120 006 003 | a n y t h i n
0060140 g | ) 006 001 \r
0060160 ( c
0060200 o n d \r
0060220 (
0060240 ( 006 002 | f e t c h | 006 001 ( r e
0060260 a d t a b l e p c o m m o n l
0060300 i s p ) 006 002 | o f | 006 001 * r
0060320 e a d t a b l e * ) \r
0060340
0060360 ( . s p a c e c h
0060400 e c k . s t r e a m 2 ) \r
0060420
0060440 ( 006 002 \ \
0060460 o u t c h a r 006 001 s t r e a m
0060500 ( 006 002 | f e t c h | 006 001 ( r
0060520 e a d t a b l e p h a s h m a
0060540 c r o c h a r ) 006 002 | o f | 006
0060560 001 * r e a d t a b l e * ) ) \r
0060600
0060620 ( 006 002 \
0060640 \ o u t c h a r 006 001 s t r e a
0060660 m ( c h a r c o d e " < " )
0060700 ) \r
0060720 ( a
0060740 n d t y p e ( 006 002 \ \ l i t
0060760 p r i n 006 001 t y p e s t r e
0061000 a m ) ) \r
0061020
0061040 ( 006 002 \ \ c k p o s s o u t 006
0061060 001 s t r e a m " @ " ) \r
0061100
0061120 ( 006 002 \
0061140 \ p r i n t a d d r 006 001 x s
0061160 t r e a m ) \r
0061200
0061220 ( 006 002 \ \ c k p o s b o u
0061240 t 006 001 s t r e a m ( c h a r
0061260 c o d e " > " ) ) ) \r
0061300
0061320 ( t ( 006 002 \ \ c
0061340 k p o s b o u t 006 001 s t r e a
0061360 m ( c h a r c o d e { ) ) \r
0061400
0061420 ( a
0061440 n d t y p e ( 006 002 \ \ l i t
0061460 p r i n 006 001 t y p e s t r e
0061500 a m ) ) \r
0061520
0061540 ( 006 002 \ \ c k p o s b o u
0061560 t 006 001 s t r e a m ( c h a r
0061600 c o d e } ) ) \r
0061620
0061640 ( 006 002 \ \ o u t c
0061660 h a r 006 001 s t r e a m ( c h
0061700 a r c o d e " # " ) ) \r
0061720
0061740 ( 006 002 \ \
0061760 p r i n t a d d r 006 001 x s t
0062000 r e a m ) ) ) ) \r
0062020
0062040 ( ( l i s t p f n ) \r
0062060 \r
0062100 006 003 ( * p r i n 1 | t h e
0062120 | c a r ( | u s u a l l y |
0062140 \ a | m a c r o | | c h a
0062160 r | ) | a n d | p r i n 2
0062200 | t h e | c d r . \r 006 001
0062220 006 003 | N o w a d a
0062240 y s | | t h e r e | | i s |
0062260 | l i t t l e | | r e a s o
0062300 n | | f o r | \ a | d e f
0062320 p r i n t | | f n | | t o |
0062340 | n o t | \r 006 001
0062360 006 003 | d o | | i t s |
0062400 | o w n | | p r i n t i n g
0062420 | ) 006 001 \r \r
0062440 ( a
0062460 n d ( c a r f n ) \r
0062500
0062520 ( l e t ( *
0062540 p r i n t - e s c a p e * ) \r
0062560
*
0062620 ( 006 002 \ \ p r i n d a t u m 006
0062640 001 ( c a r f n ) \r
0062660
*
0062720 s t r e a m ) ) ) \r
0062740
0062760 ( a n d ( c d r
0063000 f n ) \r
0063020
0063040 ( 006 002 \ \ p r i n d a t u m 006
0063060 001 ( c d r f n ) \r
0063100
0063120 s
0063140 t r e a m c p l ) ) ) ) ) ) )
0063160 ) ) ) \r \r ( 006 004 \ \ e l i d e .
0063200 p r i n t . e l e m e n t 006 001 \r
0063220 ( l a m b d a ( s t r e a
0063240 m ) 006 003 006 001
0063260
*
0063320 006 003 ( * | j r b : | " 2 9
0063340 - J u n - 8 6 2 1 : 0 5 " ) 006
0063360 001 \r ( 006 002 \ \ o u t c h
0063400 a r 006 001 s t r e a m ( 006 002 \
0063420 \ e l i d e . e l e m e n t . c
0063440 h a r 006 001 ) ) ) ) \r \r ( 006 004 \ \
0063460 e l i d e . e l e m e n t . c h
0063500 a r 006 001 \r ( l a m b d a n
0063520 i l 006 003 006 001
0063540
*
0063600 006 003 ( * | j r b :
0063620 | " 2 9 - J u n - 8 6 2 1 :
0063640 0 4 " ) 006 001 \r ( c o n d
0063660 \r ( ( 006 002 | f e t
0063700 c h | 006 001 ( r e a d t a b l e
0063720 p c o m m o n l i s p ) 006 002
0063740 | o f | 006 001 * r e a d t a b l
0063760 e * ) \r ( 006 002 |
0064000 f e t c h | 006 001 ( r e a d t a
0064020 b l e p h a s h m a c r o c h
0064040 a r ) 006 002 | o f | 006 001 * r e
0064060 a d t a b l e * ) ) \r
0064100 ( t ( c h a r c o d e "
0064120 & " ) ) ) ) ) \r \r ( 006 004 \ \ e l
0064140 i d e . p r i n t . t a i l 006 001
0064160 \r ( l a m b d a ( s t r e
0064200 a m n o s p a c e p ) 006 003 006 001
0064220
*
0064260 006 003 ( * | j r b : | " 2
0064300 9 - J u n - 8 6 2 1 : 0 6 " )
0064320 006 001 \r \r
0064340 006 003 ( * * |
0064360 P r i n t s | | t h e | | a
0064400 p p r o p r i a t e | | e l i
0064420 s i o n | | i n d i c a t o r
0064440 | | f o r | | e l e m e n t
0064460 s | \r 006 001
0064500 006 003 | b e y o n d | * p r i n
0064520 t - d e p t h * | a c c o r d
0064540 i n g | | t o | | t h e |
0064560 | r e a d | | t a b l e | |
0064600 w e ' r e | | u s i n g . | \r
0064620 006 001 006 003 | P
0064640 r i n t s | | f i r s t | \
0064660 a | s p a c e | | u n l e s
0064700 s | n o s p a c e p ) 006 001 \r \r
0064720 ( c o n d \r
0064740 ( ( n o t n o s p a c e p )
0064760 \r ( 006 002 \ \ o u
0065000 t c h a r 006 001 s t r e a m (
0065020 c h a r c o d e s p a c e ) )
0065040 ) ) \r ( 006 002 \ \ s o u t
0065060 006 001 ( 006 002 \ \ e l i d e . t a
0065100 i l . s t r i n g 006 001 ) \r
0065120 s t r e a m ) )
0065140 ) \r \r ( 006 004 \ \ e l i d e . t a
0065160 i l . s t r i n g 006 001 \r ( l
0065200 a m b d a n i l 006 003 006 001
0065220
*
0065260 006 003 (
0065300 * | j r b : | " 2 9 - J u n
0065320 - 8 6 2 1 : 0 5 " ) 006 001 \r
0065340 ( c o n d \r (
0065360 ( 006 002 | f e t c h | 006 001 ( r e
0065400 a d t a b l e p c o m m o n l
0065420 i s p ) 006 002 | o f | 006 001 * r
0065440 e a d t a b l e * ) \r
0065460 " . . . " ) \r
0065500 ( t " - - " ) ) ) ) \r \r ( 006
0065520 004 \ \ c k p o s b o u t 006 001 \r
0065540 ( l a m b d a ( s t r e a m
0065560 x ) 006 003 006 001
0065600
*
0065640 006 003 ( * | r m k : | " 2 1 -
0065660 O C T - 8 3 1 2 : 3 2 " ) 006 001
0065700 \r ( . s p a c e c h e c
0065720 k . s t r e a m 1 ) \r
0065740 ( 006 002 \ \ o u t c h a r 006 001
0065760 s t r e a m x ) ) ) \r \r ( 006 004
0066000 \ \ c k p o s s o u t 006 001 \r
0066020 ( l a m b d a ( s t r e a m
0066040 x ) 006 003 006 001
0066060
0066100 006
0066120 003 ( * | r m k : | " 2 1 - O
0066140 C T - 8 3 1 2 : 3 2 " ) 006 001 \r
0066160 ( . s p a c e c h e c k
0066200 . s t r e a m ( \ \ n s t r
0066220 i n g c h a r s x ) ) \r
0066240 ( 006 002 | f o r | 006 001 i 006 002
0066260 | i n s t r i n g | 006 001 x 006
0066300 002 | d o | 006 001 ( 006 002 \ \ o u t
0066320 c h a r 006 001 s t r e a m i )
0066340 ) ) ) \r \r ( 006 004 \ \ c o n v e r
0066360 t n u m b e r 006 001 \r ( l a m
0066400 b d a ( n r i g n o r e
0066420 r d t b l n s n s b ) 006 003 006
0066440 001
0066460 006 003 ( *
0066500 | P a v e l | " 1 6 - O c t -
0066520 8 6 2 1 : 0 2 " ) 006 001 006 003 006 001
0066540 \r
0066560
*
0066620 006 003 ( * | ; ; ; | " C
0066640 o n v e r t i n t e g e r N
0066660 t o a s t r i n g i n
0066700 r a d i x R . R D T B L
0066720 g o v e r n s w h e t h e r
0066740 r a d i x q u a l i f i e r s
0066760 a p p e a r . N S i s
0067000 a s c r a t c h p r o m i s
0067020 e d t o b e o f s u f f
0067040 i c i e n t l e n g t h ;
0067060 N S B i s a s c r a t c h
0067100 s t r i n g p o i n t e r .
0067120 I G N O R E i s o b s o
0067140 l e t e f l a g f o r p r
0067160 i n t i n g u n s i g n e d
0067200 n u m b e r s " ) 006 001 \r
0067220 ( c o n d \r ( ( e
0067240 q n 0 ) \r "
0067260 0 " ) \r ( t ( l
0067300 e t * ( ( s i g n ) \r
0067320 ( x
0067340 ( c o n d \r
0067360 ( ( g
0067400 e q n 0 ) \r
0067420
0067440 n ) \r
0067460 ( t ( s e
0067500 t q s i g n ( i m i n u s
0067520 n ) ) ) ) ) \r
0067540 ( p o s ( \ \
0067560 n s t r i n g c h a r s ( \ \
0067600 d t e s t n s ' s t r i n g
0067620 p ) ) ) \r
0067640 ( e n d ( s u b 1
0067660 p o s ) ) \r
0067700 d i d q ) \r
0067720 ( c
0067740 o n d \r
0067760 ( ( a n d ( e q
0070000 r 8 ) \r
0070020 r
0070040 d t b l \r
0070060 ( n
0070100 o t ( 006 002 | f e t c h | 006 001
0070120 ( r e a d t a b l e p c o m m
0070140 o n l i s p ) 006 002 | o f | 006 001
0070160 r d t b l ) ) \r
0070200
0070220 ( i g r e a t e r p x 7
0070240 ) ) 006 003 006 001
0070260 006 003 ( * \
0070300 ; " O c t a l n u m b e r s
0070320 h a v e Q s u f f i x " )
0070340 006 001 \r
0070360 ( r p l c h a r c
0070400 o d e n s ( 006 002 | a d d | 006
0070420 001 e n d 1 ) \r
0070440
0070460 ( c h a r c o d e q )
0070500 ) \r
0070520 ( s e t q d i d q
0070540 t ) ) ) \r
0070560 ( 006 002 | r e p e a t
0070600 u n t i l | 006 001 ( e q x 0
0070620 ) 006 002 | d o | 006 001 ( r p l c
0070640 h a r c o d e n s ( 006 002 | a
0070660 d d | 006 001 p o s - 1 ) \r
0070700
*
0070760 ( l e t ( ( d i g i t (
0071000 i r e m a i n d e r x r ) )
0071020 ) \r
0071040
*
0071100 ( c o n d
0071120 \r
0071140
*
0071200 ( ( i
0071220 l e s s p d i g i t 1 0 ) \r
0071240
*
0071320 ( i p
0071340 l u s d i g i t ( c h a r c
0071360 o d e 0 ) ) ) \r
0071400
*
0071460 ( t 006 003 006 001 \r
0071500
*
0071540 006
0071560 003 ( * \ ; \r 006 001
0071600
0071620 006 003 "
0071640 F o r r a d i c e s h i g h
0071660 e r t h a n 1 0 , u s e
0071700 l e t t e r s o f a l p h a
0071720 b e t f r o m A o n u p
0071740 " ) 006 001 \r
0071760
*
0072040 ( i p l u s ( i d i f
0072060 f e r e n c e d i g i t 1 0
0072100 ) \r
0072120
*
0072200 ( c h a r c o d
0072220 e a ) ) ) ) ) ) \r
0072240
*
0072300 ( s e t q x (
0072320 i q u o t i e n t x r ) ) )
0072340 \r
0072360 ( c o n d \r
0072400 ( s i g n
0072420 ( r p l c h a r c o d e n s
0072440 ( 006 002 | a d d | 006 001 p o s -
0072460 1 ) \r
0072500
0072520 ( c h a r c o d e 006 002 -
0072540 006 001 ) ) ) ) \r
0072560 ( c o n d \r
0072600
0072620 ( ( a n d ( n e q r 1 0 )
0072640 \r
0072660 r d t b l \r
0072700
0072720 ( n o t d i
0072740 d q ) \r
0072760 ( l e
0073000 t ( ( n ( i a b s n ) ) )
0073020 \r
0073040 (
0073060 o r ( g r e a t e r p n 9
0073100 ) \r
0073120
0073140 ( g e q n r ) ) ) )
0073160 006 003 006 001
0073200 006 003 ( * \ ; " P r e p
0073220 e n d a r a d i x q u a l
0073240 i f i e r " ) 006 001 \r
0073260 ( s
0073300 e l e c t q r \r
0073320
0073340 ( 1 6 ( r p l c h a r c o d
0073360 e n s ( 006 002 | a d d | 006 001
0073400 p o s - 1 ) \r
0073420
0073440 ( c h a r
0073460 c o d e \ x ) ) ) \r
0073500
0073520 ( 8 ( r p l c h a r c o
0073540 d e n s ( 006 002 | a d d | 006 001
0073560 p o s - 1 ) \r
0073600
0073620 ( c h a r
0073640 c o d e \ o ) ) ) \r
0073660
0073700 ( 2 ( r p l c h a r c o
0073720 d e n s ( 006 002 | a d d | 006 001
0073740 p o s - 1 ) \r
0073760
0074000 ( c h a r
0074020 c o d e \ b ) ) ) \r
0074040
0074060 ( p r o g n ( r p l c h
0074100 a r c o d e n s ( 006 002 | a d
0074120 d | 006 001 p o s - 1 ) \r
0074140
*
0074200 ( c h a r c o d e \ r )
0074220 ) \r
0074240
0074260 ( r p l c h a r c o d e n s
0074300 ( 006 002 | a d d | 006 001 p o s
0074320 - 1 ) \r
0074340
0074360 ( i p l u s
0074400 ( c h a r c o d e 0 ) \r
0074420
*
0074460 ( i m o d
0074500 r 1 0 ) ) ) \r
0074520
0074540 ( c o n d \r
0074560
*
0074620 ( ( g e q r 1 0 ) \r
0074640
0074660 (
0074700 r p l c h a r c o d e n s (
0074720 006 002 | a d d | 006 001 p o s - 1
0074740 ) \r
0074760
0075000 ( i p l
0075020 u s ( c h a r c o d e 0 ) \r
0075040
*
0075120 ( i q u o t i e n t r 1 0
0075140 ) ) ) ) ) ) ) \r
0075160 ( r p l
0075200 c h a r c o d e n s ( 006 002 |
0075220 a d d | 006 001 p o s - 1 ) \r
0075240
0075260 ( 006 002 | f e
0075300 t c h | 006 001 ( r e a d t a b l
0075320 e p h a s h m a c r o c h a r
0075340 ) 006 002 | o f | 006 001 r d t b l
0075360 ) ) ) ) \r
0075400 ( s u b s t r i n g
0075420 n s p o s e n d n s b ) )
0075440 ) ) ) ) \r \r ( 006 004 \ \ l i t p r
0075460 i n 006 001 \r ( l a m b d a (
0075500 x s t r e a m ) 006 003 006 001
0075520
*
0075560 006 003 ( * | b v m :
0075600 | " 3 0 - S e p - 8 6 0 0 :
0075620 1 2 " ) 006 001 \r ( 006 002 d e
0075640 c l a r e 006 001 ( u s e d f r e
0075660 e \ \ t h i s f i l e l i n e
0075700 l e n g t h * p r i n t - e s
0075720 c a p e * * r e a d t a b l e
0075740 * * p a c k a g e * * p r i
0075760 n t - g e n s y m * \r
0076000
0076020 * p r i n t - c a s e * ) ) \r
0076040 ( c o n d \r
0076060 ( * p r i n t - e s c a p e *
0076100 ( l e t ( ( r d t b l * r e
0076120 a d t a b l e * ) \r
0076140
0076160 p k g p k g s e
0076200 p r ) \r
0076220
0076240 ( c o n d \r
0076260
0076300 ( * p a c k a g e *
0076320 006 003 006 001 006 003 (
0076340 * \ ; " T h i s i s N I
0076360 L u n t i l p a c k a g e s
0076400 g e t t u r n e d o n " )
0076420 006 001 \r
0076440
0076460 ( c o n d \r
0076500
*
0076540 ( ( e q * p a
0076560 c k a g e * ( s e t q p k g
0076600 ( 006 002 | f e t c h | 006 001 ( c
0076620 l : s y m b o l p a c k a g e
0076640 ) \r
0076660
*
0076740 006 002 | o f | 006 001
0076760 x ) ) ) 006 003 006 001 \r
0077000
*
0077060 006 003 ( * \ ; " N o p r e
0077100 f i x n e e d e d i n c u
0077120 r r e n t p a c k a g e " ) 006
0077140 001 \r
0077160
0077200 ( s e t
0077220 q p k g n i l ) ) \r
0077240
*
0077300 ( ( n u l l p k g )
0077320 006 003 006 001 \r
0077340
*
0077400 006 003 ( * \ ; "
0077420 U n i n t e r n e d . P r i
0077440 n t s o m e t h i n g i f
0077460 f l a g i s o n " ) 006 001 \r
0077500
*
0077540 ( c o n d \r
0077560
*
0077620 ( * p r
0077640 i n t - g e n s y m * 006 003 006 001
0077660 \r
0077700
*
0077740 006 003 ( * \ ; \r 006 001
0077760 006 003 " P r i n t
0100000 # : a s p r e f i x . N
0100020 o t P A C K A G E C H A R h
0100040 e r e b e c a u s e c o l o
0100060 n h a r d w i r e d i n t o
0100100 h a s h m a c r o d i s p a
0100120 t c h . " ) 006 001 \r
0100140
*
0100200 ( r p
0100220 l c h a r c o d e ( s e t q
0100240 p k g s e p r ( a l l o c s t
0100260 r i n g \r
0100300
*
0100400 2 \r
0100420
*
0100520 ( c h a r c o d e
0100540 " : " ) ) ) \r
0100560
*
0100640 1 \r
0100660
*
0100740 ( 006 002 | f e t c h | 006 001 ( r e
0100760 a d t a b l e p h a s h m a c
0101000 r o c h a r ) \r
0101020
*
0101100 006 002 | o f | 006 001 r
0101120 d t b l ) ) ) ) ) \r
0101140
*
0101200 ( ( e q p k g * k e y
0101220 w o r d - p a c k a g e * ) 006 003
0101240 006 001 \r
0101260
*
0101320 006 003 ( * \
0101340 ; " K e y w o r d s g e t
0101360 s i n g l e c o l o n , n o
0101400 p r e f i x " ) 006 001 \r
0101420
*
0101460 ( s e t q p k g s
0101500 e p r ( a l l o c s t r i n g
0101520 1 ( 006 002 | f e t c h | 006 001
0101540 ( r e a d t a b l e p \r
0101560
*
0101700 p a c k a g e c h a r )
0101720 \r
0101740
*
0102020 006 002 | o f
0102040 | 006 001 r d t b l ) ) ) \r
0102060
*
0102120 ( s e t q p k g
0102140 n i l ) ) \r
0102160
*
0102220 ( ( f i n d - e x a c t - s y m
0102240 b o l x * p a c k a g e * )
0102260 006 003 006 001 \r
0102300
*
0102340 006 003 ( * | ; ; |
0102360 " S y m b o l i s a c c e
0102400 s s i b l e i n c u r r e n
0102420 t p a c k a g e , e i t h e
0102440 r b y b e i n g i m p o r
0102460 t e d o r b y i n h e r i
0102500 t a n c e . T h i s i s
0102520 a m e s s y t e s t , w h
0102540 i c h i s w h y w e t e
0102560 s t f o r s p e c i a l c
0102600 a s e o f P K G b e i n g
0102620 t h e c u r r e n t p a c
0102640 k a g e f i r s t a b o v e
0102660 . N o p r e f i x n e e
0102700 d e d h e r e . " ) 006 001 \r
0102720
*
0102760 ( s e t q p k
0103000 g n i l ) ) \r
0103020
*
0103060 ( t 006 003 006 001 006 003
0103100 ( * | ; ; | " P a c k a g e
0103120 q u a l i f i e r i s n e
0103140 e d e d ; w e n e e d o n
0103160 l y k n o w n o w w h e t
0103200 h e r s y m b o l i s i
0103220 n t e r n a l o r e x t e r
0103240 n a l i n i t s h o m e
0103260 p a c k a g e . " ) 006 001 \r
0103300
*
0103340 ( s e t q p
0103360 k g s e p r ( a l l o c s t r
0103400 i n g ( c o n d \r
0103420
*
0103520 ( ( e q x ( \r
0103540
*
0103640 f i
0103660 n d - e x t e r n a l - s y m b
0103700 o l \r
0103720
*
0104020 x p k g ) ) 006 003 006 001
0104040 \r
0104060
*
0104120 006 003 ( * \ ; " X
0104140 i s e x t e r n a l i n
0104160 P K G , u s e s i n g l e
0104200 c o l o n " ) 006 001 \r
0104220
*
0104320 1 ) \r
0104340
*
0104440 ( t 2 ) ) \r
0104460
*
0104540 ( 006 002 | f e
0104560 t c h | 006 001 ( r e a d t a b l
0104600 e p p a c k a g e c h a r ) \r
0104620
*
0104720 006 002 | o f | 006 001 r d t
0104740 b l ) ) ) ) ) ) ) \r
0104760
0105000 ( 006 002 \ \ l i t p r
0105020 i n . i n t e r n a l 006 001 x
0105040 r d t b l s t r e a m ( a n
0105060 d p k g ( p a c k a g e - n
0105100 a m e - a s - s y m b o l \r
0105120
*
0105220 p k g ) ) \r
0105240
*
0105300 p k g s e p r \ \ t h i s f i
0105320 l e l i n e l e n g t h ) ) ) \r
0105340 ( t ( . s p a c
0105360 e c h e c k . s t r e a m (
0105400 \ \ n a t o m c h a r s x ) )
0105420 \r ( 006 002 | f
0105440 o r | 006 001 c 006 002 | i n a t o
0105460 m | 006 001 x 006 002 | b i n d | 006
0105500 001 ( d o w n c a s e _ ( a
0105520 n d ( e q * p r i n t - c a
0105540 s e * ' : d o w n c a s e ) \r
0105560
*
0105640 ( 006 002 | f e t c h |
0105660 006 001 ( r e a d t a b l e p c
0105700 a s e i n s e n s i t i v e ) \r
0105720
*
0106000 006 002 | o f | 006
0106020 001 * r e a d t a b l e * ) ) )
0106040 \r 006 002
0106060 | d o | 006 001 ( 006 002 \ \ o u t c
0106100 h a r 006 001 s t r e a m ( c o
0106120 n d \r
0106140
0106160 ( ( a n d
0106200 d o w n c a s e ( l e q c
0106220 ( c h a r c o d e z ) ) \r
0106240
*
0106300 ( g e q
0106320 c ( c h a r c o d e a ) ) )
0106340 \r
0106360
0106400 ( i p l u s
0106420 c ( i d i f f e r e n c e (
0106440 c h a r c o d e \ a ) \r
0106460
*
0106540 ( c h a r c o d e a
0106560 ) ) ) ) \r
0106600
0106620 ( t c
0106640 ) ) ) ) ) ) ) ) \r \r ( 006 004 \ \ l
0106660 i t p r i n . i n t e r n a l 006
0106700 001 \r ( l a m b d a ( c l :
0106720 s y m b o l r d t b l s t r
0106740 e a m p k g n a m e p k g s
0106760 e p r c h e c k l e n g t h )
0107000 006 003 006 001 \r
0107020
*
0107100 006 003 ( * | b v m : | "
0107120 9 - M a y - 8 6 2 3 : 0 7 " )
0107140 006 001 \r \r
0107160 006 003 ( * * |
0107200 P r i n t | c l : s y m b o l
0107220 | t o | s t r e a m | a c
0107240 c o r d i n g | | t o | r d
0107260 t b l \ , | p r e c e d e d |
0107300 | b y | \r 006 001
0107320 006 003 p k g n a m e ( | i
0107340 f | | n o n - N I L | ) | a
0107360 n d / o r | p k g s e p r . \r
0107400 006 001 006 003 p k
0107420 g n a m e | i s | \ a | s
0107440 y m b o l , | p k g s e p r
0107460 | i s | \ a | s t r i n g .
0107500 | \r 006 001 006 003
0107520 i \ f c h e c k l e n g t h
0107540 | i s | | t r u e , | | n e
0107560 e d | | t o | | c h e c k |
0107600 | t h a t | | t h e r e |
0107620 | i s | | r o o m | \r 006 001
0107640 006 003 | f o r |
0107660 | p r i n t i n g | | a l l
0107700 | | t h r e e | | p a r t s
0107720 | | o n | | t h i s | | l
0107740 i n e ; | \r 006 001
0107760 006 003 | e l s e | | c a l l
0110000 e r | | h a s | | v e r i f
0110020 i e d | | t h a t | | t h e
0110040 r e | | i s | | r o o m | )
0110060 006 001 \r \r ( l e t ( ( p
0110100 n a m e l e n g t h ( \ \ n a
0110120 t o m c h a r s c l : s y m b
0110140 o l ) ) \r (
0110160 e s c a p e ( 006 002 | f e t c h
0110200 | 006 001 ( r e a d t a b l e p
0110220 e s c a p e c h a r ) 006 002 | o
0110240 f | 006 001 r d t b l ) ) \r
0110260 ( m u l t e s c a
0110300 p e ( 006 002 | f e t c h | 006 001
0110320 ( r e a d t a b l e p m u l t
0110340 e s c a p e c h a r ) 006 002 | o
0110360 f | 006 001 r d t b l ) ) \r
0110400 u s e m u l t e s
0110420 c a p e c a s e b a s e s a
0110440 s y n n e s c a p e s c h
0110460 e c k e s c a p e f i r s t e
0110500 s c a p e ) \r
0110520 ( c o n d \r
0110540 ( ( o r c h e c k l e n g
0110560 t h ( n e q m u l t e s c a
0110600 p e 0 ) ) \r
0110620 \r 006 003 ( *
0110640 | h a v e | | t o | | c h
0110660 e c k | | n o w | | i f |
0110700 | l i n e l e n g t h | | m a
0110720 t t e r s | | o r | | w e |
0110740 | p l a n | | t o | \r 006 001
0110760 006 003 | u s e
0111000 | | m u l t i p l e | | e s
0111020 c a p e s | ) 006 001 \r \r
0111040 ( s e t q n e
0111060 s c a p e s ( 006 002 \ \ s y m b
0111100 o l . e s c a p e . c o u n t 006
0111120 001 c l : s y m b o l r d t b
0111140 l ( n u l l c h e c k l e n
0111160 g t h ) ) ) \r
0111200 ( c o n d \r
0111220 ( ( e q n
0111240 e s c a p e s - 1 ) \r
0111260 \r
0111300 006 003 ( * | P n a m e | | i
0111320 s | | n u m e r i c | | a n
0111340 d | | w e | | d o n ' t |
0111360 | h a v e | \ a | m u l t i
0111400 p l e | | e s c a p e | \r 006
0111420 001 006 003 | a v
0111440 a i l a b l e - - n e e d | |
0111460 t o | | e s c a p e | | f i
0111500 r s t | | c h a r | ) 006 001 \r \r
0111520
0111540 ( s e t q n e s c a p e s
0111560 1 ) \r
0111600 ( s e t q f i r s t e
0111620 s c a p e t ) ) \r
0111640 ( ( i l e s
0111660 s p n e s c a p e s 0 )
0111700
0111720 006 003 ( * | U s e
0111740 | | m u l t i p l e | | e s
0111760 c a p e s | ) 006 001 \r
0112000 ( s e t q
0112020 n e s c a p e s ( i m i n u
0112040 s n e s c a p e s ) ) \r
0112060 ( s
0112100 e t q u s e m u l t e s c a p
0112120 e t ) ) \r
0112140 ( ( n e q n e s c
0112160 a p e s 0 ) \r
0112200 ( s e t q c
0112220 h e c k e s c a p e t ) ) ) )
0112240 \r ( t
0112260 \r \r
0112300 006 003 ( * | i f |
0112320 | w e | | d o n ' t | | c h
0112340 e c k | | n o w | | t h e n
0112360 | | h a v e | | t o | | c
0112400 h e c k | | w h i l e | \r 006
0112420 001 006 003 | p r
0112440 i n t i n g | ) 006 001 \r \r
0112460 ( s e t q
0112500 c h e c k e s c a p e t ) )
0112520 ) \r ( c o n d
0112540 \r ( c h
0112560 e c k l e n g t h
0112600
0112620 006 003
0112640 ( * | V e r i f y | | s p a
0112660 c e | | f o r | | e v e r y
0112700 t h i n g | ) 006 001 \r
0112720 ( . s
0112740 p a c e c h e c k . s t r e a
0112760 m ( i p l u s p n a m e l e
0113000 n g t h n e s c a p e s ( c
0113020 o n d \r
0113040
*
0113120 ( p k g n
0113140 a m e \r
0113160
*
0113240 006 003 ( * | H o w | | m u
0113260 c h | | s p a c e | | t o |
0113300 | p r i n t | \r 006 001
0113320
*
0113400 006 003 | p a c k
0113420 a g e | | n a m e | ) 006 001 \r
0113440
*
0113540 ( i a
0113560 b s ( 006 002 \r 006 001
0113600
*
0113700 006 002 \ \ s y m
0113720 b o l . e s c a p e . c o u n t
0113740 006 001 \r
0113760
*
0114060 p k g n a m e
0114100 r d t b l ) ) ) \r
0114120
*
0114220 ( t 0 ) ) \r
0114240
*
0114300 ( c o n d \r
0114320
*
0114360 ( p
0114400 k g s e p r 006 003 ( * | E
0114420 x t r a | | c h a r a c t e r
0114440 s | | b e t w e e n | \r 006 001
0114460
*
0114540 006 003 |
0114560 p k g | | n a m e | | a n d
0114600 | | s y m b o l | | n a m e
0114620 | ) 006 001 \r
0114640
*
0114700 ( \
0114720 \ n s t r i n g c h a r s p k
0114740 g s e p r ) ) \r
0114760
*
0115020 ( t 0 ) )
0115040 ) ) ) ) \r \r
0115060 006 003 ( * *
0115100 | F i r s t | | p r i n t |
0115120 | a n y | | n e e d e d |
0115140 | p a c k a g e | | q u a l i
0115160 f i e r | ) 006 001 \r \r
0115200 ( c o n d \r
0115220 ( p k g n a m e
0115240
*
0115300 006 003 ( * | P r i n
0115320 t | | p a c k a g e | | n a
0115340 m e , | | d o n ' t | \r 006 001
0115360
*
0115440 006 003 |
0115460 c h e c k | | l e n g t h | )
0115500 006 001 \r
0115520 ( 006 002 \ \ l i t p r
0115540 i n . i n t e r n a l 006 001 p k
0115560 g n a m e r d t b l s t r e
0115600 a m ) ) ) \r (
0115620 c o n d \r
0115640 ( p k g s e p r ( 006 002 \ \ s
0115660 o u t 006 001 p k g s e p r s t
0115700 r e a m ) ) ) \r
0115720 ( c o n d \r
0115740 ( f i r s t e s c a p e
0115760 \r \r
0116000 006 003 ( * | N e e d
0116020 | | a n | | e s c a p e |
0116040 | c h a r a c t e r | | a t |
0116060 | s t a r t | | t o | | k
0116100 e e p | | a t o m | | f r o
0116120 m | \r 006 001
0116140 006 003 | b e i n g | | i n t e r
0116160 p r e t e d | | a s | | n u
0116200 m b e r | ) 006 001 \r \r
0116220 ( 006 002
0116240 \ \ o u t c h a r 006 001 s t r e
0116260 a m e s c a p e ) ) ) \r
0116300 ( c o n d \r
0116320 ( u s e m u l t
0116340 e s c a p e \r
0116360 \r 006 003 (
0116400 * | S u r r o u n d | | p n
0116420 a m e | | w i t h | | m u l
0116440 t i p l e | | e s c a p e |
0116460 | c h a r , | | o n l y | |
0116500 e s c a p e | \r 006 001
0116520 006 003 | i n t e r n a l
0116540 | | e s c a p e s | ) 006 001 \r \r
0116560
0116600 ( 006 002 \ \ o u t c h a r 006
0116620 001 s t r e a m m u l t e s c
0116640 a p e ) \r
0116660 ( 006 002 | f o r |
0116700 006 001 c 006 002 | i n a t o m | 006
0116720 001 c l : s y m b o l 006 002 | d
0116740 o | 006 001 ( c o n d \r
0116760
*
0117040 ( ( o r ( e q c m u l
0117060 t e s c a p e ) \r
0117100
*
0117160 ( e q c e s c a p
0117200 e ) ) \r
0117220
*
0117260 ( 006 002 \
0117300 \ o u t c h a r 006 001 s t r e a
0117320 m e s c a p e ) ) ) \r
0117340
*
0117420 ( 006 002 \ \ o u t c h a r 006 001 s
0117440 t r e a m c ) ) \r
0117460 ( 006 002
0117500 \ \ o u t c h a r 006 001 s t r e
0117520 a m m u l t e s c a p e ) ) \r
0117540 ( ( a n
0117560 d ( e q p n a m e l e n g t
0117600 h 1 ) \r
0117620 ( e q ( c h c o
0117640 n 1 c l : s y m b o l ) \r
0117660
0117700 ( c h a r c o d e " .
0117720 " ) ) ) \r \r
0117740 006 003 ( * |
0117760 h a v e | | t o | | h a n d
0120000 l e | | p e r i o d | | s p
0120020 e c i a l | | b e c a u s e |
0120040 | i t | | i s | | o n l y
0120060 | | s p e c i a l | \r 006 001
0120100 006 003 | i n |
0120120 \ a | d o t t e d | | c o n
0120140 t e x t | ) 006 001 \r \r
0120160 ( 006 002 \ \ o u t c
0120200 h a r 006 001 s t r e a m e s c
0120220 a p e ) \r
0120240 ( 006 002 \ \ o u t c h a r 006 001
0120260 s t r e a m ( c h a r c o d
0120300 e " . " ) ) ) \r
0120320 ( t ( c o n d \r
0120340
0120360 ( c h e c k e s c a p e ( s e
0120400 t q c a s e b a s e ( a n d
0120420 ( 006 002 | f e t c h | 006 001 ( r
0120440 e a d t a b l e p c a s e i n
0120460 s e n s i t i v e ) 006 002 | o f
0120500 | 006 001 r d t b l ) \r
0120520
*
0120560 ( 006
0120600 002 | f e t c h | 006 001 ( a r r a
0120620 y p b a s e ) 006 002 | o f | 006
0120640 001 u p p e r c a s e a r r a y
0120660 ) ) ) \r
0120700 ( s e
0120720 t q s a ( 006 002 | f e t c h |
0120740 006 001 r e a d s a 006 002 | o f |
0120760 006 001 r d t b l ) ) ) ) \r
0121000 ( 006 002 |
0121020 f o r | 006 001 c 006 002 | i n a t
0121040 o m | 006 001 c l : s y m b o l
0121060 006 002 | b i n d | 006 001 ( f i r s
0121100 t f l g _ t ) \r
0121120
*
0121160 ( d o w n
0121200 c a s e _ ( a n d ( 006 002 |
0121220 f e t c h | 006 001 ( r e a d t a
0121240 b l e p \r
0121260
*
0121360 c a s e i n s e
0121400 n s i t i v e ) \r
0121420
*
0121500 006 002
0121520 | o f | 006 001 r d t b l ) \r
0121540
*
0121640 ( e q * p r i n t - c a s e *
0121660 ' : d o w n c a s e ) ) ) \r
0121700
0121720 006 002 | d o | 006 001 ( c o n d \r
0121740
0121760 ( ( a n d
0122000 c h e c k e s c a p e ( o r
0122020 ( a n d c a s e b a s e ( i
0122040 l e q c \ \ m a x t h i n c
0122060 h a r ) \r
0122100
*
0122140 ( n e q c
0122160 ( \ \ g e t b a s e b y t e
0122200 c a s e b a s e c ) ) ) \r
0122220
*
0122260 ( a
0122300 n d ( 006 002 | f e t c h | 006 001
0122320 ( r e a d c o d e e s c q u o
0122340 t e ) \r
0122360
*
0122420 006 002 | o
0122440 f | 006 001 ( s e t q s y n (
0122460 \ \ s y n c o d e s a c ) )
0122500 ) \r
0122520
*
0122560 ( o r f i r s t
0122600 f l g ( 006 002 | f e t c h | 006 001
0122620 ( r e a d c o d e i n n e r
0122640 e s c q u o t e ) \r
0122660
*
0122740 006
0122760 002 | o f | 006 001 s y n ) ) ) ) )
0123000 \r \r
0123020 006 003 ( * | N e e d
0123040 | | t o | | e s c a p e |
0123060 | i f : | | c h a r a c t e r
0123100 | | i s | | l o w e r | |
0123120 c a s e | | w h e n | \r 006 001
0123140 006 003 | c a s
0123160 e - i n s e n s i t i v e , |
0123200 | o r | | c h a r a c t e r |
0123220 | i n t r i n s i c a l l y |
0123240 | n e e d s | | e s c a p e
0123260 . | ) 006 001 \r \r
0123300
0123320 ( 006 002 \ \ o u t c h a r 006 001
0123340 s t r e a m e s c a p e ) \r
0123360
0123400 ( 006 002 \ \
0123420 o u t c h a r 006 001 s t r e a m
0123440 c ) ) \r
0123460 (
0123500 t ( 006 002 \ \ o u t c h a r 006 001
0123520 s t r e a m ( c o n d \r
0123540
*
0123620 ( ( a n d d o w n c a s e (
0123640 l e q c ( c h a r c o d e
0123660 z ) ) \r
0123700
*
0123740 ( g e q
0123760 c ( c h a r c o d e a ) )
0124000 ) \r
0124020
*
0124060 ( i p l u s c ( i
0124100 d i f f e r e n c e ( c h a r
0124120 c o d e \ a ) \r
0124140
*
0124220 ( c h a
0124240 r c o d e a ) ) ) ) \r
0124260
*
0124320 ( t
0124340 c ) ) ) ) ) \r
0124360 (
0124400 s e t q f i r s t f l g n i
0124420 l ) ) ) ) ) ) ) \r \r ( 006 004 \ \ s
0124440 y m b o l . e s c a p e . c o u
0124460 n t 006 001 \r ( l a m b d a (
0124500 c l : s y m b o l r d t b l
0124520 i n e x a c t o k ) 006 003 006 001
0124540
0124560 006 003 ( * | b v m :
0124600 | " 8 - A u g - 8 6 1 2 :
0124620 3 1 " ) 006 001 \r
0124640 \r 006 003 ( *
0124660 * " C o u n t s t h e n
0124700 u m b e r o f e s c a p e
0124720 c h a r a c t e r s n e e d e
0124740 d t o p r i n t S Y M B O
0124760 L b y R D T B L . I f
0125000 R D T B L h a s a m u l t
0125020 i p l e - e s c a p e c h a r
0125040 a c t e r , t h e n w e r
0125060 e t u r n a n e g a t i v e
0125100 c o u n t i f w e ' r e
0125120 a s s u m i n g i t i s u
0125140 s e d i n s t e a d o f s
0125160 i n g l e e s c a p e s ;
0125200 e l s e a p o s i t i v e
0125220 c o u n t . T h e s p e c
0125240 i a l v a l u e - 1 m e a
0125260 n s t h e s y m b o l i s
0125300 n u m e r i c , s o m u s
0125320 t b e q u o t e d , b u t
0125340 n o m u l t i p l e e s c
0125360 a p e i s a v a i l a b l e
0125400 , s o j u s t e s c a p e
0125420 t h e f i r s t c h a r a
0125440 c t e r . I f I N E X A C
0125460 T O K i s t r u e a n d
0125500 w e d i s c o v e r w e w
0125520 a n t t o u s e m u l t i
0125540 p l e e s c a p e c h a r ,
0125560 r e t u r n s - 2 i m m e
0125600 d i a t e l y . " ) 006 001 \r \r
0125620 ( 006 002 | f o r | 006 001 c 006
0125640 002 | i n a t o m | 006 001 c l : s
0125660 y m b o l 006 002 | b i n d | 006 001
0125700 ( r e s u l t _ 0 ) \r
0125720
*
0125760 ( n e s c a p e s _
0126000 0 ) \r
0126020
0126040 ( f i r s t f
0126060 l g _ t ) \r
0126100
0126120 ( m
0126140 u l t e s c a p e _ ( 006 002 |
0126160 f e t c h | 006 001 ( r e a d t a
0126200 b l e p m u l t e s c a p e c
0126220 h a r ) 006 002 | o f | 006 001 r d
0126240 t b l ) ) \r
0126260
0126300 ( e s c
0126320 a p e _ ( 006 002 | f e t c h |
0126340 006 001 ( r e a d t a b l e p e
0126360 s c a p e c h a r ) 006 002 | o f
0126400 | 006 001 r d t b l ) ) \r
0126420
*
0126460 ( c a s e b a s e _ ( a
0126500 n d ( 006 002 | f e t c h | 006 001
0126520 ( r e a d t a b l e p c a s e
0126540 i n s e n s i t i v e ) \r
0126560
*
0126640 006 002 | o f | 006 001
0126660 r d t b l ) \r
0126700
*
0126740 ( 006
0126760 002 | f e t c h | 006 001 ( a r r a
0127000 y p b a s e ) 006 002 | o f | 006
0127020 001 u p p e r c a s e a r r a y
0127040 ) ) ) \r
0127060
0127100 ( s a _
0127120 ( 006 002 | f e t c h | 006 001 r e a
0127140 d s a 006 002 | o f | 006 001 r d t
0127160 b l ) ) \r
0127200
0127220 s y n 006
0127240 002 | f i r s t | 006 001 ( 006 002 | i
0127260 f | 006 001 ( e q m u l t e s c
0127300 a p e 0 ) \r
0127320
*
0127360 006 002 |
0127400 t h e n | 006 001 006 003 ( * " C a
0127420 n ' t u s e m u l t i p l e
0127440 - e s c a p e " ) 006 001 \r
0127460
*
0127540 ( s e t q m u
0127560 l t e s c a p e n i l ) ) \r
0127600 006 002 | d o | 006 001 (
0127620 006 002 | i f | 006 001 ( o r ( a n
0127640 d c a s e b a s e ( i l e q
0127660 c \ \ m a x t h i n c h a r
0127700 ) \r
0127720 ( n e
0127740 q c ( \ \ g e t b a s e b y
0127760 t e c a s e b a s e c ) ) )
0130000 \r
0130020 ( a n d ( 006 002 |
0130040 f e t c h | 006 001 ( r e a d c o
0130060 d e e s c q u o t e ) 006 002 |
0130100 o f | 006 001 ( s e t q s y n
0130120 ( \ \ s y n c o d e s a c )
0130140 ) ) \r
0130160 ( o
0130200 r f i r s t f l g ( 006 002 | f
0130220 e t c h | 006 001 ( r e a d c o d
0130240 e i n n e r e s c q u o t e )
0130260 006 002 | o f | 006 001 s y n ) ) )
0130300 ) \r
0130320 006 002 | t h e n | 006 001
0130340
*
0130400 006 003 ( * " N e e d p r
0130420 o t e c t i o n i f c h a r
0130440 i s l o w e r c a s e i n
0130460 a c a s e - i n s e n s i t
0130500 i v e r e a d t a b l e o
0130520 r t h e r e a d t a b l e
0130540 s a y s i t n e e d s i
0130560 t " ) 006 001 \r
0130600 ( 006 002 |
0130620 a d d | 006 001 r e s u l t 1 )
0130640 \r
0130660 ( 006 002 | i f | 006 001
0130700 m u l t e s c a p e \r
0130720
0130740 006 002 | t h e n | 006 001
0130760 ( 006 002 | i f | 006 001 ( o r (
0131000 e q c m u l t e s c a p e )
0131020 \r
0131040
0131060 ( e q
0131100 c e s c a p e ) ) \r
0131120
*
0131160 006 002 | t h e n | 006 001
0131200 006 003 ( *
0131220 \r 006 001
0131240
*
0131320 006 003 " T h e s e h a v e t o
0131340 b e e s c a p e d n o m
0131360 a t t e r w h a t " ) 006 001 \r
0131400
*
0131440 ( 006 002 | a d
0131460 d | 006 001 n e s c a p e s 1 )
0131500 \r
0131520
0131540 006 002 | e l s e i f | 006 001
0131560 ( a n d i n e x a c t o k
0131600 ( g r e a t e r p ( d i f f e
0131620 r e n c e r e s u l t n e s
0131640 c a p e s ) \r
0131660
*
0131740 1 ) ) \r
0131760
*
0132020 006 002 | t h e n | 006 001
0132040 006 003
0132060 ( * \r 006 001 006 003 " I f
0132100 a t l e a s t 2 c h a r
0132120 s n e e d e s c a p i n g ,
0132140 b e t t e r t o u s e m
0132160 u l t i p l e e s c a p e ,
0132200 a n d w e c a n q u i t
0132220 s c a n n i n g n o w " ) 006 001
0132240 \r
0132260
0132300 ( r e t
0132320 u r n - 2 ) ) ) ) \r
0132340 ( s e t q f i r
0132360 s t f l g n i l ) \r
0132400 006 002 | f i n a l l y | 006 001
0132420 ( r e t u r n ( 006 002 | i f | 006
0132440 001 ( e q r e s u l t 0 ) \r
0132460
0132500 006 002 |
0132520 t h e n | 006 001
0132540
0132560 006 003 ( * \r 006 001
0132600
*
0132640 006 003 " N o f
0132660 u n n y c h a r s , c h e c
0132700 k f o r s o m e o t h e r
0132720 p e r v e r s e c a s e s "
0132740 ) 006 001 \r
0132760
0133000 ( l e t ( ( l e
0133020 n ( \ \ n a t o m c h a r s
0133040 c l : s y m b o l ) ) ) \r
0133060
*
0133120 ( 006 002 | i f | 006 001 (
0133140 e q l e n 0 ) \r
0133160
*
0133220 006 002 | t h e n | 006 001
0133240 006 003 ( *
0133260 \r 006 001
0133300 006 003 " T h
0133320 e b l e t c h e r o u s n u
0133340 l l s y m b o l . S h o u
0133360 l d n ' t b e a l l o w e d
0133400 t o c r e a t e t h i s ,
0133420 g r u m b l e . " ) 006 001 \r
0133440
*
0133520 ( 006 002 | i f | 006 001 m u l t e s
0133540 c a p e \r
0133560
*
0133620 006 002 | t h
0133640 e n | 006 001 006 003 ( * " C a n
0133660 p r i n t a s | | " ) 006 001 \r
0133700
*
0133760 - 2 \r
0134000
*
0134060 006 002 | e l s e | 006 001
0134100 006 003 ( * " S i n g l e e s c
0134120 a p e c a n ' t w o r k " )
0134140 006 001 \r
0134160
*
0134220 0 ) \r
0134240
*
0134300 006 002 | e l s
0134320 e i f | 006 001 ( a n d ( e q
0134340 l e n 1 ) \r
0134360
*
0134420 (
0134440 e q c ( c h a r c o d e "
0134460 . " ) ) ) \r
0134500
*
0134540 006 002 | t h e n | 006 001
0134560 006 003 ( * \r 006 001
0134600
*
0134660 006 003 " S p e c i a l c a s e ,
0134700 d o t i s a l w a y s e
0134720 s c a p e d w h e n b y i
0134740 t s e l f " ) 006 001 \r
0134760
*
0135020 1 \r
0135040
*
0135100 006 002 | e l s e i
0135120 f | 006 001 ( 006 002 \ \ n u m e r i
0135140 c . p n a m e p 006 001 c l : s y
0135160 m b o l \r
0135200
*
0135240 (
0135260 006 002 | i f | 006 001 ( 006 002 | f e t
0135300 c h | 006 001 ( r e a d t a b l e
0135320 p c o m m o n l i s p ) \r
0135340
*
0135440 006 002 | o f | 006 001 r d t b l )
0135460 \r
0135500
*
0135540 006
0135560 002 | t h e n | 006 001 * r e a d -
0135600 b a s e * \r
0135620
*
0135700 006 002 | e l s e | 006 001 1 0 )
0135720 ) \r
0135740
0135760 006 002
0136000 | t h e n | 006 001
0136020 006 003 ( * " I s n u m e
0136040 r i c , m u s t e s c a p e
0136060 i t . N o t e t h a t
0136100 i f p n a m e i s n u m e
0136120 r i c , t h e r e c a n ' t
0136140 b e a n y s p e c i a l
0136160 c h a r s i n s i d e i t
0136200 n e e d i n g e s c a p i n g
0136220 . W e w a i t u n t i l
0136240 n o w t o t e s t n u m
0136260 e r i c o n t h e g r o u
0136300 n d s t h a t i t i s m
0136320 o r e l i k e l y w e w i
0136340 l l p r i n t a s y m b o
0136360 l w i t h e s c a p a b l e
0136400 c h a r s t h a n o n e
0136420 t h a t i s a p o t e n t
0136440 i a l n u m b e r . " ) 006 001 \r
0136460
*
0136540 ( 006 002 | i f | 006 001 m u l t
0136560 e s c a p e \r
0136600
*
0136640 006 002 |
0136660 t h e n | 006 001 006 003 ( * \r 006 001
0136700
*
0136760 006 003 " N i c e r t o u
0137000 s e m u l t i p l e e s c a
0137020 p e a r o u n d w h o l e
0137040 s y m b o l " ) 006 001 \r
0137060
*
0137140 - 2 \r
0137160
*
0137220 006 002
0137240 | e l s e | 006 001 006 003 ( *
0137260 " S a y t o e s c a p e f
0137300 i r s t c h a r " ) 006 001 \r
0137320
*
0137400 - 1 ) \r
0137420
*
0137460 006 002 | e l s e | 006 001
0137500 0 ) ) \r
0137520
0137540 006 002 | e l s e i f | 006 001 ( a n
0137560 d m u l t e s c a p e ( g r
0137600 e a t e r p ( d i f f e r e n
0137620 c e r e s u l t n e s c a p
0137640 e s ) \r
0137660
*
0137720 1
0137740 ) ) \r
0137760
0140000 006 002 | t h e n | 006 001
0140020
0140040 006 003 ( * " T h e n u
0140060 m b e r o f c h a r a c t e
0140100 r s n e e d i n g e s c a p
0140120 i n g , n o t c o u n t i n
0140140 g t h e o n e s t h a t
0140160 h a v e t o b e e s c a p
0140200 e d i n a n y c a s e ,
0140220 i s a t l e a s t t w o .
0140240 U s e t w o m u l t i p
0140260 l e - e s c a p e s a n d N
0140300 E S C A P E S r e g u l a r
0140320 e s c a p e s f o r t h e
0140340 i n t e r n a l e s c a p e s
0140360 = - ( N E S C A P E S + 2 )
0140400 t o t a l e x t r a c h a
0140420 r a c t e r s " ) 006 001 \r
0140440
0140460 (
0140500 i d i f f e r e n c e - 2 n
0140520 e s c a p e s ) \r
0140540
0140560 006 002 | e l s e | 006 001 r
0140600 e s u l t ) ) ) ) ) \r \r ( 006 004 \
0140620 \ n u m e r i c . p n a m e p 006
0140640 001 \r ( l a m b d a ( c l :
0140660 s y m b o l r a d i x ) 006 003 006
0140700 001
0140720
0140740 006 003 ( * | b v m : | "
0140760 4 - A u g - 8 6 1 4 : 5 6 "
0141000 ) 006 001 \r \r
0141020 006 003 ( * *
0141040 | T r u e | | i f | | t h e
0141060 | | c h a r s | | i n | c
0141100 l : s y m b o l | a r e | \
0141120 a | p o t e n t i a l | | n
0141140 u m b e r | \r 006 001
0141160 006 003 | i n | r a d i x
0141200 \ , | w h i c h | | d e f a
0141220 u l t s | | t o | | t h e |
0141240 | c u r r e n t | | r e a d
0141260 | | b a s e | \r 006 001
0141300 006 003 ( | a c c o r d i
0141320 n g | | t o | | c u r r e n
0141340 t | | r e a d | | t a b l e
0141360 | ) ) 006 001 \r \r ( l e t \r
0141400 ( ( l a s t c h a r t
0141420 y p e ' f i r s t ) \r
0141440 ( m a x a l p h a d i g i t
0141460 ( i p l u s ( c h a r c o d
0141500 e a ) \r
0141520