
(/VERSIONCHECK 2) 

(DEFUN |CCLASS;digit;$;1| ($) (SPADCALL "0123456789" (QREFELT $ 12))) 

(DEFUN |CCLASS;hexDigit;$;2| ($)
  (SPADCALL "0123456789abcdefABCDEF" (QREFELT $ 12))) 

(DEFUN |CCLASS;upperCase;$;3| ($)
  (SPADCALL "ABCDEFGHIJKLMNOPQRSTUVWXYZ" (QREFELT $ 12))) 

(DEFUN |CCLASS;lowerCase;$;4| ($)
  (SPADCALL "abcdefghijklmnopqrstuvwxyz" (QREFELT $ 12))) 

(DEFUN |CCLASS;alphabetic;$;5| ($)
  (SPADCALL (|spadConstant| $ 15) (|spadConstant| $ 16) (QREFELT $ 17))) 

(DEFUN |CCLASS;alphanumeric;$;6| ($)
  (SPADCALL (|spadConstant| $ 18) (|spadConstant| $ 13) (QREFELT $ 17))) 

(DEFUN |CCLASS;=;2$B;7| (|a| |b| $) (SPADCALL |a| |b| (QREFELT $ 21))) 

(DEFUN |CCLASS;member?;C$B;8| (|c| |a| $)
  (SPADCALL |a| (SPADCALL |c| (QREFELT $ 24)) (QREFELT $ 25))) 

(DEFUN |CCLASS;union;3$;9| (|a| |b| $) (SPADCALL |a| |b| (QREFELT $ 27))) 

(DEFUN |CCLASS;intersect;3$;10| (|a| |b| $) (SPADCALL |a| |b| (QREFELT $ 28))) 

(DEFUN |CCLASS;difference;3$;11| (|a| |b| $)
  (SPADCALL |a| (SPADCALL |b| (QREFELT $ 30)) (QREFELT $ 28))) 

(DEFUN |CCLASS;complement;2$;12| (|a| $) (SPADCALL |a| (QREFELT $ 30))) 

(DEFUN |CCLASS;convert;$S;13| (|cl| $)
  (SPADCALL (SPADCALL |cl| (QREFELT $ 34)) (QREFELT $ 35))) 

(DEFUN |CCLASS;convert;$L;14| (|cl| $)
  (PROG (#1=#:G677 |i| #2=#:G676)
    (RETURN
     (SEQ
      (PROGN
       (LETT #2# NIL . #3=(|CCLASS;convert;$L;14|))
       (SEQ (LETT |i| 0 . #3#) (LETT #1# (- (QREFELT $ 10) 1) . #3#) G190
            (COND ((QSGREATERP |i| #1#) (GO G191)))
            (SEQ
             (EXIT
              (COND
               ((SPADCALL |cl| |i| (QREFELT $ 25))
                (LETT #2# (CONS (SPADCALL |i| (QREFELT $ 37)) #2#) . #3#)))))
            (LETT |i| (QSADD1 |i|) . #3#) (GO G190) G191
            (EXIT (NREVERSE0 #2#)))))))) 

(DEFUN |CCLASS;charClass;S$;15| (|s| $)
  (PROG (#1=#:G681 |i| |cl|)
    (RETURN
     (SEQ
      (LETT |cl| (SPADCALL (QREFELT $ 10) 'NIL (QREFELT $ 38))
            . #2=(|CCLASS;charClass;S$;15|))
      (SEQ (LETT |i| (SPADCALL |s| (QREFELT $ 39)) . #2#)
           (LETT #1# (SPADCALL |s| (QREFELT $ 40)) . #2#) G190
           (COND ((> |i| #1#) (GO G191)))
           (SEQ
            (EXIT
             (SPADCALL |cl|
                       (SPADCALL (SPADCALL |s| |i| (QREFELT $ 41))
                                 (QREFELT $ 24))
                       'T (QREFELT $ 42))))
           (LETT |i| (+ |i| 1) . #2#) (GO G190) G191 (EXIT NIL))
      (EXIT |cl|))))) 

(DEFUN |CCLASS;charClass;L$;16| (|l| $)
  (PROG (#1=#:G685 |c| |cl|)
    (RETURN
     (SEQ
      (LETT |cl| (SPADCALL (QREFELT $ 10) 'NIL (QREFELT $ 38))
            . #2=(|CCLASS;charClass;L$;16|))
      (SEQ (LETT |c| NIL . #2#) (LETT #1# |l| . #2#) G190
           (COND
            ((OR (ATOM #1#) (PROGN (LETT |c| (CAR #1#) . #2#) NIL)) (GO G191)))
           (SEQ
            (EXIT
             (SPADCALL |cl| (SPADCALL |c| (QREFELT $ 24)) 'T (QREFELT $ 42))))
           (LETT #1# (CDR #1#) . #2#) (GO G190) G191 (EXIT NIL))
      (EXIT |cl|))))) 

(DEFUN |CCLASS;coerce;$Of;17| (|cl| $)
  (SPADCALL (SPADCALL |cl| (QREFELT $ 36)) (QREFELT $ 45))) 

(DEFUN |CCLASS;#;$Nni;18| (|a| $)
  (PROG (|n| #1=#:G690 |i|)
    (RETURN
     (SEQ (LETT |n| 0 . #2=(|CCLASS;#;$Nni;18|))
          (SEQ (LETT |i| 0 . #2#) (LETT #1# (- (QREFELT $ 10) 1) . #2#) G190
               (COND ((QSGREATERP |i| #1#) (GO G191)))
               (SEQ
                (EXIT
                 (COND
                  ((SPADCALL |a| |i| (QREFELT $ 25))
                   (LETT |n| (+ |n| 1) . #2#)))))
               (LETT |i| (QSADD1 |i|) . #2#) (GO G190) G191 (EXIT NIL))
          (EXIT |n|))))) 

(DEFUN |CCLASS;empty;$;19| ($) (SPADCALL NIL (QREFELT $ 43))) 

(DEFUN |CCLASS;brace;$;20| ($) (SPADCALL NIL (QREFELT $ 43))) 

(DEFUN |CCLASS;insert!;C2$;21| (|c| |a| $)
  (SEQ (SPADCALL |a| (SPADCALL |c| (QREFELT $ 24)) 'T (QREFELT $ 42))
       (EXIT |a|))) 

(DEFUN |CCLASS;remove!;C2$;22| (|c| |a| $)
  (SEQ (SPADCALL |a| (SPADCALL |c| (QREFELT $ 24)) 'NIL (QREFELT $ 42))
       (EXIT |a|))) 

(DEFUN |CCLASS;inspect;$C;23| (|a| $)
  (PROG (#1=#:G699 #2=#:G700 |i|)
    (RETURN
     (SEQ
      (EXIT
       (SEQ
        (SEQ (LETT |i| 0 . #3=(|CCLASS;inspect;$C;23|))
             (LETT #2# (- (QREFELT $ 10) 1) . #3#) G190
             (COND ((QSGREATERP |i| #2#) (GO G191)))
             (SEQ
              (EXIT
               (COND
                ((SPADCALL |a| |i| (QREFELT $ 25))
                 (PROGN
                  (LETT #1# (SPADCALL |i| (QREFELT $ 37)) . #3#)
                  (GO #1#))))))
             (LETT |i| (QSADD1 |i|) . #3#) (GO G190) G191 (EXIT NIL))
        (EXIT (|error| "Cannot take a character from an empty class."))))
      #1# (EXIT #1#))))) 

(DEFUN |CCLASS;extract!;$C;24| (|a| $)
  (PROG (#1=#:G704 #2=#:G705 |i|)
    (RETURN
     (SEQ
      (EXIT
       (SEQ
        (SEQ (LETT |i| 0 . #3=(|CCLASS;extract!;$C;24|))
             (LETT #2# (- (QREFELT $ 10) 1) . #3#) G190
             (COND ((QSGREATERP |i| #2#) (GO G191)))
             (SEQ
              (EXIT
               (COND
                ((SPADCALL |a| |i| (QREFELT $ 25))
                 (SEQ (SPADCALL |a| |i| 'NIL (QREFELT $ 42))
                      (EXIT
                       (PROGN
                        (LETT #1# (SPADCALL |i| (QREFELT $ 37)) . #3#)
                        (GO #1#))))))))
             (LETT |i| (QSADD1 |i|) . #3#) (GO G190) G191 (EXIT NIL))
        (EXIT (|error| "Cannot take a character from an empty class."))))
      #1# (EXIT #1#))))) 

(DEFUN |CCLASS;map;M2$;25| (|f| |a| $)
  (PROG (#1=#:G710 |i| |b|)
    (RETURN
     (SEQ
      (LETT |b| (SPADCALL (QREFELT $ 10) 'NIL (QREFELT $ 38))
            . #2=(|CCLASS;map;M2$;25|))
      (SEQ (LETT |i| 0 . #2#) (LETT #1# (- (QREFELT $ 10) 1) . #2#) G190
           (COND ((QSGREATERP |i| #1#) (GO G191)))
           (SEQ
            (EXIT
             (COND
              ((SPADCALL |a| |i| (QREFELT $ 25))
               (SPADCALL |b|
                         (SPADCALL (SPADCALL (SPADCALL |i| (QREFELT $ 37)) |f|)
                                   (QREFELT $ 24))
                         'T (QREFELT $ 42))))))
           (LETT |i| (QSADD1 |i|) . #2#) (GO G190) G191 (EXIT NIL))
      (EXIT |b|))))) 

(DEFUN |CCLASS;map!;M2$;26| (|f| |a| $)
  (PROG (#1=#:G714 |i|)
    (RETURN
     (SEQ (SPADCALL (QREFELT $ 56) 'NIL (QREFELT $ 57))
          (SEQ (LETT |i| 0 . #2=(|CCLASS;map!;M2$;26|))
               (LETT #1# (- (QREFELT $ 10) 1) . #2#) G190
               (COND ((QSGREATERP |i| #1#) (GO G191)))
               (SEQ
                (EXIT
                 (COND
                  ((SPADCALL |a| |i| (QREFELT $ 25))
                   (SPADCALL (QREFELT $ 56)
                             (SPADCALL
                              (SPADCALL (SPADCALL |i| (QREFELT $ 37)) |f|)
                              (QREFELT $ 24))
                             'T (QREFELT $ 42))))))
               (LETT |i| (QSADD1 |i|) . #2#) (GO G190) G191 (EXIT NIL))
          (EXIT (SPADCALL |a| (QREFELT $ 56) 0 (QREFELT $ 58))))))) 

(DEFUN |CCLASS;parts;$L;27| (|a| $)
  (PROG (#1=#:G718 |i| #2=#:G717)
    (RETURN
     (SEQ
      (PROGN
       (LETT #2# NIL . #3=(|CCLASS;parts;$L;27|))
       (SEQ (LETT |i| 0 . #3#) (LETT #1# (- (QREFELT $ 10) 1) . #3#) G190
            (COND ((QSGREATERP |i| #1#) (GO G191)))
            (SEQ
             (EXIT
              (COND
               ((SPADCALL |a| |i| (QREFELT $ 25))
                (LETT #2# (CONS (SPADCALL |i| (QREFELT $ 37)) #2#) . #3#)))))
            (LETT |i| (QSADD1 |i|) . #3#) (GO G190) G191
            (EXIT (NREVERSE0 #2#)))))))) 

(DEFUN |CharacterClass| #1=()
  (PROG #1#
    (RETURN
     (PROG (#2=#:G727)
       (RETURN
        (COND
         ((LETT #2# (HGET |$ConstructorCache| '|CharacterClass|)
                . #3=(|CharacterClass|))
          (|CDRwithIncrement| (CDAR #2#)))
         ('T
          (UNWIND-PROTECT
              (PROG1
                  (CDDAR
                   (HPUT |$ConstructorCache| '|CharacterClass|
                         (LIST (CONS NIL (CONS 1 (|CharacterClass;|))))))
                (LETT #2# T . #3#))
            (COND
             ((NOT #2#) (HREM |$ConstructorCache| '|CharacterClass|))))))))))) 

(DEFUN |CharacterClass;| ()
  (PROG (|dv$| $ #1=#:G724 |pv$| #2=#:G725)
    (RETURN
     (PROGN
      (LETT |dv$| '(|CharacterClass|) . #3=(|CharacterClass|))
      (LETT $ (GETREFV 70) . #3#)
      (QSETREFV $ 0 |dv$|)
      (QSETREFV $ 3
                (LETT |pv$|
                      (|buildPredVector| 0 0
                                         (LIST
                                          (|HasCategory| (|Character|)
                                                         '(|ConvertibleTo|
                                                           (|InputForm|)))
                                          (|HasCategory| (|Character|)
                                                         '(|Finite|))
                                          (|HasCategory| (|Character|)
                                                         '(|OrderedSet|))
                                          (|HasCategory| (|Character|)
                                                         '(|SetCategory|))
                                          (LETT #1#
                                                (AND
                                                 (|HasCategory| (|Character|)
                                                                '(|SetCategory|))
                                                 (|HasCategory| (|Character|)
                                                                '(|Evalable|
                                                                  (|Character|))))
                                                . #3#)
                                          (OR
                                           (AND
                                            (|HasCategory| (|Character|)
                                                           '(|Finite|))
                                            (|HasCategory| (|Character|)
                                                           '(|Evalable|
                                                             (|Character|))))
                                           #1#)))
                      . #3#))
      (|haddProp| |$ConstructorCache| '|CharacterClass| NIL (CONS 1 $))
      (|stuffDomainSlots| $)
      (AND (|HasCategory| $ '(|shallowlyMutable|)) (|augmentPredVector| $ 64))
      (AND (LETT #2# (|HasCategory| $ '(|finiteAggregate|)) . #3#)
           (|augmentPredVector| $ 128))
      (AND #2# (|HasCategory| (|Character|) '(|SetCategory|))
           (|augmentPredVector| $ 256))
      (QSETREFV $ 6 (|IndexedBits| 0))
      (QSETREFV $ 10 (SPADCALL (QREFELT $ 9)))
      (QSETREFV $ 56 (SPADCALL (QREFELT $ 10) 'NIL (QREFELT $ 38)))
      $)))) 

(MAKEPROP '|CharacterClass| '|infovec|
          (LIST
           '#(NIL NIL NIL NIL NIL NIL '|Rep| (|NonNegativeInteger|)
              (|Character|) (0 . |size|) 'N (|String|) |CCLASS;charClass;S$;15|
              (CONS IDENTITY
                    (FUNCALL (|dispatchFunction| |CCLASS;digit;$;1|) $))
              (CONS IDENTITY
                    (FUNCALL (|dispatchFunction| |CCLASS;hexDigit;$;2|) $))
              (CONS IDENTITY
                    (FUNCALL (|dispatchFunction| |CCLASS;upperCase;$;3|) $))
              (CONS IDENTITY
                    (FUNCALL (|dispatchFunction| |CCLASS;lowerCase;$;4|) $))
              |CCLASS;union;3$;9|
              (CONS IDENTITY
                    (FUNCALL (|dispatchFunction| |CCLASS;alphabetic;$;5|) $))
              (CONS IDENTITY
                    (FUNCALL (|dispatchFunction| |CCLASS;alphanumeric;$;6|) $))
              (|Boolean|) (4 . =) |CCLASS;=;2$B;7| (|Integer|) (10 . |ord|)
              (15 . |elt|) |CCLASS;member?;C$B;8| (21 . |Or|) (27 . |And|)
              |CCLASS;intersect;3$;10| (33 . |Not|) |CCLASS;difference;3$;11|
              |CCLASS;complement;2$;12| (|List| 8) |CCLASS;convert;$L;14|
              (38 . |construct|) |CCLASS;convert;$S;13| (43 . |char|)
              (48 . |new|) (54 . |minIndex|) (59 . |maxIndex|) (64 . |elt|)
              (70 . |setelt|) |CCLASS;charClass;L$;16| (|OutputForm|)
              (77 . |coerce|) |CCLASS;coerce;$Of;17| |CCLASS;#;$Nni;18|
              |CCLASS;empty;$;19| |CCLASS;brace;$;20| |CCLASS;insert!;C2$;21|
              |CCLASS;remove!;C2$;22| |CCLASS;inspect;$C;23|
              |CCLASS;extract!;$C;24| (|Mapping| 8 8) |CCLASS;map;M2$;25|
              '|temp| (82 . |fill!|) (88 . |copyInto!|) |CCLASS;map!;M2$;26|
              |CCLASS;parts;$L;27| (|Equation| 8) (|List| 61) (|Mapping| 8 8 8)
              (|InputForm|) (|List| $) (|PositiveInteger|) (|Mapping| 20 8)
              (|Union| 8 '"failed") (|SingleInteger|))
           '#(~= 95 |upperCase| 101 |universe| 105 |union| 109
              |symmetricDifference| 127 |subset?| 133 |size?| 139 |size| 145
              |set| 149 |select!| 158 |select| 164 |sample| 170
              |removeDuplicates| 174 |remove!| 179 |remove| 191 |reduce| 203
              |random| 224 |parts| 228 |more?| 233 |min| 239 |members| 244
              |member?| 249 |max| 255 |map!| 260 |map| 266 |lowerCase| 272
              |lookup| 276 |less?| 281 |latex| 287 |intersect| 292 |inspect|
              298 |insert!| 303 |index| 309 |hexDigit| 314 |hash| 318 |find|
              323 |extract!| 329 |every?| 334 |eval| 340 |eq?| 366 |enumerate|
              372 |empty?| 376 |empty| 381 |digit| 385 |difference| 389
              |dictionary| 401 |count| 410 |copy| 422 |convert| 427 |construct|
              442 |complement| 447 |coerce| 452 |charClass| 457 |cardinality|
              467 |brace| 472 |bag| 481 |any?| 486 |alphanumeric| 492
              |alphabetic| 496 = 500 < 506 |#| 512)
           'NIL
           (CONS
            (|makeByteWordVec2| 6 '(0 0 0 0 0 0 0 2 0 0 6 0 0 0 0 0 0 0 0 6 1))
            (CONS
             '#(|FiniteSetAggregate&| |Dictionary&| |SetAggregate&|
                |DictionaryOperations&| |Collection&| |BagAggregate&|
                |HomogeneousAggregate&| |Finite&| |SetCategory&| |Aggregate&|
                |Evalable&| NIL NIL NIL |BasicType&| NIL NIL NIL NIL
                |InnerEvalable&| NIL)
             (CONS
              '#((|FiniteSetAggregate| 8) (|Dictionary| 8) (|SetAggregate| 8)
                 (|DictionaryOperations| 8) (|Collection| 8) (|BagAggregate| 8)
                 (|HomogeneousAggregate| 8) (|Finite|) (|SetCategory|)
                 (|Aggregate|) (|Evalable| 8) (|ConvertibleTo| 33)
                 (|finiteAggregate|) (|partiallyOrderedSet|) (|BasicType|)
                 (|shallowlyMutable|) (|Type|) (|ConvertibleTo| 11)
                 (|CoercibleTo| 44) (|InnerEvalable| 8 8) (|ConvertibleTo| 64))
              (|makeByteWordVec2| 69
                                  '(0 8 7 9 2 6 20 0 0 21 1 8 23 0 24 2 6 20 0
                                    23 25 2 6 0 0 0 27 2 6 0 0 0 28 1 6 0 0 30
                                    1 11 0 33 35 1 8 0 23 37 2 6 0 7 20 38 1 11
                                    23 0 39 1 11 23 0 40 2 11 8 0 23 41 3 6 20
                                    0 23 20 42 1 11 44 0 45 2 6 0 0 20 57 3 6 0
                                    0 0 23 58 2 0 20 0 0 1 0 0 0 15 0 2 0 1 2 0
                                    0 8 0 1 2 0 0 0 8 1 2 0 0 0 0 17 2 0 0 0 0
                                    1 2 0 20 0 0 1 2 0 20 0 7 1 0 2 7 1 1 0 0
                                    33 1 0 0 0 1 2 8 0 67 0 1 2 8 0 67 0 1 0 0
                                    0 1 1 9 0 0 1 2 8 0 67 0 1 2 8 0 8 0 51 2 9
                                    0 8 0 1 2 8 0 67 0 1 4 9 8 63 0 8 8 1 3 8 8
                                    63 0 8 1 2 8 8 63 0 1 0 2 0 1 1 8 33 0 60 2
                                    0 20 0 7 1 1 3 8 0 1 1 8 33 0 1 2 9 20 8 0
                                    26 1 3 8 0 1 2 7 0 54 0 59 2 0 0 54 0 55 0
                                    0 0 16 1 2 66 0 1 2 0 20 0 7 1 1 0 11 0 1 2
                                    0 0 0 0 29 1 0 8 0 52 2 0 0 8 0 50 1 2 0 66
                                    1 0 0 0 14 1 0 69 0 1 2 0 68 67 0 1 1 0 8 0
                                    53 2 8 20 67 0 1 2 5 0 0 61 1 2 5 0 0 62 1
                                    3 5 0 0 33 33 1 3 5 0 0 8 8 1 2 0 20 0 0 1
                                    0 2 65 1 1 0 20 0 1 0 0 0 48 0 0 0 13 2 0 0
                                    0 8 1 2 0 0 0 0 31 0 0 0 1 1 0 0 33 1 2 9 7
                                    8 0 1 2 8 7 67 0 1 1 0 0 0 1 1 1 64 0 1 1 0
                                    33 0 34 1 0 11 0 36 1 0 0 33 1 1 2 0 0 32 1
                                    0 44 0 46 1 0 0 33 43 1 0 0 11 12 1 0 7 0 1
                                    1 0 0 33 1 0 0 0 49 1 0 0 33 1 2 8 20 67 0
                                    1 0 0 0 19 0 0 0 18 2 0 20 0 0 22 2 0 20 0
                                    0 1 1 8 7 0 47)))))
           '|lookupComplete|)) 

(MAKEPROP '|CharacterClass| 'NILADIC T) 
