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