$ od -c -N 50000 [Indigo]<Casaba>bj>Sirocco-Derived>SiroccoAGImpl.Mesa!4
0000000    -   -       S   i   r   o   c   c   o   A   G   I   m   p   l
0000020    .   m   e   s   a  \r       -   -       C   o   p   y   r   i
0000040    g   h   t     323       1   9   8   7       b   y       X   e
0000060    r   o   x       C   o   r   p   o   r   a   t   i   o   n   .
0000100            A   l   l       r   i   g   h   t   s       r   e   s
0000120    e   r   v   e   d   .  \r       -   -       G   e   n   e   r
0000140    a   t   e   d       b   y       B   J   a   c   k   s   o   n
0000160    .   p   a       a   t       J   u   l   y       1   6   ,    
0000200    1   9   8   7       3   :   1   1   :   3   3       a   m    
0000220    P   D   T  \r       -   -           u   s   i   n   g       T
0000240    h   r   e   e   C   a   s   a   b   a   F   o   u   r       [
0000260    1   .   2   ]       o   f       J   u   n   e       1   ,    
0000300    1   9   8   7       6   :   0   0   :   0   0       p   m    
0000320    P   D   T  \r  \r   D   I   R   E   C   T   O   R   Y  \r  \t
0000340    S   i   r   o   c   c   o   C   G   D   e   f   ,  \r  \t   S
0000360    i   r   o   c   c   o   A   T   D   e   f   ,  \r  \t   S   i
0000400    r   o   c   c   o   A   G   D   e   f   ;  \r  \r   S   i   r
0000420    o   c   c   o   A   G   I   m   p   l   :       C   E   D   A
0000440    R       P   R   O   G   R   A   M       I   M   P   O   R   T
0000460    S       S   i   r   o   c   c   o   A   G   D   e   f       E
0000500    X   P   O   R   T   S       S   i   r   o   c   c   o   A   G
0000520    D   e   f   =      \r   B   E   G   I   N  \r   O   P   E   N
0000540        S   i   r   o   c   c   o   C   G   D   e   f   ,       S
0000560    i   r   o   c   c   o   A   T   D   e   f   ,       S   i   r
0000600    o   c   c   o   A   G   D   e   f   ;  \r  \r   -   -       P
0000620    r   o   g   r   a   m   e   x   p   o   r   t   P   r   o   d
0000640   \r  \r   P   r   o   g   r   a   m   e   x   p   o   r   t   P
0000660    r   o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C
0000700        P   r   o   g   r   a   m   N   o   d   e   P   r   o   c
0000720    s       _  \r  \t   N   E   W   [   P   r   o   g   r   a   m
0000740    N   o   d   e   P   r   o   c   s   B   o   d   y       _    
0000760    [   P   r   o   g   r   a   m   e   x   p   o   r   t   P   r
0001000    o   d   M   a   k   e   S   y   m   b   o   l   T   a   b   l
0001020    e   ]   ]   ;  \r  \r   B   u   i   l   d   P   r   o   g   r
0001040    a   m   e   x   p   o   r   t   P   r   o   d   N   o   d   e
0001060    :  \t   P   U   B   L   I   C       P   R   O   C   [   p   o
0001100    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0001120    g   t   h   :       I   N   T   ,       i   d   e   x   p   o
0001140    r   t   :       i   d   N   o   d   e   ,       d   e   c   i
0001160    m   a   l   p   g   m   :       d   e   c   i   m   a   l   N
0001200    o   d   e   ,       d   e   c   i   m   a   l   v   e   r   s
0001220    i   o   n   :       d   e   c   i   m   a   l   N   o   d   e
0001240    ,       I   m   p   o   r   t   L   i   s   t   :       I   m
0001260    p   o   r   t   L   i   s   t   N   o   d   e   ,       D   e
0001300    c   l   a   r   a   t   i   o   n   L   i   s   t   :       D
0001320    e   c   l   a   r   a   t   i   o   n   L   i   s   t   N   o
0001340    d   e   ]  \r  \t   R   E   T   U   R   N   S   [   P   r   o
0001360    g   r   a   m   N   o   d   e   ]       =  \r  \t  \t   B   E
0001400    G   I   N  \r  \t  \t   d   a   t   a   :  \t   P   r   o   g
0001420    r   a   m   e   x   p   o   r   t   P   r   o   d   D   a   t
0001440    a       _  \r  \t  \t  \t   N   E   W   [   P   r   o   g   r
0001460    a   m   e   x   p   o   r   t   P   r   o   d   D   a   t   a
0001500    B   o   d   y       _       [  \r  \t  \t  \t   i   d   e   x
0001520    p   o   r   t   ,       d   e   c   i   m   a   l   p   g   m
0001540    ,       d   e   c   i   m   a   l   v   e   r   s   i   o   n
0001560    ,       I   m   p   o   r   t   L   i   s   t   ,       D   e
0001600    c   l   a   r   a   t   i   o   n   L   i   s   t   ]   ]   ;
0001620   \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   P   r
0001640    o   g   r   a   m   N   o   d   e   B   o   d   y   _   [   p
0001660    o   s   i   t   i   o   n   ,       l   e   n   g   t   h   ,
0001700        P   r   o   g   r   a   m   e   x   p   o   r   t   P   r
0001720    o   d   P   r   o   c   s   ,       d   a   t   a   ]   ]   ]
0001740    ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       I   m
0001760    p   o   r   t   L   i   s   t   e   m   p   t   y   P   r   o
0002000    d  \r  \r   I   m   p   o   r   t   L   i   s   t   e   m   p
0002020    t   y   P   r   o   d   P   r   o   c   s   :  \t   P   U   B
0002040    L   I   C       I   m   p   o   r   t   L   i   s   t   N   o
0002060    d   e   P   r   o   c   s       _  \r  \t   N   E   W   [   I
0002100    m   p   o   r   t   L   i   s   t   N   o   d   e   P   r   o
0002120    c   s   B   o   d   y       _       [   I   m   p   o   r   t
0002140    L   i   s   t   e   m   p   t   y   P   r   o   d   B   u   i
0002160    l   d   R   I   B   ]   ]   ;  \r  \r   B   u   i   l   d   I
0002200    m   p   o   r   t   L   i   s   t   e   m   p   t   y   P   r
0002220    o   d   N   o   d   e   :  \t   P   U   B   L   I   C       P
0002240    R   O   C   [   p   o   s   i   t   i   o   n   :       I   N
0002260    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0002300   \t   R   E   T   U   R   N   S   [   I   m   p   o   r   t   L
0002320    i   s   t   N   o   d   e   ]       =  \r  \t  \t   B   E   G
0002340    I   N  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [
0002360    I   m   p   o   r   t   L   i   s   t   N   o   d   e   B   o
0002400    d   y   _   [   p   o   s   i   t   i   o   n   ,       l   e
0002420    n   g   t   h   ,       I   m   p   o   r   t   L   i   s   t
0002440    e   m   p   t   y   P   r   o   d   P   r   o   c   s   ,    
0002460    N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r
0002500   \r   -   -       I   m   p   o   r   t   L   i   s   t   m   o
0002520    r   e   P   r   o   d  \r  \r   I   m   p   o   r   t   L   i
0002540    s   t   m   o   r   e   P   r   o   d   P   r   o   c   s   :
0002560   \t   P   U   B   L   I   C       I   m   p   o   r   t   L   i
0002600    s   t   N   o   d   e   P   r   o   c   s       _  \r  \t   N
0002620    E   W   [   I   m   p   o   r   t   L   i   s   t   N   o   d
0002640    e   P   r   o   c   s   B   o   d   y       _       [   I   m
0002660    p   o   r   t   L   i   s   t   m   o   r   e   P   r   o   d
0002700    B   u   i   l   d   R   I   B   ]   ]   ;  \r  \r   B   u   i
0002720    l   d   I   m   p   o   r   t   L   i   s   t   m   o   r   e
0002740    P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C
0002760        P   R   O   C   [   p   o   s   i   t   i   o   n   :    
0003000    I   N   T   ,       l   e   n   g   t   h   :       I   N   T
0003020    ,       I   m   p   o   r   t   L   i   s   t   :       I   m
0003040    p   o   r   t   L   i   s   t   N   o   d   e   ,       I   m
0003060    p   o   r   t   :       I   m   p   o   r   t   N   o   d   e
0003100    ]  \r  \t   R   E   T   U   R   N   S   [   I   m   p   o   r
0003120    t   L   i   s   t   N   o   d   e   ]       =  \r  \t  \t   B
0003140    E   G   I   N  \r  \t  \t   d   a   t   a   :  \t   I   m   p
0003160    o   r   t   L   i   s   t   m   o   r   e   P   r   o   d   D
0003200    a   t   a       _  \r  \t  \t  \t   N   E   W   [   I   m   p
0003220    o   r   t   L   i   s   t   m   o   r   e   P   r   o   d   D
0003240    a   t   a   B   o   d   y       _       [  \r  \t  \t  \t   I
0003260    m   p   o   r   t   L   i   s   t   ,       I   m   p   o   r
0003300    t   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N   E
0003320    W   [   I   m   p   o   r   t   L   i   s   t   N   o   d   e
0003340    B   o   d   y   _   [   p   o   s   i   t   i   o   n   ,    
0003360    l   e   n   g   t   h   ,       I   m   p   o   r   t   L   i
0003400    s   t   m   o   r   e   P   r   o   d   P   r   o   c   s   ,
0003420        d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0003440   \r  \r  \r   -   -       I   m   p   o   r   t   i   n   t   e
0003460    r   f   a   c   e   P   r   o   d  \r  \r   I   m   p   o   r
0003500    t   i   n   t   e   r   f   a   c   e   P   r   o   d   P   r
0003520    o   c   s   :  \t   P   U   B   L   I   C       I   m   p   o
0003540    r   t   N   o   d   e   P   r   o   c   s       _  \r  \t   N
0003560    E   W   [   I   m   p   o   r   t   N   o   d   e   P   r   o
0003600    c   s   B   o   d   y       _       [   I   m   p   o   r   t
0003620    i   n   t   e   r   f   a   c   e   P   r   o   d   B   u   i
0003640    l   d   S   c   o   p   e   ]   ]   ;  \r  \r   B   u   i   l
0003660    d   I   m   p   o   r   t   i   n   t   e   r   f   a   c   e
0003700    P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C
0003720        P   R   O   C   [   p   o   s   i   t   i   o   n   :    
0003740    I   N   T   ,       l   e   n   g   t   h   :       I   N   T
0003760    ,       i   d   i   n   t   e   r   f   a   c   e   :       i
0004000    d   N   o   d   e   ,       d   e   c   i   m   a   l   p   g
0004020    m   :       d   e   c   i   m   a   l   N   o   d   e   ,    
0004040    d   e   c   i   m   a   l   v   e   r   s   i   o   n   :    
0004060    d   e   c   i   m   a   l   N   o   d   e   ]  \r  \t   R   E
0004100    T   U   R   N   S   [   I   m   p   o   r   t   N   o   d   e
0004120    ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a
0004140    t   a   :  \t   I   m   p   o   r   t   i   n   t   e   r   f
0004160    a   c   e   P   r   o   d   D   a   t   a       _  \r  \t  \t
0004200   \t   N   E   W   [   I   m   p   o   r   t   i   n   t   e   r
0004220    f   a   c   e   P   r   o   d   D   a   t   a   B   o   d   y
0004240        _       [  \r  \t  \t  \t   i   d   i   n   t   e   r   f
0004260    a   c   e   ,       d   e   c   i   m   a   l   p   g   m   ,
0004300        d   e   c   i   m   a   l   v   e   r   s   i   o   n   ]
0004320    ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [
0004340    I   m   p   o   r   t   N   o   d   e   B   o   d   y   _   [
0004360    p   o   s   i   t   i   o   n   ,       l   e   n   g   t   h
0004400    ,       I   m   p   o   r   t   i   n   t   e   r   f   a   c
0004420    e   P   r   o   d   P   r   o   c   s   ,       d   a   t   a
0004440    ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -
0004460        D   e   c   l   a   r   a   t   i   o   n   L   i   s   t
0004500    e   m   p   t   y   P   r   o   d  \r  \r   D   e   c   l   a
0004520    r   a   t   i   o   n   L   i   s   t   e   m   p   t   y   P
0004540    r   o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C
0004560        D   e   c   l   a   r   a   t   i   o   n   L   i   s   t
0004600    N   o   d   e   P   r   o   c   s       _  \r  \t   N   E   W
0004620    [   D   e   c   l   a   r   a   t   i   o   n   L   i   s   t
0004640    N   o   d   e   P   r   o   c   s   B   o   d   y       _    
0004660    [   D   e   c   l   a   r   a   t   i   o   n   L   i   s   t
0004700    e   m   p   t   y   P   r   o   d   B   u   i   l   d   I   t
0004720    e   m   T   a   b   l   e   ,       D   e   c   l   a   r   a
0004740    t   i   o   n   L   i   s   t   e   m   p   t   y   P   r   o
0004760    d   B   u   i   l   d   T   y   p   e   G   r   a   p   h   ]
0005000    ]   ;  \r  \r   B   u   i   l   d   D   e   c   l   a   r   a
0005020    t   i   o   n   L   i   s   t   e   m   p   t   y   P   r   o
0005040    d   N   o   d   e   :  \t   P   U   B   L   I   C       P   R
0005060    O   C   [   p   o   s   i   t   i   o   n   :       I   N   T
0005100    ,       l   e   n   g   t   h   :       I   N   T   ]  \r  \t
0005120    R   E   T   U   R   N   S   [   D   e   c   l   a   r   a   t
0005140    i   o   n   L   i   s   t   N   o   d   e   ]       =  \r  \t
0005160   \t   B   E   G   I   N  \r  \t  \t   R   E   T   U   R   N   [
0005200    N   E   W   [   D   e   c   l   a   r   a   t   i   o   n   L
0005220    i   s   t   N   o   d   e   B   o   d   y   _   [   p   o   s
0005240    i   t   i   o   n   ,       l   e   n   g   t   h   ,       D
0005260    e   c   l   a   r   a   t   i   o   n   L   i   s   t   e   m
0005300    p   t   y   P   r   o   d   P   r   o   c   s   ,       N   I
0005320    L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -
0005340    -       D   e   c   l   a   r   a   t   i   o   n   L   i   s
0005360    t   m   o   r   e   P   r   o   d  \r  \r   D   e   c   l   a
0005400    r   a   t   i   o   n   L   i   s   t   m   o   r   e   P   r
0005420    o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C    
0005440    D   e   c   l   a   r   a   t   i   o   n   L   i   s   t   N
0005460    o   d   e   P   r   o   c   s       _  \r  \t   N   E   W   [
0005500    D   e   c   l   a   r   a   t   i   o   n   L   i   s   t   N
0005520    o   d   e   P   r   o   c   s   B   o   d   y       _       [
0005540    D   e   c   l   a   r   a   t   i   o   n   L   i   s   t   m
0005560    o   r   e   P   r   o   d   B   u   i   l   d   I   t   e   m
0005600    T   a   b   l   e   ,       D   e   c   l   a   r   a   t   i
0005620    o   n   L   i   s   t   m   o   r   e   P   r   o   d   B   u
0005640    i   l   d   T   y   p   e   G   r   a   p   h   ]   ]   ;  \r
0005660   \r   B   u   i   l   d   D   e   c   l   a   r   a   t   i   o
0005700    n   L   i   s   t   m   o   r   e   P   r   o   d   N   o   d
0005720    e   :  \t   P   U   B   L   I   C       P   R   O   C   [   p
0005740    o   s   i   t   i   o   n   :       I   N   T   ,       l   e
0005760    n   g   t   h   :       I   N   T   ,       D   e   c   l   a
0006000    r   a   t   i   o   n   L   i   s   t   :       D   e   c   l
0006020    a   r   a   t   i   o   n   L   i   s   t   N   o   d   e   ,
0006040        D   e   c   l   a   r   a   t   i   o   n   :       D   e
0006060    c   l   a   r   a   t   i   o   n   N   o   d   e   ]  \r  \t
0006100    R   E   T   U   R   N   S   [   D   e   c   l   a   r   a   t
0006120    i   o   n   L   i   s   t   N   o   d   e   ]       =  \r  \t
0006140   \t   B   E   G   I   N  \r  \t  \t   d   a   t   a   :  \t   D
0006160    e   c   l   a   r   a   t   i   o   n   L   i   s   t   m   o
0006200    r   e   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t
0006220    N   E   W   [   D   e   c   l   a   r   a   t   i   o   n   L
0006240    i   s   t   m   o   r   e   P   r   o   d   D   a   t   a   B
0006260    o   d   y       _       [  \r  \t  \t  \t   D   e   c   l   a
0006300    r   a   t   i   o   n   L   i   s   t   ,       D   e   c   l
0006320    a   r   a   t   i   o   n   ]   ]   ;  \r  \t  \t   R   E   T
0006340    U   R   N   [   N   E   W   [   D   e   c   l   a   r   a   t
0006360    i   o   n   L   i   s   t   N   o   d   e   B   o   d   y   _
0006400    [   p   o   s   i   t   i   o   n   ,       l   e   n   g   t
0006420    h   ,       D   e   c   l   a   r   a   t   i   o   n   L   i
0006440    s   t   m   o   r   e   P   r   o   d   P   r   o   c   s   ,
0006460        d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0006500   \r  \r  \r   -   -       D   e   c   l   a   r   a   t   i   o
0006520    n   t   y   p   e   P   r   o   d  \r  \r   D   e   c   l   a
0006540    r   a   t   i   o   n   t   y   p   e   P   r   o   d   P   r
0006560    o   c   s   :  \t   P   U   B   L   I   C       D   e   c   l
0006600    a   r   a   t   i   o   n   N   o   d   e   P   r   o   c   s
0006620        _  \r  \t   N   E   W   [   D   e   c   l   a   r   a   t
0006640    i   o   n   N   o   d   e   P   r   o   c   s   B   o   d   y
0006660        _       [   D   e   c   l   a   r   a   t   i   o   n   t
0006700    y   p   e   P   r   o   d   B   u   i   l   d   I   t   e   m
0006720    ,       D   e   c   l   a   r   a   t   i   o   n   t   y   p
0006740    e   P   r   o   d   B   u   i   l   d   T   y   p   e   G   r
0006760    a   p   h   ]   ]   ;  \r  \r   B   u   i   l   d   D   e   c
0007000    l   a   r   a   t   i   o   n   t   y   p   e   P   r   o   d
0007020    N   o   d   e   :  \t   P   U   B   L   I   C       P   R   O
0007040    C   [   p   o   s   i   t   i   o   n   :       I   N   T   ,
0007060        l   e   n   g   t   h   :       I   N   T   ,       i   d
0007100    :       i   d   N   o   d   e   ,       T   y   p   e   :    
0007120    T   y   p   e   N   o   d   e   ]  \r  \t   R   E   T   U   R
0007140    N   S   [   D   e   c   l   a   r   a   t   i   o   n   N   o
0007160    d   e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t
0007200    d   a   t   a   :  \t   D   e   c   l   a   r   a   t   i   o
0007220    n   t   y   p   e   P   r   o   d   D   a   t   a       _  \r
0007240   \t  \t  \t   N   E   W   [   D   e   c   l   a   r   a   t   i
0007260    o   n   t   y   p   e   P   r   o   d   D   a   t   a   B   o
0007300    d   y       _       [  \r  \t  \t  \t   i   d   ,       T   y
0007320    p   e   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N
0007340    E   W   [   D   e   c   l   a   r   a   t   i   o   n   N   o
0007360    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0007400    ,       l   e   n   g   t   h   ,       D   e   c   l   a   r
0007420    a   t   i   o   n   t   y   p   e   P   r   o   d   P   r   o
0007440    c   s   ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E
0007460    N   D   ;  \r  \r  \r   -   -       D   e   c   l   a   r   a
0007500    t   i   o   n   c   o   n   s   t   a   n   t   P   r   o   d
0007520   \r  \r   D   e   c   l   a   r   a   t   i   o   n   c   o   n
0007540    s   t   a   n   t   P   r   o   d   P   r   o   c   s   :  \t
0007560    P   U   B   L   I   C       D   e   c   l   a   r   a   t   i
0007600    o   n   N   o   d   e   P   r   o   c   s       _  \r  \t   N
0007620    E   W   [   D   e   c   l   a   r   a   t   i   o   n   N   o
0007640    d   e   P   r   o   c   s   B   o   d   y       _       [   D
0007660    e   c   l   a   r   a   t   i   o   n   c   o   n   s   t   a
0007700    n   t   P   r   o   d   B   u   i   l   d   I   t   e   m   ,
0007720        D   e   c   l   a   r   a   t   i   o   n   c   o   n   s
0007740    t   a   n   t   P   r   o   d   B   u   i   l   d   T   y   p
0007760    e   G   r   a   p   h   ]   ]   ;  \r  \r   B   u   i   l   d
0010000    D   e   c   l   a   r   a   t   i   o   n   c   o   n   s   t
0010020    a   n   t   P   r   o   d   N   o   d   e   :  \t   P   U   B
0010040    L   I   C       P   R   O   C   [   p   o   s   i   t   i   o
0010060    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0010100    I   N   T   ,       i   d   :       i   d   N   o   d   e   ,
0010120        T   y   p   e   :       T   y   p   e   N   o   d   e   ,
0010140        C   o   n   s   t   a   n   t   :       C   o   n   s   t
0010160    a   n   t   N   o   d   e   ]  \r  \t   R   E   T   U   R   N
0010200    S   [   D   e   c   l   a   r   a   t   i   o   n   N   o   d
0010220    e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d
0010240    a   t   a   :  \t   D   e   c   l   a   r   a   t   i   o   n
0010260    c   o   n   s   t   a   n   t   P   r   o   d   D   a   t   a
0010300        _  \r  \t  \t  \t   N   E   W   [   D   e   c   l   a   r
0010320    a   t   i   o   n   c   o   n   s   t   a   n   t   P   r   o
0010340    d   D   a   t   a   B   o   d   y       _       [  \r  \t  \t
0010360   \t   i   d   ,       T   y   p   e   ,       C   o   n   s   t
0010400    a   n   t   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N   [
0010420    N   E   W   [   D   e   c   l   a   r   a   t   i   o   n   N
0010440    o   d   e   B   o   d   y   _   [   p   o   s   i   t   i   o
0010460    n   ,       l   e   n   g   t   h   ,       D   e   c   l   a
0010500    r   a   t   i   o   n   c   o   n   s   t   a   n   t   P   r
0010520    o   d   P   r   o   c   s   ,       d   a   t   a   ]   ]   ]
0010540    ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       T   y
0010560    p   e   a   l   i   a   s   P   r   o   d  \r  \r   T   y   p
0010600    e   a   l   i   a   s   P   r   o   d   P   r   o   c   s   :
0010620   \t   P   U   B   L   I   C       T   y   p   e   N   o   d   e
0010640    P   r   o   c   s       _  \r  \t   N   E   W   [   T   y   p
0010660    e   N   o   d   e   P   r   o   c   s   B   o   d   y       _
0010700        [   T   y   p   e   a   l   i   a   s   P   r   o   d   B
0010720    u   i   l   d   T   G   P   a   i   r   ,       T   y   p   e
0010740    a   l   i   a   s   P   r   o   d   C   a   n   o   n   i   c
0010760    a   l   T   y   p   e   ]   ]   ;  \r  \r   B   u   i   l   d
0011000    T   y   p   e   a   l   i   a   s   P   r   o   d   N   o   d
0011020    e   :  \t   P   U   B   L   I   C       P   R   O   C   [   p
0011040    o   s   i   t   i   o   n   :       I   N   T   ,       l   e
0011060    n   g   t   h   :       I   N   T   ,       i   d   :       i
0011100    d   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [
0011120    T   y   p   e   N   o   d   e   ]       =  \r  \t  \t   B   E
0011140    G   I   N  \r  \t  \t   d   a   t   a   :  \t   T   y   p   e
0011160    a   l   i   a   s   P   r   o   d   D   a   t   a       _  \r
0011200   \t  \t  \t   N   E   W   [   T   y   p   e   a   l   i   a   s
0011220    P   r   o   d   D   a   t   a   B   o   d   y       _       [
0011240   \r  \t  \t  \t   i   d   ]   ]   ;  \r  \t  \t   R   E   T   U
0011260    R   N   [   N   E   W   [   T   y   p   e   N   o   d   e   B
0011300    o   d   y   _   [   p   o   s   i   t   i   o   n   ,       l
0011320    e   n   g   t   h   ,       T   y   p   e   a   l   i   a   s
0011340    P   r   o   d   P   r   o   c   s   ,       d   a   t   a   ]
0011360    ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -    
0011400    T   y   p   e   i   m   p   o   r   t   P   r   o   d  \r  \r
0011420    T   y   p   e   i   m   p   o   r   t   P   r   o   d   P   r
0011440    o   c   s   :  \t   P   U   B   L   I   C       T   y   p   e
0011460    N   o   d   e   P   r   o   c   s       _  \r  \t   N   E   W
0011500    [   T   y   p   e   N   o   d   e   P   r   o   c   s   B   o
0011520    d   y       _       [   T   y   p   e   i   m   p   o   r   t
0011540    P   r   o   d   B   u   i   l   d   T   G   P   a   i   r   ,
0011560        T   y   p   e   i   m   p   o   r   t   P   r   o   d   C
0011600    a   n   o   n   i   c   a   l   T   y   p   e   ]   ]   ;  \r
0011620   \r   B   u   i   l   d   T   y   p   e   i   m   p   o   r   t
0011640    P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C
0011660        P   R   O   C   [   p   o   s   i   t   i   o   n   :    
0011700    I   N   T   ,       l   e   n   g   t   h   :       I   N   T
0011720    ,       i   d   i   n   t   e   r   f   a   c   e   :       i
0011740    d   N   o   d   e   ,       i   d   i   t   e   m   :       i
0011760    d   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [
0012000    T   y   p   e   N   o   d   e   ]       =  \r  \t  \t   B   E
0012020    G   I   N  \r  \t  \t   d   a   t   a   :  \t   T   y   p   e
0012040    i   m   p   o   r   t   P   r   o   d   D   a   t   a       _
0012060   \r  \t  \t  \t   N   E   W   [   T   y   p   e   i   m   p   o
0012100    r   t   P   r   o   d   D   a   t   a   B   o   d   y       _
0012120        [  \r  \t  \t  \t   i   d   i   n   t   e   r   f   a   c
0012140    e   ,       i   d   i   t   e   m   ]   ]   ;  \r  \t  \t   R
0012160    E   T   U   R   N   [   N   E   W   [   T   y   p   e   N   o
0012200    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0012220    ,       l   e   n   g   t   h   ,       T   y   p   e   i   m
0012240    p   o   r   t   P   r   o   d   P   r   o   c   s   ,       d
0012260    a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r
0012300   \r   -   -       T   y   p   e   b   o   o   l   P   r   o   d
0012320   \r  \r   T   y   p   e   b   o   o   l   P   r   o   d   P   r
0012340    o   c   s   :  \t   P   U   B   L   I   C       T   y   p   e
0012360    N   o   d   e   P   r   o   c   s       _  \r  \t   N   E   W
0012400    [   T   y   p   e   N   o   d   e   P   r   o   c   s   B   o
0012420    d   y       _       [   T   y   p   e   b   o   o   l   P   r
0012440    o   d   B   u   i   l   d   T   G   P   a   i   r   ,       T
0012460    y   p   e   b   o   o   l   P   r   o   d   C   a   n   o   n
0012500    i   c   a   l   T   y   p   e   ]   ]   ;  \r  \r   B   u   i
0012520    l   d   T   y   p   e   b   o   o   l   P   r   o   d   N   o
0012540    d   e   :  \t   P   U   B   L   I   C       P   R   O   C   [
0012560    p   o   s   i   t   i   o   n   :       I   N   T   ,       l
0012600    e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E   T
0012620    U   R   N   S   [   T   y   p   e   N   o   d   e   ]       =
0012640   \r  \t  \t   B   E   G   I   N  \r  \t  \t   R   E   T   U   R
0012660    N   [   N   E   W   [   T   y   p   e   N   o   d   e   B   o
0012700    d   y   _   [   p   o   s   i   t   i   o   n   ,       l   e
0012720    n   g   t   h   ,       T   y   p   e   b   o   o   l   P   r
0012740    o   d   P   r   o   c   s   ,       N   I   L   ]   ]   ]   ;
0012760   \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       T   y   p
0013000    e   c   a   r   d   1   6   P   r   o   d  \r  \r   T   y   p
0013020    e   c   a   r   d   1   6   P   r   o   d   P   r   o   c   s
0013040    :  \t   P   U   B   L   I   C       T   y   p   e   N   o   d
0013060    e   P   r   o   c   s       _  \r  \t   N   E   W   [   T   y
0013100    p   e   N   o   d   e   P   r   o   c   s   B   o   d   y    
0013120    _       [   T   y   p   e   c   a   r   d   1   6   P   r   o
0013140    d   B   u   i   l   d   T   G   P   a   i   r   ,       T   y
0013160    p   e   c   a   r   d   1   6   P   r   o   d   C   a   n   o
0013200    n   i   c   a   l   T   y   p   e   ]   ]   ;  \r  \r   B   u
0013220    i   l   d   T   y   p   e   c   a   r   d   1   6   P   r   o
0013240    d   N   o   d   e   :  \t   P   U   B   L   I   C       P   R
0013260    O   C   [   p   o   s   i   t   i   o   n   :       I   N   T
0013300    ,       l   e   n   g   t   h   :       I   N   T   ]  \r  \t
0013320    R   E   T   U   R   N   S   [   T   y   p   e   N   o   d   e
0013340    ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   R   E
0013360    T   U   R   N   [   N   E   W   [   T   y   p   e   N   o   d
0013400    e   B   o   d   y   _   [   p   o   s   i   t   i   o   n   ,
0013420        l   e   n   g   t   h   ,       T   y   p   e   c   a   r
0013440    d   1   6   P   r   o   d   P   r   o   c   s   ,       N   I
0013460    L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -
0013500    -       T   y   p   e   c   a   r   d   3   2   P   r   o   d
0013520   \r  \r   T   y   p   e   c   a   r   d   3   2   P   r   o   d
0013540    P   r   o   c   s   :  \t   P   U   B   L   I   C       T   y
0013560    p   e   N   o   d   e   P   r   o   c   s       _  \r  \t   N
0013600    E   W   [   T   y   p   e   N   o   d   e   P   r   o   c   s
0013620    B   o   d   y       _       [   T   y   p   e   c   a   r   d
0013640    3   2   P   r   o   d   B   u   i   l   d   T   G   P   a   i
0013660    r   ,       T   y   p   e   c   a   r   d   3   2   P   r   o
0013700    d   C   a   n   o   n   i   c   a   l   T   y   p   e   ]   ]
0013720    ;  \r  \r   B   u   i   l   d   T   y   p   e   c   a   r   d
0013740    3   2   P   r   o   d   N   o   d   e   :  \t   P   U   B   L
0013760    I   C       P   R   O   C   [   p   o   s   i   t   i   o   n
0014000    :       I   N   T   ,       l   e   n   g   t   h   :       I
0014020    N   T   ]  \r  \t   R   E   T   U   R   N   S   [   T   y   p
0014040    e   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I   N
0014060   \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   T   y
0014100    p   e   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0014120    t   i   o   n   ,       l   e   n   g   t   h   ,       T   y
0014140    p   e   c   a   r   d   3   2   P   r   o   d   P   r   o   c
0014160    s   ,       N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D
0014200    ;  \r  \r  \r   -   -       T   y   p   e   i   n   t   1   6
0014220    P   r   o   d  \r  \r   T   y   p   e   i   n   t   1   6   P
0014240    r   o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C
0014260        T   y   p   e   N   o   d   e   P   r   o   c   s       _
0014300   \r  \t   N   E   W   [   T   y   p   e   N   o   d   e   P   r
0014320    o   c   s   B   o   d   y       _       [   T   y   p   e   i
0014340    n   t   1   6   P   r   o   d   B   u   i   l   d   T   G   P
0014360    a   i   r   ,       T   y   p   e   i   n   t   1   6   P   r
0014400    o   d   C   a   n   o   n   i   c   a   l   T   y   p   e   ]
0014420    ]   ;  \r  \r   B   u   i   l   d   T   y   p   e   i   n   t
0014440    1   6   P   r   o   d   N   o   d   e   :  \t   P   U   B   L
0014460    I   C       P   R   O   C   [   p   o   s   i   t   i   o   n
0014500    :       I   N   T   ,       l   e   n   g   t   h   :       I
0014520    N   T   ]  \r  \t   R   E   T   U   R   N   S   [   T   y   p
0014540    e   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I   N
0014560   \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   T   y
0014600    p   e   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0014620    t   i   o   n   ,       l   e   n   g   t   h   ,       T   y
0014640    p   e   i   n   t   1   6   P   r   o   d   P   r   o   c   s
0014660    ,       N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0014700   \r  \r  \r   -   -       T   y   p   e   i   n   t   3   2   P
0014720    r   o   d  \r  \r   T   y   p   e   i   n   t   3   2   P   r
0014740    o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C    
0014760    T   y   p   e   N   o   d   e   P   r   o   c   s       _  \r
0015000   \t   N   E   W   [   T   y   p   e   N   o   d   e   P   r   o
0015020    c   s   B   o   d   y       _       [   T   y   p   e   i   n
0015040    t   3   2   P   r   o   d   B   u   i   l   d   T   G   P   a
0015060    i   r   ,       T   y   p   e   i   n   t   3   2   P   r   o
0015100    d   C   a   n   o   n   i   c   a   l   T   y   p   e   ]   ]
0015120    ;  \r  \r   B   u   i   l   d   T   y   p   e   i   n   t   3
0015140    2   P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I
0015160    C       P   R   O   C   [   p   o   s   i   t   i   o   n   :
0015200        I   N   T   ,       l   e   n   g   t   h   :       I   N
0015220    T   ]  \r  \t   R   E   T   U   R   N   S   [   T   y   p   e
0015240    N   o   d   e   ]       =  \r  \t  \t   B   E   G   I   N  \r
0015260   \t  \t   R   E   T   U   R   N   [   N   E   W   [   T   y   p
0015300    e   N   o   d   e   B   o   d   y   _   [   p   o   s   i   t
0015320    i   o   n   ,       l   e   n   g   t   h   ,       T   y   p
0015340    e   i   n   t   3   2   P   r   o   d   P   r   o   c   s   ,
0015360        N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r
0015400   \r  \r   -   -       T   y   p   e   s   i   n   k   P   r   o
0015420    d  \r  \r   T   y   p   e   s   i   n   k   P   r   o   d   P
0015440    r   o   c   s   :  \t   P   U   B   L   I   C       T   y   p
0015460    e   N   o   d   e   P   r   o   c   s       _  \r  \t   N   E
0015500    W   [   T   y   p   e   N   o   d   e   P   r   o   c   s   B
0015520    o   d   y       _       [   T   y   p   e   s   i   n   k   P
0015540    r   o   d   B   u   i   l   d   T   G   P   a   i   r   ,    
0015560    T   y   p   e   s   i   n   k   P   r   o   d   C   a   n   o
0015600    n   i   c   a   l   T   y   p   e   ]   ]   ;  \r  \r   B   u
0015620    i   l   d   T   y   p   e   s   i   n   k   P   r   o   d   N
0015640    o   d   e   :  \t   P   U   B   L   I   C       P   R   O   C
0015660    [   p   o   s   i   t   i   o   n   :       I   N   T   ,    
0015700    l   e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E
0015720    T   U   R   N   S   [   T   y   p   e   N   o   d   e   ]    
0015740    =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   R   E   T   U
0015760    R   N   [   N   E   W   [   T   y   p   e   N   o   d   e   B
0016000    o   d   y   _   [   p   o   s   i   t   i   o   n   ,       l
0016020    e   n   g   t   h   ,       T   y   p   e   s   i   n   k   P
0016040    r   o   d   P   r   o   c   s   ,       N   I   L   ]   ]   ]
0016060    ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       T   y
0016100    p   e   s   o   u   r   c   e   P   r   o   d  \r  \r   T   y
0016120    p   e   s   o   u   r   c   e   P   r   o   d   P   r   o   c
0016140    s   :  \t   P   U   B   L   I   C       T   y   p   e   N   o
0016160    d   e   P   r   o   c   s       _  \r  \t   N   E   W   [   T
0016200    y   p   e   N   o   d   e   P   r   o   c   s   B   o   d   y
0016220        _       [   T   y   p   e   s   o   u   r   c   e   P   r
0016240    o   d   B   u   i   l   d   T   G   P   a   i   r   ,       T
0016260    y   p   e   s   o   u   r   c   e   P   r   o   d   C   a   n
0016300    o   n   i   c   a   l   T   y   p   e   ]   ]   ;  \r  \r   B
0016320    u   i   l   d   T   y   p   e   s   o   u   r   c   e   P   r
0016340    o   d   N   o   d   e   :  \t   P   U   B   L   I   C       P
0016360    R   O   C   [   p   o   s   i   t   i   o   n   :       I   N
0016400    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0016420   \t   R   E   T   U   R   N   S   [   T   y   p   e   N   o   d
0016440    e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   R
0016460    E   T   U   R   N   [   N   E   W   [   T   y   p   e   N   o
0016500    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0016520    ,       l   e   n   g   t   h   ,       T   y   p   e   s   o
0016540    u   r   c   e   P   r   o   d   P   r   o   c   s   ,       N
0016560    I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r
0016600    -   -       T   y   p   e   s   t   r   i   n   g   P   r   o
0016620    d  \r  \r   T   y   p   e   s   t   r   i   n   g   P   r   o
0016640    d   P   r   o   c   s   :  \t   P   U   B   L   I   C       T
0016660    y   p   e   N   o   d   e   P   r   o   c   s       _  \r  \t
0016700    N   E   W   [   T   y   p   e   N   o   d   e   P   r   o   c
0016720    s   B   o   d   y       _       [   T   y   p   e   s   t   r
0016740    i   n   g   P   r   o   d   B   u   i   l   d   T   G   P   a
0016760    i   r   ,       T   y   p   e   s   t   r   i   n   g   P   r
0017000    o   d   C   a   n   o   n   i   c   a   l   T   y   p   e   ]
0017020    ]   ;  \r  \r   B   u   i   l   d   T   y   p   e   s   t   r
0017040    i   n   g   P   r   o   d   N   o   d   e   :  \t   P   U   B
0017060    L   I   C       P   R   O   C   [   p   o   s   i   t   i   o
0017100    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0017120    I   N   T   ]  \r  \t   R   E   T   U   R   N   S   [   T   y
0017140    p   e   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I
0017160    N  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   T
0017200    y   p   e   N   o   d   e   B   o   d   y   _   [   p   o   s
0017220    i   t   i   o   n   ,       l   e   n   g   t   h   ,       T
0017240    y   p   e   s   t   r   i   n   g   P   r   o   d   P   r   o
0017260    c   s   ,       N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N
0017300    D   ;  \r  \r  \r   -   -       T   y   p   e   u   n   s   p
0017320    e   c   P   r   o   d  \r  \r   T   y   p   e   u   n   s   p
0017340    e   c   P   r   o   d   P   r   o   c   s   :  \t   P   U   B
0017360    L   I   C       T   y   p   e   N   o   d   e   P   r   o   c
0017400    s       _  \r  \t   N   E   W   [   T   y   p   e   N   o   d
0017420    e   P   r   o   c   s   B   o   d   y       _       [   T   y
0017440    p   e   u   n   s   p   e   c   P   r   o   d   B   u   i   l
0017460    d   T   G   P   a   i   r   ,       T   y   p   e   u   n   s
0017500    p   e   c   P   r   o   d   C   a   n   o   n   i   c   a   l
0017520    T   y   p   e   ]   ]   ;  \r  \r   B   u   i   l   d   T   y
0017540    p   e   u   n   s   p   e   c   P   r   o   d   N   o   d   e
0017560    :  \t   P   U   B   L   I   C       P   R   O   C   [   p   o
0017600    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0017620    g   t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R
0017640    N   S   [   T   y   p   e   N   o   d   e   ]       =  \r  \t
0017660   \t   B   E   G   I   N  \r  \t  \t   R   E   T   U   R   N   [
0017700    N   E   W   [   T   y   p   e   N   o   d   e   B   o   d   y
0017720    _   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0017740    t   h   ,       T   y   p   e   u   n   s   p   e   c   P   r
0017760    o   d   P   r   o   c   s   ,       N   I   L   ]   ]   ]   ;
0020000   \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       T   y   p
0020020    e   a   r   r   a   y   P   r   o   d  \r  \r   T   y   p   e
0020040    a   r   r   a   y   P   r   o   d   P   r   o   c   s   :  \t
0020060    P   U   B   L   I   C       T   y   p   e   N   o   d   e   P
0020100    r   o   c   s       _  \r  \t   N   E   W   [   T   y   p   e
0020120    N   o   d   e   P   r   o   c   s   B   o   d   y       _    
0020140    [   T   y   p   e   a   r   r   a   y   P   r   o   d   B   u
0020160    i   l   d   T   G   P   a   i   r   ,       T   y   p   e   a
0020200    r   r   a   y   P   r   o   d   C   a   n   o   n   i   c   a
0020220    l   T   y   p   e   ]   ]   ;  \r  \r   B   u   i   l   d   T
0020240    y   p   e   a   r   r   a   y   P   r   o   d   N   o   d   e
0020260    :  \t   P   U   B   L   I   C       P   R   O   C   [   p   o
0020300    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0020320    g   t   h   :       I   N   T   ,       C   o   n   s   t   a
0020340    n   t   :       C   o   n   s   t   a   n   t   N   o   d   e
0020360    ,       T   y   p   e   :       T   y   p   e   N   o   d   e
0020400    ]  \r  \t   R   E   T   U   R   N   S   [   T   y   p   e   N
0020420    o   d   e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t
0020440   \t   d   a   t   a   :  \t   T   y   p   e   a   r   r   a   y
0020460    P   r   o   d   D   a   t   a       _  \r  \t  \t  \t   N   E
0020500    W   [   T   y   p   e   a   r   r   a   y   P   r   o   d   D
0020520    a   t   a   B   o   d   y       _       [  \r  \t  \t  \t   C
0020540    o   n   s   t   a   n   t   ,       T   y   p   e   ]   ]   ;
0020560   \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   T   y
0020600    p   e   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0020620    t   i   o   n   ,       l   e   n   g   t   h   ,       T   y
0020640    p   e   a   r   r   a   y   P   r   o   d   P   r   o   c   s
0020660    ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D
0020700    ;  \r  \r  \r   -   -       T   y   p   e   s   e   q   P   r
0020720    o   d  \r  \r   T   y   p   e   s   e   q   P   r   o   d   P
0020740    r   o   c   s   :  \t   P   U   B   L   I   C       T   y   p
0020760    e   N   o   d   e   P   r   o   c   s       _  \r  \t   N   E
0021000    W   [   T   y   p   e   N   o   d   e   P   r   o   c   s   B
0021020    o   d   y       _       [   T   y   p   e   s   e   q   P   r
0021040    o   d   B   u   i   l   d   T   G   P   a   i   r   ,       T
0021060    y   p   e   s   e   q   P   r   o   d   C   a   n   o   n   i
0021100    c   a   l   T   y   p   e   ]   ]   ;  \r  \r   B   u   i   l
0021120    d   T   y   p   e   s   e   q   P   r   o   d   N   o   d   e
0021140    :  \t   P   U   B   L   I   C       P   R   O   C   [   p   o
0021160    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0021200    g   t   h   :       I   N   T   ,       C   o   n   s   t   a
0021220    n   t   :       C   o   n   s   t   a   n   t   N   o   d   e
0021240    ,       T   y   p   e   :       T   y   p   e   N   o   d   e
0021260    ]  \r  \t   R   E   T   U   R   N   S   [   T   y   p   e   N
0021300    o   d   e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t
0021320   \t   d   a   t   a   :  \t   T   y   p   e   s   e   q   P   r
0021340    o   d   D   a   t   a       _  \r  \t  \t  \t   N   E   W   [
0021360    T   y   p   e   s   e   q   P   r   o   d   D   a   t   a   B
0021400    o   d   y       _       [  \r  \t  \t  \t   C   o   n   s   t
0021420    a   n   t   ,       T   y   p   e   ]   ]   ;  \r  \t  \t   R
0021440    E   T   U   R   N   [   N   E   W   [   T   y   p   e   N   o
0021460    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0021500    ,       l   e   n   g   t   h   ,       T   y   p   e   s   e
0021520    q   P   r   o   d   P   r   o   c   s   ,       d   a   t   a
0021540    ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -
0021560        T   y   p   e   e   n   u   m   P   r   o   d  \r  \r   T
0021600    y   p   e   e   n   u   m   P   r   o   d   P   r   o   c   s
0021620    :  \t   P   U   B   L   I   C       T   y   p   e   N   o   d
0021640    e   P   r   o   c   s       _  \r  \t   N   E   W   [   T   y
0021660    p   e   N   o   d   e   P   r   o   c   s   B   o   d   y    
0021700    _       [   T   y   p   e   e   n   u   m   P   r   o   d   B
0021720    u   i   l   d   T   G   P   a   i   r   ,       T   y   p   e
0021740    e   n   u   m   P   r   o   d   C   a   n   o   n   i   c   a
0021760    l   T   y   p   e   ]   ]   ;  \r  \r   B   u   i   l   d   T
0022000    y   p   e   e   n   u   m   P   r   o   d   N   o   d   e   :
0022020   \t   P   U   B   L   I   C       P   R   O   C   [   p   o   s
0022040    i   t   i   o   n   :       I   N   T   ,       l   e   n   g
0022060    t   h   :       I   N   T   ,       E   n   u   m   e   r   a
0022100    t   i   o   n   :       E   n   u   m   e   r   a   t   i   o
0022120    n   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [
0022140    T   y   p   e   N   o   d   e   ]       =  \r  \t  \t   B   E
0022160    G   I   N  \r  \t  \t   d   a   t   a   :  \t   T   y   p   e
0022200    e   n   u   m   P   r   o   d   D   a   t   a       _  \r  \t
0022220   \t  \t   N   E   W   [   T   y   p   e   e   n   u   m   P   r
0022240    o   d   D   a   t   a   B   o   d   y       _       [  \r  \t
0022260   \t  \t   E   n   u   m   e   r   a   t   i   o   n   ]   ]   ;
0022300   \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   T   y
0022320    p   e   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0022340    t   i   o   n   ,       l   e   n   g   t   h   ,       T   y
0022360    p   e   e   n   u   m   P   r   o   d   P   r   o   c   s   ,
0022400        d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0022420   \r  \r  \r   -   -       T   y   p   e   e   r   r   o   r   P
0022440    r   o   d  \r  \r   T   y   p   e   e   r   r   o   r   P   r
0022460    o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C    
0022500    T   y   p   e   N   o   d   e   P   r   o   c   s       _  \r
0022520   \t   N   E   W   [   T   y   p   e   N   o   d   e   P   r   o
0022540    c   s   B   o   d   y       _       [   T   y   p   e   e   r
0022560    r   o   r   P   r   o   d   B   u   i   l   d   T   G   P   a
0022600    i   r   ,       T   y   p   e   e   r   r   o   r   P   r   o
0022620    d   C   a   n   o   n   i   c   a   l   T   y   p   e   ]   ]
0022640    ;  \r  \r   B   u   i   l   d   T   y   p   e   e   r   r   o
0022660    r   P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I
0022700    C       P   R   O   C   [   p   o   s   i   t   i   o   n   :
0022720        I   N   T   ,       l   e   n   g   t   h   :       I   N
0022740    T   ,       F   i   e   l   d   L   i   s   t   :       F   i
0022760    e   l   d   L   i   s   t   N   o   d   e   ]  \r  \t   R   E
0023000    T   U   R   N   S   [   T   y   p   e   N   o   d   e   ]    
0023020    =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a
0023040    :  \t   T   y   p   e   e   r   r   o   r   P   r   o   d   D
0023060    a   t   a       _  \r  \t  \t  \t   N   E   W   [   T   y   p
0023100    e   e   r   r   o   r   P   r   o   d   D   a   t   a   B   o
0023120    d   y       _       [  \r  \t  \t  \t   F   i   e   l   d   L
0023140    i   s   t   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N   [
0023160    N   E   W   [   T   y   p   e   N   o   d   e   B   o   d   y
0023200    _   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0023220    t   h   ,       T   y   p   e   e   r   r   o   r   P   r   o
0023240    d   P   r   o   c   s   ,       d   a   t   a   ]   ]   ]   ;
0023260   \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       T   y   p
0023300    e   r   e   c   o   r   d   P   r   o   d  \r  \r   T   y   p
0023320    e   r   e   c   o   r   d   P   r   o   d   P   r   o   c   s
0023340    :  \t   P   U   B   L   I   C       T   y   p   e   N   o   d
0023360    e   P   r   o   c   s       _  \r  \t   N   E   W   [   T   y
0023400    p   e   N   o   d   e   P   r   o   c   s   B   o   d   y    
0023420    _       [   T   y   p   e   r   e   c   o   r   d   P   r   o
0023440    d   B   u   i   l   d   T   G   P   a   i   r   ,       T   y
0023460    p   e   r   e   c   o   r   d   P   r   o   d   C   a   n   o
0023500    n   i   c   a   l   T   y   p   e   ]   ]   ;  \r  \r   B   u
0023520    i   l   d   T   y   p   e   r   e   c   o   r   d   P   r   o
0023540    d   N   o   d   e   :  \t   P   U   B   L   I   C       P   R
0023560    O   C   [   p   o   s   i   t   i   o   n   :       I   N   T
0023600    ,       l   e   n   g   t   h   :       I   N   T   ,       F
0023620    i   e   l   d   L   i   s   t   :       F   i   e   l   d   L
0023640    i   s   t   N   o   d   e   ]  \r  \t   R   E   T   U   R   N
0023660    S   [   T   y   p   e   N   o   d   e   ]       =  \r  \t  \t
0023700    B   E   G   I   N  \r  \t  \t   d   a   t   a   :  \t   T   y
0023720    p   e   r   e   c   o   r   d   P   r   o   d   D   a   t   a
0023740        _  \r  \t  \t  \t   N   E   W   [   T   y   p   e   r   e
0023760    c   o   r   d   P   r   o   d   D   a   t   a   B   o   d   y
0024000        _       [  \r  \t  \t  \t   F   i   e   l   d   L   i   s
0024020    t   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N   E
0024040    W   [   T   y   p   e   N   o   d   e   B   o   d   y   _   [
0024060    p   o   s   i   t   i   o   n   ,       l   e   n   g   t   h
0024100    ,       T   y   p   e   r   e   c   o   r   d   P   r   o   d
0024120    P   r   o   c   s   ,       d   a   t   a   ]   ]   ]   ;  \r
0024140   \t  \t   E   N   D   ;  \r  \r  \r   -   -       T   y   p   e
0024160    n   u   l   l   P   r   o   d  \r  \r   T   y   p   e   n   u
0024200    l   l   P   r   o   d   P   r   o   c   s   :  \t   P   U   B
0024220    L   I   C       T   y   p   e   N   o   d   e   P   r   o   c
0024240    s       _  \r  \t   N   E   W   [   T   y   p   e   N   o   d
0024260    e   P   r   o   c   s   B   o   d   y       _       [   T   y
0024300    p   e   n   u   l   l   P   r   o   d   B   u   i   l   d   T
0024320    G   P   a   i   r   ,       T   y   p   e   n   u   l   l   P
0024340    r   o   d   C   a   n   o   n   i   c   a   l   T   y   p   e
0024360    ]   ]   ;  \r  \r   B   u   i   l   d   T   y   p   e   n   u
0024400    l   l   P   r   o   d   N   o   d   e   :  \t   P   U   B   L
0024420    I   C       P   R   O   C   [   p   o   s   i   t   i   o   n
0024440    :       I   N   T   ,       l   e   n   g   t   h   :       I
0024460    N   T   ]  \r  \t   R   E   T   U   R   N   S   [   T   y   p
0024500    e   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I   N
0024520   \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   T   y
0024540    p   e   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0024560    t   i   o   n   ,       l   e   n   g   t   h   ,       T   y
0024600    p   e   n   u   l   l   P   r   o   d   P   r   o   c   s   ,
0024620        N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r
0024640   \r  \r   -   -       T   y   p   e   p   r   o   c   P   r   o
0024660    d  \r  \r   T   y   p   e   p   r   o   c   P   r   o   d   P
0024700    r   o   c   s   :  \t   P   U   B   L   I   C       T   y   p
0024720    e   N   o   d   e   P   r   o   c   s       _  \r  \t   N   E
0024740    W   [   T   y   p   e   N   o   d   e   P   r   o   c   s   B
0024760    o   d   y       _       [   T   y   p   e   p   r   o   c   P
0025000    r   o   d   B   u   i   l   d   T   G   P   a   i   r   ,    
0025020    T   y   p   e   p   r   o   c   P   r   o   d   C   a   n   o
0025040    n   i   c   a   l   T   y   p   e   ]   ]   ;  \r  \r   B   u
0025060    i   l   d   T   y   p   e   p   r   o   c   P   r   o   d   N
0025100    o   d   e   :  \t   P   U   B   L   I   C       P   R   O   C
0025120    [   p   o   s   i   t   i   o   n   :       I   N   T   ,    
0025140    l   e   n   g   t   h   :       I   N   T   ,       F   i   e
0025160    l   d   L   i   s   t   a   r   g   :       F   i   e   l   d
0025200    L   i   s   t   N   o   d   e   ,       F   i   e   l   d   L
0025220    i   s   t   r   e   s   :       F   i   e   l   d   L   i   s
0025240    t   N   o   d   e   ,       N   a   m   e   L   i   s   t   :
0025260        N   a   m   e   L   i   s   t   N   o   d   e   ]  \r  \t
0025300    R   E   T   U   R   N   S   [   T   y   p   e   N   o   d   e
0025320    ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a
0025340    t   a   :  \t   T   y   p   e   p   r   o   c   P   r   o   d
0025360    D   a   t   a       _  \r  \t  \t  \t   N   E   W   [   T   y
0025400    p   e   p   r   o   c   P   r   o   d   D   a   t   a   B   o
0025420    d   y       _       [  \r  \t  \t  \t   F   i   e   l   d   L
0025440    i   s   t   a   r   g   ,       F   i   e   l   d   L   i   s
0025460    t   r   e   s   ,       N   a   m   e   L   i   s   t   ]   ]
0025500    ;  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   T
0025520    y   p   e   N   o   d   e   B   o   d   y   _   [   p   o   s
0025540    i   t   i   o   n   ,       l   e   n   g   t   h   ,       T
0025560    y   p   e   p   r   o   c   P   r   o   d   P   r   o   c   s
0025600    ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D
0025620    ;  \r  \r  \r   -   -       T   y   p   e   c   h   o   i   c
0025640    e   P   r   o   d  \r  \r   T   y   p   e   c   h   o   i   c
0025660    e   P   r   o   d   P   r   o   c   s   :  \t   P   U   B   L
0025700    I   C       T   y   p   e   N   o   d   e   P   r   o   c   s
0025720        _  \r  \t   N   E   W   [   T   y   p   e   N   o   d   e
0025740    P   r   o   c   s   B   o   d   y       _       [   T   y   p
0025760    e   c   h   o   i   c   e   P   r   o   d   B   u   i   l   d
0026000    T   G   P   a   i   r   ,       T   y   p   e   c   h   o   i
0026020    c   e   P   r   o   d   C   a   n   o   n   i   c   a   l   T
0026040    y   p   e   ]   ]   ;  \r  \r   B   u   i   l   d   T   y   p
0026060    e   c   h   o   i   c   e   P   r   o   d   N   o   d   e   :
0026100   \t   P   U   B   L   I   C       P   R   O   C   [   p   o   s
0026120    i   t   i   o   n   :       I   N   T   ,       l   e   n   g
0026140    t   h   :       I   N   T   ,       T   y   p   e   :       T
0026160    y   p   e   N   o   d   e   ,       U   n   i   o   n   :    
0026200    U   n   i   o   n   N   o   d   e   ]  \r  \t   R   E   T   U
0026220    R   N   S   [   T   y   p   e   N   o   d   e   ]       =  \r
0026240   \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a   :  \t
0026260    T   y   p   e   c   h   o   i   c   e   P   r   o   d   D   a
0026300    t   a       _  \r  \t  \t  \t   N   E   W   [   T   y   p   e
0026320    c   h   o   i   c   e   P   r   o   d   D   a   t   a   B   o
0026340    d   y       _       [  \r  \t  \t  \t   T   y   p   e   ,    
0026360    U   n   i   o   n   ]   ]   ;  \r  \t  \t   R   E   T   U   R
0026400    N   [   N   E   W   [   T   y   p   e   N   o   d   e   B   o
0026420    d   y   _   [   p   o   s   i   t   i   o   n   ,       l   e
0026440    n   g   t   h   ,       T   y   p   e   c   h   o   i   c   e
0026460    P   r   o   d   P   r   o   c   s   ,       d   a   t   a   ]
0026500    ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -    
0026520    C   o   n   s   t   a   n   t   d   e   r   e   f   P   r   o
0026540    d  \r  \r   C   o   n   s   t   a   n   t   d   e   r   e   f
0026560    P   r   o   d   P   r   o   c   s   :  \t   P   U   B   L   I
0026600    C       C   o   n   s   t   a   n   t   N   o   d   e   P   r
0026620    o   c   s       _  \r  \t   N   E   W   [   C   o   n   s   t
0026640    a   n   t   N   o   d   e   P   r   o   c   s   B   o   d   y
0026660        _       [   C   o   n   s   t   a   n   t   d   e   r   e
0026700    f   P   r   o   d   B   u   i   l   d   A   b   s   t   r   a
0026720    c   t   V   a   l   u   e   ,       C   o   n   s   t   a   n
0026740    t   d   e   r   e   f   P   r   o   d   C   o   e   r   c   e
0026760    ,       C   o   n   s   t   a   n   t   d   e   r   e   f   P
0027000    r   o   d   C   a   r   d   V   a   l   u   e   ,       C   o
0027020    n   s   t   a   n   t   d   e   r   e   f   P   r   o   d   C
0027040    o   n   s   t   a   n   t   T   o   R   o   p   e   ]   ]   ;
0027060   \r  \r   B   u   i   l   d   C   o   n   s   t   a   n   t   d
0027100    e   r   e   f   P   r   o   d   N   o   d   e   :  \t   P   U
0027120    B   L   I   C       P   R   O   C   [   p   o   s   i   t   i
0027140    o   n   :       I   N   T   ,       l   e   n   g   t   h   :
0027160        I   N   T   ,       i   d   :       i   d   N   o   d   e
0027200    ]  \r  \t   R   E   T   U   R   N   S   [   C   o   n   s   t
0027220    a   n   t   N   o   d   e   ]       =  \r  \t  \t   B   E   G
0027240    I   N  \r  \t  \t   d   a   t   a   :  \t   C   o   n   s   t
0027260    a   n   t   d   e   r   e   f   P   r   o   d   D   a   t   a
0027300        _  \r  \t  \t  \t   N   E   W   [   C   o   n   s   t   a
0027320    n   t   d   e   r   e   f   P   r   o   d   D   a   t   a   B
0027340    o   d   y       _       [  \r  \t  \t  \t   i   d   ]   ]   ;
0027360   \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   C   o
0027400    n   s   t   a   n   t   N   o   d   e   B   o   d   y   _   [
0027420    p   o   s   i   t   i   o   n   ,       l   e   n   g   t   h
0027440    ,       C   o   n   s   t   a   n   t   d   e   r   e   f   P
0027460    r   o   d   P   r   o   c   s   ,       d   a   t   a   ]   ]
0027500    ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       C
0027520    o   n   s   t   a   n   t   i   m   p   o   r   t   P   r   o
0027540    d  \r  \r   C   o   n   s   t   a   n   t   i   m   p   o   r
0027560    t   P   r   o   d   P   r   o   c   s   :  \t   P   U   B   L
0027600    I   C       C   o   n   s   t   a   n   t   N   o   d   e   P
0027620    r   o   c   s       _  \r  \t   N   E   W   [   C   o   n   s
0027640    t   a   n   t   N   o   d   e   P   r   o   c   s   B   o   d
0027660    y       _       [   C   o   n   s   t   a   n   t   i   m   p
0027700    o   r   t   P   r   o   d   B   u   i   l   d   A   b   s   t
0027720    r   a   c   t   V   a   l   u   e   ,       C   o   n   s   t
0027740    a   n   t   i   m   p   o   r   t   P   r   o   d   C   o   e
0027760    r   c   e   ,       C   o   n   s   t   a   n   t   i   m   p
0030000    o   r   t   P   r   o   d   C   a   r   d   V   a   l   u   e
0030020    ,       C   o   n   s   t   a   n   t   i   m   p   o   r   t
0030040    P   r   o   d   C   o   n   s   t   a   n   t   T   o   R   o
0030060    p   e   ]   ]   ;  \r  \r   B   u   i   l   d   C   o   n   s
0030100    t   a   n   t   i   m   p   o   r   t   P   r   o   d   N   o
0030120    d   e   :  \t   P   U   B   L   I   C       P   R   O   C   [
0030140    p   o   s   i   t   i   o   n   :       I   N   T   ,       l
0030160    e   n   g   t   h   :       I   N   T   ,       i   d   i   n
0030200    t   e   r   f   a   c   e   :       i   d   N   o   d   e   ,
0030220        i   d   i   t   e   m   :       i   d   N   o   d   e   ]
0030240   \r  \t   R   E   T   U   R   N   S   [   C   o   n   s   t   a
0030260    n   t   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I
0030300    N  \r  \t  \t   d   a   t   a   :  \t   C   o   n   s   t   a
0030320    n   t   i   m   p   o   r   t   P   r   o   d   D   a   t   a
0030340        _  \r  \t  \t  \t   N   E   W   [   C   o   n   s   t   a
0030360    n   t   i   m   p   o   r   t   P   r   o   d   D   a   t   a
0030400    B   o   d   y       _       [  \r  \t  \t  \t   i   d   i   n
0030420    t   e   r   f   a   c   e   ,       i   d   i   t   e   m   ]
0030440    ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [
0030460    C   o   n   s   t   a   n   t   N   o   d   e   B   o   d   y
0030500    _   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0030520    t   h   ,       C   o   n   s   t   a   n   t   i   m   p   o
0030540    r   t   P   r   o   d   P   r   o   c   s   ,       d   a   t
0030560    a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -
0030600    -       C   o   n   s   t   a   n   t   e   m   p   t   y   P
0030620    r   o   d  \r  \r   C   o   n   s   t   a   n   t   e   m   p
0030640    t   y   P   r   o   d   P   r   o   c   s   :  \t   P   U   B
0030660    L   I   C       C   o   n   s   t   a   n   t   N   o   d   e
0030700    P   r   o   c   s       _  \r  \t   N   E   W   [   C   o   n
0030720    s   t   a   n   t   N   o   d   e   P   r   o   c   s   B   o
0030740    d   y       _       [   C   o   n   s   t   a   n   t   e   m
0030760    p   t   y   P   r   o   d   B   u   i   l   d   A   b   s   t
0031000    r   a   c   t   V   a   l   u   e   ,       C   o   n   s   t
0031020    a   n   t   e   m   p   t   y   P   r   o   d   C   o   e   r
0031040    c   e   ,       C   o   n   s   t   a   n   t   e   m   p   t
0031060    y   P   r   o   d   C   a   r   d   V   a   l   u   e   ,    
0031100    C   o   n   s   t   a   n   t   e   m   p   t   y   P   r   o
0031120    d   C   o   n   s   t   a   n   t   T   o   R   o   p   e   ]
0031140    ]   ;  \r  \r   B   u   i   l   d   C   o   n   s   t   a   n
0031160    t   e   m   p   t   y   P   r   o   d   N   o   d   e   :  \t
0031200    P   U   B   L   I   C       P   R   O   C   [   p   o   s   i
0031220    t   i   o   n   :       I   N   T   ,       l   e   n   g   t
0031240    h   :       I   N   T   ]  \r  \t   R   E   T   U   R   N   S
0031260    [   C   o   n   s   t   a   n   t   N   o   d   e   ]       =
0031300   \r  \t  \t   B   E   G   I   N  \r  \t  \t   R   E   T   U   R
0031320    N   [   N   E   W   [   C   o   n   s   t   a   n   t   N   o
0031340    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0031360    ,       l   e   n   g   t   h   ,       C   o   n   s   t   a
0031400    n   t   e   m   p   t   y   P   r   o   d   P   r   o   c   s
0031420    ,       N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0031440   \r  \r  \r   -   -       C   o   n   s   t   a   n   t   f   a
0031460    l   s   e   P   r   o   d  \r  \r   C   o   n   s   t   a   n
0031500    t   f   a   l   s   e   P   r   o   d   P   r   o   c   s   :
0031520   \t   P   U   B   L   I   C       C   o   n   s   t   a   n   t
0031540    N   o   d   e   P   r   o   c   s       _  \r  \t   N   E   W
0031560    [   C   o   n   s   t   a   n   t   N   o   d   e   P   r   o
0031600    c   s   B   o   d   y       _       [   C   o   n   s   t   a
0031620    n   t   f   a   l   s   e   P   r   o   d   B   u   i   l   d
0031640    A   b   s   t   r   a   c   t   V   a   l   u   e   ,       C
0031660    o   n   s   t   a   n   t   f   a   l   s   e   P   r   o   d
0031700    C   o   e   r   c   e   ,       C   o   n   s   t   a   n   t
0031720    f   a   l   s   e   P   r   o   d   C   a   r   d   V   a   l
0031740    u   e   ,       C   o   n   s   t   a   n   t   f   a   l   s
0031760    e   P   r   o   d   C   o   n   s   t   a   n   t   T   o   R
0032000    o   p   e   ]   ]   ;  \r  \r   B   u   i   l   d   C   o   n
0032020    s   t   a   n   t   f   a   l   s   e   P   r   o   d   N   o
0032040    d   e   :  \t   P   U   B   L   I   C       P   R   O   C   [
0032060    p   o   s   i   t   i   o   n   :       I   N   T   ,       l
0032100    e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E   T
0032120    U   R   N   S   [   C   o   n   s   t   a   n   t   N   o   d
0032140    e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   R
0032160    E   T   U   R   N   [   N   E   W   [   C   o   n   s   t   a
0032200    n   t   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0032220    t   i   o   n   ,       l   e   n   g   t   h   ,       C   o
0032240    n   s   t   a   n   t   f   a   l   s   e   P   r   o   d   P
0032260    r   o   c   s   ,       N   I   L   ]   ]   ]   ;  \r  \t  \t
0032300    E   N   D   ;  \r  \r  \r   -   -       C   o   n   s   t   a
0032320    n   t   t   r   u   e   P   r   o   d  \r  \r   C   o   n   s
0032340    t   a   n   t   t   r   u   e   P   r   o   d   P   r   o   c
0032360    s   :  \t   P   U   B   L   I   C       C   o   n   s   t   a
0032400    n   t   N   o   d   e   P   r   o   c   s       _  \r  \t   N
0032420    E   W   [   C   o   n   s   t   a   n   t   N   o   d   e   P
0032440    r   o   c   s   B   o   d   y       _       [   C   o   n   s
0032460    t   a   n   t   t   r   u   e   P   r   o   d   B   u   i   l
0032500    d   A   b   s   t   r   a   c   t   V   a   l   u   e   ,    
0032520    C   o   n   s   t   a   n   t   t   r   u   e   P   r   o   d
0032540    C   o   e   r   c   e   ,       C   o   n   s   t   a   n   t
0032560    t   r   u   e   P   r   o   d   C   a   r   d   V   a   l   u
0032600    e   ,       C   o   n   s   t   a   n   t   t   r   u   e   P
0032620    r   o   d   C   o   n   s   t   a   n   t   T   o   R   o   p
0032640    e   ]   ]   ;  \r  \r   B   u   i   l   d   C   o   n   s   t
0032660    a   n   t   t   r   u   e   P   r   o   d   N   o   d   e   :
0032700   \t   P   U   B   L   I   C       P   R   O   C   [   p   o   s
0032720    i   t   i   o   n   :       I   N   T   ,       l   e   n   g
0032740    t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R   N
0032760    S   [   C   o   n   s   t   a   n   t   N   o   d   e   ]    
0033000    =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   R   E   T   U
0033020    R   N   [   N   E   W   [   C   o   n   s   t   a   n   t   N
0033040    o   d   e   B   o   d   y   _   [   p   o   s   i   t   i   o
0033060    n   ,       l   e   n   g   t   h   ,       C   o   n   s   t
0033100    a   n   t   t   r   u   e   P   r   o   d   P   r   o   c   s
0033120    ,       N   I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0033140   \r  \r  \r   -   -       C   o   n   s   t   a   n   t   u   n
0033160    b   o   u   n   d   e   d   P   r   o   d  \r  \r   C   o   n
0033200    s   t   a   n   t   u   n   b   o   u   n   d   e   d   P   r
0033220    o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C    
0033240    C   o   n   s   t   a   n   t   N   o   d   e   P   r   o   c
0033260    s       _  \r  \t   N   E   W   [   C   o   n   s   t   a   n
0033300    t   N   o   d   e   P   r   o   c   s   B   o   d   y       _
0033320        [   C   o   n   s   t   a   n   t   u   n   b   o   u   n
0033340    d   e   d   P   r   o   d   B   u   i   l   d   A   b   s   t
0033360    r   a   c   t   V   a   l   u   e   ,       C   o   n   s   t
0033400    a   n   t   u   n   b   o   u   n   d   e   d   P   r   o   d
0033420    C   o   e   r   c   e   ,       C   o   n   s   t   a   n   t
0033440    u   n   b   o   u   n   d   e   d   P   r   o   d   C   a   r
0033460    d   V   a   l   u   e   ,       C   o   n   s   t   a   n   t
0033500    u   n   b   o   u   n   d   e   d   P   r   o   d   C   o   n
0033520    s   t   a   n   t   T   o   R   o   p   e   ]   ]   ;  \r  \r
0033540    B   u   i   l   d   C   o   n   s   t   a   n   t   u   n   b
0033560    o   u   n   d   e   d   P   r   o   d   N   o   d   e   :  \t
0033600    P   U   B   L   I   C       P   R   O   C   [   p   o   s   i
0033620    t   i   o   n   :       I   N   T   ,       l   e   n   g   t
0033640    h   :       I   N   T   ]  \r  \t   R   E   T   U   R   N   S
0033660    [   C   o   n   s   t   a   n   t   N   o   d   e   ]       =
0033700   \r  \t  \t   B   E   G   I   N  \r  \t  \t   R   E   T   U   R
0033720    N   [   N   E   W   [   C   o   n   s   t   a   n   t   N   o
0033740    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0033760    ,       l   e   n   g   t   h   ,       C   o   n   s   t   a
0034000    n   t   u   n   b   o   u   n   d   e   d   P   r   o   d   P
0034020    r   o   c   s   ,       N   I   L   ]   ]   ]   ;  \r  \t  \t
0034040    E   N   D   ;  \r  \r  \r   -   -       C   o   n   s   t   a
0034060    n   t   i   n   v   e   r   t   e   d   P   r   o   d  \r  \r
0034100    C   o   n   s   t   a   n   t   i   n   v   e   r   t   e   d
0034120    P   r   o   d   P   r   o   c   s   :  \t   P   U   B   L   I
0034140    C       C   o   n   s   t   a   n   t   N   o   d   e   P   r
0034160    o   c   s       _  \r  \t   N   E   W   [   C   o   n   s   t
0034200    a   n   t   N   o   d   e   P   r   o   c   s   B   o   d   y
0034220        _       [   C   o   n   s   t   a   n   t   i   n   v   e
0034240    r   t   e   d   P   r   o   d   B   u   i   l   d   A   b   s
0034260    t   r   a   c   t   V   a   l   u   e   ,       C   o   n   s
0034300    t   a   n   t   i   n   v   e   r   t   e   d   P   r   o   d
0034320    C   o   e   r   c   e   ,       C   o   n   s   t   a   n   t
0034340    i   n   v   e   r   t   e   d   P   r   o   d   C   a   r   d
0034360    V   a   l   u   e   ,       C   o   n   s   t   a   n   t   i
0034400    n   v   e   r   t   e   d   P   r   o   d   C   o   n   s   t
0034420    a   n   t   T   o   R   o   p   e   ]   ]   ;  \r  \r   B   u
0034440    i   l   d   C   o   n   s   t   a   n   t   i   n   v   e   r
0034460    t   e   d   P   r   o   d   N   o   d   e   :  \t   P   U   B
0034500    L   I   C       P   R   O   C   [   p   o   s   i   t   i   o
0034520    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0034540    I   N   T   ,       N   u   m   b   e   r   :       N   u   m
0034560    b   e   r   N   o   d   e   ]  \r  \t   R   E   T   U   R   N
0034600    S   [   C   o   n   s   t   a   n   t   N   o   d   e   ]    
0034620    =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a
0034640    :  \t   C   o   n   s   t   a   n   t   i   n   v   e   r   t
0034660    e   d   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t
0034700    N   E   W   [   C   o   n   s   t   a   n   t   i   n   v   e
0034720    r   t   e   d   P   r   o   d   D   a   t   a   B   o   d   y
0034740        _       [  \r  \t  \t  \t   N   u   m   b   e   r   ]   ]
0034760    ;  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   C
0035000    o   n   s   t   a   n   t   N   o   d   e   B   o   d   y   _
0035020    [   p   o   s   i   t   i   o   n   ,       l   e   n   g   t
0035040    h   ,       C   o   n   s   t   a   n   t   i   n   v   e   r
0035060    t   e   d   P   r   o   d   P   r   o   c   s   ,       d   a
0035100    t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r
0035120    -   -       C   o   n   s   t   a   n   t   n   u   m   b   e
0035140    r   P   r   o   d  \r  \r   C   o   n   s   t   a   n   t   n
0035160    u   m   b   e   r   P   r   o   d   P   r   o   c   s   :  \t
0035200    P   U   B   L   I   C       C   o   n   s   t   a   n   t   N
0035220    o   d   e   P   r   o   c   s       _  \r  \t   N   E   W   [
0035240    C   o   n   s   t   a   n   t   N   o   d   e   P   r   o   c
0035260    s   B   o   d   y       _       [   C   o   n   s   t   a   n
0035300    t   n   u   m   b   e   r   P   r   o   d   B   u   i   l   d
0035320    A   b   s   t   r   a   c   t   V   a   l   u   e   ,       C
0035340    o   n   s   t   a   n   t   n   u   m   b   e   r   P   r   o
0035360    d   C   o   e   r   c   e   ,       C   o   n   s   t   a   n
0035400    t   n   u   m   b   e   r   P   r   o   d   C   a   r   d   V
0035420    a   l   u   e   ,       C   o   n   s   t   a   n   t   n   u
0035440    m   b   e   r   P   r   o   d   C   o   n   s   t   a   n   t
0035460    T   o   R   o   p   e   ]   ]   ;  \r  \r   B   u   i   l   d
0035500    C   o   n   s   t   a   n   t   n   u   m   b   e   r   P   r
0035520    o   d   N   o   d   e   :  \t   P   U   B   L   I   C       P
0035540    R   O   C   [   p   o   s   i   t   i   o   n   :       I   N
0035560    T   ,       l   e   n   g   t   h   :       I   N   T   ,    
0035600    N   u   m   b   e   r   :       N   u   m   b   e   r   N   o
0035620    d   e   ]  \r  \t   R   E   T   U   R   N   S   [   C   o   n
0035640    s   t   a   n   t   N   o   d   e   ]       =  \r  \t  \t   B
0035660    E   G   I   N  \r  \t  \t   d   a   t   a   :  \t   C   o   n
0035700    s   t   a   n   t   n   u   m   b   e   r   P   r   o   d   D
0035720    a   t   a       _  \r  \t  \t  \t   N   E   W   [   C   o   n
0035740    s   t   a   n   t   n   u   m   b   e   r   P   r   o   d   D
0035760    a   t   a   B   o   d   y       _       [  \r  \t  \t  \t   N
0036000    u   m   b   e   r   ]   ]   ;  \r  \t  \t   R   E   T   U   R
0036020    N   [   N   E   W   [   C   o   n   s   t   a   n   t   N   o
0036040    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0036060    ,       l   e   n   g   t   h   ,       C   o   n   s   t   a
0036100    n   t   n   u   m   b   e   r   P   r   o   d   P   r   o   c
0036120    s   ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N
0036140    D   ;  \r  \r  \r   -   -       C   o   n   s   t   a   n   t
0036160    s   t   r   i   n   g   P   r   o   d  \r  \r   C   o   n   s
0036200    t   a   n   t   s   t   r   i   n   g   P   r   o   d   P   r
0036220    o   c   s   :  \t   P   U   B   L   I   C       C   o   n   s
0036240    t   a   n   t   N   o   d   e   P   r   o   c   s       _  \r
0036260   \t   N   E   W   [   C   o   n   s   t   a   n   t   N   o   d
0036300    e   P   r   o   c   s   B   o   d   y       _       [   C   o
0036320    n   s   t   a   n   t   s   t   r   i   n   g   P   r   o   d
0036340    B   u   i   l   d   A   b   s   t   r   a   c   t   V   a   l
0036360    u   e   ,       C   o   n   s   t   a   n   t   s   t   r   i
0036400    n   g   P   r   o   d   C   o   e   r   c   e   ,       C   o
0036420    n   s   t   a   n   t   s   t   r   i   n   g   P   r   o   d
0036440    C   a   r   d   V   a   l   u   e   ,       C   o   n   s   t
0036460    a   n   t   s   t   r   i   n   g   P   r   o   d   C   o   n
0036500    s   t   a   n   t   T   o   R   o   p   e   ]   ]   ;  \r  \r
0036520    B   u   i   l   d   C   o   n   s   t   a   n   t   s   t   r
0036540    i   n   g   P   r   o   d   N   o   d   e   :  \t   P   U   B
0036560    L   I   C       P   R   O   C   [   p   o   s   i   t   i   o
0036600    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0036620    I   N   T   ,       r   o   p   e   :       r   o   p   e   N
0036640    o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [   C   o
0036660    n   s   t   a   n   t   N   o   d   e   ]       =  \r  \t  \t
0036700    B   E   G   I   N  \r  \t  \t   d   a   t   a   :  \t   C   o
0036720    n   s   t   a   n   t   s   t   r   i   n   g   P   r   o   d
0036740    D   a   t   a       _  \r  \t  \t  \t   N   E   W   [   C   o
0036760    n   s   t   a   n   t   s   t   r   i   n   g   P   r   o   d
0037000    D   a   t   a   B   o   d   y       _       [  \r  \t  \t  \t
0037020    r   o   p   e   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N
0037040    [   N   E   W   [   C   o   n   s   t   a   n   t   N   o   d
0037060    e   B   o   d   y   _   [   p   o   s   i   t   i   o   n   ,
0037100        l   e   n   g   t   h   ,       C   o   n   s   t   a   n
0037120    t   s   t   r   i   n   g   P   r   o   d   P   r   o   c   s
0037140    ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D
0037160    ;  \r  \r  \r   -   -       C   o   n   s   t   a   n   t   c
0037200    h   o   i   c   e   P   r   o   d  \r  \r   C   o   n   s   t
0037220    a   n   t   c   h   o   i   c   e   P   r   o   d   P   r   o
0037240    c   s   :  \t   P   U   B   L   I   C       C   o   n   s   t
0037260    a   n   t   N   o   d   e   P   r   o   c   s       _  \r  \t
0037300    N   E   W   [   C   o   n   s   t   a   n   t   N   o   d   e
0037320    P   r   o   c   s   B   o   d   y       _       [   C   o   n
0037340    s   t   a   n   t   c   h   o   i   c   e   P   r   o   d   B
0037360    u   i   l   d   A   b   s   t   r   a   c   t   V   a   l   u
0037400    e   ,       C   o   n   s   t   a   n   t   c   h   o   i   c
0037420    e   P   r   o   d   C   o   e   r   c   e   ,       C   o   n
0037440    s   t   a   n   t   c   h   o   i   c   e   P   r   o   d   C
0037460    a   r   d   V   a   l   u   e   ,       C   o   n   s   t   a
0037500    n   t   c   h   o   i   c   e   P   r   o   d   C   o   n   s
0037520    t   a   n   t   T   o   R   o   p   e   ]   ]   ;  \r  \r   B
0037540    u   i   l   d   C   o   n   s   t   a   n   t   c   h   o   i
0037560    c   e   P   r   o   d   N   o   d   e   :  \t   P   U   B   L
0037600    I   C       P   R   O   C   [   p   o   s   i   t   i   o   n
0037620    :       I   N   T   ,       l   e   n   g   t   h   :       I
0037640    N   T   ,       i   d   :       i   d   N   o   d   e   ,    
0037660    C   o   n   s   t   a   n   t   :       C   o   n   s   t   a
0037700    n   t   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S
0037720    [   C   o   n   s   t   a   n   t   N   o   d   e   ]       =
0037740   \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a   :
0037760   \t   C   o   n   s   t   a   n   t   c   h   o   i   c   e   P
0040000    r   o   d   D   a   t   a       _  \r  \t  \t  \t   N   E   W
0040020    [   C   o   n   s   t   a   n   t   c   h   o   i   c   e   P
0040040    r   o   d   D   a   t   a   B   o   d   y       _       [  \r
0040060   \t  \t  \t   i   d   ,       C   o   n   s   t   a   n   t   ]
0040100    ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [
0040120    C   o   n   s   t   a   n   t   N   o   d   e   B   o   d   y
0040140    _   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0040160    t   h   ,       C   o   n   s   t   a   n   t   c   h   o   i
0040200    c   e   P   r   o   d   P   r   o   c   s   ,       d   a   t
0040220    a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -
0040240    -       C   o   n   s   t   a   n   t   c   o   n   s   t   r
0040260    u   c   t   o   r   P   r   o   d  \r  \r   C   o   n   s   t
0040300    a   n   t   c   o   n   s   t   r   u   c   t   o   r   P   r
0040320    o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C    
0040340    C   o   n   s   t   a   n   t   N   o   d   e   P   r   o   c
0040360    s       _  \r  \t   N   E   W   [   C   o   n   s   t   a   n
0040400    t   N   o   d   e   P   r   o   c   s   B   o   d   y       _
0040420        [   C   o   n   s   t   a   n   t   c   o   n   s   t   r
0040440    u   c   t   o   r   P   r   o   d   B   u   i   l   d   A   b
0040460    s   t   r   a   c   t   V   a   l   u   e   ,       C   o   n
0040500    s   t   a   n   t   c   o   n   s   t   r   u   c   t   o   r
0040520    P   r   o   d   C   o   e   r   c   e   ,       C   o   n   s
0040540    t   a   n   t   c   o   n   s   t   r   u   c   t   o   r   P
0040560    r   o   d   C   a   r   d   V   a   l   u   e   ,       C   o
0040600    n   s   t   a   n   t   c   o   n   s   t   r   u   c   t   o
0040620    r   P   r   o   d   C   o   n   s   t   a   n   t   T   o   R
0040640    o   p   e   ]   ]   ;  \r  \r   B   u   i   l   d   C   o   n
0040660    s   t   a   n   t   c   o   n   s   t   r   u   c   t   o   r
0040700    P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C
0040720        P   R   O   C   [   p   o   s   i   t   i   o   n   :    
0040740    I   N   T   ,       l   e   n   g   t   h   :       I   N   T
0040760    ,       C   o   n   s   t   r   u   c   t   o   r   :       C
0041000    o   n   s   t   r   u   c   t   o   r   N   o   d   e   ]  \r
0041020   \t   R   E   T   U   R   N   S   [   C   o   n   s   t   a   n
0041040    t   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I   N
0041060   \r  \t  \t   d   a   t   a   :  \t   C   o   n   s   t   a   n
0041100    t   c   o   n   s   t   r   u   c   t   o   r   P   r   o   d
0041120    D   a   t   a       _  \r  \t  \t  \t   N   E   W   [   C   o
0041140    n   s   t   a   n   t   c   o   n   s   t   r   u   c   t   o
0041160    r   P   r   o   d   D   a   t   a   B   o   d   y       _    
0041200    [  \r  \t  \t  \t   C   o   n   s   t   r   u   c   t   o   r
0041220    ]   ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N   E   W
0041240    [   C   o   n   s   t   a   n   t   N   o   d   e   B   o   d
0041260    y   _   [   p   o   s   i   t   i   o   n   ,       l   e   n
0041300    g   t   h   ,       C   o   n   s   t   a   n   t   c   o   n
0041320    s   t   r   u   c   t   o   r   P   r   o   d   P   r   o   c
0041340    s   ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N
0041360    D   ;  \r  \r  \r   -   -       C   o   n   s   t   a   n   t
0041400    g   r   o   u   p   i   n   g   P   r   o   d  \r  \r   C   o
0041420    n   s   t   a   n   t   g   r   o   u   p   i   n   g   P   r
0041440    o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C    
0041460    C   o   n   s   t   a   n   t   N   o   d   e   P   r   o   c
0041500    s       _  \r  \t   N   E   W   [   C   o   n   s   t   a   n
0041520    t   N   o   d   e   P   r   o   c   s   B   o   d   y       _
0041540        [   C   o   n   s   t   a   n   t   g   r   o   u   p   i
0041560    n   g   P   r   o   d   B   u   i   l   d   A   b   s   t   r
0041600    a   c   t   V   a   l   u   e   ,       C   o   n   s   t   a
0041620    n   t   g   r   o   u   p   i   n   g   P   r   o   d   C   o
0041640    e   r   c   e   ,       C   o   n   s   t   a   n   t   g   r
0041660    o   u   p   i   n   g   P   r   o   d   C   a   r   d   V   a
0041700    l   u   e   ,       C   o   n   s   t   a   n   t   g   r   o
0041720    u   p   i   n   g   P   r   o   d   C   o   n   s   t   a   n
0041740    t   T   o   R   o   p   e   ]   ]   ;  \r  \r   B   u   i   l
0041760    d   C   o   n   s   t   a   n   t   g   r   o   u   p   i   n
0042000    g   P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I
0042020    C       P   R   O   C   [   p   o   s   i   t   i   o   n   :
0042040        I   N   T   ,       l   e   n   g   t   h   :       I   N
0042060    T   ,       G   r   o   u   p   i   n   g   :       G   r   o
0042100    u   p   i   n   g   N   o   d   e   ]  \r  \t   R   E   T   U
0042120    R   N   S   [   C   o   n   s   t   a   n   t   N   o   d   e
0042140    ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a
0042160    t   a   :  \t   C   o   n   s   t   a   n   t   g   r   o   u
0042200    p   i   n   g   P   r   o   d   D   a   t   a       _  \r  \t
0042220   \t  \t   N   E   W   [   C   o   n   s   t   a   n   t   g   r
0042240    o   u   p   i   n   g   P   r   o   d   D   a   t   a   B   o
0042260    d   y       _       [  \r  \t  \t  \t   G   r   o   u   p   i
0042300    n   g   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N   [   N
0042320    E   W   [   C   o   n   s   t   a   n   t   N   o   d   e   B
0042340    o   d   y   _   [   p   o   s   i   t   i   o   n   ,       l
0042360    e   n   g   t   h   ,       C   o   n   s   t   a   n   t   g
0042400    r   o   u   p   i   n   g   P   r   o   d   P   r   o   c   s
0042420    ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D
0042440    ;  \r  \r  \r   -   -       E   n   u   m   e   r   a   t   i
0042460    o   n   o   n   e   P   r   o   d  \r  \r   E   n   u   m   e
0042500    r   a   t   i   o   n   o   n   e   P   r   o   d   P   r   o
0042520    c   s   :  \t   P   U   B   L   I   C       E   n   u   m   e
0042540    r   a   t   i   o   n   N   o   d   e   P   r   o   c   s    
0042560    _  \r  \t   N   E   W   [   E   n   u   m   e   r   a   t   i
0042600    o   n   N   o   d   e   P   r   o   c   s   B   o   d   y    
0042620    _       [   E   n   u   m   e   r   a   t   i   o   n   o   n
0042640    e   P   r   o   d   C   a   n   o   n   i   c   a   l   E   n
0042660    u   m   e   r   a   t   i   o   n   ,       E   n   u   m   e
0042700    r   a   t   i   o   n   o   n   e   P   r   o   d   C   h   e
0042720    c   k   E   n   u   m   e   r   a   t   i   o   n   ]   ]   ;
0042740   \r  \r   B   u   i   l   d   E   n   u   m   e   r   a   t   i
0042760    o   n   o   n   e   P   r   o   d   N   o   d   e   :  \t   P
0043000    U   B   L   I   C       P   R   O   C   [   p   o   s   i   t
0043020    i   o   n   :       I   N   T   ,       l   e   n   g   t   h
0043040    :       I   N   T   ,       i   d   :       i   d   N   o   d
0043060    e   ,       C   o   n   s   t   a   n   t   :       C   o   n
0043100    s   t   a   n   t   N   o   d   e   ]  \r  \t   R   E   T   U
0043120    R   N   S   [   E   n   u   m   e   r   a   t   i   o   n   N
0043140    o   d   e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t
0043160   \t   d   a   t   a   :  \t   E   n   u   m   e   r   a   t   i
0043200    o   n   o   n   e   P   r   o   d   D   a   t   a       _  \r
0043220   \t  \t  \t   N   E   W   [   E   n   u   m   e   r   a   t   i
0043240    o   n   o   n   e   P   r   o   d   D   a   t   a   B   o   d
0043260    y       _       [  \r  \t  \t  \t   i   d   ,       C   o   n
0043300    s   t   a   n   t   ]   ]   ;  \r  \t  \t   R   E   T   U   R
0043320    N   [   N   E   W   [   E   n   u   m   e   r   a   t   i   o
0043340    n   N   o   d   e   B   o   d   y   _   [   p   o   s   i   t
0043360    i   o   n   ,       l   e   n   g   t   h   ,       E   n   u
0043400    m   e   r   a   t   i   o   n   o   n   e   P   r   o   d   P
0043420    r   o   c   s   ,       d   a   t   a   ]   ]   ]   ;  \r  \t
0043440   \t   E   N   D   ;  \r  \r  \r   -   -       E   n   u   m   e
0043460    r   a   t   i   o   n   m   o   r   e   P   r   o   d  \r  \r
0043500    E   n   u   m   e   r   a   t   i   o   n   m   o   r   e   P
0043520    r   o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C
0043540        E   n   u   m   e   r   a   t   i   o   n   N   o   d   e
0043560    P   r   o   c   s       _  \r  \t   N   E   W   [   E   n   u
0043600    m   e   r   a   t   i   o   n   N   o   d   e   P   r   o   c
0043620    s   B   o   d   y       _       [   E   n   u   m   e   r   a
0043640    t   i   o   n   m   o   r   e   P   r   o   d   C   a   n   o
0043660    n   i   c   a   l   E   n   u   m   e   r   a   t   i   o   n
0043700    ,       E   n   u   m   e   r   a   t   i   o   n   m   o   r
0043720    e   P   r   o   d   C   h   e   c   k   E   n   u   m   e   r
0043740    a   t   i   o   n   ]   ]   ;  \r  \r   B   u   i   l   d   E
0043760    n   u   m   e   r   a   t   i   o   n   m   o   r   e   P   r
0044000    o   d   N   o   d   e   :  \t   P   U   B   L   I   C       P
0044020    R   O   C   [   p   o   s   i   t   i   o   n   :       I   N
0044040    T   ,       l   e   n   g   t   h   :       I   N   T   ,    
0044060    E   n   u   m   e   r   a   t   i   o   n   v   a   l   u   e
0044100    :       E   n   u   m   e   r   a   t   i   o   n   N   o   d
0044120    e   ,       E   n   u   m   e   r   a   t   i   o   n   n   e
0044140    x   t   :       E   n   u   m   e   r   a   t   i   o   n   N
0044160    o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [   E   n
0044200    u   m   e   r   a   t   i   o   n   N   o   d   e   ]       =
0044220   \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a   :
0044240   \t   E   n   u   m   e   r   a   t   i   o   n   m   o   r   e
0044260    P   r   o   d   D   a   t   a       _  \r  \t  \t  \t   N   E
0044300    W   [   E   n   u   m   e   r   a   t   i   o   n   m   o   r
0044320    e   P   r   o   d   D   a   t   a   B   o   d   y       _    
0044340    [  \r  \t  \t  \t   E   n   u   m   e   r   a   t   i   o   n
0044360    v   a   l   u   e   ,       E   n   u   m   e   r   a   t   i
0044400    o   n   n   e   x   t   ]   ]   ;  \r  \t  \t   R   E   T   U
0044420    R   N   [   N   E   W   [   E   n   u   m   e   r   a   t   i
0044440    o   n   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0044460    t   i   o   n   ,       l   e   n   g   t   h   ,       E   n
0044500    u   m   e   r   a   t   i   o   n   m   o   r   e   P   r   o
0044520    d   P   r   o   c   s   ,       d   a   t   a   ]   ]   ]   ;
0044540   \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       U   n   i
0044560    o   n   o   n   e   P   r   o   d  \r  \r   U   n   i   o   n
0044600    o   n   e   P   r   o   d   P   r   o   c   s   :  \t   P   U
0044620    B   L   I   C       U   n   i   o   n   N   o   d   e   P   r
0044640    o   c   s       _  \r  \t   N   E   W   [   U   n   i   o   n
0044660    N   o   d   e   P   r   o   c   s   B   o   d   y       _    
0044700    [   U   n   i   o   n   o   n   e   P   r   o   d   C   a   n
0044720    o   n   i   c   a   l   U   n   i   o   n   ,       U   n   i
0044740    o   n   o   n   e   P   r   o   d   E   m   p   t   y   W   o
0044760    r   k   T   a   b   l   e   O   f   N   a   m   e   s   ]   ]
0045000    ;  \r  \r   B   u   i   l   d   U   n   i   o   n   o   n   e
0045020    P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C
0045040        P   R   O   C   [   p   o   s   i   t   i   o   n   :    
0045060    I   N   T   ,       l   e   n   g   t   h   :       I   N   T
0045100    ,       N   a   m   e   L   i   s   t   :       N   a   m   e
0045120    L   i   s   t   N   o   d   e   ,       T   y   p   e   :    
0045140    T   y   p   e   N   o   d   e   ]  \r  \t   R   E   T   U   R
0045160    N   S   [   U   n   i   o   n   N   o   d   e   ]       =  \r
0045200   \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a   :  \t
0045220    U   n   i   o   n   o   n   e   P   r   o   d   D   a   t   a
0045240        _  \r  \t  \t  \t   N   E   W   [   U   n   i   o   n   o
0045260    n   e   P   r   o   d   D   a   t   a   B   o   d   y       _
0045300        [  \r  \t  \t  \t   N   a   m   e   L   i   s   t   ,    
0045320    T   y   p   e   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N
0045340    [   N   E   W   [   U   n   i   o   n   N   o   d   e   B   o
0045360    d   y   _   [   p   o   s   i   t   i   o   n   ,       l   e
0045400    n   g   t   h   ,       U   n   i   o   n   o   n   e   P   r
0045420    o   d   P   r   o   c   s   ,       d   a   t   a   ]   ]   ]
0045440    ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -       U   n
0045460    i   o   n   m   o   r   e   P   r   o   d  \r  \r   U   n   i
0045500    o   n   m   o   r   e   P   r   o   d   P   r   o   c   s   :
0045520   \t   P   U   B   L   I   C       U   n   i   o   n   N   o   d
0045540    e   P   r   o   c   s       _  \r  \t   N   E   W   [   U   n
0045560    i   o   n   N   o   d   e   P   r   o   c   s   B   o   d   y
0045600        _       [   U   n   i   o   n   m   o   r   e   P   r   o
0045620    d   C   a   n   o   n   i   c   a   l   U   n   i   o   n   ,
0045640        U   n   i   o   n   m   o   r   e   P   r   o   d   E   m
0045660    p   t   y   W   o   r   k   T   a   b   l   e   O   f   N   a
0045700    m   e   s   ]   ]   ;  \r  \r   B   u   i   l   d   U   n   i
0045720    o   n   m   o   r   e   P   r   o   d   N   o   d   e   :  \t
0045740    P   U   B   L   I   C       P   R   O   C   [   p   o   s   i
0045760    t   i   o   n   :       I   N   T   ,       l   e   n   g   t
0046000    h   :       I   N   T   ,       U   n   i   o   n   v   a   l
0046020    u   e   :       U   n   i   o   n   N   o   d   e   ,       U
0046040    n   i   o   n   n   e   x   t   :       U   n   i   o   n   N
0046060    o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [   U   n
0046100    i   o   n   N   o   d   e   ]       =  \r  \t  \t   B   E   G
0046120    I   N  \r  \t  \t   d   a   t   a   :  \t   U   n   i   o   n
0046140    m   o   r   e   P   r   o   d   D   a   t   a       _  \r  \t
0046160   \t  \t   N   E   W   [   U   n   i   o   n   m   o   r   e   P
0046200    r   o   d   D   a   t   a   B   o   d   y       _       [  \r
0046220   \t  \t  \t   U   n   i   o   n   v   a   l   u   e   ,       U
0046240    n   i   o   n   n   e   x   t   ]   ]   ;  \r  \t  \t   R   E
0046260    T   U   R   N   [   N   E   W   [   U   n   i   o   n   N   o
0046300    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0046320    ,       l   e   n   g   t   h   ,       U   n   i   o   n   m
0046340    o   r   e   P   r   o   d   P   r   o   c   s   ,       d   a
0046360    t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r
0046400    -   -       F   i   e   l   d   L   i   s   t   e   m   p   t
0046420    y   P   r   o   d  \r  \r   F   i   e   l   d   L   i   s   t
0046440    e   m   p   t   y   P   r   o   d   P   r   o   c   s   :  \t
0046460    P   U   B   L   I   C       F   i   e   l   d   L   i   s   t
0046500    N   o   d   e   P   r   o   c   s       _  \r  \t   N   E   W
0046520    [   F   i   e   l   d   L   i   s   t   N   o   d   e   P   r
0046540    o   c   s   B   o   d   y       _       [   F   i   e   l   d
0046560    L   i   s   t   e   m   p   t   y   P   r   o   d   C   a   n
0046600    o   n   i   c   a   l   F   i   e   l   d   L   i   s   t   ]
0046620    ]   ;  \r  \r   B   u   i   l   d   F   i   e   l   d   L   i
0046640    s   t   e   m   p   t   y   P   r   o   d   N   o   d   e   :
0046660   \t   P   U   B   L   I   C       P   R   O   C   [   p   o   s
0046700    i   t   i   o   n   :       I   N   T   ,       l   e   n   g
0046720    t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R   N
0046740    S   [   F   i   e   l   d   L   i   s   t   N   o   d   e   ]
0046760        =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   R   E   T
0047000    U   R   N   [   N   E   W   [   F   i   e   l   d   L   i   s
0047020    t   N   o   d   e   B   o   d   y   _   [   p   o   s   i   t
0047040    i   o   n   ,       l   e   n   g   t   h   ,       F   i   e
0047060    l   d   L   i   s   t   e   m   p   t   y   P   r   o   d   P
0047100    r   o   c   s   ,       N   I   L   ]   ]   ]   ;  \r  \t  \t
0047120    E   N   D   ;  \r  \r  \r   -   -       F   i   e   l   d   L
0047140    i   s   t   o   n   e   P   r   o   d  \r  \r   F   i   e   l
0047160    d   L   i   s   t   o   n   e   P   r   o   d   P   r   o   c
0047200    s   :  \t   P   U   B   L   I   C       F   i   e   l   d   L
0047220    i   s   t   N   o   d   e   P   r   o   c   s       _  \r  \t
0047240    N   E   W   [   F   i   e   l   d   L   i   s   t   N   o   d
0047260    e   P   r   o   c   s   B   o   d   y       _       [   F   i
0047300    e   l   d   L   i   s   t   o   n   e   P   r   o   d   C   a
0047320    n   o   n   i   c   a   l   F   i   e   l   d   L   i   s   t
0047340    ]   ]   ;  \r  \r   B   u   i   l   d   F   i   e   l   d   L
0047360    i   s   t   o   n   e   P   r   o   d   N   o   d   e   :  \t
0047400    P   U   B   L   I   C       P   R   O   C   [   p   o   s   i
0047420    t   i   o   n   :       I   N   T   ,       l   e   n   g   t
0047440    h   :       I   N   T   ,       N   a   m   e   L   i   s   t
0047460    :       N   a   m   e   L   i   s   t   N   o   d   e   ,    
0047500    T   y   p   e   :       T   y   p   e   N   o   d   e   ]  \r
0047520   \t   R   E   T   U   R   N   S   [   F   i   e   l   d   L   i
0047540    s   t   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I
0047560    N  \r  \t  \t   d   a   t   a   :  \t   F   i   e   l   d   L
0047600    i   s   t   o   n   e   P   r   o   d   D   a   t   a       _
0047620   \r  \t  \t  \t   N   E   W   [   F   i   e   l   d   L   i   s
0047640    t   o   n   e   P   r   o   d   D   a   t   a   B   o   d   y
0047660        _       [  \r  \t  \t  \t   N   a   m   e   L   i   s   t
0047700    ,       T   y   p   e   ]   ]   ;  \r  \t  \t   R   E   T   U
0047720    R   N   [   N   E   W   [   F   i   e   l   d   L   i   s   t
0047740    N   o   d   e   B   o   d   y   _   [   p   o   s   i   t   i
0047760    o   n   ,       l   e   n   g   t   h   ,       F   i   e   l
0050000    d   L   i   s   t   o   n   e   P   r   o   d   P   r   o   c
0050020    s   ,       d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N
0050040    D   ;  \r  \r  \r   -   -       F   i   e   l   d   L   i   s
0050060    t   m   o   r   e   P   r   o   d  \r  \r   F   i   e   l   d
0050100    L   i   s   t   m   o   r   e   P   r   o   d   P   r   o   c
0050120    s   :  \t   P   U   B   L   I   C       F   i   e   l   d   L
0050140    i   s   t   N   o   d   e   P   r   o   c   s       _  \r  \t
0050160    N   E   W   [   F   i   e   l   d   L   i   s   t   N   o   d
0050200    e   P   r   o   c   s   B   o   d   y       _       [   F   i
0050220    e   l   d   L   i   s   t   m   o   r   e   P   r   o   d   C
0050240    a   n   o   n   i   c   a   l   F   i   e   l   d   L   i   s
0050260    t   ]   ]   ;  \r  \r   B   u   i   l   d   F   i   e   l   d
0050300    L   i   s   t   m   o   r   e   P   r   o   d   N   o   d   e
0050320    :  \t   P   U   B   L   I   C       P   R   O   C   [   p   o
0050340    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0050360    g   t   h   :       I   N   T   ,       F   i   e   l   d   L
0050400    i   s   t   v   a   l   u   e   :       F   i   e   l   d   L
0050420    i   s   t   N   o   d   e   ,       F   i   e   l   d   L   i
0050440    s   t   r   e   s   t   :       F   i   e   l   d   L   i   s
0050460    t   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [
0050500    F   i   e   l   d   L   i   s   t   N   o   d   e   ]       =
0050520   \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a   :
0050540   \t   F   i   e   l   d   L   i   s   t   m   o   r   e   P   r
0050560    o   d   D   a   t   a       _  \r  \t  \t  \t   N   E   W   [
0050600    F   i   e   l   d   L   i   s   t   m   o   r   e   P   r   o
0050620    d   D   a   t   a   B   o   d   y       _       [  \r  \t  \t
0050640   \t   F   i   e   l   d   L   i   s   t   v   a   l   u   e   ,
0050660        F   i   e   l   d   L   i   s   t   r   e   s   t   ]   ]
0050700    ;  \r  \t  \t   R   E   T   U   R   N   [   N   E   W   [   F
0050720    i   e   l   d   L   i   s   t   N   o   d   e   B   o   d   y
0050740    _   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0050760    t   h   ,       F   i   e   l   d   L   i   s   t   m   o   r
0051000    e   P   r   o   d   P   r   o   c   s   ,       d   a   t   a
0051020    ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -   -
0051040        G   r   o   u   p   i   n   g   o   n   e   P   r   o   d
0051060   \r  \r   G   r   o   u   p   i   n   g   o   n   e   P   r   o
0051100    d   P   r   o   c   s   :  \t   P   U   B   L   I   C       G
0051120    r   o   u   p   i   n   g   N   o   d   e   P   r   o   c   s
0051140        _  \r  \t   N   E   W   [   G   r   o   u   p   i   n   g
0051160    N   o   d   e   P   r   o   c   s   B   o   d   y       _    
0051200    [   G   r   o   u   p   i   n   g   o   n   e   P   r   o   d
0051220    C   o   e   r   c   e   G   r   o   u   p   i   n   g   ,    
0051240    G   r   o   u   p   i   n   g   o   n   e   P   r   o   d   G
0051260    r   o   u   p   i   n   g   C   o   n   s   t   a   n   t   T
0051300    o   R   o   p   e   ,       G   r   o   u   p   i   n   g   o
0051320    n   e   P   r   o   d   S   i   z   e   ]   ]   ;  \r  \r   B
0051340    u   i   l   d   G   r   o   u   p   i   n   g   o   n   e   P
0051360    r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C    
0051400    P   R   O   C   [   p   o   s   i   t   i   o   n   :       I
0051420    N   T   ,       l   e   n   g   t   h   :       I   N   T   ,
0051440        C   o   n   s   t   a   n   t   :       C   o   n   s   t
0051460    a   n   t   N   o   d   e   ]  \r  \t   R   E   T   U   R   N
0051500    S   [   G   r   o   u   p   i   n   g   N   o   d   e   ]    
0051520    =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t   a
0051540    :  \t   G   r   o   u   p   i   n   g   o   n   e   P   r   o
0051560    d   D   a   t   a       _  \r  \t  \t  \t   N   E   W   [   G
0051600    r   o   u   p   i   n   g   o   n   e   P   r   o   d   D   a
0051620    t   a   B   o   d   y       _       [  \r  \t  \t  \t   C   o
0051640    n   s   t   a   n   t   ]   ]   ;  \r  \t  \t   R   E   T   U
0051660    R   N   [   N   E   W   [   G   r   o   u   p   i   n   g   N
0051700    o   d   e   B   o   d   y   _   [   p   o   s   i   t   i   o
0051720    n   ,       l   e   n   g   t   h   ,       G   r   o   u   p
0051740    i   n   g   o   n   e   P   r   o   d   P   r   o   c   s   ,
0051760        d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0052000   \r  \r  \r   -   -       G   r   o   u   p   i   n   g   m   o
0052020    r   e   P   r   o   d  \r  \r   G   r   o   u   p   i   n   g
0052040    m   o   r   e   P   r   o   d   P   r   o   c   s   :  \t   P
0052060    U   B   L   I   C       G   r   o   u   p   i   n   g   N   o
0052100    d   e   P   r   o   c   s       _  \r  \t   N   E   W   [   G
0052120    r   o   u   p   i   n   g   N   o   d   e   P   r   o   c   s
0052140    B   o   d   y       _       [   G   r   o   u   p   i   n   g
0052160    m   o   r   e   P   r   o   d   C   o   e   r   c   e   G   r
0052200    o   u   p   i   n   g   ,       G   r   o   u   p   i   n   g
0052220    m   o   r   e   P   r   o   d   G   r   o   u   p   i   n   g
0052240    C   o   n   s   t   a   n   t   T   o   R   o   p   e   ,    
0052260    G   r   o   u   p   i   n   g   m   o   r   e   P   r   o   d
0052300    S   i   z   e   ]   ]   ;  \r  \r   B   u   i   l   d   G   r
0052320    o   u   p   i   n   g   m   o   r   e   P   r   o   d   N   o
0052340    d   e   :  \t   P   U   B   L   I   C       P   R   O   C   [
0052360    p   o   s   i   t   i   o   n   :       I   N   T   ,       l
0052400    e   n   g   t   h   :       I   N   T   ,       C   o   n   s
0052420    t   a   n   t   :       C   o   n   s   t   a   n   t   N   o
0052440    d   e   ,       G   r   o   u   p   i   n   g   :       G   r
0052460    o   u   p   i   n   g   N   o   d   e   ]  \r  \t   R   E   T
0052500    U   R   N   S   [   G   r   o   u   p   i   n   g   N   o   d
0052520    e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d
0052540    a   t   a   :  \t   G   r   o   u   p   i   n   g   m   o   r
0052560    e   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t   N
0052600    E   W   [   G   r   o   u   p   i   n   g   m   o   r   e   P
0052620    r   o   d   D   a   t   a   B   o   d   y       _       [  \r
0052640   \t  \t  \t   C   o   n   s   t   a   n   t   ,       G   r   o
0052660    u   p   i   n   g   ]   ]   ;  \r  \t  \t   R   E   T   U   R
0052700    N   [   N   E   W   [   G   r   o   u   p   i   n   g   N   o
0052720    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0052740    ,       l   e   n   g   t   h   ,       G   r   o   u   p   i
0052760    n   g   m   o   r   e   P   r   o   d   P   r   o   c   s   ,
0053000        d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;
0053020   \r  \r  \r   -   -       C   o   n   s   t   r   u   c   t   o
0053040    r   o   n   e   P   r   o   d  \r  \r   C   o   n   s   t   r
0053060    u   c   t   o   r   o   n   e   P   r   o   d   P   r   o   c
0053100    s   :  \t   P   U   B   L   I   C       C   o   n   s   t   r
0053120    u   c   t   o   r   N   o   d   e   P   r   o   c   s       _
0053140   \r  \t   N   E   W   [   C   o   n   s   t   r   u   c   t   o
0053160    r   N   o   d   e   P   r   o   c   s   B   o   d   y       _
0053200        [   C   o   n   s   t   r   u   c   t   o   r   o   n   e
0053220    P   r   o   d   C   o   e   r   c   e   C   o   m   p   o   n
0053240    e   n   t   s   ,       C   o   n   s   t   r   u   c   t   o
0053260    r   o   n   e   P   r   o   d   C   o   n   s   t   a   n   t
0053300    T   o   R   o   p   e   ,       C   o   n   s   t   r   u   c
0053320    t   o   r   o   n   e   P   r   o   d   C   h   e   c   k   A
0053340    l   l   N   a   m   e   s   ]   ]   ;  \r  \r   B   u   i   l
0053360    d   C   o   n   s   t   r   u   c   t   o   r   o   n   e   P
0053400    r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C    
0053420    P   R   O   C   [   p   o   s   i   t   i   o   n   :       I
0053440    N   T   ,       l   e   n   g   t   h   :       I   N   T   ,
0053460        B   i   n   d   i   n   g   :       B   i   n   d   i   n
0053500    g   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [
0053520    C   o   n   s   t   r   u   c   t   o   r   N   o   d   e   ]
0053540        =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t
0053560    a   :  \t   C   o   n   s   t   r   u   c   t   o   r   o   n
0053600    e   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t   N
0053620    E   W   [   C   o   n   s   t   r   u   c   t   o   r   o   n
0053640    e   P   r   o   d   D   a   t   a   B   o   d   y       _    
0053660    [  \r  \t  \t  \t   B   i   n   d   i   n   g   ]   ]   ;  \r
0053700   \t  \t   R   E   T   U   R   N   [   N   E   W   [   C   o   n
0053720    s   t   r   u   c   t   o   r   N   o   d   e   B   o   d   y
0053740    _   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0053760    t   h   ,       C   o   n   s   t   r   u   c   t   o   r   o
0054000    n   e   P   r   o   d   P   r   o   c   s   ,       d   a   t
0054020    a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -
0054040    -       C   o   n   s   t   r   u   c   t   o   r   m   o   r
0054060    e   P   r   o   d  \r  \r   C   o   n   s   t   r   u   c   t
0054100    o   r   m   o   r   e   P   r   o   d   P   r   o   c   s   :
0054120   \t   P   U   B   L   I   C       C   o   n   s   t   r   u   c
0054140    t   o   r   N   o   d   e   P   r   o   c   s       _  \r  \t
0054160    N   E   W   [   C   o   n   s   t   r   u   c   t   o   r   N
0054200    o   d   e   P   r   o   c   s   B   o   d   y       _       [
0054220    C   o   n   s   t   r   u   c   t   o   r   m   o   r   e   P
0054240    r   o   d   C   o   e   r   c   e   C   o   m   p   o   n   e
0054260    n   t   s   ,       C   o   n   s   t   r   u   c   t   o   r
0054300    m   o   r   e   P   r   o   d   C   o   n   s   t   a   n   t
0054320    T   o   R   o   p   e   ,       C   o   n   s   t   r   u   c
0054340    t   o   r   m   o   r   e   P   r   o   d   C   h   e   c   k
0054360    A   l   l   N   a   m   e   s   ]   ]   ;  \r  \r   B   u   i
0054400    l   d   C   o   n   s   t   r   u   c   t   o   r   m   o   r
0054420    e   P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I
0054440    C       P   R   O   C   [   p   o   s   i   t   i   o   n   :
0054460        I   N   T   ,       l   e   n   g   t   h   :       I   N
0054500    T   ,       B   i   n   d   i   n   g   :       B   i   n   d
0054520    i   n   g   N   o   d   e   ,       C   o   n   s   t   r   u
0054540    c   t   o   r   :       C   o   n   s   t   r   u   c   t   o
0054560    r   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [
0054600    C   o   n   s   t   r   u   c   t   o   r   N   o   d   e   ]
0054620        =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t
0054640    a   :  \t   C   o   n   s   t   r   u   c   t   o   r   m   o
0054660    r   e   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t
0054700    N   E   W   [   C   o   n   s   t   r   u   c   t   o   r   m
0054720    o   r   e   P   r   o   d   D   a   t   a   B   o   d   y    
0054740    _       [  \r  \t  \t  \t   B   i   n   d   i   n   g   ,    
0054760    C   o   n   s   t   r   u   c   t   o   r   ]   ]   ;  \r  \t
0055000   \t   R   E   T   U   R   N   [   N   E   W   [   C   o   n   s
0055020    t   r   u   c   t   o   r   N   o   d   e   B   o   d   y   _
0055040    [   p   o   s   i   t   i   o   n   ,       l   e   n   g   t
0055060    h   ,       C   o   n   s   t   r   u   c   t   o   r   m   o
0055100    r   e   P   r   o   d   P   r   o   c   s   ,       d   a   t
0055120    a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r   -
0055140    -       B   i   n   d   i   n   g   P   r   o   d  \r  \r   B
0055160    i   n   d   i   n   g   P   r   o   d   P   r   o   c   s   :
0055200   \t   P   U   B   L   I   C       B   i   n   d   i   n   g   N
0055220    o   d   e   P   r   o   c   s       _  \r  \t   N   E   W   [
0055240    B   i   n   d   i   n   g   N   o   d   e   P   r   o   c   s
0055260    B   o   d   y       _       [   B   i   n   d   i   n   g   P
0055300    r   o   d   C   o   e   r   c   e   C   o   m   p   o   n   e
0055320    n   t   s   ,       B   i   n   d   i   n   g   P   r   o   d
0055340    C   o   n   s   t   a   n   t   T   o   R   o   p   e   ,    
0055360    B   i   n   d   i   n   g   P   r   o   d   C   h   e   c   k
0055400    A   l   l   N   a   m   e   s   ]   ]   ;  \r  \r   B   u   i
0055420    l   d   B   i   n   d   i   n   g   P   r   o   d   N   o   d
0055440    e   :  \t   P   U   B   L   I   C       P   R   O   C   [   p
0055460    o   s   i   t   i   o   n   :       I   N   T   ,       l   e
0055500    n   g   t   h   :       I   N   T   ,       N   a   m   e   L
0055520    i   s   t   :       N   a   m   e   L   i   s   t   N   o   d
0055540    e   ,       C   o   n   s   t   a   n   t   :       C   o   n
0055560    s   t   a   n   t   N   o   d   e   ]  \r  \t   R   E   T   U
0055600    R   N   S   [   B   i   n   d   i   n   g   N   o   d   e   ]
0055620        =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a   t
0055640    a   :  \t   B   i   n   d   i   n   g   P   r   o   d   D   a
0055660    t   a       _  \r  \t  \t  \t   N   E   W   [   B   i   n   d
0055700    i   n   g   P   r   o   d   D   a   t   a   B   o   d   y    
0055720    _       [  \r  \t  \t  \t   N   a   m   e   L   i   s   t   ,
0055740        C   o   n   s   t   a   n   t   ]   ]   ;  \r  \t  \t   R
0055760    E   T   U   R   N   [   N   E   W   [   B   i   n   d   i   n
0056000    g   N   o   d   e   B   o   d   y   _   [   p   o   s   i   t
0056020    i   o   n   ,       l   e   n   g   t   h   ,       B   i   n
0056040    d   i   n   g   P   r   o   d   P   r   o   c   s   ,       d
0056060    a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r
0056100   \r   -   -       N   a   m   e   L   i   s   t   e   m   p   t
0056120    y   P   r   o   d  \r  \r   N   a   m   e   L   i   s   t   e
0056140    m   p   t   y   P   r   o   d   P   r   o   c   s   :  \t   P
0056160    U   B   L   I   C       N   a   m   e   L   i   s   t   N   o
0056200    d   e   P   r   o   c   s       _  \r  \t   N   E   W   [   N
0056220    a   m   e   L   i   s   t   N   o   d   e   P   r   o   c   s
0056240    B   o   d   y       _       [   N   a   m   e   L   i   s   t
0056260    e   m   p   t   y   P   r   o   d   C   h   e   c   k   I   f
0056300    E   r   r   o   r   N   a   m   e   s   ,       N   a   m   e
0056320    L   i   s   t   e   m   p   t   y   P   r   o   d   C   a   n
0056340    o   n   i   c   a   l   F   i   e   l   d   s   F   r   o   m
0056360    N   a   m   e   L   i   s   t   ,       N   a   m   e   L   i
0056400    s   t   e   m   p   t   y   P   r   o   d   C   o   e   r   c
0056420    e   C   o   m   p   o   n   e   n   t   N   a   m   e   L   i
0056440    s   t   ,       N   a   m   e   L   i   s   t   e   m   p   t
0056460    y   P   r   o   d   N   a   m   e   L   i   s   t   T   o   R
0056500    o   p   e   ,       N   a   m   e   L   i   s   t   e   m   p
0056520    t   y   P   r   o   d   E   m   p   t   y   W   o   r   k   T
0056540    a   b   l   e   O   f   N   a   m   e   s   ,       N   a   m
0056560    e   L   i   s   t   e   m   p   t   y   P   r   o   d   T   y
0056600    p   e   O   f   N   a   m   e   L   i   s   t   ]   ]   ;  \r
0056620   \r   B   u   i   l   d   N   a   m   e   L   i   s   t   e   m
0056640    p   t   y   P   r   o   d   N   o   d   e   :  \t   P   U   B
0056660    L   I   C       P   R   O   C   [   p   o   s   i   t   i   o
0056700    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0056720    I   N   T   ]  \r  \t   R   E   T   U   R   N   S   [   N   a
0056740    m   e   L   i   s   t   N   o   d   e   ]       =  \r  \t  \t
0056760    B   E   G   I   N  \r  \t  \t   R   E   T   U   R   N   [   N
0057000    E   W   [   N   a   m   e   L   i   s   t   N   o   d   e   B
0057020    o   d   y   _   [   p   o   s   i   t   i   o   n   ,       l
0057040    e   n   g   t   h   ,       N   a   m   e   L   i   s   t   e
0057060    m   p   t   y   P   r   o   d   P   r   o   c   s   ,       N
0057100    I   L   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r  \r  \r
0057120    -   -       N   a   m   e   L   i   s   t   o   n   e   P   r
0057140    o   d  \r  \r   N   a   m   e   L   i   s   t   o   n   e   P
0057160    r   o   d   P   r   o   c   s   :  \t   P   U   B   L   I   C
0057200        N   a   m   e   L   i   s   t   N   o   d   e   P   r   o
0057220    c   s       _  \r  \t   N   E   W   [   N   a   m   e   L   i
0057240    s   t   N   o   d   e   P   r   o   c   s   B   o   d   y    
0057260    _       [   N   a   m   e   L   i   s   t   o   n   e   P   r
0057300    o   d   C   h   e   c   k   I   f   E   r   r   o   r   N   a
0057320    m   e   s   ,       N   a   m   e   L   i   s   t   o   n   e
0057340    P   r   o   d   C   a   n   o   n   i   c   a   l   F   i   e
0057360    l   d   s   F   r   o   m   N   a   m   e   L   i   s   t   ,
0057400        N   a   m   e   L   i   s   t   o   n   e   P   r   o   d
0057420    C   o   e   r   c   e   C   o   m   p   o   n   e   n   t   N
0057440    a   m   e   L   i   s   t   ,       N   a   m   e   L   i   s
0057460    t   o   n   e   P   r   o   d   N   a   m   e   L   i   s   t
0057500    T   o   R   o   p   e   ,       N   a   m   e   L   i   s   t
0057520    o   n   e   P   r   o   d   E   m   p   t   y   W   o   r   k
0057540    T   a   b   l   e   O   f   N   a   m   e   s   ,       N   a
0057560    m   e   L   i   s   t   o   n   e   P   r   o   d   T   y   p
0057600    e   O   f   N   a   m   e   L   i   s   t   ]   ]   ;  \r  \r
0057620    B   u   i   l   d   N   a   m   e   L   i   s   t   o   n   e
0057640    P   r   o   d   N   o   d   e   :  \t   P   U   B   L   I   C
0057660        P   R   O   C   [   p   o   s   i   t   i   o   n   :    
0057700    I   N   T   ,       l   e   n   g   t   h   :       I   N   T
0057720    ,       i   d   :       i   d   N   o   d   e   ]  \r  \t   R
0057740    E   T   U   R   N   S   [   N   a   m   e   L   i   s   t   N
0057760    o   d   e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t
0060000   \t   d   a   t   a   :  \t   N   a   m   e   L   i   s   t   o
0060020    n   e   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t
0060040    N   E   W   [   N   a   m   e   L   i   s   t   o   n   e   P
0060060    r   o   d   D   a   t   a   B   o   d   y       _       [  \r
0060100   \t  \t  \t   i   d   ]   ]   ;  \r  \t  \t   R   E   T   U   R
0060120    N   [   N   E   W   [   N   a   m   e   L   i   s   t   N   o
0060140    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0060160    ,       l   e   n   g   t   h   ,       N   a   m   e   L   i
0060200    s   t   o   n   e   P   r   o   d   P   r   o   c   s   ,    
0060220    d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r
0060240   \r  \r   -   -       N   a   m   e   L   i   s   t   m   o   r
0060260    e   P   r   o   d  \r  \r   N   a   m   e   L   i   s   t   m
0060300    o   r   e   P   r   o   d   P   r   o   c   s   :  \t   P   U
0060320    B   L   I   C       N   a   m   e   L   i   s   t   N   o   d
0060340    e   P   r   o   c   s       _  \r  \t   N   E   W   [   N   a
0060360    m   e   L   i   s   t   N   o   d   e   P   r   o   c   s   B
0060400    o   d   y       _       [   N   a   m   e   L   i   s   t   m
0060420    o   r   e   P   r   o   d   C   h   e   c   k   I   f   E   r
0060440    r   o   r   N   a   m   e   s   ,       N   a   m   e   L   i
0060460    s   t   m   o   r   e   P   r   o   d   C   a   n   o   n   i
0060500    c   a   l   F   i   e   l   d   s   F   r   o   m   N   a   m
0060520    e   L   i   s   t   ,       N   a   m   e   L   i   s   t   m
0060540    o   r   e   P   r   o   d   C   o   e   r   c   e   C   o   m
0060560    p   o   n   e   n   t   N   a   m   e   L   i   s   t   ,    
0060600    N   a   m   e   L   i   s   t   m   o   r   e   P   r   o   d
0060620    N   a   m   e   L   i   s   t   T   o   R   o   p   e   ,    
0060640    N   a   m   e   L   i   s   t   m   o   r   e   P   r   o   d
0060660    E   m   p   t   y   W   o   r   k   T   a   b   l   e   O   f
0060700    N   a   m   e   s   ,       N   a   m   e   L   i   s   t   m
0060720    o   r   e   P   r   o   d   T   y   p   e   O   f   N   a   m
0060740    e   L   i   s   t   ]   ]   ;  \r  \r   B   u   i   l   d   N
0060760    a   m   e   L   i   s   t   m   o   r   e   P   r   o   d   N
0061000    o   d   e   :  \t   P   U   B   L   I   C       P   R   O   C
0061020    [   p   o   s   i   t   i   o   n   :       I   N   T   ,    
0061040    l   e   n   g   t   h   :       I   N   T   ,       i   d   :
0061060        i   d   N   o   d   e   ,       N   a   m   e   L   i   s
0061100    t   :       N   a   m   e   L   i   s   t   N   o   d   e   ]
0061120   \r  \t   R   E   T   U   R   N   S   [   N   a   m   e   L   i
0061140    s   t   N   o   d   e   ]       =  \r  \t  \t   B   E   G   I
0061160    N  \r  \t  \t   d   a   t   a   :  \t   N   a   m   e   L   i
0061200    s   t   m   o   r   e   P   r   o   d   D   a   t   a       _
0061220   \r  \t  \t  \t   N   E   W   [   N   a   m   e   L   i   s   t
0061240    m   o   r   e   P   r   o   d   D   a   t   a   B   o   d   y
0061260        _       [  \r  \t  \t  \t   i   d   ,       N   a   m   e
0061300    L   i   s   t   ]   ]   ;  \r  \t  \t   R   E   T   U   R   N
0061320    [   N   E   W   [   N   a   m   e   L   i   s   t   N   o   d
0061340    e   B   o   d   y   _   [   p   o   s   i   t   i   o   n   ,
0061360        l   e   n   g   t   h   ,       N   a   m   e   L   i   s
0061400    t   m   o   r   e   P   r   o   d   P   r   o   c   s   ,    
0061420    d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r
0061440   \r  \r   -   -       N   u   m   b   e   r   d   e   c   i   m
0061460    a   l   P   r   o   d  \r  \r   N   u   m   b   e   r   d   e
0061500    c   i   m   a   l   P   r   o   d   P   r   o   c   s   :  \t
0061520    P   U   B   L   I   C       N   u   m   b   e   r   N   o   d
0061540    e   P   r   o   c   s       _  \r  \t   N   E   W   [   N   u
0061560    m   b   e   r   N   o   d   e   P   r   o   c   s   B   o   d
0061600    y       _       [   N   u   m   b   e   r   d   e   c   i   m
0061620    a   l   P   r   o   d   C   a   r   d   V   a   l   u   e   ,
0061640        N   u   m   b   e   r   d   e   c   i   m   a   l   P   r
0061660    o   d   N   u   m   b   e   r   T   o   C   a   r   d   ]   ]
0061700    ;  \r  \r   B   u   i   l   d   N   u   m   b   e   r   d   e
0061720    c   i   m   a   l   P   r   o   d   N   o   d   e   :  \t   P
0061740    U   B   L   I   C       P   R   O   C   [   p   o   s   i   t
0061760    i   o   n   :       I   N   T   ,       l   e   n   g   t   h
0062000    :       I   N   T   ,       d   e   c   i   m   a   l   :    
0062020    d   e   c   i   m   a   l   N   o   d   e   ]  \r  \t   R   E
0062040    T   U   R   N   S   [   N   u   m   b   e   r   N   o   d   e
0062060    ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t   d   a
0062100    t   a   :  \t   N   u   m   b   e   r   d   e   c   i   m   a
0062120    l   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t   N
0062140    E   W   [   N   u   m   b   e   r   d   e   c   i   m   a   l
0062160    P   r   o   d   D   a   t   a   B   o   d   y       _       [
0062200   \r  \t  \t  \t   d   e   c   i   m   a   l   ]   ]   ;  \r  \t
0062220   \t   R   E   T   U   R   N   [   N   E   W   [   N   u   m   b
0062240    e   r   N   o   d   e   B   o   d   y   _   [   p   o   s   i
0062260    t   i   o   n   ,       l   e   n   g   t   h   ,       N   u
0062300    m   b   e   r   d   e   c   i   m   a   l   P   r   o   d   P
0062320    r   o   c   s   ,       d   a   t   a   ]   ]   ]   ;  \r  \t
0062340   \t   E   N   D   ;  \r  \r  \r   -   -       N   u   m   b   e
0062360    r   h   e   x   P   r   o   d  \r  \r   N   u   m   b   e   r
0062400    h   e   x   P   r   o   d   P   r   o   c   s   :  \t   P   U
0062420    B   L   I   C       N   u   m   b   e   r   N   o   d   e   P
0062440    r   o   c   s       _  \r  \t   N   E   W   [   N   u   m   b
0062460    e   r   N   o   d   e   P   r   o   c   s   B   o   d   y    
0062500    _       [   N   u   m   b   e   r   h   e   x   P   r   o   d
0062520    C   a   r   d   V   a   l   u   e   ,       N   u   m   b   e
0062540    r   h   e   x   P   r   o   d   N   u   m   b   e   r   T   o
0062560    C   a   r   d   ]   ]   ;  \r  \r   B   u   i   l   d   N   u
0062600    m   b   e   r   h   e   x   P   r   o   d   N   o   d   e   :
0062620   \t   P   U   B   L   I   C       P   R   O   C   [   p   o   s
0062640    i   t   i   o   n   :       I   N   T   ,       l   e   n   g
0062660    t   h   :       I   N   T   ,       h   e   x   :       h   e
0062700    x   N   o   d   e   ]  \r  \t   R   E   T   U   R   N   S   [
0062720    N   u   m   b   e   r   N   o   d   e   ]       =  \r  \t  \t
0062740    B   E   G   I   N  \r  \t  \t   d   a   t   a   :  \t   N   u
0062760    m   b   e   r   h   e   x   P   r   o   d   D   a   t   a    
0063000    _  \r  \t  \t  \t   N   E   W   [   N   u   m   b   e   r   h
0063020    e   x   P   r   o   d   D   a   t   a   B   o   d   y       _
0063040        [  \r  \t  \t  \t   h   e   x   ]   ]   ;  \r  \t  \t   R
0063060    E   T   U   R   N   [   N   E   W   [   N   u   m   b   e   r
0063100    N   o   d   e   B   o   d   y   _   [   p   o   s   i   t   i
0063120    o   n   ,       l   e   n   g   t   h   ,       N   u   m   b
0063140    e   r   h   e   x   P   r   o   d   P   r   o   c   s   ,    
0063160    d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r
0063200   \r  \r   -   -       N   u   m   b   e   r   o   c   t   a   l
0063220    P   r   o   d  \r  \r   N   u   m   b   e   r   o   c   t   a
0063240    l   P   r   o   d   P   r   o   c   s   :  \t   P   U   B   L
0063260    I   C       N   u   m   b   e   r   N   o   d   e   P   r   o
0063300    c   s       _  \r  \t   N   E   W   [   N   u   m   b   e   r
0063320    N   o   d   e   P   r   o   c   s   B   o   d   y       _    
0063340    [   N   u   m   b   e   r   o   c   t   a   l   P   r   o   d
0063360    C   a   r   d   V   a   l   u   e   ,       N   u   m   b   e
0063400    r   o   c   t   a   l   P   r   o   d   N   u   m   b   e   r
0063420    T   o   C   a   r   d   ]   ]   ;  \r  \r   B   u   i   l   d
0063440    N   u   m   b   e   r   o   c   t   a   l   P   r   o   d   N
0063460    o   d   e   :  \t   P   U   B   L   I   C       P   R   O   C
0063500    [   p   o   s   i   t   i   o   n   :       I   N   T   ,    
0063520    l   e   n   g   t   h   :       I   N   T   ,       o   c   t
0063540    a   l   :       o   c   t   a   l   N   o   d   e   ]  \r  \t
0063560    R   E   T   U   R   N   S   [   N   u   m   b   e   r   N   o
0063600    d   e   ]       =  \r  \t  \t   B   E   G   I   N  \r  \t  \t
0063620    d   a   t   a   :  \t   N   u   m   b   e   r   o   c   t   a
0063640    l   P   r   o   d   D   a   t   a       _  \r  \t  \t  \t   N
0063660    E   W   [   N   u   m   b   e   r   o   c   t   a   l   P   r
0063700    o   d   D   a   t   a   B   o   d   y       _       [  \r  \t
0063720   \t  \t   o   c   t   a   l   ]   ]   ;  \r  \t  \t   R   E   T
0063740    U   R   N   [   N   E   W   [   N   u   m   b   e   r   N   o
0063760    d   e   B   o   d   y   _   [   p   o   s   i   t   i   o   n
0064000    ,       l   e   n   g   t   h   ,       N   u   m   b   e   r
0064020    o   c   t   a   l   P   r   o   d   P   r   o   c   s   ,    
0064040    d   a   t   a   ]   ]   ]   ;  \r  \t  \t   E   N   D   ;  \r
0064060   \r   E   N   D   .   .  \r                                    
0064067