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