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