
(/VERSIONCHECK 2) 

(PUT '|STRING;string;I$;1| '|SPADreplace| 'STRINGIMAGE) 

(DEFUN |STRING;string;I$;1| (|n| $) (STRINGIMAGE |n|)) 

(DEFUN |STRING;OMwrite;2$;2| (|x| $)
  (PROG (|sp| |dev| |s|)
    (RETURN
      (SEQ (LETT |s| "" . #0=(|STRING;OMwrite;2$;2|))
           (LETT |sp| (OM-STRINGTOSTRINGPTR |s|) . #0#)
           (LETT |dev|
                 (SPADCALL |sp| (SPADCALL (QREFELT $ 9))
                     (QREFELT $ 12)) . #0#)
           (SPADCALL |dev| (QREFELT $ 14))
           (SPADCALL |dev| |x| (QREFELT $ 15))
           (SPADCALL |dev| (QREFELT $ 16))
           (SPADCALL |dev| (QREFELT $ 17))
           (LETT |s| (OM-STRINGPTRTOSTRING |sp|) . #0#) (EXIT |s|))))) 

(DEFUN |STRING;OMwrite;$B$;3| (|x| |wholeObj| $)
  (PROG (|sp| |dev| |s|)
    (RETURN
      (SEQ (LETT |s| "" . #0=(|STRING;OMwrite;$B$;3|))
           (LETT |sp| (OM-STRINGTOSTRINGPTR |s|) . #0#)
           (LETT |dev|
                 (SPADCALL |sp| (SPADCALL (QREFELT $ 9))
                     (QREFELT $ 12)) . #0#)
           (COND (|wholeObj| (SPADCALL |dev| (QREFELT $ 14))))
           (SPADCALL |dev| |x| (QREFELT $ 15))
           (COND (|wholeObj| (SPADCALL |dev| (QREFELT $ 16))))
           (SPADCALL |dev| (QREFELT $ 17))
           (LETT |s| (OM-STRINGPTRTOSTRING |sp|) . #0#) (EXIT |s|))))) 

(DEFUN |STRING;OMwrite;Omd$V;4| (|dev| |x| $)
  (SEQ (SPADCALL |dev| (QREFELT $ 14))
       (SPADCALL |dev| |x| (QREFELT $ 15))
       (EXIT (SPADCALL |dev| (QREFELT $ 16))))) 

(DEFUN |STRING;OMwrite;Omd$BV;5| (|dev| |x| |wholeObj| $)
  (SEQ (COND (|wholeObj| (SPADCALL |dev| (QREFELT $ 14))))
       (SPADCALL |dev| |x| (QREFELT $ 15))
       (EXIT (COND (|wholeObj| (SPADCALL |dev| (QREFELT $ 16))))))) 

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

(DEFUN |String;| ()
  (PROG (|dv$| $ #0=#:G1831 |pv$| #1=#:G1832)
    (RETURN
      (PROGN
        (LETT |dv$| '(|String|) . #2=(|String|))
        (LETT $ (GETREFV 40) . #2#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3
            (LETT |pv$|
                  (|buildPredVector| 0 0
                      (LIST (|HasCategory| (|Character|)
                                '(|ConvertibleTo| (|InputForm|)))
                            (|HasCategory| (|Character|)
                                '(|OrderedSet|))
                            (|HasCategory| (|Integer|) '(|OrderedSet|))
                            (|HasCategory| (|Character|)
                                '(|SetCategory|))
                            (LETT #0#
                                  (AND (|HasCategory| (|Character|)
                                        '(|SetCategory|))
                                       (|HasCategory| (|Character|)
                                        '(|Evalable| (|Character|)))) . #2#)
                            (OR (AND (|HasCategory| (|Character|)
                                      '(|OrderedSet|))
                                     (|HasCategory| (|Character|)
                                      '(|Evalable| (|Character|))))
                                #0#))) . #2#))
        (|haddProp| |$ConstructorCache| '|String| NIL (CONS 1 $))
        (|stuffDomainSlots| $)
        (AND (LETT #1# (|HasCategory| $ '(|finiteAggregate|)) . #2#)
             (|augmentPredVector| $ 64))
        (AND #1# (|HasCategory| (|Character|) '(|SetCategory|))
             (|augmentPredVector| $ 128))
        (AND (|HasCategory| $ '(|shallowlyMutable|))
             (|augmentPredVector| $ 256))
        (AND (|HasCategory| $ '(|shallowlyMutable|))
             (|HasCategory| (|Character|) '(|OrderedSet|))
             (|augmentPredVector| $ 512))
        $)))) 

(MAKEPROP '|String| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL (|IndexedString| (NRTEVAL 1))
             (|Integer|) |STRING;string;I$;1| (|OpenMathEncoding|)
             (0 . |OMencodingXML|) (|String|) (|OpenMathDevice|)
             (4 . |OMopenString|) (|Void|) (10 . |OMputObject|)
             (15 . |OMputString|) (21 . |OMputEndObject|)
             (26 . |OMclose|) |STRING;OMwrite;2$;2| (|Boolean|)
             |STRING;OMwrite;$B$;3| |STRING;OMwrite;Omd$V;4|
             |STRING;OMwrite;Omd$BV;5| (|List| 24) (|Character|)
             (|List| 26) (|Equation| 24) (|Mapping| 24 24 24)
             (|NonNegativeInteger|) (|InputForm|) (|Mapping| 19 24)
             (|Mapping| 19 24 24) (|UniversalSegment| 6)
             (|Mapping| 24 24) (|SingleInteger|) (|OutputForm|)
             (|CharacterClass|) (|List| $) (|Union| 24 '"failed")
             (|List| 6))
          '#(~= 31 |upperCase!| 37 |upperCase| 42 |trim| 47 |swap!| 59
             |suffix?| 66 |substring?| 72 |string| 79 |split| 84
             |sorted?| 96 |sort!| 107 |sort| 118 |size?| 129 |setelt|
             135 |select| 149 |sample| 155 |rightTrim| 159 |reverse!|
             171 |reverse| 176 |replace| 181 |removeDuplicates| 188
             |remove| 193 |reduce| 205 |qsetelt!| 226 |qelt| 233
             |prefix?| 239 |position| 245 |parts| 278 |new| 283 |more?|
             289 |minIndex| 295 |min| 300 |merge| 306 |members| 319
             |member?| 324 |maxIndex| 330 |max| 335 |match?| 341
             |match| 348 |map!| 355 |map| 361 |lowerCase!| 374
             |lowerCase| 379 |less?| 384 |leftTrim| 390 |latex| 402
             |insert| 407 |indices| 421 |index?| 426 |hash| 432 |first|
             437 |find| 442 |fill!| 448 |every?| 454 |eval| 460 |eq?|
             486 |entry?| 492 |entries| 498 |empty?| 503 |empty| 508
             |elt| 512 |delete| 537 |count| 549 |copyInto!| 561 |copy|
             568 |convert| 573 |construct| 578 |concat| 583 |coerce|
             606 |any?| 616 |OMwrite| 622 >= 646 > 652 = 658 <= 664 <
             670 |#| 676)
          'NIL
          (CONS (|makeByteWordVec2| 6
                    '(0 0 0 0 0 0 0 0 2 0 0 0 6 0 0 0 0 0 0 0 6 1))
                (CONS '#(NIL |StringAggregate&|
                         |OneDimensionalArrayAggregate&|
                         |FiniteLinearAggregate&| |LinearAggregate&|
                         |IndexedAggregate&| |Collection&|
                         |HomogeneousAggregate&| |OrderedSet&|
                         |Aggregate&| |EltableAggregate&|
                         |SetCategory&| |Evalable&| NIL NIL NIL NIL NIL
                         NIL |BasicType&| |InnerEvalable&| NIL)
                      (CONS '#((|StringCategory|) (|StringAggregate|)
                               (|OneDimensionalArrayAggregate| 24)
                               (|FiniteLinearAggregate| 24)
                               (|LinearAggregate| 24)
                               (|IndexedAggregate| 6 24)
                               (|Collection| 24)
                               (|HomogeneousAggregate| 24)
                               (|OrderedSet|) (|Aggregate|)
                               (|EltableAggregate| 6 24)
                               (|SetCategory|) (|Evalable| 24)
                               (|OpenMath|) (|shallowlyMutable|)
                               (|finiteAggregate|) (|Type|)
                               (|Eltable| 6 24) (|CoercibleTo| 35)
                               (|BasicType|) (|InnerEvalable| 24 24)
                               (|ConvertibleTo| 29))
                            (|makeByteWordVec2| 39
                                '(0 8 0 9 2 11 0 10 8 12 1 11 13 0 14 2
                                  11 13 0 10 15 1 11 13 0 16 1 11 13 0
                                  17 2 0 19 0 0 1 1 0 0 0 1 1 0 0 0 1 2
                                  0 0 0 36 1 2 0 0 0 24 1 3 9 13 0 6 6
                                  1 2 0 19 0 0 1 3 0 19 0 0 6 1 1 0 0 6
                                  7 2 0 37 0 36 1 2 0 37 0 24 1 1 2 19
                                  0 1 2 0 19 31 0 1 1 10 0 0 1 2 9 0 31
                                  0 1 1 2 0 0 1 2 0 0 31 0 1 2 0 19 0
                                  28 1 3 9 24 0 32 24 1 3 9 24 0 6 24 1
                                  2 7 0 30 0 1 0 0 0 1 2 0 0 0 24 1 2 0
                                  0 0 36 1 1 9 0 0 1 1 0 0 0 1 3 0 0 0
                                  32 0 1 1 8 0 0 1 2 8 0 24 0 1 2 7 0
                                  30 0 1 4 8 24 27 0 24 24 1 3 7 24 27
                                  0 24 1 2 7 24 27 0 1 3 9 24 0 6 24 1
                                  2 0 24 0 6 1 2 0 19 0 0 1 3 4 6 24 0
                                  6 1 2 4 6 24 0 1 3 0 6 36 0 6 1 3 0 6
                                  0 0 6 1 2 0 6 30 0 1 1 7 23 0 1 2 0 0
                                  28 24 1 2 0 19 0 28 1 1 3 6 0 1 2 2 0
                                  0 0 1 2 2 0 0 0 1 3 0 0 31 0 0 1 1 7
                                  23 0 1 2 8 19 24 0 1 1 3 6 0 1 2 2 0
                                  0 0 1 3 0 19 0 0 24 1 3 0 28 0 0 24 1
                                  2 9 0 33 0 1 3 0 0 27 0 0 1 2 0 0 33
                                  0 1 1 0 0 0 1 1 0 0 0 1 2 0 19 0 28 1
                                  2 0 0 0 36 1 2 0 0 0 24 1 1 0 10 0 1
                                  3 0 0 24 0 6 1 3 0 0 0 0 6 1 1 0 39 0
                                  1 2 0 19 6 0 1 1 0 34 0 1 1 3 24 0 1
                                  2 0 38 30 0 1 2 9 0 0 24 1 2 7 19 30
                                  0 1 3 5 0 0 23 23 1 3 5 0 0 24 24 1 2
                                  5 0 0 25 1 2 5 0 0 26 1 2 0 19 0 0 1
                                  2 8 19 24 0 1 1 0 23 0 1 1 0 19 0 1 0
                                  0 0 1 2 0 0 0 0 1 2 0 0 0 32 1 3 0 24
                                  0 6 24 1 2 0 24 0 6 1 2 0 0 0 32 1 2
                                  0 0 0 6 1 2 8 28 24 0 1 2 7 28 30 0 1
                                  3 9 0 0 0 6 1 1 0 0 0 1 1 1 29 0 1 1
                                  0 0 23 1 2 0 0 0 0 1 1 0 0 37 1 2 0 0
                                  24 0 1 2 0 0 0 24 1 1 0 35 0 1 1 0 0
                                  24 1 2 7 19 30 0 1 2 0 13 11 0 21 3 0
                                  13 11 0 19 22 2 0 10 0 19 20 1 0 10 0
                                  18 2 2 19 0 0 1 2 2 19 0 0 1 2 0 19 0
                                  0 1 2 2 19 0 0 1 2 2 19 0 0 1 1 7 28
                                  0 1)))))
          '|lookupComplete|)) 

(MAKEPROP '|String| 'NILADIC T) 
