$ od -c -N 50000 [Indigo]<Casaba>7.0>Saffron2.0>Shared-Derived>SaffronAG1Impl.Mesa!17 0000000 - - S a f f r o n A G 1 I m p 0000020 l . m e s a \r - - C o p y r 0000040 i g h t 323 1 9 8 7 b y X 0000060 e r o x C o r p o r a t i o n 0000100 . A l l r i g h t s r e 0000120 s e r v e d . \r - - G e n e 0000140 r a t e d b y h e d e r m a 0000160 n . p a a t A u g u s t 1 0000200 7 , 1 9 8 7 4 : 3 2 : 5 6 0000220 p m P D T \r - - u s i n 0000240 g T h r e e C a s a b a F o u 0000260 r [ 1 . 2 ] o f J u n e 0000300 1 , 1 9 8 7 6 : 0 0 : 0 0 0000320 p m P D T \r \r D I R E C T O R 0000340 Y \r \t S a f f r o n A G 1 D e f 0000360 , \r \t S a f f r o n G e n e r i 0000400 c D e f , \r \t S a f f r o n A T 0000420 D e f ; \r \r S a f f r o n A G 1 0000440 I m p l : C E D A R P R O G 0000460 R A M I M P O R T S S a f f 0000500 r o n A G 1 D e f E X P O R T 0000520 S S a f f r o n A G 1 D e f = 0000540 \r B E G I N \r O P E N S a f 0000560 f r o n A G 1 D e f , S a f f 0000600 r o n G e n e r i c D e f , S 0000620 a f f r o n A T D e f ; \r \r - - 0000640 J u n k P r o d \r \r J u n k P 0000660 r o d P r o c s : \t P U B L I C 0000700 J u n k N o d e P r o c s _ 0000720 \r \t N E W [ J u n k N o d e P r 0000740 o c s B o d y _ [ J u n k P 0000760 r o d f o o ] ] ; \r \r B u i l d 0001000 J u n k P r o d N o d e : \t P U 0001020 B L I C P R O C [ p o s i t i 0001040 o n : I N T , l e n g t h : 0001060 I N T ] \r \t R E T U R N S [ J 0001100 u n k N o d e ] = \r \t \t B E G 0001120 I N \r \t \t R E T U R N [ N E W [ 0001140 J u n k N o d e B o d y _ [ p o 0001160 s i t i o n , l e n g t h , 0001200 J u n k P r o d P r o c s , N 0001220 I L ] ] ] ; \r \t \t E N D ; \r \r \r 0001240 - - T o p m o d u l e p P r o 0001260 d \r \r T o p m o d u l e p P r o 0001300 d P r o c s : \t P U B L I C T 0001320 o p N o d e P r o c s _ \r \t N 0001340 E W [ T o p N o d e P r o c s B 0001360 o d y _ [ T o p m o d u l e 0001400 p P r o d D o T o p , T o p m 0001420 o d u l e p P r o d E x p l o r 0001440 e ] ] ; \r \r B u i l d T o p m o 0001460 d u l e p P r o d N o d e : \t P 0001500 U B L I C P R O C [ p o s i t 0001520 i o n : I N T , l e n g t h 0001540 : I N T , M o d u l e P : 0001560 M o d u l e P N o d e ] \r \t R E 0001600 T U R N S [ T o p N o d e ] = 0001620 \r \t \t B E G I N \r \t \t d a t a : 0001640 \t T o p m o d u l e p P r o d D 0001660 a t a _ \r \t \t \t N E W [ T o p 0001700 m o d u l e p P r o d D a t a B 0001720 o d y _ [ \r \t \t \t M o d u l 0001740 e P ] ] ; \r \t \t R E T U R N [ N 0001760 E W [ T o p N o d e B o d y _ [ 0002000 p o s i t i o n , l e n g t h 0002020 , T o p m o d u l e p P r o d 0002040 P r o c s , d a t a ] ] ] ; \r 0002060 \t \t E N D ; \r \r \r - - E x p s 0002100 u m P r o d \r \r E x p s u m P r 0002120 o d P r o c s : \t P U B L I C 0002140 E x p N o d e P r o c s _ \r \t 0002160 N E W [ E x p N o d e P r o c s 0002200 B o d y _ [ E x p s u m P r 0002220 o d I d V a l ] ] ; \r \r B u i l 0002240 d E x p s u m P r o d N o d e : 0002260 \t P U B L I C P R O C [ p o s 0002300 i t i o n : I N T , l e n g 0002320 t h : I N T , E x p l e f t 0002340 : E x p N o d e , A d d O p 0002360 : A d d O p N o d e , E x p 0002400 r i g h t : E x p N o d e ] \r 0002420 \t R E T U R N S [ E x p N o d e 0002440 ] = \r \t \t B E G I N \r \t \t d a 0002460 t a : \t E x p s u m P r o d D a 0002500 t a _ \r \t \t \t N E W [ E x p s 0002520 u m P r o d D a t a B o d y _ 0002540 [ \r \t \t \t E x p l e f t , A 0002560 d d O p , E x p r i g h t ] ] 0002600 ; \r \t \t R E T U R N [ N E W [ E 0002620 x p N o d e B o d y _ [ p o s i 0002640 t i o n , l e n g t h , E x 0002660 p s u m P r o d P r o c s , d 0002700 a t a ] ] ] ; \r \t \t E N D ; \r \r 0002720 \r - - E x p u n a r y s u m P 0002740 r o d \r \r E x p u n a r y s u m 0002760 P r o d P r o c s : \t P U B L I 0003000 C E x p N o d e P r o c s _ 0003020 \r \t N E W [ E x p N o d e P r o 0003040 c s B o d y _ [ E x p u n a 0003060 r y s u m P r o d I d V a l ] ] 0003100 ; \r \r B u i l d E x p u n a r y 0003120 s u m P r o d N o d e : \t P U B 0003140 L I C P R O C [ p o s i t i o 0003160 n : I N T , l e n g t h : 0003200 I N T , A d d O p : A d d O 0003220 p N o d e , E x p : E x p N 0003240 o d e ] \r \t R E T U R N S [ E x 0003260 p N o d e ] = \r \t \t B E G I N 0003300 \r \t \t d a t a : \t E x p u n a r 0003320 y s u m P r o d D a t a _ \r \t 0003340 \t \t N E W [ E x p u n a r y s u 0003360 m P r o d D a t a B o d y _ 0003400 [ \r \t \t \t A d d O p , E x p ] 0003420 ] ; \r \t \t R E T U R N [ N E W [ 0003440 E x p N o d e B o d y _ [ p o s 0003460 i t i o n , l e n g t h , E 0003500 x p u n a r y s u m P r o d P r 0003520 o c s , d a t a ] ] ] ; \r \t \t 0003540 E N D ; \r \r \r - - E x p p r o 0003560 d u c t P r o d \r \r E x p p r o 0003600 d u c t P r o d P r o c s : \t P 0003620 U B L I C E x p N o d e P r o 0003640 c s _ \r \t N E W [ E x p N o d 0003660 e P r o c s B o d y _ [ E x 0003700 p p r o d u c t P r o d I d V a 0003720 l ] ] ; \r \r B u i l d E x p p r 0003740 o d u c t P r o d N o d e : \t P 0003760 U B L I C P R O C [ p o s i t 0004000 i o n : I N T , l e n g t h 0004020 : I N T , E x p l e f t : 0004040 E x p N o d e , M u l t O p : 0004060 M u l t O p N o d e , E x p 0004100 r i g h t : E x p N o d e ] \r 0004120 \t R E T U R N S [ E x p N o d e 0004140 ] = \r \t \t B E G I N \r \t \t d a 0004160 t a : \t E x p p r o d u c t P r 0004200 o d D a t a _ \r \t \t \t N E W [ 0004220 E x p p r o d u c t P r o d D a 0004240 t a B o d y _ [ \r \t \t \t E x 0004260 p l e f t , M u l t O p , E 0004300 x p r i g h t ] ] ; \r \t \t R E T 0004320 U R N [ N E W [ E x p N o d e B 0004340 o d y _ [ p o s i t i o n , l 0004360 e n g t h , E x p p r o d u c 0004400 t P r o d P r o c s , d a t a 0004420 ] ] ] ; \r \t \t E N D ; \r \r \r - - 0004440 E x p o r P r o d \r \r E x p o 0004460 r P r o d P r o c s : \t P U B L 0004500 I C E x p N o d e P r o c s 0004520 _ \r \t N E W [ E x p N o d e P r 0004540 o c s B o d y _ [ E x p o r 0004560 P r o d I d V a l ] ] ; \r \r B u 0004600 i l d E x p o r P r o d N o d e 0004620 : \t P U B L I C P R O C [ p o 0004640 s i t i o n : I N T , l e n 0004660 g t h : I N T , E x p l e f 0004700 t : E x p N o d e , E x p r 0004720 i g h t : E x p N o d e ] \r \t 0004740 R E T U R N S [ E x p N o d e ] 0004760 = \r \t \t B E G I N \r \t \t d a t 0005000 a : \t E x p o r P r o d D a t a 0005020 _ \r \t \t \t N E W [ E x p o r P 0005040 r o d D a t a B o d y _ [ \r 0005060 \t \t \t E x p l e f t , E x p r 0005100 i g h t ] ] ; \r \t \t R E T U R N 0005120 [ N E W [ E x p N o d e B o d y 0005140 _ [ p o s i t i o n , l e n g 0005160 t h , E x p o r P r o d P r o 0005200 c s , d a t a ] ] ] ; \r \t \t E 0005220 N D ; \r \r \r - - E x p a n d P 0005240 r o d \r \r E x p a n d P r o d P 0005260 r o c s : \t P U B L I C E x p 0005300 N o d e P r o c s _ \r \t N E W 0005320 [ E x p N o d e P r o c s B o d 0005340 y _ [ E x p a n d P r o d I 0005360 d V a l ] ] ; \r \r B u i l d E x 0005400 p a n d P r o d N o d e : \t P U 0005420 B L I C P R O C [ p o s i t i 0005440 o n : I N T , l e n g t h : 0005460 I N T , E x p l e f t : E 0005500 x p N o d e , E x p r i g h t 0005520 : E x p N o d e ] \r \t R E T U 0005540 R N S [ E x p N o d e ] = \r \t 0005560 \t B E G I N \r \t \t d a t a : \t E 0005600 x p a n d P r o d D a t a _ \r 0005620 \t \t \t N E W [ E x p a n d P r o 0005640 d D a t a B o d y _ [ \r \t \t 0005660 \t E x p l e f t , E x p r i g 0005700 h t ] ] ; \r \t \t R E T U R N [ N 0005720 E W [ E x p N o d e B o d y _ [ 0005740 p o s i t i o n , l e n g t h 0005760 , E x p a n d P r o d P r o c 0006000 s , d a t a ] ] ] ; \r \t \t E N 0006020 D ; \r \r \r - - E x p n o t P r 0006040 o d \r \r E x p n o t P r o d P r 0006060 o c s : \t P U B L I C E x p N 0006100 o d e P r o c s _ \r \t N E W [ 0006120 E x p N o d e P r o c s B o d y 0006140 _ [ E x p n o t P r o d I d 0006160 V a l ] ] ; \r \r B u i l d E x p 0006200 n o t P r o d N o d e : \t P U B 0006220 L I C P R O C [ p o s i t i o 0006240 n : I N T , l e n g t h : 0006260 I N T , E x p : E x p N o d 0006300 e ] \r \t R E T U R N S [ E x p N 0006320 o d e ] = \r \t \t B E G I N \r \t 0006340 \t d a t a : \t E x p n o t P r o 0006360 d D a t a _ \r \t \t \t N E W [ E 0006400 x p n o t P r o d D a t a B o d 0006420 y _ [ \r \t \t \t E x p ] ] ; \r 0006440 \t \t R E T U R N [ N E W [ E x p 0006460 N o d e B o d y _ [ p o s i t i 0006500 o n , l e n g t h , E x p n 0006520 o t P r o d P r o c s , d a t 0006540 a ] ] ] ; \r \t \t E N D ; \r \r \r - 0006560 - E x p r e l a t i o n P r o 0006600 d \r \r E x p r e l a t i o n P r 0006620 o d P r o c s : \t P U B L I C 0006640 E x p N o d e P r o c s _ \r \t 0006660 N E W [ E x p N o d e P r o c s 0006700 B o d y _ [ E x p r e l a t 0006720 i o n P r o d I d V a l ] ] ; \r 0006740 \r B u i l d E x p r e l a t i o 0006760 n P r o d N o d e : \t P U B L I 0007000 C P R O C [ p o s i t i o n : 0007020 I N T , l e n g t h : I N 0007040 T , E x p : E x p N o d e , 0007060 R e l a t i o n : R e l a t 0007100 i o n N o d e ] \r \t R E T U R N 0007120 S [ E x p N o d e ] = \r \t \t B 0007140 E G I N \r \t \t d a t a : \t E x p 0007160 r e l a t i o n P r o d D a t a 0007200 _ \r \t \t \t N E W [ E x p r e l 0007220 a t i o n P r o d D a t a B o d 0007240 y _ [ \r \t \t \t E x p , R e 0007260 l a t i o n ] ] ; \r \t \t R E T U 0007300 R N [ N E W [ E x p N o d e B o 0007320 d y _ [ p o s i t i o n , l e 0007340 n g t h , E x p r e l a t i o 0007360 n P r o d P r o c s , d a t a 0007400 ] ] ] ; \r \t \t E N D ; \r \r \r - - 0007420 E x p i f t h e n e l s e P r 0007440 o d \r \r E x p i f t h e n e l s 0007460 e P r o d P r o c s : \t P U B L 0007500 I C E x p N o d e P r o c s 0007520 _ \r \t N E W [ E x p N o d e P r 0007540 o c s B o d y _ [ E x p i f 0007560 t h e n e l s e P r o d I d V a 0007600 l ] ] ; \r \r B u i l d E x p i f 0007620 t h e n e l s e P r o d N o d e 0007640 : \t P U B L I C P R O C [ p o 0007660 s i t i o n : I N T , l e n 0007700 g t h : I N T , E x p c o n 0007720 d : E x p N o d e , E x p t 0007740 h e n p a r t : E x p N o d e 0007760 , E x p e l s e p a r t : E 0010000 x p N o d e ] \r \t R E T U R N S 0010020 [ E x p N o d e ] = \r \t \t B E 0010040 G I N \r \t \t d a t a : \t E x p i 0010060 f t h e n e l s e P r o d D a t 0010100 a _ \r \t \t \t N E W [ E x p i f 0010120 t h e n e l s e P r o d D a t a 0010140 B o d y _ [ \r \t \t \t E x p c 0010160 o n d , E x p t h e n p a r t 0010200 , E x p e l s e p a r t ] ] ; 0010220 \r \t \t R E T U R N [ N E W [ E x 0010240 p N o d e B o d y _ [ p o s i t 0010260 i o n , l e n g t h , E x p 0010300 i f t h e n e l s e P r o d P r 0010320 o c s , d a t a ] ] ] ; \r \t \t 0010340 E N D ; \r \r \r - - E x p s e l 0010360 e c t P r o d \r \r E x p s e l e 0010400 c t P r o d P r o c s : \t P U B 0010420 L I C E x p N o d e P r o c s 0010440 _ \r \t N E W [ E x p N o d e P 0010460 r o c s B o d y _ [ E x p s 0010500 e l e c t P r o d I d V a l ] ] 0010520 ; \r \r B u i l d E x p s e l e c 0010540 t P r o d N o d e : \t P U B L I 0010560 C P R O C [ p o s i t i o n : 0010600 I N T , l e n g t h : I N 0010620 T , S e l e c t H e a d : S 0010640 e l e c t H e a d N o d e , S 0010660 e l e c t E x p L i s t : S e 0010700 l e c t E x p L i s t N o d e , 0010720 E x p d e f a u l t : E x p 0010740 N o d e ] \r \t R E T U R N S [ E 0010760 x p N o d e ] = \r \t \t B E G I 0011000 N \r \t \t d a t a : \t E x p s e l 0011020 e c t P r o d D a t a _ \r \t \t 0011040 \t N E W [ E x p s e l e c t P r 0011060 o d D a t a B o d y _ [ \r \t 0011100 \t \t S e l e c t H e a d , S e 0011120 l e c t E x p L i s t , E x p 0011140 d e f a u l t ] ] ; \r \t \t R E T 0011160 U R N [ N E W [ E x p N o d e B 0011200 o d y _ [ p o s i t i o n , l 0011220 e n g t h , E x p s e l e c t 0011240 P r o d P r o c s , d a t a ] 0011260 ] ] ; \r \t \t E N D ; \r \r \r - - 0011300 E x p a s s i g n P r o d \r \r E 0011320 x p a s s i g n P r o d P r o c 0011340 s : \t P U B L I C E x p N o d 0011360 e P r o c s _ \r \t N E W [ E x 0011400 p N o d e P r o c s B o d y _ 0011420 [ E x p a s s i g n P r o d I 0011440 d V a l ] ] ; \r \r B u i l d E x 0011460 p a s s i g n P r o d N o d e : 0011500 \t P U B L I C P R O C [ p o s 0011520 i t i o n : I N T , l e n g 0011540 t h : I N T , E x p l h s : 0011560 E x p N o d e , E x p r h s 0011600 : E x p N o d e ] \r \t R E T U 0011620 R N S [ E x p N o d e ] = \r \t 0011640 \t B E G I N \r \t \t d a t a : \t E 0011660 x p a s s i g n P r o d D a t a 0011700 _ \r \t \t \t N E W [ E x p a s s 0011720 i g n P r o d D a t a B o d y 0011740 _ [ \r \t \t \t E x p l h s , E 0011760 x p r h s ] ] ; \r \t \t R E T U R 0012000 N [ N E W [ E x p N o d e B o d 0012020 y _ [ p o s i t i o n , l e n 0012040 g t h , E x p a s s i g n P r 0012060 o d P r o c s , d a t a ] ] ] 0012100 ; \r \t \t E N D ; \r \r \r - - E x 0012120 p m u l t i a s s i g n P r o d 0012140 \r \r E x p m u l t i a s s i g n 0012160 P r o d P r o c s : \t P U B L I 0012200 C E x p N o d e P r o c s _ 0012220 \r \t N E W [ E x p N o d e P r o 0012240 c s B o d y _ [ E x p m u l 0012260 t i a s s i g n P r o d I d V a 0012300 l ] ] ; \r \r B u i l d E x p m u 0012320 l t i a s s i g n P r o d N o d 0012340 e : \t P U B L I C P R O C [ p 0012360 o s i t i o n : I N T , l e 0012400 n g t h : I N T , E x p L i 0012420 s t : E x p L i s t N o d e , 0012440 E x p : E x p N o d e ] \r \t 0012460 R E T U R N S [ E x p N o d e ] 0012500 = \r \t \t B E G I N \r \t \t d a t 0012520 a : \t E x p m u l t i a s s i g 0012540 n P r o d D a t a _ \r \t \t \t N 0012560 E W [ E x p m u l t i a s s i g 0012600 n P r o d D a t a B o d y _ 0012620 [ \r \t \t \t E x p L i s t , E x 0012640 p ] ] ; \r \t \t R E T U R N [ N E 0012660 W [ E x p N o d e B o d y _ [ p 0012700 o s i t i o n , l e n g t h , 0012720 E x p m u l t i a s s i g n P 0012740 r o d P r o c s , d a t a ] ] 0012760 ] ; \r \t \t E N D ; \r \r \r - - E 0013000 x p i d P r o d \r \r E x p i d P 0013020 r o d P r o c s : \t P U B L I C 0013040 E x p N o d e P r o c s _ \r 0013060 \t N E W [ E x p N o d e P r o c 0013100 s B o d y _ [ E x p i d P r 0013120 o d I d V a l ] ] ; \r \r B u i l 0013140 d E x p i d P r o d N o d e : \t 0013160 P U B L I C P R O C [ p o s i 0013200 t i o n : I N T , l e n g t 0013220 h : I N T , I d : I d N o 0013240 d e ] \r \t R E T U R N S [ E x p 0013260 N o d e ] = \r \t \t B E G I N \r 0013300 \t \t d a t a : \t E x p i d P r o 0013320 d D a t a _ \r \t \t \t N E W [ E 0013340 x p i d P r o d D a t a B o d y 0013360 _ [ \r \t \t \t I d ] ] ; \r \t \t 0013400 R E T U R N [ N E W [ E x p N o 0013420 d e B o d y _ [ p o s i t i o n 0013440 , l e n g t h , E x p i d P 0013460 r o d P r o c s , d a t a ] ] 0013500 ] ; \r \t \t E N D ; \r \r \r - - E 0013520 x p n u m P r o d \r \r E x p n u 0013540 m P r o d P r o c s : \t P U B L 0013560 I C E x p N o d e P r o c s 0013600 _ \r \t N E W [ E x p N o d e P r 0013620 o c s B o d y _ [ E x p n u 0013640 m P r o d I d V a l ] ] ; \r \r B 0013660 u i l d E x p n u m P r o d N o 0013700 d e : \t P U B L I C P R O C [ 0013720 p o s i t i o n : I N T , l 0013740 e n g t h : I N T , N u m : 0013760 N u m N o d e ] \r \t R E T U R 0014000 N S [ E x p N o d e ] = \r \t \t 0014020 B E G I N \r \t \t d a t a : \t E x 0014040 p n u m P r o d D a t a _ \r \t 0014060 \t \t N E W [ E x p n u m P r o d 0014100 D a t a B o d y _ [ \r \t \t \t 0014120 N u m ] ] ; \r \t \t R E T U R N [ 0014140 N E W [ E x p N o d e B o d y _ 0014160 [ p o s i t i o n , l e n g t 0014200 h , E x p n u m P r o d P r o 0014220 c s , d a t a ] ] ] ; \r \t \t E 0014240 N D ; \r \r \r - - E x p s t r i 0014260 n g P r o d \r \r E x p s t r i n 0014300 g P r o d P r o c s : \t P U B L 0014320 I C E x p N o d e P r o c s 0014340 _ \r \t N E W [ E x p N o d e P r 0014360 o c s B o d y _ [ E x p s t 0014400 r i n g P r o d I d V a l ] ] ; 0014420 \r \r B u i l d E x p s t r i n g 0014440 P r o d N o d e : \t P U B L I C 0014460 P R O C [ p o s i t i o n : 0014500 I N T , l e n g t h : I N T 0014520 , S t r i n g : S t r i n g 0014540 N o d e ] \r \t R E T U R N S [ E 0014560 x p N o d e ] = \r \t \t B E G I 0014600 N \r \t \t d a t a : \t E x p s t r 0014620 i n g P r o d D a t a _ \r \t \t 0014640 \t N E W [ E x p s t r i n g P r 0014660 o d D a t a B o d y _ [ \r \t 0014700 \t \t S t r i n g ] ] ; \r \t \t R E 0014720 T U R N [ N E W [ E x p N o d e 0014740 B o d y _ [ p o s i t i o n , 0014760 l e n g t h , E x p s t r i n 0015000 g P r o d P r o c s , d a t a 0015020 ] ] ] ; \r \t \t E N D ; \r \r \r - - 0015040 E x p f l n u m P r o d \r \r E 0015060 x p f l n u m P r o d P r o c s 0015100 : \t P U B L I C E x p N o d e 0015120 P r o c s _ \r \t N E W [ E x p 0015140 N o d e P r o c s B o d y _ 0015160 [ E x p f l n u m P r o d I d V 0015200 a l ] ] ; \r \r B u i l d E x p f 0015220 l n u m P r o d N o d e : \t P U 0015240 B L I C P R O C [ p o s i t i 0015260 o n : I N T , l e n g t h : 0015300 I N T , F l n u m : F l n 0015320 u m N o d e ] \r \t R E T U R N S 0015340 [ E x p N o d e ] = \r \t \t B E 0015360 G I N \r \t \t d a t a : \t E x p f 0015400 l n u m P r o d D a t a _ \r \t 0015420 \t \t N E W [ E x p f l n u m P r 0015440 o d D a t a B o d y _ [ \r \t 0015460 \t \t F l n u m ] ] ; \r \t \t R E T 0015500 U R N [ N E W [ E x p N o d e B 0015520 o d y _ [ p o s i t i o n , l 0015540 e n g t h , E x p f l n u m P 0015560 r o d P r o c s , d a t a ] ] 0015600 ] ; \r \t \t E N D ; \r \r \r - - E 0015620 x p c h a r P r o d \r \r E x p c 0015640 h a r P r o d P r o c s : \t P U 0015660 B L I C E x p N o d e P r o c 0015700 s _ \r \t N E W [ E x p N o d e 0015720 P r o c s B o d y _ [ E x p 0015740 c h a r P r o d I d V a l ] ] ; 0015760 \r \r B u i l d E x p c h a r P r 0016000 o d N o d e : \t P U B L I C P 0016020 R O C [ p o s i t i o n : I N 0016040 T , l e n g t h : I N T , 0016060 C h a r : C h a r N o d e ] \r 0016100 \t R E T U R N S [ E x p N o d e 0016120 ] = \r \t \t B E G I N \r \t \t d a 0016140 t a : \t E x p c h a r P r o d D 0016160 a t a _ \r \t \t \t N E W [ E x p 0016200 c h a r P r o d D a t a B o d y 0016220 _ [ \r \t \t \t C h a r ] ] ; \r 0016240 \t \t R E T U R N [ N E W [ E x p 0016260 N o d e B o d y _ [ p o s i t i 0016300 o n , l e n g t h , E x p c 0016320 h a r P r o d P r o c s , d a 0016340 t a ] ] ] ; \r \t \t E N D ; \r \r \r 0016360 - - E x p a t o m P r o d \r \r 0016400 E x p a t o m P r o d P r o c s 0016420 : \t P U B L I C E x p N o d e 0016440 P r o c s _ \r \t N E W [ E x p 0016460 N o d e P r o c s B o d y _ 0016500 [ E x p a t o m P r o d I d V a 0016520 l ] ] ; \r \r B u i l d E x p a t 0016540 o m P r o d N o d e : \t P U B L 0016560 I C P R O C [ p o s i t i o n 0016600 : I N T , l e n g t h : I 0016620 N T , A t o m : A t o m N o 0016640 d e ] \r \t R E T U R N S [ E x p 0016660 N o d e ] = \r \t \t B E G I N \r 0016700 \t \t d a t a : \t E x p a t o m P 0016720 r o d D a t a _ \r \t \t \t N E W 0016740 [ E x p a t o m P r o d D a t a 0016760 B o d y _ [ \r \t \t \t A t o m 0017000 ] ] ; \r \t \t R E T U R N [ N E W 0017020 [ E x p N o d e B o d y _ [ p o 0017040 s i t i o n , l e n g t h , 0017060 E x p a t o m P r o d P r o c s 0017100 , d a t a ] ] ] ; \r \t \t E N D 0017120 ; \r \r \r - - E x p n a r r o w 0017140 P r o d \r \r E x p n a r r o w P 0017160 r o d P r o c s : \t P U B L I C 0017200 E x p N o d e P r o c s _ \r 0017220 \t N E W [ E x p N o d e P r o c 0017240 s B o d y _ [ E x p n a r r 0017260 o w P r o d I d V a l ] ] ; \r \r 0017300 B u i l d E x p n a r r o w P r 0017320 o d N o d e : \t P U B L I C P 0017340 R O C [ p o s i t i o n : I N 0017360 T , l e n g t h : I N T , 0017400 E x p : E x p N o d e , O p 0017420 t T y p e : O p t T y p e N o 0017440 d e , C a t c h : C a t c h 0017460 N o d e ] \r \t R E T U R N S [ E 0017500 x p N o d e ] = \r \t \t B E G I 0017520 N \r \t \t d a t a : \t E x p n a r 0017540 r o w P r o d D a t a _ \r \t \t 0017560 \t N E W [ E x p n a r r o w P r 0017600 o d D a t a B o d y _ [ \r \t 0017620 \t \t E x p , O p t T y p e , 0017640 C a t c h ] ] ; \r \t \t R E T U R 0017660 N [ N E W [ E x p N o d e B o d 0017700 y _ [ p o s i t i o n , l e n 0017720 g t h , E x p n a r r o w P r 0017740 o d P r o c s , d a t a ] ] ] 0017760 ; \r \t \t E N D ; \r \r \r - - E x 0020000 p l o o p h o l e P r o d \r \r E 0020020 x p l o o p h o l e P r o d P r 0020040 o c s : \t P U B L I C E x p N 0020060 o d e P r o c s _ \r \t N E W [ 0020100 E x p N o d e P r o c s B o d y 0020120 _ [ E x p l o o p h o l e P 0020140 r o d I d V a l ] ] ; \r \r B u i 0020160 l d E x p l o o p h o l e P r o 0020200 d N o d e : \t P U B L I C P R 0020220 O C [ p o s i t i o n : I N T 0020240 , l e n g t h : I N T , E 0020260 x p : E x p N o d e , O p t 0020300 T y p e : O p t T y p e N o d 0020320 e ] \r \t R E T U R N S [ E x p N 0020340 o d e ] = \r \t \t B E G I N \r \t 0020360 \t d a t a : \t E x p l o o p h o 0020400 l e P r o d D a t a _ \r \t \t \t 0020420 N E W [ E x p l o o p h o l e P 0020440 r o d D a t a B o d y _ [ \r 0020460 \t \t \t E x p , O p t T y p e ] 0020500 ] ; \r \t \t R E T U R N [ N E W [ 0020520 E x p N o d e B o d y _ [ p o s 0020540 i t i o n , l e n g t h , E 0020560 x p l o o p h o l e P r o d P r 0020600 o c s , d a t a ] ] ] ; \r \t \t 0020620 E N D ; \r \r \r - - E x p a p p 0020640 l y P r o d \r \r E x p a p p l y 0020660 P r o d P r o c s : \t P U B L I 0020700 C E x p N o d e P r o c s _ 0020720 \r \t N E W [ E x p N o d e P r o 0020740 c s B o d y _ [ E x p a p p 0020760 l y P r o d I d V a l ] ] ; \r \r 0021000 B u i l d E x p a p p l y P r o 0021020 d N o d e : \t P U B L I C P R 0021040 O C [ p o s i t i o n : I N T 0021060 , l e n g t h : I N T , E 0021100 x p r a t o r : E x p N o d e 0021120 , E x p r a n d : E x p N o 0021140 d e , C a t c h : C a t c h 0021160 N o d e ] \r \t R E T U R N S [ E 0021200 x p N o d e ] = \r \t \t B E G I 0021220 N \r \t \t d a t a : \t E x p a p p 0021240 l y P r o d D a t a _ \r \t \t \t 0021260 N E W [ E x p a p p l y P r o d 0021300 D a t a B o d y _ [ \r \t \t \t 0021320 E x p r a t o r , E x p r a n 0021340 d , C a t c h ] ] ; \r \t \t R E 0021360 T U R N [ N E W [ E x p N o d e 0021400 B o d y _ [ p o s i t i o n , 0021420 l e n g t h , E x p a p p l y 0021440 P r o d P r o c s , d a t a ] 0021460 ] ] ; \r \t \t E N D ; \r \r \r - - 0021500 E x p q u a l i f i e r P r o d 0021520 \r \r E x p q u a l i f i e r P r 0021540 o d P r o c s : \t P U B L I C 0021560 E x p N o d e P r o c s _ \r \t 0021600 N E W [ E x p N o d e P r o c s 0021620 B o d y _ [ E x p q u a l i 0021640 f i e r P r o d I d V a l ] ] ; 0021660 \r \r B u i l d E x p q u a l i f 0021700 i e r P r o d N o d e : \t P U B 0021720 L I C P R O C [ p o s i t i o 0021740 n : I N T , l e n g t h : 0021760 I N T , E x p : E x p N o d 0022000 e , Q u a l i f i e r : Q u 0022020 a l i f i e r N o d e ] \r \t R E 0022040 T U R N S [ E x p N o d e ] = 0022060 \r \t \t B E G I N \r \t \t d a t a : 0022100 \t E x p q u a l i f i e r P r o 0022120 d D a t a _ \r \t \t \t N E W [ E 0022140 x p q u a l i f i e r P r o d D 0022160 a t a B o d y _ [ \r \t \t \t E 0022200 x p , Q u a l i f i e r ] ] ; 0022220 \r \t \t R E T U R N [ N E W [ E x 0022240 p N o d e B o d y _ [ p o s i t 0022260 i o n , l e n g t h , E x p 0022300 q u a l i f i e r P r o d P r o 0022320 c s , d a t a ] ] ] ; \r \t \t E 0022340 N D ; \r \r \r - - E x p e x p l 0022360 i s t P r o d \r \r E x p e x p l 0022400 i s t P r o d P r o c s : \t P U 0022420 B L I C E x p N o d e P r o c 0022440 s _ \r \t N E W [ E x p N o d e 0022460 P r o c s B o d y _ [ E x p 0022500 e x p l i s t P r o d I d V a l 0022520 ] ] ; \r \r B u i l d E x p e x p 0022540 l i s t P r o d N o d e : \t P U 0022560 B L I C P R O C [ p o s i t i 0022600 o n : I N T , l e n g t h : 0022620 I N T , E x p L i s t : E 0022640 x p L i s t N o d e ] \r \t R E T 0022660 U R N S [ E x p N o d e ] = \r 0022700 \t \t B E G I N \r \t \t d a t a : \t 0022720 E x p e x p l i s t P r o d D a 0022740 t a _ \r \t \t \t N E W [ E x p e 0022760 x p l i s t P r o d D a t a B o 0023000 d y _ [ \r \t \t \t E x p L i s 0023020 t ] ] ; \r \t \t R E T U R N [ N E 0023040 W [ E x p N o d e B o d y _ [ p 0023060 o s i t i o n , l e n g t h , 0023100 E x p e x p l i s t P r o d P 0023120 r o c s , d a t a ] ] ] ; \r \t 0023140 \t E N D ; \r \r \r - - E x p p r 0023160 e f i x o p P r o d \r \r E x p p 0023200 r e f i x o p P r o d P r o c s 0023220 : \t P U B L I C E x p N o d e 0023240 P r o c s _ \r \t N E W [ E x p 0023260 N o d e P r o c s B o d y _ 0023300 [ E x p p r e f i x o p P r o d 0023320 I d V a l ] ] ; \r \r B u i l d E 0023340 x p p r e f i x o p P r o d N o 0023360 d e : \t P U B L I C P R O C [ 0023400 p o s i t i o n : I N T , l 0023420 e n g t h : I N T , P r e f 0023440 i x O p : P r e f i x O p N o 0023460 d e , O r d e r L i s t : O 0023500 r d e r L i s t N o d e ] \r \t R 0023520 E T U R N S [ E x p N o d e ] 0023540 = \r \t \t B E G I N \r \t \t d a t a 0023560 : \t E x p p r e f i x o p P r o 0023600 d D a t a _ \r \t \t \t N E W [ E 0023620 x p p r e f i x o p P r o d D a 0023640 t a B o d y _ [ \r \t \t \t P r 0023660 e f i x O p , O r d e r L i s 0023700 t ] ] ; \r \t \t R E T U R N [ N E 0023720 W [ E x p N o d e B o d y _ [ p 0023740 o s i t i o n , l e n g t h , 0023760 E x p p r e f i x o p P r o d 0024000 P r o c s , d a t a ] ] ] ; \r 0024020 \t \t E N D ; \r \r \r - - E x p v 0024040 a l P r o d \r \r E x p v a l P r 0024060 o d P r o c s : \t P U B L I C 0024100 E x p N o d e P r o c s _ \r \t 0024120 N E W [ E x p N o d e P r o c s 0024140 B o d y _ [ E x p v a l P r 0024160 o d I d V a l ] ] ; \r \r B u i l 0024200 d E x p v a l P r o d N o d e : 0024220 \t P U B L I C P R O C [ p o s 0024240 i t i o n : I N T , l e n g 0024260 t h : I N T , O r d e r L i 0024300 s t : O r d e r L i s t N o d 0024320 e ] \r \t R E T U R N S [ E x p N 0024340 o d e ] = \r \t \t B E G I N \r \t 0024360 \t d a t a : \t E x p v a l P r o 0024400 d D a t a _ \r \t \t \t N E W [ E 0024420 x p v a l P r o d D a t a B o d 0024440 y _ [ \r \t \t \t O r d e r L i 0024460 s t ] ] ; \r \t \t R E T U R N [ N 0024500 E W [ E x p N o d e B o d y _ [ 0024520 p o s i t i o n , l e n g t h 0024540 , E x p v a l P r o d P r o c 0024560 s , d a t a ] ] ] ; \r \t \t E N 0024600 D ; \r \r \r - - E x p a l l P r 0024620 o d \r \r E x p a l l P r o d P r 0024640 o c s : \t P U B L I C E x p N 0024660 o d e P r o c s _ \r \t N E W [ 0024700 E x p N o d e P r o c s B o d y 0024720 _ [ E x p a l l P r o d I d 0024740 V a l ] ] ; \r \r B u i l d E x p 0024760 a l l P r o d N o d e : \t P U B 0025000 L I C P R O C [ p o s i t i o 0025020 n : I N T , l e n g t h : 0025040 I N T , O r d e r L i s t : 0025060 O r d e r L i s t N o d e ] \r \t 0025100 R E T U R N S [ E x p N o d e ] 0025120 = \r \t \t B E G I N \r \t \t d a t 0025140 a : \t E x p a l l P r o d D a t 0025160 a _ \r \t \t \t N E W [ E x p a l 0025200 l P r o d D a t a B o d y _ 0025220 [ \r \t \t \t O r d e r L i s t ] ] 0025240 ; \r \t \t R E T U R N [ N E W [ E 0025260 x p N o d e B o d y _ [ p o s i 0025300 t i o n , l e n g t h , E x 0025320 p a l l P r o d P r o c s , d 0025340 a t a ] ] ] ; \r \t \t E N D ; \r \r 0025360 \r - - E x p n e w P r o d \r \r 0025400 E x p n e w P r o d P r o c s : 0025420 \t P U B L I C E x p N o d e P 0025440 r o c s _ \r \t N E W [ E x p N 0025460 o d e P r o c s B o d y _ [ 0025500 E x p n e w P r o d I d V a l ] 0025520 ] ; \r \r B u i l d E x p n e w P 0025540 r o d N o d e : \t P U B L I C 0025560 P R O C [ p o s i t i o n : I 0025600 N T , l e n g t h : I N T , 0025620 N e w : N e w N o d e , T 0025640 y p e E x p : T y p e E x p N 0025660 o d e , I n i t i a l i z a t 0025700 i o n : I n i t i a l i z a t 0025720 i o n N o d e , C a t c h : 0025740 C a t c h N o d e ] \r \t R E T U 0025760 R N S [ E x p N o d e ] = \r \t 0026000 \t B E G I N \r \t \t d a t a : \t E 0026020 x p n e w P r o d D a t a _ \r 0026040 \t \t \t N E W [ E x p n e w P r o 0026060 d D a t a B o d y _ [ \r \t \t 0026100 \t N e w , T y p e E x p , I 0026120 n i t i a l i z a t i o n , C 0026140 a t c h ] ] ; \r \t \t R E T U R N 0026160 [ N E W [ E x p N o d e B o d y 0026200 _ [ p o s i t i o n , l e n g 0026220 t h , E x p n e w P r o d P r 0026240 o c s , d a t a ] ] ] ; \r \t \t 0026260 E N D ; \r \r \r - - E x p c o n 0026300 s P r o d \r \r E x p c o n s P r 0026320 o d P r o c s : \t P U B L I C 0026340 E x p N o d e P r o c s _ \r \t 0026360 N E W [ E x p N o d e P r o c s 0026400 B o d y _ [ E x p c o n s P 0026420 r o d I d V a l ] ] ; \r \r B u i 0026440 l d E x p c o n s P r o d N o d 0026460 e : \t P U B L I C P R O C [ p 0026500 o s i t i o n : I N T , l e 0026520 n g t h : I N T , C o n s : 0026540 C o n s N o d e , E x p L i 0026560 s t : E x p L i s t N o d e , 0026600 C a t c h : C a t c h N o d 0026620 e ] \r \t R E T U R N S [ E x p N 0026640 o d e ] = \r \t \t B E G I N \r \t 0026660 \t d a t a : \t E x p c o n s P r 0026700 o d D a t a _ \r \t \t \t N E W [ 0026720 E x p c o n s P r o d D a t a B 0026740 o d y _ [ \r \t \t \t C o n s , 0026760 E x p L i s t , C a t c h ] 0027000 ] ; \r \t \t R E T U R N [ N E W [ 0027020 E x p N o d e B o d y _ [ p o s 0027040 i t i o n , l e n g t h , E 0027060 x p c o n s P r o d P r o c s , 0027100 d a t a ] ] ] ; \r \t \t E N D ; 0027120 \r \r \r - - E x p l i s t c o n 0027140 s P r o d \r \r E x p l i s t c o 0027160 n s P r o d P r o c s : \t P U B 0027200 L I C E x p N o d e P r o c s 0027220 _ \r \t N E W [ E x p N o d e P 0027240 r o c s B o d y _ [ E x p l 0027260 i s t c o n s P r o d I d V a l 0027300 ] ] ; \r \r B u i l d E x p l i s 0027320 t c o n s P r o d N o d e : \t P 0027340 U B L I C P R O C [ p o s i t 0027360 i o n : I N T , l e n g t h 0027400 : I N T , L i s t C o n s : 0027420 L i s t C o n s N o d e , E 0027440 x p L i s t : E x p L i s t N 0027460 o d e ] \r \t R E T U R N S [ E x 0027500 p N o d e ] = \r \t \t B E G I N 0027520 \r \t \t d a t a : \t E x p l i s t 0027540 c o n s P r o d D a t a _ \r \t 0027560 \t \t N E W [ E x p l i s t c o n 0027600 s P r o d D a t a B o d y _ 0027620 [ \r \t \t \t L i s t C o n s , E 0027640 x p L i s t ] ] ; \r \t \t R E T U 0027660 R N [ N E W [ E x p N o d e B o 0027700 d y _ [ p o s i t i o n , l e 0027720 n g t h , E x p l i s t c o n 0027740 s P r o d P r o c s , d a t a 0027760 ] ] ] ; \r \t \t E N D ; \r \r \r - - 0030000 E x p n i l P r o d \r \r E x p 0030020 n i l P r o d P r o c s : \t P U 0030040 B L I C E x p N o d e P r o c 0030060 s _ \r \t N E W [ E x p N o d e 0030100 P r o c s B o d y _ [ E x p 0030120 n i l P r o d I d V a l ] ] ; \r 0030140 \r B u i l d E x p n i l P r o d 0030160 N o d e : \t P U B L I C P R O 0030200 C [ p o s i t i o n : I N T , 0030220 l e n g t h : I N T ] \r \t R 0030240 E T U R N S [ E x p N o d e ] 0030260 = \r \t \t B E G I N \r \t \t R E T U 0030300 R N [ N E W [ E x p N o d e B o 0030320 d y _ [ p o s i t i o n , l e 0030340 n g t h , E x p n i l P r o d 0030360 P r o c s , N I L ] ] ] ; \r \t 0030400 \t E N D ; \r \r \r - - E x p t y 0030420 p e o p P r o d \r \r E x p t y p 0030440 e o p P r o d P r o c s : \t P U 0030460 B L I C E x p N o d e P r o c 0030500 s _ \r \t N E W [ E x p N o d e 0030520 P r o c s B o d y _ [ E x p 0030540 t y p e o p P r o d I d V a l ] 0030560 ] ; \r \r B u i l d E x p t y p e 0030600 o p P r o d N o d e : \t P U B L 0030620 I C P R O C [ p o s i t i o n 0030640 : I N T , l e n g t h : I 0030660 N T , T y p e O p : T y p e 0030700 O p N o d e , T y p e E x p : 0030720 T y p e E x p N o d e ] \r \t R 0030740 E T U R N S [ E x p N o d e ] 0030760 = \r \t \t B E G I N \r \t \t d a t a 0031000 : \t E x p t y p e o p P r o d D 0031020 a t a _ \r \t \t \t N E W [ E x p 0031040 t y p e o p P r o d D a t a B o 0031060 d y _ [ \r \t \t \t T y p e O p 0031100 , T y p e E x p ] ] ; \r \t \t R 0031120 E T U R N [ N E W [ E x p N o d 0031140 e B o d y _ [ p o s i t i o n , 0031160 l e n g t h , E x p t y p e 0031200 o p P r o d P r o c s , d a t 0031220 a ] ] ] ; \r \t \t E N D ; \r \r \r - 0031240 - E x p s i z e P r o d \r \r E 0031260 x p s i z e P r o d P r o c s : 0031300 \t P U B L I C E x p N o d e P 0031320 r o c s _ \r \t N E W [ E x p N 0031340 o d e P r o c s B o d y _ [ 0031360 E x p s i z e P r o d I d V a l 0031400 ] ] ; \r \r B u i l d E x p s i z 0031420 e P r o d N o d e : \t P U B L I 0031440 C P R O C [ p o s i t i o n : 0031460 I N T , l e n g t h : I N 0031500 T , T y p e E x p : T y p e 0031520 E x p N o d e ] \r \t R E T U R N 0031540 S [ E x p N o d e ] = \r \t \t B 0031560 E G I N \r \t \t d a t a : \t E x p 0031600 s i z e P r o d D a t a _ \r \t 0031620 \t \t N E W [ E x p s i z e P r o 0031640 d D a t a B o d y _ [ \r \t \t 0031660 \t T y p e E x p ] ] ; \r \t \t R E 0031700 T U R N [ N E W [ E x p N o d e 0031720 B o d y _ [ p o s i t i o n , 0031740 l e n g t h , E x p s i z e P 0031760 r o d P r o c s , d a t a ] ] 0032000 ] ; \r \t \t E N D ; \r \r \r - - E 0032020 x p s i z e 2 P r o d \r \r E x p 0032040 s i z e 2 P r o d P r o c s : \t 0032060 P U B L I C E x p N o d e P r 0032100 o c s _ \r \t N E W [ E x p N o 0032120 d e P r o c s B o d y _ [ E 0032140 x p s i z e 2 P r o d I d V a l 0032160 ] ] ; \r \r B u i l d E x p s i z 0032200 e 2 P r o d N o d e : \t P U B L 0032220 I C P R O C [ p o s i t i o n 0032240 : I N T , l e n g t h : I 0032260 N T , T y p e E x p : T y p 0032300 e E x p N o d e , E x p : E 0032320 x p N o d e ] \r \t R E T U R N S 0032340 [ E x p N o d e ] = \r \t \t B E 0032360 G I N \r \t \t d a t a : \t E x p s 0032400 i z e 2 P r o d D a t a _ \r \t 0032420 \t \t N E W [ E x p s i z e 2 P r 0032440 o d D a t a B o d y _ [ \r \t 0032460 \t \t T y p e E x p , E x p ] ] 0032500 ; \r \t \t R E T U R N [ N E W [ E 0032520 x p N o d e B o d y _ [ p o s i 0032540 t i o n , l e n g t h , E x 0032560 p s i z e 2 P r o d P r o c s , 0032600 d a t a ] ] ] ; \r \t \t E N D ; 0032620 \r \r \r - - E x p b i t s P r o 0032640 d \r \r E x p b i t s P r o d P r 0032660 o c s : \t P U B L I C E x p N 0032700 o d e P r o c s _ \r \t N E W [ 0032720 E x p N o d e P r o c s B o d y 0032740 _ [ E x p b i t s P r o d I 0032760 d V a l ] ] ; \r \r B u i l d E x 0033000 p b i t s P r o d N o d e : \t P 0033020 U B L I C P R O C [ p o s i t 0033040 i o n : I N T , l e n g t h 0033060 : I N T , T y p e E x p : 0033100 T y p e E x p N o d e ] \r \t R E 0033120 T U R N S [ E x p N o d e ] = 0033140 \r \t \t B E G I N \r \t \t d a t a : 0033160 \t E x p b i t s P r o d D a t a 0033200 _ \r \t \t \t N E W [ E x p b i t 0033220 s P r o d D a t a B o d y _ 0033240 [ \r \t \t \t T y p e E x p ] ] ; \r 0033260 \t \t R E T U R N [ N E W [ E x p 0033300 N o d e B o d y _ [ p o s i t i 0033320 o n , l e n g t h , E x p b 0033340 i t s P r o d P r o c s , d a 0033360 t a ] ] ] ; \r \t \t E N D ; \r \r \r 0033400 - - E x p b i t s 2 P r o d \r 0033420 \r E x p b i t s 2 P r o d P r o 0033440 c s : \t P U B L I C E x p N o 0033460 d e P r o c s _ \r \t N E W [ E 0033500 x p N o d e P r o c s B o d y 0033520 _ [ E x p b i t s 2 P r o d I 0033540 d V a l ] ] ; \r \r B u i l d E x 0033560 p b i t s 2 P r o d N o d e : \t 0033600 P U B L I C P R O C [ p o s i 0033620 t i o n : I N T , l e n g t 0033640 h : I N T , T y p e E x p : 0033660 T y p e E x p N o d e , E x 0033700 p : E x p N o d e ] \r \t R E T 0033720 U R N S [ E x p N o d e ] = \r 0033740 \t \t B E G I N \r \t \t d a t a : \t 0033760 E x p b i t s 2 P r o d D a t a 0034000 _ \r \t \t \t N E W [ E x p b i t 0034020 s 2 P r o d D a t a B o d y _ 0034040 [ \r \t \t \t T y p e E x p , E 0034060 x p ] ] ; \r \t \t R E T U R N [ N 0034100 E W [ E x p N o d e B o d y _ [ 0034120 p o s i t i o n , l e n g t h 0034140 , E x p b i t s 2 P r o d P r 0034160 o c s , d a t a ] ] ] ; \r \t \t 0034200 E N D ; \r \r \r - - E x p b y t 0034220 e s P r o d \r \r E x p b y t e s 0034240 P r o d P r o c s : \t P U B L I 0034260 C E x p N o d e P r o c s _ 0034300 \r \t N E W [ E x p N o d e P r o 0034320 c s B o d y _ [ E x p b y t 0034340 e s P r o d I d V a l ] ] ; \r \r 0034360 B u i l d E x p b y t e s P r o 0034400 d N o d e : \t P U B L I C P R 0034420 O C [ p o s i t i o n : I N T 0034440 , l e n g t h : I N T , T 0034460 y p e E x p : T y p e E x p N 0034500 o d e ] \r \t R E T U R N S [ E x 0034520 p N o d e ] = \r \t \t B E G I N 0034540 \r \t \t d a t a : \t E x p b y t e 0034560 s P r o d D a t a _ \r \t \t \t N 0034600 E W [ E x p b y t e s P r o d D 0034620 a t a B o d y _ [ \r \t \t \t T 0034640 y p e E x p ] ] ; \r \t \t R E T U 0034660 R N [ N E W [ E x p N o d e B o 0034700 d y _ [ p o s i t i o n , l e 0034720 n g t h , E x p b y t e s P r 0034740 o d P r o c s , d a t a ] ] ] 0034760 ; \r \t \t E N D ; \r \r \r - - E x 0035000 p b y t e s 2 P r o d \r \r E x p 0035020 b y t e s 2 P r o d P r o c s : 0035040 \t P U B L I C E x p N o d e P 0035060 r o c s _ \r \t N E W [ E x p N 0035100 o d e P r o c s B o d y _ [ 0035120 E x p b y t e s 2 P r o d I d V 0035140 a l ] ] ; \r \r B u i l d E x p b 0035160 y t e s 2 P r o d N o d e : \t P 0035200 U B L I C P R O C [ p o s i t 0035220 i o n : I N T , l e n g t h 0035240 : I N T , T y p e E x p : 0035260 T y p e E x p N o d e , E x p 0035300 : E x p N o d e ] \r \t R E T U 0035320 R N S [ E x p N o d e ] = \r \t 0035340 \t B E G I N \r \t \t d a t a : \t E 0035360 x p b y t e s 2 P r o d D a t a 0035400 _ \r \t \t \t N E W [ E x p b y t 0035420 e s 2 P r o d D a t a B o d y 0035440 _ [ \r \t \t \t T y p e E x p , 0035460 E x p ] ] ; \r \t \t R E T U R N [ 0035500 N E W [ E x p N o d e B o d y _ 0035520 [ p o s i t i o n , l e n g t 0035540 h , E x p b y t e s 2 P r o d 0035560 P r o c s , d a t a ] ] ] ; \r 0035600 \t \t E N D ; \r \r \r - - E x p u 0035620 n i t s P r o d \r \r E x p u n i 0035640 t s P r o d P r o c s : \t P U B 0035660 L I C E x p N o d e P r o c s 0035700 _ \r \t N E W [ E x p N o d e P 0035720 r o c s B o d y _ [ E x p u 0035740 n i t s P r o d I d V a l ] ] ; 0035760 \r \r B u i l d E x p u n i t s P 0036000 r o d N o d e : \t P U B L I C 0036020 P R O C [ p o s i t i o n : I 0036040 N T , l e n g t h : I N T , 0036060 T y p e E x p : T y p e E x 0036100 p N o d e ] \r \t R E T U R N S [ 0036120 E x p N o d e ] = \r \t \t B E G 0036140 I N \r \t \t d a t a : \t E x p u n 0036160 i t s P r o d D a t a _ \r \t \t 0036200 \t N E W [ E x p u n i t s P r o 0036220 d D a t a B o d y _ [ \r \t \t 0036240 \t T y p e E x p ] ] ; \r \t \t R E 0036260 T U R N [ N E W [ E x p N o d e 0036300 B o d y _ [ p o s i t i o n , 0036320 l e n g t h , E x p u n i t s 0036340 P r o d P r o c s , d a t a ] 0036360 ] ] ; \r \t \t E N D ; \r \r \r - - 0036400 E x p u n i t s 2 P r o d \r \r E 0036420 x p u n i t s 2 P r o d P r o c 0036440 s : \t P U B L I C E x p N o d 0036460 e P r o c s _ \r \t N E W [ E x 0036500 p N o d e P r o c s B o d y _ 0036520 [ E x p u n i t s 2 P r o d I 0036540 d V a l ] ] ; \r \r B u i l d E x 0036560 p u n i t s 2 P r o d N o d e : 0036600 \t P U B L I C P R O C [ p o s 0036620 i t i o n : I N T , l e n g 0036640 t h : I N T , T y p e E x p 0036660 : T y p e E x p N o d e , E 0036700 x p : E x p N o d e ] \r \t R E 0036720 T U R N S [ E x p N o d e ] = 0036740 \r \t \t B E G I N \r \t \t d a t a : 0036760 \t E x p u n i t s 2 P r o d D a 0037000 t a _ \r \t \t \t N E W [ E x p u 0037020 n i t s 2 P r o d D a t a B o d 0037040 y _ [ \r \t \t \t T y p e E x p 0037060 , E x p ] ] ; \r \t \t R E T U R 0037100 N [ N E W [ E x p N o d e B o d 0037120 y _ [ p o s i t i o n , l e n 0037140 g t h , E x p u n i t s 2 P r 0037160 o d P r o c s , d a t a ] ] ] 0037200 ; \r \t \t E N D ; \r \r \r - - E x 0037220 p w o r d s P r o d \r \r E x p w 0037240 o r d s P r o d P r o c s : \t P 0037260 U B L I C E x p N o d e P r o 0037300 c s _ \r \t N E W [ E x p N o d 0037320 e P r o c s B o d y _ [ E x 0037340 p w o r d s P r o d I d V a l ] 0037360 ] ; \r \r B u i l d E x p w o r d 0037400 s P r o d N o d e : \t P U B L I 0037420 C P R O C [ p o s i t i o n : 0037440 I N T , l e n g t h : I N 0037460 T , T y p e E x p : T y p e 0037500 E x p N o d e ] \r \t R E T U R N 0037520 S [ E x p N o d e ] = \r \t \t B 0037540 E G I N \r \t \t d a t a : \t E x p 0037560 w o r d s P r o d D a t a _ \r 0037600 \t \t \t N E W [ E x p w o r d s P 0037620 r o d D a t a B o d y _ [ \r 0037640 \t \t \t T y p e E x p ] ] ; \r \t \t 0037660 R E T U R N [ N E W [ E x p N o 0037700 d e B o d y _ [ p o s i t i o n 0037720 , l e n g t h , E x p w o r 0037740 d s P r o d P r o c s , d a t 0037760 a ] ] ] ; \r \t \t E N D ; \r \r \r - 0040000 - E x p w o r d s 2 P r o d \r 0040020 \r E x p w o r d s 2 P r o d P r 0040040 o c s : \t P U B L I C E x p N 0040060 o d e P r o c s _ \r \t N E W [ 0040100 E x p N o d e P r o c s B o d y 0040120 _ [ E x p w o r d s 2 P r o 0040140 d I d V a l ] ] ; \r \r B u i l d 0040160 E x p w o r d s 2 P r o d N o d 0040200 e : \t P U B L I C P R O C [ p 0040220 o s i t i o n : I N T , l e 0040240 n g t h : I N T , T y p e E 0040260 x p : T y p e E x p N o d e , 0040300 E x p : E x p N o d e ] \r \t 0040320 R E T U R N S [ E x p N o d e ] 0040340 = \r \t \t B E G I N \r \t \t d a t 0040360 a : \t E x p w o r d s 2 P r o d 0040400 D a t a _ \r \t \t \t N E W [ E x 0040420 p w o r d s 2 P r o d D a t a B 0040440 o d y _ [ \r \t \t \t T y p e E 0040460 x p , E x p ] ] ; \r \t \t R E T 0040500 U R N [ N E W [ E x p N o d e B 0040520 o d y _ [ p o s i t i o n , l 0040540 e n g t h , E x p w o r d s 2 0040560 P r o d P r o c s , d a t a ] 0040600 ] ] ; \r \t \t E N D ; \r \r \r - - 0040620 E x p i s t y p e P r o d \r \r E 0040640 x p i s t y p e P r o d P r o c 0040660 s : \t P U B L I C E x p N o d 0040700 e P r o c s _ \r \t N E W [ E x 0040720 p N o d e P r o c s B o d y _ 0040740 [ E x p i s t y p e P r o d I 0040760 d V a l ] ] ; \r \r B u i l d E x 0041000 p i s t y p e P r o d N o d e : 0041020 \t P U B L I C P R O C [ p o s 0041040 i t i o n : I N T , l e n g 0041060 t h : I N T , E x p : E x 0041100 p N o d e , T y p e E x p : 0041120 T y p e E x p N o d e ] \r \t R E 0041140 T U R N S [ E x p N o d e ] = 0041160 \r \t \t B E G I N \r \t \t d a t a : 0041200 \t E x p i s t y p e P r o d D a 0041220 t a _ \r \t \t \t N E W [ E x p i 0041240 s t y p e P r o d D a t a B o d 0041260 y _ [ \r \t \t \t E x p , T y 0041300 p e E x p ] ] ; \r \t \t R E T U R 0041320 N [ N E W [ E x p N o d e B o d 0041340 y _ [ p o s i t i o n , l e n 0041360 g t h , E x p i s t y p e P r 0041400 o d P r o c s , d a t a ] ] ] 0041420 ; \r \t \t E N D ; \r \r \r - - E x 0041440 p a d d r e s s P r o d \r \r E x 0041460 p a d d r e s s P r o d P r o c 0041500 s : \t P U B L I C E x p N o d 0041520 e P r o c s _ \r \t N E W [ E x 0041540 p N o d e P r o c s B o d y _ 0041560 [ E x p a d d r e s s P r o d 0041600 I d V a l ] ] ; \r \r B u i l d E 0041620 x p a d d r e s s P r o d N o d 0041640 e : \t P U B L I C P R O C [ p 0041660 o s i t i o n : I N T , l e 0041700 n g t h : I N T , E x p : 0041720 E x p N o d e ] \r \t R E T U R N 0041740 S [ E x p N o d e ] = \r \t \t B 0041760 E G I N \r \t \t d a t a : \t E x p 0042000 a d d r e s s P r o d D a t a 0042020 _ \r \t \t \t N E W [ E x p a d d r 0042040 e s s P r o d D a t a B o d y 0042060 _ [ \r \t \t \t E x p ] ] ; \r \t \t 0042100 R E T U R N [ N E W [ E x p N o 0042120 d e B o d y _ [ p o s i t i o n 0042140 , l e n g t h , E x p a d d 0042160 r e s s P r o d P r o c s , d 0042200 a t a ] ] ] ; \r \t \t E N D ; \r \r 0042220 \r - - E x p d e s c r i p t o 0042240 r P r o d \r \r E x p d e s c r i 0042260 p t o r P r o d P r o c s : \t P 0042300 U B L I C E x p N o d e P r o 0042320 c s _ \r \t N E W [ E x p N o d 0042340 e P r o c s B o d y _ [ E x 0042360 p d e s c r i p t o r P r o d I 0042400 d V a l ] ] ; \r \r B u i l d E x 0042420 p d e s c r i p t o r P r o d N 0042440 o d e : \t P U B L I C P R O C 0042460 [ p o s i t i o n : I N T , 0042500 l e n g t h : I N T , D e s 0042520 c L i s t : D e s c L i s t N 0042540 o d e ] \r \t R E T U R N S [ E x 0042560 p N o d e ] = \r \t \t B E G I N 0042600 \r \t \t d a t a : \t E x p d e s c 0042620 r i p t o r P r o d D a t a _ 0042640 \r \t \t \t N E W [ E x p d e s c r 0042660 i p t o r P r o d D a t a B o d 0042700 y _ [ \r \t \t \t D e s c L i s 0042720 t ] ] ; \r \t \t R E T U R N [ N E 0042740 W [ E x p N o d e B o d y _ [ p 0042760 o s i t i o n , l e n g t h , 0043000 E x p d e s c r i p t o r P r 0043020 o d P r o c s , d a t a ] ] ] 0043040 ; \r \t \t E N D ; \r \r \r - - E x 0043060 p e r r o r P r o d \r \r E x p e 0043100 r r o r P r o d P r o c s : \t P 0043120 U B L I C E x p N o d e P r o 0043140 c s _ \r \t N E W [ E x p N o d 0043160 e P r o c s B o d y _ [ E x 0043200 p e r r o r P r o d I d V a l ] 0043220 ] ; \r \r B u i l d E x p e r r o 0043240 r P r o d N o d e : \t P U B L I 0043260 C P R O C [ p o s i t i o n : 0043300 I N T , l e n g t h : I N 0043320 T ] \r \t R E T U R N S [ E x p N 0043340 o d e ] = \r \t \t B E G I N \r \t 0043360 \t R E T U R N [ N E W [ E x p N 0043400 o d e B o d y _ [ p o s i t i o 0043420 n , l e n g t h , E x p e r 0043440 r o r P r o d P r o c s , N I 0043460 L ] ] ] ; \r \t \t E N D ; \r \r \r - 0043500 - E x p t r a n s f e r P r o 0043520 d \r \r E x p t r a n s f e r P r 0043540 o d P r o c s : \t P U B L I C 0043560 E x p N o d e P r o c s _ \r \t 0043600 N E W [ E x p N o d e P r o c s 0043620 B o d y _ [ E x p t r a n s 0043640 f e r P r o d I d V a l ] ] ; \r 0043660 \r B u i l d E x p t r a n s f e 0043700 r P r o d N o d e : \t P U B L I 0043720 C P R O C [ p o s i t i o n : 0043740 I N T , l e n g t h : I N 0043760 T , T r a n s f e r O p : T 0044000 r a n s f e r O p N o d e , E 0044020 x p : E x p N o d e ] \r \t R E 0044040 T U R N S [ E x p N o d e ] = 0044060 \r \t \t B E G I N \r \t \t d a t a : 0044100 \t E x p t r a n s f e r P r o d 0044120 D a t a _ \r \t \t \t N E W [ E x 0044140 p t r a n s f e r P r o d D a t 0044160 a B o d y _ [ \r \t \t \t T r a 0044200 n s f e r O p , E x p ] ] ; \r 0044220 \t \t R E T U R N [ N E W [ E x p 0044240 N o d e B o d y _ [ p o s i t i 0044260 o n , l e n g t h , E x p t 0044300 r a n s f e r P r o d P r o c s 0044320 , d a t a ] ] ] ; \r \t \t E N D 0044340 ; \r \r \r - - N u m d e c i m a 0044360 l P r o d \r \r N u m d e c i m a 0044400 l P r o d P r o c s : \t P U B L 0044420 I C N u m N o d e P r o c s 0044440 _ \r \t N E W [ N u m N o d e P r 0044460 o c s B o d y _ [ N u m d e 0044500 c i m a l P r o d f o o ] ] ; \r 0044520 \r B u i l d N u m d e c i m a l 0044540 P r o d N o d e : \t P U B L I C 0044560 P R O C [ p o s i t i o n : 0044600 I N T , l e n g t h : I N T 0044620 , D e c i m a l n u m : D e 0044640 c i m a l n u m N o d e ] \r \t R 0044660 E T U R N S [ N u m N o d e ] 0044700 = \r \t \t B E G I N \r \t \t d a t a 0044720 : \t N u m d e c i m a l P r o d 0044740 D a t a _ \r \t \t \t N E W [ N u 0044760 m d e c i m a l P r o d D a t a 0045000 B o d y _ [ \r \t \t \t D e c i 0045020 m a l n u m ] ] ; \r \t \t R E T U 0045040 R N [ N E W [ N u m N o d e B o 0045060 d y _ [ p o s i t i o n , l e 0045100 n g t h , N u m d e c i m a l 0045120 P r o d P r o c s , d a t a ] 0045140 ] ] ; \r \t \t E N D ; \r \r \r - - 0045160 N u m o c t a l P r o d \r \r N u 0045200 m o c t a l P r o d P r o c s : 0045220 \t P U B L I C N u m N o d e P 0045240 r o c s _ \r \t N E W [ N u m N 0045260 o d e P r o c s B o d y _ [ 0045300 N u m o c t a l P r o d f o o ] 0045320 ] ; \r \r B u i l d N u m o c t a 0045340 l P r o d N o d e : \t P U B L I 0045360 C P R O C [ p o s i t i o n : 0045400 I N T , l e n g t h : I N 0045420 T , O c t a l n u m : O c t 0045440 a l n u m N o d e ] \r \t R E T U 0045460 R N S [ N u m N o d e ] = \r \t 0045500 \t B E G I N \r \t \t d a t a : \t N 0045520 u m o c t a l P r o d D a t a 0045540 _ \r \t \t \t N E W [ N u m o c t a 0045560 l P r o d D a t a B o d y _ 0045600 [ \r \t \t \t O c t a l n u m ] ] ; 0045620 \r \t \t R E T U R N [ N E W [ N u 0045640 m N o d e B o d y _ [ p o s i t 0045660 i o n , l e n g t h , N u m 0045700 o c t a l P r o d P r o c s , 0045720 d a t a ] ] ] ; \r \t \t E N D ; \r 0045740 \r \r - - N u m h e x P r o d \r 0045760 \r N u m h e x P r o d P r o c s 0046000 : \t P U B L I C N u m N o d e 0046020 P r o c s _ \r \t N E W [ N u m 0046040 N o d e P r o c s B o d y _ 0046060 [ N u m h e x P r o d f o o ] ] 0046100 ; \r \r B u i l d N u m h e x P r 0046120 o d N o d e : \t P U B L I C P 0046140 R O C [ p o s i t i o n : I N 0046160 T , l e n g t h : I N T , 0046200 H e x n u m : H e x n u m N o 0046220 d e ] \r \t R E T U R N S [ N u m 0046240 N o d e ] = \r \t \t B E G I N \r 0046260 \t \t d a t a : \t N u m h e x P r 0046300 o d D a t a _ \r \t \t \t N E W [ 0046320 N u m h e x P r o d D a t a B o 0046340 d y _ [ \r \t \t \t H e x n u m 0046360 ] ] ; \r \t \t R E T U R N [ N E W 0046400 [ N u m N o d e B o d y _ [ p o 0046420 s i t i o n , l e n g t h , 0046440 N u m h e x P r o d P r o c s , 0046460 d a t a ] ] ] ; \r \t \t E N D ; 0046500 \r \r \r - - A d d O p p l u s P 0046520 r o d \r \r A d d O p p l u s P r 0046540 o d P r o c s : \t P U B L I C 0046560 A d d O p N o d e P r o c s _ 0046600 \r \t N E W [ A d d O p N o d e P 0046620 r o c s B o d y _ [ A d d O 0046640 p p l u s P r o d f o o ] ] ; \r 0046660 \r B u i l d A d d O p p l u s P 0046700 r o d N o d e : \t P U B L I C 0046720 P R O C [ p o s i t i o n : I 0046740 N T , l e n g t h : I N T ] 0046760 \r \t R E T U R N S [ A d d O p N 0047000 o d e ] = \r \t \t B E G I N \r \t 0047020 \t R E T U R N [ N E W [ A d d O 0047040 p N o d e B o d y _ [ p o s i t 0047060 i o n , l e n g t h , A d d 0047100 O p p l u s P r o d P r o c s , 0047120 N I L ] ] ] ; \r \t \t E N D ; \r 0047140 \r \r - - A d d O p m i n u s P 0047160 r o d \r \r A d d O p m i n u s P 0047200 r o d P r o c s : \t P U B L I C 0047220 A d d O p N o d e P r o c s 0047240 _ \r \t N E W [ A d d O p N o d e 0047260 P r o c s B o d y _ [ A d d 0047300 O p m i n u s P r o d f o o ] ] 0047320 ; \r \r B u i l d A d d O p m i n 0047340 u s P r o d N o d e : \t P U B L 0047360 I C P R O C [ p o s i t i o n 0047400 : I N T , l e n g t h : I 0047420 N T ] \r \t R E T U R N S [ A d d 0047440 O p N o d e ] = \r \t \t B E G I 0047460 N \r \t \t R E T U R N [ N E W [ A 0047500 d d O p N o d e B o d y _ [ p o 0047520 s i t i o n , l e n g t h , 0047540 A d d O p m i n u s P r o d P r 0047560 o c s , N I L ] ] ] ; \r \t \t E 0047600 N D ; \r \r \r - - M u l t O p t 0047620 i m e s P r o d \r \r M u l t O p 0047640 t i m e s P r o d P r o c s : \t 0047660 P U B L I C M u l t O p N o d 0047700 e P r o c s _ \r \t N E W [ M u 0047720 l t O p N o d e P r o c s B o d 0047740 y _ [ M u l t O p t i m e s 0047760 P r o d f o o ] ] ; \r \r B u i l 0050000 d M u l t O p t i m e s P r o d 0050020 N o d e : \t P U B L I C P R O 0050040 C [ p o s i t i o n : I N T , 0050060 l e n g t h : I N T ] \r \t R 0050100 E T U R N S [ M u l t O p N o d 0050120 e ] = \r \t \t B E G I N \r \t \t R 0050140 E T U R N [ N E W [ M u l t O p 0050160 N o d e B o d y _ [ p o s i t i 0050200 o n , l e n g t h , M u l t 0050220 O p t i m e s P r o d P r o c s 0050240 , N I L ] ] ] ; \r \t \t E N D ; 0050260 \r \r \r - - M u l t O p d i v i 0050300 d e P r o d \r \r M u l t O p d i 0050320 v i d e P r o d P r o c s : \t P 0050340 U B L I C M u l t O p N o d e 0050360 P r o c s _ \r \t N E W [ M u l 0050400 t O p N o d e P r o c s B o d y 0050420 _ [ M u l t O p d i v i d e 0050440 P r o d f o o ] ] ; \r \r B u i l 0050460 d M u l t O p d i v i d e P r o 0050500 d N o d e : \t P U B L I C P R 0050520 O C [ p o s i t i o n : I N T 0050540 , l e n g t h : I N T ] \r \t 0050560 R E T U R N S [ M u l t O p N o 0050600 d e ] = \r \t \t B E G I N \r \t \t 0050620 R E T U R N [ N E W [ M u l t O 0050640 p N o d e B o d y _ [ p o s i t 0050660 i o n , l e n g t h , M u l 0050700 t O p d i v i d e P r o d P r o 0050720 c s , N I L ] ] ] ; \r \t \t E N 0050740 D ; \r \r \r - - M u l t O p m o 0050760 d P r o d \r \r M u l t O p m o d 0051000 P r o d P r o c s : \t P U B L I 0051020 C M u l t O p N o d e P r o c 0051040 s _ \r \t N E W [ M u l t O p N 0051060 o d e P r o c s B o d y _ [ 0051100 M u l t O p m o d P r o d f o o 0051120 ] ] ; \r \r B u i l d M u l t O p 0051140 m o d P r o d N o d e : \t P U B 0051160 L I C P R O C [ p o s i t i o 0051200 n : I N T , l e n g t h : 0051220 I N T ] \r \t R E T U R N S [ M u 0051240 l t O p N o d e ] = \r \t \t B E 0051260 G I N \r \t \t R E T U R N [ N E W 0051300 [ M u l t O p N o d e B o d y _ 0051320 [ p o s i t i o n , l e n g t 0051340 h , M u l t O p m o d P r o d 0051360 P r o c s , N I L ] ] ] ; \r \t 0051400 \t E N D ; \r \r E N D . . \r 0051415