$ od -c -N 50000 [Indigo]<Casaba>7.0>Saffron2.0>Shared-Derived>SaffronCG2Impl.Mesa!4
0000000    -   -       S   a   f   f   r   o   n   C   G   2   I   m   p
0000020    l   .   m   e   s   a  \r       -   -       C   o   p   y   r
0000040    i   g   h   t     323       1   9   8   7       b   y       X
0000060    e   r   o   x       C   o   r   p   o   r   a   t   i   o   n
0000100    .           A   l   l       r   i   g   h   t   s       r   e
0000120    s   e   r   v   e   d   .  \r       -   -       G   e   n   e
0000140    r   a   t   e   d       b   y       h   e   d   e   r   m   a
0000160    n   .   p   a       a   t       A   u   g   u   s   t       1
0000200    7   ,       1   9   8   7       3   :   5   7   :   1   6    
0000220    p   m       P   D   T  \r       -   -           u   s   i   n
0000240    g       T   h   r   e   e   C   a   s   a   b   a   F   o   u
0000260    r       [   1   .   2   ]       o   f       J   u   n   e    
0000300    1   ,       1   9   8   7       6   :   0   0   :   0   0    
0000320    p   m       P   D   T  \r  \r   D   I   R   E   C   T   O   R
0000340    Y  \r  \t   S   a   f   f   r   o   n   A   G   2   D   e   f
0000360    ,  \r  \t   S   a   f   f   r   o   n   A   G   8   D   e   f
0000400    ,  \r  \t   S   a   f   f   r   o   n   A   G   1   D   e   f
0000420    ,  \r  \t   S   a   f   f   r   o   n   A   G   7   D   e   f
0000440    ,  \r  \t   S   a   f   f   r   o   n   A   G   3   D   e   f
0000460    ,  \r  \t   S   a   f   f   r   o   n   A   G   6   D   e   f
0000500    ,  \r  \t   T   h   r   e   e   C   4   S   u   p   p   o   r
0000520    t   ,  \r  \t   S   a   f   f   r   o   n   C   G   2   D   e
0000540    f       U   S   I   N   G   [   ]   ,  \r  \t   S   a   f   f
0000560    r   o   n   A   T   D   e   f   ;  \r  \r   S   a   f   f   r
0000600    o   n   C   G   2   I   m   p   l   :       C   E   D   A   R
0000620        P   R   O   G   R   A   M       I   M   P   O   R   T   S
0000640        S   a   f   f   r   o   n   A   G   2   D   e   f   ,    
0000660    S   a   f   f   r   o   n   A   G   8   D   e   f   ,       S
0000700    a   f   f   r   o   n   A   G   1   D   e   f   ,       S   a
0000720    f   f   r   o   n   A   G   7   D   e   f   ,       S   a   f
0000740    f   r   o   n   A   G   3   D   e   f   ,       S   a   f   f
0000760    r   o   n   A   G   6   D   e   f       E   X   P   O   R   T
0001000    S       S   a   f   f   r   o   n   C   G   2   D   e   f   =
0001020       \r   B   E   G   I   N  \r   O   P   E   N       S   a   f
0001040    f   r   o   n   A   G   2   D   e   f   ,       S   a   f   f
0001060    r   o   n   A   G   8   D   e   f   ,       S   a   f   f   r
0001100    o   n   A   G   1   D   e   f   ,       S   a   f   f   r   o
0001120    n   A   G   7   D   e   f   ,       S   a   f   f   r   o   n
0001140    A   G   3   D   e   f   ,       S   a   f   f   r   o   n   A
0001160    G   6   D   e   f   ,       T   h   r   e   e   C   4   S   u
0001200    p   p   o   r   t   ,       S   a   f   f   r   o   n   A   T
0001220    D   e   f   ;  \r   S   a   f   f   r   o   n   C   G   2   L
0001240    i   n   k   P   r   o   c   :       P   U   B   L   I   C    
0001260    P   R   O   C   [   p   r   o   d   L   i   n   k   A   r   r
0001300    a   y   :       S   e   e   P   r   o   d   L   i   n   k   A
0001320    r   r   a   y   ,       t   k   n   L   i   n   k   A   r   r
0001340    a   y   :       T   o   k   e   n   L   i   n   k   A   r   r
0001360    a   y   ]       =  \r   B   E   G   I   N  \r   p   r   o   d
0001400    L   i   n   k   A   r   r   a   y   [   5   0   ]       _    
0001420    S   e   e   b   o   u   n   d   s   ;  \r   p   r   o   d   L
0001440    i   n   k   A   r   r   a   y   [   5   1   ]       _       S
0001460    e   e   c   h   e   c   k   e   d   e   m   p   t   y   ;  \r
0001500    p   r   o   d   L   i   n   k   A   r   r   a   y   [   5   2
0001520    ]       _       S   e   e   c   h   e   c   k   e   d   c   h
0001540    e   c   k   e   d   ;  \r   p   r   o   d   L   i   n   k   A
0001560    r   r   a   y   [   5   3   ]       _       S   e   e   c   h
0001600    e   c   k   e   d   t   r   u   s   t   e   d   ;  \r   p   r
0001620    o   d   L   i   n   k   A   r   r   a   y   [   5   4   ]    
0001640    _       S   e   e   c   h   e   c   k   e   d   u   n   c   h
0001660    e   c   k   e   d   ;  \r   p   r   o   d   L   i   n   k   A
0001700    r   r   a   y   [   5   5   ]       _       S   e   e   d   e
0001720    f   a   u   l   t   a   ;  \r   p   r   o   d   L   i   n   k
0001740    A   r   r   a   y   [   5   6   ]       _       S   e   e   d
0001760    e   f   a   u   l   t   e   m   p   t   y   ;  \r   p   r   o
0002000    d   L   i   n   k   A   r   r   a   y   [   5   7   ]       _
0002020        S   e   e   p   o   s   i   t   i   o   n   P   ;  \r   p
0002040    r   o   d   L   i   n   k   A   r   r   a   y   [   5   8   ]
0002060        _       S   e   e   o   p   t   b   i   t   s   p   r   e
0002100    s   e   n   t   ;  \r   p   r   o   d   L   i   n   k   A   r
0002120    r   a   y   [   5   9   ]       _       S   e   e   o   p   t
0002140    b   i   t   s   a   b   s   e   n   t   ;  \r   p   r   o   d
0002160    L   i   n   k   A   r   r   a   y   [   6   0   ]       _    
0002200    S   e   e   s   u   m   s   u   m   ;  \r   p   r   o   d   L
0002220    i   n   k   A   r   r   a   y   [   6   1   ]       _       S
0002240    e   e   s   u   m   p   r   o   d   u   c   t   ;  \r   p   r
0002260    o   d   L   i   n   k   A   r   r   a   y   [   6   2   ]    
0002300    _       S   e   e   p   r   o   d   u   c   t   p   r   o   d
0002320    u   c   t   ;  \r   p   r   o   d   L   i   n   k   A   r   r
0002340    a   y   [   6   3   ]       _       S   e   e   p   r   o   d
0002360    u   c   t   f   a   c   t   o   r   ;  \r   p   r   o   d   L
0002400    i   n   k   A   r   r   a   y   [   6   4   ]       _       S
0002420    e   e   m   u   l   t   o   p   t   i   m   e   s   ;  \r   p
0002440    r   o   d   L   i   n   k   A   r   r   a   y   [   6   5   ]
0002460        _       S   e   e   m   u   l   t   o   p   d   i   v   i
0002500    d   e   ;  \r   p   r   o   d   L   i   n   k   A   r   r   a
0002520    y   [   6   6   ]       _       S   e   e   m   u   l   t   o
0002540    p   m   o   d   ;  \r   p   r   o   d   L   i   n   k   A   r
0002560    r   a   y   [   6   7   ]       _       S   e   e   f   a   c
0002600    t   o   r   u   n   a   r   y   s   u   m   ;  \r   p   r   o
0002620    d   L   i   n   k   A   r   r   a   y   [   6   8   ]       _
0002640        S   e   e   f   a   c   t   o   r   p   r   i   m   a   r
0002660    y   ;  \r   p   r   o   d   L   i   n   k   A   r   r   a   y
0002700    [   6   9   ]       _       S   e   e   a   d   d   o   p   p
0002720    l   u   s   ;  \r   p   r   o   d   L   i   n   k   A   r   r
0002740    a   y   [   7   0   ]       _       S   e   e   a   d   d   o
0002760    p   m   i   n   u   s   ;  \r   p   r   o   d   L   i   n   k
0003000    A   r   r   a   y   [   7   1   ]       _       S   e   e   r
0003020    e   a   d   o   n   l   y   y   e   s   ;  \r   p   r   o   d
0003040    L   i   n   k   A   r   r   a   y   [   7   2   ]       _    
0003060    S   e   e   r   e   a   d   o   n   l   y   n   o   ;  \r   p
0003100    r   o   d   L   i   n   k   A   r   r   a   y   [   7   3   ]
0003120        _       S   e   e   c   a   t   c   h   a   n   y   ;  \r
0003140    p   r   o   d   L   i   n   k   A   r   r   a   y   [   7   4
0003160    ]       _       S   e   e   i   n   t   e   r   v   a   l   c
0003200    c   ;  \r   p   r   o   d   L   i   n   k   A   r   r   a   y
0003220    [   7   5   ]       _       S   e   e   i   n   t   e   r   v
0003240    a   l   o   c   ;  \r   p   r   o   d   L   i   n   k   A   r
0003260    r   a   y   [   7   6   ]       _       S   e   e   i   n   t
0003300    e   r   v   a   l   c   o   ;  \r   p   r   o   d   L   i   n
0003320    k   A   r   r   a   y   [   7   7   ]       _       S   e   e
0003340    i   n   t   e   r   v   a   l   o   o   ;  \r   p   r   o   d
0003360    L   i   n   k   A   r   r   a   y   [   7   8   ]       _    
0003400    S   e   e   e   x   p   i   f   t   h   e   n   e   l   s   e
0003420    ;  \r   p   r   o   d   L   i   n   k   A   r   r   a   y   [
0003440    7   9   ]       _       S   e   e   e   x   p   s   e   l   e
0003460    c   t   ;  \r   p   r   o   d   L   i   n   k   A   r   r   a
0003500    y   [   8   0   ]       _       S   e   e   e   x   p   a   s
0003520    s   i   g   n   ;  \r   p   r   o   d   L   i   n   k   A   r
0003540    r   a   y   [   8   1   ]       _       S   e   e   e   x   p
0003560    m   u   l   t   i   a   s   s   i   g   n   ;  \r   p   r   o
0003600    d   L   i   n   k   A   r   r   a   y   [   8   2   ]       _
0003620        S   e   e   e   x   p   e   r   r   o   r   ;  \r   p   r
0003640    o   d   L   i   n   k   A   r   r   a   y   [   8   3   ]    
0003660    _       S   e   e   e   x   p   t   r   a   n   s   f   e   r
0003700    ;  \r   p   r   o   d   L   i   n   k   A   r   r   a   y   [
0003720    8   4   ]       _       S   e   e   e   x   p   d   i   s   j
0003740    u   n   c   t   ;  \r   p   r   o   d   L   i   n   k   A   r
0003760    r   a   y   [   8   5   ]       _       S   e   e   c   a   s
0004000    e   e   x   p   l   i   s   t   e   m   p   t   y   ;  \r   p
0004020    r   o   d   L   i   n   k   A   r   r   a   y   [   8   6   ]
0004040        _       S   e   e   c   a   s   e   e   x   p   l   i   s
0004060    t   b   ;  \r   p   r   o   d   L   i   n   k   A   r   r   a
0004100    y   [   8   7   ]       _       S   e   e   c   a   s   e   e
0004120    x   p   l   i   s   t   c   ;  \r   p   r   o   d   L   i   n
0004140    k   A   r   r   a   y   [   8   8   ]       _       S   e   e
0004160    c   a   s   e   e   x   p   l   i   s   t   P   a   ;  \r   p
0004200    r   o   d   L   i   n   k   A   r   r   a   y   [   8   9   ]
0004220        _       S   e   e   c   a   s   e   e   x   p   l   i   s
0004240    t   P   b   ;  \r   p   r   o   d   L   i   n   k   A   r   r
0004260    a   y   [   9   0   ]       _       S   e   e   c   a   s   e
0004300    e   x   p   i   t   e   m   ;  \r   E   N   D   ;  \r  \r   S
0004320    e   e   b   o   u   n   d   s   :       P   R   O   C       [
0004340    n   o   d   e   s   :       L   I   S   T       O   F       R
0004360    E   F       A   N   Y   ,       p   o   s   i   t   i   o   n
0004400    :       I   N   T   ,       l   e   n   g   t   h   :       I
0004420    N   T   ]  \r  \t   R   E   T   U   R   N   S       [   L   I
0004440    S   T       O   F       R   E   F       A   N   Y   ]       =
0004460   \r   B   E   G   I   N  \r   s   t   a   c   k   :       L   I
0004500    S   T       O   F       R   E   F       A   N   Y       _    
0004520    n   o   d   e   s   ;  \r   e   x   p   l   o   w   e   r   :
0004540        E   x   p   N   o   d   e   ;  \r   e   x   p   u   p   p
0004560    e   r   :       E   x   p   N   o   d   e   ;  \r   e   x   p
0004600    u   p   p   e   r       _       N   A   R   R   O   W   [   s
0004620    t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a
0004640    c   k       _       s   t   a   c   k   .   r   e   s   t   ;
0004660   \r   e   x   p   l   o   w   e   r       _       N   A   R   R
0004700    O   W   [   s   t   a   c   k   .   f   i   r   s   t   ]   ;
0004720   \r   s   t   a   c   k       _       s   t   a   c   k   .   r
0004740    e   s   t   ;  \r   s   t   a   c   k       _       C   O   N
0004760    S   [   B   u   i   l   d   B   o   u   n   d   s   P   r   o
0005000    d   N   o   d   e   [   p   o   s   i   t   i   o   n   ,    
0005020    l   e   n   g   t   h   ,       e   x   p   l   o   w   e   r
0005040    ,       e   x   p   u   p   p   e   r   ]   ,       s   t   a
0005060    c   k   ]   ;  \r   R   E   T   U   R   N       [   s   t   a
0005100    c   k   ]  \r   E   N   D   ;  \r  \r   S   e   e   c   h   e
0005120    c   k   e   d   e   m   p   t   y   :       P   R   O   C    
0005140    [   n   o   d   e   s   :       L   I   S   T       O   F    
0005160    R   E   F       A   N   Y   ,       p   o   s   i   t   i   o
0005200    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0005220    I   N   T   ]  \r  \t   R   E   T   U   R   N   S       [   L
0005240    I   S   T       O   F       R   E   F       A   N   Y   ]    
0005260    =  \r   B   E   G   I   N  \r   s   t   a   c   k   :       L
0005300    I   S   T       O   F       R   E   F       A   N   Y       _
0005320        n   o   d   e   s   ;  \r   s   t   a   c   k       _    
0005340    C   O   N   S   [   B   u   i   l   d   C   h   e   c   k   e
0005360    d   e   m   p   t   y   P   r   o   d   N   o   d   e   [   p
0005400    o   s   i   t   i   o   n   ,       l   e   n   g   t   h   ]
0005420    ,       s   t   a   c   k   ]   ;  \r   R   E   T   U   R   N
0005440        [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S
0005460    e   e   c   h   e   c   k   e   d   c   h   e   c   k   e   d
0005500    :       P   R   O   C       [   n   o   d   e   s   :       L
0005520    I   S   T       O   F       R   E   F       A   N   Y   ,    
0005540    p   o   s   i   t   i   o   n   :       I   N   T   ,       l
0005560    e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E   T
0005600    U   R   N   S       [   L   I   S   T       O   F       R   E
0005620    F       A   N   Y   ]       =  \r   B   E   G   I   N  \r   s
0005640    t   a   c   k   :       L   I   S   T       O   F       R   E
0005660    F       A   N   Y       _       n   o   d   e   s   ;  \r   s
0005700    t   a   c   k       _       C   O   N   S   [   B   u   i   l
0005720    d   C   h   e   c   k   e   d   c   h   e   c   k   e   d   P
0005740    r   o   d   N   o   d   e   [   p   o   s   i   t   i   o   n
0005760    ,       l   e   n   g   t   h   ]   ,       s   t   a   c   k
0006000    ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c   k
0006020    ]  \r   E   N   D   ;  \r  \r   S   e   e   c   h   e   c   k
0006040    e   d   t   r   u   s   t   e   d   :       P   R   O   C    
0006060    [   n   o   d   e   s   :       L   I   S   T       O   F    
0006100    R   E   F       A   N   Y   ,       p   o   s   i   t   i   o
0006120    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0006140    I   N   T   ]  \r  \t   R   E   T   U   R   N   S       [   L
0006160    I   S   T       O   F       R   E   F       A   N   Y   ]    
0006200    =  \r   B   E   G   I   N  \r   s   t   a   c   k   :       L
0006220    I   S   T       O   F       R   E   F       A   N   Y       _
0006240        n   o   d   e   s   ;  \r   s   t   a   c   k       _    
0006260    C   O   N   S   [   B   u   i   l   d   C   h   e   c   k   e
0006300    d   t   r   u   s   t   e   d   P   r   o   d   N   o   d   e
0006320    [   p   o   s   i   t   i   o   n   ,       l   e   n   g   t
0006340    h   ]   ,       s   t   a   c   k   ]   ;  \r   R   E   T   U
0006360    R   N       [   s   t   a   c   k   ]  \r   E   N   D   ;  \r
0006400   \r   S   e   e   c   h   e   c   k   e   d   u   n   c   h   e
0006420    c   k   e   d   :       P   R   O   C       [   n   o   d   e
0006440    s   :       L   I   S   T       O   F       R   E   F       A
0006460    N   Y   ,       p   o   s   i   t   i   o   n   :       I   N
0006500    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0006520   \t   R   E   T   U   R   N   S       [   L   I   S   T       O
0006540    F       R   E   F       A   N   Y   ]       =  \r   B   E   G
0006560    I   N  \r   s   t   a   c   k   :       L   I   S   T       O
0006600    F       R   E   F       A   N   Y       _       n   o   d   e
0006620    s   ;  \r   s   t   a   c   k       _       C   O   N   S   [
0006640    B   u   i   l   d   C   h   e   c   k   e   d   u   n   c   h
0006660    e   c   k   e   d   P   r   o   d   N   o   d   e   [   p   o
0006700    s   i   t   i   o   n   ,       l   e   n   g   t   h   ]   ,
0006720        s   t   a   c   k   ]   ;  \r   R   E   T   U   R   N    
0006740    [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e
0006760    e   d   e   f   a   u   l   t   a   :       P   R   O   C    
0007000    [   n   o   d   e   s   :       L   I   S   T       O   F    
0007020    R   E   F       A   N   Y   ,       p   o   s   i   t   i   o
0007040    n   :       I   N   T   ,       l   e   n   g   t   h   :    
0007060    I   N   T   ]  \r  \t   R   E   T   U   R   N   S       [   L
0007100    I   S   T       O   F       R   E   F       A   N   Y   ]    
0007120    =  \r   B   E   G   I   N  \r   s   t   a   c   k   :       L
0007140    I   S   T       O   F       R   E   F       A   N   Y       _
0007160        n   o   d   e   s   ;  \r   d   e   f   a   u   l   t   o
0007200    p   t   :       D   e   f   a   u   l   t   N   o   d   e   ;
0007220   \r   d   e   f   a   u   l   t   o   p   t       _       N   A
0007240    R   R   O   W   [   s   t   a   c   k   .   f   i   r   s   t
0007260    ]   ;  \r   s   t   a   c   k       _       s   t   a   c   k
0007300    .   r   e   s   t   ;  \r   s   t   a   c   k       _       C
0007320    O   N   S   [   d   e   f   a   u   l   t   o   p   t   ,    
0007340    s   t   a   c   k   ]   ;  \r   R   E   T   U   R   N       [
0007360    s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e   e
0007400    d   e   f   a   u   l   t   e   m   p   t   y   :       P   R
0007420    O   C       [   n   o   d   e   s   :       L   I   S   T    
0007440    O   F       R   E   F       A   N   Y   ,       p   o   s   i
0007460    t   i   o   n   :       I   N   T   ,       l   e   n   g   t
0007500    h   :       I   N   T   ]  \r  \t   R   E   T   U   R   N   S
0007520        [   L   I   S   T       O   F       R   E   F       A   N
0007540    Y   ]       =  \r   B   E   G   I   N  \r   s   t   a   c   k
0007560    :       L   I   S   T       O   F       R   E   F       A   N
0007600    Y       _       n   o   d   e   s   ;  \r   s   t   a   c   k
0007620        _       C   O   N   S   [   B   u   i   l   d   D   e   f
0007640    a   u   l   t   e   m   p   t   y   P   r   o   d   N   o   d
0007660    e   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0007700    t   h   ]   ,       s   t   a   c   k   ]   ;  \r   R   E   T
0007720    U   R   N       [   s   t   a   c   k   ]  \r   E   N   D   ;
0007740   \r  \r   S   e   e   p   o   s   i   t   i   o   n   P   :    
0007760    P   R   O   C       [   n   o   d   e   s   :       L   I   S
0010000    T       O   F       R   E   F       A   N   Y   ,       p   o
0010020    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0010040    g   t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R
0010060    N   S       [   L   I   S   T       O   F       R   E   F    
0010100    A   N   Y   ]       =  \r   B   E   G   I   N  \r   s   t   a
0010120    c   k   :       L   I   S   T       O   F       R   E   F    
0010140    A   N   Y       _       n   o   d   e   s   ;  \r   e   x   p
0010160    :       E   x   p   N   o   d   e   ;  \r   o   p   t   b   i
0010200    t   s   :       O   p   t   B   i   t   s   N   o   d   e   ;
0010220   \r   o   p   t   b   i   t   s       _       N   A   R   R   O
0010240    W   [   s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r
0010260    s   t   a   c   k       _       s   t   a   c   k   .   r   e
0010300    s   t   ;  \r   e   x   p       _       N   A   R   R   O   W
0010320    [   s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s
0010340    t   a   c   k       _       s   t   a   c   k   .   r   e   s
0010360    t   ;  \r   s   t   a   c   k       _       C   O   N   S   [
0010400    B   u   i   l   d   P   o   s   i   t   i   o   n   P   r   o
0010420    d   N   o   d   e   [   p   o   s   i   t   i   o   n   ,    
0010440    l   e   n   g   t   h   ,       e   x   p   ,       o   p   t
0010460    b   i   t   s   ]   ,       s   t   a   c   k   ]   ;  \r   R
0010500    E   T   U   R   N       [   s   t   a   c   k   ]  \r   E   N
0010520    D   ;  \r  \r   S   e   e   o   p   t   b   i   t   s   p   r
0010540    e   s   e   n   t   :       P   R   O   C       [   n   o   d
0010560    e   s   :       L   I   S   T       O   F       R   E   F    
0010600    A   N   Y   ,       p   o   s   i   t   i   o   n   :       I
0010620    N   T   ,       l   e   n   g   t   h   :       I   N   T   ]
0010640   \r  \t   R   E   T   U   R   N   S       [   L   I   S   T    
0010660    O   F       R   E   F       A   N   Y   ]       =  \r   B   E
0010700    G   I   N  \r   s   t   a   c   k   :       L   I   S   T    
0010720    O   F       R   E   F       A   N   Y       _       n   o   d
0010740    e   s   ;  \r   b   o   u   n   d   s   :       B   o   u   n
0010760    d   s   N   o   d   e   ;  \r   b   o   u   n   d   s       _
0011000        N   A   R   R   O   W   [   s   t   a   c   k   .   f   i
0011020    r   s   t   ]   ;  \r   s   t   a   c   k       _       s   t
0011040    a   c   k   .   r   e   s   t   ;  \r   s   t   a   c   k    
0011060    _       C   O   N   S   [   B   u   i   l   d   O   p   t   B
0011100    i   t   s   p   r   e   s   e   n   t   P   r   o   d   N   o
0011120    d   e   [   p   o   s   i   t   i   o   n   ,       l   e   n
0011140    g   t   h   ,       b   o   u   n   d   s   ]   ,       s   t
0011160    a   c   k   ]   ;  \r   R   E   T   U   R   N       [   s   t
0011200    a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e   e   o   p
0011220    t   b   i   t   s   a   b   s   e   n   t   :       P   R   O
0011240    C       [   n   o   d   e   s   :       L   I   S   T       O
0011260    F       R   E   F       A   N   Y   ,       p   o   s   i   t
0011300    i   o   n   :       I   N   T   ,       l   e   n   g   t   h
0011320    :       I   N   T   ]  \r  \t   R   E   T   U   R   N   S    
0011340    [   L   I   S   T       O   F       R   E   F       A   N   Y
0011360    ]       =  \r   B   E   G   I   N  \r   s   t   a   c   k   :
0011400        L   I   S   T       O   F       R   E   F       A   N   Y
0011420        _       n   o   d   e   s   ;  \r   s   t   a   c   k    
0011440    _       C   O   N   S   [   B   u   i   l   d   O   p   t   B
0011460    i   t   s   a   b   s   e   n   t   P   r   o   d   N   o   d
0011500    e   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0011520    t   h   ]   ,       s   t   a   c   k   ]   ;  \r   R   E   T
0011540    U   R   N       [   s   t   a   c   k   ]  \r   E   N   D   ;
0011560   \r  \r   S   e   e   s   u   m   s   u   m   :       P   R   O
0011600    C       [   n   o   d   e   s   :       L   I   S   T       O
0011620    F       R   E   F       A   N   Y   ,       p   o   s   i   t
0011640    i   o   n   :       I   N   T   ,       l   e   n   g   t   h
0011660    :       I   N   T   ]  \r  \t   R   E   T   U   R   N   S    
0011700    [   L   I   S   T       O   F       R   E   F       A   N   Y
0011720    ]       =  \r   B   E   G   I   N  \r   s   t   a   c   k   :
0011740        L   I   S   T       O   F       R   E   F       A   N   Y
0011760        _       n   o   d   e   s   ;  \r   s   u   m   :       E
0012000    x   p   N   o   d   e   ;  \r   a   d   d   o   p   :       A
0012020    d   d   O   p   N   o   d   e   ;  \r   p   r   o   d   u   c
0012040    t   :       E   x   p   N   o   d   e   ;  \r   p   r   o   d
0012060    u   c   t       _       N   A   R   R   O   W   [   s   t   a
0012100    c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k
0012120        _       s   t   a   c   k   .   r   e   s   t   ;  \r   a
0012140    d   d   o   p       _       N   A   R   R   O   W   [   s   t
0012160    a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c
0012200    k       _       s   t   a   c   k   .   r   e   s   t   ;  \r
0012220    s   u   m       _       N   A   R   R   O   W   [   s   t   a
0012240    c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k
0012260        _       s   t   a   c   k   .   r   e   s   t   ;  \r   s
0012300    t   a   c   k       _       C   O   N   S   [   B   u   i   l
0012320    d   E   x   p   s   u   m   P   r   o   d   N   o   d   e   [
0012340    p   o   s   i   t   i   o   n   ,       l   e   n   g   t   h
0012360    ,       s   u   m   ,       a   d   d   o   p   ,       p   r
0012400    o   d   u   c   t   ]   ,       s   t   a   c   k   ]   ;  \r
0012420    R   E   T   U   R   N       [   s   t   a   c   k   ]  \r   E
0012440    N   D   ;  \r  \r   S   e   e   s   u   m   p   r   o   d   u
0012460    c   t   :       P   R   O   C       [   n   o   d   e   s   :
0012500        L   I   S   T       O   F       R   E   F       A   N   Y
0012520    ,       p   o   s   i   t   i   o   n   :       I   N   T   ,
0012540        l   e   n   g   t   h   :       I   N   T   ]  \r  \t   R
0012560    E   T   U   R   N   S       [   L   I   S   T       O   F    
0012600    R   E   F       A   N   Y   ]       =  \r   B   E   G   I   N
0012620   \r   s   t   a   c   k   :       L   I   S   T       O   F    
0012640    R   E   F       A   N   Y       _       n   o   d   e   s   ;
0012660   \r   p   r   o   d   u   c   t   :       E   x   p   N   o   d
0012700    e   ;  \r   p   r   o   d   u   c   t       _       N   A   R
0012720    R   O   W   [   s   t   a   c   k   .   f   i   r   s   t   ]
0012740    ;  \r   s   t   a   c   k       _       s   t   a   c   k   .
0012760    r   e   s   t   ;  \r   s   t   a   c   k       _       C   O
0013000    N   S   [   p   r   o   d   u   c   t   ,       s   t   a   c
0013020    k   ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c
0013040    k   ]  \r   E   N   D   ;  \r  \r   S   e   e   p   r   o   d
0013060    u   c   t   p   r   o   d   u   c   t   :       P   R   O   C
0013100        [   n   o   d   e   s   :       L   I   S   T       O   F
0013120        R   E   F       A   N   Y   ,       p   o   s   i   t   i
0013140    o   n   :       I   N   T   ,       l   e   n   g   t   h   :
0013160        I   N   T   ]  \r  \t   R   E   T   U   R   N   S       [
0013200    L   I   S   T       O   F       R   E   F       A   N   Y   ]
0013220        =  \r   B   E   G   I   N  \r   s   t   a   c   k   :    
0013240    L   I   S   T       O   F       R   E   F       A   N   Y    
0013260    _       n   o   d   e   s   ;  \r   p   r   o   d   u   c   t
0013300    :       E   x   p   N   o   d   e   ;  \r   m   u   l   t   o
0013320    p   :       M   u   l   t   O   p   N   o   d   e   ;  \r   f
0013340    a   c   t   o   r   :       E   x   p   N   o   d   e   ;  \r
0013360    f   a   c   t   o   r       _       N   A   R   R   O   W   [
0013400    s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t
0013420    a   c   k       _       s   t   a   c   k   .   r   e   s   t
0013440    ;  \r   m   u   l   t   o   p       _       N   A   R   R   O
0013460    W   [   s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r
0013500    s   t   a   c   k       _       s   t   a   c   k   .   r   e
0013520    s   t   ;  \r   p   r   o   d   u   c   t       _       N   A
0013540    R   R   O   W   [   s   t   a   c   k   .   f   i   r   s   t
0013560    ]   ;  \r   s   t   a   c   k       _       s   t   a   c   k
0013600    .   r   e   s   t   ;  \r   s   t   a   c   k       _       C
0013620    O   N   S   [   B   u   i   l   d   E   x   p   p   r   o   d
0013640    u   c   t   P   r   o   d   N   o   d   e   [   p   o   s   i
0013660    t   i   o   n   ,       l   e   n   g   t   h   ,       p   r
0013700    o   d   u   c   t   ,       m   u   l   t   o   p   ,       f
0013720    a   c   t   o   r   ]   ,       s   t   a   c   k   ]   ;  \r
0013740    R   E   T   U   R   N       [   s   t   a   c   k   ]  \r   E
0013760    N   D   ;  \r  \r   S   e   e   p   r   o   d   u   c   t   f
0014000    a   c   t   o   r   :       P   R   O   C       [   n   o   d
0014020    e   s   :       L   I   S   T       O   F       R   E   F    
0014040    A   N   Y   ,       p   o   s   i   t   i   o   n   :       I
0014060    N   T   ,       l   e   n   g   t   h   :       I   N   T   ]
0014100   \r  \t   R   E   T   U   R   N   S       [   L   I   S   T    
0014120    O   F       R   E   F       A   N   Y   ]       =  \r   B   E
0014140    G   I   N  \r   s   t   a   c   k   :       L   I   S   T    
0014160    O   F       R   E   F       A   N   Y       _       n   o   d
0014200    e   s   ;  \r   f   a   c   t   o   r   :       E   x   p   N
0014220    o   d   e   ;  \r   f   a   c   t   o   r       _       N   A
0014240    R   R   O   W   [   s   t   a   c   k   .   f   i   r   s   t
0014260    ]   ;  \r   s   t   a   c   k       _       s   t   a   c   k
0014300    .   r   e   s   t   ;  \r   s   t   a   c   k       _       C
0014320    O   N   S   [   f   a   c   t   o   r   ,       s   t   a   c
0014340    k   ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c
0014360    k   ]  \r   E   N   D   ;  \r  \r   S   e   e   m   u   l   t
0014400    o   p   t   i   m   e   s   :       P   R   O   C       [   n
0014420    o   d   e   s   :       L   I   S   T       O   F       R   E
0014440    F       A   N   Y   ,       p   o   s   i   t   i   o   n   :
0014460        I   N   T   ,       l   e   n   g   t   h   :       I   N
0014500    T   ]  \r  \t   R   E   T   U   R   N   S       [   L   I   S
0014520    T       O   F       R   E   F       A   N   Y   ]       =  \r
0014540    B   E   G   I   N  \r   s   t   a   c   k   :       L   I   S
0014560    T       O   F       R   E   F       A   N   Y       _       n
0014600    o   d   e   s   ;  \r   s   t   a   c   k       _       C   O
0014620    N   S   [   B   u   i   l   d   M   u   l   t   O   p   t   i
0014640    m   e   s   P   r   o   d   N   o   d   e   [   p   o   s   i
0014660    t   i   o   n   ,       l   e   n   g   t   h   ]   ,       s
0014700    t   a   c   k   ]   ;  \r   R   E   T   U   R   N       [   s
0014720    t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e   e   m
0014740    u   l   t   o   p   d   i   v   i   d   e   :       P   R   O
0014760    C       [   n   o   d   e   s   :       L   I   S   T       O
0015000    F       R   E   F       A   N   Y   ,       p   o   s   i   t
0015020    i   o   n   :       I   N   T   ,       l   e   n   g   t   h
0015040    :       I   N   T   ]  \r  \t   R   E   T   U   R   N   S    
0015060    [   L   I   S   T       O   F       R   E   F       A   N   Y
0015100    ]       =  \r   B   E   G   I   N  \r   s   t   a   c   k   :
0015120        L   I   S   T       O   F       R   E   F       A   N   Y
0015140        _       n   o   d   e   s   ;  \r   s   t   a   c   k    
0015160    _       C   O   N   S   [   B   u   i   l   d   M   u   l   t
0015200    O   p   d   i   v   i   d   e   P   r   o   d   N   o   d   e
0015220    [   p   o   s   i   t   i   o   n   ,       l   e   n   g   t
0015240    h   ]   ,       s   t   a   c   k   ]   ;  \r   R   E   T   U
0015260    R   N       [   s   t   a   c   k   ]  \r   E   N   D   ;  \r
0015300   \r   S   e   e   m   u   l   t   o   p   m   o   d   :       P
0015320    R   O   C       [   n   o   d   e   s   :       L   I   S   T
0015340        O   F       R   E   F       A   N   Y   ,       p   o   s
0015360    i   t   i   o   n   :       I   N   T   ,       l   e   n   g
0015400    t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R   N
0015420    S       [   L   I   S   T       O   F       R   E   F       A
0015440    N   Y   ]       =  \r   B   E   G   I   N  \r   s   t   a   c
0015460    k   :       L   I   S   T       O   F       R   E   F       A
0015500    N   Y       _       n   o   d   e   s   ;  \r   s   t   a   c
0015520    k       _       C   O   N   S   [   B   u   i   l   d   M   u
0015540    l   t   O   p   m   o   d   P   r   o   d   N   o   d   e   [
0015560    p   o   s   i   t   i   o   n   ,       l   e   n   g   t   h
0015600    ]   ,       s   t   a   c   k   ]   ;  \r   R   E   T   U   R
0015620    N       [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r
0015640    S   e   e   f   a   c   t   o   r   u   n   a   r   y   s   u
0015660    m   :       P   R   O   C       [   n   o   d   e   s   :    
0015700    L   I   S   T       O   F       R   E   F       A   N   Y   ,
0015720        p   o   s   i   t   i   o   n   :       I   N   T   ,    
0015740    l   e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E
0015760    T   U   R   N   S       [   L   I   S   T       O   F       R
0016000    E   F       A   N   Y   ]       =  \r   B   E   G   I   N  \r
0016020    s   t   a   c   k   :       L   I   S   T       O   F       R
0016040    E   F       A   N   Y       _       n   o   d   e   s   ;  \r
0016060    a   d   d   o   p   :       A   d   d   O   p   N   o   d   e
0016100    ;  \r   p   r   i   m   a   r   y   :       E   x   p   N   o
0016120    d   e   ;  \r   p   r   i   m   a   r   y       _       N   A
0016140    R   R   O   W   [   s   t   a   c   k   .   f   i   r   s   t
0016160    ]   ;  \r   s   t   a   c   k       _       s   t   a   c   k
0016200    .   r   e   s   t   ;  \r   a   d   d   o   p       _       N
0016220    A   R   R   O   W   [   s   t   a   c   k   .   f   i   r   s
0016240    t   ]   ;  \r   s   t   a   c   k       _       s   t   a   c
0016260    k   .   r   e   s   t   ;  \r   s   t   a   c   k       _    
0016300    C   O   N   S   [   B   u   i   l   d   E   x   p   u   n   a
0016320    r   y   s   u   m   P   r   o   d   N   o   d   e   [   p   o
0016340    s   i   t   i   o   n   ,       l   e   n   g   t   h   ,    
0016360    a   d   d   o   p   ,       p   r   i   m   a   r   y   ]   ,
0016400        s   t   a   c   k   ]   ;  \r   R   E   T   U   R   N    
0016420    [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e
0016440    e   f   a   c   t   o   r   p   r   i   m   a   r   y   :    
0016460    P   R   O   C       [   n   o   d   e   s   :       L   I   S
0016500    T       O   F       R   E   F       A   N   Y   ,       p   o
0016520    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0016540    g   t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R
0016560    N   S       [   L   I   S   T       O   F       R   E   F    
0016600    A   N   Y   ]       =  \r   B   E   G   I   N  \r   s   t   a
0016620    c   k   :       L   I   S   T       O   F       R   E   F    
0016640    A   N   Y       _       n   o   d   e   s   ;  \r   p   r   i
0016660    m   a   r   y   :       E   x   p   N   o   d   e   ;  \r   p
0016700    r   i   m   a   r   y       _       N   A   R   R   O   W   [
0016720    s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t
0016740    a   c   k       _       s   t   a   c   k   .   r   e   s   t
0016760    ;  \r   s   t   a   c   k       _       C   O   N   S   [   p
0017000    r   i   m   a   r   y   ,       s   t   a   c   k   ]   ;  \r
0017020    R   E   T   U   R   N       [   s   t   a   c   k   ]  \r   E
0017040    N   D   ;  \r  \r   S   e   e   a   d   d   o   p   p   l   u
0017060    s   :       P   R   O   C       [   n   o   d   e   s   :    
0017100    L   I   S   T       O   F       R   E   F       A   N   Y   ,
0017120        p   o   s   i   t   i   o   n   :       I   N   T   ,    
0017140    l   e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E
0017160    T   U   R   N   S       [   L   I   S   T       O   F       R
0017200    E   F       A   N   Y   ]       =  \r   B   E   G   I   N  \r
0017220    s   t   a   c   k   :       L   I   S   T       O   F       R
0017240    E   F       A   N   Y       _       n   o   d   e   s   ;  \r
0017260    s   t   a   c   k       _       C   O   N   S   [   B   u   i
0017300    l   d   A   d   d   O   p   p   l   u   s   P   r   o   d   N
0017320    o   d   e   [   p   o   s   i   t   i   o   n   ,       l   e
0017340    n   g   t   h   ]   ,       s   t   a   c   k   ]   ;  \r   R
0017360    E   T   U   R   N       [   s   t   a   c   k   ]  \r   E   N
0017400    D   ;  \r  \r   S   e   e   a   d   d   o   p   m   i   n   u
0017420    s   :       P   R   O   C       [   n   o   d   e   s   :    
0017440    L   I   S   T       O   F       R   E   F       A   N   Y   ,
0017460        p   o   s   i   t   i   o   n   :       I   N   T   ,    
0017500    l   e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E
0017520    T   U   R   N   S       [   L   I   S   T       O   F       R
0017540    E   F       A   N   Y   ]       =  \r   B   E   G   I   N  \r
0017560    s   t   a   c   k   :       L   I   S   T       O   F       R
0017600    E   F       A   N   Y       _       n   o   d   e   s   ;  \r
0017620    s   t   a   c   k       _       C   O   N   S   [   B   u   i
0017640    l   d   A   d   d   O   p   m   i   n   u   s   P   r   o   d
0017660    N   o   d   e   [   p   o   s   i   t   i   o   n   ,       l
0017700    e   n   g   t   h   ]   ,       s   t   a   c   k   ]   ;  \r
0017720    R   E   T   U   R   N       [   s   t   a   c   k   ]  \r   E
0017740    N   D   ;  \r  \r   S   e   e   r   e   a   d   o   n   l   y
0017760    y   e   s   :       P   R   O   C       [   n   o   d   e   s
0020000    :       L   I   S   T       O   F       R   E   F       A   N
0020020    Y   ,       p   o   s   i   t   i   o   n   :       I   N   T
0020040    ,       l   e   n   g   t   h   :       I   N   T   ]  \r  \t
0020060    R   E   T   U   R   N   S       [   L   I   S   T       O   F
0020100        R   E   F       A   N   Y   ]       =  \r   B   E   G   I
0020120    N  \r   s   t   a   c   k   :       L   I   S   T       O   F
0020140        R   E   F       A   N   Y       _       n   o   d   e   s
0020160    ;  \r   s   t   a   c   k       _       C   O   N   S   [   B
0020200    u   i   l   d   R   e   a   d   O   n   l   y   y   e   s   P
0020220    r   o   d   N   o   d   e   [   p   o   s   i   t   i   o   n
0020240    ,       l   e   n   g   t   h   ]   ,       s   t   a   c   k
0020260    ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c   k
0020300    ]  \r   E   N   D   ;  \r  \r   S   e   e   r   e   a   d   o
0020320    n   l   y   n   o   :       P   R   O   C       [   n   o   d
0020340    e   s   :       L   I   S   T       O   F       R   E   F    
0020360    A   N   Y   ,       p   o   s   i   t   i   o   n   :       I
0020400    N   T   ,       l   e   n   g   t   h   :       I   N   T   ]
0020420   \r  \t   R   E   T   U   R   N   S       [   L   I   S   T    
0020440    O   F       R   E   F       A   N   Y   ]       =  \r   B   E
0020460    G   I   N  \r   s   t   a   c   k   :       L   I   S   T    
0020500    O   F       R   E   F       A   N   Y       _       n   o   d
0020520    e   s   ;  \r   s   t   a   c   k       _       C   O   N   S
0020540    [   B   u   i   l   d   R   e   a   d   O   n   l   y   n   o
0020560    P   r   o   d   N   o   d   e   [   p   o   s   i   t   i   o
0020600    n   ,       l   e   n   g   t   h   ]   ,       s   t   a   c
0020620    k   ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c
0020640    k   ]  \r   E   N   D   ;  \r  \r   S   e   e   c   a   t   c
0020660    h   a   n   y   :       P   R   O   C       [   n   o   d   e
0020700    s   :       L   I   S   T       O   F       R   E   F       A
0020720    N   Y   ,       p   o   s   i   t   i   o   n   :       I   N
0020740    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0020760   \t   R   E   T   U   R   N   S       [   L   I   S   T       O
0021000    F       R   E   F       A   N   Y   ]       =  \r   B   E   G
0021020    I   N  \r   s   t   a   c   k   :       L   I   S   T       O
0021040    F       R   E   F       A   N   Y       _       n   o   d   e
0021060    s   ;  \r   s   t   a   t   e   m   e   n   t   :       S   t
0021100    a   t   e   m   e   n   t   N   o   d   e   ;  \r   s   t   a
0021120    t   e   m   e   n   t       _       N   A   R   R   O   W   [
0021140    s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t
0021160    a   c   k       _       s   t   a   c   k   .   r   e   s   t
0021200    ;  \r   s   t   a   c   k       _       C   O   N   S   [   B
0021220    u   i   l   d   C   a   t   c   h   A   n   y   p   r   e   s
0021240    e   n   t   P   r   o   d   N   o   d   e   [   p   o   s   i
0021260    t   i   o   n   ,       l   e   n   g   t   h   ,       s   t
0021300    a   t   e   m   e   n   t   ]   ,       s   t   a   c   k   ]
0021320    ;  \r   R   E   T   U   R   N       [   s   t   a   c   k   ]
0021340   \r   E   N   D   ;  \r  \r   S   e   e   i   n   t   e   r   v
0021360    a   l   c   c   :       P   R   O   C       [   n   o   d   e
0021400    s   :       L   I   S   T       O   F       R   E   F       A
0021420    N   Y   ,       p   o   s   i   t   i   o   n   :       I   N
0021440    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0021460   \t   R   E   T   U   R   N   S       [   L   I   S   T       O
0021500    F       R   E   F       A   N   Y   ]       =  \r   B   E   G
0021520    I   N  \r   s   t   a   c   k   :       L   I   S   T       O
0021540    F       R   E   F       A   N   Y       _       n   o   d   e
0021560    s   ;  \r   b   o   u   n   d   s   :       B   o   u   n   d
0021600    s   N   o   d   e   ;  \r   b   o   u   n   d   s       _    
0021620    N   A   R   R   O   W   [   s   t   a   c   k   .   f   i   r
0021640    s   t   ]   ;  \r   s   t   a   c   k       _       s   t   a
0021660    c   k   .   r   e   s   t   ;  \r   s   t   a   c   k       _
0021700        C   O   N   S   [   B   u   i   l   d   I   n   t   e   r
0021720    v   a   l   c   c   P   r   o   d   N   o   d   e   [   p   o
0021740    s   i   t   i   o   n   ,       l   e   n   g   t   h   ,    
0021760    b   o   u   n   d   s   ]   ,       s   t   a   c   k   ]   ;
0022000   \r   R   E   T   U   R   N       [   s   t   a   c   k   ]  \r
0022020    E   N   D   ;  \r  \r   S   e   e   i   n   t   e   r   v   a
0022040    l   o   c   :       P   R   O   C       [   n   o   d   e   s
0022060    :       L   I   S   T       O   F       R   E   F       A   N
0022100    Y   ,       p   o   s   i   t   i   o   n   :       I   N   T
0022120    ,       l   e   n   g   t   h   :       I   N   T   ]  \r  \t
0022140    R   E   T   U   R   N   S       [   L   I   S   T       O   F
0022160        R   E   F       A   N   Y   ]       =  \r   B   E   G   I
0022200    N  \r   s   t   a   c   k   :       L   I   S   T       O   F
0022220        R   E   F       A   N   Y       _       n   o   d   e   s
0022240    ;  \r   b   o   u   n   d   s   :       B   o   u   n   d   s
0022260    N   o   d   e   ;  \r   b   o   u   n   d   s       _       N
0022300    A   R   R   O   W   [   s   t   a   c   k   .   f   i   r   s
0022320    t   ]   ;  \r   s   t   a   c   k       _       s   t   a   c
0022340    k   .   r   e   s   t   ;  \r   s   t   a   c   k       _    
0022360    C   O   N   S   [   B   u   i   l   d   I   n   t   e   r   v
0022400    a   l   o   c   P   r   o   d   N   o   d   e   [   p   o   s
0022420    i   t   i   o   n   ,       l   e   n   g   t   h   ,       b
0022440    o   u   n   d   s   ]   ,       s   t   a   c   k   ]   ;  \r
0022460    R   E   T   U   R   N       [   s   t   a   c   k   ]  \r   E
0022500    N   D   ;  \r  \r   S   e   e   i   n   t   e   r   v   a   l
0022520    c   o   :       P   R   O   C       [   n   o   d   e   s   :
0022540        L   I   S   T       O   F       R   E   F       A   N   Y
0022560    ,       p   o   s   i   t   i   o   n   :       I   N   T   ,
0022600        l   e   n   g   t   h   :       I   N   T   ]  \r  \t   R
0022620    E   T   U   R   N   S       [   L   I   S   T       O   F    
0022640    R   E   F       A   N   Y   ]       =  \r   B   E   G   I   N
0022660   \r   s   t   a   c   k   :       L   I   S   T       O   F    
0022700    R   E   F       A   N   Y       _       n   o   d   e   s   ;
0022720   \r   b   o   u   n   d   s   :       B   o   u   n   d   s   N
0022740    o   d   e   ;  \r   b   o   u   n   d   s       _       N   A
0022760    R   R   O   W   [   s   t   a   c   k   .   f   i   r   s   t
0023000    ]   ;  \r   s   t   a   c   k       _       s   t   a   c   k
0023020    .   r   e   s   t   ;  \r   s   t   a   c   k       _       C
0023040    O   N   S   [   B   u   i   l   d   I   n   t   e   r   v   a
0023060    l   c   o   P   r   o   d   N   o   d   e   [   p   o   s   i
0023100    t   i   o   n   ,       l   e   n   g   t   h   ,       b   o
0023120    u   n   d   s   ]   ,       s   t   a   c   k   ]   ;  \r   R
0023140    E   T   U   R   N       [   s   t   a   c   k   ]  \r   E   N
0023160    D   ;  \r  \r   S   e   e   i   n   t   e   r   v   a   l   o
0023200    o   :       P   R   O   C       [   n   o   d   e   s   :    
0023220    L   I   S   T       O   F       R   E   F       A   N   Y   ,
0023240        p   o   s   i   t   i   o   n   :       I   N   T   ,    
0023260    l   e   n   g   t   h   :       I   N   T   ]  \r  \t   R   E
0023300    T   U   R   N   S       [   L   I   S   T       O   F       R
0023320    E   F       A   N   Y   ]       =  \r   B   E   G   I   N  \r
0023340    s   t   a   c   k   :       L   I   S   T       O   F       R
0023360    E   F       A   N   Y       _       n   o   d   e   s   ;  \r
0023400    b   o   u   n   d   s   :       B   o   u   n   d   s   N   o
0023420    d   e   ;  \r   b   o   u   n   d   s       _       N   A   R
0023440    R   O   W   [   s   t   a   c   k   .   f   i   r   s   t   ]
0023460    ;  \r   s   t   a   c   k       _       s   t   a   c   k   .
0023500    r   e   s   t   ;  \r   s   t   a   c   k       _       C   O
0023520    N   S   [   B   u   i   l   d   I   n   t   e   r   v   a   l
0023540    o   o   P   r   o   d   N   o   d   e   [   p   o   s   i   t
0023560    i   o   n   ,       l   e   n   g   t   h   ,       b   o   u
0023600    n   d   s   ]   ,       s   t   a   c   k   ]   ;  \r   R   E
0023620    T   U   R   N       [   s   t   a   c   k   ]  \r   E   N   D
0023640    ;  \r  \r   S   e   e   e   x   p   i   f   t   h   e   n   e
0023660    l   s   e   :       P   R   O   C       [   n   o   d   e   s
0023700    :       L   I   S   T       O   F       R   E   F       A   N
0023720    Y   ,       p   o   s   i   t   i   o   n   :       I   N   T
0023740    ,       l   e   n   g   t   h   :       I   N   T   ]  \r  \t
0023760    R   E   T   U   R   N   S       [   L   I   S   T       O   F
0024000        R   E   F       A   N   Y   ]       =  \r   B   E   G   I
0024020    N  \r   s   t   a   c   k   :       L   I   S   T       O   F
0024040        R   E   F       A   N   Y       _       n   o   d   e   s
0024060    ;  \r   e   x   p   c   o   n   d   :       E   x   p   N   o
0024100    d   e   ;  \r   e   x   p   t   h   e   n   p   a   r   t   :
0024120        E   x   p   N   o   d   e   ;  \r   e   x   p   e   l   s
0024140    e   p   a   r   t   :       E   x   p   N   o   d   e   ;  \r
0024160    e   x   p   e   l   s   e   p   a   r   t       _       N   A
0024200    R   R   O   W   [   s   t   a   c   k   .   f   i   r   s   t
0024220    ]   ;  \r   s   t   a   c   k       _       s   t   a   c   k
0024240    .   r   e   s   t   ;  \r   e   x   p   t   h   e   n   p   a
0024260    r   t       _       N   A   R   R   O   W   [   s   t   a   c
0024300    k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k    
0024320    _       s   t   a   c   k   .   r   e   s   t   ;  \r   e   x
0024340    p   c   o   n   d       _       N   A   R   R   O   W   [   s
0024360    t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a
0024400    c   k       _       s   t   a   c   k   .   r   e   s   t   ;
0024420   \r   s   t   a   c   k       _       C   O   N   S   [   B   u
0024440    i   l   d   E   x   p   i   f   t   h   e   n   e   l   s   e
0024460    P   r   o   d   N   o   d   e   [   p   o   s   i   t   i   o
0024500    n   ,       l   e   n   g   t   h   ,       e   x   p   c   o
0024520    n   d   ,       e   x   p   t   h   e   n   p   a   r   t   ,
0024540        e   x   p   e   l   s   e   p   a   r   t   ]   ,       s
0024560    t   a   c   k   ]   ;  \r   R   E   T   U   R   N       [   s
0024600    t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e   e   e
0024620    x   p   s   e   l   e   c   t   :       P   R   O   C       [
0024640    n   o   d   e   s   :       L   I   S   T       O   F       R
0024660    E   F       A   N   Y   ,       p   o   s   i   t   i   o   n
0024700    :       I   N   T   ,       l   e   n   g   t   h   :       I
0024720    N   T   ]  \r  \t   R   E   T   U   R   N   S       [   L   I
0024740    S   T       O   F       R   E   F       A   N   Y   ]       =
0024760   \r   B   E   G   I   N  \r   s   t   a   c   k   :       L   I
0025000    S   T       O   F       R   E   F       A   N   Y       _    
0025020    n   o   d   e   s   ;  \r   c   a   s   e   h   e   a   d   :
0025040        S   e   l   e   c   t   H   e   a   d   N   o   d   e   ;
0025060   \r   c   a   s   e   e   x   p   l   i   s   t   :       S   e
0025100    l   e   c   t   E   x   p   L   i   s   t   N   o   d   e   ;
0025120   \r   e   x   p   :       E   x   p   N   o   d   e   ;  \r   e
0025140    x   p       _       N   A   R   R   O   W   [   s   t   a   c
0025160    k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k    
0025200    _       s   t   a   c   k   .   r   e   s   t   ;  \r   c   a
0025220    s   e   e   x   p   l   i   s   t       _       N   A   R   R
0025240    O   W   [   s   t   a   c   k   .   f   i   r   s   t   ]   ;
0025260   \r   s   t   a   c   k       _       s   t   a   c   k   .   r
0025300    e   s   t   ;  \r   c   a   s   e   h   e   a   d       _    
0025320    N   A   R   R   O   W   [   s   t   a   c   k   .   f   i   r
0025340    s   t   ]   ;  \r   s   t   a   c   k       _       s   t   a
0025360    c   k   .   r   e   s   t   ;  \r   s   t   a   c   k       _
0025400        C   O   N   S   [   B   u   i   l   d   E   x   p   s   e
0025420    l   e   c   t   P   r   o   d   N   o   d   e   [   p   o   s
0025440    i   t   i   o   n   ,       l   e   n   g   t   h   ,       c
0025460    a   s   e   h   e   a   d   ,       c   a   s   e   e   x   p
0025500    l   i   s   t   ,       e   x   p   ]   ,       s   t   a   c
0025520    k   ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c
0025540    k   ]  \r   E   N   D   ;  \r  \r   S   e   e   e   x   p   a
0025560    s   s   i   g   n   :       P   R   O   C       [   n   o   d
0025600    e   s   :       L   I   S   T       O   F       R   E   F    
0025620    A   N   Y   ,       p   o   s   i   t   i   o   n   :       I
0025640    N   T   ,       l   e   n   g   t   h   :       I   N   T   ]
0025660   \r  \t   R   E   T   U   R   N   S       [   L   I   S   T    
0025700    O   F       R   E   F       A   N   Y   ]       =  \r   B   E
0025720    G   I   N  \r   s   t   a   c   k   :       L   I   S   T    
0025740    O   F       R   E   F       A   N   Y       _       n   o   d
0025760    e   s   ;  \r   l   h   s   :       E   x   p   N   o   d   e
0026000    ;  \r   e   x   p   :       E   x   p   N   o   d   e   ;  \r
0026020    e   x   p       _       N   A   R   R   O   W   [   s   t   a
0026040    c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k
0026060        _       s   t   a   c   k   .   r   e   s   t   ;  \r   l
0026100    h   s       _       N   A   R   R   O   W   [   s   t   a   c
0026120    k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k    
0026140    _       s   t   a   c   k   .   r   e   s   t   ;  \r   s   t
0026160    a   c   k       _       C   O   N   S   [   B   u   i   l   d
0026200    E   x   p   a   s   s   i   g   n   P   r   o   d   N   o   d
0026220    e   [   p   o   s   i   t   i   o   n   ,       l   e   n   g
0026240    t   h   ,       l   h   s   ,       e   x   p   ]   ,       s
0026260    t   a   c   k   ]   ;  \r   R   E   T   U   R   N       [   s
0026300    t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e   e   e
0026320    x   p   m   u   l   t   i   a   s   s   i   g   n   :       P
0026340    R   O   C       [   n   o   d   e   s   :       L   I   S   T
0026360        O   F       R   E   F       A   N   Y   ,       p   o   s
0026400    i   t   i   o   n   :       I   N   T   ,       l   e   n   g
0026420    t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R   N
0026440    S       [   L   I   S   T       O   F       R   E   F       A
0026460    N   Y   ]       =  \r   B   E   G   I   N  \r   s   t   a   c
0026500    k   :       L   I   S   T       O   F       R   E   F       A
0026520    N   Y       _       n   o   d   e   s   ;  \r   e   x   p   l
0026540    i   s   t   :       E   x   p   L   i   s   t   N   o   d   e
0026560    ;  \r   e   x   p   :       E   x   p   N   o   d   e   ;  \r
0026600    e   x   p       _       N   A   R   R   O   W   [   s   t   a
0026620    c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k
0026640        _       s   t   a   c   k   .   r   e   s   t   ;  \r   e
0026660    x   p   l   i   s   t       _       N   A   R   R   O   W   [
0026700    s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t
0026720    a   c   k       _       s   t   a   c   k   .   r   e   s   t
0026740    ;  \r   s   t   a   c   k       _       C   O   N   S   [   B
0026760    u   i   l   d   E   x   p   m   u   l   t   i   a   s   s   i
0027000    g   n   P   r   o   d   N   o   d   e   [   p   o   s   i   t
0027020    i   o   n   ,       l   e   n   g   t   h   ,       e   x   p
0027040    l   i   s   t   ,       e   x   p   ]   ,       s   t   a   c
0027060    k   ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c
0027100    k   ]  \r   E   N   D   ;  \r  \r   S   e   e   e   x   p   e
0027120    r   r   o   r   :       P   R   O   C       [   n   o   d   e
0027140    s   :       L   I   S   T       O   F       R   E   F       A
0027160    N   Y   ,       p   o   s   i   t   i   o   n   :       I   N
0027200    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0027220   \t   R   E   T   U   R   N   S       [   L   I   S   T       O
0027240    F       R   E   F       A   N   Y   ]       =  \r   B   E   G
0027260    I   N  \r   s   t   a   c   k   :       L   I   S   T       O
0027300    F       R   E   F       A   N   Y       _       n   o   d   e
0027320    s   ;  \r   s   t   a   c   k       _       C   O   N   S   [
0027340    B   u   i   l   d   E   x   p   e   r   r   o   r   P   r   o
0027360    d   N   o   d   e   [   p   o   s   i   t   i   o   n   ,    
0027400    l   e   n   g   t   h   ]   ,       s   t   a   c   k   ]   ;
0027420   \r   R   E   T   U   R   N       [   s   t   a   c   k   ]  \r
0027440    E   N   D   ;  \r  \r   S   e   e   e   x   p   t   r   a   n
0027460    s   f   e   r   :       P   R   O   C       [   n   o   d   e
0027500    s   :       L   I   S   T       O   F       R   E   F       A
0027520    N   Y   ,       p   o   s   i   t   i   o   n   :       I   N
0027540    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0027560   \t   R   E   T   U   R   N   S       [   L   I   S   T       O
0027600    F       R   E   F       A   N   Y   ]       =  \r   B   E   G
0027620    I   N  \r   s   t   a   c   k   :       L   I   S   T       O
0027640    F       R   E   F       A   N   Y       _       n   o   d   e
0027660    s   ;  \r   t   r   a   n   s   f   e   r   o   p   :       T
0027700    r   a   n   s   f   e   r   O   p   N   o   d   e   ;  \r   l
0027720    h   s   :       E   x   p   N   o   d   e   ;  \r   l   h   s
0027740        _       N   A   R   R   O   W   [   s   t   a   c   k   .
0027760    f   i   r   s   t   ]   ;  \r   s   t   a   c   k       _    
0030000    s   t   a   c   k   .   r   e   s   t   ;  \r   t   r   a   n
0030020    s   f   e   r   o   p       _       N   A   R   R   O   W   [
0030040    s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t
0030060    a   c   k       _       s   t   a   c   k   .   r   e   s   t
0030100    ;  \r   s   t   a   c   k       _       C   O   N   S   [   B
0030120    u   i   l   d   E   x   p   t   r   a   n   s   f   e   r   P
0030140    r   o   d   N   o   d   e   [   p   o   s   i   t   i   o   n
0030160    ,       l   e   n   g   t   h   ,       t   r   a   n   s   f
0030200    e   r   o   p   ,       l   h   s   ]   ,       s   t   a   c
0030220    k   ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c
0030240    k   ]  \r   E   N   D   ;  \r  \r   S   e   e   e   x   p   d
0030260    i   s   j   u   n   c   t   :       P   R   O   C       [   n
0030300    o   d   e   s   :       L   I   S   T       O   F       R   E
0030320    F       A   N   Y   ,       p   o   s   i   t   i   o   n   :
0030340        I   N   T   ,       l   e   n   g   t   h   :       I   N
0030360    T   ]  \r  \t   R   E   T   U   R   N   S       [   L   I   S
0030400    T       O   F       R   E   F       A   N   Y   ]       =  \r
0030420    B   E   G   I   N  \r   s   t   a   c   k   :       L   I   S
0030440    T       O   F       R   E   F       A   N   Y       _       n
0030460    o   d   e   s   ;  \r   d   i   s   j   u   n   c   t   :    
0030500    E   x   p   N   o   d   e   ;  \r   d   i   s   j   u   n   c
0030520    t       _       N   A   R   R   O   W   [   s   t   a   c   k
0030540    .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k       _
0030560        s   t   a   c   k   .   r   e   s   t   ;  \r   s   t   a
0030600    c   k       _       C   O   N   S   [   d   i   s   j   u   n
0030620    c   t   ,       s   t   a   c   k   ]   ;  \r   R   E   T   U
0030640    R   N       [   s   t   a   c   k   ]  \r   E   N   D   ;  \r
0030660   \r   S   e   e   c   a   s   e   e   x   p   l   i   s   t   e
0030700    m   p   t   y   :       P   R   O   C       [   n   o   d   e
0030720    s   :       L   I   S   T       O   F       R   E   F       A
0030740    N   Y   ,       p   o   s   i   t   i   o   n   :       I   N
0030760    T   ,       l   e   n   g   t   h   :       I   N   T   ]  \r
0031000   \t   R   E   T   U   R   N   S       [   L   I   S   T       O
0031020    F       R   E   F       A   N   Y   ]       =  \r   B   E   G
0031040    I   N  \r   s   t   a   c   k   :       L   I   S   T       O
0031060    F       R   E   F       A   N   Y       _       n   o   d   e
0031100    s   ;  \r   s   t   a   c   k       _       C   O   N   S   [
0031120    B   u   i   l   d   S   e   l   e   c   t   E   x   p   L   i
0031140    s   t   e   m   p   t   y   P   r   o   d   N   o   d   e   [
0031160    p   o   s   i   t   i   o   n   ,       l   e   n   g   t   h
0031200    ]   ,       s   t   a   c   k   ]   ;  \r   R   E   T   U   R
0031220    N       [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r
0031240    S   e   e   c   a   s   e   e   x   p   l   i   s   t   b   :
0031260        P   R   O   C       [   n   o   d   e   s   :       L   I
0031300    S   T       O   F       R   E   F       A   N   Y   ,       p
0031320    o   s   i   t   i   o   n   :       I   N   T   ,       l   e
0031340    n   g   t   h   :       I   N   T   ]  \r  \t   R   E   T   U
0031360    R   N   S       [   L   I   S   T       O   F       R   E   F
0031400        A   N   Y   ]       =  \r   B   E   G   I   N  \r   s   t
0031420    a   c   k   :       L   I   S   T       O   F       R   E   F
0031440        A   N   Y       _       n   o   d   e   s   ;  \r   c   a
0031460    s   e   e   x   p   l   i   s   t   P   :       S   e   l   e
0031500    c   t   E   x   p   L   i   s   t   N   o   d   e   ;  \r   c
0031520    a   s   e   e   x   p   l   i   s   t   P       _       N   A
0031540    R   R   O   W   [   s   t   a   c   k   .   f   i   r   s   t
0031560    ]   ;  \r   s   t   a   c   k       _       s   t   a   c   k
0031600    .   r   e   s   t   ;  \r   s   t   a   c   k       _       C
0031620    O   N   S   [   c   a   s   e   e   x   p   l   i   s   t   P
0031640    ,       s   t   a   c   k   ]   ;  \r   R   E   T   U   R   N
0031660        [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S
0031700    e   e   c   a   s   e   e   x   p   l   i   s   t   c   :    
0031720    P   R   O   C       [   n   o   d   e   s   :       L   I   S
0031740    T       O   F       R   E   F       A   N   Y   ,       p   o
0031760    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0032000    g   t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R
0032020    N   S       [   L   I   S   T       O   F       R   E   F    
0032040    A   N   Y   ]       =  \r   B   E   G   I   N  \r   s   t   a
0032060    c   k   :       L   I   S   T       O   F       R   E   F    
0032100    A   N   Y       _       n   o   d   e   s   ;  \r   c   a   s
0032120    e   e   x   p   l   i   s   t   P   :       S   e   l   e   c
0032140    t   E   x   p   L   i   s   t   N   o   d   e   ;  \r   c   a
0032160    s   e   e   x   p   l   i   s   t   P       _       N   A   R
0032200    R   O   W   [   s   t   a   c   k   .   f   i   r   s   t   ]
0032220    ;  \r   s   t   a   c   k       _       s   t   a   c   k   .
0032240    r   e   s   t   ;  \r   s   t   a   c   k       _       C   O
0032260    N   S   [   c   a   s   e   e   x   p   l   i   s   t   P   ,
0032300        s   t   a   c   k   ]   ;  \r   R   E   T   U   R   N    
0032320    [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S   e
0032340    e   c   a   s   e   e   x   p   l   i   s   t   P   a   :    
0032360    P   R   O   C       [   n   o   d   e   s   :       L   I   S
0032400    T       O   F       R   E   F       A   N   Y   ,       p   o
0032420    s   i   t   i   o   n   :       I   N   T   ,       l   e   n
0032440    g   t   h   :       I   N   T   ]  \r  \t   R   E   T   U   R
0032460    N   S       [   L   I   S   T       O   F       R   E   F    
0032500    A   N   Y   ]       =  \r   B   E   G   I   N  \r   s   t   a
0032520    c   k   :       L   I   S   T       O   F       R   E   F    
0032540    A   N   Y       _       n   o   d   e   s   ;  \r   c   a   s
0032560    e   e   x   p   i   t   e   m   :       S   e   l   e   c   t
0032600    E   x   p   I   t   e   m   N   o   d   e   ;  \r   c   a   s
0032620    e   e   x   p   i   t   e   m       _       N   A   R   R   O
0032640    W   [   s   t   a   c   k   .   f   i   r   s   t   ]   ;  \r
0032660    s   t   a   c   k       _       s   t   a   c   k   .   r   e
0032700    s   t   ;  \r   s   t   a   c   k       _       C   O   N   S
0032720    [   B   u   i   l   d   S   e   l   e   c   t   E   x   p   L
0032740    i   s   t   m   o   r   e   P   r   o   d   N   o   d   e   [
0032760    p   o   s   i   t   i   o   n   ,       l   e   n   g   t   h
0033000    ,       B   u   i   l   d   S   e   l   e   c   t   E   x   p
0033020    L   i   s   t   e   m   p   t   y   P   r   o   d   N   o   d
0033040    e   [   c   a   s   e   e   x   p   i   t   e   m   .   p   o
0033060    s   i   t   i   o   n   ,       c   a   s   e   e   x   p   i
0033100    t   e   m   .   p   o   s   i   t   i   o   n       -       c
0033120    a   s   e   e   x   p   i   t   e   m   .   l   e   n   g   t
0033140    h   ]   ,       c   a   s   e   e   x   p   i   t   e   m   ]
0033160    ,       s   t   a   c   k   ]   ;  \r   R   E   T   U   R   N
0033200        [   s   t   a   c   k   ]  \r   E   N   D   ;  \r  \r   S
0033220    e   e   c   a   s   e   e   x   p   l   i   s   t   P   b   :
0033240        P   R   O   C       [   n   o   d   e   s   :       L   I
0033260    S   T       O   F       R   E   F       A   N   Y   ,       p
0033300    o   s   i   t   i   o   n   :       I   N   T   ,       l   e
0033320    n   g   t   h   :       I   N   T   ]  \r  \t   R   E   T   U
0033340    R   N   S       [   L   I   S   T       O   F       R   E   F
0033360        A   N   Y   ]       =  \r   B   E   G   I   N  \r   s   t
0033400    a   c   k   :       L   I   S   T       O   F       R   E   F
0033420        A   N   Y       _       n   o   d   e   s   ;  \r   c   a
0033440    s   e   e   x   p   l   i   s   t   P   :       S   e   l   e
0033460    c   t   E   x   p   L   i   s   t   N   o   d   e   ;  \r   c
0033500    a   s   e   e   x   p   i   t   e   m   :       S   e   l   e
0033520    c   t   E   x   p   I   t   e   m   N   o   d   e   ;  \r   c
0033540    a   s   e   e   x   p   i   t   e   m       _       N   A   R
0033560    R   O   W   [   s   t   a   c   k   .   f   i   r   s   t   ]
0033600    ;  \r   s   t   a   c   k       _       s   t   a   c   k   .
0033620    r   e   s   t   ;  \r   c   a   s   e   e   x   p   l   i   s
0033640    t   P       _       N   A   R   R   O   W   [   s   t   a   c
0033660    k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c   k    
0033700    _       s   t   a   c   k   .   r   e   s   t   ;  \r   s   t
0033720    a   c   k       _       C   O   N   S   [   B   u   i   l   d
0033740    S   e   l   e   c   t   E   x   p   L   i   s   t   m   o   r
0033760    e   P   r   o   d   N   o   d   e   [   p   o   s   i   t   i
0034000    o   n   ,       l   e   n   g   t   h   ,       c   a   s   e
0034020    e   x   p   l   i   s   t   P   ,       c   a   s   e   e   x
0034040    p   i   t   e   m   ]   ,       s   t   a   c   k   ]   ;  \r
0034060    R   E   T   U   R   N       [   s   t   a   c   k   ]  \r   E
0034100    N   D   ;  \r  \r   S   e   e   c   a   s   e   e   x   p   i
0034120    t   e   m   :       P   R   O   C       [   n   o   d   e   s
0034140    :       L   I   S   T       O   F       R   E   F       A   N
0034160    Y   ,       p   o   s   i   t   i   o   n   :       I   N   T
0034200    ,       l   e   n   g   t   h   :       I   N   T   ]  \r  \t
0034220    R   E   T   U   R   N   S       [   L   I   S   T       O   F
0034240        R   E   F       A   N   Y   ]       =  \r   B   E   G   I
0034260    N  \r   s   t   a   c   k   :       L   I   S   T       O   F
0034300        R   E   F       A   N   Y       _       n   o   d   e   s
0034320    ;  \r   c   a   s   e   l   a   b   e   l   :       S   e   l
0034340    e   c   t   L   a   b   e   l   N   o   d   e   ;  \r   e   x
0034360    p   :       E   x   p   N   o   d   e   ;  \r   e   x   p    
0034400    _       N   A   R   R   O   W   [   s   t   a   c   k   .   f
0034420    i   r   s   t   ]   ;  \r   s   t   a   c   k       _       s
0034440    t   a   c   k   .   r   e   s   t   ;  \r   c   a   s   e   l
0034460    a   b   e   l       _       N   A   R   R   O   W   [   s   t
0034500    a   c   k   .   f   i   r   s   t   ]   ;  \r   s   t   a   c
0034520    k       _       s   t   a   c   k   .   r   e   s   t   ;  \r
0034540    s   t   a   c   k       _       C   O   N   S   [   B   u   i
0034560    l   d   S   e   l   e   c   t   E   x   p   I   t   e   m   P
0034600    r   o   d   N   o   d   e   [   p   o   s   i   t   i   o   n
0034620    ,       l   e   n   g   t   h   ,       c   a   s   e   l   a
0034640    b   e   l   ,       e   x   p   ]   ,       s   t   a   c   k
0034660    ]   ;  \r   R   E   T   U   R   N       [   s   t   a   c   k
0034700    ]  \r   E   N   D   ;  \r  \r   E   N   D   .   .  \r        
0034716