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