$ od -c -N 50000 [Erinyes]<LispManual>Draft>CHAPCONTROLFNS.TXT!1
0000000           \r   9   .  \t   C   O   N   D   I   T   I   O   N   A
0000020    L   S       A   N   D       I   T   E   R   A   T   I   V   E
0000040        S   T   A   T   E   M   E   N   T   S  \r  \r      \r   I
0000060    n       o   r   d   e   r       t   o       d   o       a   n
0000100    y       b   u   t       t   h   e       s   i   m   p   l   e
0000120    s   t       c   o   m   p   u   t   a   t   i   o   n   s   ,
0000140        i   t       i   s       n   e   c   e   s   s   a   r   y
0000160        t   o       t   e   s   t       v   a   l   u   e   s    
0000200    a   n   d       e   x   e   c   u   t   e       e   x   p   r
0000220    e   s   s   i   o   n   s       c   o   n   d   i   t   i   o
0000240    n   a   l   l   y   ,       a   n   d       t   o       e   x
0000260    e   c   u   t   e       a       s   e   r   i   e   s       o
0000300    f       e   x   p   r   e   s   s   i   o   n   s   .        
0000320    I   n   t   e   r   l   i   s   p       s   u   p   p   l   i
0000340    e   s       a       l   a   r   g   e       n   u   m   b   e
0000360    r       o   f       p   r   e   d   i   c   a   t   e   s   ,
0000400        c   o   n   d   i   t   i   o   n   a   l       f   u   n
0000420    c   t   i   o   n   s   ,       a   n   d       c   o   n   t
0000440    r   o   l       f   u   n   c   t   i   o   n   s   .        
0000460    A   l   s   o   ,       t   h   e   r   e       i   s       a
0000500        c   o   m   p   l   e   x       "   i   t   e   r   a   t
0000520    i   v   e       s   t   a   t   e   m   e   n   t   "       f
0000540    a   c   i   l   i   t   y       w   h   i   c   h       a   l
0000560    l   o   w   s       t   h   e       u   s   e   r       t   o
0000600        e   a   s   i   l   y       c   r   e   a   t   e       c
0000620    o   m   p   l   e   x       l   o   o   p   s       a   n   d
0000640        i   t   e   r   a   t   i   v   e       c   o   n   s   t
0000660    r   u   c   t   s       (   p   a   g   e       X   .   X   X
0000700    )   .  \r  \r   9   .   1          \t   D   a   t   a       T
0000720    y   p   e       P   r   e   d   i   c   a   t   e   s  \r  \r
0000740    I   n   t   e   r   l   i   s   p       p   r   o   v   i   d
0000760    e   s       s   e   p   a   r   a   t   e       f   u   n   c
0001000    t   i   o   n   s       f   o   r       t   e   s   t   i   n
0001020    g       w   h   e   t   h   e   r       o   b   j   e   c   t
0001040    s       a   r   e       o   f       c   e   r   t   a   i   n
0001060        c   o   m   m   o   n   l   y   -   u   s   e   d       t
0001100    y   p   e   s   :  \r   (   L   I   T   A   T   O   M       X
0001120    )          \t   [   F   u   n   c   t   i   o   n   ]  \r   R
0001140    e   t   u   r   n   s       T       i   f       X       i   s
0001160        a       l   i   t   a   t   o   m       (   s   e   e    
0001200    p   a   g   e       X   .   X   X   )       N   I   L       o
0001220    t   h   e   r   w   i   s   e   .           N   o   t   e    
0001240    t   h   a   t       a       n   u   m   b   e   r       i   s
0001260        n   o   t       a       l   i   t   a   t   o   m   .    
0001300   \r  \r   (   S   M   A   L   L   P       X   )          \t   [
0001320    F   u   n   c   t   i   o   n   ]  \r   R   e   t   u   r   n
0001340    s       X       i   f       X       i   s       a       s   m
0001360    a   l   l       i   n   t   e   g   e   r   ;       N   I   L
0001400        o   t   h   e   r   w   i   s   e   .           (   N   o
0001420    t   e       t   h   a   t       t   h   e       r   a   n   g
0001440    e       o   f       s   m   a   l   l       i   n   t   e   g
0001460    e   r   s       i   s       i   m   p   l   e   m   e   n   t
0001500    a   t   i   o   n   -   d   e   p   e   n   d   e   n   t   .
0001520            S   e   e       p   a   g   e       X   .   X   X   .
0001540    )  \r  \r   (   F   I   X   P       X   )          \t   [   F
0001560    u   n   c   t   i   o   n   ]  \r   R   e   t   u   r   n   s
0001600        X       i   f       X       i   s       a       s   m   a
0001620    l   l       o   r       l   a   r   g   e       i   n   t   e
0001640    g   e   r   ;       N   I   L       o   t   h   e   r   w   i
0001660    s   e   .  \r  \r   (   F   L   O   A   T   P       X   )    
0001700       \t   [   F   u   n   c   t   i   o   n   ]  \r   R   e   t
0001720    u   r   n   s       X       i   f       X       i   s       a
0001740        f   l   o   a   t   i   n   g       p   o   i   n   t    
0001760    n   u   m   b   e   r   ;       N   I   L       o   t   h   e
0002000    r   w   i   s   e   .  \r  \r   (   N   U   M   B   E   R   P
0002020        X   )          \t   [   F   u   n   c   t   i   o   n   ]
0002040   \r   R   e   t   u   r   n   s       X       i   f       X    
0002060    i   s       a       n   u   m   b   e   r       o   f       a
0002100    n   y       t   y   p   e       (   F   I   X   P       o   r
0002120        F   L   O   A   T   P   )   ,       N   I   L       o   t
0002140    h   e   r   w   i   s   e   .  \r  \r   (   A   T   O   M    
0002160    X   )          \t   [   F   u   n   c   t   i   o   n   ]  \r
0002200    R   e   t   u   r   n   s       T       i   f       X       i
0002220    s       a   n       a   t   o   m       (   i   .   e   .    
0002240    a       l   i   t   a   t   o   m       o   r       a       n
0002260    u   m   b   e   r   )   ;       N   I   L       o   t   h   e
0002300    r   w   i   s   e   .  \r   W   a   r   n   i   n   g   :    
0002320        (   A   T   O   M       X   )       i   s       N   I   L
0002340        i   f       X       i   s       a   n       a   r   r   a
0002360    y   ,       s   t   r   i   n   g   ,       e   t   c   .    
0002400        I   n       m   a   n   y       d   i   a   l   e   c   t
0002420    s       o   f       L   i   s   p   ,       t   h   e       f
0002440    u   n   c   t   i   o   n       A   T   O   M       i   s    
0002460    d   e   f   i   n   e   d       e   q   u   i   v   a   l   e
0002500    n   t       t   o       t   h   e       I   n   t   e   r   l
0002520    i   s   p       f   u   n   c   t   i   o   n       N   L   I
0002540    S   T   P   .  \r  \r   (   L   I   S   T   P       X   )    
0002560       \t   [   F   u   n   c   t   i   o   n   ]  \r   R   e   t
0002600    u   r   n   s       X       i   f       X       i   s       a
0002620        l   i   s   t       c   e   l   l   ,       e   .   g   .
0002640    ,       s   o   m   e   t   h   i   n   g       c   r   e   a
0002660    t   e   d       b   y       C   O   N   S   ;       N   I   L
0002700        o   t   h   e   r   w   i   s   e   .  \r  \r   (   N   L
0002720    I   S   T   P       X   )          \t   [   F   u   n   c   t
0002740    i   o   n   ]  \r   (   N   O   T       (   L   I   S   T   P
0002760        X   )   )   .           R   e   t   u   r   n   s       T
0003000        i   f       X       i   s       n   o   t       a       l
0003020    i   s   t       c   e   l   l   ,       N   I   L       o   t
0003040    h   e   r   w   i   s   e   .  \r  \r   (   S   T   R   I   N
0003060    G   P       X   )          \t   [   F   u   n   c   t   i   o
0003100    n   ]  \r   R   e   t   u   r   n   s       X       i   f    
0003120    X       i   s       a       s   t   r   i   n   g   ,       N
0003140    I   L       o   t   h   e   r   w   i   s   e   .  \r  \r   (
0003160    A   R   R   A   Y   P       X   )          \t   [   F   u   n
0003200    c   t   i   o   n   ]  \r   R   e   t   u   r   n   s       X
0003220        i   f       X       i   s       a   n       a   r   r   a
0003240    y   ,       N   I   L       o   t   h   e   r   w   i   s   e
0003260    .  \r   N   o   t   e   :           I   n       s   o   m   e
0003300        i   m   p   l   e   m   e   n   t   a   t   i   o   n   s
0003320        o   f       I   n   t   e   r   l   i   s   p       (   b
0003340    u   t       n   o   t       I   n   t   e   r   l   i   s   p
0003360    -   D   )   ,       A   R   R   A   Y   P       m   a   y    
0003400    a   l   s   o       r   e   t   u   r   n       X       i   f
0003420        i   t       i   s       o   f       t   y   p   e       C
0003440    C   O   D   E   P       o   r       H   A   R   R   A   Y   P
0003460    .  \r  \r   (   H   A   R   R   A   Y   P       X   )        
0003500   \t   [   F   u   n   c   t   i   o   n   ]  \r   R   e   t   u
0003520    r   n   s       X       i   f       i   t       i   s       a
0003540        h   a   s   h       a   r   r   a   y       o   b   j   e
0003560    c   t   ;       o   t   h   e   r   w   i   s   e       N   I
0003600    L   .  \r   N   o   t   e       t   h   a   t       H   A   R
0003620    R   A   Y   P       r   e   t   u   r   n   s       N   I   L
0003640        i   f       X       i   s       a       l   i   s   t    
0003660    w   h   o   s   e       C   A   R       i   s       a   n    
0003700    H   A   R   R   A   Y   P   ,       e   v   e   n       t   h
0003720    o   u   g   h       t   h   i   s       i   s       a   c   c
0003740    e   p   t   e   d       b   y       t   h   e       h   a   s
0003760    h       a   r   r   a   y       f   u   n   c   t   i   o   n
0004000    s   .  \r  \r   N   o   t   e   :           T   h   e       e
0004020    m   p   t   y       l   i   s   t   ,       (   )       o   r
0004040        N   I   L   ,       i   s       c   o   n   s   i   d   e
0004060    r   e   d       t   o       b   e       a       l   i   t   a
0004100    t   o   m   ,       r   a   t   h   e   r       t   h   a   n
0004120        a       l   i   s   t   .           T   h   e   r   e   f
0004140    o   r   e   ,       (   L   I   T   A   T   O   M       N   I
0004160    L   )       =       (   A   T   O   M       N   I   L   )    
0004200    =       T       a   n   d       (   L   I   S   T   P       N
0004220    I   L   )       =       N   I   L   .           C   a   r   e
0004240        s   h   o   u   l   d       b   e       t   a   k   e   n
0004260        w   h   e   n       u   s   i   n   g       t   h   e   s
0004300    e       f   u   n   c   t   i   o   n   s       i   f       t
0004320    h   e       o   b   j   e   c   t       m   a   y       b   e
0004340        t   h   e       e   m   p   t   y       l   i   s   t    
0004360    N   I   L   .  \r  \r   9   .   2          \t   E   q   u   a
0004400    l   i   t   y       P   r   e   d   i   c   a   t   e   s  \r
0004420   \r   A       c   o   m   m   o   n       o   p   e   r   a   t
0004440    i   o   n       w   h   e   n       d   e   a   l   i   n   g
0004460        w   i   t   h       d   a   t   a       o   b   j   e   c
0004500    t   s       i   s       t   o       t   e   s   t       w   h
0004520    e   t   h   e   r       t   w   o       o   b   j   e   c   t
0004540    s       a   r   e       e   q   u   a   l   .           I   n
0004560        s   o   m   e       c   a   s   e   s   ,       s   u   c
0004600    h       a   s       w   h   e   n       c   o   m   p   a   r
0004620    i   n   g       t   w   o       s   m   a   l   l       i   n
0004640    t   e   g   e   r   s   ,       e   q   u   a   l   i   t   y
0004660        c   a   n       b   e       e   a   s   i   l   y       d
0004700    e   t   e   r   m   i   n   e   d   .           H   o   w   e
0004720    v   e   r   ,       s   o   m   e   t   i   m   e   s       t
0004740    h   e   r   e       i   s       m   o   r   e       t   h   a
0004760    n       o   n   e       t   y   p   e       o   f       e   q
0005000    u   a   l   i   t   y   .           F   o   r       i   n   s
0005020    t   a   n   c   e   ,       g   i   v   e   n       t   w   o
0005040        l   i   s   t   s   ,       o   n   e       c   a   n    
0005060    a   s   k       w   h   e   t   h   e   r       t   h   e   y
0005100        a   r   e       e   x   a   c   t   l   y       t   h   e
0005120        s   a   m   e       o   b   j   e   c   t   ,       o   r
0005140        w   h   e   t   h   e   r       t   h   e   y       a   r
0005160    e       t   w   o       d   i   s   t   i   n   c   t       l
0005200    i   s   t   s       w   h   i   c   h       c   o   n   t   a
0005220    i   n       t   h   e       s   a   m   e       e   l   e   m
0005240    e   n   t   s   .           C   o   n   f   u   s   i   o   n
0005260        b   e   t   w   e   e   n       t   h   e   s   e       t
0005300    w   o       t   y   p   e   s       o   f       e   q   u   a
0005320    l   i   t   y       i   s       o   f   t   e   n       t   h
0005340    e       s   o   u   r   c   e       o   f       p   r   o   g
0005360    r   a   m       e   r   r   o   r   s   .           I   n   t
0005400    e   r   l   i   s   p       s   u   p   p   l   i   e   s    
0005420    a   n       e   x   t   e   n   s   i   v   e       s   e   t
0005440        o   f       f   u   n   c   t   i   o   n   s       f   o
0005460    r       t   e   s   t   i   n   g       e   q   u   a   l   i
0005500    t   y   :  \r   (   E   Q       X       Y   )          \t   [
0005520    F   u   n   c   t   i   o   n   ]  \r   R   e   t   u   r   n
0005540    s       T       i   f       X       a   n   d       Y       a
0005560    r   e       i   d   e   n   t   i   c   a   l       p   o   i
0005600    n   t   e   r   s   ;       N   I   L       o   t   h   e   r
0005620    w   i   s   e   .           E   Q       s   h   o   u   l   d
0005640        n   o   t       b   e       u   s   e   d       t   o    
0005660    c   o   m   p   a   r   e       t   w   o       n   u   m   b
0005700    e   r   s   ,       u   n   l   e   s   s       t   h   e   y
0005720        a   r   e       s   m   a   l   l       i   n   t   e   g
0005740    e   r   s   ;       u   s   e       E   Q   P       i   n   s
0005760    t   e   a   d   .  \r  \r   (   N   E   Q       X       Y   )
0006000           \t   [   F   u   n   c   t   i   o   n   ]  \r   (   N
0006020    O   T       (   E   Q       X       Y   )   )  \r  \r   (   N
0006040    U   L   L       X   )          \t   [   F   u   n   c   t   i
0006060    o   n   ]  \r   (   N   O   T       X   )          \t   [   F
0006100    u   n   c   t   i   o   n   ]  \r   (   E   Q       X       N
0006120    I   L   )  \r  \r   (   E   Q   P       X       Y   )        
0006140   \t   [   F   u   n   c   t   i   o   n   ]  \r   R   e   t   u
0006160    r   n   s       T       i   f       X       a   n   d       Y
0006200        a   r   e       E   Q   ,       o   r       i   f       X
0006220        a   n   d       Y       a   r   e       n   u   m   b   e
0006240    r   s       a   n   d       a   r   e       e   q   u   a   l
0006260        i   n       v   a   l   u   e   ;       N   I   L       o
0006300    t   h   e   r   w   i   s   e   .           F   o   r       m
0006320    o   r   e       d   i   s   c   u   s   s   i   o   n       o
0006340    f       E   Q   P       a   n   d       o   t   h   e   r    
0006360    n   u   m   b   e   r       f   u   n   c   t   i   o   n   s
0006400    ,       s   e   e       p   a   g   e       X   .   X   X   .
0006420   \r   N   o   t   e   :           E   Q   P       a   l   s   o
0006440        c   a   n       b   e       u   s   e   d       t   o    
0006460    c   o   m   p   a   r   e       s   t   a   c   k       p   o
0006500    i   n   t   e   r   s       (   p   a   g   e       X   .   X
0006520    X   )       a   n   d       c   o   m   p   i   l   e   d    
0006540    c   o   d   e       (   p   a   g   e       X   .   X   X   )
0006560    .  \r  \r   (   E   Q   U   A   L       X       Y   )        
0006600   \t   [   F   u   n   c   t   i   o   n   ]  \r   E   Q   U   A
0006620    L       r   e   t   u   r   n   s       T       i   f       X
0006640        a   n   d       Y       a   r   e       (   1   )       E
0006660    Q   ;       o   r       (   2   )       E   Q   P   ,       i
0006700    .   e   .   ,       n   u   m   b   e   r   s       w   i   t
0006720    h       e   q   u   a   l       v   a   l   u   e   ;       o
0006740    r       (   3   )       S   T   R   E   Q   U   A   L   ,    
0006760    i   .   e   .   ,       s   t   r   i   n   g   s       c   o
0007000    n   t   a   i   n   i   n   g       t   h   e       s   a   m
0007020    e       s   e   q   u   e   n   c   e       o   f       c   h
0007040    a   r   a   c   t   e   r   s   ;       o   r       (   4   )
0007060        l   i   s   t   s       a   n   d       C   A   R       o
0007100    f       X       i   s       E   Q   U   A   L       t   o    
0007120    C   A   R       o   f       Y   ,       a   n   d       C   D
0007140    R       o   f       X       i   s       E   Q   U   A   L    
0007160    t   o       C   D   R       o   f       Y   .           E   Q
0007200    U   A   L       r   e   t   u   r   n   s       N   I   L    
0007220    o   t   h   e   r   w   i   s   e   .           N   o   t   e
0007240        t   h   a   t       E   Q   U   A   L       c   a   n    
0007260    b   e       s   i   g   n   i   f   i   c   a   n   t   l   y
0007300        s   l   o   w   e   r       t   h   a   n       E   Q   .
0007320   \r   A       l   o   o   s   e       d   e   s   c   r   i   p
0007340    t   i   o   n       o   f       E   Q   U   A   L       m   i
0007360    g   h   t       b   e       t   o       s   a   y       t   h
0007400    a   t       X       a   n   d       Y       a   r   e       E
0007420    Q   U   A   L       i   f       t   h   e   y       p   r   i
0007440    n   t       o   u   t       t   h   e       s   a   m   e    
0007460    w   a   y   .  \r  \r   (   E   Q   U   A   L   A   L   L    
0007500    X       Y   )          \t   [   F   u   n   c   t   i   o   n
0007520    ]  \r   L   i   k   e       E   Q   U   A   L   ,       e   x
0007540    c   e   p   t       i   t       d   e   s   c   e   n   d   s
0007560        i   n   t   o       t   h   e       c   o   n   t   e   n
0007600    t   s       o   f       a   r   r   a   y   s   ,       h   a
0007620    s   h       a   r   r   a   y   s   ,       u   s   e   r    
0007640    d   a   t   a       t   y   p   e   s   ,       e   t   c   .
0007660            T   w   o       n   o   n   -   E   Q       a   r   r
0007700    a   y   s       m   a   y       b   e       E   Q   U   A   L
0007720    A   L   L       i   f       t   h   e   i   r       r   e   s
0007740    p   e   c   t   i   v   e       c   o   m   p   o   n   a   n
0007760    t   s       a   r   e       E   Q   U   A   L   A   L   L   .
0010000   \r  \r  \r   9   .   3          \t   L   o   g   i   c   a   l
0010020        P   r   e   d   i   c   a   t   e   s  \r  \r   (   A   N
0010040    D       X   1       X   2       .   .   .       X   N   )    
0010060       \t   [   N   L   a   m   b   d   a       N   o   S   p   r
0010100    e   a   d       F   u   n   c   t   i   o   n   ]  \r   T   a
0010120    k   e   s       a   n       i   n   d   e   f   i   n   i   t
0010140    e       n   u   m   b   e   r       o   f       a   r   g   u
0010160    m   e   n   t   s       (   i   n   c   l   u   d   i   n   g
0010200        z   e   r   o   )   ,       t   h   a   t       a   r   e
0010220        e   v   a   l   u   a   t   e   d       i   n       o   r
0010240    d   e   r   .           I   f       a   n   y       a   r   g
0010260    u   m   e   n   t       e   v   a   l   u   a   t   e   s    
0010300    t   o       N   I   L   ,       A   N   D       i   m   m   e
0010320    d   i   a   t   e   l   y       r   e   t   u   r   n   s    
0010340    N   I   L       (   w   i   t   h   o   u   t       e   v   a
0010360    l   u   a   t   i   n   g       t   h   e       r   e   m   a
0010400    i   n   i   n   g       a   r   g   u   m   e   n   t   s   )
0010420    .           I   f       a   l   l       o   f       t   h   e
0010440        a   r   g   u   m   e   n   t   s       e   v   a   l   u
0010460    a   t   e       t   o       n   o   n   -   N   I   L   ,    
0010500    t   h   e       v   a   l   u   e       o   f       t   h   e
0010520        l   a   s   t       a   r   g   u   m   e   n   t       i
0010540    s       r   e   t   u   r   n   e   d   .           (   A   N
0010560    D   )           =   >           T   .  \r  \r   (   O   R    
0010600    X   1       X   2       .   .   .       X   N   )          \t
0010620    [   N   L   a   m   b   d   a       N   o   S   p   r   e   a
0010640    d       F   u   n   c   t   i   o   n   ]  \r   T   a   k   e
0010660    s       a   n       i   n   d   e   f   i   n   i   t   e    
0010700    n   u   m   b   e   r       o   f       a   r   g   u   m   e
0010720    n   t   s       (   i   n   c   l   u   d   i   n   g       z
0010740    e   r   o   )   ,       t   h   a   t       a   r   e       e
0010760    v   a   l   u   a   t   e   d       i   n       o   r   d   e
0011000    r   .           I   f       a   n   y       a   r   g   u   m
0011020    e   n   t       i   s       n   o   n   -   N   I   L   ,    
0011040    t   h   e       v   a   l   u   e       o   f       t   h   a
0011060    t       a   r   g   u   m   e   n   t       i   s       r   e
0011100    t   u   r   n   e   d       b   y       O   R       (   w   i
0011120    t   h   o   u   t       e   v   a   l   u   a   t   i   n   g
0011140        t   h   e       r   e   m   a   i   n   i   n   g       a
0011160    r   g   u   m   e   n   t   s   )   .           I   f       a
0011200    l   l       o   f       t   h   e       a   r   g   u   m   e
0011220    n   t   s       e   v   a   l   u   a   t   e       t   o    
0011240    N   I   L   ,       N   I   L       i   s       r   e   t   u
0011260    r   n   e   d   .           (   O   R   )           =   >    
0011300        N   I   L   .  \r  \r   A   N   D       a   n   d       O
0011320    R       c   a   n       b   e       u   s   e   d       a   s
0011340        s   i   m   p   l   e       l   o   g   i   c   a   l    
0011360    c   o   n   n   e   c   t   i   v   e   s   ,       b   u   t
0011400        n   o   t   e       t   h   a   t       t   h   e   y    
0011420    m   a   y       n   o   t       e   v   a   l   u   a   t   e
0011440        a   l   l       o   f       t   h   e   i   r       a   r
0011460    g   u   m   e   n   t   s   .           T   h   i   s       m
0011500    a   k   e   s       a       d   i   f   f   e   r   e   n   c
0011520    e       i   f       t   h   e       e   v   a   l   u   a   t
0011540    i   o   n       o   f       s   o   m   e       o   f       t
0011560    h   e       a   r   g   u   m   e   n   t   s       c   a   u
0011600    s   e   s       s   i   d   e   -   e   f   f   e   c   t   s
0011620    .           A   n   o   t   h   e   r       r   e   s   u   l
0011640    t       o   f       t   h   i   s       i   m   p   l   e   m
0011660    e   n   t   a   t   i   o   n       o   f       A   N   D    
0011700    a   n   d       O   R       i   s       t   h   a   t       t
0011720    h   e   y       c   a   n       b   e       u   s   e   d    
0011740    a   s       s   i   m   p   l   e       c   o   n   d   i   t
0011760    i   o   n   a   l       s   t   a   t   e   m   e   n   t   s
0012000    .           F   o   r       e   x   a   m   p   l   e   :    
0012020    (   A   N   D       (   L   I   S   T   P       X   )       (
0012040    C   D   R       X   )   )       r   e   t   u   r   n   s    
0012060    t   h   e       v   a   l   u   e       o   f       (   C   D
0012100    R       X   )       i   f       X       i   s       a       l
0012120    i   s   t       c   e   l   l   ,       o   t   h   e   r   w
0012140    i   s   e       i   t       r   e   t   u   r   n   s       N
0012160    I   L       w   i   t   h   o   u   t       e   v   a   l   u
0012200    a   t   i   n   g       (   C   D   R       X   )   .        
0012220    I   n       g   e   n   e   r   a   l   ,       t   h   i   s
0012240        u   s   e       o   f       A   N   D       a   n   d    
0012260    O   R       s   h   o   u   l   d       b   e       a   v   o
0012300    i   d   e   d       i   n       f   a   v   o   r       o   f
0012320        m   o   r   e       e   x   p   l   i   c   i   t       c
0012340    o   n   d   i   t   i   o   n   a   l       s   t   a   t   e
0012360    m   e   n   t   s       i   n       o   r   d   e   r       t
0012400    o       m   a   k   e       p   r   o   g   r   a   m   s    
0012420    m   o   r   e       r   e   a   d   a   b   l   e   .  \r  \r
0012440    9   .   4          \t   T   h   e       C   O   N   D       C
0012460    o   n   d   i   t   i   o   n   a   l       F   u   n   c   t
0012500    i   o   n  \r  \r   (   C   O   N   D       C   L   A   U   S
0012520    E   1       C   L   A   U   S   E   2       .   .   .       C
0012540    L   A   U   S   E   K   )          \t   [   N   L   a   m   b
0012560    d   a       N   o   S   p   r   e   a   d       F   u   n   c
0012600    t   i   o   n   ]  \r   T   h   e       c   o   n   d   i   t
0012620    i   o   n   a   l       f   u   n   c   t   i   o   n       o
0012640    f       I   n   t   e   r   l   i   s   p   ,       C   O   N
0012660    D   ,       t   a   k   e   s       a   n       i   n   d   e
0012700    f   i   n   i   t   e       n   u   m   b   e   r       o   f
0012720        a   r   g   u   m   e   n   t   s   ,       c   a   l   l
0012740    e   d       c   l   a   u   s   e   s   .           E   a   c
0012760    h       C   L   A   U   S   E   i       i   s       a       l
0013000    i   s   t       o   f       t   h   e       f   o   r   m    
0013020    (   P   i       C   i   1       .   .   .       C   i   N   )
0013040    ,       w   h   e   r   e       P   i       i   s       t   h
0013060    e       p   r   e   d   i   c   a   t   e   ,       a   n   d
0013100        C   i   1       .   .   .       C   i   N       a   r   e
0013120        t   h   e       c   o   n   s   e   q   u   e   n   t   s
0013140    .           T   h   e       o   p   e   r   a   t   i   o   n
0013160        o   f       C   O   N   D       c   a   n       b   e    
0013200    p   a   r   a   p   h   r   a   s   e   d       a   s   :  \r
0013220    I   F       P   1       T   H   E   N       C   1   1       .
0013240    .   .       C   1   N       E   L   S   E   I   F       P   2
0013260        T   H   E   N       C   2   1       .   .   .       C   2
0013300    N       E   L   S   E   I   F       P   3       .   .   .  \r
0013320    T   h   e       c   l   a   u   s   e   s       a   r   e    
0013340    c   o   n   s   i   d   e   r   e   d       i   n       s   e
0013360    q   u   e   n   c   e       a   s       f   o   l   l   o   w
0013400    s   :       t   h   e       p   r   e   d   i   c   a   t   e
0013420        P   1       o   f       t   h   e       c   l   a   u   s
0013440    e       C   L   A   U   S   E   i       i   s       e   v   a
0013460    l   u   a   t   e   d   .           I   f       t   h   e    
0013500    v   a   l   u   e       o   f       P   1       i   s       "
0013520    t   r   u   e   "       (   n   o   n   -   N   I   L   )   ,
0013540        t   h   e       c   o   n   s   e   q   u   e   n   t   s
0013560        C   i   1       .   .   .       C   i   N       a   r   e
0013600        e   v   a   l   u   a   t   e   d       i   n       o   r
0013620    d   e   r   ,       a   n   d       t   h   e       v   a   l
0013640    u   e       o   f       t   h   e       C   O   N   D       i
0013660    s       t   h   e       v   a   l   u   e       o   f       C
0013700    i   N   ,       t   h   e       l   a   s   t       e   x   p
0013720    r   e   s   s   i   o   n       i   n       t   h   e       c
0013740    l   a   u   s   e   .           I   f       P   1       i   s
0013760        "   f   a   l   s   e   "       (   E   Q       t   o    
0014000    N   I   L   )   ,       t   h   e   n       t   h   e       r
0014020    e   m   a   i   n   d   e   r       o   f       C   L   A   U
0014040    S   E   i       i   s       i   g   n   o   r   e   d   ,    
0014060    a   n   d       t   h   e       n   e   x   t       c   l   a
0014100    u   s   e   ,       C   L   A   U   S   E   i   +   1   ,    
0014120    i   s       c   o   n   s   i   d   e   r   e   d   .        
0014140    I   f       n   o       P   i       i   s       t   r   u   e
0014160        f   o   r       a   n   y       c   l   a   u   s   e   ,
0014200        t   h   e       v   a   l   u   e       o   f       t   h
0014220    e       C   O   N   D       i   s       N   I   L   .  \r   N
0014240    o   t   e   :           I   f       a       c   l   a   u   s
0014260    e       h   a   s       n   o       c   o   n   s   e   q   u
0014300    e   n   t   s   ,       a   n   d       h   a   s       t   h
0014320    e       f   o   r   m       (   P   i   )   ,       t   h   e
0014340    n       i   f       P   i       e   v   a   l   u   a   t   e
0014360    s       t   o       n   o   n   -   N   I   L   ,       i   t
0014400        i   s       r   e   t   u   r   n   e   d       a   s    
0014420    t   h   e       v   a   l   u   e       o   f       t   h   e
0014440        C   O   N   D   .           I   t       i   s       o   n
0014460    l   y       e   v   a   l   u   a   t   e   d       o   n   c
0014500    e   .  \r   E   x   a   m   p   l   e   :  \r   _       (   D
0014520    E   F   I   N   E   Q       (   D   O   U   B   L   E       (
0014540    X   )  \r                                                    
0014560            (   C   O   N   D       (   (   N   U   M   B   E   R
0014600    P       X   )       (   P   L   U   S       X       X   )   )
0014620   \r                                                            
0014640                            (   (   S   T   R   I   N   G   P    
0014660    X   )       (   C   O   N   C   A   T       X       X   )   )
0014700   \r                                                            
0014720                            (   (   A   T   O   M       X   )    
0014740    (   P   A   C   K   *       X       X   )   )  \r            
0014760                                                                 
0015000            (   T       (   P   R   I   N   T       "   u   n   k
0015020    n   o   w   n   "   )       X   )  \r                        
0015040                                                                (
0015060    (   H   O   R   R   I   B   L   E   -   E   R   R   O   R   )
0015100    )   ]  \r   (   D   O   U   B   L   E   )  \r   _       (   D
0015120    O   U   B   L   E       5   )  \r   1   0  \r   _       (   D
0015140    O   U   B   L   E       "   F   O   O   "   )  \r   "   F   O
0015160    O   F   O   O   "  \r   _       (   D   O   U   B   L   E    
0015200    '   B   A   R   )  \r   B   A   R   B   A   R  \r   _       (
0015220    D   O   U   B   L   E       '   (   A       B       C   )   )
0015240   \r   "   u   n   k   n   o   w   n   "  \r   (   A       B    
0015260    C   )  \r   A       f   e   w       p   o   i   n   t   s    
0015300    a   b   o   u   t       t   h   i   s       e   x   a   m   p
0015320    l   e   :           N   o   t   i   c   e       t   h   a   t
0015340        5       i   s       b   o   t   h       a       n   u   m
0015360    b   e   r       a   n   d       a   n       a   t   o   m   ,
0015400        b   u   t       i   t       i   s       "   c   a   u   g
0015420    h   t   "       b   y       t   h   e       N   U   M   B   E
0015440    R   P       c   l   a   u   s   e       b   e   f   o   r   e
0015460        t   h   e       A   T   O   M       c   l   a   u   s   e
0015500    .           A   l   s   o       n   o   t   i   c   e       t
0015520    h   e       p   r   e   d   i   c   a   t   e       T   ,    
0015540    w   h   i   c   h       i   s       a   l   w   a   y   s    
0015560    t   r   u   e   .           T   h   i   s       i   s       t
0015600    h   e       n   o   r   m   a   l       w   a   y       t   o
0015620        i   n   d   i   c   a   t   e       a       C   O   N   D
0015640        c   l   a   u   s   e       w   h   i   c   h       w   i
0015660    l   l       a   l   w   a   y   s       b   e       e   x   e
0015700    c   u   t   e   d       (   i   f       n   o   n   e       o
0015720    f       t   h   e       p   r   e   c   e   e   d   i   n   g
0015740        c   l   a   u   s   e   s       a   r   e       t   r   u
0015760    e   )   .           (   H   O   R   R   I   B   L   E   -   E
0016000    R   R   O   R   )       w   i   l   l       n   e   v   e   r
0016020        b   e       e   x   e   c   u   t   e   d   .  \r  \r  \r
0016040    9   .   5          \t   T   h   e       I   F       S   t   a
0016060    t   e   m   e   n   t  \r  \r   T   h   e       I   F       s
0016100    t   a   t   e   m   e   n   t       p   r   o   v   i   d   e
0016120    s       a       w   a   y       o   f       w   a   y       o
0016140    f       s   p   e   c   i   f   y   i   n   g       c   o   n
0016160    d   i   t   i   o   n   a   l       e   x   p   r   e   s   s
0016200    i   o   n   s       t   h   a   t       i   s       m   u   c
0016220    h       e   a   s   i   e   r       a   n   d       r   e   a
0016240    d   a   b   l   e       t   h   a   n       u   s   i   n   g
0016260        t   h   e       C   O   N   D       f   u   n   c   t   i
0016300    o   n       d   i   r   e   c   t   l   y       (   p   a   g
0016320    e       X   .   X   X   )   .           C   L   I   S   P    
0016340    t   r   a   n   s   l   a   t   e   s       e   x   p   r   e
0016360    s   s   i   o   n   s       e   m   p   l   o   y   i   n   g
0016400        I   F   ,       T   H   E   N   ,       E   L   S   E   I
0016420    F   ,       o   r       E   L   S   E       (   o   r       t
0016440    h   e   i   r       l   o   w   e   r   c   a   s   e       v
0016460    e   r   s   i   o   n   s   )       i   n   t   o       e   q
0016500    u   i   v   a   l   e   n   t       C   O   N   D       e   x
0016520    p   r   e   s   s   i   o   n   s   .           I   n       g
0016540    e   n   e   r   a   l   ,       s   t   a   t   e   m   e   n
0016560    t   s       o   f       t   h   e       f   o   r   m   :  \r
0016600    (   i   f       A   A   A       t   h   e   n       B   B   B
0016620        e   l   s   e   i   f       C   C   C       t   h   e   n
0016640        D   D   D       e   l   s   e       E   E   E   )  \r   a
0016660    r   e       t   r   a   n   s   l   a   t   e   d       t   o
0016700    :  \r   (   C   O   N   D       (   A   A   A       B   B   B
0016720    )  \r                           (   C   C   C       D   D   D
0016740    )  \r                           (   T       E   E   E   )    
0016760    )  \r   T   h   e       s   e   g   m   e   n   t       b   e
0017000    t   w   e   e   n       I   F       o   r       E   L   S   E
0017020    I   F       a   n   d       t   h   e       n   e   x   t    
0017040    T   H   E   N       c   o   r   r   e   s   p   o   n   d   s
0017060        t   o       t   h   e       p   r   e   d   i   c   a   t
0017100    e       o   f       a       C   O   N   D       c   l   a   u
0017120    s   e   ,       a   n   d       t   h   e       s   e   g   m
0017140    e   n   t       b   e   t   w   e   e   n       T   H   E   N
0017160        a   n   d       t   h   e       n   e   x   t       E   L
0017200    S   E       o   r       E   L   S   E   I   F       a   s    
0017220    t   h   e       c   o   n   s   e   q   u   e   n   t   (   s
0017240    )   .           E   L   S   E       i   s       t   h   e    
0017260    s   a   m   e       a   s       E   L   S   E   I   F       T
0017300        T   H   E   N   .           T   h   e   s   e       w   o
0017320    r   d   s       a   r   e       s   p   e   l   l   i   n   g
0017340        c   o   r   r   e   c   t   e   d       u   s   i   n   g
0017360        t   h   e       s   p   e   l   l   i   n   g       l   i
0017400    s   t       C   L   I   S   P   I   F   W   O   R   D   S   P
0017420    L   S   T   .           L   o   w   e   r       c   a   s   e
0017440        v   e   r   s   i   o   n   s       (   i   f   ,       t
0017460    h   e   n   ,       e   l   s   e   i   f   ,       e   l   s
0017500    e   )       m   a   y       a   l   s   o       b   e       u
0017520    s   e   d   .  \r   I   f       t   h   e   r   e       i   s
0017540        n   o   t   h   i   n   g       f   o   l   l   o   w   i
0017560    n   g       a       T   H   E   N   ,       o   r       T   H
0017600    E   N       i   s       o   m   i   t   t   e   d       e   n
0017620    t   i   r   e   l   y   ,       t   h   e   n       t   h   e
0017640        r   e   s   u   l   t   i   n   g       C   O   N   D    
0017660    c   l   a   u   s   e       h   a   s       a       p   r   e
0017700    d   i   c   a   t   e       b   u   t       n   o       c   o
0017720    n   s   e   q   u   e   n   t   .           F   o   r       e
0017740    x   a   m   p   l   e   ,       (   i   f       X       t   h
0017760    e   n       e   l   s   e   i   f       .   .   .   )       a
0020000    n   d       (   i   f       X       e   l   s   e   i   f    
0020020    .   .   .   )       b   o   t   h       t   r   a   n   s   l
0020040    a   t   e       t   o       (   C   O   N   D       (   X   )
0020060        .   .   .   )   ,       w   h   i   c   h       m   e   a
0020100    n   s       t   h   a   t       i   f       X       i   s    
0020120    n   o   t       N   I   L   ,       i   t       i   s       r
0020140    e   t   u   r   n   e   d       a   s       t   h   e       v
0020160    a   l   u   e       o   f       t   h   e       C   O   N   D
0020200    .  \r   N   o   t   e       t   h   a   t       o   n   l   y
0020220        o   n   e       e   x   p   r   e   s   s   i   o   n    
0020240    i   s       a   l   l   o   w   e   d       a   s       t   h
0020260    e       p   r   e   d   i   c   a   t   e   ,       b   u   t
0020300        m   u   l   t   i   p   l   e       e   x   p   r   e   s
0020320    s   i   o   n   s       a   r   e       a   l   l   o   w   e
0020340    d       a   s       t   h   e       c   o   n   s   e   q   u
0020360    e   n   t   s       a   f   t   e   r       T   H   E   N    
0020400    o   r       E   L   S   E   .           M   u   l   t   i   p
0020420    l   e       c   o   n   s   e   q   u   e   n   t       e   x
0020440    p   r   e   s   s   i   o   n   s       a   r   e       i   m
0020460    p   l   i   c   i   t   e   l   y       w   r   a   p   p   e
0020500    d       i   n       a       P   R   O   G   N   ,       a   n
0020520    d       t   h   e       v   a   l   u   e       o   f       t
0020540    h   e       l   a   s   t       o   n   e       i   s       r
0020560    e   t   u   r   n   e   d       a   s       t   h   e       v
0020600    a   l   u   e       o   f       t   h   e       c   o   n   s
0020620    e   q   u   e   n   t   .           F   o   r       e   x   a
0020640    m   p   l   e   :  \r   (   i   f       X       t   h   e   n
0020660        (   P   R   I   N   T       "   F   O   O   "   )       (
0020700    P   R   I   N   T       "   B   A   R   "   )       e   l   s
0020720    e   i   f       Y       t   h   e   n       (   P   R   I   N
0020740    T       "   B   A   Z   "   )   )  \r   C   L   I   S   P    
0020760    c   o   n   s   i   d   e   r   s       I   F   ,       T   H
0021000    E   N   ,       E   L   S   E   ,       a   n   d       E   L
0021020    S   E   I   F       t   o       h   a   v   e       l   o   w
0021040    e   r       p   r   e   c   e   d   e   n   c   e       t   h
0021060    a   n       a   l   l       i   n   f   i   x       a   n   d
0021100        p   r   e   f   i   x       o   p   e   r   a   t   o   r
0021120    s   ,       a   s       w   e   l   l       a   s       I   n
0021140    t   e   r   l   i   s   p       f   o   r   m   s   ,       s
0021160    o       i   t       i   s       s   o   m   e   t   i   m   e
0021200    s       p   o   s   s   i   b   l   e       t   o       o   m
0021220    i   t       p   a   r   e   n   t   h   e   s   e   s       a
0021240    r   o   u   n   d       p   r   e   d   i   c   a   t   e    
0021260    o   r       c   o   n   s   e   q   u   e   n   t       f   o
0021300    r   m   s   .           F   o   r       e   x   a   m   p   l
0021320    e   ,       (   i   f       F   O   O       X       Y       t
0021340    h   e   n       .   .   .   )       i   s       e   q   u   i
0021360    v   a   l   e   n   t       t   o       (   i   f       (   F
0021400    O   O       X       Y   )       t   h   e   n       .   .   .
0021420    )   ,       a   n   d       (   i   f       X       t   h   e
0021440    n       F   O   O       X       Y       e   l   s   e       .
0021460    .   .   )       a   s       e   q   u   i   v   a   l   e   n
0021500    t       t   o       (   i   f       X       t   h   e   n    
0021520    (   F   O   O       X       Y   )       e   l   s   e       .
0021540    .   .   )   .           E   s   s   e   n   t   i   a   l   l
0021560    y   ,       C   L   I   S   P       d   e   t   e   r   m   i
0021600    n   e   s       w   h   e   t   h   e   r       t   h   e    
0021620    s   e   g   m   e   n   t       b   e   t   w   e   e   n    
0021640    T   H   E   N       a   n   d       t   h   e       n   e   x
0021660    t       E   L   S   E       o   r       E   L   S   E   I   F
0021700        c   o   r   r   e   s   p   o   n   d   s       t   o    
0021720    o   n   e       f   o   r   m       o   r       s   e   v   e
0021740    r   a   l       a   n   d       a   c   t   s       a   c   c
0021760    o   r   d   i   n   g   l   y   ,       o   c   c   a   s   i
0022000    o   n   a   l   l   y       i   n   t   e   r   a   c   t   i
0022020    n   g       w   i   t   h       t   h   e       u   s   e   r
0022040        t   o       r   e   s   o   l   v   e       a   m   b   i
0022060    g   u   o   u   s       c   a   s   e   s   .           N   o
0022100    t   e       t   h   a   t       i   f       F   O   O       i
0022120    s       b   o   u   n   d       a   s       a       v   a   r
0022140    i   a   b   l   e   ,       (   i   f       F   O   O       t
0022160    h   e   n       .   .   .   )       i   s       t   r   a   n
0022200    s   l   a   t   e   d       a   s       (   C   O   N   D    
0022220    (   F   O   O       .   .   .   )   )   ,       s   o       i
0022240    f       a       c   a   l   l       t   o       t   h   e    
0022260    f   u   n   c   t   i   o   n       F   O   O       i   s    
0022300    d   e   s   i   r   e   d   ,       u   s   e       (   i   f
0022320        (   F   O   O   )       t   h   e   n       .   .   .   )
0022340    .  \r  \r   9   .   6          \t   S   e   l   e   c   t   i
0022360    o   n       F   u   n   c   t   i   o   n   s  \r  \r   (   S
0022400    E   L   E   C   T   Q       X       C   L   A   U   S   E   1
0022420        C   L   A   U   S   E   2       .   .   .       C   L   A
0022440    U   S   E   K       D   E   F   A   U   L   T   )          \t
0022460    [   N   L   a   m   b   d   a       N   o   S   p   r   e   a
0022500    d       F   u   n   c   t   i   o   n   ]  \r   S   e   l   e
0022520    c   t   s       a       f   o   r   m       o   r       s   e
0022540    q   u   e   n   c   e       o   f       f   o   r   m   s    
0022560    b   a   s   e   d       o   n       t   h   e       v   a   l
0022600    u   e       o   f       X   .           E   a   c   h       c
0022620    l   a   u   s   e       C   L   A   U   S   E   i       i   s
0022640        a       l   i   s   t       o   f       t   h   e       f
0022660    o   r   m       (   S   i       C   i   1       .   .   .    
0022700    C   i   N   )       w   h   e   r   e       S   i       i   s
0022720        t   h   e       s   e   l   e   c   t   i   o   n       k
0022740    e   y   .           T   h   e       o   p   e   r   a   t   i
0022760    o   n       o   f       S   E   L   E   C   T   Q       c   a
0023000    n       b   e       p   a   r   a   p   h   r   a   s   e   d
0023020        a   s   :  \r   I   F       X       =       S   1       T
0023040    H   E   N       C   1   1       .   .   .       C   1   N    
0023060    E   L   S   E   I   F       X       =       S   2       T   H
0023100    E   N       .   .   .       E   L   S   E       D   E   F   A
0023120    U   L   T   .  \r   I   f       S   i       i   s       a   n
0023140        a   t   o   m   ,       t   h   e       v   a   l   u   e
0023160        o   f       X       i   s       t   e   s   t   e   d    
0023200    t   o       s   e   e       i   f       i   t       i   s    
0023220    E   Q       t   o       S   i       (   w   h   i   c   h    
0023240    i   s       n   o   t       e   v   a   l   u   a   t   e   d
0023260    )   .           I   f       s   o   ,       t   h   e       e
0023300    x   p   r   e   s   s   i   o   n   s       C   i   1       .
0023320    .   .       C   i   N       a   r   e       e   v   a   l   u
0023340    a   t   e   d       i   n       s   e   q   u   e   n   c   e
0023360    ,       a   n   d       t   h   e       v   a   l   u   e    
0023400    o   f       t   h   e       S   E   L   E   C   T   Q       i
0023420    s       t   h   e       v   a   l   u   e       o   f       t
0023440    h   e       l   a   s   t       e   x   p   r   e   s   s   i
0023460    o   n       e   v   a   l   u   a   t   e   d   ,       i   .
0023500    e   .   ,       C   i   N   .  \r   I   f       S   i       i
0023520    s       a       l   i   s   t   ,       t   h   e       v   a
0023540    l   u   e       o   f       X       i   s       c   o   m   p
0023560    a   r   e   d       w   i   t   h       e   a   c   h       e
0023600    l   e   m   e   n   t       (   n   o   t       e   v   a   l
0023620    u   a   t   e   d   )       o   f       S   i   ,       a   n
0023640    d       i   f       X       i   s       E   Q       t   o    
0023660    a   n   y       o   n   e       o   f       t   h   e   m   ,
0023700        t   h   e   n       C   i   1       .   .   .       C   i
0023720    N       a   r   e       e   v   a   l   u   a   t   e   d    
0023740    a   s       a   b   o   v   e   .  \r   I   f       C   L   A
0023760    U   S   E   i       i   s       n   o   t       s   e   l   e
0024000    c   t   e   d       i   n       o   n   e       o   f       t
0024020    h   e       t   w   o       w   a   y   s       d   e   s   c
0024040    r   i   b   e   d   ,       C   L   A   U   S   E   i   +   1
0024060        i   s       t   e   s   t   e   d   ,       e   t   c   .
0024100    ,       u   n   t   i   l       a   l   l       t   h   e    
0024120    c   l   a   u   s   e   s       h   a   v   e       b   e   e
0024140    n       t   e   s   t   e   d   .           I   f       n   o
0024160    n   e       i   s       s   e   l   e   c   t   e   d   ,    
0024200    D   E   F   A   U   L   T       i   s       e   v   a   l   u
0024220    a   t   e   d   ,       a   n   d       i   t   s       v   a
0024240    l   u   e       i   s       r   e   t   u   r   n   e   d    
0024260    a   s       t   h   e       v   a   l   u   e       o   f    
0024300    t   h   e       S   E   L   E   C   T   Q   .           D   E
0024320    F   A   U   L   T       m   u   s   t       b   e       p   r
0024340    e   s   e   n   t   .  \r   A   n       e   x   a   m   p   l
0024360    e       o   f       t   h   e       f   o   r   m       o   f
0024400        a       S   E   L   E   C   T   Q       i   s   :  \r   [
0024420    S   E   L   E   C   T   Q       M   O   N   T   H  \r        
0024440        (   F   E   B   R   U   A   R   Y       (   i   f       (
0024460    L   E   A   P   Y   E   A   R   P   )       t   h   e   n    
0024500    2   9       e   l   s   e       2   8   )   )  \r            
0024520    (   (   A   P   R   I   L       J   U   N   E       S   E   P
0024540    T   E   M   B   E   R       N   O   V   E   M   B   E   R   )
0024560        3   0   )  \r               3   1   ]  \r   I   f       t
0024600    h   e       v   a   l   u   e       o   f       M   O   N   T
0024620    H       i   s       t   h   e       l   i   t   a   t   o   m
0024640        F   E   B   R   U   A   R   Y   ,       t   h   e       S
0024660    E   L   E   C   T   Q       r   e   t   u   r   n   s       2
0024700    8       o   r       2   9       (   d   e   p   e   n   d   i
0024720    n   g       o   n       (   L   E   A   P   Y   E   A   R   P
0024740    )   )   ;           o   t   h   e   r   w   i   s   e       i
0024760    f       M   O   N   T   H       i   s       A   P   R   I   L
0025000    ,       J   U   N   E   ,       S   E   P   T   E   M   B   E
0025020    R   ,       o   r       N   O   V   E   M   B   E   R   ,    
0025040    t   h   e       S   E   L   E   C   T   Q       r   e   t   u
0025060    r   n   s       3   0   ;           o   t   h   e   r   w   i
0025100    s   e       i   t       r   e   t   u   r   n   s       3   1
0025120    .  \r   S   E   L   E   C   T   Q       c   o   m   p   i   l
0025140    e   s       o   p   e   n   ,       a   n   d       i   s    
0025160    t   h   e   r   e   f   o   r   e       v   e   r   y       f
0025200    a   s   t   ;       h   o   w   e   v   e   r   ,       i   t
0025220        w   i   l   l       n   o   t       w   o   r   k       i
0025240    f       t   h   e       v   a   l   u   e       o   f       X
0025260        i   s       a       l   i   s   t   ,       a       l   a
0025300    r   g   e       i   n   t   e   g   e   r   ,       o   r    
0025320    f   l   o   a   t   i   n   g       p   o   i   n   t       n
0025340    u   m   b   e   r   ,       s   i   n   c   e       S   E   L
0025360    E   C   T   Q       u   s   e   s       E   Q       f   o   r
0025400        a   l   l       c   o   m   p   a   r   i   s   o   n   s
0025420    .  \r  \r   N   o   t   e   :           S   E   L   C   H   A
0025440    R   Q       (   p   a   g   e       X   .   X   X   )       i
0025460    s       a       v   e   r   s   i   o   n       o   f       S
0025500    E   L   E   C   T   Q       t   h   a   t       r   e   c   o
0025520    g   n   i   z   e   s       C   H   A   R   C   O   D   E    
0025540    l   i   t   a   t   o   m   s   .  \r   (   S   E   L   E   C
0025560    T   C       X       C   L   A   U   S   E   1       C   L   A
0025600    U   S   E   2       .   .   .       C   L   A   U   S   E   K
0025620        D   E   F   A   U   L   T   )          \t   [   N   L   a
0025640    m   b   d   a       N   o   S   p   r   e   a   d       F   u
0025660    n   c   t   i   o   n   ]  \r   "   S   E   L   E   C   T   Q
0025700    -   o   n   -   C   o   n   s   t   a   n   t   .   "        
0025720    S   i   m   i   l   a   r       t   o       S   E   L   E   C
0025740    T   Q       e   x   c   e   p   t       t   h   a   t       t
0025760    h   e       s   e   l   e   c   t   i   o   n       k   e   y
0026000    s       a   r   e       e   v   a   l   u   a   t   e   d   ,
0026020        a   n   d       t   h   e       r   e   s   u   l   t    
0026040    u   s   e   d       a   s       a       S   E   L   E   C   T
0026060    Q   -   s   t   y   l   e       s   e   l   e   c   t   i   o
0026100    n       k   e   y   .  \r   S   E   L   E   C   T   C       i
0026120    s       c   o   m   p   i   l   e   d       a   s       a    
0026140    S   E   L   E   C   T   Q   ,       w   i   t   h       t   h
0026160    e       s   e   l   e   c   t   i   o   n       k   e   y   s
0026200        e   v   a   l   u   a   t   e   d       a   t       c   o
0026220    m   p   i   l   e   -   t   i   m   e   .           T   h   e
0026240    r   e   f   o   r   e   ,       t   h   e       s   e   l   e
0026260    c   t   i   o   n       k   e   y   s       a   c   t       l
0026300    i   k   e       c   o   m   p   i   l   e   -   t   i   m   e
0026320        c   o   n   s   t   a   n   t   s       (   s   e   e    
0026340    p   a   g   e       X   .   X   X   )   .           F   o   r
0026360        e   x   a   m   p   l   e   :  \r   [   S   E   L   E   C
0026400    T   C       N   U   M  \r               (       (   f   o   r
0026420        X       f   r   o   m       1       t   o       9       c
0026440    o   l   l   e   c   t       (   T   I   M   E   S       X    
0026460    X   )   )       "   S   Q   U   A   R   E   "       )  \r    
0026500            "   H   I   P   "   ]  \r   c   o   m   p   i   l   e
0026520    s       a   s   :  \r   [   S   E   L   E   C   T   Q       N
0026540    U   M  \r               (       (   1       4       9       1
0026560    6       2   5       3   6       4   9       6   4       8   1
0026600    )       "   S   Q   U   A   R   E   "       )  \r            
0026620    "   H   I   P   "   ]  \r  \r  \r   9   .   7          \t   P
0026640    R   O   G       a   n   d       A   s   s   o   c   i   a   t
0026660    e   d       C   o   n   t   r   o   l       F   u   n   c   t
0026700    i   o   n   s  \r  \r   (   P   R   O   G   1       X   1    
0026720    X   2       .   .   .       X   N   )          \t   [   N   L
0026740    a   m   b   d   a       N   o   S   p   r   e   a   d       F
0026760    u   n   c   t   i   o   n   ]  \r   E   v   a   l   u   a   t
0027000    e   s       i   t   s       a   r   g   u   m   e   n   t   s
0027020        i   n       o   r   d   e   r   ,       a   n   d       r
0027040    e   t   u   r   n   s       t   h   e       v   a   l   u   e
0027060        o   f       i   t   s       f   i   r   s   t       a   r
0027100    g   u   m   e   n   t       X   1   .           F   o   r    
0027120    e   x   a   m   p   l   e   ,       (   P   R   O   G   1    
0027140    X       (   S   E   T   Q       X       Y   )   )       s   e
0027160    t   s       X       t   o       Y   ,       a   n   d       r
0027200    e   t   u   r   n   s       X   '   s       o   r   i   g   i
0027220    n   a   l       v   a   l   u   e   .  \r  \r   (   P   R   O
0027240    G   2       X   1       X   2       .   .   .       X   N   )
0027260           \t   [   N   o   S   p   r   e   a   d       F   u   n
0027300    c   t   i   o   n   ]  \r   S   i   m   i   l   a   r       t
0027320    o       P   R   O   G   1   .           E   v   a   l   u   a
0027340    t   e   s       i   t   s       a   r   g   u   m   e   n   t
0027360    s       i   n       o   r   d   e   r   ,       a   n   d    
0027400    r   e   t   u   r   n   s       t   h   e       v   a   l   u
0027420    e       o   f       i   t   s       s   e   c   o   n   d    
0027440    a   r   g   u   m   e   n   t       X   2   .  \r  \r   (   P
0027460    R   O   G   N       X   1       X   2       .   .   .       X
0027500    N   )          \t   [   N   L   a   m   b   d   a       N   o
0027520    S   p   r   e   a   d       F   u   n   c   t   i   o   n   ]
0027540   \r   P   R   O   G   N       e   v   a   l   u   a   t   e   s
0027560        e   a   c   h       o   f       i   t   s       a   r   g
0027600    u   m   e   n   t   s       i   n       o   r   d   e   r   ,
0027620        a   n   d       r   e   t   u   r   n   s       t   h   e
0027640        v   a   l   u   e       o   f       i   t   s       l   a
0027660    s   t       a   r   g   u   m   e   n   t   .           P   R
0027700    O   G   N       i   s       u   s   e   d       t   o       s
0027720    p   e   c   i   f   y       m   o   r   e       t   h   a   n
0027740        o   n   e       c   o   m   p   u   t   a   t   i   o   n
0027760        w   h   e   r   e       t   h   e       s   y   n   t   a
0030000    x       a   l   l   o   w   s       o   n   l   y       o   n
0030020    e   ,       e   .   g   .   ,       (   S   E   L   E   C   T
0030040    Q       .   .   .       (   P   R   O   G   N       .   .   .
0030060    )   )       a   l   l   o   w   s       e   v   a   l   u   a
0030100    t   i   o   n       o   f       s   e   v   e   r   a   l    
0030120    e   x   p   r   e   s   s   i   o   n   s       a   s       t
0030140    h   e       d   e   f   a   u   l   t       c   o   n   d   i
0030160    t   i   o   n       f   o   r       a       S   E   L   E   C
0030200    T   Q   .  \r  \r   (   P   R   O   G       V   A   R   L   S
0030220    T       E   1       E   2       .   .   .       E   N   )    
0030240       \t   [   N   L   a   m   b   d   a       N   o   S   p   r
0030260    e   a   d       F   u   n   c   t   i   o   n   ]  \r   T   h
0030300    i   s       f   u   n   c   t   i   o   n       a   l   l   o
0030320    w   s       t   h   e       u   s   e   r       t   o       w
0030340    r   i   t   e       a   n       A   L   G   O   L   -   l   i
0030360    k   e       p   r   o   g   r   a   m       c   o   n   t   a
0030400    i   n   i   n   g       I   n   t   e   r   l   i   s   p    
0030420    e   x   p   r   e   s   s   i   o   n   s       (   f   o   r
0030440    m   s   )       t   o       b   e       e   x   e   c   u   t
0030460    e   d   .           T   h   e       f   i   r   s   t       a
0030500    r   g   u   m   e   n   t   ,       V   A   R   L   S   T   ,
0030520        i   s       a       l   i   s   t       o   f       l   o
0030540    c   a   l       v   a   r   i   a   b   l   e   s       (   m
0030560    u   s   t       b   e       N   I   L       i   f       n   o
0030600        v   a   r   i   a   b   l   e   s       a   r   e       u
0030620    s   e   d   )   .           E   a   c   h       a   t   o   m
0030640        i   n       V   A   R   L   S   T       i   s       t   r
0030660    e   a   t   e   d       a   s       t   h   e       n   a   m
0030700    e       o   f       a       l   o   c   a   l       v   a   r
0030720    i   a   b   l   e       a   n   d       b   o   u   n   d    
0030740    t   o       N   I   L   .           V   A   R   L   S   T    
0030760    c   a   n       a   l   s   o       c   o   n   t   a   i   n
0031000        l   i   s   t   s           o   f       t   h   e       f
0031020    o   r   m       (   L   I   T   A   T   O   M       F   O   R
0031040    M   )   .           I   n       t   h   i   s       c   a   s
0031060    e   ,       L   I   T   A   T   O   M       i   s       t   h
0031100    e       n   a   m   e       o   f       t   h   e       v   a
0031120    r   i   a   b   l   e       a   n   d       i   s       b   o
0031140    u   n   d       t   o       t   h   e       v   a   l   u   e
0031160        o   f       F   O   R   M   .           T   h   e       e
0031200    v   a   l   u   a   t   i   o   n       t   a   k   e   s    
0031220    p   l   a   c   e       b   e   f   o   r   e       a   n   y
0031240        o   f       t   h   e       b   i   n   d   i   n   g   s
0031260        a   r   e       p   e   r   f   o   r   m   e   d   ,    
0031300    e   .   g   .   ,       (   P   R   O   G       (   (   X    
0031320    Y   )       (   Y       X   )   )       .   .   .   )       w
0031340    i   l   l       b   i   n   d       l   o   c   a   l       v
0031360    a   r   i   a   b   l   e       X       t   o       t   h   e
0031400        v   a   l   u   e       o   f       Y       (   e   v   a
0031420    l   u   a   t   e   d       o   u   t   s   i   d   e       t
0031440    h   e       P   R   O   G   )       a   n   d       l   o   c
0031460    a   l       v   a   r   i   a   b   l   e       Y       t   o
0031500        t   h   e       v   a   l   u   e       o   f       X    
0031520    (   o   u   t   s   i   d   e       t   h   e       P   R   O
0031540    G   )   .           A   n       a   t   t   e   m   p   t    
0031560    t   o       u   s   e       a   n   y   t   h   i   n   g    
0031600    o   t   h   e   r       t   h   a   n       a       l   i   t
0031620    a   t   o   m       a   s       a       P   R   O   G       v
0031640    a   r   i   a   b   l   e       w   i   l   l       c   a   u
0031660    s   e       a   n       e   r   r   o   r   ,       A   R   G
0031700        N   O   T       L   I   T   A   T   O   M   .           A
0031720    n       a   t   t   e   m   p   t       t   o       u   s   e
0031740        N   I   L       o   r       T       a   s       a       P
0031760    R   O   G       v   a   r   i   a   b   l   e       w   i   l
0032000    l       c   a   u   s   e       a   n       e   r   r   o   r
0032020    ,       A   T   T   E   M   P   T       T   O       B   I   N
0032040    D       N   I   L       O   R       T   .  \r   T   h   e    
0032060    r   e   s   t       o   f       t   h   e       P   R   O   G
0032100        i   s       a       s   e   q   u   e   n   c   e       o
0032120    f       n   o   n   -   a   t   o   m   i   c       s   t   a
0032140    t   e   m   e   n   t   s       (   f   o   r   m   s   )    
0032160    a   n   d       l   i   t   a   t   o   m   s       (   l   a
0032200    b   e   l   s   )   .           T   h   e       f   o   r   m
0032220    s       a   r   e       e   v   a   l   u   a   t   e   d    
0032240    s   e   q   u   e   n   t   i   a   l   l   y   ;       t   h
0032260    e       l   a   b   e   l   s       s   e   r   v   e       o
0032300    n   l   y       a   s       m   a   r   k   e   r   s   .    
0032320        T   h   e       t   w   o       s   p   e   c   i   a   l
0032340        f   u   n   c   t   i   o   n   s       G   O       a   n
0032360    d       R   E   T   U   R   N       a   l   t   e   r       t
0032400    h   i   s       f   l   o   w       o   f       c   o   n   t
0032420    r   o   l       a   s       d   e   s   c   r   i   b   e   d
0032440        b   e   l   o   w   .           T   h   e       v   a   l
0032460    u   e       o   f       t   h   e       P   R   O   G       i
0032500    s       u   s   u   a   l   l   y       s   p   e   c   i   f
0032520    i   e   d       b   y       t   h   e       f   u   n   c   t
0032540    i   o   n       R   E   T   U   R   N   .           I   f    
0032560    n   o       R   E   T   U   R   N       i   s       e   x   e
0032600    c   u   t   e   d       b   e   f   o   r   e       t   h   e
0032620        P   R   O   G       "   f   a   l   l   s       o   f   f
0032640        t   h   e       e   n   d   ,   "       t   h   e       v
0032660    a   l   u   e       o   f       t   h   e       P   R   O   G
0032700        i   s       N   I   L   .  \r  \r   (   G   O       U   )
0032720           \t   [   N   L   a   m   b   d   a       N   o   S   p
0032740    r   e   a   d       F   u   n   c   t   i   o   n   ]  \r   G
0032760    O       i   s       u   s   e   d       t   o       c   a   u
0033000    s   e       a       t   r   a   n   s   f   e   r       i   n
0033020        a       P   R   O   G   .           (   G   O       L   )
0033040        w   i   l   l       c   a   u   s   e       t   h   e    
0033060    P   R   O   G       t   o       e   v   a   l   u   a   t   e
0033100        f   o   r   m   s       s   t   a   r   t   i   n   g    
0033120    a   t       t   h   e       l   a   b   e   l       L       (
0033140    G   O       d   o   e   s       n   o   t       e   v   a   l
0033160    u   a   t   e       i   t   s       a   r   g   u   m   e   n
0033200    t   )   .           A       G   O       c   a   n       b   e
0033220        u   s   e   d       a   t       a   n   y       l   e   v
0033240    e   l       i   n       a       P   R   O   G   .           I
0033260    f       t   h   e       l   a   b   e   l       i   s       n
0033300    o   t       f   o   u   n   d   ,       G   O       w   i   l
0033320    l       s   e   a   r   c   h       h   i   g   h   e   r    
0033340    p   r   o   g   s       w   i   t   h   i   n       t   h   e
0033360        s   a   m   e       f   u   n   c   t   i   o   n   ,    
0033400    e   .   g   .   ,       (   P   R   O   G       .   .   .    
0033420    A       .   .   .       (   P   R   O   G       .   .   .    
0033440    (   G   O       A   )   )   )   .       I   f       t   h   e
0033460        l   a   b   e   l       i   s       n   o   t       f   o
0033500    u   n   d       i   n       t   h   e       f   u   n   c   t
0033520    i   o   n       i   n       w   h   i   c   h       t   h   e
0033540        P   R   O   G       a   p   p   e   a   r   s   ,       a
0033560    n       e   r   r   o   r       i   s       g   e   n   e   r
0033600    a   t   e   d   ,       U   N   D   E   F   I   N   E   D    
0033620    O   R       I   L   L   E   G   A   L       G   O   .  \r  \r
0033640    (   R   E   T   U   R   N       X   )          \t   [   F   u
0033660    n   c   t   i   o   n   ]  \r   A       R   E   T   U   R   N
0033700        i   s       t   h   e       n   o   r   m   a   l       e
0033720    x   i   t       f   o   r       a       P   R   O   G   .    
0033740    I   t   s       a   r   g   u   m   e   n   t       i   s    
0033760    e   v   a   l   u   a   t   e   d       a   n   d       i   s
0034000        i   m   m   e   d   i   a   t   e   l   y       r   e   t
0034020    u   r   n   e   d       t   h   e       v   a   l   u   e    
0034040    o   f       t   h   e       P   R   O   G       i   n       w
0034060    h   i   c   h       i   t       a   p   p   e   a   r   s   .
0034100   \r  \r   N   o   t   e   :           I   f       a       G   O
0034120        o   r       R   E   T   U   R   N       i   s       e   x
0034140    e   c   u   t   e   d       i   n       a   n       i   n   t
0034160    e   r   p   r   e   t   e   d       f   u   n   c   t   i   o
0034200    n       w   h   i   c   h       i   s       n   o   t       a
0034220        P   R   O   G   ,       t   h   e       G   O       o   r
0034240        R   E   T   U   R   N       w   i   l   l       b   e    
0034260    e   x   e   c   u   t   e   d       i   n       t   h   e    
0034300    l   a   s   t       i   n   t   e   r   p   r   e   t   e   d
0034320        P   R   O   G       e   n   t   e   r   e   d       i   f
0034340        a   n   y   ,       o   t   h   e   r   w   i   s   e    
0034360    c   a   u   s   e       a   n       e   r   r   o   r   .  \r
0034400    G   O       o   r       R   E   T   U   R   N       i   n   s
0034420    i   d   e       o   f       a       c   o   m   p   i   l   e
0034440    d       f   u   n   c   t   i   o   n       t   h   a   t    
0034460    i   s       n   o   t       a       P   R   O   G       i   s
0034500        n   o   t       a   l   l   o   w   e   d   ,       a   n
0034520    d       w   i   l   l       c   a   u   s   e       a   n    
0034540    e   r   r   o   r       a   t       c   o   m   p   i   l   e
0034560        t   i   m   e   .  \r   A   s       a       c   o   r   o
0034600    l   l   a   r   y   ,       G   O       o   r       R   E   T
0034620    U   R   N       i   n       a       f   u   n   c   t   i   o
0034640    n   a   l       a   r   g   u   m   e   n   t   ,       e   .
0034660    g   .   ,       t   o       S   O   R   T   ,       w   i   l
0034700    l       n   o   t       w   o   r   k       c   o   m   p   i
0034720    l   e   d   .           A   l   s   o   ,       s   i   n   c
0034740    e       N   L   S   E   T   Q   '   s       a   n   d       E
0034760    R   S   E   T   Q   '   s       c   o   m   p   i   l   e    
0035000    a   s       s   e   p   a   r   a   t   e       f   u   n   c
0035020    t   i   o   n   s   ,       a       G   O       o   r       R
0035040    E   T   U   R   N       c   a   n   n   o   t       b   e    
0035060    u   s   e   d       i   n   s   i   d   e       o   f       a
0035100        c   o   m   p   i   l   e   d       N   L   S   E   T   Q
0035120        o   r       E   R   S   E   T   Q       i   f       t   h
0035140    e       c   o   r   r   e   s   p   o   n   d   i   n   g    
0035160    P   R   O   G       i   s       o   u   t   s   i   d   e   ,
0035200        i   .   e   .   ,       a   b   o   v   e   ,       t   h
0035220    e       N   L   S   E   T   Q       o   r       E   R   S   E
0035240    T   Q   .  \r   (   L   E   T       V   A   R   L   S   T    
0035260    E   1       E   2       .   .   .       E   N   )          \t
0035300    [   M   a   c   r   o   ]  \r   L   E   T       i   s       e
0035320    s   s   e   n   t   i   a   l   l   y       a       P   R   O
0035340    G       t   h   a   t       c   a   n   '   t       c   o   n
0035360    t   a   i   n       G   O   '   s       o   r       R   E   T
0035400    U   R   N   '   s   ,       a   n   d       w   h   o   s   e
0035420        l   a   s   t       f   o   r   m       i   s       t   h
0035440    e       r   e   t   u   r   n   e   d       v   a   l   u   e
0035460    .  \r  \r   (   L   E   T   *       V   A   R   L   S   T    
0035500    E   1       E   2       .   .   .       E   N   )          \t
0035520    [   M   a   c   r   o   ]  \r   (   P   R   O   G   *       V
0035540    A   R   L   S   T       E   1       E   2       .   .   .    
0035560    E   N   )          \t   [   M   a   c   r   o   ]  \r   L   E
0035600    T   *       a   n   d       P   R   O   G   *       d   i   f
0035620    f   e   r       f   r   o   m       L   E   T       a   n   d
0035640        P   R   O   G       o   n   l   y       i   n       t   h
0035660    a   t       t   h   e       b   i   n   d   i   n   g       o
0035700    f       t   h   e       b   o   u   n   d       v   a   r   i
0035720    a   b   l   e   s       i   s       d   o   n   e       "   s
0035740    e   q   u   e   n   t   i   a   l   l   y   .   "           T
0035760    h   u   s  \r   (   L   E   T   *       (   (   A       (   L
0036000    I   S   T       5   )   )  \r                           (   B
0036020        (   L   I   S   T       A       A   )   )   )  \r        
0036040        (   E   Q       A       (   C   A   D   R       B   )   )
0036060    )  \r   w   o   u   l   d       e   v   a   l   u   a   t   e
0036100        t   o       T   ;       w   h   e   r   e   a   s       t
0036120    h   e       s   a   m   e       f   o   r   m       w   i   t
0036140    h       L   E   T       m   i   g   h   t       e   v   e   n
0036160        f   i   n   d       A       a   n       u   n   b   o   u
0036200    n   d       v   a   r   i   a   b   l   e       w   h   e   n
0036220        e   v   a   l   u   a   t   i   n   g       (   L   I   S
0036240    T       A       A   )   .  \r  \r  \r   9   .   8          \t
0036260    T   h   e       I   t   e   r   a   t   i   v   e       S   t
0036300    a   t   e   m   e   n   t  \r  \r   T   h   e       i   t   e
0036320    r   a   t   i   v   e       s   t   a   t   e   m   e   n   t
0036340        (   i   .   s   .   )       i   n       i   t   s       v
0036360    a   r   i   o   u   s       f   o   r   m   s       p   e   r
0036400    m   i   t   s       t   h   e       u   s   e   r       t   o
0036420        s   p   e   c   i   f   y       c   o   m   p   l   i   c
0036440    a   t   e   d       i   t   e   r   a   t   i   v   e       s
0036460    t   a   t   e   m   e   n   t   s       i   n       a       s
0036500    t   r   a   i   g   h   t   f   o   r   w   a   r   d       a
0036520    n   d       v   i   s   i   b   l   e       m   a   n   n   e
0036540    r   .       R   a   t   h   e   r       t   h   a   n       t
0036560    h   e       u   s   e   r       h   a   v   i   n   g       t
0036600    o       p   e   r   f   o   r   m       t   h   e       m   e
0036620    n   t   a   l       t   r   a   n   s   f   o   r   m   a   t
0036640    i   o   n   s       t   o       a   n       e   q   u   i   v
0036660    a   l   e   n   t       I   n   t   e   r   l   i   s   p    
0036700    f   o   r   m       u   s   i   n   g       P   R   O   G   ,
0036720        M   A   P   C   ,       M   A   P   C   A   R   ,       e
0036740    t   c   .   ,       t   h   e       s   y   s   t   e   m    
0036760    d   o   e   s       i   t       f   o   r       h   i   m   .
0037000            T   h   e       g   o   a   l       w   a   s       t
0037020    o       p   r   o   v   i   d   e       a       r   o   b   u
0037040    s   t       a   n   d       t   o   l   e   r   a   n   t    
0037060    f   a   c   i   l   i   t   y       w   h   i   c   h       c
0037100    o   u   l   d       "   m   a   k   e       s   e   n   s   e
0037120    "       o   u   t       o   f       a       w   i   d   e    
0037140    c   l   a   s   s       o   f       i   t   e   r   a   t   i
0037160    v   e       s   t   a   t   e   m   e   n   t   s   .        
0037200    A   c   c   o   r   d   i   n   g   l   y   ,       t   h   e
0037220        u   s   e   r       s   h   o   u   l   d       n   o   t
0037240        f   e   e   l       o   b   l   i   g   e   d       t   o
0037260        r   e   a   d       a   n   d       u   n   d   e   r   s
0037300    t   a   n   d       i   n       d   e   t   a   i   l       t
0037320    h   e       d   e   s   c   r   i   p   t   i   o   n       o
0037340    f       e   a   c   h       o   p   e   r   a   t   o   r    
0037360    g   i   v   e   n       b   e   l   o   w       i   n       o
0037400    r   d   e   r       t   o       u   s   e       i   t   e   r
0037420    a   t   i   v   e       s   t   a   t   e   m   e   n   t   s
0037440    .  \r   A   n       i   t   e   r   a   t   i   v   e       s
0037460    t   a   t   e   m   e   n   t       i   s       a       f   o
0037500    r   m       c   o   n   s   i   s   t   i   n   g       o   f
0037520        a       n   u   m   b   e   r       o   f       s   p   e
0037540    c   i   a   l       w   o   r   d   s       (   k   n   o   w
0037560    n       a   s       i   .   s   .       o   p   e   r   a   t
0037600    o   r   s       o   r       i   .   s   .   o   p   r   s   )
0037620    ,       f   o   l   l   o   w   e   d       b   y       o   p
0037640    e   r   a   n   d   s   .           M   a   n   y       i   .
0037660    s   .   o   p   r   s       (   F   O   R   ,       D   O   ,
0037700        W   H   I   L   E   ,       e   t   c   .   )       a   r
0037720    e       s   i   m   i   l   a   r       t   o       i   t   e
0037740    r   a   t   i   v   e       s   t   a   t   e   m   e   n   t
0037760    s       i   n       o   t   h   e   r       p   r   o   g   r
0040000    a   m   m   i   n   g       l   a   n   g   u   a   g   e   s
0040020    ;           o   t   h   e   r       i   .   s   .   o   p   r
0040040    s       (   C   O   L   L   E   C   T   ,       J   O   I   N
0040060    ,       I   N   ,       e   t   c   .   )       s   p   e   c
0040100    i   f   y       u   s   e   f   u   l       o   p   e   r   a
0040120    t   i   o   n   s       i   n       a       L   i   s   p    
0040140    e   n   v   i   r   o   n   m   e   n   t   .           L   o
0040160    w   e   r       c   a   s   e       v   e   r   s   i   o   n
0040200    s       o   f       i   .   s   .   o   p   r   s       (   d
0040220    o   ,       c   o   l   l   e   c   t   ,       e   t   c   .
0040240    )       c   a   n       a   l   s   o       b   e       u   s
0040260    e   d   .           H   e   r   e       a   r   e       s   o
0040300    m   e       e   x   a   m   p   l   e   s       o   f       i
0040320    t   e   r   a   t   i   v   e       s   t   a   t   e   m   e
0040340    n   t   s   :  \r   _       (   f   o   r       X       f   r
0040360    o   m       1       t   o       5       d   o       (   P   R
0040400    I   N   T       '   F   O   O   )   )  \r   F   O   O  \r   F
0040420    O   O  \r   F   O   O  \r   F   O   O  \r   F   O   O  \r   N
0040440    I   L  \r   _       (   f   o   r       X       f   r   o   m
0040460        2       t   o       1   0       b   y       2       c   o
0040500    l   l   e   c   t       (   T   I   M   E   S       X       X
0040520    )   )  \r   (   4       1   6       3   6       6   4       1
0040540    0   0   )  \r   _       (   f   o   r       X       i   n    
0040560    '   (   A       B       1       C       6   .   5       N   I
0040600    L       (   4   5   )   )       c   o   u   n   t       (   N
0040620    U   M   B   E   R   P       X   )   )  \r   2  \r   I   t   e
0040640    r   a   t   i   v   e       s   t   a   t   e   m   e   n   t
0040660    s       a   r   e       i   m   p   l   e   m   e   n   t   e
0040700    d       t   h   r   o   u   g   h       C   L   I   S   P   ,
0040720        w   h   i   c   h       t   r   a   n   s   l   a   t   e
0040740    s       t   h   e       f   o   r   m       i   n   t   o    
0040760    t   h   e       a   p   p   r   o   p   r   i   a   t   e    
0041000    P   R   O   G   ,       M   A   P   C   A   R   ,       e   t
0041020    c   .           I   t   e   r   a   t   i   v   e       s   t
0041040    a   t   e   m   e   n   t       f   o   r   m   s       a   r
0041060    e       t   r   a   n   s   l   a   t   e   d       u   s   i
0041100    n   g       a   l   l       C   L   I   S   P       d   e   c
0041120    l   a   r   a   t   i   o   n   s       i   n       e   f   f
0041140    e   c   t       (   s   t   a   n   d   a   r   d   /   f   a
0041160    s   t   /   u   n   d   o   a   b   l   e   /       e   t   c
0041200    .   )   ;       s   e   e       p   a   g   e       X   .   X
0041220    X   .           M   i   s   s   p   e   l   l   e   d       i
0041240    .   s   .   o   p   r   s       a   r   e       r   e   c   o
0041260    g   n   i   z   e   d       a   n   d       c   o   r   r   e
0041300    c   t   e   d       u   s   i   n   g       t   h   e       s
0041320    p   e   l   l   i   n   g       l   i   s   t       C   L   I
0041340    S   P   F   O   R   W   O   R   D   S   P   L   S   T   .    
0041360        T   h   e       o   r   d   e   r       o   f       a   p
0041400    p   e   a   r   a   n   c   e       o   f       o   p   e   r
0041420    a   t   o   r   s       i   s       n   e   v   e   r       i
0041440    m   p   o   r   t   a   n   t   ;       C   L   I   S   P    
0041460    s   c   a   n   s       t   h   e       e   n   t   i   r   e
0041500        s   t   a   t   e   m   e   n   t       b   e   f   o   r
0041520    e       i   t       b   e   g   i   n   s       t   o       c
0041540    o   n   s   t   r   u   c   t       t   h   e       e   q   u
0041560    i   v   a   l   e   n   t       I   n   t   e   r   l   i   s
0041600    p       f   o   r   m   .           N   e   w       i   .   s
0041620    .   o   p   r   s       c   a   n       b   e       d   e   f
0041640    i   n   e   d       a   s       d   e   s   c   r   i   b   e
0041660    d       o   n       p   a   g   e       X   .   X   X   .  \r
0041700    I   f       t   h   e       u   s   e   r       d   e   f   i
0041720    n   e   s       a       f   u   n   c   t   i   o   n       b
0041740    y       t   h   e       s   a   m   e       n   a   m   e    
0041760    a   s       a   n       i   .   s   .   o   p   r       (   W
0042000    H   I   L   E   ,       T   O   ,       e   t   c   .   )   ,
0042020        t   h   e       i   .   s   .   o   p   r       w   i   l
0042040    l       n   o       l   o   n   g   e   r       h   a   v   e
0042060        t   h   e       C   L   I   S   P       i   n   t   e   r
0042100    p   r   e   t   a   t   i   o   n       w   h   e   n       i
0042120    t       a   p   p   e   a   r   s       a   s       C   A   R
0042140        o   f       a       f   o   r   m   ,       a   l   t   h
0042160    o   u   g   h       i   t       w   i   l   l       c   o   n
0042200    t   i   n   u   e       t   o       b   e       t   r   e   a
0042220    t   e   d       a   s       a   n       i   .   s   .   o   p
0042240    r       i   f       i   t       a   p   p   e   a   r   s    
0042260    i   n       t   h   e       i   n   t   e   r   i   o   r    
0042300    o   f       a   n       i   t   e   r   a   t   i   v   e    
0042320    s   t   a   t   e   m   e   n   t   .           T   o       a
0042340    l   e   r   t       t   h   e       u   s   e   r   ,       a
0042360        w   a   r   n   i   n   g       m   e   s   s   a   g   e
0042400        i   s       p   r   i   n   t   e   d   ,       e   .   g
0042420    .   ,       (   W   H   I   L   E       D   E   F   I   N   E
0042440    D   ,       T   H   E   R   E   F   O   R   E       D   I   S
0042460    A   B   L   E   D       I   N       C   L   I   S   P   )   .
0042500   \r   9   .   8   .   1          \t   I   .   s   .   t   y   p
0042520    e   s  \r  \r   T   h   e       f   o   l   l   o   w   i   n
0042540    g       i   .   s   .   o   p   r   s       a   r   e       e
0042560    x   a   m   p   l   e   s       o   f       a       c   e   r
0042600    t   a   i   n       k   i   n   d       o   f       i   t   e
0042620    r   a   t   i   v   e       s   t   a   t   e   m   e   n   t
0042640        o   p   e   r   a   t   o   r       c   a   l   l   e   d
0042660        a   n       i   .   s   .   t   y   p   e   .           T
0042700    h   e       i   .   s   .   t   y   p   e       s   p   e   c
0042720    i   f   i   e   s       w   h   a   t       i   s       t   o
0042740        b   e       d   o   n   e       a   t       e   a   c   h
0042760        i   t   e   r   a   t   i   o   n   .           I   t   s
0043000        o   p   e   r   a   n   d       i   s       c   a   l   l
0043020    e   d       t   h   e       "   b   o   d   y   "       o   f
0043040        t   h   e       i   t   e   r   a   t   i   v   e       s
0043060    t   a   t   e   m   e   n   t   .           E   a   c   h    
0043100    i   t   e   r   a   t   i   v   e       s   t   a   t   e   m
0043120    e   n   t       m   u   s   t       h   a   v   e       o   n
0043140    e       a   n   d       o   n   l   y       o   n   e       i
0043160    .   s   .   t   y   p   e   .  \r   D   O       F   O   R   M
0043200           \t   [   I   .   S   .       O   p   e   r   a   t   o
0043220    r   ]  \r   S   p   e   c   i   f   i   e   s       w   h   a
0043240    t       i   s       t   o       b   e       d   o   n   e    
0043260    a   t       e   a   c   h       i   t   e   r   a   t   i   o
0043300    n   .           D   O       w   i   t   h       n   o       o
0043320    t   h   e   r       o   p   e   r   a   t   o   r       s   p
0043340    e   c   i   f   i   e   s       a   n       i   n   f   i   n
0043360    i   t   e       l   o   o   p   .           I   f       s   o
0043400    m   e       e   x   p   l   i   c   i   t       o   r       i
0043420    m   p   l   i   c   i   t       t   e   r   m   i   n   a   t
0043440    i   n   g       c   o   n   d   i   t   i   o   n       i   s
0043460        s   p   e   c   i   f   i   e   d   ,       t   h   e    
0043500    v   a   l   u   e       o   f       t   h   e       i   .   s
0043520    .       i   s       N   I   L   .           T   r   a   n   s
0043540    l   a   t   e   s       t   o       M   A   P   C       o   r
0043560        M   A   P       w   h   e   n   e   v   e   r       p   o
0043600    s   s   i   b   l   e   .  \r  \r   C   O   L   L   E   C   T
0043620        F   O   R   M          \t   [   I   .   S   .       O   p
0043640    e   r   a   t   o   r   ]  \r   S   p   e   c   i   f   i   e
0043660    s       t   h   a   t       t   h   e       v   a   l   u   e
0043700        o   f       F   O   R   M       a   t       e   a   c   h
0043720        i   t   e   r   a   t   i   o   n       i   s       t   o
0043740        b   e       c   o   l   l   e   c   t   e   d       i   n
0043760        a       l   i   s   t   ,       w   h   i   c   h       i
0044000    s       r   e   t   u   r   n   e   d       a   s       t   h
0044020    e       v   a   l   u   e       o   f       t   h   e       i
0044040    .   s   .       w   h   e   n       i   t       t   e   r   m
0044060    i   n   a   t   e   s   .           T   r   a   n   s   l   a
0044100    t   e   s       t   o       M   A   P   C   A   R   ,       M
0044120    A   P   L   I   S   T       o   r       S   U   B   S   E   T
0044140        w   h   e   n   e   v   e   r       p   o   s   s   i   b
0044160    l   e   .  \r   W   h   e   n       C   O   L   L   E   C   T
0044200        t   r   a   n   s   l   a   t   e   s       t   o       a
0044220        P   R   O   G       (   e   .   g   .   ,       i   f    
0044240    U   N   T   I   L   ,       W   H   I   L   E   ,       e   t
0044260    c   .       a   p   p   e   a   r       i   n       t   h   e
0044300        i   .   s   .   )   ,       t   h   e       t   r   a   n
0044320    s   l   a   t   i   o   n       e   m   p   l   o   y   s    
0044340    a   n       o   p   e   n       T   C   O   N   C       u   s
0044360    i   n   g       t   w   o       p   o   i   n   t   e   r   s
0044400        s   i   m   i   l   a   r       t   o       t   h   a   t
0044420        u   s   e   d       b   y       t   h   e       c   o   m
0044440    p   i   l   e   r       f   o   r       c   o   m   p   i   l
0044460    i   n   g       M   A   P   C   A   R   .           T   o    
0044500    d   i   s   a   b   l   e       t   h   i   s       t   r   a
0044520    n   s   l   a   t   i   o   n   ,       p   e   r   f   o   r
0044540    m       (   C   L   D   I   S   A   B   L   E       '   F   C
0044560    O   L   L   E   C   T   )       (   s   e   e       p   a   g
0044600    e       X   .   X   X   )   .  \r  \r   J   O   I   N       F
0044620    O   R   M          \t   [   I   .   S   .       O   p   e   r
0044640    a   t   o   r   ]  \r   S   i   m   i   l   a   r       t   o
0044660        C   O   L   L   E   C   T   ,       e   x   c   e   p   t
0044700        t   h   a   t       t   h   e       v   a   l   u   e   s
0044720        o   f       F   O   R   M       a   t       e   a   c   h
0044740        i   t   e   r   a   t   i   o   n       a   r   e       N
0044760    C   O   N   C   e   d   .           T   r   a   n   s   l   a
0045000    t   e   s       t   o       M   A   P   C   O   N   C       o
0045020    r       M   A   P   C   O   N       w   h   e   n   e   v   e
0045040    r       p   o   s   s   i   b   l   e   .           /   N   C
0045060    O   N   C   ,       /   M   A   P   C   O   N   C   ,       a
0045100    n   d       /   M   A   P   C   O   N       a   r   e       u
0045120    s   e   d       w   h   e   n       t   h   e       C   L   I
0045140    S   P       d   e   c   l   a   r   a   t   i   o   n       U
0045160    N   D   O   A   B   L   E       i   s       i   n       e   f
0045200    f   e   c   t   .  \r  \r   S   U   M       F   O   R   M    
0045220       \t   [   I   .   S   .       O   p   e   r   a   t   o   r
0045240    ]  \r   S   p   e   c   i   f   i   e   s       t   h   a   t
0045260        t   h   e       v   a   l   u   e   s       o   f       F
0045300    O   R   M       a   t       e   a   c   h       i   t   e   r
0045320    a   t   i   o   n       b   e       a   d   d   e   d       t
0045340    o   g   e   t   h   e   r       a   n   d       r   e   t   u
0045360    r   n   e   d       a   s       t   h   e       v   a   l   u
0045400    e       o   f       t   h   e       i   .   s   .   ,       e
0045420    .   g   .   ,       (   f   o   r       I       f   r   o   m
0045440        1       t   o       5       s   u   m       (   T   I   M
0045460    E   S       I       I   )   )       r   e   t   u   r   n   s
0045500        1   +   4   +   9   +   1   6   +   2   5       =       5
0045520    5   .           I   P   L   U   S   ,       F   P   L   U   S
0045540    ,       o   r       P   L   U   S       w   i   l   l       b
0045560    e       u   s   e   d       i   n       t   h   e       t   r
0045600    a   n   s   l   a   t   i   o   n       d   e   p   e   n   d
0045620    i   n   g       o   n       t   h   e       C   L   I   S   P
0045640        d   e   c   l   a   r   a   t   i   o   n   s       i   n
0045660        e   f   f   e   c   t   .  \r  \r   C   O   U   N   T    
0045700    F   O   R   M          \t   [   I   .   S   .       O   p   e
0045720    r   a   t   o   r   ]  \r   C   o   u   n   t   s       t   h
0045740    e       n   u   m   b   e   r       o   f       t   i   m   e
0045760    s       t   h   a   t       F   O   R   M       i   s       t
0046000    r   u   e   ,       a   n   d       r   e   t   u   r   n   s
0046020        t   h   a   t       c   o   u   n   t       a   s       i
0046040    t   s       v   a   l   u   e   .  \r  \r   A   L   W   A   Y
0046060    S       F   O   R   M          \t   [   I   .   S   .       O
0046100    p   e   r   a   t   o   r   ]  \r   R   e   t   u   r   n   s
0046120        T       i   f       t   h   e       v   a   l   u   e    
0046140    o   f       F   O   R   M       i   s       n   o   n   -   N
0046160    I   L       f   o   r       a   l   l       i   t   e   r   a
0046200    t   i   o   n   s   .           (   N   o   t   e   :       r
0046220    e   t   u   r   n   s       N   I   L       a   s       s   o
0046240    o   n       a   s       t   h   e       v   a   l   u   e    
0046260    o   f       F   O   R   M       i   s       N   I   L   )   .
0046300   \r  \r   N   E   V   E   R       F   O   R   M          \t   [
0046320    I   .   S   .       O   p   e   r   a   t   o   r   ]  \r   S
0046340    i   m   i   l   a   r       t   o       A   L   W   A   Y   S
0046360    ,       e   x   c   e   p   t       r   e   t   u   r   n   s
0046400        T       i   f       t   h   e       v   a   l   u   e    
0046420    o   f       F   O   R   M       i   s       n   e   v   e   r
0046440        t   r   u   e   .           (   N   o   t   e   :       r
0046460    e   t   u   r   n   s       N   I   L       a   s       s   o
0046500    o   n       a   s       t   h   e       v   a   l   u   e    
0046520    o   f       F   O   R   M       i   s       n   o   n   -   N
0046540    I   L   )   .  \r  \r   T   h   e       f   o   l   l   o   w
0046560    i   n   g       i   .   s   .   t   y   p   e   s       e   x
0046600    p   l   i   c   i   t   l   y       r   e   f   e   r       t
0046620    o       t   h   e       i   t   e   r   a   t   i   o   n    
0046640    v   a   r   i   a   b   l   e       (   i   .   v   .   )    
0046660    o   f       t   h   e       i   t   e   r   a   t   i   v   e
0046700        s   t   a   t   e   m   e   n   t   ,       w   h   i   c
0046720    h       i   s       a       v   a   r   i   a   b   l   e    
0046740    s   e   t       a   t       e   a   c   h       i   t   e   r
0046760    a   t   i   o   n   .           T   h   i   s       i   s    
0047000    e   x   p   l   a   i   n   e   d       b   e   l   o   w    
0047020    u   n   d   e   r       F   O   R   .  \r   T   H   E   R   E
0047040    I   S       F   O   R   M          \t   [   I   .   S   .    
0047060    O   p   e   r   a   t   o   r   ]  \r   R   e   t   u   r   n
0047100    s       t   h   e       f   i   r   s   t       v   a   l   u
0047120    e       o   f       t   h   e       i   .   v   .       f   o
0047140    r       w   h   i   c   h       F   O   R   M       i   s    
0047160    n   o   n   -   N   I   L   ,       e   .   g   .   ,       (
0047200    f   o   r       X       i   n       Y       t   h   e   r   e
0047220    i   s       (   N   U   M   B   E   R   P       X   )   )    
0047240    r   e   t   u   r   n   s       t   h   e       f   i   r   s
0047260    t       n   u   m   b   e   r       i   n       Y   .        
0047300    (   N   o   t   e   :       r   e   t   u   r   n   s       t
0047320    h   e       v   a   l   u   e       o   f       t   h   e    
0047340    i   .   v   .       a   s       s   o   o   n       a   s    
0047360    t   h   e       v   a   l   u   e       o   f       F   O   R
0047400    M       i   s       n   o   n   -   N   I   L   )   .  \r  \r
0047420    L   A   R   G   E   S   T       F   O   R   M          \t   [
0047440    I   .   S   .       O   p   e   r   a   t   o   r   ]  \r   S
0047460    M   A   L   L   E   S   T       F   O   R   M          \t   [
0047500    I   .   S   .       O   p   e   r   a   t   o   r   ]  \r   R
0047520    e   t   u   r   n   s       t   h   e       v   a   l   u   e
0047540        o   f       t   h   e       i   .   v   .       t   h   a
0047560    t       p   r   o   v   i   d   e   s       t   h   e       l
0047600    a   r   g   e   s   t   /   s   m   a   l   l   e   s   t    
0047620    v   a   l   u   e       o   f       F   O   R   M   .        
0047640    $   $   E   X   T   R   E   M   E       i   s       a   l   w
0047660    a   y   s       b   o   u   n   d       t   o       t   h   e
0047700        c   u   r   r   e   n   t       g   r   e   a   t   e   s
0047720    t   /   s   m   a   l   l   e   s   t       v   a   l   u   e
0047740    ,       $   $   V   A   L       t   o       t   h   e       v
0047760    a   l   u   e       o   f       t   h   e       i   .   v   .
0050000        f   r   o   m       w   h   i   c   h       i   t       c
0050020    a   m   e   .  \r  \r   9   .   8   .   2          \t   I   t
0050040    e   r   a   t   i   o   n       V   a   r   i   a   b   l   e
0050060        I   .   s   .   o   p   r   s  \r  \r   F   O   R       V
0050100    A   R          \t   [   I   .   S   .       O   p   e   r   a
0050120    t   o   r   ]  \r   S   p   e   c   i   f   i   e   s       t
0050140    h   e       i   t   e   r   a   t   i   o   n       v   a   r
0050160    i   a   b   l   e       (   i   .   v   .   )       w   h   i
0050200    c   h       i   s       u   s   e   d       i   n       c   o
0050220    n   j   u   n   c   t   i   o   n       w   i   t   h       I
0050240    N   ,       O   N   ,       F   R   O   M   ,       T   O   ,
0050260        a   n   d       B   Y   .           T   h   e       v   a
0050300    r   i   a   b   l   e       i   s       r   e   b   o   u   n
0050320    d       w   i   t   h   i   n       t   h   e       i   .   s
0050340    .   ,       s   o       t   h   e       v   a   l   u   e    
0050360    o   f       t   h   e       v   a   r   i   a   b   l   e    
0050400    o   u   t   s   i   d   e       t   h   e       i   .   s   .
0050420        i   s       n   o   t       e   f   f   e   c   t   e   d
0050440    .           E   x   a   m   p   l   e   :  \r   _       (   S
0050460    E   T   Q       X       5   5   )  \r   5   5  \r   _       (
0050500    f   o   r       X       f   r   o   m       1       t   o    
0050520    5       c   o   l   l   e   c   t       (   T   I   M   E   S
0050540        X       X   )   )  \r   (   1       4       9       1   6
0050560        2   5   )  \r   _       X  \r   5   5  \r  \r   F   O   R
0050600        V   A   R   S          \t   [   I   .   S   .       O   p
0050620    e   r   a   t   o   r   ]  \r   V   A   R   S       a       l
0050640    i   s   t       o   f       v   a   r   i   a   b   l   e   s
0050660    ,       e   .   g   .   ,       (   f   o   r       (   X    
0050700    Y       Z   )       i   n       .   .   .   )   .           T
0050720    h   e       f   i   r   s   t       v   a   r   i   a   b   l
0050740    e       i   s       t   h   e       i   .   v   .   ,       t
0050760    h   e       r   e   s   t       a   r   e       d   u   m   m
0051000    y       v   a   r   i   a   b   l   e   s   .           S   e
0051020    e       B   I   N   D       b   e   l   o   w   .  \r  \r   F
0051040    O   R       O   L   D       V   A   R          \t   [   I   .
0051060    S   .       O   p   e   r   a   t   o   r   ]  \r   S   i   m
0051100    i   l   a   r       t   o       F   O   R   ,       e   x   c
0051120    e   p   t       t   h   a   t       V   A   R       i   s    
0051140    n   o   t       r   e   b   o   u   n   d       w   i   t   h
0051160    i   n       t   h   e       i   .   s   .   ,       s   o    
0051200    t   h   e       v   a   l   u   e       o   f       t   h   e
0051220        i   .   v   .       o   u   t   s   i   d   e       o   f
0051240        t   h   e       i   .   s   .       i   s       c   h   a
0051260    n   g   e   d   .               E   x   a   m   p   l   e   :
0051300   \r   _       (   S   E   T   Q       X       5   5   )  \r   5
0051320    5  \r   _       (   f   o   r       o   l   d       X       f
0051340    r   o   m       1       t   o       5       c   o   l   l   e
0051360    c   t       (   T   I   M   E   S       X       X   )   )  \r
0051400    (   1       4       9       1   6       2   5   )  \r   _    
0051420    X  \r   6  \r  \r   B   I   N   D       V   A   R          \t
0051440    [   I   .   S   .       O   p   e   r   a   t   o   r   ]  \r
0051460    B   I   N   D       V   A   R   S          \t   [   I   .   S
0051500    .       O   p   e   r   a   t   o   r   ]  \r   U   s   e   d
0051520        t   o       s   p   e   c   i   f   y       d   u   m   m
0051540    y       v   a   r   i   a   b   l   e   s   ,       w   h   i
0051560    c   h       a   r   e       b   o   u   n   d       l   o   c
0051600    a   l   l   y       w   i   t   h   i   n       t   h   e    
0051620    i   .   s   .  \r  \r   N   o   t   e   :           F   O   R
0051640    ,       F   O   R       O   L   D   ,       a   n   d       B
0051660    I   N   D       v   a   r   i   a   b   l   e   s       c   a
0051700    n       b   e       i   n   i   t   i   a   l   i   z   e   d
0051720        b   y       u   s   i   n   g       t   h   e       f   o
0051740    r   m       V   A   R   _   F   O   R   M   :  \r   (   f   o
0051760    r       o   l   d       (   X   _   F   O   R   M   )       b
0052000    i   n   d       (   Y   _   F   O   R   M   )       .   .   .
0052020    )  \r   I   N       F   O   R   M          \t   [   I   .   S
0052040    .       O   p   e   r   a   t   o   r   ]  \r   S   p   e   c
0052060    i   f   i   e   s       t   h   a   t       t   h   e       i
0052100    .   s   .       i   s       t   o       i   t   e   r   a   t
0052120    e       d   o   w   n       a       l   i   s   t       w   i
0052140    t   h       t   h   e       i   .   v   .       b   e   i   n
0052160    g       r   e   s   e   t       t   o       t   h   e       c
0052200    o   r   r   e   s   p   o   n   d   i   n   g       e   l   e
0052220    m   e   n   t       a   t       e   a   c   h       i   t   e
0052240    r   a   t   i   o   n   .           F   o   r       e   x   a
0052260    m   p   l   e   ,       (   f   o   r       X       i   n    
0052300    Y       d   o       .   .   .   )       c   o   r   r   e   s
0052320    p   o   n   d   s       t   o       (   M   A   P   C       Y
0052340        (   F   U   N   C   T   I   O   N       (   L   A   M   B
0052360    D   A       (   X   )       .   .   .   )   )   )   .        
0052400    I   f       n   o       i   .   v   .       h   a   s       b
0052420    e   e   n       s   p   e   c   i   f   i   e   d   ,       a
0052440        d   u   m   m   y       i   s       s   u   p   p   l   i
0052460    e   d   ,       e   .   g   .   ,       (   i   n       Y    
0052500    c   o   l   l   e   c   t       C   A   D   R   )       i   s
0052520        e   q   u   i   v   a   l   e   n   t       t   o       (
0052540    M   A   P   C   A   R       Y       (   F   U   N   C   T   I
0052560    O   N       C   A   D   R   )   )   .  \r  \r   O   N       F
0052600    O   R   M          \t   [   I   .   S   .       O   p   e   r
0052620    a   t   o   r   ]  \r   S   a   m   e       a   s       I   N
0052640        e   x   c   e   p   t       t   h   a   t       t   h   e
0052660        i   .   v   .       i   s       r   e   s   e   t       t
0052700    o       t   h   e       c   o   r   r   e   s   p   o   n   d
0052720    i   n   g       t   a   i   l       a   t       e   a   c   h
0052740        i   t   e   r   a   t   i   o   n   .           T   h   u
0052760    s       I   N       c   o   r   r   e   s   p   o   n   d   s
0053000        t   o       M   A   P   C   ,       M   A   P   C   A   R
0053020    ,       a   n   d       M   A   P   C   O   N   C   ,       w
0053040    h   i   l   e       O   N       c   o   r   r   e   s   p   o
0053060    n   d   s       t   o       M   A   P   ,       M   A   P   L
0053100    I   S   T   ,       a   n   d       M   A   P   C   O   N   .
0053120   \r  \r   N   o   t   e   :           f   o   r       b   o   t
0053140    h       I   N       a   n   d       O   N   ,       F   O   R
0053160    M       i   s       e   v   a   l   u   a   t   e   d       b
0053200    e   f   o   r   e       t   h   e       m   a   i   n       p
0053220    a   r   t       o   f       t   h   e       i   .   s   .    
0053240    i   s       e   n   t   e   r   e   d   ,       i   .   e   .
0053260        o   u   t   s   i   d   e       o   f       t   h   e    
0053300    s   c   o   p   e       o   f       a   n   y       o   f    
0053320    t   h   e       b   o   u   n   d       v   a   r   i   a   b
0053340    l   e   s       o   f       t   h   e       i   .   s   .    
0053360        F   o   r       e   x   a   m   p   l   e   ,       (   f
0053400    o   r       X       b   i   n   d       (   Y   _   '   (   1
0053420        2       3   )   )       i   n       Y       .   .   .   )
0053440        w   i   l   l       m   a   p       d   o   w   n       t
0053460    h   e       l   i   s   t       w   h   i   c   h       i   s
0053500        t   h   e       v   a   l   u   e       o   f       Y    
0053520    e   v   a   l   u   a   t   e   d       o   u   t   s   i   d
0053540    e       o   f       t   h   e       i   .   s   .   ,       n
0053560    o   t       (   1       2       3   )   .  \r   I   N       O
0053600    L   D       V   A   R          \t   [   I   .   S   .       O
0053620    p   e   r   a   t   o   r   ]  \r   S   p   e   c   i   f   i
0053640    e   s       t   h   a   t       t   h   e       i   .   s   .
0053660        i   s       t   o       i   t   e   r   a   t   e       d
0053700    o   w   n       V   A   R   ,       w   i   t   h       V   A
0053720    R       i   t   s   e   l   f       b   e   i   n   g       r
0053740    e   s   e   t       t   o       t   h   e       c   o   r   r
0053760    e   s   p   o   n   d   i   n   g       t   a   i   l       a
0054000    t       e   a   c   h       i   t   e   r   a   t   i   o   n
0054020    ,       e   .   g   .   ,       a   f   t   e   r       (   f
0054040    o   r       X       i   n       o   l   d       L       d   o
0054060        .   .   .       u   n   t   i   l       .   .   .   )    
0054100    f   i   n   i   s   h   e   s   ,       L       w   i   l   l
0054120        b   e       s   o   m   e       t   a   i   l       o   f
0054140        i   t   s       o   r   i   g   i   n   a   l       v   a
0054160    l   u   e   .  \r  \r   I   N       O   L   D       (   V   A
0054200    R   _   F   O   R   M   )          \t   [   I   .   S   .    
0054220    O   p   e   r   a   t   o   r   ]  \r   S   a   m   e       a
0054240    s       I   N       O   L   D       V   A   R   ,       e   x
0054260    c   e   p   t       V   A   R       i   s       f   i   r   s
0054300    t       s   e   t       t   o       v   a   l   u   e       o
0054320    f       F   O   R   M   .  \r  \r   O   N       O   L   D    
0054340    V   A   R          \t   [   I   .   S   .       O   p   e   r
0054360    a   t   o   r   ]  \r   S   a   m   e       a   s       I   N
0054400        O   L   D       V   A   R       e   x   c   e   p   t    
0054420    t   h   e       i   .   v   .       i   s       r   e   s   e
0054440    t       t   o       t   h   e       c   u   r   r   e   n   t
0054460        v   a   l   u   e       o   f       V   A   R       a   t
0054500        e   a   c   h       i   t   e   r   a   t   i   o   n   ,
0054520        i   n   s   t   e   a   d       o   f       t   o       (
0054540    C   A   R       V   A   R   )   .  \r  \r   O   N       O   L
0054560    D       (   V   A   R   _   F   O   R   M   )          \t   [
0054600    I   .   S   .       O   p   e   r   a   t   o   r   ]  \r   S
0054620    a   m   e       a   s       O   N       O   L   D       V   A
0054640    R   ,       e   x   c   e   p   t       V   A   R       i   s
0054660        f   i   r   s   t       s   e   t       t   o       v   a
0054700    l   u   e       o   f       F   O   R   M   .  \r  \r   I   N
0054720    S   I   D   E       F   O   R   M          \t   [   I   .   S
0054740    .       O   p   e   r   a   t   o   r   ]  \r   S   i   m   i
0054760    l   a   r       t   o       I   N   ,       e   x   c   e   p
0055000    t       t   r   e   a   t   s       f   i   r   s   t       n
0055020    o   n   -   l   i   s   t   ,       n   o   n   -   N   I   L
0055040        t   a   i   l       a   s       t   h   e       l   a   s
0055060    t       e   l   e   m   e   n   t       o   f       t   h   e
0055100        i   t   e   r   a   t   i   o   n   ,       e   .   g   .
0055120    ,       I   N   S   I   D   E       '   (   A       B       C
0055140        D       .       E   )       i   t   e   r   a   t   e   s
0055160        f   i   v   e       t   i   m   e   s       w   i   t   h
0055200        t   h   e       i   .   v   .       s   e   t       t   o
0055220        E       o   n       t   h   e       l   a   s   t       i
0055240    t   e   r   a   t   i   o   n   .           I   N   S   I   D
0055260    E       '   A       i   s       e   q   u   i   v   a   l   e
0055300    n   t       t   o       I   N   S   I   D   E       '   (   A
0055320    )   ,       w   h   i   c   h       w   i   l   l       i   t
0055340    e   r   a   t   e       o   n   c   e   .  \r  \r   F   R   O
0055360    M       F   O   R   M          \t   [   I   .   S   .       O
0055400    p   e   r   a   t   o   r   ]  \r   U   s   e   d       t   o
0055420        s   p   e   c   i   f   y       a   n       i   n   i   t
0055440    i   a   l       v   a   l   u   e       f   o   r       a    
0055460    n   u   m   e   r   i   c   a   l       i   .   v   .        
0055500    T   h   e       i   .   v   .       i   s       a   u   t   o
0055520    m   a   t   i   c   a   l   l   y       i   n   c   r   e   m
0055540    e   n   t   e   d       b   y       1       a   f   t   e   r
0055560        e   a   c   h       i   t   e   r   a   t   i   o   n    
0055600    (   u   n   l   e   s   s       B   Y       i   s       s   p
0055620    e   c   i   f   i   e   d   )   .           I   f       n   o
0055640        i   .   v   .       h   a   s       b   e   e   n       s
0055660    p   e   c   i   f   i   e   d   ,       a       d   u   m   m
0055700    y       i   .   v   .       i   s       s   u   p   p   l   i
0055720    e   d       a   n   d       i   n   i   t   i   a   l   i   z
0055740    e   d   ,       e   .   g   .   ,       (   f   r   o   m    
0055760    2       t   o       5       c   o   l   l   e   c   t       S
0056000    Q   R   T   )       r   e   t   u   r   n   s       (   1   .
0056020    4   1   4       1   .   7   3   2       2   .   0       2   .
0056040    2   3   6   )   .  \r  \r   T   O       F   O   R   M        
0056060   \t   [   I   .   S   .       O   p   e   r   a   t   o   r   ]
0056100   \r   U   s   e   d       t   o       s   p   e   c   i   f   y
0056120        t   h   e       f   i   n   a   l       v   a   l   u   e
0056140        f   o   r       a       n   u   m   e   r   i   c   a   l
0056160        i   .   v   .           I   f       F   R   O   M       i
0056200    s       n   o   t       s   p   e   c   i   f   i   e   d   ,
0056220        t   h   e       i   .   v   .       i   s       i   n   i
0056240    t   i   a   l   i   z   e   d       t   o       1   .        
0056260    I   f       n   o       i   .   v   .       h   a   s       b
0056300    e   e   n       s   p   e   c   i   f   i   e   d   ,       a
0056320        d   u   m   m   y       i   .   v   .       i   s       s
0056340    u   p   p   l   i   e   d       a   n   d       i   n   i   t
0056360    i   a   l   i   z   e   d   .           I   f       B   Y    
0056400    i   s       n   o   t       s   p   e   c   i   f   i   e   d
0056420    ,       t   h   e       i   .   v   .       i   s       a   u
0056440    t   o   m   a   t   i   c   a   l   l   y       i   n   c   r
0056460    e   m   e   n   t   e   d       b   y       1       a   f   t
0056500    e   r       e   a   c   h       i   t   e   r   a   t   i   o
0056520    n   .           W   h   e   n       t   h   e       i   .   v
0056540    .       i   s       d   e   f   i   n   i   t   e   l   y    
0056560    b   e   i   n   g       i   n   c   r   e   m   e   n   t   e
0056600    d   ,       i   .   e   .   ,       e   i   t   h   e   r    
0056620    B   Y       i   s       n   o   t       s   p   e   c   i   f
0056640    i   e   d   ,       o   r       i   t   s       o   p   e   r
0056660    a   n   d       i   s       a       p   o   s   i   t   i   v
0056700    e       n   u   m   b   e   r   ,       t   h   e       i   .
0056720    s   .       t   e   r   m   i   n   a   t   e   s       w   h
0056740    e   n       t   h   e       i   .   v   .       e   x   c   e
0056760    e   d   s       t   h   e       v   a   l   u   e       o   f
0057000        F   O   R   M   .           S   i   m   i   l   a   r   l
0057020    y   ,       w   h   e   n       t   h   e       i   .   v   .
0057040        i   s       d   e   f   i   n   i   t   e   l   y       b
0057060    e   i   n   g       d   e   c   r   e   m   e   n   t   e   d
0057100        t   h   e       i   .   s   .       t   e   r   m   i   n
0057120    a   t   e   s       w   h   e   n       t   h   e       i   .
0057140    v   .       b   e   c   o   m   e   s       l   e   s   s    
0057160    t   h   a   n       t   h   e       v   a   l   u   e       o
0057200    f       F   O   R   M       (   s   e   e       d   e   s   c
0057220    r   i   p   t   i   o   n       o   f       B   Y   )   .  \r
0057240    N   o   t   e   :           F   O   R   M       i   s       e
0057260    v   a   l   u   a   t   e   d       o   n   l   y       o   n
0057300    c   e   ,       w   h   e   n       t   h   e       i   .   s
0057320    .       i   s       f   i   r   s   t       e   n   t   e   r
0057340    e   d   ,       a   n   d       i   t   s       v   a   l   u
0057360    e       b   o   u   n   d       t   o       a       t   e   m
0057400    p   o   r   a   r   y       v   a   r   i   a   b   l   e    
0057420    a   g   a   i   n   s   t       w   h   i   c   h       t   h
0057440    e       i   .   v   .       i   s       c   h   e   c   k   e
0057460    d       e   a   c   h       i   n   t   e   r   a   t   i   o
0057500    n   .           I   f       t   h   e       u   s   e   r    
0057520    w   i   s   h   e   s       t   o       s   p   e   c   i   f
0057540    y       a   n       i   .   s   .       i   n       w   h   i
0057560    c   h       t   h   e       v   a   l   u   e       o   f    
0057600    t   h   e       b   o   u   n   d   a   r   y       c   o   n
0057620    d   i   t   i   o   n       i   s       r   e   c   o   m   p
0057640    u   t   e   d       e   a   c   h       i   t   e   r   a   t
0057660    i   o   n   ,       h   e       s   h   o   u   l   d       u
0057700    s   e       W   H   I   L   E       o   r       U   N   T   I
0057720    L       i   n   s   t   e   a   d       o   f       T   O   .
0057740   \r  \r   N   o   t   e   :           W   h   e   n       b   o
0057760    t   h       t   h   e       o   p   e   r   a   n   d   s    
0060000    t   o       T   O       a   n   d       F   R   O   M       a
0060020    r   e       n   u   m   b   e   r   s   ,       a   n   d    
0060040    T   O   '   s       o   p   e   r   a   n   d       i   s    
0060060    l   e   s   s       t   h   a   n       F   R   O   M   '   s
0060100        o   p   e   r   a   n   d   ,       t   h   e       i   .
0060120    v   .       i   s       d   e   c   r   e   m   e   n   t   e
0060140    d       b   y       1       a   f   t   e   r       e   a   c
0060160    h       i   t   e   r   a   t   i   o   n   .           I   n
0060200        t   h   i   s       c   a   s   e   ,       t   h   e    
0060220    i   .   s   .       t   e   r   m   i   n   a   t   e   s    
0060240    w   h   e   n       t   h   e       i   .   v   .       b   e
0060260    c   o   m   e   s       l   e   s   s       t   h   a   n    
0060300    t   h   e       v   a   l   u   e       o   f       F   O   R
0060320    M   .           F   o   r       e   x   a   m   p   l   e   ,
0060340        (   f   r   o   m       1   0       t   o       1       d
0060360    o       P   R   I   N   T   )       p   r   i   n   t   s    
0060400    t   h   e       n   u   m   b   e   r   s       f   r   o   m
0060420        1   0       d   o   w   n       t   o       1   .  \r   B
0060440    Y       F   O   R   M       (   w   i   t   h       I   N   /
0060460    O   N   )          \t   [   I   .   S   .       O   p   e   r
0060500    a   t   o   r   ]  \r   I   f       I   N       o   r       O
0060520    N       h   a   v   e       b   e   e   n       s   p   e   c
0060540    i   f   i   e   d   ,       t   h   e       v   a   l   u   e
0060560        o   f       F   O   R   M       d   e   t   e   r   m   i
0060600    n   e   s       t   h   e       t   a   i   l       f   o   r
0060620        t   h   e       n   e   x   t       i   t   e   r   a   t
0060640    i   o   n   ,       w   h   i   c   h       i   n       t   u
0060660    r   n       d   e   t   e   r   m   i   n   e   s       t   h
0060700    e       v   a   l   u   e       f   o   r       t   h   e    
0060720    i   .   v   .       a   s       d   e   s   c   r   i   b   e
0060740    d       e   a   r   l   i   e   r   ,       i   .   e   .   ,
0060760        t   h   e       n   e   w       i   .   v   .       i   s
0061000        C   A   R       o   f       t   h   e       t   a   i   l
0061020        f   o   r       I   N   ,       t   h   e       t   a   i
0061040    l       i   t   s   e   l   f       f   o   r       O   N   .
0061060            I   n       c   o   n   j   u   n   c   t   i   o   n
0061100        w   i   t   h       I   N   ,       t   h   e       u   s
0061120    e   r       c   a   n       r   e   f   e   r       t   o    
0061140    t   h   e       c   u   r   r   e   n   t       t   a   i   l
0061160        w   i   t   h   i   n       F   O   R   M       b   y    
0061200    u   s   i   n   g       t   h   e       i   .   v   .       o
0061220    r       t   h   e       o   p   e   r   a   n   d       f   o
0061240    r       I   N   /   O   N   ,       e   .   g   .   ,       (
0061260    f   o   r       Z       i   n       L       b   y       (   C
0061300    D   D   R       Z   )       .   .   .   )       o   r       (
0061320    f   o   r       Z       i   n       L       b   y       (   C
0061340    D   D   R       L   )       .   .   .   )   .       A   t    
0061360    t   r   a   n   s   l   a   t   i   o   n       t   i   m   e
0061400    ,       t   h   e       n   a   m   e       o   f       t   h
0061420    e       i   n   t   e   r   n   a   l       v   a   r   i   a
0061440    b   l   e       w   h   i   c   h       h   o   l   d   s    
0061460    t   h   e       v   a   l   u   e       o   f       t   h   e
0061500        c   u   r   r   e   n   t       t   a   i   l       i   s
0061520        s   u   b   s   t   i   t   u   t   e   d       f   o   r
0061540        t   h   e       i   .   v   .       t   h   r   o   u   g
0061560    h   o   u   t       F   O   R   M   .       F   o   r       e
0061600    x   a   m   p   l   e   ,       (   f   o   r       X       i
0061620    n       Y       b   y       (   C   D   R       (   M   E   M
0061640    B       '   F   O   O       (   C   D   R       X   )   )   )
0061660        c   o   l   l   e   c   t       X   )       s   p   e   c
0061700    i   f   i   e   s       t   h   a   t       a   f   t   e   r
0061720        e   a   c   h       i   t   e   r   a   t   i   o   n   ,
0061740        C   D   R       o   f       t   h   e       c   u   r   r
0061760    e   n   t       t   a   i   l       i   s       t   o       b
0062000    e       s   e   a   r   c   h   e   d       f   o   r       t
0062020    h   e       a   t   o   m       F   O   O   ,       a   n   d
0062040        (   C   D   R       o   f   )       t   h   i   s       l
0062060    a   t   t   e   r       t   a   i   l       t   o       b   e
0062100        u   s   e   d       f   o   r       t   h   e       n   e
0062120    x   t       i   t   e   r   a   t   i   o   n   .  \r  \r   B
0062140    Y       F   O   R   M       (   w   i   t   h   o   u   t    
0062160    I   N   /   O   N   )          \t   [   I   .   S   .       O
0062200    p   e   r   a   t   o   r   ]  \r   I   f       I   N       o
0062220    r       O   N       h   a   v   e       n   o   t       b   e
0062240    e   n       u   s   e   d   ,       B   Y       s   p   e   c
0062260    i   f   i   e   s       h   o   w       t   h   e       i   .
0062300    v   .       i   t   s   e   l   f       i   s       r   e   s
0062320    e   t       a   t       e   a   c   h       i   t   e   r   a
0062340    t   i   o   n   .           I   f       F   R   O   M       o
0062360    r       T   O       h   a   v   e       b   e   e   n       s
0062400    p   e   c   i   f   i   e   d   ,       t   h   e       i   .
0062420    v   .       i   s       k   n   o   w   n       t   o       b
0062440    e       n   u   m   e   r   i   c   a   l   ,       s   o    
0062460    t   h   e       n   e   w       i   .   v   .       i   s    
0062500    c   o   m   p   u   t   e   d       b   y       a   d   d   i
0062520    n   g       t   h   e       v   a   l   u   e       o   f    
0062540    F   O   R   M       (   w   h   i   c   h       i   s       r
0062560    e   e   v   a   l   u   a   t   e   d       e   a   c   h    
0062600    i   t   e   r   a   t   i   o   n   )       t   o       t   h
0062620    e       c   u   r   r   e   n   t       v   a   l   u   e    
0062640    o   f       t   h   e       i   .   v   .   ,       e   .   g
0062660    .   ,       (   f   o   r       N       f   r   o   m       1
0062700        t   o       1   0       b   y       2       c   o   l   l
0062720    e   c   t       N   )       m   a   k   e   s       a       l
0062740    i   s   t       o   f       t   h   e       f   i   r   s   t
0062760        f   i   v   e       o   d   d       n   u   m   b   e   r
0063000    s   .  \r   I   f       F   O   R   M       i   s       a    
0063020    p   o   s   i   t   i   v   e       n   u   m   b   e   r    
0063040    (   F   O   R   M       i   t   s   e   l   f   ,       n   o
0063060    t       i   t   s       v   a   l   u   e   ,       w   h   i
0063100    c   h       i   n       g   e   n   e   r   a   l       C   L
0063120    I   S   P       w   o   u   l   d       h   a   v   e       n
0063140    o       w   a   y       o   f       k   n   o   w   i   n   g
0063160        i   n       a   d   v   a   n   c   e   )   ,       t   h
0063200    e       i   .   s   .       t   e   r   m   i   n   a   t   e
0063220    s       w   h   e   n       t   h   e       v   a   l   u   e
0063240        o   f       t   h   e       i   .   v   .       e   x   c
0063260    e   e   d   s       t   h   e       v   a   l   u   e       o
0063300    f       T   O   '   s       o   p   e   r   a   n   d   .    
0063320        I   f       F   O   R   M       i   s       a       n   e
0063340    g   a   t   i   v   e       n   u   m   b   e   r   ,       t
0063360    h   e       i   .   s   .       t   e   r   m   i   n   a   t
0063400    e   s       w   h   e   n       t   h   e       v   a   l   u
0063420    e       o   f       t   h   e       i   .   v   .       b   e
0063440    c   o   m   e   s       l   e   s   s       t   h   a   n    
0063460    T   O   '   s       o   p   e   r   a   n   d   ,       e   .
0063500    g   .   ,       (   f   o   r       I       f   r   o   m    
0063520    N       t   o       M       b   y       -   2       u   n   t
0063540    i   l       (   L   E   S   S   P       I       M   )       .
0063560    .   .   )   .       O   t   h   e   r   w   i   s   e   ,    
0063600    t   h   e       t   e   r   m   i   n   a   t   i   n   g    
0063620    c   o   n   d   i   t   i   o   n       f   o   r       e   a
0063640    c   h       i   t   e   r   a   t   i   o   n       d   e   p
0063660    e   n   d   s       o   n       t   h   e       v   a   l   u
0063700    e       o   f       F   O   R   M       f   o   r       t   h
0063720    a   t       i   t   e   r   a   t   i   o   n   :       i   f
0063740        F   O   R   M   <   0   ,       t   h   e       t   e   s
0063760    t       i   s       w   h   e   t   h   e   r       t   h   e
0064000        i   .   v   .       i   s       l   e   s   s       t   h
0064020    a   n       T   O   '   s       o   p   e   r   a   n   d   ,
0064040        i   f       F   O   R   M   >   0       t   h   e       t
0064060    e   s   t       i   s       w   h   e   t   h   e   r       t
0064100    h   e       i   .   v   .       e   x   c   e   e   d   s    
0064120    T   O   '   s       o   p   e   r   a   n   d   ,       o   t
0064140    h   e   r   w   i   s   e       i   f       F   O   R   M   =
0064160    0   ,       t   h   e       i   .   s   .       t   e   r   m
0064200    i   n   a   t   e   s       u   n   c   o   n   d   i   t   i
0064220    o   n   a   l   l   y   .  \r   I   f       F   R   O   M    
0064240    o   r       T   O       h   a   v   e       n   o   t       b
0064260    e   e   n       s   p   e   c   i   f   i   e   d       a   n
0064300    d       F   O   R   M       i   s       n   o   t       a    
0064320    n   u   m   b   e   r   ,       t   h   e       i   .   v   .
0064340        i   s       s   i   m   p   l   y       r   e   s   e   t
0064360        t   o       t   h   e       v   a   l   u   e       o   f
0064400        F   O   R   M       a   f   t   e   r       e   a   c   h
0064420        i   t   e   r   a   t   i   o   n   ,       e   .   g   .
0064440    ,       (   f   o   r       I       f   r   o   m       N    
0064460    b   y       M       .   .   .   )       i   s       e   q   u
0064500    i   v   a   l   e   n   t       t   o       (   f   o   r    
0064520    I   _   N       b   y       (   P   L   U   S       I       M
0064540    )       .   .   .   )   .  \r  \r   A   S       V   A   R    
0064560       \t   [   I   .   S   .       O   p   e   r   a   t   o   r
0064600    ]  \r   U   s   e   d       t   o       s   p   e   c   i   f
0064620    y       a   n       i   t   e   r   a   t   i   v   e       s
0064640    t   a   t   e   m   e   n   t       i   n   v   o   l   v   i
0064660    n   g       m   o   r   e       t   h   a   n       o   n   e
0064700        i   t   e   r   a   t   i   v   e       v   a   r   i   a
0064720    b   l   e   ,       e   .   g   .   ,       (   f   o   r    
0064740    X       i   n       Y       a   s       U       i   n       V
0064760        d   o       .   .   .   )       c   o   r   r   e   s   p
0065000    o   n   d   s       t   o       M   A   P   2   C       (   p
0065020    a   g   e       X   .   X   X   )   .           T   h   e    
0065040    i   .   s   .       t   e   r   m   i   n   a   t   e   s    
0065060    w   h   e   n       a   n   y       o   f       t   h   e    
0065100    t   e   r   m   i   n   a   t   i   n   g       c   o   n   d
0065120    i   t   i   o   n   s       a   r   e       m   e   t   ,    
0065140    e   .   g   .   ,       (   f   o   r       X       i   n    
0065160    Y       a   s       I       f   r   o   m       1       t   o
0065200        1   0       c   o   l   l   e   c   t       X   )       m
0065220    a   k   e   s       a       l   i   s   t       o   f       t
0065240    h   e       f   i   r   s   t       t   e   n       e   l   e
0065260    m   e   n   t   s       o   f       Y   ,       o   r       h
0065300    o   w   e   v   e   r       m   a   n   y       e   l   e   m
0065320    e   n   t   s       t   h   e   r   e       a   r   e       o
0065340    n       Y       i   f       l   e   s   s       t   h   a   n
0065360        1   0   .  \r   T   h   e       o   p   e   r   a   n   d
0065400        t   o       A   S   ,       V   A   R   ,       s   p   e
0065420    c   i   f   i   e   s       t   h   e       n   e   w       i
0065440    .   v   .       F   o   r       t   h   e       r   e   m   a
0065460    i   n   d   e   r       o   f       t   h   e       i   .   s
0065500    .   ,       o   r       u   n   t   i   l       a   n   o   t
0065520    h   e   r       A   S       i   s       e   n   c   o   u   n
0065540    t   e   r   e   d   ,       a   l   l       o   p   e   r   a
0065560    t   o   r   s       r   e   f   e   r       t   o       t   h
0065600    e       n   e   w       i   .   v   .           F   o   r    
0065620    e   x   a   m   p   l   e   ,       (   f   o   r       I    
0065640    f   r   o   m       1       t   o       N   1       a   s    
0065660    J       f   r   o   m       1       t   o       N   2       b
0065700    y       2       a   s       K       f   r   o   m       N   3
0065720        t   o       1       b   y       -   1       .   .   .   )
0065740        t   e   r   m   i   n   a   t   e   s       w   h   e   n
0065760        I       e   x   c   e   e   d   s       N   1   ,       o
0066000    r       J       e   x   c   e   e   d   s       N   2   ,    
0066020    o   r       K       b   e   c   o   m   e   s       l   e   s
0066040    s       t   h   a   n       1   .           A   f   t   e   r
0066060        e   a   c   h       i   t   e   r   a   t   i   o   n   ,
0066100        I       i   s       i   n   c   r   e   m   e   n   t   e
0066120    d       b   y       1   ,       J       b   y       2   ,    
0066140    a   n   d       K       b   y       -   1   .  \r  \r   O   U
0066160    T   O   F       F   O   R   M          \t   [   I   .   S   .
0066200        O   p   e   r   a   t   o   r   ]  \r   F   o   r       u
0066220    s   e       w   i   t   h       g   e   n   e   r   a   t   o
0066240    r   s       (   p   a   g   e       X   .   X   X   )   .    
0066260        O   n       e   a   c   h       i   t   e   r   a   t   i
0066300    o   n   ,       t   h   e       i   .   v   .       i   s    
0066320    s   e   t       t   o       s   u   c   c   e   s   s   i   v
0066340    e       v   a   l   u   e   s       r   e   t   u   r   n   e
0066360    d       b   y       t   h   e       g   e   n   e   r   a   t
0066400    o   r   .           T   h   e       i   .   s   .       t   e
0066420    r   m   i   n   a   t   e   s       w   h   e   n       t   h
0066440    e       g   e   n   e   r   a   t   o   r       r   u   n   s
0066460        o   u   t   .  \r  \r   9   .   8   .   3          \t   C
0066500    o   n   d   i   t   i   o   n       I   .   s   .   o   p   r
0066520    s  \r  \r   W   H   E   N       F   O   R   M          \t   [
0066540    I   .   S   .       O   p   e   r   a   t   o   r   ]  \r   P
0066560    r   o   v   i   d   e   s       a       w   a   y       o   f
0066600        e   x   c   e   p   t   i   n   g       c   e   r   t   a
0066620    i   n       i   t   e   r   a   t   i   o   n   s   .        
0066640    F   o   r       e   x   a   m   p   l   e   ,       (   f   o
0066660    r       X       i   n       Y       c   o   l   l   e   c   t
0066700        X       w   h   e   n       (   N   U   M   B   E   R   P
0066720        X   )   )       c   o   l   l   e   c   t   s       o   n
0066740    l   y       t   h   e       e   l   e   m   e   n   t   s    
0066760    o   f       Y       t   h   a   t       a   r   e       n   u
0067000    m   b   e   r   s   .  \r  \r   U   N   L   E   S   S       F
0067020    O   R   M          \t   [   I   .   S   .       O   p   e   r
0067040    a   t   o   r   ]  \r   S   a   m   e       a   s       W   H
0067060    E   N       e   x   c   e   p   t       f   o   r       t   h
0067100    e       d   i   f   f   e   r   e   n   c   e       i   n    
0067120    s   i   g   n   ,       i   .   e   .   ,       W   H   E   N
0067140        Z       i   s       t   h   e       s   a   m   e       a
0067160    s       U   N   L   E   S   S       (   N   O   T       Z   )
0067200    .  \r  \r   W   H   I   L   E       F   O   R   M          \t
0067220    [   I   .   S   .       O   p   e   r   a   t   o   r   ]  \r
0067240    P   r   o   v   i   d   e   s       a       w   a   y       o
0067260    f       t   e   r   m   i   n   a   t   i   n   g       t   h
0067300    e       i   .   s   .           W   H   I   L   E       F   O
0067320    R   M       e   v   a   l   u   a   t   e   s       F   O   R
0067340    M       b   e   f   o   r   e       e   a   c   h       i   t
0067360    e   r   a   t   i   o   n   ,       a   n   d       i   f    
0067400    t   h   e       v   a   l   u   e       i   s       N   I   L
0067420    ,       e   x   i   t   s   .  \r  \r   U   N   T   I   L    
0067440    F   O   R   M          \t   [   I   .   S   .       O   p   e
0067460    r   a   t   o   r   ]  \r   S   a   m   e       a   s       W
0067500    H   I   L   E       e   x   c   e   p   t       f   o   r    
0067520    d   i   f   f   e   r   e   n   c   e       i   n       s   i
0067540    g   n   ,       i   .   e   .   ,       W   H   I   L   E    
0067560    X       i   s       e   q   u   i   v   a   l   e   n   t    
0067600    t   o       U   N   T   I   L       (   N   O   T       X   )
0067620    .  \r  \r   U   N   T   I   L       N       (   N       a    
0067640    n   u   m   b   e   r   )          \t   [   I   .   S   .    
0067660    O   p   e   r   a   t   o   r   ]  \r   E   q   u   i   v   a
0067700    l   e   n   t       t   o       U   N   T   I   L       I   .
0067720    V   .       >       N   .  \r  \r   R   E   P   E   A   T   W
0067740    H   I   L   E       F   O   R   M          \t   [   I   .   S
0067760    .       O   p   e   r   a   t   o   r   ]  \r   S   a   m   e
0070000        a   s       W   H   I   L   E       e   x   c   e   p   t
0070020        t   h   e       t   e   s   t       i   s       p   e   r
0070040    f   o   r   m   e   d       a   f   t   e   r       t   h   e
0070060        e   v   a   l   u   t   i   o   n       o   f       t   h
0070100    e       b   o   d   y   ,       b   u   t       b   e   f   o
0070120    r   e       t   h   e       i   .   v   .       i   s       r
0070140    e   s   e   t       f   o   r       t   h   e       n   e   x
0070160    t       i   t   e   r   a   t   i   o   n   .  \r  \r   R   E
0070200    P   E   A   T   U   N   T   I   L       F   O   R   M        
0070220   \t   [   I   .   S   .       O   p   e   r   a   t   o   r   ]
0070240   \r   S   a   m   e       a   s       U   N   T   I   L   ,    
0070260    e   x   c   e   p   t       t   h   e       t   e   s   t    
0070300    i   s       p   e   r   f   o   r   m   e   d       a   f   t
0070320    e   r       t   h   e       e   v   a   l   u   a   t   i   o
0070340    n       o   f       t   h   e       b   o   d   y   .  \r  \r
0070360    R   E   P   E   A   T   U   N   T   I   L       N       (   N
0070400        a       n   u   m   b   e   r   )          \t   [   I   .
0070420    S   .       O   p   e   r   a   t   o   r   ]  \r   E   q   u
0070440    i   v   a   l   e   n   t       t   o       R   E   P   E   A
0070460    T   U   N   T   I   L       I   .   V   .       >       N   .
0070500   \r  \r   9   .   8   .   4          \t   O   t   h   e   r    
0070520    I   .   s   .   o   p   r   s  \r  \r   F   I   R   S   T    
0070540    F   O   R   M          \t   [   I   .   S   .       O   p   e
0070560    r   a   t   o   r   ]  \r   F   O   R   M       i   s       e
0070600    v   a   l   u   a   t   e   d       o   n   c   e       b   e
0070620    f   o   r   e       t   h   e       f   i   r   s   t       i
0070640    t   e   r   a   t   i   o   n   ,       e   .   g   .   ,    
0070660    (   f   o   r       X       Y       Z       i   n       L    
0070700    f   i   r   s   t       (   F   O   O       Y       Z   )    
0070720    .   .   .   )   ,       a   n   d       F   O   O       c   o
0070740    u   l   d       b   e       u   s   e   d       t   o       i
0070760    n   i   t   i   a   l   i   z   e       Y       a   n   d    
0071000    Z   .  \r  \r   F   I   N   A   L   L   Y       F   O   R   M
0071020           \t   [   I   .   S   .       O   p   e   r   a   t   o
0071040    r   ]  \r   F   O   R   M       i   s       e   v   a   l   u
0071060    a   t   e   d       a   f   t   e   r       t   h   e       i
0071100    .   s   .       t   e   r   m   i   n   a   t   e   s   .    
0071120        F   o   r       e   x   a   m   p   l   e   ,       (   f
0071140    o   r       X       i   n       L       b   i   n   d       Y
0071160    _   0       d   o       (   i   f       (   A   T   O   M    
0071200    X   )       t   h   e   n       (   S   E   T   Q       Y    
0071220    (   P   L   U   S       Y       1   )   )   )       f   i   n
0071240    a   l   l   y       (   R   E   T   U   R   N       Y   )   )
0071260        w   i   l   l       r   e   t   u   r   n       t   h   e
0071300        n   u   m   b   e   r       o   f       a   t   o   m   s
0071320        i   n       L   .  \r  \r   E   A   C   H   T   I   M   E
0071340        F   O   R   M          \t   [   I   .   S   .       O   p
0071360    e   r   a   t   o   r   ]  \r   F   O   R   M       i   s    
0071400    e   v   a   l   u   a   t   e   d       a   t       t   h   e
0071420        b   e   g   i   n   n   i   n   g       o   f       e   a
0071440    c   h       i   t   e   r   a   t   i   o   n       b   e   f
0071460    o   r   e   ,       a   n   d       r   e   g   a   r   d   l
0071500    e   s   s       o   f   ,       a   n   y       t   e   s   t
0071520    i   n   g   .           F   o   r       e   x   a   m   p   l
0071540    e   ,       c   o   n   s   i   d   e   r   ,  \r   (   f   o
0071560    r       I       f   r   o   m       1       t   o       N  \r
0071600                    d   o       (   .   .   .       (   F   O   O
0071620        I   )       .   .   .   )  \r                   u   n   l
0071640    e   s   s       (   .   .   .       (   F   O   O       I   )
0071660        .   .   .   )  \r                   u   n   t   i   l    
0071700    (   .   .   .       (   F   O   O       I   )       .   .   .
0071720    )   )  \r   T   h   e       u   s   e   r       m   i   g   h
0071740    t       w   a   n   t       t   o       s   e   t       a    
0071760    t   e   m   p   o   r   a   r   y       v   a   r   i   a   b
0072000    l   e       t   o       t   h   e       v   a   l   u   e    
0072020    o   f       (   F   O   O       I   )       i   n       o   r
0072040    d   e   r       t   o       a   v   o   i   d       c   o   m
0072060    p   u   t   i   n   g       i   t       t   h   r   e   e    
0072100    t   i   m   e   s       e   a   c   h       i   t   e   r   a
0072120    t   i   o   n   .           H   o   w   e   v   e   r   ,    
0072140    w   i   t   h   o   u   t       k   n   o   w   i   n   g    
0072160    t   h   e       t   r   a   n   s   l   a   t   i   o   n   ,
0072200        h   e       w   o   u   l   d       n   o   t       k   n
0072220    o   w       w   h   e   t   h   e   r       t   o       p   u
0072240    t       t   h   e       a   s   s   i   g   n   m   e   n   t
0072260        i   n       t   h   e       o   p   e   r   a   n   d    
0072300    t   o       D   O   ,       U   N   L   E   S   S   ,       o
0072320    r       U   N   T   I   L   ,       i   .   e   .   ,       w
0072340    h   i   c   h       o   n   e       w   o   u   l   d       b
0072360    e       e   x   e   c   u   t   e   d       f   i   r   s   t
0072400    .           H   e       c   a   n       a   v   o   i   d    
0072420    t   h   i   s       p   r   o   b   l   e   m       b   y    
0072440    s   i   m   p   l   y       w   r   i   t   i   n   g       E
0072460    A   C   H   T   I   M   E       (   S   E   T   Q       J    
0072500    (   F   O   O       I   )   )   .  \r  \r   D   E   C   L   A
0072520    R   E   :       D   E   C   L          \t   [   I   .   S   .
0072540        O   p   e   r   a   t   o   r   ]  \r   I   n   s   e   r
0072560    t   s       t   h   e       f   o   r   m       (   D   E   C
0072600    L   A   R   E       D   E   C   L   )       i   m   m   e   d
0072620    i   a   t   e   l   y       f   o   l   l   o   w   i   n   g
0072640        t   h   e       P   R   O   G       v   a   r   i   a   b
0072660    l   e       l   i   s   t       i   n       t   h   e       t
0072700    r   a   n   s   l   a   t   i   o   n   ,       o   r   ,    
0072720    i   n       t   h   e       c   a   s   e       t   h   a   t
0072740        t   h   e       t   r   a   n   s   l   a   t   i   o   n
0072760        i   s       a       m   a   p   p   i   n   g       f   u
0073000    n   c   t   i   o   n       r   a   t   h   e   r       t   h
0073020    a   n       a       P   R   O   G   ,       i   m   m   e   d
0073040    i   a   t   e   l   y       f   o   l   l   o   w   i   n   g
0073060        t   h   e       a   r   g   u   m   e   n   t       l   i
0073100    s   t       o   f       t   h   e       l   a   m   b   d   a
0073120        e   x   p   r   e   s   s   i   o   n       i   n       t
0073140    h   e       t   r   a   n   s   l   a   t   i   o   n   .    
0073160        T   h   i   s       c   a   n       b   e       u   s   e
0073200    d       t   o       d   e   c   l   a   r   e       v   a   r
0073220    i   a   b   l   e   s       b   o   u   n   d       i   n    
0073240    t   h   e       i   t   e   r   a   t   i   v   e       s   t
0073260    a   t   e   m   e   n   t       t   o       b   e       c   o
0073300    m   p   i   l   e   d       a   s       l   o   c   a   l    
0073320    o   r       s   p   e   c   i   a   l       v   a   r   i   a
0073340    b   l   e   s       (   s   e   e       p   a   g   e       X
0073360    .   X   X   )   .           F   o   r       e   x   a   m   p
0073400    l   e       (   f   o   r       X       i   n       Y       d
0073420    e   c   l   a   r   e   :       (   L   O   C   A   L   V   A
0073440    R   S       X   )       .   .   .   )   .           S   e   v
0073460    e   r   a   l       D   E   C   L   A   R   E   :   s       c
0073500    a   n       a   p   p   p   e   a   r       i   n       t   h
0073520    e       s   a   m   e       i   .   s   .   ;       t   h   e
0073540        d   e   c   l   a   r   a   t   i   o   n   s       a   r
0073560    e       i   n   s   e   r   t   e   d       i   n       t   h
0073600    e       o   r   d   e   r       t   h   e   y       a   p   p
0073620    e   a   r   .  \r  \r   D   E   C   L   A   R   E       D   E
0073640    C   L          \t   [   I   .   S   .       O   p   e   r   a
0073660    t   o   r   ]  \r   S   a   m   e       a   s       D   E   C
0073700    L   A   R   E   :   .  \r   N   o   t   e       t   h   a   t
0073720        s   i   n   c   e       D   E   C   L   A   R   E       i
0073740    s       a   l   s   o       t   h   e       n   a   m   e    
0073760    o   f       a       f   u   n   c   t   i   o   n   ,       D
0074000    E   C   L   A   R   E       c   a   n   n   o   t       b   e
0074020        u   s   e   d       a   s       a   n       i   .   s   .
0074040        o   p   e   r   a   t   o   r       w   h   e   n       i
0074060    t       a   p   p   e   a   r   s       a   s       C   A   R
0074100        o   f       a       f   o   r   m   ,       i   .   e   .
0074120        a   s       t   h   e       f   i   r   s   t       i   .
0074140    s   .       o   p   e   r   a   t   o   r       i   n       a
0074160    n       i   t   e   r   a   t   i   v   e       s   t   a   t
0074200    e   m   e   n   t   .           H   o   w   e   v   e   r   ,
0074220        d   e   c   l   a   r   e       (   l   o   w   e   r   -
0074240    c   a   s   e       v   e   r   s   i   o   n   )       c   a
0074260    n       b   e       t   h   e       f   i   r   s   t       i
0074300    .   s   .       o   p   e   r   a   t   o   r   .  \r  \r   O
0074320    R   I   G   I   N   A   L       I   .   S   .   O   P   R    
0074340    O   P   E   R   A   N   D          \t   [   I   .   S   .    
0074360    O   p   e   r   a   t   o   r   ]  \r   I   .   S   .   O   P
0074400    R       w   i   l   l       b   e       t   r   a   n   s   l
0074420    a   t   e   d       u   s   i   n   g       i   t   s       o
0074440    r   i   g   i   n   a   l   ,       b   u   i   l   t   -   i
0074460    n       i   n   t   e   r   p   r   e   t   a   t   i   o   n
0074500    ,       i   n   d   e   p   e   n   d   e   n   t       o   f
0074520        a   n   y       u   s   e   r       d   e   f   i   n   e
0074540    d       i   .   s   .       o   p   e   r   a   t   o   r   s
0074560    .           S   e   e       p   a   g   e       X   .   X   X
0074600    .  \r  \r   T   h   e   r   e       a   r   e       a   l   s
0074620    o       a       n   u   m   b   e   r       o   f       i   .
0074640    s   .   o   p   r   s       t   h   a   t       m   a   k   e
0074660        i   t       e   a   s   i   e   r       t   o       c   r
0074700    e   a   t   e       i   t   e   r   a   t   i   v   e       s
0074720    t   a   t   e   m   e   n   t   s       t   h   a   t       u
0074740    s   e       t   h   e       c   l   o   c   k   ,       l   o
0074760    o   p   i   n   g       f   o   r       a       g   i   v   e
0075000    n       p   e   r   i   o   d       o   f       t   i   m   e
0075020    .           S   e   e       t   i   m   e   r   s   ,       p
0075040    a   g   e       X   .   X   X   .  \r   9   .   8   .   5    
0075060       \t   M   i   s   c   e   l   l   a   n   e   o   u   s    
0075100    H   i   n   t   s       o   n       I   .   S   .   O   p   r
0075120    s  \r  \r  \t 267  \t   L   o   w   e   r   c   a   s   e    
0075140    v   e   r   s   i   o   n   s       o   f       a   l   l    
0075160    i   .   s   .       o   p   e   r   a   t   o   r   s       a
0075200    r   e       e   q   u   i   v   a   l   e   n   t       t   o
0075220        t   h   e       u   p   p   e   r   c   a   s   e   ,    
0075240    e   .   g   .   ,       (   f   o   r       X       i   n    
0075260    Y       .   .   .   )       i   s       e   q   u   i   v   a
0075300    l   e   n   t       t   o       (   F   O   R       X       I
0075320    N       Y       .   .   .   )   .  \r  \t 267  \t   E   a   c
0075340    h       i   .   s   .       o   p   e   r   a   t   o   r    
0075360    i   s       o   f       l   o   w   e   r       p   r   e   c
0075400    e   d   e   n   c   e       t   h   a   n       a   l   l    
0075420    I   n   t   e   r   l   i   s   p       f   o   r   m   s   ,
0075440        s   o       p   a   r   e   n   t   h   e   s   e   s    
0075460    a   r   o   u   n   d       t   h   e       o   p   e   r   a
0075500    n   d   s       c   a   n       b   e       o   m   i   t   t
0075520    e   d   ,       a   n   d       w   i   l   l       b   e    
0075540    s   u   p   p   l   i   e   d       w   h   e   r   e       n
0075560    e   c   e   s   s   a   r   y   ,       e   .   g   .   ,    
0075600    B   I   N   D       (   X       Y       Z   )       c   a   n
0075620        b   e       w   r   i   t   t   e   n       B   I   N   D
0075640        X       Y       Z   ,       O   L   D       (   X   _   F
0075660    O   R   M   )       a   s       O   L   D       X   _   F   O
0075700    R   M   ,       W   H   E   N       (   N   U   M   B   E   R
0075720    P       X   )       a   s       W   H   E   N       N   U   M
0075740    B   E   R   P       X   ,       e   t   c   .  \r  \t 267  \t
0075760    R   E   T   U   R   N       o   r       G   O       m   a   y
0076000        b   e       u   s   e   d       i   n       a   n   y    
0076020    o   p   e   r   a   n   d   .           (   I   n       t   h
0076040    i   s       c   a   s   e   ,       t   h   e       t   r   a
0076060    n   s   l   a   t   i   o   n       o   f       t   h   e    
0076100    i   t   e   r   a   t   i   v   e       s   t   a   t   e   m
0076120    e   n   t       w   i   l   l       a   l   w   a   y   s    
0076140    b   e       i   n       t   h   e       f   o   r   m       o
0076160    f       a       P   R   O   G   ,       n   e   v   e   r    
0076200    a       m   a   p   p   i   n   g       f   u   n   c   t   i
0076220    o   n   .   )           R   E   T   U   R   N       m   e   a
0076240    n   s       r   e   t   u   r   n       f   r   o   m       t
0076260    h   e       i   .   s   .       (   w   i   t   h       t   h
0076300    e       i   n   d   i   c   a   t   e   d       v   a   l   u
0076320    e   )   ,       n   o   t       f   r   o   m       t   h   e
0076340        f   u   n   c   t   i   o   n       i   n       w   h   i
0076360    c   h       t   h   e       i   .   s       a   p   p   e   a
0076400    r   s   .           G   O       r   e   f   e   r   s       t
0076420    o       a       l   a   b   e   l       e   l   s   e   w   h
0076440    e   r   e       i   n       t   h   e       f   u   n   c   t
0076460    i   o   n       i   n       w   h   i   c   h       t   h   e
0076500        i   .   s   .       a   p   p   e   a   r   s   ,       e
0076520    x   c   e   p   t       f   o   r       t   h   e       l   a
0076540    b   e   l   s       $   $   L   P   ,       $   $   I   T   E
0076560    R   A   T   E   ,       a   n   d       $   $   O   U   T    
0076600    w   h   i   c   h       a   r   e       r   e   s   e   r   v
0076620    e   d   ,       a   s       d   e   s   c   r   i   b   e   d
0076640        b   e   l   o   w   .  \r  \t 267  \t   I   n       t   h
0076660    e       c   a   s   e       o   f       F   I   R   S   T   ,
0076700        F   I   N   A   L   L   Y   ,       E   A   C   H   T   I
0076720    M   E   ,       D   E   C   L   A   R   E   :       o   r    
0076740    o   n   e       o   f       t   h   e       i   .   s   .   t
0076760    y   p   e   s   ,       e   .   g   .   ,       D   O   ,    
0077000    C   O   L   L   E   C   T   ,       S   U   M   ,       e   t
0077020    c   .   ,       t   h   e       o   p   e   r   a   n   d    
0077040    c   a   n       c   o   n   s   i   s   t       o   f       m
0077060    o   r   e       t   h   a   n       o   n   e       f   o   r
0077100    m   ,       e   .   g   .   ,       C   O   L   L   E   C   T
0077120        (   P   R   I   N   T       (   C   A   R       X   )   )
0077140        (   C   D   R       X   )   ,       i   n       w   h   i
0077160    c   h       c   a   s   e       a       P   R   O   G   N    
0077200    i   s       s   u   p   p   l   i   e   d   .  \r  \t 267  \t
0077220    E   a   c   h       o   p   e   r   a   n   d       c   a   n
0077240        b   e       t   h   e       n   a   m   e       o   f    
0077260    a       f   u   n   c   t   i   o   n   ,       i   n       w
0077300    h   i   c   h       c   a   s   e       i   t       i   s    
0077320    a   p   p   l   i   e   d       t   o       t   h   e       (
0077340    l   a   s   t   )       i   .   v   .   ,       e   .   g   .
0077360    ,       (   f   o   r       X       i   n       Y       d   o
0077400        P   R   I   N   T       w   h   e   n       N   U   M   B
0077420    E   R   P   )       i   s       t   h   e       s   a   m   e
0077440        a   s       (   f   o   r       X       i   n       Y    
0077460    d   o       (   P   R   I   N   T       X   )       w   h   e
0077500    n       (   N   U   M   B   E   R   P       X   )   )   .    
0077520        N   o   t   e       t   h   a   t       t   h   e       i
0077540    .   v   .       n   e   e   d       n   o   t       b   e    
0077560    e   x   p   l   i   c   i   t   l   y       s   p   e   c   i
0077600    f   i   e   d   ,       e   .   g   .   ,       (   i   n    
0077620    Y       d   o       P   R   I   N   T       w   h   e   n    
0077640    N   U   M   B   E   R   P   )       w   i   l   l       w   o
0077660    r   k   .  \r   F   o   r       i   .   s   .   t   y   p   e
0077700    s   ,       e   .   g   .   ,       D   O   ,       C   O   L
0077720    L   E   C   T   ,       J   O   I   N   ,       t   h   e    
0077740    f   u   n   c   t   i   o   n       i   s       a   l   w   a
0077760    y   s       a   p   p   l   i   e   d       t   o       t   h
0100000    e       f   i   r   s   t       i   .   v   .       i   n    
0100020    t   h   e       i   .   s   .   ,       w   h   e   t   h   e
0100040    r       e   x   p   l   i   c   i   t   y       n   a   m   e
0100060    d       o   r       n   o   t   .           F   o   r       e
0100100    x   a   m   p   l   e   ,       (   i   n       Y       a   s
0100120        I       f   r   o   m       1       t   o       1   0    
0100140    d   o       P   R   I   N   T   )       p   r   i   n   t   s
0100160        e   l   e   m   e   n   t   s       o   n       Y   ,    
0100200    n   o   t       i   n   t   e   g   e   r   s       b   e   t
0100220    w   e   e   n       1       a   n   d       1   0   .  \r   N
0100240    o   t   e       t   h   a   t       t   h   i   s       f   e
0100260    a   t   u   r   e       d   o   e   s       n   o   t       m
0100300    a   k   e       m   u   c   h       s   e   n   s   e       f
0100320    o   r       F   O   R   ,       O   L   D   ,       B   I   N
0100340    D   ,       I   N   ,       o   r       O   N   ,       s   i
0100360    n   c   e       t   h   e   y       "   o   p   e   r   a   t
0100400    e   "       b   e   f   o   r   e       t   h   e       l   o
0100420    o   p       s   t   a   r   t   s   ,       w   h   e   n    
0100440    t   h   e       i   .   v   .       m   a   y       n   o   t
0100460        e   v   e   n       b   e       b   o   u   n   d   .  \r
0100500    I   n       t   h   e       c   a   s   e       o   f       B
0100520    Y       i   n       c   o   n   j   u   n   c   t   i   o   n
0100540        w   i   t   h       I   N   ,       t   h   e       f   u
0100560    n   c   t   i   o   n       i   s       a   p   p   l   i   e
0100600    d       t   o       t   h   e       c   u   r   r   e   n   t
0100620        t   a   i   l       e   .   g   .   ,       (   f   o   r
0100640        X       i   n       Y       b   y       C   D   D   R    
0100660    .   .   .   )       i   s       t   h   e       s   a   m   e
0100700        a   s       (   f   o   r       X       i   n       Y    
0100720    b   y       (   C   D   D   R       X   )       .   .   .   )
0100740    .  \r  \t 267  \t   W   h   i   l   e       t   h   e       e
0100760    x   a   c   t       f   o   r   m       o   f       t   h   e
0101000        t   r   a   n   s   l   a   t   i   o   n       o   f    
0101020    a   n       i   t   e   r   a   t   i   v   e       s   t   a
0101040    t   e   m   e   n   t       d   e   p   e   n   d   s       o
0101060    n       w   h   i   c   h       o   p   e   r   a   t   o   r
0101100    s       a   r   e       p   r   e   s   e   n   t   ,       a
0101120        P   R   O   G       w   i   l   l       a   l   w   a   y
0101140    s       b   e       u   s   e   d       w   h   e   n   e   v
0101160    e   r       t   h   e       i   .   s   .       s   p   e   c
0101200    i   f   i   e   s       d   u   m   m   y       v   a   r   i
0101220    a   b   l   e   s   ,       i   .   e   .   ,       i   f    
0101240    a       B   I   N   D       o   p   e   r   a   t   o   r    
0101260    a   p   p   e   a   r   s   ,       o   r       t   h   e   r
0101300    e       i   s       m   o   r   e       t   h   a   n       o
0101320    n   e       v   a   r   i   a   b   l   e       s   p   e   c
0101340    i   f   i   e   d       b   y       a       F   O   R       o
0101360    p   e   r   a   t   o   r   ,       o   r       a       G   O
0101400    ,       R   E   T   U   R   N   ,       o   r       a       r
0101420    e   f   e   r   e   n   c   e       t   o       t   h   e    
0101440    v   a   r   i   a   b   l   e       $   $   V   A   L        
0101460    a   p   p   e   a   r   s       i   n       a   n   y       o
0101500    f       t   h   e       o   p   e   r   a   n   d   s   .    
0101520    W   h   e   n       a       P   R   O   G       i   s       u
0101540    s   e   d   ,       t   h   e       f   o   r   m       o   f
0101560        t   h   e       t   r   a   n   s   l   a   t   i   o   n
0101600        i   s   :  \r   (   P   R   O   G       V   A   R   I   A
0101620    B   L   E   S  \r                           {   i   n   i   t
0101640    i   a   l   i   z   e   }  \r   $   $   L   P           {   e
0101660    a   c   h   t   i   m   e   }  \r                           {
0101700    t   e   s   t   }  \r                           {   b   o   d
0101720    y   }  \r   $   $   I   T   E   R   A   T   E  \r            
0101740                {   a   f   t   e   r   t   e   s   t   }  \r    
0101760                        {   u   p   d   a   t   e   }  \r        
0102000                    (   G   O       $   $   L   P   )  \r   $   $
0102020    O   U   T       {   f   i   n   a   l   i   z   e   }  \r    
0102040                        (   R   E   T   U   R   N       $   $   V
0102060    A   L   )   )  \r   w   h   e   r   e       {   t   e   s   t
0102100    }       c   o   r   r   e   s   p   o   n   d   s       t   o
0102120        t   h   a   t       p   o   r   t   i   o   n       o   f
0102140        t   h   e       l   o   o   p       t   h   a   t       t
0102160    e   s   t   s       f   o   r       t   e   r   m   i   n   a
0102200    t   i   o   n       a   n   d       a   l   s   o       f   o
0102220    r       t   h   o   s   e       i   t   e   r   a   t   i   o
0102240    n   s       f   o   r       w   h   i   c   h       {   b   o
0102260    d   y   }       i   s       n   o   t       g   o   i   n   g
0102300        t   o       b   e       e   x   e   c   u   t   e   d   ,
0102320        (   a   s       i   n   d   i   c   a   t   e   d       b
0102340    y       a       W   H   E   N       o   r       U   N   L   E
0102360    S   S   )   ;       {   b   o   d   y   }       c   o   r   r
0102400    e   s   p   o   n   d   s       t   o       t   h   e       o
0102420    p   e   r   a   n   d       o   f       t   h   e       i   .
0102440    s   .   t   y   p   e   ,       e   .   g   .   ,       D   O
0102460    ,       C   O   L   L   E   C   T   ,       e   t   c   .   ;
0102500        {   a   f   t   e   r   t   e   s   t   }       c   o   r
0102520    r   e   s   p   o   n   d   s       t   o       t   h   o   s
0102540    e       t   e   s   t   s       f   o   r       t   e   r   m
0102560    i   n   a   t   i   o   n       s   p   e   c   i   f   i   e
0102600    d       b   y       R   E   P   E   A   T   W   H   I   L   E
0102620        o   r       R   E   P   E   A   T   U   N   T   I   L   ;
0102640        a   n   d       {   u   p   d   a   t   e   }       c   o
0102660    r   r   e   s   p   o   n   d   s       t   o       t   h   a
0102700    t       p   a   r   t       t   h   a   t       r   e   s   e
0102720    t   s       t   h   e       t   a   i   l   ,       i   n   c
0102740    r   e   m   e   n   t   s       t   h   e       c   o   u   n
0102760    t   e   r   ,       e   t   c   .       i   n       p   r   e
0103000    p   a   r   a   t   i   o   n       f   o   r       t   h   e
0103020        n   e   x   t       i   t   e   r   a   t   i   o   n   .
0103040            {   i   n   i   t   i   a   l   i   z   e   }   ,    
0103060    {   f   i   n   a   l   i   z   e   }   ,       a   n   d    
0103100    {   e   a   c   h   t   i   m   e   }       c   o   r   r   e
0103120    s   p   o   n   d       t   o       t   h   e       o   p   e
0103140    r   a   n   d   s       o   f       F   I   R   S   T   ,    
0103160    F   I   N   A   L   L   Y   ,       a   n   d       E   A   C
0103200    H   T   I   M   E   ,       i   f       a   n   y   .  \r   N
0103220    o   t   e       t   h   a   t       s   i   n   c   e       {
0103240    b   o   d   y   }       a   l   w   a   y   s       a   p   p
0103260    e   a   r   s       a   t       t   h   e       t   o   p    
0103300    l   e   v   e   l       o   f       t   h   e       P   R   O
0103320    G   ,       t   h   e       u   s   e   r       c   a   n    
0103340    i   n   s   e   r   t       l   a   b   e   l   s       i   n
0103360        {   b   o   d   y   }   ,       a   n   d       G   O    
0103400    t   o       t   h   e   m       f   r   o   m       w   i   t
0103420    h   i   n       {   b   o   d   y   }       o   r       f   r
0103440    o   m       o   t   h   e   r       i   .   s   .       o   p
0103460    e   r   a   n   d   s   ,       e   .   g   .   ,       (   f
0103500    o   r       X       i   n       Y       f   i   r   s   t    
0103520    (   G   O       A   )       d   o       (   F   O   O   )    
0103540    A       (   F   I   E   )   )   .           H   o   w   e   v
0103560    e   r   ,       s   i   n   c   e       {   b   o   d   y   }
0103600        i   s       d   w   i   m   i   f   i   e   d       a   s
0103620        a       l   i   s   t       o   f       f   o   r   m   s
0103640    ,       t   h   e       l   a   b   e   l   (   s   )       s
0103660    h   o   u   l   d       b   e       a   d   d   e   d       t
0103700    o       t   h   e       d   u   m   m   y       v   a   r   i
0103720    a   b   l   e   s       f   o   r       t   h   e       i   t
0103740    e   r   a   t   i   v   e       s   t   a   t   e   m   e   n
0103760    t       i   n       o   r   d   e   r       t   o       p   r
0104000    e   v   e   n   t       t   h   e   i   r       b   e   i   n
0104020    g       d   w   i   m   i   f   i   e   d       a   n   d    
0104040    p   o   s   s   i   b   l   y       "   c   o   r   r   e   c
0104060    t   e   d   "   ,       e   .   g   .   ,       (   f   o   r
0104100        X       i   n       Y       b   i   n   d       A       f
0104120    i   r   s   t       (   G   O       A   )       d   o       (
0104140    F   O   O   )       A       (   F   I   E   )   )   .        
0104160    T   h   e       u   s   e   r       c   a   n       a   l   s
0104200    o       G   O       t   o       $   $   L   P   ,       $   $
0104220    I   T   E   R   A   T   E   ,       o   r       $   $   O   U
0104240    T   ,       o   r       e   x   p   l   i   c   i   t   l   y
0104260        s   e   t       $   $   V   A   L   .  \r   9   .   8   .
0104300    6          \t   E   r   r   o   r   s       i   n       I   t
0104320    e   r   a   t   i   v   e       S   t   a   t   e   m   e   n
0104340    t   s  \r  \r   A   n       e   r   r   o   r       w   i   l
0104360    l       b   e       g   e   n   e   r   a   t   e   d       a
0104400    n   d       a   n       a   p   p   r   o   p   r   i   a   t
0104420    e       d   i   a   g   n   o   s   t   i   c       p   r   i
0104440    n   t   e   d       i   f       a   n   y       o   f       t
0104460    h   e       f   o   l   l   o   w   i   n   g       c   o   n
0104500    d   i   t   i   o   n   s       h   o   l   d   :  \r   (   1
0104520    )           O   p   e   r   a   t   o   r       w   i   t   h
0104540        n   u   l   l       o   p   e   r   a   n   d   ,       i
0104560    .   e   .   ,       t   w   o       a   d   j   a   c   e   n
0104600    t       o   p   e   r   a   t   o   r   s   ,       a   s    
0104620    i   n       (   f   o   r       X       i   n       Y       u
0104640    n   t   i   l       d   o       .   .   .   )  \r   (   2   )
0104660            O   p   e   r   a   n   d       c   o   n   s   i   s
0104700    t   i   n   g       o   f       m   o   r   e       t   h   a
0104720    n       o   n   e       f   o   r   m       (   e   x   c   e
0104740    p   t       a   s       o   p   e   r   a   n   d       t   o
0104760        F   I   R   S   T   ,       F   I   N   A   L   L   Y   ,
0105000        o   r       o   n   e       o   f       t   h   e       i
0105020    .   s   .   t   y   p   e   s   )   ,       e   .   g   .   ,
0105040        (   f   o   r       X       i   n       Y       (   P   R
0105060    I   N   T       X   )       c   o   l   l   e   c   t       .
0105100    .   .   )   .  \r   (   3   )           I   N   ,       O   N
0105120    ,       F   R   O   M   ,       T   O   ,       o   r       B
0105140    Y       a   p   p   e   a   r       t   w   i   c   e       i
0105160    n       s   a   m   e       i   .   s   .  \r   (   4   )    
0105200        B   o   t   h       I   N       a   n   d       O   N    
0105220    u   s   e   d       o   n       s   a   m   e       i   .   v
0105240    .  \r   (   5   )           F   R   O   M       o   r       T
0105260    O       u   s   e   d       w   i   t   h       I   N       o
0105300    r       O   N       o   n       s   a   m   e       i   .   v
0105320    .  \r   (   6   )           M   o   r   e       t   h   a   n
0105340        o   n   e       i   .   s   .   t   y   p   e   ,       e
0105360    .   g   .   ,       a       D   O       a   n   d       a    
0105400    S   U   M   .  \r   I   n       3   ,       4   ,       o   r
0105420        5   ,       a   n       e   r   r   o   r       i   s    
0105440    n   o   t       g   e   n   e   r   a   t   e   d       i   f
0105460        a   n       i   n   t   e   r   v   e   n   i   n   g    
0105500    A   S       o   c   c   u   r   s   .  \r   I   f       a   n
0105520        e   r   r   o   r       o   c   c   u   r   s   ,       t
0105540    h   e       i   .   s   .       i   s       l   e   f   t    
0105560    u   n   c   h   a   n   g   e   d   .  \r   I   f       n   o
0105600        D   O   ,       C   O   L   L   E   C   T   ,       J   O
0105620    I   N       o   r       a   n   y       o   f       t   h   e
0105640        o   t   h   e   r       i   .   s   .   t   y   p   e   s
0105660        a   r   e       s   p   e   c   i   f   i   e   d   ,    
0105700    C   L   I   S   P       w   i   l   l       f   i   r   s   t
0105720        a   t   t   e   m   p   t       t   o       f   i   n   d
0105740        a   n       o   p   e   r   a   n   d       c   o   n   s
0105760    i   s   t   i   n   g       o   f       m   o   r   e       t
0106000    h   a   n       o   n   e       f   o   r   m   ,       e   .
0106020    g   .   ,       (   f   o   r       X       i   n       Y    
0106040    (   P   R   I   N   T       X   )       w   h   e   n       A
0106060    T   O   M       X       .   .   .   )   ,       a   n   d    
0106100    i   n       t   h   i   s       c   a   s   e       w   i   l
0106120    l       i   n   s   e   r   t       a       D   O       a   f
0106140    t   e   r       t   h   e       f   i   r   s   t       f   o
0106160    r   m   .           (   I   n       t   h   i   s       c   a
0106200    s   e   ,       c   o   n   d   i   t   i   o   n       2    
0106220    i   s       n   o   t       c   o   n   s   i   d   e   r   e
0106240    d       t   o       b   e       m   e   t   ,       a   n   d
0106260        a   n       e   r   r   o   r       i   s       n   o   t
0106300        g   e   n   e   r   a   t   e   d   .   )           I   f
0106320        C   L   I   S   P       c   a   n   n   o   t       f   i
0106340    n   d       s   u   c   h       a   n       o   p   e   r   a
0106360    n   d   ,       a   n   d       n   o       W   H   I   L   E
0106400        o   r       U   N   T   I   L       a   p   p   e   a   r
0106420    s       i   n       t   h   e       i   .   s   .   ,       a
0106440        w   a   r   n   i   n   g       m   e   s   s   a   g   e
0106460        i   s       p   r   i   n   t   e   d   :       N   O    
0106500    D   O   ,       C   O   L   L   E   C   T   ,       O   R    
0106520    J   O   I   N   :       f   o   l   l   o   w   e   d       b
0106540    y       t   h   e       i   .   s   .  \r   S   i   m   i   l
0106560    a   r   l   y   ,       i   f       n   o       t   e   r   m
0106600    i   n   a   t   i   n   g       c   o   n   d   i   t   i   o
0106620    n       i   s       d   e   t   e   c   t   e   d   ,       i
0106640    .   e   .   ,       n   o       I   N   ,       O   N   ,    
0106660    W   H   I   L   E   ,       U   N   T   I   L   ,       T   O
0106700    ,       o   r       a       R   E   T   U   R   N       o   r
0106720        G   O   ,       a       w   a   r   n   i   n   g       m
0106740    e   s   s   a   g   e       i   s       p   r   i   n   t   e
0106760    d   :       P   O   S   S   I   B   L   E       N   O   N   -
0107000    T   E   R   M   I   N   A   T   I   N   G       I   T   E   R
0107020    A   T   I   V   E       S   T   A   T   E   M   E   N   T   :
0107040        f   o   l   l   o   w   e   d       b   y       t   h   e
0107060        i   t   e   r   a   t   i   v   e       s   t   a   t   e
0107100    m   e   n   t   .           H   o   w   e   v   e   r   ,    
0107120    s   i   n   c   e       t   h   e       u   s   e   r       m
0107140    a   y       b   e       p   l   a   n   n   i   n   g       t
0107160    o       t   e   r   m   i   n   a   t   e       t   h   e    
0107200    i   .   s   .       v   i   a       a   n       e   r   r   o
0107220    r   ,       c   o   n   t   r   o   l   -   E   ,       o   r
0107240        a       R   E   T   F   R   O   M       f   r   o   m    
0107260    a       l   o   w   e   r       f   u   n   c   t   i   o   n
0107300    ,       t   h   e       i   .   s   .       i   s       s   t
0107320    i   l   l       t   r   a   n   s   l   a   t   e   d   .    
0107340        N   o   t   e   :           T   h   e       e   r   r   o
0107360    r       m   e   s   s   a   g   e       i   s       n   o   t
0107400        p   r   i   n   t   e   d       i   f       t   h   e    
0107420    v   a   l   u   e       o   f       C   L   I   S   P   I   .
0107440    S   .   G   A   G       i   s       T       (   i   n   i   t
0107460    i   a   l   l   y       N   I   L   )   .  \r   9   .   8   .
0107500    7          \t   D   e   f   i   n   i   n   g       N   e   w
0107520        I   t   e   r   a   t   i   v   e       S   t   a   t   e
0107540    m   e   n   t       O   p   e   r   a   t   o   r   s  \r  \r
0107560    T   h   e       f   o   l   l   o   w   i   n   g       f   u
0107600    n   c   t   i   o   n       i   s       a   v   a   i   l   a
0107620    b   l   e       f   o   r       d   e   f   i   n   i   n   g
0107640        n   e   w       o   r       r   e   d   e   f   i   n   i
0107660    n   g       e   x   i   s   t   i   n   g       i   t   e   r
0107700    a   t   i   v   e       s   t   a   t   e   m   e   n   t    
0107720    o   p   e   r   a   t   o   r   s   :  \r   (   I   .   S   .
0107740    O   P   R       N   A   M   E       F   O   R   M       O   T
0107760    H   E   R   S       E   V   A   L   F   L   G   )          \t
0110000    [   F   u   n   c   t   i   o   n   ]  \r   N   A   M   E    
0110020    i   s       t   h   e       n   a   m   e       o   f       t
0110040    h   e       n   e   w       i   .   s   .   o   p   r   .    
0110060        I   f       F   O   R   M       i   s       a       l   i
0110100    s   t   ,       N   A   M   E       w   i   l   l       b   e
0110120        a       n   e   w       i   .   s   .   t   y   p   e    
0110140    (   s   e   e       p   a   g   e       X   .   X   X   )   ,
0110160        a   n   d       F   O   R   M       i   t   s       b   o
0110200    d   y   .  \r   O   T   H   E   R   S       i   s       a   n
0110220        (   o   p   t   i   o   n   a   l   )       l   i   s   t
0110240        o   f       a   d   d   i   t   i   o   n   a   l       i
0110260    .   s   .       o   p   e   r   a   t   o   r   s       a   n
0110300    d       o   p   e   r   a   n   d   s       w   h   i   c   h
0110320        w   i   l   l       b   e       a   d   d   e   d       t
0110340    o       t   h   e       i   .   s   .       a   t       t   h
0110360    e       p   l   a   c   e       w   h   e   r   e       N   A
0110400    M   E       a   p   p   e   a   r   s   .           I   f    
0110420    F   O   R   M       i   s       N   I   L   ,       N   A   M
0110440    E       i   s       a       n   e   w       i   .   s   .   o
0110460    p   r       d   e   f   i   n   e   d       e   n   t   i   r
0110500    e   l   y       b   y       O   T   H   E   R   S   .  \r   I
0110520    n       b   o   t   h       F   O   R   M       a   n   d    
0110540    O   T   H   E   R   S   ,       t   h   e       a   t   o   m
0110560        $   $   V   A   L       c   a   n       b   e       u   s
0110600    e   d       t   o       r   e   f   e   r   e   n   c   e    
0110620    t   h   e       v   a   l   u   e       t   o       b   e    
0110640    r   e   t   u   r   n   e   d       b   y       t   h   e    
0110660    i   .   s   .   ,       I   .   V   .       t   o       r   e
0110700    f   e   r   e   n   c   e       t   h   e       c   u   r   r
0110720    e   n   t       i   .   v   .   ,       a   n   d       B   O
0110740    D   Y       t   o       r   e   f   e   r   e   n   c   e    
0110760    N   A   M   E   '   s       o   p   e   r   a   n   d   .    
0111000        I   n       o   t   h   e   r       w   o   r   d   s   ,
0111020        t   h   e       c   u   r   r   e   n   t       i   .   v
0111040    .       w   i   l   l       b   e       s   u   b   s   t   i
0111060    t   u   t   e   d       f   o   r       a   l   l       i   n
0111100    s   t   a   n   c   e   s       o   f       I   .   V   .    
0111120    a   n   d       N   A   M   E   '   s       o   p   e   r   a
0111140    n   d       w   i   l   l       b   e       s   u   b   s   t
0111160    i   t   u   t   e   d       f   o   r       a   l   l       i
0111200    n   s   t   a   n   c   e   s       o   f       B   O   D   Y
0111220        t   h   r   o   u   g   h   o   u   t       F   O   R   M
0111240        a   n   d       O   T   H   E   R   S   .  \r   I   f    
0111260    E   V   A   L   F   L   G       i   s       T   ,       F   O
0111300    R   M       a   n   d       O   T   H   E   R   S       a   r
0111320    e       e   v   a   l   u   a   t   e   d       a   t       t
0111340    r   a   n   s   l   a   t   i   o   n       t   i   m   e   ,
0111360        a   n   d       t   h   e   i   r       v   a   l   u   e
0111400    s       u   s   e   d       a   s       d   e   s   c   r   i
0111420    b   e   d       a   b   o   v   e   .           A       d   u
0111440    m   m   y       v   a   r   i   a   b   l   e       f   o   r
0111460        u   s   e       i   n       t   r   a   n   s   l   a   t
0111500    i   o   n       t   h   a   t       d   o   e   s       n   o
0111520    t       c   l   a   s   h       w   i   t   h       a       d
0111540    u   m   m   y       v   a   r   i   a   b   l   e       a   l
0111560    r   e   a   d   y       u   s   e   d       b   y       s   o
0111600    m   e       o   t   h   e   r       i   .   s   .       o   p
0111620    e   r   a   t   o   r   s       c   a   n       b   e       o
0111640    b   t   a   i   n   e   d       b   y       c   a   l   l   i
0111660    n   g       (   G   E   T   D   U   M   M   Y   V   A   R   )
0111700    .       (   G   E   T   D   U   M   M   Y   V   A   R       T
0111720    )       w   i   l   l       r   e   t   u   r   n       a    
0111740    d   u   m   m   y       v   a   r   i   a   b   l   e       a
0111760    n   d       a   l   s   o       i   n   s   u   r   e       t
0112000    h   a   t       i   t       i   s       b   o   u   n   d    
0112020    a   s       a       P   R   O   G       v   a   r   i   a   b
0112040    l   e       i   n       t   h   e       t   r   a   n   s   l
0112060    a   t   i   o   n   .  \r   I   f       N   A   M   E       w
0112100    a   s       p   r   e   v   i   o   u   s   l   y       a   n
0112120        i   .   s   .   o   p   r       a   n   d       i   s    
0112140    b   e   i   n   g       r   e   d   e   f   i   n   e   d   ,
0112160        t   h   e       m   e   s   s   a   g   e       (   N   A
0112200    M   E       R   E   D   E   F   I   N   E   D   )       w   i
0112220    l   l       b   e       p   r   i   n   t   e   d       (   u
0112240    n   l   e   s   s       D   F   N   F   L   G   =   T   )   ,
0112260        a   n   d       a   l   l       e   x   p   r   e   s   s
0112300    i   o   n   s       u   s   i   n   g       t   h   e       i
0112320    .   s   .   o   p   r       N   A   M   E       t   h   a   t
0112340        h   a   v   e       b   e   e   n       t   r   a   n   s
0112360    l   a   t   e   d       w   i   l   l       h   a   v   e    
0112400    t   h   e   i   r       t   r   a   n   s   l   a   t   i   o
0112420    n   s       d   i   s   c   a   r   d   e   d   .  \r  \r   T
0112440    h   e       f   o   l   l   o   w   i   n   g       a   r   e
0112460        s   o   m   e       e   x   a   m   p   l   e   s       o
0112500    f       h   o   w       I   .   S   .   O   P   R       c   o
0112520    u   l   d       b   e       c   a   l   l   e   d       t   o
0112540        d   e   f   i   n   e       s   o   m   e       e   x   i
0112560    s   t   i   n   g       i   .   s   .   o   p   r   s   ,    
0112600    a   n   d       c   r   e   a   t   e       s   o   m   e    
0112620    n   e   w       o   n   e   s   :  \r  \t   C   O   L   L   E
0112640    C   T  \t  \r   (   I   .   S   .   O   P   R       '   C   O
0112660    L   L   E   C   T  \r                                       '
0112700    (   S   E   T   Q       $   $   V   A   L       (   N   C   O
0112720    N   C   1       $   $   V   A   L       B   O   D   Y   )   )
0112740    )  \r  \t   S   U   M  \t  \r   (   I   .   S   .   O   P   R
0112760        '   S   U   M  \r                                       '
0113000    (   $   $   V   A   L   _   $   $   V   A   L   +   B   O   D
0113020    Y   )  \r                                       '   (   F   I
0113040    R   S   T       $   $   V   A   L   _   0   )   )  \r   N   o
0113060    t   e   :           $   $   V   A   L   +   B   O   D   Y    
0113100    i   s       u   s   e   d       i   n   s   t   e   a   d    
0113120    o   f       (   I   P   L   U   S       $   $   V   A   L    
0113140    B   O   D   Y   )       s   o       t   h   a   t       t   h
0113160    e       c   h   o   i   c   e       o   f       f   u   n   c
0113200    t   i   o   n       u   s   e   d       i   n       t   h   e
0113220        t   r   a   n   s   l   a   t   i   o   n   ,       i   .
0113240    e   .   ,       I   P   L   U   S   ,       F   P   L   U   S
0113260    ,       o   r       P   L   U   S   ,       w   i   l   l    
0113300    b   e       d   e   t   e   r   m   i   n   e   d       b   y
0113320        t   h   e       d   e   c   l   a   r   a   t   i   o   n
0113340    s       t   h   e   n       i   n       e   f   f   e   c   t
0113360    .  \r  \t   N   E   V   E   R  \t  \r   (   I   .   S   .   O
0113400    P   R       '   N   E   V   E   R  \r                        
0113420                '   (   i   f       B   O   D   Y       t   h   e
0113440    n       $   $   V   A   L   _   N   I   L       (   G   O    
0113460    $   $   O   U   T   )   )   )  \r   N   o   t   e   :        
0113500    (   i   f       B   O   D   Y       t   h   e   n       (   R
0113520    E   T   U   R   N       N   I   L   )   )       w   o   u   l
0113540    d       e   x   i   t       f   r   o   m       t   h   e    
0113560    i   .   s   .       i   m   m   e   d   i   a   t   e   l   y
0113600        a   n   d       t   h   e   r   e   f   o   r   e       n
0113620    o   t       e   x   e   c   u   t   e       t   h   e       o
0113640    p   e   r   a   t   i   o   n   s       s   p   e   c   i   f
0113660    i   e   d       v   i   a       a       F   I   N   A   L   L
0113700    Y       (   i   f       a   n   y   )   .  \r  \t   T   H   E
0113720    R   E   I   S  \t  \r   (   I   .   S   .   O   P   R       '
0113740    T   H   E   R   E   I   S  \r                                
0113760        '   (   i   f       B   O   D   Y       t   h   e   n    
0114000    $   $   V   A   L   _   I   .   V   .       (   G   O       $
0114020    $   O   U   T   )   )   )  \r  \t   R   C   O   L   L   E   C
0114040    T  \t   T   o       d   e   f   i   n   e       R   C   O   L
0114060    L   E   C   T   ,       a       v   e   r   s   i   o   n    
0114100    o   f       C   O   L   L   E   C   T       w   h   i   c   h
0114120        u   s   e   s       C   O   N   S       i   n   s   t   e
0114140    a   d       o   f       N   C   O   N   C   1       a   n   d
0114160        t   h   e   n       r   e   v   e   r   s   e   s       t
0114200    h   e       l   i   s   t       o   f       v   a   l   u   e
0114220    s   :  \r   (   I   .   S   .   O   P   R       '   R   C   O
0114240    L   L   E   C   T  \r                                       '
0114260    (   $   $   V   A   L   _   (   C   O   N   S       B   O   D
0114300    Y       $   $   V   A   L   )   )  \r                        
0114320                '   (   F   I   N   A   L   L   Y       (   R   E
0114340    T   U   R   N       (   D   R   E   V   E   R   S   E       $
0114360    $   V   A   L   )   )   )   ]  \r  \t   T   C   O   L   L   E
0114400    C   T  \t   T   o       d   e   f   i   n   e       T   C   O
0114420    L   L   E   C   T   ,       a       v   e   r   s   i   o   n
0114440        o   f       C   O   L   L   E   C   T       w   h   i   c
0114460    h       u   s   e   s       T   C   O   N   C   :  \r   (   I
0114500    .   S   .   O   P   R       '   T   C   O   L   L   E   C   T
0114520   \r                                       '   (   T   C   O   N
0114540    C       $   $   V   A   L       B   O   D   Y   )  \r        
0114560                                '   (   F   I   R   S   T       $
0114600    $   V   A   L   _   (   C   O   N   S   )       F   I   N   A
0114620    L   L   Y       (   R   E   T   U   R   N       (   C   A   R
0114640        $   $   V   A   L   )   )   )   ]  \r  \t   P   R   O   D
0114660    U   C   T  \t  \r   (   I   .   S   .   O   P   R       '   P
0114700    R   O   D   U   C   T  \r                                    
0114720    '   (   $   $   V   A   L   _   $   $   V   A   L   *   B   O
0114740    D   Y   )  \r                                       '   (   F
0114760    I   R   S   T       $   $   V   A   L   _   1   )   ]  \r  \t
0115000    U   P   T   O  \t   T   o       d   e   f   i   n   e       U
0115020    P   T   O   ,       a       v   e   r   s   i   o   n       o
0115040    f       T   O       w   h   o   s   e       o   p   e   r   a
0115060    n   d       i   s       e   v   a   l   u   a   t   e   d    
0115100    o   n   l   y       o   n   c   e   :  \r   (   I   .   S   .
0115120    O   P   R       '   U   P   T   O  \r                        
0115140                N   I   L  \r                                    
0115160    '   (   B   I   N   D       $   $   F   O   O   _   B   O   D
0115200    Y       T   O       $   $   F   O   O   )   ]  \r  \t   T   O
0115220   \t   T   o       r   e   d   e   f   i   n   e       T   O    
0115240    s   o       t   h   a   t       i   n   s   t   e   a   d    
0115260    o   f       r   e   c   o   m   p   u   t   i   n   g       F
0115300    O   R   M       e   a   c   h       i   t   e   r   a   t   i
0115320    o   n   ,       a       v   a   r   i   a   b   l   e       i
0115340    s       b   o   u   n   d       t   o       t   h   e       v
0115360    a   l   u   e       o   f       F   O   R   M   ,       a   n
0115400    d       t   h   e   n       t   h   a   t       v   a   r   i
0115420    a   b   l   e       i   s       u   s   e   d   :  \r   (   I
0115440    .   S   .   O   P   R       '   T   O  \r                    
0115460                    N   I   L  \r                                
0115500        '   (   B   I   N   D       $   $   E   N   D       F   I
0115520    R   S   T       $   $   E   N   D   _   B   O   D   Y       O
0115540    R   I   G   I   N   A   L       T   O       $   $   E   N   D
0115560    )   ]  \r   N   o   t   e       t   h   e       u   s   e    
0115600    o   f       O   R   I   G   I   N   A   L       t   o       r
0115620    e   d   e   f   i   n   e       T   O       i   n       t   e
0115640    r   m   s       o   f       i   t   s       o   r   i   g   i
0115660    n   a   l       d   e   f   i   n   i   t   i   o   n   .    
0115700        O   R   I   G   I   N   A   L       i   s       i   n   t
0115720    e   n   d   e   d       f   o   r       u   s   e       i   n
0115740        r   e   d   e   f   i   n   i   n   g       b   u   i   l
0115760    t   -   i   n       o   p   e   r   a   t   o   r   s   ,    
0116000    s   i   n   c   e       t   h   e   i   r       d   e   f   i
0116020    n   i   t   i   o   n   s       a   r   e       n   o   t    
0116040    a   c   c   e   s   s   i   b   l   e   ,       a   n   d    
0116060    h   e   n   c   e       n   o   t       d   i   r   e   c   t
0116100    l   y       m   o   d   i   f   i   a   b   l   e   .        
0116120    T   h   u   s       i   f       t   h   e       o   p   e   r
0116140    a   t   o   r       h   a   d       b   e   e   n       d   e
0116160    f   i   n   e   d       b   y       t   h   e       u   s   e
0116200    r       v   i   a       I   .   S   .   O   P   R   ,       O
0116220    R   I   G   I   N   A   L       w   o   u   l   d       n   o
0116240    t       o   b   t   a   i   n       i   t   s       o   r   i
0116260    g   i   n   a   l       d   e   f   i   n   i   t   i   o   n
0116300    .           I   n       t   h   i   s       c   a   s   e   ,
0116320        o   n   e       p   r   e   s   u   m   a   b   l   y    
0116340    w   o   u   l   d       s   i   m   p   l   y       m   o   d
0116360    i   f   y       t   h   e       i   .   s   .   o   p   r    
0116400    d   e   f   i   n   i   t   i   o   n   .  \r   I   .   S   .
0116420    O   P   R       c   a   n       a   l   s   o       b   e    
0116440    u   s   e   d       t   o       d   e   f   i   n   e       s
0116460    y   n   o   n   y   m   s       f   o   r       a   l   r   e
0116500    a   d   y       d   e   f   i   n   e   d       i   .   s   .
0116520        o   p   e   r   a   t   o   r   s       b   y       c   a
0116540    l   l   i   n   g       I   .   S   .   O   P   R       w   i
0116560    t   h       F   O   R   M       a   n       a   t   o   m   ,
0116600        e   .   g   .   ,       (   I   .   S   .   O   P   R    
0116620    '   W   H   E   R   E       '   W   H   E   N   )       m   a
0116640    k   e   s       W   H   E   R   E       b   e       t   h   e
0116660        s   a   m   e       a   s       W   H   E   N   .        
0116700    S   i   m   i   l   a   r   l   y   ,       f   o   l   l   o
0116720    w   i   n   g       (   I   .   S   .   O   P   R       '   I
0116740    S   T   H   E   R   E       '   T   H   E   R   E   I   S   )
0116760    ,       o   n   e       c   a   n       w   r   i   t   e    
0117000    (   I   S   T   H   E   R   E       A   T   O   M       I   N
0117020        Y   )   ,       a   n   d       f   o   l   l   o   w   i
0117040    n   g       (   I   .   S   .   O   P   R       '   F   I   N
0117060    D       '   F   O   R   )       a   n   d       (   I   .   S
0117100    .   O   P   R       '   S   U   C   H   T   H   A   T       '
0117120    T   H   E   R   E   I   S   )   ,       o   n   e       c   a
0117140    n       w   r   i   t   e       (   f   i   n   d       X    
0117160    i   n       Y       s   u   c   h   t   h   a   t       X    
0117200    m   e   m   b   e   r       Z   )   .           I   n       t
0117220    h   e       c   u   r   r   e   n   t       s   y   s   t   e
0117240    m   ,       W   H   E   R   E       i   s       s   y   n   o
0117260    n   y   m   o   u   s       w   i   t   h       W   H   E   N
0117300    ,       S   U   C   H   T   H   A   T       a   n   d       I
0117320    S   T   H   E   R   E       w   i   t   h       T   H   E   R
0117340    E   I   S   ,       F   I   N   D       w   i   t   h       F
0117360    O   R   ,       a   n   d       T   H   R   U       w   i   t
0117400    h       T   O   .  \r   I   f       F   O   R   M       i   s
0117420        t   h   e       a   t   o   m       M   O   D   I   F   I
0117440    E   R   ,       t   h   e   n       N   A   M   E       i   s
0117460        d   e   f   i   n   e   d       a   s       a   n       i
0117500    .   s   .   o   p   r       w   h   i   c   h       c   a   n
0117520        i   m   m   e   d   i   a   t   e   l   y       f   o   l
0117540    l   o   w       a   n   o   t   h   e   r       i   .   s   .
0117560        o   p   e   r   a   t   o   r       (   i   .   e   .   ,
0117600        a   n       e   r   r   o   r       w   i   l   l       n
0117620    o   t       b   e       g   e   n   e   r   a   t   e   d   ,
0117640        a   s       d   e   s   c   r   i   b   e   d       p   r
0117660    e   v   i   o   u   s   l   y   )   .           N   A   M   E
0117700        w   i   l   l       n   o   t       t   e   r   m   i   n
0117720    a   t   e       t   h   e       s   c   o   p   e       o   f
0117740        t   h   e       p   r   e   v   i   o   u   s       o   p
0117760    e   r   a   t   o   r   ,       a   n   d       w   i   l   l
0120000        b   e       s   t   r   i   p   p   e   d       o   f   f
0120020        w   h   e   n       D   W   I   M   I   F   Y       i   s
0120040        c   a   l   l   e   d       o   n       i   t   s       o
0120060    p   e   r   a   n   d   .           O   L   D       i   s    
0120100    a   n       e   x   a   m   p   l   e       o   f       a    
0120120    M   O   D   I   F   I   E   R       t   y   p   e       o   f
0120140        o   p   e   r   a   t   o   r   .           T   h   e    
0120160    M   O   D   I   F   I   E   R       f   e   a   t   u   r   e
0120200        a   l   l   o   w   s       t   h   e       u   s   e   r
0120220        t   o       d   e   f   i   n   e       i   .   s   .    
0120240    o   p   e   r   a   t   o   r   s       s   i   m   i   l   a
0120260    r       t   o       O   L   D   ,       f   o   r       u   s
0120300    e       i   n       c   o   n   j   u   n   c   t   i   o   n
0120320        w   i   t   h       s   o   m   e       o   t   h   e   r
0120340        u   s   e   r       d   e   f   i   n   e   d       i   .
0120360    s   .   o   p   r       w   h   i   c   h       w   i   l   l
0120400        p   r   o   d   u   c   e       t   h   e       a   p   p
0120420    r   o   p   r   i   a   t   e       t   r   a   n   s   l   a
0120440    t   i   o   n   .  \r   T   h   e       f   i   l   e       p
0120460    a   c   k   a   g   e       c   o   m   m   a   n   d       I
0120500    .   S   .   O   P   R   S       (   p   a   g   e       X   .
0120520    X   X   )       w   i   l   l       d   u   m   p       t   h
0120540    e       d   e   f   i   n   i   t   i   o   n       o   f    
0120560    i   .   s   .   o   p   r   s   .           (   I   .   S   .
0120600    O   P   R   S       P   R   O   D   U   C   T       U   P   T
0120620    O   )       a   s       a       f   i   l   e       p   a   c
0120640    k   a   g   e       c   o   m   m   a   n   d       w   i   l
0120660    l       p   r   i   n   t       s   u   i   t   a   b   l   e
0120700        e   x   p   r   e   s   s   i   o   n   s       s   o    
0120720    t   h   a   t       t   h   e   s   e       i   t   e   r   a
0120740    t   i   v   e       s   t   a   t   e   m   e   n   t       o
0120760    p   e   r   a   t   o   r   s       w   i   l   l       b   e
0121000        (   r   e   )   d   e   f   i   n   e   d       w   h   e
0121020    n       t   h   e       f   i   l   e       i   s       l   o
0121040    a   d   e   d   .  \r  \r   C   o   p   y   r   i   g   h   t
0121060        (   c   )       1   9   8   5       X   e   r   o   x    
0121100    C   o   r   p   o   r   a   t   i   o   n   .           A   l
0121120    l       r   i   g   h   t   s       r   e   s   e   r   v   e
0121140    d   .  \r  \r                                                
0121144