
(/VERSIONCHECK 2) 

(PUT '|AGG-;eq?;2SB;1| '|SPADreplace| 'EQ) 

(DEFUN |AGG-;eq?;2SB;1| (|a| |b| $) (EQ |a| |b|)) 

(DEFUN |AGG-;sample;S;2| ($) (SPADCALL (QREFELT $ 9))) 

(DEFUN |AGG-;empty?;SB;3| (|a| $)
  (EQL (SPADCALL |a| (QREFELT $ 12)) 0)) 

(DEFUN |AGG-;less?;SNniB;4| (|a| |n| $)
  (< (SPADCALL |a| (QREFELT $ 12)) |n|)) 

(DEFUN |AGG-;more?;SNniB;5| (|a| |n| $)
  (< |n| (SPADCALL |a| (QREFELT $ 12)))) 

(DEFUN |AGG-;size?;SNniB;6| (|a| |n| $)
  (EQL (SPADCALL |a| (QREFELT $ 12)) |n|)) 

(DEFUN |Aggregate&| (|#1|)
  (PROG (DV$1 |dv$| $ |pv$|)
    (RETURN
      (PROGN
        (LETT DV$1 (|devaluate| |#1|) . #0=(|Aggregate&|))
        (LETT |dv$| (LIST '|Aggregate&| DV$1) . #0#)
        (LETT $ (GETREFV 17) . #0#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3
            (LETT |pv$|
                  (|buildPredVector| 0 0
                      (LIST (|HasCategory| |#1| '(|finiteAggregate|)))) . #0#))
        (|stuffDomainSlots| $)
        (QSETREFV $ 6 |#1|)
        (COND
          ((|testBitVector| |pv$| 1)
           (PROGN
             (QSETREFV $ 13
                 (CONS (|dispatchFunction| |AGG-;empty?;SB;3|) $))
             (QSETREFV $ 14
                 (CONS (|dispatchFunction| |AGG-;less?;SNniB;4|) $))
             (QSETREFV $ 15
                 (CONS (|dispatchFunction| |AGG-;more?;SNniB;5|) $))
             (QSETREFV $ 16
                 (CONS (|dispatchFunction| |AGG-;size?;SNniB;6|) $)))))
        $)))) 

(MAKEPROP '|Aggregate&| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|Boolean|)
             |AGG-;eq?;2SB;1| (0 . |empty|) |AGG-;sample;S;2|
             (|NonNegativeInteger|) (4 . |#|) (9 . |empty?|)
             (14 . |less?|) (20 . |more?|) (26 . |size?|))
          '#(|size?| 32 |sample| 38 |more?| 42 |less?| 48 |eq?| 54
             |empty?| 60)
          'NIL
          (CONS (|makeByteWordVec2| 1 'NIL)
                (CONS '#()
                      (CONS '#()
                            (|makeByteWordVec2| 16
                                '(0 6 0 9 1 6 11 0 12 1 0 7 0 13 2 0 7
                                  0 11 14 2 0 7 0 11 15 2 0 7 0 11 16 2
                                  0 7 0 11 16 0 0 0 10 2 0 7 0 11 15 2
                                  0 7 0 11 14 2 0 7 0 0 8 1 0 7 0 13)))))
          '|lookupComplete|)) 
