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