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