$ od -c -N 50000 [qv]<IDL>koto>VECTOR-SORTER!1
0000000    (   D   E   F   I   N   E   -   F   I   L   E   -   I   N   F
0000020    O     247   P   A   C   K   A   G   E       "   I   N   T   E
0000040    R   L   I   S   P   "     247   R   E   A   D   T   A   B   L
0000060    E       "   X   C   L   "     247   B   A   S   E       1   0
0000100    )  \r 006 001   (   F   I   L   E   C   R   E   A   T   E   D
0000120        "   1   6   -   N   o   v   -   8   6       1   5   :   3
0000140    1   :   3   6   "     006 004   {   Q   V   }   <   P   E   D
0000160    E   R   S   E   N   >   L   I   S   P   >   V   E   C   T   O
0000200    R   -   S   O   R   T   E   R   .   \   ;   7 006 001       1
0000220    4   5   1   3          \r  \r                           |   c
0000240    h   a   n   g   e   s   |       |   t   o   :   |           (
0000260    F   U   N   C   T   I   O   N   S       I   N   D   E   X   -
0000300    V   E   C   T   O   R   -   S   O   R   T       V   E   C   T
0000320    O   R   -   K   T   H   -   I   N   D   E   X   )  \r  \r    
0000340                        |   p   r   e   v   i   o   u   s   |    
0000360    |   d   a   t   e   :   |       "       9   -   N   o   v   -
0000400    8   6       1   8   :   3   4   :   2   9   "       {   Q   V
0000420    }   <   P   E   D   E   R   S   E   N   >   L   I   S   P   >
0000440    V   E   C   T   O   R   -   S   O   R   T   E   R   .   \   ;
0000460    6   )  \r  \r  \r   ;       C   o   p   y   r   i   g   h   t
0000500        (   c   )       1   9   8   6       b   y       X   e   r
0000520    o   x       C   o   r   p   o   r   a   t   i   o   n   .    
0000540        A   l   l       r   i   g   h   t   s       r   e   s   e
0000560    r   v   e   d   .  \r  \r   (   P   R   E   T   T   Y   C   O
0000600    M   P   R   I   N   T       V   E   C   T   O   R   -   S   O
0000620    R   T   E   R   C   O   M   S   )  \r  \r   (   R   P   A   Q
0000640    Q     006 002   V   E   C   T   O   R   -   S   O   R   T   E
0000660    R   C   O   M   S 006 001       (   (   F   U   N   C   T   I
0000700    O   N   S       G   E   N   E   R   I   C   -   I   N   D   E
0000720    X   -   I   N   S   E   R   T   I   O   N   -   S   O   R   T
0000740        G   E   N   E   R   I   C   -   I   N   D   E   X   -   Q
0000760    S   F   E   N   C   E      \r                                
0001000                                                                 
0001020                                        G   E   N   E   R   I   C
0001040    -   I   N   D   E   X   -   Q   U   I   C   K   S   O   R   T
0001060        G   E   N   E   R   I   C   -   I   N   S   E   R   T   I
0001100    O   N   -   S   O   R   T       G   E   N   E   R   I   C   -
0001120    Q   S   F   E   N   C   E      \r                            
0001140                                                                 
0001160                                            G   E   N   E   R   I
0001200    C   -   Q   U   I   C   K   S   O   R   T       I   N   D   E
0001220    X   -   V   E   C   T   O   R   -   S   O   R   T       Q   U
0001240    I   C   K   -   S   T   E   P       V   E   C   T   O   R   -
0001260    K   T   H   -   E   L   E   M   E   N   T      \r            
0001300                                                                 
0001320                                                            V   E
0001340    C   T   O   R   -   K   T   H   -   I   N   D   E   X       V
0001360    E   C   T   O   R   -   S   O   R   T   )  \r                
0001400                                                                 
0001420                            (   P   R   O   P       F   I   L   E
0001440    T   Y   P   E       V   E   C   T   O   R   -   S   O   R   T
0001460    E   R   )  \r                                                
0001500                                                            (   D
0001520    E   C   L   A   R   E   \   :       D   O   N   T   E   V   A
0001540    L   @   L   O   A   D       D   O   E   V   A   L   @   C   O
0001560    M   P   I   L   E       D   O   N   T   C   O   P   Y       (
0001600    L   O   C   A   L   V   A   R   S       .       T   )   )   )
0001620    )  \r  \r   (   C   L   :   D   E   F   U   N     006 002   G
0001640    E   N   E   R   I   C   -   I   N   D   E   X   -   I   N   S
0001660    E   R   T   I   O   N   -   S   O   R   T 006 001       (   V
0001700    E   C   T   O   R       I   N   D   I   C   E   S       C   O
0001720    M   P   A   R   E   F   N       L   O   W   E   R       U   P
0001740    P   E   R   )      \r                                        
0001760                                                                 
*
0002040              006 006   (   *       |   ;   ;   |       "   S   o
0002060    r   t       e   l   e   m   e   n   t   s       (   L   O   W
0002100    E   R       .   .           U   P   P   E   R   )       o   f
0002120        t   h   e       1   -   d   i   m   e   n   s   i   o   n
0002140    a   l       C   M   L   A   r   r   a   y       A   R   R   A
0002160    Y       u   s   i   n   g       t   h   e       o   r   d   e
0002200    r   i   n   g       g   i   v   e   n       b   y       C   O
0002220    M   P   A   R   E   F   N   .           A   R   R   A   Y    
0002240    i   s       s   o   r   t   e   d       i   n       p   l   a
0002260    c   e   ,       i   .   e   .           d   e   s   t   r   u
0002300    c   t   i   v   e   l   y   .           N   O       a   r   g
0002320    u   m   e   n   t       c   h   e   c   k   i   n   g   !    
0002340    R   e   t   u   r   n   s       A   R   R   A   Y   .        
0002360    I   N   T   E   N   D   E   D       F   O   R       F   E   W
0002400    E   R       T   H   A   N       2   0       E   L   E   M   E
0002420    N   T   S   ,       U   S   E       Q   u   i   c   k   S   o
0002440    r   t       F   O   R       L   A   R   G   E   R       P   R
0002460    O   B   L   E   M   S   !   "   ) 006 001  \r               (
0002500    C   L   :   D   O       (   (   I       (   C   L   :   1   +
0002520        L   O   W   E   R   )  \r                                
0002540                            (   C   L   :   1   +       I   )   )
0002560   \r                                               I   T   H   -
0002600    I   N   D   E   X       I   T   H   -   E   L   E   M   E   N
0002620    T   )  \r                                           (   (   E
0002640    Q   L       I       U   P   P   E   R   )  \r                
0002660                                I   N   D   I   C   E   S   )  \r
0002700                                            (   S   E   T   Q    
0002720    I   T   H   -   I   N   D   E   X       (   C   L   :   A   R
0002740    E   F       I   N   D   I   C   E   S       I   )   )  \r    
0002760                                        (   S   E   T   Q       I
0003000    T   H   -   E   L   E   M   E   N   T       (   C   L   :   A
0003020    R   E   F       V   E   C   T   O   R       I   T   H   -   I
0003040    N   D   E   X   )   )  \r                                    
0003060        (   C   L   :   D   O       (   (   J       I       (   C
0003100    L   :   1   -       J   )   )  \r                            
0003120                                                T   E   M   P   )
0003140   \r                                                            
0003160            (   (   O   R       (   E   Q   L       J       L   O
0003200    W   E   R   )  \r                                            
0003220                                                (   N   O   T    
0003240    (   C   L   :   F   U   N   C   A   L   L       C   O   M   P
0003260    A   R   E   F   N       I   T   H   -   E   L   E   M   E   N
0003300    T       (   C   L   :   A   R   E   F       V   E   C   T   O
0003320    R       (   S   E   T   Q       T   E   M   P  \r            
0003340                                                                 
*
0003440                                                (   C   L   :   A
0003460    R   E   F       I   N   D   I   C   E   S  \r                
0003500                                                                 
*
0003620        (   C   L   :   1   -       J   )   )   )   )   )   )   )
0003640   \r                                                            
0003660                (   C   L   :   S   E   T   F       (   C   L   :
0003700    A   R   E   F       I   N   D   I   C   E   S       J   )  \r
0003720                                                                 
0003740                                        I   T   H   -   I   N   D
0003760    E   X   )   )  \r                                            
0004000                            (   C   L   :   S   E   T   F       (
0004020    C   L   :   A   R   E   F       I   N   D   I   C   E   S    
0004040    J   )  \r                                                    
0004060                                                T   E   M   P   )
0004100    )   )   )  \r  \r  \r   (   C   L   :   D   E   F   U   N    
0004120  006 002   G   E   N   E   R   I   C   -   I   N   D   E   X   -
0004140    Q   S   F   E   N   C   E 006 001       (   V   E   C   T   O
0004160    R       I   N   D   I   C   E   S       C   O   M   P   A   R
0004200    E   F   N       L   O   W   E   R       U   P   P   E   R   )
0004220       \r                                                        
0004240                                                                 
*
0004300                                                              006
0004320  006   (   *       |   ;   ;   |       "   I   d   e   n   t   i
0004340    f   y       t   h   e       p   a   r   t   i   t   i   o   n
0004360    i   n   g       e   l   e   m   e   n   t       a   s       t
0004400    h   e       m   e   d   i   a   n   -   o   f   -   t   h   r
0004420    e   e       e   s   t   i   m   a   t   e       o   f       t
0004440    h   e       m   e   d   i   a   n   .           R   e   f   e
0004460    r   e   n   c   e   :       S   e   d   g   e   w   i   c   k
0004500    ,       R   .           `   I   m   p   l   e   m   e   n   t
0004520    i   n   g       Q   u   i   c   k   s   o   r   t       P   r
0004540    o   g   r   a   m   s   '       C   A   C   M       v   o   l
0004560    .           2   1       n   o   .           1   0       p   p
0004600    .           8   4   7   -   -   8   5   7   .   "   ) 006 001
0004620   \r               (   C   L   :   I   F       (   >       (   -
0004640        U   P   P   E   R       L   O   W   E   R   )  \r        
0004660                                                1   )  \r        
0004700                                    (   L   E   T       (   (   U
0004720    P   P   E   R   -   I   N   D   E   X       (   C   L   :   1
0004740    -       U   P   P   E   R   )   )  \r                        
0004760                                            (   M   I   D   D   L
0005000    E   -   I   N   D   E   X                                    
0005020                                                                 
0005040                              006 006   (   *       \   ;      \r
0005060  006 001                                                        
0005100                                                                 
*
0005140                      006 006   "   T   h   i   s       i   s    
0005160    a   c   t   u   a   l   l   y       a       d   i   v   i   d
0005200    e       b   y       t   w   o       w   i   t   h       t   r
0005220    u   n   c   a   t   i   o   n   "   ) 006 001  \r            
0005240                                                                 
0005260                    (   C   L   :   A   S   H       (   +       L
0005300    O   W   E   R       U   P   P   E   R   )  \r                
0005320                                                                 
0005340                                            -   1   )   )  \r    
0005360                                                                (
0005400    L   O   W   E   R   -   P   L   U   S   1   -   I   N   D   E
0005420    X       (   C   L   :   1   +       L   O   W   E   R   )   )
0005440    )  \r                                                        
0005460        (   C   L   :   R   O   T   A   T   E   F       (   C   L
0005500    :   A   R   E   F       I   N   D   I   C   E   S       M   I
0005520    D   D   L   E   -   I   N   D   E   X   )  \r                
0005540                                                                 
0005560            (   C   L   :   A   R   E   F       I   N   D   I   C
0005600    E   S       L   O   W   E   R   -   P   L   U   S   1   -   I
0005620    N   D   E   X   )   )  \r                                    
0005640                            (   C   L   :   I   F       (   C   L
0005660    :   F   U   N   C   A   L   L       C   O   M   P   A   R   E
0005700    F   N       (   C   L   :   A   R   E   F       V   E   C   T
0005720    O   R       (   C   L   :   A   R   E   F       I   N   D   I
0005740    C   E   S       U   P   P   E   R   -   I   N   D   E   X   )
0005760    )  \r                                                        
0006000                                                                (
0006020    C   L   :   A   R   E   F       V   E   C   T   O   R       (
0006040    C   L   :   A   R   E   F       I   N   D   I   C   E   S    
0006060    L   O   W   E   R   -   P   L   U   S   1   -   I   N   D   E
0006100    X   )   )   )  \r                                            
0006120                                                (   C   L   :   R
0006140    O   T   A   T   E   F       (   C   L   :   A   R   E   F    
0006160    I   N   D   I   C   E   S       L   O   W   E   R   -   P   L
0006200    U   S   1   -   I   N   D   E   X   )  \r                    
0006220                                                                 
0006240                                    (   C   L   :   A   R   E   F
0006260        I   N   D   I   C   E   S       U   P   P   E   R   -   I
0006300    N   D   E   X   )   )   )  \r                                
0006320                                (   C   L   :   I   F       (   C
0006340    L   :   F   U   N   C   A   L   L       C   O   M   P   A   R
0006360    E   F   N       (   C   L   :   A   R   E   F       V   E   C
0006400    T   O   R       (   C   L   :   A   R   E   F       I   N   D
0006420    I   C   E   S       U   P   P   E   R   -   I   N   D   E   X
0006440    )   )  \r                                                    
0006460                                                                 
0006500    (   C   L   :   A   R   E   F       V   E   C   T   O   R    
0006520    (   C   L   :   A   R   E   F       I   N   D   I   C   E   S
0006540        L   O   W   E   R   )   )   )  \r                        
0006560                                                                 
0006600    (   C   L   :   R   O   T   A   T   E   F       (   C   L   :
0006620    A   R   E   F       I   N   D   I   C   E   S       L   O   W
0006640    E   R   )  \r                                                
0006660                                                                 
0006700        (   C   L   :   A   R   E   F       I   N   D   I   C   E
0006720    S       U   P   P   E   R   -   I   N   D   E   X   )   )   )
0006740   \r                                                            
0006760    (   C   L   :   I   F       (   C   L   :   F   U   N   C   A
0007000    L   L       C   O   M   P   A   R   E   F   N       (   C   L
0007020    :   A   R   E   F       V   E   C   T   O   R       (   C   L
0007040    :   A   R   E   F       I   N   D   I   C   E   S       L   O
0007060    W   E   R   )   )  \r                                        
0007100                                                                 
0007120                (   C   L   :   A   R   E   F       V   E   C   T
0007140    O   R       (   C   L   :   A   R   E   F       I   N   D   I
0007160    C   E   S       L   O   W   E   R   -   P   L   U   S   1   -
0007200    I   N   D   E   X   )   )   )  \r                            
0007220                                                                (
0007240    C   L   :   R   O   T   A   T   E   F       (   C   L   :   A
0007260    R   E   F       I   N   D   I   C   E   S       L   O   W   E
0007300    R   -   P   L   U   S   1   -   I   N   D   E   X   )  \r    
0007320                                                                 
0007340                                                    (   C   L   :
0007360    A   R   E   F       I   N   D   I   C   E   S       L   O   W
0007400    E   R   )   )   )   )   )   )  \r  \r  \r   (   C   L   :   D
0007420    E   F   U   N     006 002   G   E   N   E   R   I   C   -   I
0007440    N   D   E   X   -   Q   U   I   C   K   S   O   R   T 006 001
0007460        (   V   E   C   T   O   R       I   N   D   I   C   E   S
0007500        C   O   M   P   A   R   E   F   N       L   O   W   E   R
0007520        U   P   P   E   R   )      \r                            
0007540                                                                 
*
0007620                          006 006   (   *       |   ;   ;   |    
0007640   \r 006 001             006 006   "   R   e   f   e   r   e   n
0007660    c   e   :       S   e   d   g   e   w   i   c   k   ,       R
0007700    .           `   I   m   p   l   e   m   e   n   t   i   n   g
0007720        Q   u   i   c   k   s   o   r   t       P   r   o   g   r
0007740    a   m   s   '       C   A   C   M       v   o   l   .        
0007760    2   1       n   o   .           1   0       p   p   .        
0010000    8   4   7   -   -   8   5   7   .   "   ) 006 001  \r        
0010020        (   C   L   :   W   H   E   N       (   >       (   -    
0010040    U   P   P   E   R       L   O   W   E   R   )  \r            
0010060                                                    1   0   )  \r
0010100                                            (   G   E   N   E   R
0010120    I   C   -   I   N   D   E   X   -   Q   S   F   E   N   C   E
0010140        V   E   C   T   O   R       I   N   D   I   C   E   S    
0010160    C   O   M   P   A   R   E   F   N       L   O   W   E   R    
0010200    U   P   P   E   R   )  \r                                    
0010220                                                                 
*
0010300                  006 006   (   *       |   ;   ;   |      \r 006
0010320  001                     006 006   "   P   e   r   f   o   r   m
0010340        t   h   e       p   a   r   t   i   t   i   o   n   i   n
0010360    g   .       A   t       t   h   i   s       p   o   i   n   t
0010400        a   r   r   a   y   [   (   1   +       L   O   W   E   R
0010420    )   ]       <   =       a   r   r   a   y   [   L   O   W   E
0010440    R   ]       <   =       a   r   r   a   y   [   (   1   -    
0010460    U   P   P   E   R   )   ]   "   ) 006 001  \r                
0010500                            (   Q   U   I   C   K   -   S   T   E
0010520    P       V   E   C   T   O   R       (   C   L   :   A   R   E
0010540    F       V   E   C   T   O   R       (   C   L   :   A   R   E
0010560    F       I   N   D   I   C   E   S       I   N   D   E   X   )
0010600    )  \r                                                        
0010620                (   C   O   N   D  \r                            
0010640                                                        (   (   >
0010660        (   -       J       L   O   W   E   R   )  \r            
0010700                                                                 
0010720                        (   -       U   P   P   E   R       I   )
0010740    )  \r                                                        
0010760                                (   G   E   N   E   R   I   C   -
0011000    I   N   D   E   X   -   Q   U   I   C   K   S   O   R   T    
0011020    V   E   C   T   O   R       I   N   D   I   C   E   S       C
0011040    O   M   P   A   R   E   F   N       L   O   W   E   R       J
0011060    )  \r                                                        
0011100                                (   G   E   N   E   R   I   C   -
0011120    I   N   D   E   X   -   Q   U   I   C   K   S   O   R   T    
0011140    V   E   C   T   O   R       I   N   D   I   C   E   S       C
0011160    O   M   P   A   R   E   F   N       I       U   P   P   E   R
0011200    )   )  \r                                                    
0011220                                (   T       (   G   E   N   E   R
0011240    I   C   -   I   N   D   E   X   -   Q   U   I   C   K   S   O
0011260    R   T       V   E   C   T   O   R       I   N   D   I   C   E
0011300    S       C   O   M   P   A   R   E   F   N       I       U   P
0011320    P   E   R   )  \r                                            
0011340                                                    (   G   E   N
0011360    E   R   I   C   -   I   N   D   E   X   -   Q   U   I   C   K
0011400    S   O   R   T       V   E   C   T   O   R       I   N   D   I
0011420    C   E   S       C   O   M   P   A   R   E   F   N       L   O
0011440    W   E   R       J   )   )   )   )   )   )  \r  \r  \r   (   C
0011460    L   :   D   E   F   U   N     006 002   G   E   N   E   R   I
0011500    C   -   I   N   S   E   R   T   I   O   N   -   S   O   R   T
0011520  006 001       (   V   E   C   T   O   R       C   O   M   P   A
0011540    R   E   F   N       L   O   W   E   R       U   P   P   E   R
0011560    )      \r                                                    
0011600                                                                 
*
0011660  006 006   (   *       |   ;   ;   |       "   S   o   r   t    
0011700    e   l   e   m   e   n   t   s       (   L   O   W   E   R    
0011720    .   .           U   P   P   E   R   )       o   f       t   h
0011740    e       1   -   d   i   m   e   n   s   i   o   n   a   l    
0011760    C   M   L   A   r   r   a   y       A   R   R   A   Y       u
0012000    s   i   n   g       t   h   e       o   r   d   e   r   i   n
0012020    g       g   i   v   e   n       b   y       C   O   M   P   A
0012040    R   E   F   N   .           A   R   R   A   Y       i   s    
0012060    s   o   r   t   e   d       i   n       p   l   a   c   e   ,
0012100        i   .   e   .           d   e   s   t   r   u   c   t   i
0012120    v   e   l   y   .           N   O       a   r   g   u   m   e
0012140    n   t       c   h   e   c   k   i   n   g   !       R   e   t
0012160    u   r   n   s       A   R   R   A   Y   .           I   N   T
0012200    E   N   D   E   D       F   O   R       F   E   W   E   R    
0012220    T   H   A   N       2   0       E   L   E   M   E   N   T   S
0012240    ,       U   S   E       Q   u   i   c   k   S   o   r   t    
0012260    F   O   R       L   A   R   G   E   R       P   R   O   B   L
0012300    E   M   S   !   "   ) 006 001  \r               (   C   L   :
0012320    D   O       (   (   I       (   C   L   :   1   +       L   O
0012340    W   E   R   )  \r                                            
0012360                (   C   L   :   1   +       I   )   )  \r        
0012400                                        I   T   H   -   E   L   E
0012420    M   E   N   T   )  \r                                        
0012440    (   (   E   Q   L       I       U   P   P   E   R   )  \r    
0012460                                            V   E   C   T   O   R
0012500    )  \r                                           (   S   E   T
0012520    Q       I   T   H   -   E   L   E   M   E   N   T       (   C
0012540    L   :   A   R   E   F       V   E   C   T   O   R       I   )
0012560    )  \r                                           (   C   L   :
0012600    D   O       (   (   J       I       (   C   L   :   1   -    
0012620    J   )   )  \r                                                
0012640                            T   E   M   P   )  \r                
0012660                                                        (   (   O
0012700    R       (   E   Q   L       J       L   O   W   E   R   )  \r
0012720                                                                 
0012740                            (   N   O   T       (   C   L   :   F
0012760    U   N   C   A   L   L       C   O   M   P   A   R   E   F   N
0013000        I   T   H   -   E   L   E   M   E   N   T       (   S   E
0013020    T   Q       T   E   M   P       (   C   L   :   A   R   E   F
0013040        V   E   C   T   O   R       (   C   L   :   1   -       J
0013060    )   )   )   )   )  \r                                        
0013100                                                    )  \r        
0013120                                                                 
0013140    (   C   L   :   S   E   T   F       (   C   L   :   A   R   E
0013160    F       V   E   C   T   O   R       J   )  \r                
0013200                                                                 
0013220                        I   T   H   -   E   L   E   M   E   N   T
0013240    )   )  \r                                                    
0013260                    (   C   L   :   S   E   T   F       (   C   L
0013300    :   A   R   E   F       V   E   C   T   O   R       J   )  \r
0013320                                                                 
0013340                                    T   E   M   P   )   )   )   )
0013360   \r  \r  \r   (   C   L   :   D   E   F   U   N     006 002   G
0013400    E   N   E   R   I   C   -   Q   S   F   E   N   C   E 006 001
0013420        (   V   E   C   T   O   R       C   O   M   P   A   R   E
0013440    F   N       L   O   W   E   R       U   P   P   E   R   )    
0013460                  006 006   (   *       |   ;   ;   |       "   I
0013500    d   e   n   t   i   f   y       t   h   e       p   a   r   t
0013520    i   t   i   o   n   i   n   g       e   l   e   m   e   n   t
0013540        a   s       t   h   e       m   e   d   i   a   n   -   o
0013560    f   -   t   h   r   e   e       e   s   t   i   m   a   t   e
0013600        o   f       t   h   e       m   e   d   i   a   n   .    
0013620        R   e   f   e   r   e   n   c   e   :       S   e   d   g
0013640    e   w   i   c   k   ,       R   .           `   I   m   p   l
0013660    e   m   e   n   t   i   n   g       Q   u   i   c   k   s   o
0013700    r   t       P   r   o   g   r   a   m   s   '       C   A   C
0013720    M       v   o   l   .           2   1       n   o   .        
0013740    1   0       p   p   .           8   4   7   -   -   8   5   7
0013760    .   "   ) 006 001  \r               (   C   L   :   I   F    
0014000    (   >       (   -       U   P   P   E   R       L   O   W   E
0014020    R   )  \r                                                    
0014040    1   )  \r                                           (   L   E
0014060    T       (   (   U   P   P   E   R   -   I   N   D   E   X    
0014100    (   C   L   :   1   -       U   P   P   E   R   )   )  \r    
0014120                                                                (
0014140    M   I   D   D   L   E   -   I   N   D   E   X                
0014160                                                                 
0014200                                                  006 006   (   *
0014220        \   ;      \r 006 001                                    
0014240                                                                 
*
0014300                                          006 006   "   T   h   i
0014320    s       i   s       a   c   t   u   a   l   l   y       a    
0014340    d   i   v   i   d   e       b   y       t   w   o       w   i
0014360    t   h       t   r   u   n   c   a   t   i   o   n   "   ) 006
0014400  001  \r                                                        
0014420                                        (   C   L   :   A   S   H
0014440        (   +       L   O   W   E   R       U   P   P   E   R   )
0014460   \r                                                            
0014500                                                                -
0014520    1   )   )  \r                                                
0014540                    (   L   O   W   E   R   -   P   L   U   S   1
0014560    -   I   N   D   E   X       (   C   L   :   1   +       L   O
0014600    W   E   R   )   )   )  \r                                    
0014620                            (   C   L   :   R   O   T   A   T   E
0014640    F       (   C   L   :   A   R   E   F       V   E   C   T   O
0014660    R       M   I   D   D   L   E   -   I   N   D   E   X   )  \r
0014700                                                                 
0014720                            (   C   L   :   A   R   E   F       V
0014740    E   C   T   O   R       L   O   W   E   R   -   P   L   U   S
0014760    1   -   I   N   D   E   X   )   )  \r                        
0015000                                        (   C   L   :   I   F    
0015020    (   C   L   :   F   U   N   C   A   L   L       C   O   M   P
0015040    A   R   E   F   N       (   C   L   :   A   R   E   F       V
0015060    E   C   T   O   R       U   P   P   E   R   -   I   N   D   E
0015100    X   )  \r                                                    
0015120                                                                 
0015140    (   C   L   :   A   R   E   F       V   E   C   T   O   R    
0015160    L   O   W   E   R   -   P   L   U   S   1   -   I   N   D   E
0015200    X   )   )  \r                                                
0015220                                            (   C   L   :   R   O
0015240    T   A   T   E   F       (   C   L   :   A   R   E   F       V
0015260    E   C   T   O   R       L   O   W   E   R   -   P   L   U   S
0015300    1   -   I   N   D   E   X   )  \r                            
0015320                                                                 
0015340                            (   C   L   :   A   R   E   F       V
0015360    E   C   T   O   R       U   P   P   E   R   -   I   N   D   E
0015400    X   )   )   )  \r                                            
0015420                    (   C   L   :   I   F       (   C   L   :   F
0015440    U   N   C   A   L   L       C   O   M   P   A   R   E   F   N
0015460        (   C   L   :   A   R   E   F       V   E   C   T   O   R
0015500        U   P   P   E   R   -   I   N   D   E   X   )  \r        
0015520                                                                 
0015540                                                (   C   L   :   A
0015560    R   E   F       V   E   C   T   O   R       L   O   W   E   R
0015600    )   )  \r                                                    
0015620                                        (   C   L   :   R   O   T
0015640    A   T   E   F       (   C   L   :   A   R   E   F       V   E
0015660    C   T   O   R       L   O   W   E   R   )  \r                
0015700                                                                 
0015720                                        (   C   L   :   A   R   E
0015740    F       V   E   C   T   O   R       U   P   P   E   R   -   I
0015760    N   D   E   X   )   )   )  \r                                
0016000                                (   C   L   :   I   F       (   C
0016020    L   :   F   U   N   C   A   L   L       C   O   M   P   A   R
0016040    E   F   N       (   C   L   :   A   R   E   F       V   E   C
0016060    T   O   R       L   O   W   E   R   )  \r                    
0016100                                                                 
0016120                                    (   C   L   :   A   R   E   F
0016140        V   E   C   T   O   R       L   O   W   E   R   -   P   L
0016160    U   S   1   -   I   N   D   E   X   )   )  \r                
0016200                                                                 
0016220            (   C   L   :   R   O   T   A   T   E   F       (   C
0016240    L   :   A   R   E   F       V   E   C   T   O   R       L   O
0016260    W   E   R   -   P   L   U   S   1   -   I   N   D   E   X   )
0016300   \r                                                            
0016320                                                            (   C
0016340    L   :   A   R   E   F       V   E   C   T   O   R       L   O
0016360    W   E   R   )   )   )   )   )  \r               V   E   C   T
0016400    O   R   )  \r  \r  \r   (   C   L   :   D   E   F   U   N    
0016420  006 002   G   E   N   E   R   I   C   -   Q   U   I   C   K   S
0016440    O   R   T 006 001       (   V   E   C   T   O   R       C   O
0016460    M   P   A   R   E   F   N       L   O   W   E   R       U   P
0016500    P   E   R   )             006 006   (   *       |   ;   ;   |
0016520       \r 006 001             006 006   "   R   e   f   e   r   e
0016540    n   c   e   :       S   e   d   g   e   w   i   c   k   ,    
0016560    R   .           `   I   m   p   l   e   m   e   n   t   i   n
0016600    g       Q   u   i   c   k   s   o   r   t       P   r   o   g
0016620    r   a   m   s   '       C   A   C   M       v   o   l   .    
0016640        2   1       n   o   .           1   0       p   p   .    
0016660        8   4   7   -   -   8   5   7   .   "   ) 006 001  \r    
0016700            (   C   L   :   W   H   E   N       (   >       (   -
0016720        U   P   P   E   R       L   O   W   E   R   )  \r        
0016740                                                        1   0   )
0016760   \r                                           (   G   E   N   E
0017000    R   I   C   -   Q   S   F   E   N   C   E       V   E   C   T
0017020    O   R       C   O   M   P   A   R   E   F   N       L   O   W
0017040    E   R       U   P   P   E   R   )                     006 006
0017060    (   *       |   ;   ;   |      \r 006 001                    
0017100  006 006   "   P   e   r   f   o   r   m       t   h   e       p
0017120    a   r   t   i   t   i   o   n   i   n   g   .       A   t    
0017140    t   h   i   s       p   o   i   n   t       a   r   r   a   y
0017160    [   (   1   +       L   O   W   E   R   )   ]       <   =    
0017200    a   r   r   a   y   [   L   O   W   E   R   ]       <   =    
0017220    a   r   r   a   y   [   (   1   -       U   P   P   E   R   )
0017240    ]   "   ) 006 001  \r                                        
0017260    (   Q   U   I   C   K   -   S   T   E   P       V   E   C   T
0017300    O   R       (   C   L   :   A   R   E   F       V   E   C   T
0017320    O   R       I   N   D   E   X   )  \r                        
0017340                                                (   C   O   N   D
0017360   \r                                                            
0017400                        (   (   >       (   -       J       L   O
0017420    W   E   R   )  \r                                            
0017440                                                        (   -    
0017460    U   P   P   E   R       I   )   )  \r                        
0017500                                                                (
0017520    G   E   N   E   R   I   C   -   Q   U   I   C   K   S   O   R
0017540    T       V   E   C   T   O   R       C   O   M   P   A   R   E
0017560    F   N       L   O   W   E   R       J   )  \r                
0017600                                                                 
0017620        (   G   E   N   E   R   I   C   -   Q   U   I   C   K   S
0017640    O   R   T       V   E   C   T   O   R       C   O   M   P   A
0017660    R   E   F   N       I       U   P   P   E   R   )   )  \r    
0017700                                                                 
0017720                (   T       (   G   E   N   E   R   I   C   -   Q
0017740    U   I   C   K   S   O   R   T       V   E   C   T   O   R    
0017760    C   O   M   P   A   R   E   F   N       I       U   P   P   E
0020000    R   )  \r                                                    
0020020                                            (   G   E   N   E   R
0020040    I   C   -   Q   U   I   C   K   S   O   R   T       V   E   C
0020060    T   O   R       C   O   M   P   A   R   E   F   N       L   O
0020100    W   E   R       J   )   )   )   )   )   )  \r  \r  \r   (   C
0020120    L   :   D   E   F   U   N     006 002   I   N   D   E   X   -
0020140    V   E   C   T   O   R   -   S   O   R   T 006 001       (   V
0020160    E   C   T   O   R       &   O   P   T   I   O   N   A   L    
0020200    (   C   O   M   P   A   R   E   F   N       #   '   <   )  \r
0020220                                                                 
*
0020260                I   N   D   I   C   E   S   )       (   C   L   :
0020300    I   F       (   N   O   T       (   C   L   :   V   E   C   T
0020320    O   R   P       V   E   C   T   O   R   )   )  \r            
0020340                                                                 
*
0020420    (   C   L   :   E   R   R   O   R       "   N   o   t       a
0020440        v   e   c   t   o   r   :       ~   S   "       V   E   C
0020460    T   O   R   )   )  \r                                        
0020500                                                                 
*
0020540            (   L   E   T       (   (   L   E   N   G   T   H    
0020560    (   C   L   :   L   E   N   G   T   H       V   E   C   T   O
0020600    R   )   )   )  \r                                            
0020620                                                                 
*
0020660                            (   C   O   N   D  \r                
0020700                                                                 
*
0020760    (   (   N   U   L   L       I   N   D   I   C   E   S   )  \r
0021000                                                                 
*
0021060                        (   S   E   T   Q       I   N   D   I   C
0021100    E   S       (   C   L   :   M   A   K   E   -   A   R   R   A
0021120    Y       L   E   N   G   T   H   )   )   )  \r                
0021140                                                                 
*
0021220    (   (   N   O   T       (   A   N   D       (   C   L   :   V
0021240    E   C   T   O   R   P       I   N   D   I   C   E   S   )  \r
0021260                                                                 
*
0021340                                                                (
0021360    E   Q       (   C   L   :   L   E   N   G   T   H       I   N
0021400    D   I   C   E   S   )  \r                                    
0021420                                                                 
*
0021500                                            L   E   N   G   T   H
0021520    )   )   )  \r                                                
0021540                                                                 
*
0021600                                        (   C   L   :   E   R   R
0021620    O   R       "   I   l   l   e   g   a   l       I   n   d   e
0021640    x       v   e   c   t   o   r   :       ~   s   "       I   N
0021660    D   I   C   E   S   )   )   )  \r                            
0021700                                                                 
*
0021740                                            (   C   L   :   D   O
0021760    T   I   M   E   S       (   I       L   E   N   G   T   H   )
0022000   \r                                                            
0022020                                                                 
*
0022060                                        (   C   L   :   S   E   T
0022100    F       (   C   L   :   A   R   E   F       I   N   D   I   C
0022120    E   S       I   )  \r                                        
0022140                                                                 
*
0022220                        I   )   )  \r                            
0022240                                                                 
*
0022300                                            (   L   E   T       (
0022320    (   L   O   W   E   R       0   )  \r                        
0022340                                                                 
*
0022420        (   U   P   P   E   R       L   E   N   G   T   H   )   )
0022440   \r                                                            
0022460                                                                 
*
0022520                                (   G   E   N   E   R   I   C   -
0022540    I   N   D   E   X   -   Q   U   I   C   K   S   O   R   T    
0022560    V   E   C   T   O   R       I   N   D   I   C   E   S      \r
0022600                                                                 
*
0022660                                                        C   O   M
0022700    P   A   R   E   F   N       L   O   W   E   R       U   P   P
0022720    E   R   )  \r                                                
0022740                                                                 
*
0023000                                            (   G   E   N   E   R
0023020    I   C   -   I   N   D   E   X   -   I   N   S   E   R   T   I
0023040    O   N   -   S   O   R   T       V   E   C   T   O   R       I
0023060    N   D   I   C   E   S      \r                                
0023100                                                                 
*
0023160                        C   O   M   P   A   R   E   F   N       L
0023200    O   W   E   R       U   P   P   E   R   )  \r                
0023220                                                                 
*
0023300            I   N   D   I   C   E   S   )   )   )  \r  \r  \r   (
0023320    D   E   F   M   A   C   R   O     006 002   Q   U   I   C   K
0023340    -   S   T   E   P 006 001       (   V   E   C   T   O   R    
0023360    A   C   C   E   S   S   O   R   -   F   O   R   M       &   R
0023400    E   S   T       F   O   R   M   S   )  \r               `   (
0023420    L   E   T       (   (   I       (   C   L   :   1   +       L
0023440    O   W   E   R   )   )  \r                                    
0023460        (   J       (   C   L   :   1   -       U   P   P   E   R
0023500    )   )  \r                                           (   X   L
0023520        ,   (   C   L   :   S   U   B   S   T       '   L   O   W
0023540    E   R       '   I   N   D   E   X       A   C   C   E   S   S
0023560    O   R   -   F   O   R   M   )   )   )  \r                    
0023600                    (   C   L   :   L   O   O   P       (   C   L
0023620    :   L   O   O   P       (   C   L   :   I   N   C   F       I
0023640    )  \r                                                        
0023660                                                (   C   L   :   I
0023700    F       (   N   O   T       (   C   L   :   F   U   N   C   A
0023720    L   L       C   O   M   P   A   R   E   F   N       ,   (   C
0023740    L   :   S   U   B   S   T       '   I       '   I   N   D   E
0023760    X       A   C   C   E   S   S   O   R   -   F   O   R   M   )
0024000        X   L   )   )  \r                                        
0024020                                                                 
0024040                            (   R   E   T   U   R   N       N   I
0024060    L   )   )   )  \r                                            
0024100                        (   C   L   :   L   O   O   P       (   C
0024120    L   :   D   E   C   F       J   )  \r                        
0024140                                                                 
0024160        (   C   L   :   I   F       (   N   O   T       (   C   L
0024200    :   F   U   N   C   A   L   L       C   O   M   P   A   R   E
0024220    F   N       X   L       ,   (   C   L   :   S   U   B   S   T
0024240        '   J       '   I   N   D   E   X       A   C   C   E   S
0024260    S   O   R   -   F   O   R   M   )   )   )  \r                
0024300                                                                 
0024320                                            (   R   E   T   U   R
0024340    N       N   I   L   )   )   )  \r                            
0024360                                        (   C   O   N   D  \r    
0024400                                                                 
0024420            (   (   >       J       I   )  \r                    
0024440                                                                (
0024460    C   L   :   R   O   T   A   T   E   F       (   C   L   :   A
0024500    R   E   F       ,   V   E   C   T   O   R       I   )  \r    
0024520                                                                 
0024540                                            (   C   L   :   A   R
0024560    E   F       ,   V   E   C   T   O   R       J   )   )   )  \r
0024600                                                                 
0024620                (   T       (   R   E   T   U   R   N       N   I
0024640    L   )   )   )   )  \r                                       (
0024660    C   L   :   R   O   T   A   T   E   F       (   C   L   :   A
0024700    R   E   F       ,   V   E   C   T   O   R       L   O   W   E
0024720    R   )  \r                                                    
0024740                (   C   L   :   A   R   E   F       ,   V   E   C
0024760    T   O   R       J   )   )  \r                                
0025000        ,   @   F   O   R   M   S   )   )  \r  \r  \r   (   C   L
0025020    :   D   E   F   U   N     006 002   V   E   C   T   O   R   -
0025040    K   T   H   -   E   L   E   M   E   N   T 006 001       (   V
0025060    E   C   T   O   R       K       &   O   P   T   I   O   N   A
0025100    L       (   C   O   M   P   A   R   E   F   N       #   '   <
0025120    )   )      \r                                                
0025140                                                                 
*
0025220      006 006   (   *       |   ;   ;   |       "   P   a   r   t
0025240    i   a   l   l   y       s   o   r   t       t   h   e       e
0025260    l   e   m   e   n   t   s       o   f       t   h   e       1
0025300    -   d   i   m   e   n   s   i   o   n   a   l       C   M   L
0025320    A   r   r   a   y       X       s   o       t   h   a   t    
0025340    t   h   e       o   r   d   e   r       s   t   a   t   i   s
0025360    t   i   c       d   e   s   i   g   n   a   t   e   d       b
0025400    y       K       i   s       l   o   c   a   t   e   d       c
0025420    o   r   r   e   c   t   l   y       i   n       X   .        
0025440    K       m   u   s   t       b   e       a       Z   E   R   O
0025460    -   B   A   S   E   D       F   I   X   N   U   M       I   N
0025500    D   E   X       i   n   t   o       X   .           X       i
0025520    s       s   o   r   t   e   d       i   n       p   l   a   c
0025540    e   ,       i   .   e   .           d   e   s   t   r   u   c
0025560    t   i   v   e   l   y   .           R   e   t   u   r   n   s
0025600        X   {   K   }   "   ) 006 001  \r               (   C   L
0025620    :   I   F       (   N   O   T       (   C   L   :   V   E   C
0025640    T   O   R   P       V   E   C   T   O   R   )   )  \r        
0025660                                    (   C   L   :   E   R   R   O
0025700    R       "   N   o   t       a       v   e   c   t   o   r   :
0025720        ~   S   "       V   E   C   T   O   R   )   )  \r        
0025740        (   L   E   T       (   (   L   E   N   G   T   H       (
0025760    C   L   :   L   E   N   G   T   H       V   E   C   T   O   R
0026000    )   )   )  \r                                   (   C   L   :
0026020    I   F       (   N   O   T       (   <       -   1       K    
0026040    L   E   N   G   T   H   )   )  \r                            
0026060                                    (   C   L   :   E   R   R   O
0026100    R       "   K       o   u   t       o   f       b   o   u   n
0026120    d   s   :       ~   S   "       K   )   )  \r                
0026140                    (   L   E   T       (   (   L   O   W   E   R
0026160        0   )  \r                                                
0026200            (   U   P   P   E   R       L   E   N   G   T   H   )
0026220    )  \r                                                       (
0026240    C   L   :   L   O   O   P       (   C   L   :   W   H   E   N
0026260        (   <       (   -       U   P   P   E   R       L   O   W
0026300    E   R   )  \r                                                
0026320                                                                 
0026340                    1   0   )  \r                                
0026360                                                                 
0026400                        (   G   E   N   E   R   I   C   -   I   N
0026420    S   E   R   T   I   O   N   -   S   O   R   T       V   E   C
0026440    T   O   R       C   O   M   P   A   R   E   F   N       L   O
0026460    W   E   R       U   P   P   E   R   )  \r                    
0026500                                                                 
0026520                                    (   R   E   T   U   R   N    
0026540    (   C   L   :   A   R   E   F       V   E   C   T   O   R    
0026560    K   )   )   )  \r                                            
0026600                                        (   G   E   N   E   R   I
0026620    C   -   Q   S   F   E   N   C   E       V   E   C   T   O   R
0026640        C   O   M   P   A   R   E   F   N       L   O   W   E   R
0026660        U   P   P   E   R   )  \r                                
0026700                                                    (   Q   U   I
0026720    C   K   -   S   T   E   P       V   E   C   T   O   R       (
0026740    C   L   :   A   R   E   F       V   E   C   T   O   R       I
0026760    N   D   E   X   )  \r                                        
0027000                                                                 
0027020        (   C   O   N   D  \r                                    
0027040                                                                 
0027060                        (   (   E   Q   L       K       J   )  \r
0027100                                                                 
0027120                                                                (
0027140    R   E   T   U   R   N       (   C   L   :   A   R   E   F    
0027160    V   E   C   T   O   R       K   )   )   )  \r                
0027200                                                                 
0027220                                            (   (   <       K    
0027240    J   )  \r                                                    
0027260                                                                 
0027300            (   C   L   :   S   E   T   Q       U   P   P   E   R
0027320        J   )   )  \r                                            
0027340                                                                 
0027360                (   T       (   C   L   :   S   E   T   Q       L
0027400    O   W   E   R       (   C   L   :   1   +       J   )   )   )
0027420    )   )   )   )   )   )  \r  \r  \r   (   C   L   :   D   E   F
0027440    U   N     006 002   V   E   C   T   O   R   -   K   T   H   -
0027460    I   N   D   E   X 006 001       (   V   E   C   T   O   R    
0027500    K       &   O   P   T   I   O   N   A   L       (   C   O   M
0027520    P   A   R   E   F   N       #   '   <   )  \r                
0027540                                                                 
0027560                                                            I   N
0027600    D   I   C   E   S   )                                        
0027620                                      006 006   (   *       |   ;
0027640    ;   |       "   P   a   r   t   i   a   l   l   y       s   o
0027660    r   t       t   h   e       e   l   e   m   e   n   t   s    
0027700    o   f       t   h   e       1   -   d   i   m   e   n   s   i
0027720    o   n   a   l       C   M   L   A   r   r   a   y       X    
0027740    s   o       t   h   a   t       t   h   e       o   r   d   e
0027760    r       s   t   a   t   i   s   t   i   c       d   e   s   i
0030000    g   n   a   t   e   d       b   y       K       i   s       l
0030020    o   c   a   t   e   d       c   o   r   r   e   c   t   l   y
0030040        i   n       X   .           K       m   u   s   t       b
0030060    e       a       Z   E   R   O   -   B   A   S   E   D       F
0030100    I   X   N   U   M       I   N   D   E   X       i   n   t   o
0030120        X   .           X       i   s       s   o   r   t   e   d
0030140        i   n       p   l   a   c   e   ,       i   .   e   .    
0030160        d   e   s   t   r   u   c   t   i   v   e   l   y   .    
0030200        R   e   t   u   r   n   s       X   {   K   }   "   ) 006
0030220  001  \r               (   C   L   :   I   F       (   N   O   T
0030240        (   C   L   :   V   E   C   T   O   R   P       V   E   C
0030260    T   O   R   )   )  \r                                        
0030300    (   C   L   :   E   R   R   O   R       "   N   o   t       a
0030320        v   e   c   t   o   r   :       ~   S   "       V   E   C
0030340    T   O   R   )   )  \r               (   L   E   T       (   (
0030360    L   E   N   G   T   H       (   C   L   :   L   E   N   G   T
0030400    H       V   E   C   T   O   R   )   )   )  \r                
0030420                    (   C   L   :   I   F       (   N   O   T    
0030440    (   <       -   1       K       L   E   N   G   T   H   )   )
0030460   \r                                                            
0030500    (   C   L   :   E   R   R   O   R       "   K       o   u   t
0030520        o   f       b   o   u   n   d   s   :       ~   S   "    
0030540    K   )   )  \r                                   (   C   O   N
0030560    D  \r                                               (   (   N
0030600    U   L   L       I   N   D   I   C   E   S   )  \r            
0030620                                        (   S   E   T   Q       I
0030640    N   D   I   C   E   S       (   C   L   :   M   A   K   E   -
0030660    A   R   R   A   Y       L   E   N   G   T   H   )   )   )  \r
0030700                                                (   (   N   O   T
0030720        (   A   N   D       (   C   L   :   V   E   C   T   O   R
0030740    P       I   N   D   I   C   E   S   )  \r                    
0030760                                                                 
0031000        (   E   Q       (   C   L   :   L   E   N   G   T   H    
0031020    I   N   D   I   C   E   S   )  \r                            
0031040                                                                 
0031060                L   E   N   G   T   H   )   )   )  \r            
0031100                                        (   C   L   :   E   R   R
0031120    O   R       "   I   l   l   e   g   a   l       I   n   d   e
0031140    x       v   e   c   t   o   r   :       ~   s   "       I   N
0031160    D   I   C   E   S   )   )   )  \r                            
0031200        (   C   L   :   D   O   T   I   M   E   S       (   I    
0031220    L   E   N   G   T   H   )  \r                                
0031240                                (   C   L   :   S   E   T   F    
0031260    (   C   L   :   A   R   E   F       I   N   D   I   C   E   S
0031300        I   )  \r                                                
0031320                                            I   )   )  \r        
0031340                            (   L   E   T       (   (   L   O   W
0031360    E   R       0   )  \r                                        
0031400                    (   U   P   P   E   R       L   E   N   G   T
0031420    H   )   )  \r                                                
0031440        (   C   L   :   L   O   O   P       (   C   L   :   W   H
0031460    E   N       (   <       (   -       U   P   P   E   R       L
0031500    O   W   E   R   )  \r                                        
0031520                                                                 
0031540                            1   0   )  \r                        
0031560                                                                 
0031600                                (   G   E   N   E   R   I   C   -
0031620    I   N   D   E   X   -   I   N   S   E   R   T   I   O   N   -
0031640    S   O   R   T       V   E   C   T   O   R       I   N   D   I
0031660    C   E   S       C   O   M   P   A   R   E   F   N       L   O
0031700    W   E   R       U   P   P   E   R   )  \r                    
0031720                                                                 
0031740                                    (   R   E   T   U   R   N    
0031760    (   C   L   :   A   R   E   F       I   N   D   I   C   E   S
0032000        K   )   )   )  \r                                        
0032020                                            (   G   E   N   E   R
0032040    I   C   -   I   N   D   E   X   -   Q   S   F   E   N   C   E
0032060        V   E   C   T   O   R       I   N   D   I   C   E   S    
0032100    C   O   M   P   A   R   E   F   N       L   O   W   E   R    
0032120    U   P   P   E   R   )  \r                                    
0032140                                                (   Q   U   I   C
0032160    K   -   S   T   E   P       V   E   C   T   O   R       (   C
0032200    L   :   A   R   E   F       V   E   C   T   O   R       (   C
0032220    L   :   A   R   E   F       I   N   D   I   C   E   S       I
0032240    N   D   E   X   )   )  \r                                    
0032260                                                                 
0032300            (   C   O   N   D  \r                                
0032320                                                                 
0032340                            (   (   E   Q   L       K       J   )
0032360   \r                                                            
0032400                                                                 
0032420    (   R   E   T   U   R   N       (   C   L   :   A   R   E   F
0032440        V   E   C   T   O   R       K   )   )   )  \r            
0032460                                                                 
0032500                                                (   (   <       K
0032520        J   )  \r                                                
0032540                                                                 
0032560                (   C   L   :   S   E   T   Q       U   P   P   E
0032600    R       J   )   )  \r                                        
0032620                                                                 
0032640                    (   T       (   C   L   :   S   E   T   Q    
0032660    L   O   W   E   R       (   C   L   :   1   +       J   )   )
0032700    )   )   )   )   )   )   )  \r  \r  \r   (   C   L   :   D   E
0032720    F   U   N     006 002   V   E   C   T   O   R   -   S   O   R
0032740    T 006 001       (   V   E   C   T   O   R       &   O   P   T
0032760    I   O   N   A   L       (   C   O   M   P   A   R   E   F   N
0033000        #   '   <   )   )                     006 006   (   *    
0033020    |   ;   ;   |       "   S   o   r   t       t   h   e       1
0033040    -   d   i   m   e   n   s   i   o   n   a   l       C   M   L
0033060    A   r   r   a   y       A   R   R   A   Y       u   s   i   n
0033100    g       t   h   e       o   r   d   e   r   i   n   g       g
0033120    i   v   e   n       b   y       C   O   M   P   A   R   E   F
0033140    N   .           A   R   R   A   Y       i   s       s   o   r
0033160    t   e   d       i   n       p   l   a   c   e   ,       i   .
0033200    e   .           d   e   s   t   r   u   c   t   i   v   e   l
0033220    y   .           R   e   t   u   r   n   s       A   R   R   A
0033240    Y   .   "   ) 006 001  \r               (   C   L   :   I   F
0033260        (   N   O   T       (   C   L   :   V   E   C   T   O   R
0033300    P       V   E   C   T   O   R   )   )  \r                    
0033320                        (   C   L   :   E   R   R   O   R       "
0033340    N   o   t       a       v   e   c   t   o   r   :       ~   S
0033360    "       V   E   C   T   O   R   )   )  \r               (   L
0033400    E   T       (   (   L   O   W   E   R       0   )  \r        
0033420                                (   U   P   P   E   R       (   C
0033440    L   :   L   E   N   G   T   H       V   E   C   T   O   R   )
0033460    )   )  \r                                   (   G   E   N   E
0033500    R   I   C   -   Q   U   I   C   K   S   O   R   T       V   E
0033520    C   T   O   R       C   O   M   P   A   R   E   F   N       L
0033540    O   W   E   R       U   P   P   E   R   )  \r                
0033560                    (   G   E   N   E   R   I   C   -   I   N   S
0033600    E   R   T   I   O   N   -   S   O   R   T       V   E   C   T
0033620    O   R       C   O   M   P   A   R   E   F   N       L   O   W
0033640    E   R       U   P   P   E   R   )  \r                        
0033660            V   E   C   T   O   R   )   )  \r  \r  \r   (   P   U
0033700    T   P   R   O   P   S     006 002   V   E   C   T   O   R   -
0033720    S   O   R   T   E   R       F   I   L   E   T   Y   P   E 006
0033740  001       C   L   :   C   O   M   P   I   L   E   -   F   I   L
0033760    E   )  \r   (   D   E   C   L   A   R   E   \   :       D   O
0034000    N   T   E   V   A   L   @   L   O   A   D       D   O   E   V
0034020    A   L   @   C   O   M   P   I   L   E       D   O   N   T   C
0034040    O   P   Y      \r   (   D   E   C   L   A   R   E   \   :    
0034060    D   O   E   V   A   L   @   C   O   M   P   I   L   E       D
0034100    O   N   T   C   O   P   Y  \r  \r   (   L   O   C   A   L   V
0034120    A   R   S       .       T   )  \r   )  \r   )  \r   (   P   U
0034140    T   P   R   O   P   S       V   E   C   T   O   R   -   S   O
0034160    R   T   E   R       C   O   P   Y   R   I   G   H   T       (
0034200    "   X   e   r   o   x       C   o   r   p   o   r   a   t   i
0034220    o   n   "       1   9   8   6   )   )  \r   (   D   E   C   L
0034240    A   R   E   \   :       D   O   N   T   C   O   P   Y  \r    
0034260        (   F   I   L   E   M   A   P       (   N   I   L   )   )
0034300    )  \r   S   T   O   P  \r                                    
0034307