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