$ od -c -N 50000 [eris]<LispCore>LIBRARY>DO-TEST!42
0000000    (   D   E   F   I   N   E   -   F   I   L   E   -   I   N   F
0000020    O     247   R   E   A   D   T   A   B   L   E       "   x   c
0000040    l   "     247   P   A   C   K   A   G   E       (   D   E   F
0000060    P   A   C   K   A   G   E       "   X   C   L   -   T   E   S
0000100    T   "       ( 247   U   S   E       "   L   I   S   P   "   )
0000120    )   )  \r 006 001   (   i   l   :   f   i   l   e   c   r   e
0000140    a   t   e   d       "   3   0   -   O   c   t   -   8   6    
0000160    1   8   :   1   0   :   0   0   "     006 004   i   l   :   {
0000200    e   r   i   s   }   <   l   i   s   p   c   o   r   e   >   l
0000220    i   b   r   a   r   y   >   d   o   -   t   e   s   t   .   \
0000240    ;   4   2 006 001       1   2   7   4   3          \r  \r    
0000260                        i   l   :   |   c   h   a   n   g   e   s
0000300    |       i   l   :   |   t   o   :   |           (   i   l   :
0000320    v   a   r   s       i   l   :   d   o   -   t   e   s   t   c
0000340    o   m   s   )  \r                                            
0000360                                                                 
0000400            (   i   l   :   p   r   o   p   s       (   i   l   :
0000420    d   o   -   t   e   s   t       i   l   :   m   a   k   e   f
0000440    i   l   e   -   e   n   v   i   r   o   n   m   e   n   t   )
0000460    )  \r                                                        
0000500                                                                (
0000520    i   l   :   f   u   n   c   t   i   o   n   s       d   o   -
0000540    t   e   s   t   -   l   i   s   t   )  \r  \r                
0000560            i   l   :   |   p   r   e   v   i   o   u   s   |    
0000600    i   l   :   |   d   a   t   e   :   |       "   2   8   -   O
0000620    c   t   -   8   6       1   6   :   3   6   :   4   4   "    
0000640    i   l   :   {   e   r   i   s   }   <   l   i   s   p   c   o
0000660    r   e   >   l   i   b   r   a   r   y   >   d   o   -   t   e
0000700    s   t   .   \   ;   4   0   )  \r  \r  \r   ;       C   o   p
0000720    y   r   i   g   h   t       (   c   )       1   9   8   6    
0000740    b   y       X   e   r   o   x       C   o   r   p   o   r   a
0000760    t   i   o   n   .           A   l   l       r   i   g   h   t
0001000    s       r   e   s   e   r   v   e   d   .  \r  \r   (   i   l
0001020    :   p   r   e   t   t   y   c   o   m   p   r   i   n   t    
0001040    i   l   :   d   o   -   t   e   s   t   c   o   m   s   )  \r
0001060   \r   (   i   l   :   r   p   a   q   q     006 002   i   l   :
0001100    d   o   -   t   e   s   t   c   o   m   s 006 001      \r    
0001120                                        (   (   i   l   :   f   u
0001140    n   c   t   i   o   n   s       d   o   -   t   e   s   t    
0001160    d   o   -   t   e   s   t   -   g   r   o   u   p       t   e
0001200    s   t   -   d   e   f   m   a   c   r   o       t   e   s   t
0001220    -   d   e   f   u   n       t   e   s   t   -   s   e   t   q
0001240       \r                                                        
0001260                    w   i   t   h   o   u   t   -   b   a   t   c
0001300    h   -   m   o   d   e   -   e   r   r   o   r   s       e   x
0001320    p   e   c   t   -   e   r   r   o   r   s       d   o   -   a
0001340    l   l   -   t   e   s   t   s       c   u   r   r   e   n   t
0001360    -   f   i   l   e   -   n   a   m   e       c   l   -   r   e
0001400    a   d   f   i   l   e      \r                                
0001420                                            d   o   -   t   e   s
0001440    t   -   f   i   l   e       d   o   -   t   e   s   t   -   l
0001460    i   s   t   )  \r                                            
0001500    (   i   l   :   v   a   r   i   a   b   l   e   s       *   a
0001520    n   y   -   e   r   r   o   r   s   *       *   t   e   s   t
0001540    -   c   l   e   a   n   u   p   -   f   o   r   m   s   *    
0001560    *   t   e   s   t   -   c   o   m   p   i   l   e   *       *
0001600    t   e   s   t   -   m   o   d   e   *      \r                
0001620                                                            *   t
0001640    e   s   t   -   b   a   t   c   h   -   r   e   s   u   l   t
0001660    s   *       *   t   e   s   t   -   f   i   l   e   -   p   a
0001700    t   t   e   r   n   *       *   t   e   s   t   -   f   i   l
0001720    e   -   n   a   m   e   *   )  \r                            
0001740                    (   i   l   :   p       (   i   l   :   d   e
0001760    f   p   a   c   k   a   g   e       "   X   C   L   -   T   E
0002000    S   T   "  \r                                                
0002020                                                    (   :   e   x
0002040    p   o   r   t       d   o   -   t   e   s   t       d   o   -
0002060    t   e   s   t   -   g   r   o   u   p       e   x   p   e   c
0002100    t   -   e   r   r   o   r   s       t   e   s   t   -   d   e
0002120    f   u   n       t   e   s   t   -   d   e   f   m   a   c   r
0002140    o      \r                                                    
0002160                                                                 
0002200            t   e   s   t   -   s   e   t   q       d   o   -   a
0002220    l   l   -   t   e   s   t   s       c   l   -   r   e   a   d
0002240    f   i   l   e       d   o   -   t   e   s   t   -   f   i   l
0002260    e       *   t   e   s   t   -   m   o   d   e   *      \r    
0002300                                                                 
0002320                                                            *   t
0002340    e   s   t   -   b   a   t   c   h   -   r   e   s   u   l   t
0002360    s   *       *   t   e   s   t   -   c   o   m   p   i   l   e
0002400    *       *   t   e   s   t   -   f   i   l   e   -   p   a   t
0002420    t   e   r   n   *   )   )   )  \r                            
0002440                    (   i   l   :   p   r   o   p       (   i   l
0002460    :   m   a   k   e   f   i   l   e   -   e   n   v   i   r   o
0002500    n   m   e   n   t       i   l   :   f   i   l   e   t   y   p
0002520    e   )  \r                                                    
0002540                        i   l   :   d   o   -   t   e   s   t   )
0002560    )   )  \r   (   d   e   f   m   a   c   r   o     006 002   d
0002600    o   -   t   e   s   t 006 001       (   i   l   :   n   a   m
0002620    e   -   a   n   d   -   o   p   t   i   o   n   s       &   b
0002640    o   d   y       i   l   :   b   o   d   y   )  \r            
0002660    (   l   e   t       (   (   i   l   :   n   a   m   e       n
0002700    i   l   )  \r                                       (   i   l
0002720    :   o   p   t   i   o   n   s       n   i   l   )   )  \r    
0002740                                (   c   o   n   d  \r            
0002760                                    (   (   c   o   n   s   p    
0003000    i   l   :   n   a   m   e   -   a   n   d   -   o   p   t   i
0003020    o   n   s   )  \r                                            
0003040        (   s   e   t   q       i   l   :   n   a   m   e       (
0003060    c   a   r       i   l   :   n   a   m   e   -   a   n   d   -
0003100    o   p   t   i   o   n   s   )   )  \r                        
0003120                            (   s   e   t   q       i   l   :   o
0003140    p   t   i   o   n   s       (   c   d   r       i   l   :   n
0003160    a   m   e   -   a   n   d   -   o   p   t   i   o   n   s   )
0003200    )   )  \r                                               (   t
0003220        (   s   e   t   q       i   l   :   n   a   m   e       i
0003240    l   :   n   a   m   e   -   a   n   d   -   o   p   t   i   o
0003260    n   s   )   )   )  \r                                   (   i
0003300    f       (   e   q       *   t   e   s   t   -   m   o   d   e
0003320    *       :   i   n   t   e   r   a   c   t   i   v   e   )  \r
0003340                                                    (   f   o   r
0003360    m   a   t       *   e   r   r   o   r   -   o   u   t   p   u
0003400    t   *       "   T   e   s   t   i   n   g   .   .   .       ~
0003420    S   ~   %   "       i   l   :   n   a   m   e   )   )  \r    
0003440                                `   (   n   o   t       (   w   h
0003460    e   n       (   n   u   l   l       (   w   i   t   h   o   u
0003500    t   -   b   a   t   c   h   -   m   o   d   e   -   e   r   r
0003520    o   r   s       ,   @   i   l   :   b   o   d   y   )   )  \r
0003540                                                                 
0003560                    (   f   o   r   m   a   t       *   e   r   r
0003600    o   r   -   o   u   t   p   u   t   *       "   T   e   s   t
0003620        \   "   ~   A   \   "       f   a   i   l   e   d       i
0003640    n       f   i   l   e       \   "   ~   A   \   "   ~   %   "
0003660        '   ,   i   l   :   n   a   m   e       (  \r            
0003700                                                                 
*
0004020        c   u   r   r   e   n   t   -   f   i   l   e   -   n   a
0004040    m   e  \r                                                    
0004060                                                                 
*
0004160                                                                )
0004200    )  \r                                                        
0004220                            (   i   l   :   s   e   t   q       *
0004240    a   n   y   -   e   r   r   o   r   s   *       t   )   )   )
0004260    )   )  \r  \r   (   d   e   f   m   a   c   r   o     006 002
0004300    d   o   -   t   e   s   t   -   g   r   o   u   p 006 001    
0004320    (   i   l   :   n   a   m   e   -   a   n   d   -   o   p   t
0004340    i   o   n   s       &   b   o   d   y       i   l   :   b   o
0004360    d   y   )  \r               (   l   e   t       (   (   i   l
0004400    :   n   a   m   e       n   i   l   )  \r                    
0004420                    (   i   l   :   o   p   t   i   o   n   s    
0004440    n   i   l   )   )  \r                                   (   c
0004460    o   n   d  \r                                               (
0004500    (   c   o   n   s   p       i   l   :   n   a   m   e   -   a
0004520    n   d   -   o   p   t   i   o   n   s   )  \r                
0004540                                    (   s   e   t   q       i   l
0004560    :   n   a   m   e       (   c   a   r       i   l   :   n   a
0004600    m   e   -   a   n   d   -   o   p   t   i   o   n   s   )   )
0004620   \r                                                   (   s   e
0004640    t   q       i   l   :   o   p   t   i   o   n   s       (   c
0004660    d   r       i   l   :   n   a   m   e   -   a   n   d   -   o
0004700    p   t   i   o   n   s   )   )   )  \r                        
0004720                        (   t       (   s   e   t   q       i   l
0004740    :   n   a   m   e       i   l   :   n   a   m   e   -   a   n
0004760    d   -   o   p   t   i   o   n   s   )   )   )                
0005000                              006 003   (   i   l   :   *      \r
0005020  006 001                                                        
0005040                                                                 
0005060          006 003   "   H   a   c   k   :       f   i   n   d    
0005100    :   B   E   F   O   R   E       a   n   d       :   A   F   T
0005120    E   R       c   l   a   u   s   e   s       i   n       t   h
0005140    e       b   o   d   y       a   n   d       m   o   v   e    
0005160    t   h   e   m       o   u   t   "   ) 006 001  \r            
0005200                        (   l   o   o   p       (   i   f       (
0005220    a   n   d       (   s   y   m   b   o   l   p       (   c   a
0005240    r       i   l   :   b   o   d   y   )   )  \r                
0005260                                                                 
0005300                (   o   r       (   e   q       (   c   a   r    
0005320    i   l   :   b   o   d   y   )  \r                            
0005340                                                                 
0005360                                    :   b   e   f   o   r   e   )
0005400   \r                                                            
0005420                                                    (   e   q    
0005440    (   c   a   r       i   l   :   b   o   d   y   )  \r        
0005460                                                                 
0005500                                                        :   a   f
0005520    t   e   r   )   )   )  \r                                    
0005540                                        (   p   r   o   g   n    
0005560    (   i   l   :   s   e   t   q       i   l   :   o   p   t   i
0005600    o   n   s       (   i   l   :   a   p   p   e   n   d       i
0005620    l   :   o   p   t   i   o   n   s       (   l   i   s   t    
0005640    (   c   a   r       i   l   :   b   o   d   y   )  \r        
0005660                                                                 
*
0005760                                (   c   a   d   r       i   l   :
0006000    b   o   d   y   )   )   )   )  \r                            
0006020                                                                 
0006040            (   i   l   :   s   e   t   q       i   l   :   b   o
0006060    d   y       (   c   d   d   r       i   l   :   b   o   d   y
0006100    )   )   )  \r                                                
0006120                            (   r   e   t   u   r   n       n   i
0006140    l   )   )   )  \r                                   `   (   l
0006160    e   t       (   (   *   t   e   s   t   -   c   l   e   a   n
0006200    u   p   -   f   o   r   m   s   *       n   i   l   )   )  \r
0006220                                                            (   b
0006240    l   o   c   k       ,   i   l   :   n   a   m   e       ,   (
0006260    i   f       (   e   q       *   t   e   s   t   -   m   o   d
0006300    e   *       :   i   n   t   e   r   a   c   t   i   v   e   )
0006320   \r                                                            
0006340                                                                 
0006360                    (   f   o   r   m   a   t       *   e   r   r
0006400    o   r   -   o   u   t   p   u   t   *       "   T   e   s   t
0006420    i   n   g   .   .   .       ~   S   ~   %   "       i   l   :
0006440    n   a   m   e   )   )  \r                                    
0006460                                                    ,   (   l   e
0006500    t       (   (   i   l   :   b   e   f   o   r   e       (   g
0006520    e   t   f       i   l   :   o   p   t   i   o   n   s       :
0006540    b   e   f   o   r   e   )   )   )  \r                        
0006560                                                                 
0006600                        (   i   f       i   l   :   b   e   f   o
0006620    r   e       `   (   w   h   e   n       (   n   u   l   l    
0006640    (   w   i   t   h   o   u   t   -   b   a   t   c   h   -   m
0006660    o   d   e   -   e   r   r   o   r   s       ,   i   l   :   b
0006700    e   f   o   r   e       t   )   )  \r                        
0006720                                                                 
*
0006760                                            (   f   o   r   m   a
0007000    t       *   e   r   r   o   r   -   o   u   t   p   u   t   *
0007020       \r                                                        
0007040                                                                 
*
0007100                        "   :   B   E   F   O   R   E       f   o
0007120    r   m   s       f   o   r       t   e   s   t       \   "   ~
0007140    A   \   "       i   n       f   i   l   e       ~   S       f
0007160    a   i   l   e   d   .   "  \r                                
0007200                                                                 
*
0007240                                                                '
0007260    ,   i   l   :   n   a   m   e  \r                            
0007300                                                                 
*
0007360    (   c   u   r   r   e   n   t   -   f   i   l   e   -   n   a
0007400    m   e   )   )  \r                                            
0007420                                                                 
*
0007460                        (   i   l   :   s   e   t   q       *   a
0007500    n   y   -   e   r   r   o   r   s   *       t   )  \r        
0007520                                                                 
*
0007560                                                            (   r
0007600    e   t   u   r   n   -   f   r   o   m       ,   i   l   :   n
0007620    a   m   e   )   )   )   )  \r                                
0007640                                                        ,   @   (
0007660  006 002   i   l   :   |   f   o   r   | 006 001       i   l   :
0007700    b     006 002   i   l   :   |   i   n   | 006 001       i   l
0007720    :   b   o   d   y  \r                                        
0007740                                                                 
0007760  006 002   i   l   :   |   j   o   i   n   | 006 001       ( 006
0010000  002   i   l   :   |   i   f   | 006 001       (   a   n   d    
0010020    (   c   o   n   s   p       i   l   :   b   )  \r            
0010040                                                                 
*
0010100                                                                (
0010120    e   q       (   c   a   r       i   l   :   b   )  \r        
0010140                                                                 
*
0010220                    '   d   o   -   t   e   s   t   )   )  \r    
0010240                                                                 
*
0010300                              006 002   i   l   :   |   t   h   e
0010320    n   | 006 001       (   l   i   s   t       i   l   :   b   )
0010340   \r                                                            
0010360                                                                 
0010400                              006 002   i   l   :   |   e   l   s
0010420    e   | 006 001       (   f   o   r   m   a   t       *   e   r
0010440    r   o   r   -   o   u   t   p   u   t   *      \r            
0010460                                                                 
*
0010540                    "   N   o   n       D   O   -   T   E   S   T
0010560        f   o   r   m       i   n       ~   S       i   n       ~
0010600    S   ~   %   ~   S   ~   %   "       i   l   :   n   a   m   e
0010620   \r                                                            
0010640                                                                 
*
0010700                                    (   c   u   r   r   e   n   t
0010720    -   f   i   l   e   -   n   a   m   e   )  \r                
0010740                                                                 
*
0011020                i   l   :   b   )   )   )  \r                    
0011040                                                                 
0011060    ,   (   l   e   t       (   (   i   l   :   a   f   t   e   r
0011100        (   g   e   t   f       i   l   :   o   p   t   i   o   n
0011120    s       :   a   f   t   e   r   )   )   )  \r                
0011140                                                                 
0011160                                (   i   f       i   l   :   a   f
0011200    t   e   r       `   (   w   h   e   n       (   n   u   l   l
0011220        (   w   i   t   h   o   u   t   -   b   a   t   c   h   -
0011240    m   o   d   e   -   e   r   r   o   r   s       ,   i   l   :
0011260    a   f   t   e   r       t   )   )  \r                        
0011300                                                                 
*
0011340                                        (   f   o   r   m   a   t
0011360        *   e   r   r   o   r   -   o   u   t   p   u   t   *    
0011400   \r                                                            
0011420                                                                 
*
0011460                        "   :   A   F   T   E   R       f   o   r
0011500    m   s       f   o   r       t   e   s   t       \   "   ~   A
0011520    \   "       i   n       f   i   l   e       ~   S       f   a
0011540    i   l   e   d   .   "  \r                                    
0011560                                                                 
*
0011620                                                        '   ,   i
0011640    l   :   n   a   m   e  \r                                    
0011660                                                                 
*
0011720                                                        (   c   u
0011740    r   r   e   n   t   -   f   i   l   e   -   n   a   m   e   )
0011760    )  \r                                                        
0012000                                                                 
*
0012040        (   i   l   :   s   e   t   q       *   a   n   y   -   e
0012060    r   r   o   r   s   *       t   )   )   )   )   )  \r        
0012100                                                    (   i   l   :
0012120    e   v   a   l       (   c   o   n   s       '   p   r   o   g
0012140    n       *   t   e   s   t   -   c   l   e   a   n   u   p   -
0012160    f   o   r   m   s   *   )   )  \r                            
0012200                                n   i   l   )   )   )  \r  \r   (
0012220    d   e   f   m   a   c   r   o     006 002   t   e   s   t   -
0012240    d   e   f   m   a   c   r   o 006 001       (   i   l   :   n
0012260    a   m   e       &   r   e   s   t       i   l   :   s   t   u
0012300    f   f   )  \r               (   i   f       (   f   b   o   u
0012320    n   d   p       i   l   :   n   a   m   e   )  \r            
0012340                    (   i   f       (   m   a   c   r   o   -   f
0012360    u   n   c   t   i   o   n       i   l   :   n   a   m   e   )
0012400   \r                                               (   p   u   s
0012420    h       `   (   s   e   t   f       (   s   y   m   b   o   l
0012440    -   f   u   n   c   t   i   o   n       (   m   a   c   r   o
0012460    -   f   u   n   c   t   i   o   n       '   ,   i   l   :   n
0012500    a   m   e   )   )  \r                                        
0012520                                                            '   ,
0012540    (   s   y   m   b   o   l   -   f   u   n   c   t   i   o   n
0012560        (   m   a   c   r   o   -   f   u   n   c   t   i   o   n
0012600        i   l   :   n   a   m   e   )   )   )       *   t   e   s
0012620    t   -   c   l   e   a   n   u   p   -   f   o   r   m   s   *
0012640    )  \r                                               (   e   r
0012660    r   o   r       "   P   l   e   a   s   e       d   o   n   '
0012700    t       r   e   d   e   f   i   n   e       ~   A       i   n
0012720        a       t   e   s   t       f   o   r   m   "       i   l
0012740    :   n   a   m   e   )   )  \r                               (
0012760    p   u   s   h       `   (   r   e   m   p   r   o   p       '
0013000    ,   i   l   :   n   a   m   e       '   i   l   :   m   a   c
0013020    r   o   -   f   n   )       *   t   e   s   t   -   c   l   e
0013040    a   n   u   p   -   f   o   r   m   s   *   )   )  \r        
0013060        `   (   d   e   f   m   a   c   r   o       ( 006 002   i
0013100    l   :   \   \   \   , 006 001       i   l   :   n   a   m   e
0013120    )       ,   @   i   l   :   s   t   u   f   f       )  \r   )
0013140   \r  \r   (   d   e   f   m   a   c   r   o     006 002   t   e
0013160    s   t   -   d   e   f   u   n 006 001       (   i   l   :   n
0013200    a   m   e       &   r   e   s   t       i   l   :   s   t   u
0013220    f   f   )  \r               (   i   f       (   f   b   o   u
0013240    n   d   p       i   l   :   n   a   m   e   )  \r            
0013260                    (   i   f       (   o   r       (   m   a   c
0013300    r   o   -   f   u   n   c   t   i   o   n       i   l   :   n
0013320    a   m   e   )  \r                                            
0013340                    (   s   p   e   c   i   a   l   -   f   o   r
0013360    m   -   p       i   l   :   n   a   m   e   )   )  \r        
0013400                                        (   e   r   r   o   r    
0013420    "   P   l   e   a   s   e       d   o   n   '   t       r   e
0013440    d   e   f   i   n   e       ~   A       i   n       a       t
0013460    e   s   t       f   o   r   m   "       i   l   :   n   a   m
0013500    e   )  \r                                               (   p
0013520    u   s   h       `   (   s   e   t   f       (   s   y   m   b
0013540    o   l   -   f   u   n   c   t   i   o   n       '   ,   i   l
0013560    :   n   a   m   e   )  \r                                    
0013600                                                                '
0013620    ,   (   s   y   m   b   o   l   -   f   u   n   c   t   i   o
0013640    n       i   l   :   n   a   m   e   )   )       *   t   e   s
0013660    t   -   c   l   e   a   n   u   p   -   f   o   r   m   s   *
0013700    )   )  \r                               (   p   u   s   h    
0013720    `   (   f   m   a   k   u   n   b   o   u   n   d       '   ,
0013740    i   l   :   n   a   m   e   )       *   t   e   s   t   -   c
0013760    l   e   a   n   u   p   -   f   o   r   m   s   *   )   )  \r
0014000                `   (   d   e   f   u   n       ( 006 002   i   l
0014020    :   \   \   \   , 006 001       i   l   :   n   a   m   e   )
0014040        ,   @   i   l   :   s   t   u   f   f       )  \r   )  \r
0014060   \r   (   d   e   f   m   a   c   r   o     006 002   t   e   s
0014100    t   -   s   e   t   q 006 001       (   i   l   :   x       i
0014120    l   :   y       &   r   e   s   t       i   l   :   s   t   u
0014140    f   f   )       (   i   f       (   b   o   u   n   d   p    
0014160    i   l   :   x   )  \r                                        
0014200                                                                 
*
0014240                                        (   p   u   s   h       `
0014260    (   s   e   t   q       ,   i   l   :   x       '   ,   (   s
0014300    y   m   b   o   l   -   v   a   l   u   e       i   l   :   x
0014320    )   )      \r                                                
0014340                                                                 
*
0014400                                                        *   t   e
0014420    s   t   -   c   l   e   a   n   u   p   -   f   o   r   m   s
0014440    *   )  \r                                                    
0014460                                                                 
*
0014520                            (   p   u   s   h       `   (   m   a
0014540    k   u   n   b   o   u   n   d       '   ,   i   l   :   x   )
0014560        *   t   e   s   t   -   c   l   e   a   n   u   p   -   f
0014600    o   r   m   s   *   )   )  \r                                
0014620                                                                 
*
0014660                                (   i   f       i   l   :   s   t
0014700    u   f   f       `   (   p   r   o   g   n       (   s   e   t
0014720    q       ,   i   l   :   x       ,   i   l   :   y   )  \r    
0014740                                                                 
*
0015040                (   t   e   s   t   -   s   e   t   q       ,   @
0015060    i   l   :   s   t   u   f   f   )   )  \r                    
0015100                                                                 
*
0015140                                                            `   (
0015160    s   e   t   q       ,   i   l   :   x       ,   i   l   :   y
0015200    )   )   )  \r  \r   (   d   e   f   m   a   c   r   o     006
0015220  002   w   i   t   h   o   u   t   -   b   a   t   c   h   -   m
0015240    o   d   e   -   e   r   r   o   r   s 006 001       (   &   b
0015260    o   d   y       i   l   :   b   o   d   y   )       (   c   o
0015300    n   d  \r                                                    
0015320                                                                 
*
0015360                                            (   (   e   q       *
0015400    t   e   s   t   -   m   o   d   e   *       :   i   n   t   e
0015420    r   a   c   t   i   v   e   )  \r                            
0015440                                                                 
*
0015520        `   (   p   r   o   g   n       ,   @   i   l   :   b   o
0015540    d   y   )   )  \r                                            
0015560                                                                 
*
0015620                                                    (   t       `
0015640    (   i   l   :   i   g   n   o   r   e   -   e   r   r   o   r
0015660    s       ,   @   i   l   :   b   o   d   y   )   )   )   )  \r
0015700   \r   (   d   e   f   m   a   c   r   o     006 002   e   x   p
0015720    e   c   t   -   e   r   r   o   r   s 006 001       (   i   l
0015740    :   e   r   r   o   r   -   t   y   p   e   s       &   r   e
0015760    s   t       i   l   :   f   o   r   m   s   )       `   (   i
0016000    l   :   c   o   n   d   i   t   i   o   n   -   c   a   s   e
0016020        (   p   r   o   g   n       ,   @   i   l   :   f   o   r
0016040    m   s       n   i   l   )  \r                                
0016060                                                                 
*
0016140                                    (   ,   i   l   :   e   r   r
0016160    o   r   -   t   y   p   e   s       (   i   l   :   c   o   n
0016200    d   i   t   i   o   n   )  \r                                
0016220                                                                 
*
0016300                                                                (
0016320    v   a   l   u   e   s       t       i   l   :   c   o   n   d
0016340    i   t   i   o   n   )   )   )   )  \r  \r   (   d   e   f   u
0016360    n     006 002   d   o   -   a   l   l   -   t   e   s   t   s
0016400  006 001       (   &   k   e   y       (   i   l   :   r   e   s
0016420    u   l   t   s       *   t   e   s   t   -   b   a   t   c   h
0016440    -   r   e   s   u   l   t   s   *   )  \r                    
0016460                                                                 
0016500                        (   i   l   :   p   a   t   t   e   r   n
0016520        *   t   e   s   t   -   f   i   l   e   -   p   a   t   t
0016540    e   r   n   *   )  \r                                        
0016560                                                                 
0016600    (   i   l   :   s   y   s   o   u   t   -   t   y   p   e    
0016620    n   i   l   )   )       (   w   i   t   h   -   o   p   e   n
0016640    -   f   i   l   e       (   *   e   r   r   o   r   -   o   u
0016660    t   p   u   t   *       *   t   e   s   t   -   b   a   t   c
0016700    h   -   r   e   s   u   l   t   s   *      \r                
0016720                                                                 
*
0017020                :   d   i   r   e   c   t   i   o   n       :   o
0017040    u   t   p   u   t       :   i   f   -   e   x   i   s   t   s
0017060       \r                                                        
0017100                                                                 
*
0017160                                        :   n   e   w   -   v   e
0017200    r   s   i   o   n   )  \r                                    
0017220                                                                 
*
0017260                                                            (   f
0017300    o   r   m   a   t       *   e   r   r   o   r   -   o   u   t
0017320    p   u   t   *      \r                                        
0017340                                                                 
*
0017420                    "   ;   ;   ;       T   e   s   t       r   e
0017440    s   u   l   t   s       f   o   r       s   y   s   o   u   t
0017460        o   f       ~   A   ~   %   "      \r                    
0017500                                                                 
*
0017560                                        i   l   :   m   a   k   e
0017600    s   y   s   d   a   t   e   )  \r                            
0017620                                                                 
*
0017700    (   i   f       i   l   :   s   y   s   o   u   t   -   t   y
0017720    p   e       (   i   l   :   f   o   r   m   a   t       *   e
0017740    r   r   o   r   -   o   u   t   p   u   t   *      \r        
0017760                                                                 
*
0020060                                            "   ;   ;   ;       S
0020100    y   s   o   u   t       t   y   p   e       i   s       ~   A
0020120    ~   %   "      \r                                            
0020140                                                                 
*
0020240                            i   l   :   s   y   s   o   u   t   -
0020260    t   y   p   e   )   )  \r                                    
0020300                                                                 
*
0020340                                                            (   f
0020360    o   r   m   a   t       *   e   r   r   o   r   -   o   u   t
0020400    p   u   t   *      \r                                        
0020420                                                                 
*
0020500                    "   ;   ;   ;       T   e   s   t   s       r
0020520    u   n       o   n       ~   A   ~   2   %   "       (   i   l
0020540    :   d   a   t   e   )   )  \r                                
0020560                                                                 
*
0020620                                                                (
0020640  006 002   i   l   :   f   o   r 006 001       i   l   :   f   n
0020660      006 002   i   l   :   i   n 006 001       (   i   l   :   d
0020700    i   r   e   c   t   o   r   y       i   l   :   p   a   t   t
0020720    e   r   n   )  \r                                            
0020740                                                                 
*
0021000                                                              006
0021020  002   i   l   :   d   o 006 001       (   d   o   -   t   e   s
0021040    t   -   f   i   l   e       i   l   :   f   n   )   )  \r    
0021060                                                                 
*
0021140                            (   f   o   r   m   a   t       *   e
0021160    r   r   o   r   -   o   u   t   p   u   t   *       "   (   E
0021200    N   D   -   O   F   -   T   E   S   T   S   )   "   )   )   )
0021220   \r  \r   (   d   e   f   u   n     006 002   c   u   r   r   e
0021240    n   t   -   f   i   l   e   -   n   a   m   e 006 001       n
0021260    i   l       *   t   e   s   t   -   f   i   l   e   -   n   a
0021300    m   e   *   )  \r  \r   (   d   e   f   u   n     006 002   c
0021320    l   -   r   e   a   d   f   i   l   e 006 001       (   i   l
0021340    :   t   e   s   t   -   f   i   l   e       &   o   p   t   i
0021360    o   n   a   l       (   *   r   e   a   d   t   a   b   l   e
0021400    *       i   l   :   c   m   l   r   d   t   b   l   )  \r    
0021420                                                                 
0021440                                        (   i   l   :   e   n   d
0021460    t   o   k   e   n       "   S   T   O   P   "   )   )     006
0021500  003 006 001                                                    
0021520  006 003   (   i   l   :   *       i   l   :   |   P   a   v   e
0021540    l   |       "   2   3   -   S   e   p   -   8   6       1   2
0021560    :   4   0   "   ) 006 001  \r               ( 006 002   i   l
0021600    :   |   i   f   | 006 001       (   p   r   o   b   e   -   f
0021620    i   l   e       i   l   :   t   e   s   t   -   f   i   l   e
0021640    )  \r                             006 002   i   l   :   |   t
0021660    h   e   n   | 006 001       (   l   e   t       (   i   l   :
0021700    f   o   r   m   s   -   l   i   s   t       i   l   :   t   e
0021720    m       (   *   p   a   c   k   a   g   e   *       (   f   i
0021740    n   d   -   p   a   c   k   a   g   e       "   X   C   L   -
0021760    T   E   S   T   "   )   )   )  \r                            
0022000                                                                (
0022020    w   i   t   h   -   o   p   e   n   -   s   t   r   e   a   m
0022040        (   i   l   :   t   e   s   t   -   f   i   l   e       (
0022060    i   l   :   o   p   e   n   t   e   x   t   s   t   r   e   a
0022100    m       (   i   l   :   m   k   a   t   o   m       i   l   :
0022120    t   e   s   t   -   f   i   l   e   )   )   )  \r            
0022140                                                                 
0022160                                            ( 006 002   i   l   :
0022200    |   u   n   t   i   l   | 006 001       (   o   r       (   n
0022220    u   l   l       (   i   l   :   i   g   n   o   r   e   -   e
0022240    r   r   o   r   s       (   s   e   t   q       i   l   :   t
0022260    e   m       (   r   e   a   d       i   l   :   t   e   s   t
0022300    -   f   i   l   e   )  \r                                    
0022320                                                                 
*
0022420            )   )   )  \r                                        
0022440                                                                 
*
0022500                (   a   n   d       (   s   y   m   b   o   l   p
0022520        i   l   :   t   e   m   )  \r                            
0022540                                                                 
*
0022600                                                (   s   t   r   i
0022620    n   g   =       i   l   :   t   e   m       i   l   :   e   n
0022640    d   t   o   k   e   n   )   )   )  \r                        
0022660                                                                 
0022700                                          006 002   i   l   :   |
0022720    d   o   | 006 001       (   p   u   s   h       i   l   :   t
0022740    e   m       i   l   :   f   o   r   m   s   -   l   i   s   t
0022760    )   )  \r                                                    
0023000                                                                 
0023020    (   n   r   e   v   e   r   s   e       i   l   :   f   o   r
0023040    m   s   -   l   i   s   t   )   )   )  \r                    
0023060  006 002   i   l   :   |   e   l   s   e   | 006 001       (   p
0023100    r   o   g   n       (   f   o   r   m   a   t       *   e   r
0023120    r   o   r   -   o   u   t   p   u   t   *       "   ~   %   C
0023140    o   u   l   d   n   '   t       f   i   n   d       f   i   l
0023160    e       ~   A   ~   %   "       i   l   :   t   e   s   t   -
0023200    f   i   l   e   )  \r                                        
0023220                                                    n   i   l   )
0023240    )   )  \r  \r   (   d   e   f   u   n     006 002   d   o   -
0023260    t   e   s   t   -   f   i   l   e 006 001       (   i   l   :
0023300    f   i   l   e   n   a   m   e   )     006 003 006 001        
0023320                                                                 
0023340                                      006 003   (   i   l   :   *
0023360        i   l   :   |   P   a   v   e   l   |       "   2   3   -
0023400    S   e   p   -   8   6       1   2   :   1   9   "   ) 006 001
0023420   \r               (   l   e   t   *       (   (   *   p   a   c
0023440    k   a   g   e   *       (   f   i   n   d   -   p   a   c   k
0023460    a   g   e       "   u   s   e   r   "   )   )  \r            
0023500                                (   i   l   :   t   e   s   t   -
0023520    f   o   r   m   s       (   c   l   -   r   e   a   d   f   i
0023540    l   e       i   l   :   f   i   l   e   n   a   m   e       i
0023560    l   :   c   m   l   r   d   t   b   l   )   )  \r            
0023600                                (   *   t   e   s   t   -   f   i
0023620    l   e   -   n   a   m   e   *       (   l   e   t       (   (
0023640    i   l   :   p   f       (   p   a   t   h   n   a   m   e    
0023660    i   l   :   f   i   l   e   n   a   m   e   )   )   )  \r    
0023700                                                                 
*
0023740    (   f   o   r   m   a   t       n   i   l       "   ~   A   .
0023760    ~   A   ;   ~   A   "       (   p   a   t   h   n   a   m   e
0024000    -   n   a   m   e       i   l   :   p   f   )  \r            
0024020                                                                 
*
0024060                        (   p   a   t   h   n   a   m   e   -   t
0024100    y   p   e       i   l   :   p   f   )  \r                    
0024120                                                                 
*
0024160                (   p   a   t   h   n   a   m   e   -   v   e   r
0024200    s   i   o   n       i   l   :   p   f   )   )   )   )  \r    
0024220                                        (   *   a   n   y   -   e
0024240    r   r   o   r   s   *       n   i   l   )   )  \r            
0024260                            (   d   o   -   t   e   s   t   -   l
0024300    i   s   t       i   l   :   t   e   s   t   -   f   o   r   m
0024320    s   )  \r                                       ( 006 002   i
0024340    l   :   |   i   f   | 006 001       *   a   n   y   -   e   r
0024360    r   o   r   s   *  \r                                        
0024400              006 002   i   l   :   |   t   h   e   n   | 006 001
0024420        (   t   e   r   p   r   i       *   e   r   r   o   r   -
0024440    o   u   t   p   u   t   *   )   )   )   )  \r  \r   (   d   e
0024460    f   u   n     006 002   d   o   -   t   e   s   t   -   l   i
0024500    s   t 006 001       (   i   l   :   t   e   s   t   -   f   o
0024520    r   m   s       &   o   p   t   i   o   n   a   l       i   l
0024540    :   o   p   t   i   o   n   s       i   l   :   n   a   m   e
0024560    )  \r               (   l   e   t       (   (   i   l   :   d
0024600    f   n   f   l   g       n   i   l   )   )  \r                
0024620                    ( 006 002   i   l   :   |   i   f   | 006 001
0024640        (   n   u   l   l       i   l   :   t   e   s   t   -   f
0024660    o   r   m   s   )  \r                                        
0024700          006 002   i   l   :   |   t   h   e   n   | 006 001    
0024720    (   f   o   r   m   a   t       *   e   r   r   o   r   -   o
0024740    u   t   p   u   t   *       "   ~   %   (   T   r   o   u   b
0024760    l   e       r   e   a   d   i   n   g       ~   A   )   ~   %
0025000    "       (   c   u   r   r   e   n   t   -   f   i   l   e   -
0025020    n   a   m   e   )   )  \r                                    
0025040                                        (   s   e   t   q       *
0025060    a   n   y   -   e   r   r   o   r   s   *       t   )  \r    
0025100                                      006 002   i   l   :   |   e
0025120    l   s   e   | 006 001       ( 006 002   i   l   :   |   f   o
0025140    r   | 006 001       i   l   :   f   o   r   m     006 002   i
0025160    l   :   |   i   n   | 006 001       i   l   :   t   e   s   t
0025200    -   f   o   r   m   s  \r                                    
0025220                                                          006 002
0025240    i   l   :   |   d   o   | 006 001       (   i   f       (   a
0025260    n   d       (   c   o   n   s   p       i   l   :   f   o   r
0025300    m   )  \r                                                    
0025320                                                                 
0025340                                                (   o   r       (
0025360    e   q       (   c   a   r       i   l   :   f   o   r   m   )
0025400   \r                                                            
0025420                                                                 
*
0025460        '   d   o   -   t   e   s   t   )  \r                    
0025500                                                                 
*
0025540                                (   e   q       (   c   a   r    
0025560    i   l   :   f   o   r   m   )  \r                            
0025600                                                                 
*
0025640                                        '   d   o   -   t   e   s
0025660    t   -   g   r   o   u   p   )   )   )  \r                    
0025700                                                                 
0025720                                                            (   i
0025740    f       *   t   e   s   t   -   c   o   m   p   i   l   e   *
0025760        (   f   u   n   c   a   l   l       (   c   o   m   p   i
0026000    l   e   r   :   :   x   c   l   -   c   o   m   p   i   l   e
0026020   \r                                                            
0026040                                                                 
*
0026120        n   i   l  \r                                            
0026140                                                                 
*
0026220                        `   (   l   a   m   b   d   a       n   i
0026240    l       ,   i   l   :   f   o   r   m   )   )   )  \r        
0026260                                                                 
*
0026320                        (   e   v   a   l       i   l   :   f   o
0026340    r   m   )   )  \r                                            
0026360                                                                 
0026400                                    (   f   o   r   m   a   t    
0026420    *   e   r   r   o   r   -   o   u   t   p   u   t   *       "
0026440    N   o   n       D   O   -   T   E   S   T       f   o   r   m
0026460        a   t       t   o   p       l   e   v   e   l       i   n
0026500        ~   S   ~   %   ~   S   ~   %   "  \r                    
0026520                                                                 
*
0026560                        (   c   u   r   r   e   n   t   -   f   i
0026600    l   e   -   n   a   m   e   )  \r                            
0026620                                                                 
*
0026660                i   l   :   f   o   r   m   )   )   )   )   )   )
0026700   \r  \r   (   d   e   f   v   a   r     006 002   *   a   n   y
0026720    -   e   r   r   o   r   s   * 006 001       n   i   l   )  \r
0026740   \r   (   d   e   f   v   a   r     006 002   *   t   e   s   t
0026760    -   c   l   e   a   n   u   p   -   f   o   r   m   s   * 006
0027000  001       n   i   l   )  \r  \r   (   d   e   f   v   a   r    
0027020  006 002   *   t   e   s   t   -   c   o   m   p   i   l   e   *
0027040  006 001       n   i   l   )  \r  \r   (   d   e   f   v   a   r
0027060      006 002   *   t   e   s   t   -   m   o   d   e   * 006 001
0027100        :   b   a   t   c   h   )  \r  \r   (   d   e   f   v   a
0027120    r     006 002   *   t   e   s   t   -   b   a   t   c   h   -
0027140    r   e   s   u   l   t   s   * 006 001       "   {   e   r   i
0027160    s   }   <   l   i   s   p   c   o   r   e   >   c   m   l   >
0027200    t   e   s   t   >   t   e   s   t   -   r   e   s   u   l   t
0027220    s   "       )  \r  \r   (   d   e   f   v   a   r     006 002
0027240    *   t   e   s   t   -   f   i   l   e   -   p   a   t   t   e
0027260    r   n   * 006 001       "   {   E   R   I   S   }   <   L   I
0027300    S   P   C   O   R   E   >   C   M   L   >   T   E   S   T   >
0027320    *   .   T   E   S   T   ;   "       )  \r  \r   (   d   e   f
0027340    v   a   r     006 002   *   t   e   s   t   -   f   i   l   e
0027360    -   n   a   m   e   * 006 001       "   u   n   k   n   o   w
0027400    n   "       )  \r  \r   (   i   l   :   d   e   f   p   a   c
0027420    k   a   g   e       "   X   C   L   -   T   E   S   T   "    
0027440    (   :   e   x   p   o   r   t       d   o   -   t   e   s   t
0027460        d   o   -   t   e   s   t   -   g   r   o   u   p       e
0027500    x   p   e   c   t   -   e   r   r   o   r   s       t   e   s
0027520    t   -   d   e   f   u   n       t   e   s   t   -   d   e   f
0027540    m   a   c   r   o      \r                                    
0027560                                                                 
0027600                                    t   e   s   t   -   s   e   t
0027620    q       d   o   -   a   l   l   -   t   e   s   t   s       c
0027640    l   -   r   e   a   d   f   i   l   e       d   o   -   t   e
0027660    s   t   -   f   i   l   e       *   t   e   s   t   -   m   o
0027700    d   e   *      \r                                            
0027720                                                                 
0027740                            *   t   e   s   t   -   b   a   t   c
0027760    h   -   r   e   s   u   l   t   s   *       *   t   e   s   t
0030000    -   c   o   m   p   i   l   e   *       *   t   e   s   t   -
0030020    f   i   l   e   -   p   a   t   t   e   r   n   *   )   )  \r
0030040   \r   (   i   l   :   p   u   t   p   r   o   p   s     006 002
0030060    i   l   :   d   o   -   t   e   s   t       i   l   :   m   a
0030100    k   e   f   i   l   e   -   e   n   v   i   r   o   n   m   e
0030120    n   t 006 001       (   :   r   e   a   d   t   a   b   l   e
0030140        "   x   c   l   "       :   p   a   c   k   a   g   e    
0030160    (   i   l   :   d   e   f   p   a   c   k   a   g   e  \r    
0030200                                                                 
*
0030300                                                "   X   C   L   -
0030320    T   E   S   T   "  \r                                        
0030340                                                                 
*
0030440            (   :   u   s   e       "   L   I   S   P   "   )   )
0030460    )   )  \r  \r   (   i   l   :   p   u   t   p   r   o   p   s
0030500      006 002   i   l   :   d   o   -   t   e   s   t       i   l
0030520    :   f   i   l   e   t   y   p   e 006 001       c   o   m   p
0030540    i   l   e   -   f   i   l   e   )  \r   (   i   l   :   p   u
0030560    t   p   r   o   p   s       i   l   :   d   o   -   t   e   s
0030600    t       i   l   :   c   o   p   y   r   i   g   h   t       (
0030620    "   X   e   r   o   x       C   o   r   p   o   r   a   t   i
0030640    o   n   "       1   9   8   6   )   )  \r   (   i   l   :   d
0030660    e   c   l   a   r   e   \   :       i   l   :   d   o   n   t
0030700    c   o   p   y  \r           (   i   l   :   f   i   l   e   m
0030720    a   p       (   n   i   l   )   )   )  \r   i   l   :   s   t
0030740    o   p  \r                                                    
0030743