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