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