
(/VERSIONCHECK 2) 

(DEFUN |FINITE-;enumerate;L;1| ($)
  (PROG (#0=#:G1821 |i| #1=#:G1822 #2=#:G1818)
    (RETURN
      (SEQ (PROGN
             (LETT #0# NIL . #3=(|FINITE-;enumerate;L;1|))
             (SEQ (LETT |i| 1 . #3#)
                  (LETT #1# (SPADCALL (QREFELT $ 8)) . #3#) G190
                  (COND ((QSGREATERP |i| #1#) (GO G191)))
                  (SEQ (EXIT (LETT #0#
                                   (CONS
                                    (SPADCALL
                                     (PROG1 (LETT #2# |i| . #3#)
                                       (|check-subtype| (> #2# 0)
                                        '(|PositiveInteger|) #2#))
                                     (QREFELT $ 10))
                                    #0#) . #3#)))
                  (LETT |i| (QSADD1 |i|) . #3#) (GO G190) G191
                  (EXIT (NREVERSE0 #0#)))))))) 

(DEFUN |Finite&| (|#1|)
  (PROG (DV$1 |dv$| $ |pv$|)
    (RETURN
      (PROGN
        (LETT DV$1 (|devaluate| |#1|) . #0=(|Finite&|))
        (LETT |dv$| (LIST '|Finite&| DV$1) . #0#)
        (LETT $ (GETREFV 13) . #0#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
        (|stuffDomainSlots| $)
        (QSETREFV $ 6 |#1|)
        $)))) 

(MAKEPROP '|Finite&| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|)
             (|NonNegativeInteger|) (0 . |size|) (|PositiveInteger|)
             (4 . |index|) (|List| $) |FINITE-;enumerate;L;1|)
          '#(|enumerate| 9) 'NIL
          (CONS (|makeByteWordVec2| 1 'NIL)
                (CONS '#()
                      (CONS '#()
                            (|makeByteWordVec2| 12
                                '(0 6 7 8 1 6 0 9 10 0 0 11 12)))))
          '|lookupComplete|)) 
