anchor.diff:  NIL
   NIL
   NIL
  -(CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'LSTS NIL) NIL)))) (CL:PROGN (CL:DEFUN %NCONC-0 (LSTS) (CL:BLOCK %NCONC-0 (CL:BLOCK NIL (? LSTS (CL:PROGN (CL:LABELS ((G3613 (!) (? ! (CL:PROGN (CL:RPLACD (CL:LAST !) (%NCONC-0 (CL:CDR LSTS))) !) (%NCONC-0 (CL:CDR LSTS))))) (G3613 (CL:CAR LSTS)))))))) (CL:SETF (CL:GETHASH #'%NCONC-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'LSTS NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS 'LSTS (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'LET (CL:CONS '! (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'LSTS NIL)) (CL:CONS (CL:CONS '? (CL:CONS '! (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:RPLACD (CL:CONS (CL:CONS 'CL:LAST (CL:CONS '! NIL)) (CL:CONS (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'LSTS NIL)) NIL)) NIL))) (CL:CONS '! NIL))) (CL:CONS (CL:CONS '%!? (CL:CONS (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'LSTS NIL)) NIL)) NIL)) NIL)))) NIL)))) NIL)) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%NCONC-0))
  +(CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'LSTS NIL) NIL)))) (CL:PROGN (CL:DEFUN %NCONC-0 (LSTS) (CL:BLOCK %NCONC-0 (CL:BLOCK NIL (? LSTS (CL:PROGN (CL:LABELS ((G3669 (!) (? ! (CL:PROGN (CL:RPLACD (CL:LAST !) (%NCONC-0 (CL:CDR LSTS))) !) (%NCONC-0 (CL:CDR LSTS))))) (G3669 (CL:CAR LSTS)))))))) (CL:SETF (CL:GETHASH #'%NCONC-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'LSTS NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS 'LSTS (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'LET (CL:CONS '! (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'LSTS NIL)) (CL:CONS (CL:CONS '? (CL:CONS '! (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:RPLACD (CL:CONS (CL:CONS 'CL:LAST (CL:CONS '! NIL)) (CL:CONS (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'LSTS NIL)) NIL)) NIL))) (CL:CONS '! NIL))) (CL:CONS (CL:CONS '%!? (CL:CONS (CL:CONS '%NCONC-0 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'LSTS NIL)) NIL)) NIL)) NIL)))) NIL)))) NIL)) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%NCONC-0))
   (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'NCONC (CL:CONS (CL:CONS 'CL:&REST (CL:CONS 'LSTS NIL)) NIL)))) (CL:PROGN (CL:DEFUN NCONC (CL:&REST LSTS) (CL:BLOCK NCONC (CL:BLOCK NIL (%NCONC-0 LSTS)))) (CL:SETF (CL:GETHASH #'NCONC *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&REST (CL:CONS 'LSTS NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'NCONC (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '%NCONC-0 (CL:CONS 'LSTS NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'NCONC))
   (CL:BLOCK NIL (%DEFMACRO NCONC! (PLACE CL:&REST LSTS) (CL:BLOCK NCONC! (CL:CONS '= (CL:CONS PLACE (CL:CONS (CL:CONS 'NCONC (CL:CONS PLACE (APPEND LSTS NIL))) NIL))))))
   NIL
  
positive.code: (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DOT-EXPAND-MAKE-EXPR (CL:CONS (CL:CONS 'WHICH (CL:CONS 'NUM (CL:CONS 'X NIL))) NIL)))) (CL:PROGN (CL:DEFUN DOT-EXPAND-MAKE-EXPR (WHICH NUM X) (CL:BLOCK DOT-EXPAND-MAKE-EXPR (CL:BLOCK NIL (? (< 0 NUM) (CL:CONS WHICH (CL:CONS (DOT-EXPAND-MAKE-EXPR WHICH (-- NUM) X) NIL)) X)))) (CL:SETF (CL:GETHASH #'DOT-EXPAND-MAKE-EXPR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'WHICH (CL:CONS 'NUM (CL:CONS 'X NIL))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DOT-EXPAND-MAKE-EXPR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '< (CL:CONS 0 (CL:CONS 'NUM NIL))) (CL:CONS (CL:CONS 'BACKQUOTE (CL:CONS (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS 'WHICH NIL)) (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS (CL:CONS 'DOT-EXPAND-MAKE-EXPR (CL:CONS 'WHICH (CL:CONS (CL:CONS '-- (CL:CONS 'NUM NIL)) (CL:CONS 'X NIL)))) NIL)) NIL)) NIL)) (CL:CONS 'X NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DOT-EXPAND-MAKE-EXPR))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DOT-EXPAND-HEAD-LENGTH (CL:CONS (CL:CONS 'X (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'NUM (CL:CONS 0 NIL)) NIL))) NIL)))) (CL:PROGN (CL:DEFUN DOT-EXPAND-HEAD-LENGTH (X CL:&OPTIONAL (NUM 0)) (CL:BLOCK DOT-EXPAND-HEAD-LENGTH (CL:BLOCK NIL (? (== #\. (CL:CAR X)) (DOT-EXPAND-HEAD-LENGTH (CL:CDR X) (++ NUM)) (VALUES NUM X))))) (CL:SETF (CL:GETHASH #'DOT-EXPAND-HEAD-LENGTH *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'NUM (CL:CONS 0 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DOT-EXPAND-HEAD-LENGTH (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL))) (CL:CONS (CL:CONS 'DOT-EXPAND-HEAD-LENGTH (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) (CL:CONS (CL:CONS '++ (CL:CONS 'NUM NIL)) NIL))) (CL:CONS (CL:CONS 'VALUES (CL:CONS 'NUM (CL:CONS 'X NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DOT-EXPAND-HEAD-LENGTH))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DOT-EXPAND-TAIL-LENGTH (CL:CONS (CL:CONS 'X (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'NUM (CL:CONS 0 NIL)) NIL))) NIL)))) (CL:PROGN (CL:DEFUN DOT-EXPAND-TAIL-LENGTH (X CL:&OPTIONAL (NUM 0)) (CL:BLOCK DOT-EXPAND-TAIL-LENGTH (CL:BLOCK NIL (? (== #\. (CL:CAR (CL:LAST X))) (DOT-EXPAND-TAIL-LENGTH (BUTLAST X) (++ NUM)) (VALUES NUM X))))) (CL:SETF (CL:GETHASH #'DOT-EXPAND-TAIL-LENGTH *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'NUM (CL:CONS 0 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DOT-EXPAND-TAIL-LENGTH (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS (CL:CONS 'CL:CAR (CL:CONS (CL:CONS 'CL:LAST (CL:CONS 'X NIL)) NIL)) NIL))) (CL:CONS (CL:CONS 'DOT-EXPAND-TAIL-LENGTH (CL:CONS (CL:CONS 'BUTLAST (CL:CONS 'X NIL)) (CL:CONS (CL:CONS '++ (CL:CONS 'NUM NIL)) NIL))) (CL:CONS (CL:CONS 'VALUES (CL:CONS 'NUM (CL:CONS 'X NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DOT-EXPAND-TAIL-LENGTH))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DOT-EXPAND-LIST (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN DOT-EXPAND-LIST (X) (CL:BLOCK DOT-EXPAND-LIST (CL:BLOCK NIL (CL:LABELS ((G3678 (~G1487) (CL:LABELS ((G3679 (~G1488) (? (NOT (EQ (CL:CAR ~G1487) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1487))) (CL:LABELS ((G3680 (NUM-CDRS) (CL:LABELS ((G3681 (~G1489) (CL:LABELS ((G3682 (WITHOUT-START) (CL:LABELS ((G3683 (~G1493) (CL:LABELS ((G3684 (~G1494) (? (NOT (EQ (CL:CAR ~G1493) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1493))) (CL:LABELS ((G3685 (NUM-CARS) (CL:LABELS ((G3686 (~G1495) (CL:LABELS ((G3687 (WITHOUT-END) (DOT-EXPAND-MAKE-EXPR 'CL:CAR NUM-CARS (DOT-EXPAND-MAKE-EXPR 'CL:CDR NUM-CDRS (DOT-EXPAND (LIST-SYMBOL WITHOUT-END)))))) (G3687 (CL:CAR ~G1495))))) (G3686 (CL:LABELS ((G3688 (~G1497) (? ~G1497 ~G1497 (%ERROR "Not enough VALUES.")))) (G3688 (CL:CDR ~G1494))))))) (G3685 (CL:CAR ~G1494))))) (G3684 (CL:CDR ~G1493))))) (G3683 (DOT-EXPAND-TAIL-LENGTH WITHOUT-START))))) (G3682 (CL:CAR ~G1489))))) (G3681 (CL:LABELS ((G3689 (~G1492) (? ~G1492 ~G1492 (%ERROR "Not enough VALUES.")))) (G3689 (CL:CDR ~G1488))))))) (G3680 (CL:CAR ~G1488))))) (G3679 (CL:CDR ~G1487))))) (G3678 (DOT-EXPAND-HEAD-LENGTH X)))))) (CL:SETF (CL:GETHASH #'DOT-EXPAND-LIST *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DOT-EXPAND-LIST (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS '~G1487 (CL:CONS (CL:CONS 'DOT-EXPAND-HEAD-LENGTH (CL:CONS 'X NIL)) NIL)) (CL:CONS (CL:CONS '~G1488 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1487 NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'UNLESS (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1487 NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'VALUES NIL)) NIL))) (CL:CONS (CL:CONS 'ERROR (CL:CONS "VALUES expected instead of ~A." (CL:CONS '~G1487 NIL))) NIL))) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'NUM-CDRS (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1488 NIL)) NIL)) (CL:CONS (CL:CONS '~G1489 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1488 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'WITHOUT-START (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1489 NIL)) NIL)) NIL) (CL:CONS (CL:CONS 'MULTIPLE-VALUE-BIND (CL:CONS (CL:CONS 'NUM-CARS (CL:CONS 'WITHOUT-END NIL)) (CL:CONS (CL:CONS 'DOT-EXPAND-TAIL-LENGTH (CL:CONS 'WITHOUT-START NIL)) (CL:CONS (CL:CONS 'DOT-EXPAND-MAKE-EXPR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CL:CAR NIL)) (CL:CONS 'NUM-CARS (CL:CONS (CL:CONS 'DOT-EXPAND-MAKE-EXPR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CL:CDR NIL)) (CL:CONS 'NUM-CDRS (CL:CONS (CL:CONS 'DOT-EXPAND (CL:CONS (CL:CONS 'LIST-SYMBOL (CL:CONS 'WITHOUT-END NIL)) NIL)) NIL)))) NIL)))) NIL)))) NIL))) NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DOT-EXPAND-LIST))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DOT-POSITION (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN DOT-POSITION (X) (CL:BLOCK DOT-POSITION (CL:BLOCK NIL (POSITION #\. X :TEST #'==)))) (CL:SETF (CL:GETHASH #'DOT-POSITION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DOT-POSITION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'POSITION (CL:CONS #\. (CL:CONS 'X (CL:CONS ':TEST (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS '== NIL)) NIL))))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DOT-POSITION))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'NO-DOT-NOTATION? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN NO-DOT-NOTATION? (X) (CL:BLOCK NO-DOT-NOTATION? (CL:BLOCK NIL (CL:LABELS ((G3690 (SL) (CL:LABELS ((G3691 (L) (CL:LABELS ((G3692 (P) (CL:LABELS ((G3693 (~G1482) (? ~G1482 ~G1482 (NOT P)))) (G3693 (== 1 L))))) (G3692 (DOT-POSITION SL))))) (G3691 (CL:LENGTH SL))))) (G3690 (STRING-LIST (SYMBOL-NAME X))))))) (CL:SETF (CL:GETHASH #'NO-DOT-NOTATION? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'NO-DOT-NOTATION? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'SL NIL) (CL:CONS (CL:CONS 'LET (CL:CONS 'L (CL:CONS (CL:CONS 'CL:LENGTH (CL:CONS 'SL NIL)) (CL:CONS (CL:CONS 'WITH (CL:CONS (CL:CONS 'P (CL:CONS (CL:CONS 'DOT-POSITION (CL:CONS 'SL NIL)) NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1482 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1482 (CL:CONS '~G1482 (CL:CONS (CL:CONS 'NOT (CL:CONS 'P NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS '== (CL:CONS 1 (CL:CONS 'L NIL))) NIL)) NIL))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'STRING-LIST (CL:CONS (CL:CONS 'SYMBOL-NAME (CL:CONS 'X NIL)) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'NO-DOT-NOTATION?))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'HAS-DOT-NOTATION? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN HAS-DOT-NOTATION? (X) (CL:BLOCK HAS-DOT-NOTATION? (CL:BLOCK NIL (CL:LABELS ((G3694 (SL) (CL:LABELS ((G3695 (~G1483) (? ~G1483 ~G1483 (== #\. (CL:CAR (CL:LAST SL)))))) (G3695 (== #\. (CL:CAR SL)))))) (G3694 (STRING-LIST (SYMBOL-NAME X))))))) (CL:SETF (CL:GETHASH #'HAS-DOT-NOTATION? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'HAS-DOT-NOTATION? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'SL NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1483 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1483 (CL:CONS '~G1483 (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS (CL:CONS 'CL:CAR (CL:CONS (CL:CONS 'CL:LAST (CL:CONS 'SL NIL)) NIL)) NIL))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'SL NIL)) NIL))) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'STRING-LIST (CL:CONS (CL:CONS 'SYMBOL-NAME (CL:CONS 'X NIL)) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'HAS-DOT-NOTATION?))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DOT-EXPAND-CONV (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN DOT-EXPAND-CONV (X) (CL:BLOCK DOT-EXPAND-CONV (CL:BLOCK NIL (CL:LABELS ((G3696 (SL) (CL:LABELS ((G3697 (P) (? (NO-DOT-NOTATION? X) X (HAS-DOT-NOTATION? X) (DOT-EXPAND-LIST SL) (CL:CONS '%SLOT-VALUE (CL:CONS (LIST-SYMBOL (SUBSEQ SL 0 P)) (CL:CONS (DOT-EXPAND-CONV (LIST-SYMBOL (SUBSEQ SL (++ P)))) NIL)))))) (G3697 (DOT-POSITION SL))))) (G3696 (STRING-LIST (SYMBOL-NAME X))))))) (CL:SETF (CL:GETHASH #'DOT-EXPAND-CONV *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DOT-EXPAND-CONV (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'SL NIL) (CL:CONS (CL:CONS 'LET (CL:CONS 'P (CL:CONS (CL:CONS 'DOT-POSITION (CL:CONS 'SL NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NO-DOT-NOTATION? (CL:CONS 'X NIL)) (CL:CONS 'X (CL:CONS (CL:CONS 'HAS-DOT-NOTATION? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'DOT-EXPAND-LIST (CL:CONS 'SL NIL)) (CL:CONS (CL:CONS 'BACKQUOTE (CL:CONS (CL:CONS '%SLOT-VALUE (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS (CL:CONS 'LIST-SYMBOL (CL:CONS (CL:CONS 'SUBSEQ (CL:CONS 'SL (CL:CONS 0 (CL:CONS 'P NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS (CL:CONS 'DOT-EXPAND-CONV (CL:CONS (CL:CONS 'LIST-SYMBOL (CL:CONS (CL:CONS 'SUBSEQ (CL:CONS 'SL (CL:CONS (CL:CONS '++ (CL:CONS 'P NIL)) NIL))) NIL)) NIL)) NIL)) NIL))) NIL)) NIL)))))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'STRING-LIST (CL:CONS (CL:CONS 'SYMBOL-NAME (CL:CONS 'X NIL)) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DOT-EXPAND-CONV))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DOT-EXPAND (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN DOT-EXPAND (X) (CL:BLOCK DOT-EXPAND (CL:BLOCK NIL (CL:LABELS ((LABEL? (_) (NOT (CL:LABELS ((G3698 (~G1484) (? ~G1484 ~G1484 (CL:LABELS ((G3699 (~G1485) (? ~G1485 ~G1485 (STRING? _)))) (G3699 (NUMBER? _)))))) (G3698 (CONS? _)))))) (? X (CL:PROGN (? (LABEL? X) (DOT-EXPAND-CONV X) (CONS? X) (CL:PROGN (CL:LABELS ((G3700 (~G1491) (CL:LABELS ((G3701 (!) (? ! (CL:PROGN (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* !)))))) (G3701 (? (CONS? ~G1491) (CPR ~G1491)))))) (G3700 X)) (CL:LABELS ((G3702 (~G1486) (RPLACP (CL:CONS (DOT-EXPAND (CL:CAR X)) (DOT-EXPAND (CL:CDR X))) ~G1486))) (G3702 *DEFAULT-LISTPROP*))) X))))))) (CL:SETF (CL:GETHASH #'DOT-EXPAND *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DOT-EXPAND (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:LABELS (CL:CONS (CL:CONS (CL:CONS 'LABEL? (CL:CONS (CL:CONS '_ NIL) (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1484 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1484 (CL:CONS '~G1484 (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1485 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1485 (CL:CONS '~G1485 (CL:CONS (CL:CONS 'STRING? (CL:CONS '_ NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'NUMBER? (CL:CONS '_ NIL)) NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CONS? (CL:CONS '_ NIL)) NIL)) NIL)) NIL))) NIL) (CL:CONS (CL:CONS '? (CL:CONS 'X (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'LABEL? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'DOT-EXPAND-CONV (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CONS? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'LET (CL:CONS '~G1491 (CL:CONS 'X (CL:CONS (CL:CONS 'AWHEN (CL:CONS (CL:CONS '& (CL:CONS (CL:CONS 'CONS? (CL:CONS '~G1491 NIL)) (CL:CONS (CL:CONS 'CPR (CL:CONS '~G1491 NIL)) NIL))) (CL:CONS (CL:CONS '= (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS '! NIL))) NIL))) NIL)))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1486 NIL) (CL:CONS (CL:CONS 'RPLACP (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'DOT-EXPAND (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL)) (CL:CONS (CL:CONS 'DOT-EXPAND (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) NIL)) NIL))) (CL:CONS '~G1486 NIL))) NIL)) NIL)) (CL:CONS '*DEFAULT-LISTPROP* NIL)) NIL))) (CL:CONS 'X NIL)))))) NIL)) NIL))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DOT-EXPAND))
  (CL:PROGN (CL:SETQ *DOT-EXPAND* #'DOT-EXPAND))
  (%DEFVAR *MEMORIZED-NUMBERS* (MAKE-HASH-TABLE :TEST #'==))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'MEMORIZED-NUMBER (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN MEMORIZED-NUMBER (X) (CL:BLOCK MEMORIZED-NUMBER (CL:BLOCK NIL (CL:LABELS ((G3703 (~G1498) (? ~G1498 ~G1498 (CL:PROGN (=-HREF X *MEMORIZED-NUMBERS* X))))) (G3703 (HREF *MEMORIZED-NUMBERS* X)))))) (CL:SETF (CL:GETHASH #'MEMORIZED-NUMBER *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'MEMORIZED-NUMBER (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1498 (CL:CONS (CL:CONS 'HREF (CL:CONS '*MEMORIZED-NUMBERS* (CL:CONS 'X NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1498 (CL:CONS '~G1498 (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-HREF (CL:CONS 'X (CL:CONS '*MEMORIZED-NUMBERS* (CL:CONS 'X NIL)))) NIL)) NIL)))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'MEMORIZED-NUMBER))
  (%DEFVAR *TERPRI* (STRING (CODE-CHAR 10)))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'TERPRI (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-OUTPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN TERPRI (CL:&OPTIONAL (STR *STANDARD-OUTPUT*)) (CL:BLOCK TERPRI (CL:BLOCK NIL (CL:LABELS ((G3704 (~G1499) (CL:LABELS ((G3705 (S) (CL:LABELS ((G3706 (~G1500) (? ~G1499 ~G1500 (GET-STREAM-STRING S)))) (G3706 (CL:PROGN (STREAM-PRINC (CODE-CHAR 10) S) (FORCE-OUTPUT S) NIL))))) (G3705 (DEFAULT-STREAM ~G1499))))) (G3704 STR))))) (CL:SETF (CL:GETHASH #'TERPRI *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-OUTPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'TERPRI (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1499 (CL:CONS 'STR (CL:CONS (CL:CONS 'WITH (CL:CONS (CL:CONS 'S (CL:CONS (CL:CONS 'DEFAULT-STREAM (CL:CONS '~G1499 NIL)) (CL:CONS '~G1500 (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'STREAM-PRINC (CL:CONS (CL:CONS 'CODE-CHAR (CL:CONS 10 NIL)) (CL:CONS 'S NIL))) (CL:CONS (CL:CONS 'FORCE-OUTPUT (CL:CONS 'S NIL)) (CL:CONS NIL NIL)))) NIL)))) (CL:CONS (CL:CONS '? (CL:CONS '~G1499 (CL:CONS '~G1500 (CL:CONS (CL:CONS 'GET-STREAM-STRING (CL:CONS 'S NIL)) NIL)))) NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'TERPRI))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'FRESH-LINE (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-OUTPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN FRESH-LINE (CL:&OPTIONAL (STR *STANDARD-OUTPUT*)) (CL:BLOCK FRESH-LINE (CL:BLOCK NIL (CL:LABELS ((G3707 (~G1501) (CL:LABELS ((G3708 (S) (CL:LABELS ((G3709 (~G1502) (? ~G1501 ~G1502 (GET-STREAM-STRING S)))) (G3709 (CL:PROGN (? (NOT (FRESH-LINE? S)) (CL:PROGN (TERPRI S) T))))))) (G3708 (DEFAULT-STREAM ~G1501))))) (G3707 STR))))) (CL:SETF (CL:GETHASH #'FRESH-LINE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-OUTPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'FRESH-LINE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1501 (CL:CONS 'STR (CL:CONS (CL:CONS 'WITH (CL:CONS (CL:CONS 'S (CL:CONS (CL:CONS 'DEFAULT-STREAM (CL:CONS '~G1501 NIL)) (CL:CONS '~G1502 (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'FRESH-LINE? (CL:CONS 'S NIL)) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'TERPRI (CL:CONS 'S NIL)) (CL:CONS T NIL))) NIL))) NIL)) NIL)))) (CL:CONS (CL:CONS '? (CL:CONS '~G1501 (CL:CONS '~G1502 (CL:CONS (CL:CONS 'GET-STREAM-STRING (CL:CONS 'S NIL)) NIL)))) NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'FRESH-LINE))
  (%DEFVAR *DEFAULT-STREAM-TABSIZE* 8)
  (CL:PROGN NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'MAKE-STREAM-LOCATION (CL:CONS (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'TRACK? (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'TRACK? NIL)) NIL)) (CL:CONS (CL:CONS 'ID (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'ID NIL)) NIL)) (CL:CONS (CL:CONS 'LINE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'LINE NIL)) NIL)) (CL:CONS (CL:CONS 'COLUMN (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'COLUMN NIL)) NIL)) (CL:CONS (CL:CONS 'TABSIZE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'TABSIZE NIL)) NIL)) NIL)))))) NIL)))) (CL:PROGN (CL:DEFUN MAKE-STREAM-LOCATION (CL:&KEY (TRACK? 'TRACK?) (ID 'ID) (LINE 'LINE) (COLUMN 'COLUMN) (TABSIZE 'TABSIZE)) (CL:BLOCK MAKE-STREAM-LOCATION (CL:BLOCK NIL (CL:LABELS ((G3710 (~G1503) (CL:PROGN (=-AREF 'STRUCT ~G1503 0) (=-AREF 'STREAM-LOCATION ~G1503 1)) (CL:PROGN (=-AREF (? (EQ TRACK? 'TRACK?) T TRACK?) ~G1503 2)) (CL:PROGN (=-AREF (? (EQ ID 'ID) NIL ID) ~G1503 3)) (CL:PROGN (=-AREF (? (EQ LINE 'LINE) 1 LINE) ~G1503 4)) (CL:PROGN (=-AREF (? (EQ COLUMN 'COLUMN) 1 COLUMN) ~G1503 5)) (CL:PROGN (=-AREF (? (EQ TABSIZE 'TABSIZE) *DEFAULT-STREAM-TABSIZE* TABSIZE) ~G1503 6)) ~G1503)) (G3710 (MAKE-ARRAY 7)))))) (CL:SETF (CL:GETHASH #'MAKE-STREAM-LOCATION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'TRACK? (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'TRACK? NIL)) NIL)) (CL:CONS (CL:CONS 'ID (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'ID NIL)) NIL)) (CL:CONS (CL:CONS 'LINE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'LINE NIL)) NIL)) (CL:CONS (CL:CONS 'COLUMN (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'COLUMN NIL)) NIL)) (CL:CONS (CL:CONS 'TABSIZE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'TABSIZE NIL)) NIL)) NIL)))))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'MAKE-STREAM-LOCATION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1503 NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STRUCT NIL)) (CL:CONS '~G1503 (CL:CONS 0 NIL)))) (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STREAM-LOCATION NIL)) (CL:CONS '~G1503 (CL:CONS 1 NIL)))) NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'TRACK? (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'TRACK? NIL)) NIL))) (CL:CONS T (CL:CONS 'TRACK? NIL)))) (CL:CONS '~G1503 (CL:CONS 2 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'ID (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'ID NIL)) NIL))) (CL:CONS NIL (CL:CONS 'ID NIL)))) (CL:CONS '~G1503 (CL:CONS 3 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'LINE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'LINE NIL)) NIL))) (CL:CONS 1 (CL:CONS 'LINE NIL)))) (CL:CONS '~G1503 (CL:CONS 4 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'COLUMN (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'COLUMN NIL)) NIL))) (CL:CONS 1 (CL:CONS 'COLUMN NIL)))) (CL:CONS '~G1503 (CL:CONS 5 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'TABSIZE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'TABSIZE NIL)) NIL))) (CL:CONS '*DEFAULT-STREAM-TABSIZE* (CL:CONS 'TABSIZE NIL)))) (CL:CONS '~G1503 (CL:CONS 6 NIL)))) NIL)) (CL:CONS '~G1503 NIL)))))))) NIL)) (CL:CONS (CL:CONS 'MAKE-ARRAY (CL:CONS 7 NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'MAKE-STREAM-LOCATION)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-LOCATION? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-LOCATION? (X) (CL:BLOCK STREAM-LOCATION? (CL:BLOCK NIL (? (ARRAY? X) (? (EQ 'STRUCT (CL:AREF X 0)) (EQ 'STREAM-LOCATION (CL:AREF X 1))))))) (CL:SETF (CL:GETHASH #'STREAM-LOCATION? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-LOCATION? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'ARRAY? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STRUCT NIL)) (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'X (CL:CONS 0 NIL))) NIL))) (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STREAM-LOCATION NIL)) (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'X (CL:CONS 1 NIL))) NIL))) NIL))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-LOCATION?)) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-LOCATION-TRACK? NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-LOCATION-TRACK? (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-LOCATION-TRACK? (ARR) (CL:BLOCK STREAM-LOCATION-TRACK? (CL:BLOCK NIL (CL:AREF ARR 2)))) (CL:SETF (CL:GETHASH #'STREAM-LOCATION-TRACK? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-LOCATION-TRACK? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 2 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-LOCATION-TRACK?)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-LOCATION-TRACK? (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-LOCATION-TRACK? (VAL ARR) (CL:BLOCK =-STREAM-LOCATION-TRACK? (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 2))))) (CL:SETF (CL:GETHASH #'=-STREAM-LOCATION-TRACK? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-LOCATION-TRACK? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 2 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-LOCATION-TRACK?))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-LOCATION-ID NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-LOCATION-ID (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-LOCATION-ID (ARR) (CL:BLOCK STREAM-LOCATION-ID (CL:BLOCK NIL (CL:AREF ARR 3)))) (CL:SETF (CL:GETHASH #'STREAM-LOCATION-ID *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-LOCATION-ID (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 3 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-LOCATION-ID)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-LOCATION-ID (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-LOCATION-ID (VAL ARR) (CL:BLOCK =-STREAM-LOCATION-ID (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 3))))) (CL:SETF (CL:GETHASH #'=-STREAM-LOCATION-ID *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-LOCATION-ID (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 3 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-LOCATION-ID))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-LOCATION-LINE NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-LOCATION-LINE (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-LOCATION-LINE (ARR) (CL:BLOCK STREAM-LOCATION-LINE (CL:BLOCK NIL (CL:AREF ARR 4)))) (CL:SETF (CL:GETHASH #'STREAM-LOCATION-LINE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-LOCATION-LINE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 4 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-LOCATION-LINE)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-LOCATION-LINE (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-LOCATION-LINE (VAL ARR) (CL:BLOCK =-STREAM-LOCATION-LINE (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 4))))) (CL:SETF (CL:GETHASH #'=-STREAM-LOCATION-LINE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-LOCATION-LINE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 4 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-LOCATION-LINE))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-LOCATION-COLUMN NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-LOCATION-COLUMN (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-LOCATION-COLUMN (ARR) (CL:BLOCK STREAM-LOCATION-COLUMN (CL:BLOCK NIL (CL:AREF ARR 5)))) (CL:SETF (CL:GETHASH #'STREAM-LOCATION-COLUMN *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-LOCATION-COLUMN (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 5 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-LOCATION-COLUMN)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-LOCATION-COLUMN (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-LOCATION-COLUMN (VAL ARR) (CL:BLOCK =-STREAM-LOCATION-COLUMN (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 5))))) (CL:SETF (CL:GETHASH #'=-STREAM-LOCATION-COLUMN *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-LOCATION-COLUMN (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 5 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-LOCATION-COLUMN))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-LOCATION-TABSIZE NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-LOCATION-TABSIZE (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-LOCATION-TABSIZE (ARR) (CL:BLOCK STREAM-LOCATION-TABSIZE (CL:BLOCK NIL (CL:AREF ARR 6)))) (CL:SETF (CL:GETHASH #'STREAM-LOCATION-TABSIZE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-LOCATION-TABSIZE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 6 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-LOCATION-TABSIZE)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-LOCATION-TABSIZE (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-LOCATION-TABSIZE (VAL ARR) (CL:BLOCK =-STREAM-LOCATION-TABSIZE (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 6))))) (CL:SETF (CL:GETHASH #'=-STREAM-LOCATION-TABSIZE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-LOCATION-TABSIZE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 6 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-LOCATION-TABSIZE))) (CL:BLOCK NIL (%DEFMACRO WITH-STREAM-LOCATION (S CL:&REST BODY) (CL:BLOCK WITH-STREAM-LOCATION (CL:CONS 'WITH-STRUCT (CL:CONS 'STREAM-LOCATION (CL:CONS S (APPEND BODY NIL))))))) (CL:BLOCK NIL (%DEFMACRO DEF-STREAM-LOCATION (NAME ARGS CL:&REST BODY) (CL:BLOCK DEF-STREAM-LOCATION (CL:CONS 'DEFUN (CL:CONS NAME (CL:CONS ARGS (CL:CONS (CL:CONS 'WITH-STRUCT (CL:CONS 'STREAM-LOCATION (CL:CONS 'STREAM-LOCATION (APPEND BODY NIL)))) NIL))))))))
  (CL:PROGN NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'MAKE-STREAM (CL:CONS (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'HANDLE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'HANDLE NIL)) NIL)) (CL:CONS (CL:CONS 'FUN-IN (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-IN NIL)) NIL)) (CL:CONS (CL:CONS 'FUN-OUT (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-OUT NIL)) NIL)) (CL:CONS (CL:CONS 'FUN-EOF (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-EOF NIL)) NIL)) (CL:CONS (CL:CONS 'LAST-CHAR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'LAST-CHAR NIL)) NIL)) (CL:CONS (CL:CONS 'PEEKED-CHAR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'PEEKED-CHAR NIL)) NIL)) (CL:CONS (CL:CONS 'INPUT-LOCATION (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'INPUT-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'OUTPUT-LOCATION (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'OUTPUT-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'USER-DETAIL (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'USER-DETAIL NIL)) NIL)) NIL)))))))))) NIL)))) (CL:PROGN (CL:DEFUN MAKE-STREAM (CL:&KEY (HANDLE 'HANDLE) (FUN-IN 'FUN-IN) (FUN-OUT 'FUN-OUT) (FUN-EOF 'FUN-EOF) (LAST-CHAR 'LAST-CHAR) (PEEKED-CHAR 'PEEKED-CHAR) (INPUT-LOCATION 'INPUT-LOCATION) (OUTPUT-LOCATION 'OUTPUT-LOCATION) (USER-DETAIL 'USER-DETAIL)) (CL:BLOCK MAKE-STREAM (CL:BLOCK NIL (CL:LABELS ((G3711 (~G1504) (CL:PROGN (=-AREF 'STRUCT ~G1504 0) (=-AREF 'STREAM ~G1504 1)) (CL:PROGN (=-AREF (? (EQ HANDLE 'HANDLE) NIL HANDLE) ~G1504 2)) (CL:PROGN (=-AREF (? (EQ FUN-IN 'FUN-IN) NIL FUN-IN) ~G1504 3)) (CL:PROGN (=-AREF (? (EQ FUN-OUT 'FUN-OUT) NIL FUN-OUT) ~G1504 4)) (CL:PROGN (=-AREF (? (EQ FUN-EOF 'FUN-EOF) NIL FUN-EOF) ~G1504 5)) (CL:PROGN (=-AREF (? (EQ LAST-CHAR 'LAST-CHAR) NIL LAST-CHAR) ~G1504 6)) (CL:PROGN (=-AREF (? (EQ PEEKED-CHAR 'PEEKED-CHAR) NIL PEEKED-CHAR) ~G1504 7)) (CL:PROGN (=-AREF (? (EQ INPUT-LOCATION 'INPUT-LOCATION) (MAKE-STREAM-LOCATION) INPUT-LOCATION) ~G1504 8)) (CL:PROGN (=-AREF (? (EQ OUTPUT-LOCATION 'OUTPUT-LOCATION) (MAKE-STREAM-LOCATION :TRACK? NIL) OUTPUT-LOCATION) ~G1504 9)) (CL:PROGN (=-AREF (? (EQ USER-DETAIL 'USER-DETAIL) NIL USER-DETAIL) ~G1504 10)) ~G1504)) (G3711 (MAKE-ARRAY 11)))))) (CL:SETF (CL:GETHASH #'MAKE-STREAM *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'HANDLE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'HANDLE NIL)) NIL)) (CL:CONS (CL:CONS 'FUN-IN (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-IN NIL)) NIL)) (CL:CONS (CL:CONS 'FUN-OUT (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-OUT NIL)) NIL)) (CL:CONS (CL:CONS 'FUN-EOF (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-EOF NIL)) NIL)) (CL:CONS (CL:CONS 'LAST-CHAR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'LAST-CHAR NIL)) NIL)) (CL:CONS (CL:CONS 'PEEKED-CHAR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'PEEKED-CHAR NIL)) NIL)) (CL:CONS (CL:CONS 'INPUT-LOCATION (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'INPUT-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'OUTPUT-LOCATION (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'OUTPUT-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'USER-DETAIL (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'USER-DETAIL NIL)) NIL)) NIL)))))))))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'MAKE-STREAM (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1504 NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STRUCT NIL)) (CL:CONS '~G1504 (CL:CONS 0 NIL)))) (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STREAM NIL)) (CL:CONS '~G1504 (CL:CONS 1 NIL)))) NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'HANDLE (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'HANDLE NIL)) NIL))) (CL:CONS NIL (CL:CONS 'HANDLE NIL)))) (CL:CONS '~G1504 (CL:CONS 2 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'FUN-IN (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-IN NIL)) NIL))) (CL:CONS NIL (CL:CONS 'FUN-IN NIL)))) (CL:CONS '~G1504 (CL:CONS 3 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'FUN-OUT (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-OUT NIL)) NIL))) (CL:CONS NIL (CL:CONS 'FUN-OUT NIL)))) (CL:CONS '~G1504 (CL:CONS 4 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'FUN-EOF (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'FUN-EOF NIL)) NIL))) (CL:CONS NIL (CL:CONS 'FUN-EOF NIL)))) (CL:CONS '~G1504 (CL:CONS 5 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'LAST-CHAR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'LAST-CHAR NIL)) NIL))) (CL:CONS NIL (CL:CONS 'LAST-CHAR NIL)))) (CL:CONS '~G1504 (CL:CONS 6 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'PEEKED-CHAR (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'PEEKED-CHAR NIL)) NIL))) (CL:CONS NIL (CL:CONS 'PEEKED-CHAR NIL)))) (CL:CONS '~G1504 (CL:CONS 7 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'INPUT-LOCATION (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'INPUT-LOCATION NIL)) NIL))) (CL:CONS (CL:CONS 'MAKE-STREAM-LOCATION NIL) (CL:CONS 'INPUT-LOCATION NIL)))) (CL:CONS '~G1504 (CL:CONS 8 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'OUTPUT-LOCATION (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'OUTPUT-LOCATION NIL)) NIL))) (CL:CONS (CL:CONS 'MAKE-STREAM-LOCATION (CL:CONS ':TRACK? (CL:CONS NIL NIL))) (CL:CONS 'OUTPUT-LOCATION NIL)))) (CL:CONS '~G1504 (CL:CONS 9 NIL)))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'USER-DETAIL (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'USER-DETAIL NIL)) NIL))) (CL:CONS NIL (CL:CONS 'USER-DETAIL NIL)))) (CL:CONS '~G1504 (CL:CONS 10 NIL)))) NIL)) (CL:CONS '~G1504 NIL)))))))))))) NIL)) (CL:CONS (CL:CONS 'MAKE-ARRAY (CL:CONS 11 NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'MAKE-STREAM)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM? (X) (CL:BLOCK STREAM? (CL:BLOCK NIL (? (ARRAY? X) (? (EQ 'STRUCT (CL:AREF X 0)) (EQ 'STREAM (CL:AREF X 1))))))) (CL:SETF (CL:GETHASH #'STREAM? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'ARRAY? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STRUCT NIL)) (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'X (CL:CONS 0 NIL))) NIL))) (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'STREAM NIL)) (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'X (CL:CONS 1 NIL))) NIL))) NIL))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM?)) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-HANDLE NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-HANDLE (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-HANDLE (ARR) (CL:BLOCK STREAM-HANDLE (CL:BLOCK NIL (CL:AREF ARR 2)))) (CL:SETF (CL:GETHASH #'STREAM-HANDLE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-HANDLE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 2 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-HANDLE)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-HANDLE (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-HANDLE (VAL ARR) (CL:BLOCK =-STREAM-HANDLE (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 2))))) (CL:SETF (CL:GETHASH #'=-STREAM-HANDLE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-HANDLE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 2 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-HANDLE))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-FUN-IN NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-FUN-IN (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-FUN-IN (ARR) (CL:BLOCK STREAM-FUN-IN (CL:BLOCK NIL (CL:AREF ARR 3)))) (CL:SETF (CL:GETHASH #'STREAM-FUN-IN *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-FUN-IN (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 3 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-FUN-IN)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-FUN-IN (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-FUN-IN (VAL ARR) (CL:BLOCK =-STREAM-FUN-IN (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 3))))) (CL:SETF (CL:GETHASH #'=-STREAM-FUN-IN *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-FUN-IN (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 3 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-FUN-IN))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-FUN-OUT NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-FUN-OUT (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-FUN-OUT (ARR) (CL:BLOCK STREAM-FUN-OUT (CL:BLOCK NIL (CL:AREF ARR 4)))) (CL:SETF (CL:GETHASH #'STREAM-FUN-OUT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-FUN-OUT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 4 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-FUN-OUT)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-FUN-OUT (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-FUN-OUT (VAL ARR) (CL:BLOCK =-STREAM-FUN-OUT (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 4))))) (CL:SETF (CL:GETHASH #'=-STREAM-FUN-OUT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-FUN-OUT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 4 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-FUN-OUT))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-FUN-EOF NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-FUN-EOF (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-FUN-EOF (ARR) (CL:BLOCK STREAM-FUN-EOF (CL:BLOCK NIL (CL:AREF ARR 5)))) (CL:SETF (CL:GETHASH #'STREAM-FUN-EOF *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-FUN-EOF (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 5 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-FUN-EOF)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-FUN-EOF (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-FUN-EOF (VAL ARR) (CL:BLOCK =-STREAM-FUN-EOF (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 5))))) (CL:SETF (CL:GETHASH #'=-STREAM-FUN-EOF *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-FUN-EOF (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 5 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-FUN-EOF))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-LAST-CHAR NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-LAST-CHAR (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-LAST-CHAR (ARR) (CL:BLOCK STREAM-LAST-CHAR (CL:BLOCK NIL (CL:AREF ARR 6)))) (CL:SETF (CL:GETHASH #'STREAM-LAST-CHAR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-LAST-CHAR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 6 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-LAST-CHAR)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-LAST-CHAR (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-LAST-CHAR (VAL ARR) (CL:BLOCK =-STREAM-LAST-CHAR (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 6))))) (CL:SETF (CL:GETHASH #'=-STREAM-LAST-CHAR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-LAST-CHAR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 6 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-LAST-CHAR))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-PEEKED-CHAR NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-PEEKED-CHAR (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-PEEKED-CHAR (ARR) (CL:BLOCK STREAM-PEEKED-CHAR (CL:BLOCK NIL (CL:AREF ARR 7)))) (CL:SETF (CL:GETHASH #'STREAM-PEEKED-CHAR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-PEEKED-CHAR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 7 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-PEEKED-CHAR)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-PEEKED-CHAR (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-PEEKED-CHAR (VAL ARR) (CL:BLOCK =-STREAM-PEEKED-CHAR (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 7))))) (CL:SETF (CL:GETHASH #'=-STREAM-PEEKED-CHAR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-PEEKED-CHAR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 7 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-PEEKED-CHAR))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-INPUT-LOCATION NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-INPUT-LOCATION (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-INPUT-LOCATION (ARR) (CL:BLOCK STREAM-INPUT-LOCATION (CL:BLOCK NIL (CL:AREF ARR 8)))) (CL:SETF (CL:GETHASH #'STREAM-INPUT-LOCATION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-INPUT-LOCATION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 8 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-INPUT-LOCATION)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-INPUT-LOCATION (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-INPUT-LOCATION (VAL ARR) (CL:BLOCK =-STREAM-INPUT-LOCATION (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 8))))) (CL:SETF (CL:GETHASH #'=-STREAM-INPUT-LOCATION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-INPUT-LOCATION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 8 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-INPUT-LOCATION))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-OUTPUT-LOCATION NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-OUTPUT-LOCATION (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-OUTPUT-LOCATION (ARR) (CL:BLOCK STREAM-OUTPUT-LOCATION (CL:BLOCK NIL (CL:AREF ARR 9)))) (CL:SETF (CL:GETHASH #'STREAM-OUTPUT-LOCATION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-OUTPUT-LOCATION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 9 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-OUTPUT-LOCATION)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-OUTPUT-LOCATION (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-OUTPUT-LOCATION (VAL ARR) (CL:BLOCK =-STREAM-OUTPUT-LOCATION (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 9))))) (CL:SETF (CL:GETHASH #'=-STREAM-OUTPUT-LOCATION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-OUTPUT-LOCATION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 9 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-OUTPUT-LOCATION))) (CL:PROGN (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'STREAM-USER-DETAIL NIL) *FUNCTIONALS*)) NIL (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-USER-DETAIL (CL:CONS (CL:CONS 'ARR NIL) NIL)))) (CL:PROGN (CL:DEFUN STREAM-USER-DETAIL (ARR) (CL:BLOCK STREAM-USER-DETAIL (CL:BLOCK NIL (CL:AREF ARR 10)))) (CL:SETF (CL:GETHASH #'STREAM-USER-DETAIL *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'ARR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-USER-DETAIL (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:AREF (CL:CONS 'ARR (CL:CONS 10 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-USER-DETAIL)) (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '=-STREAM-USER-DETAIL (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) NIL)))) (CL:PROGN (CL:DEFUN =-STREAM-USER-DETAIL (VAL ARR) (CL:BLOCK =-STREAM-USER-DETAIL (CL:BLOCK NIL (CL:PROGN (=-AREF VAL ARR 10))))) (CL:SETF (CL:GETHASH #'=-STREAM-USER-DETAIL *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'VAL (CL:CONS 'ARR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '=-STREAM-USER-DETAIL (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-AREF (CL:CONS 'VAL (CL:CONS 'ARR (CL:CONS 10 NIL)))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '=-STREAM-USER-DETAIL))) (CL:BLOCK NIL (%DEFMACRO WITH-STREAM (S CL:&REST BODY) (CL:BLOCK WITH-STREAM (CL:CONS 'WITH-STRUCT (CL:CONS 'STREAM (CL:CONS S (APPEND BODY NIL))))))) (CL:BLOCK NIL (%DEFMACRO DEF-STREAM (NAME ARGS CL:&REST BODY) (CL:BLOCK DEF-STREAM (CL:CONS 'DEFUN (CL:CONS NAME (CL:CONS ARGS (CL:CONS (CL:CONS 'WITH-STRUCT (CL:CONS 'STREAM (CL:CONS 'STREAM (APPEND BODY NIL)))) NIL))))))))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'NEXT-TABULATOR-COLUMN (CL:CONS (CL:CONS 'COLUMN (CL:CONS 'SIZE NIL)) NIL)))) (CL:PROGN (CL:DEFUN NEXT-TABULATOR-COLUMN (COLUMN SIZE) (CL:BLOCK NEXT-TABULATOR-COLUMN (CL:BLOCK NIL (++ (* SIZE (++ (INTEGER (/ (-- COLUMN) SIZE)))))))) (CL:SETF (CL:GETHASH #'NEXT-TABULATOR-COLUMN *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'COLUMN (CL:CONS 'SIZE NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'NEXT-TABULATOR-COLUMN (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '++ (CL:CONS (CL:CONS '* (CL:CONS 'SIZE (CL:CONS (CL:CONS '++ (CL:CONS (CL:CONS 'INTEGER (CL:CONS (CL:CONS '/ (CL:CONS (CL:CONS '-- (CL:CONS 'COLUMN NIL)) (CL:CONS 'SIZE NIL))) NIL)) NIL)) NIL))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'NEXT-TABULATOR-COLUMN))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%TRACK-LOCATION (CL:CONS (CL:CONS 'STREAM-LOCATION (CL:CONS 'X NIL)) NIL)))) (CL:PROGN (CL:DEFUN %TRACK-LOCATION (STREAM-LOCATION X) (CL:BLOCK %TRACK-LOCATION (CL:BLOCK NIL (CL:LABELS ((G3712 (STREAM-LOCATION) (CL:LABELS ((G3713 (TRACK?) (CL:LABELS ((G3714 (ID) (CL:LABELS ((G3715 (LINE) (CL:LABELS ((G3716 (COLUMN) (CL:LABELS ((G3717 (TABSIZE) TRACK? ID LINE COLUMN TABSIZE (? TRACK? (CL:PROGN (? (STRING? X) (CL:BLOCK NIL (CL:LABELS ((G3718 (~G1507) (CL:LABELS ((G3719 (!) (CL:TAGBODY ~G1505 (? (NOT ~G1507) (CL:GO ~G1506)) (CL:SETQ ! (CL:CAR ~G1507)) (%TRACK-LOCATION STREAM-LOCATION !) (CL:SETQ ~G1507 (CL:CDR ~G1507)) (CL:GO ~G1505) ~G1506 (CL:RETURN-FROM NIL (CL:PROGN NIL))))) (G3719 NIL)))) (G3718 (STRING-LIST X)))) (? X (CL:PROGN (? (== 10 X) (CL:PROGN (CL:PROGN (=-STREAM-LOCATION-COLUMN 1 STREAM-LOCATION)) (CL:PROGN (=-STREAM-LOCATION-LINE (NUMBER+ (STREAM-LOCATION-LINE STREAM-LOCATION) 1) STREAM-LOCATION))) (? (== 9 X) (CL:PROGN (=-STREAM-LOCATION-COLUMN (NEXT-TABULATOR-COLUMN COLUMN TABSIZE) STREAM-LOCATION)) (< 31 X) (CL:PROGN (=-STREAM-LOCATION-COLUMN (NUMBER+ (STREAM-LOCATION-COLUMN STREAM-LOCATION) 1) STREAM-LOCATION))))))))) X)) (G3717 (STREAM-LOCATION-TABSIZE STREAM-LOCATION))))) (G3716 (STREAM-LOCATION-COLUMN STREAM-LOCATION))))) (G3715 (STREAM-LOCATION-LINE STREAM-LOCATION))))) (G3714 (STREAM-LOCATION-ID STREAM-LOCATION))))) (G3713 (STREAM-LOCATION-TRACK? STREAM-LOCATION))))) (G3712 STREAM-LOCATION))))) (CL:SETF (CL:GETHASH #'%TRACK-LOCATION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STREAM-LOCATION (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%TRACK-LOCATION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS 'STREAM-LOCATION (CL:CONS 'STREAM-LOCATION (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'TRACK? (CL:CONS (CL:CONS 'STREAM-LOCATION-TRACK? (CL:CONS 'STREAM-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'ID (CL:CONS (CL:CONS 'STREAM-LOCATION-ID (CL:CONS 'STREAM-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'LINE (CL:CONS (CL:CONS 'STREAM-LOCATION-LINE (CL:CONS 'STREAM-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'COLUMN (CL:CONS (CL:CONS 'STREAM-LOCATION-COLUMN (CL:CONS 'STREAM-LOCATION NIL)) NIL)) (CL:CONS (CL:CONS 'TABSIZE (CL:CONS (CL:CONS 'STREAM-LOCATION-TABSIZE (CL:CONS 'STREAM-LOCATION NIL)) NIL)) NIL))))) (CL:CONS 'TRACK? (CL:CONS 'ID (CL:CONS 'LINE (CL:CONS 'COLUMN (CL:CONS 'TABSIZE (CL:CONS (CL:CONS '? (CL:CONS 'TRACK? (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'STRING? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1507 (CL:CONS (CL:CONS 'STRING-LIST (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS '! (CL:CONS NIL NIL)) NIL) (CL:CONS (CL:CONS 'CL:TAGBODY (CL:CONS '~G1505 (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS '~G1507 NIL)) (CL:CONS (CL:CONS 'CL:GO (CL:CONS '~G1506 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '! (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1507 NIL)) NIL))) (CL:CONS (CL:CONS '%TRACK-LOCATION (CL:CONS 'STREAM-LOCATION (CL:CONS '! NIL))) (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '~G1507 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1507 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:GO (CL:CONS '~G1505 NIL)) (CL:CONS '~G1506 (CL:CONS (CL:CONS 'CL:RETURN-FROM (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS NIL NIL)) NIL))) NIL))))))))) NIL))) NIL)))) NIL))) (CL:CONS (CL:CONS '? (CL:CONS 'X (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS 10 (CL:CONS 'X NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-LOCATION-COLUMN (CL:CONS 1 (CL:CONS 'STREAM-LOCATION NIL))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-LOCATION-LINE (CL:CONS (CL:CONS 'NUMBER+ (CL:CONS (CL:CONS 'STREAM-LOCATION-LINE (CL:CONS 'STREAM-LOCATION NIL)) (CL:CONS 1 NIL))) (CL:CONS 'STREAM-LOCATION NIL))) NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS 9 (CL:CONS 'X NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-LOCATION-COLUMN (CL:CONS (CL:CONS 'NEXT-TABULATOR-COLUMN (CL:CONS 'COLUMN (CL:CONS 'TABSIZE NIL))) (CL:CONS 'STREAM-LOCATION NIL))) NIL)) (CL:CONS (CL:CONS '< (CL:CONS 31 (CL:CONS 'X NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-LOCATION-COLUMN (CL:CONS (CL:CONS 'NUMBER+ (CL:CONS (CL:CONS 'STREAM-LOCATION-COLUMN (CL:CONS 'STREAM-LOCATION NIL)) (CL:CONS 1 NIL))) (CL:CONS 'STREAM-LOCATION NIL))) NIL)) NIL))))) NIL)))) NIL)) NIL))) NIL)))) NIL)) NIL))) (CL:CONS 'X NIL))))))))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%TRACK-LOCATION))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'STREAM-PRINC (CL:CONS (CL:CONS 'X (CL:CONS 'STR NIL)) NIL)))) (CL:PROGN (CL:DEFUN STREAM-PRINC (X STR) (CL:BLOCK STREAM-PRINC (CL:BLOCK NIL (? (CONS? X) (CL:BLOCK NIL (CL:LABELS ((G3720 (~G1510) (CL:LABELS ((G3721 (!) (CL:TAGBODY ~G1508 (? (NOT ~G1510) (CL:GO ~G1509)) (CL:SETQ ! (CL:CAR ~G1510)) (STREAM-PRINC ! STR) (CL:SETQ ~G1510 (CL:CDR ~G1510)) (CL:GO ~G1508) ~G1509 (CL:RETURN-FROM NIL (CL:PROGN X))))) (G3721 NIL)))) (G3720 X))) (? (NOT (? (STRING? X) (ZERO? (CL:LENGTH X)))) (CL:PROGN (CL:PROGN (=-STREAM-LAST-CHAR (? (STRING? X) (CL:ELT X (-- (CL:LENGTH X))) X) STR)) (%TRACK-LOCATION (STREAM-OUTPUT-LOCATION STR) X) (FUNCALL (STREAM-FUN-OUT STR) X STR))))))) (CL:SETF (CL:GETHASH #'STREAM-PRINC *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'STREAM-PRINC (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CONS? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS '~G1510 (CL:CONS 'X NIL)) (CL:CONS (CL:CONS '! (CL:CONS NIL NIL)) NIL)) (CL:CONS (CL:CONS 'CL:TAGBODY (CL:CONS '~G1508 (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS '~G1510 NIL)) (CL:CONS (CL:CONS 'CL:GO (CL:CONS '~G1509 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '! (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1510 NIL)) NIL))) (CL:CONS (CL:CONS 'STREAM-PRINC (CL:CONS '! (CL:CONS 'STR NIL))) (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '~G1510 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1510 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:GO (CL:CONS '~G1508 NIL)) (CL:CONS '~G1509 (CL:CONS (CL:CONS 'CL:RETURN (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS 'X NIL)) NIL)) NIL))))))))) NIL))) NIL))) (CL:CONS (CL:CONS '& (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'STRING? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'ZERO? (CL:CONS (CL:CONS 'CL:LENGTH (CL:CONS 'X NIL)) NIL)) NIL))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-LAST-CHAR (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'STRING? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CL:ELT (CL:CONS 'X (CL:CONS (CL:CONS '-- (CL:CONS (CL:CONS 'CL:LENGTH (CL:CONS 'X NIL)) NIL)) NIL))) (CL:CONS 'X NIL)))) (CL:CONS 'STR NIL))) NIL)) (CL:CONS (CL:CONS '%TRACK-LOCATION (CL:CONS (CL:CONS 'STREAM-OUTPUT-LOCATION (CL:CONS 'STR NIL)) (CL:CONS 'X NIL))) (CL:CONS (CL:CONS 'FUNCALL (CL:CONS (CL:CONS 'STREAM-FUN-OUT (CL:CONS 'STR NIL)) (CL:CONS 'X (CL:CONS 'STR NIL)))) NIL)))) NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'STREAM-PRINC))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-PEEKED-CHAR (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-PEEKED-CHAR (STR) (CL:BLOCK READ-PEEKED-CHAR (CL:BLOCK NIL (CL:LABELS ((G3722 (!) (? ! (CL:PROGN (CL:PROGN (=-STREAM-PEEKED-CHAR NIL STR)) !)))) (G3722 (STREAM-PEEKED-CHAR STR)))))) (CL:SETF (CL:GETHASH #'READ-PEEKED-CHAR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-PEEKED-CHAR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '& (CL:CONS '! (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-PEEKED-CHAR (CL:CONS NIL (CL:CONS 'STR NIL))) NIL)) (CL:CONS '! NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'STREAM-PEEKED-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-PEEKED-CHAR))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-CHAR-0 (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-CHAR-0 (STR) (CL:BLOCK READ-CHAR-0 (CL:BLOCK NIL (CL:LABELS ((G3723 (~G1511) (? ~G1511 ~G1511 (CL:PROGN (=-STREAM-LAST-CHAR (FUNCALL (STREAM-FUN-IN STR) STR) STR))))) (G3723 (READ-PEEKED-CHAR STR)))))) (CL:SETF (CL:GETHASH #'READ-CHAR-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-CHAR-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1511 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1511 (CL:CONS '~G1511 (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-LAST-CHAR (CL:CONS (CL:CONS 'FUNCALL (CL:CONS (CL:CONS 'STREAM-FUN-IN (CL:CONS 'STR NIL)) (CL:CONS 'STR NIL))) (CL:CONS 'STR NIL))) NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-PEEKED-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-CHAR-0))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-CHAR (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ-CHAR (CL:&OPTIONAL (STR *STANDARD-INPUT*)) (CL:BLOCK READ-CHAR (CL:BLOCK NIL (%TRACK-LOCATION (STREAM-INPUT-LOCATION STR) (READ-CHAR-0 STR))))) (CL:SETF (CL:GETHASH #'READ-CHAR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-CHAR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '%TRACK-LOCATION (CL:CONS (CL:CONS 'STREAM-INPUT-LOCATION (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'READ-CHAR-0 (CL:CONS 'STR NIL)) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-CHAR))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'PEEK-CHAR (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN PEEK-CHAR (CL:&OPTIONAL (STR *STANDARD-INPUT*)) (CL:BLOCK PEEK-CHAR (CL:BLOCK NIL (CL:LABELS ((G3724 (~G1512) (? ~G1512 ~G1512 (CL:PROGN (=-STREAM-PEEKED-CHAR (READ-CHAR-0 STR) STR))))) (G3724 (STREAM-PEEKED-CHAR STR)))))) (CL:SETF (CL:GETHASH #'PEEK-CHAR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'PEEK-CHAR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1512 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1512 (CL:CONS '~G1512 (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-PEEKED-CHAR (CL:CONS (CL:CONS 'READ-CHAR-0 (CL:CONS 'STR NIL)) (CL:CONS 'STR NIL))) NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'STREAM-PEEKED-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'PEEK-CHAR))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DEFAULT-STREAM (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN DEFAULT-STREAM (X) (CL:BLOCK DEFAULT-STREAM (CL:BLOCK NIL (CL:LABELS ((G3725 (~G1513) (? (EQ ~G1513 NIL) (MAKE-STRING-STREAM) (EQ ~G1513 T) *STANDARD-OUTPUT* X))) (G3725 X))))) (CL:SETF (CL:GETHASH #'DEFAULT-STREAM *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DEFAULT-STREAM (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1513 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1513 (CL:CONS NIL NIL))) (CL:CONS (CL:CONS 'MAKE-STRING-STREAM NIL) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1513 (CL:CONS T NIL))) (CL:CONS '*STANDARD-OUTPUT* (CL:CONS 'X NIL)))))) NIL)) NIL)) (CL:CONS 'X NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DEFAULT-STREAM))
  (CL:BLOCK NIL (%DEFMACRO WITH-DEFAULT-STREAM (NSTR STR CL:&REST BODY) (CL:BLOCK WITH-DEFAULT-STREAM (CL:LABELS ((G3726 (G) (CL:LABELS ((G3727 (BODY-RESULT) (CL:CONS 'WITH (CL:CONS (CL:CONS G (CL:CONS STR (CL:CONS NSTR (CL:CONS (CL:CONS 'DEFAULT-STREAM (CL:CONS G NIL)) (CL:CONS BODY-RESULT (CL:CONS (CL:CONS 'CL:PROGN (APPEND BODY NIL)) NIL)))))) (CL:CONS (CL:CONS '? (CL:CONS G (CL:CONS BODY-RESULT (CL:CONS (CL:CONS 'GET-STREAM-STRING (CL:CONS NSTR NIL)) NIL)))) NIL))))) (G3727 (GENSYM))))) (G3726 (GENSYM))))))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'MAKE-STRING-STREAM (CL:CONS NIL NIL)))) (CL:PROGN (CL:DEFUN MAKE-STRING-STREAM NIL (CL:BLOCK MAKE-STRING-STREAM (CL:BLOCK NIL (MAKE-STREAM :USER-DETAIL (MAKE-QUEUE) :FUN-IN #'(CL:LAMBDA (STR) (CL:LABELS ((G3728 (!) (? (STRING? (CL:CAR !)) (CL:PROGN (CL:PROGN (=-STREAM-USER-DETAIL (MAKE-QUEUE) STR)) (ENQUEUE-LIST (STREAM-USER-DETAIL STR) (APPEND (STRING-LIST (CL:CAR !)) (CL:CDR !))))))) (G3728 (QUEUE-LIST (STREAM-USER-DETAIL STR)))) (QUEUE-POP (STREAM-USER-DETAIL STR))) :FUN-OUT #'(CL:LAMBDA (X STR) (ENQUEUE (STREAM-USER-DETAIL STR) X)) :FUN-EOF #'(CL:LAMBDA (STR) (NOT (QUEUE-LIST (STREAM-USER-DETAIL STR)))))))) (CL:SETF (CL:GETHASH #'MAKE-STRING-STREAM *FUNCTION-ATOM-SOURCES*) (CL:CONS NIL (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'MAKE-STRING-STREAM (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'MAKE-STREAM (CL:CONS ':USER-DETAIL (CL:CONS (CL:CONS 'MAKE-QUEUE NIL) (CL:CONS ':FUN-IN (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'STRING? (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '! NIL)) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-USER-DETAIL (CL:CONS (CL:CONS 'MAKE-QUEUE NIL) (CL:CONS 'STR NIL))) NIL)) (CL:CONS (CL:CONS 'ENQUEUE-LIST (CL:CONS (CL:CONS 'STREAM-USER-DETAIL (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'APPEND (CL:CONS (CL:CONS 'STRING-LIST (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '! NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '! NIL)) NIL))) NIL))) NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'QUEUE-LIST (CL:CONS (CL:CONS 'STREAM-USER-DETAIL (CL:CONS 'STR NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'QUEUE-POP (CL:CONS (CL:CONS 'STREAM-USER-DETAIL (CL:CONS 'STR NIL)) NIL)) NIL))) NIL)) (CL:CONS ':FUN-OUT (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'X (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'ENQUEUE (CL:CONS (CL:CONS 'STREAM-USER-DETAIL (CL:CONS 'STR NIL)) (CL:CONS 'X NIL))) NIL)) NIL)) (CL:CONS ':FUN-EOF (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'QUEUE-LIST (CL:CONS (CL:CONS 'STREAM-USER-DETAIL (CL:CONS 'STR NIL)) NIL)) NIL)) NIL)) NIL)) NIL))))))))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'MAKE-STRING-STREAM))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'GET-STREAM-STRING (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN GET-STREAM-STRING (STR) (CL:BLOCK GET-STREAM-STRING (CL:BLOCK NIL (CL:LABELS ((G3729 (~G1514) (CL:PROGN (=-STREAM-USER-DETAIL (MAKE-QUEUE) STR)) ~G1514)) (G3729 (QUEUE-STRING (STREAM-USER-DETAIL STR))))))) (CL:SETF (CL:GETHASH #'GET-STREAM-STRING *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'GET-STREAM-STRING (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1514 NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '=-STREAM-USER-DETAIL (CL:CONS (CL:CONS 'MAKE-QUEUE NIL) (CL:CONS 'STR NIL))) NIL)) (CL:CONS '~G1514 NIL))) NIL)) (CL:CONS (CL:CONS 'QUEUE-STRING (CL:CONS (CL:CONS 'STREAM-USER-DETAIL (CL:CONS 'STR NIL)) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'GET-STREAM-STRING))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'MAKE-STREAM-STREAM (CL:CONS (CL:CONS 'CL:&KEY (CL:CONS 'STREAM (CL:CONS (CL:CONS 'INPUT-LOCATION (CL:CONS (CL:CONS 'MAKE-STREAM-LOCATION NIL) NIL)) (CL:CONS (CL:CONS 'OUTPUT-LOCATION (CL:CONS (CL:CONS 'MAKE-STREAM-LOCATION (CL:CONS ':TRACK? (CL:CONS NIL NIL))) NIL)) NIL)))) NIL)))) (CL:PROGN (CL:DEFUN MAKE-STREAM-STREAM (CL:&KEY STREAM (INPUT-LOCATION (MAKE-STREAM-LOCATION)) (OUTPUT-LOCATION (MAKE-STREAM-LOCATION :TRACK? NIL))) (CL:BLOCK MAKE-STREAM-STREAM (CL:BLOCK NIL (MAKE-STREAM :HANDLE STREAM :INPUT-LOCATION INPUT-LOCATION :OUTPUT-LOCATION OUTPUT-LOCATION :FUN-IN #'(CL:LAMBDA (_) (%READ-CHAR (STREAM-HANDLE _))) :FUN-OUT #'(CL:LAMBDA (C STR) (%PRINC C (STREAM-HANDLE STR))) :FUN-EOF #'(CL:LAMBDA (_) (%FEOF (STREAM-HANDLE _))))))) (CL:SETF (CL:GETHASH #'MAKE-STREAM-STREAM *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&KEY (CL:CONS 'STREAM (CL:CONS (CL:CONS 'INPUT-LOCATION (CL:CONS (CL:CONS 'MAKE-STREAM-LOCATION NIL) NIL)) (CL:CONS (CL:CONS 'OUTPUT-LOCATION (CL:CONS (CL:CONS 'MAKE-STREAM-LOCATION (CL:CONS ':TRACK? (CL:CONS NIL NIL))) NIL)) NIL)))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'MAKE-STREAM-STREAM (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'MAKE-STREAM (CL:CONS ':HANDLE (CL:CONS 'STREAM (CL:CONS ':INPUT-LOCATION (CL:CONS 'INPUT-LOCATION (CL:CONS ':OUTPUT-LOCATION (CL:CONS 'OUTPUT-LOCATION (CL:CONS ':FUN-IN (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '_ NIL) (CL:CONS (CL:CONS '%READ-CHAR (CL:CONS (CL:CONS 'STREAM-HANDLE (CL:CONS '_ NIL)) NIL)) NIL)) NIL)) (CL:CONS ':FUN-OUT (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'C (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS '%PRINC (CL:CONS 'C (CL:CONS (CL:CONS 'STREAM-HANDLE (CL:CONS 'STR NIL)) NIL))) NIL)) NIL)) (CL:CONS ':FUN-EOF (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '_ NIL) (CL:CONS (CL:CONS '%FEOF (CL:CONS (CL:CONS 'STREAM-HANDLE (CL:CONS '_ NIL)) NIL)) NIL)) NIL)) NIL))))))))))))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'MAKE-STREAM-STREAM))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%FOPEN-DIRECTION (CL:CONS (CL:CONS 'DIRECTION NIL) NIL)))) (CL:PROGN (CL:DEFUN %FOPEN-DIRECTION (DIRECTION) (CL:BLOCK %FOPEN-DIRECTION (CL:BLOCK NIL (CL:LABELS ((G3730 (~G1515) (? (EQUAL ~G1515 'INPUT) "r" (EQUAL ~G1515 'OUTPUT) "w" (EQUAL ~G1515 'APPEND) "a" (ERROR ":DIRECTION isn't specified.")))) (G3730 DIRECTION))))) (CL:SETF (CL:GETHASH #'%FOPEN-DIRECTION *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'DIRECTION NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%FOPEN-DIRECTION (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1515 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQUAL (CL:CONS '~G1515 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'INPUT NIL)) NIL))) (CL:CONS "r" (CL:CONS (CL:CONS 'EQUAL (CL:CONS '~G1515 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'OUTPUT NIL)) NIL))) (CL:CONS "w" (CL:CONS (CL:CONS 'EQUAL (CL:CONS '~G1515 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'APPEND NIL)) NIL))) (CL:CONS "a" (CL:CONS (CL:CONS 'ERROR (CL:CONS ":DIRECTION isn't specified." NIL)) NIL)))))))) NIL)) NIL)) (CL:CONS 'DIRECTION NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%FOPEN-DIRECTION))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'OPEN (CL:CONS (CL:CONS 'PATH (CL:CONS 'CL:&KEY (CL:CONS 'DIRECTION NIL))) NIL)))) (CL:PROGN (CL:DEFUN OPEN (PATH CL:&KEY DIRECTION) (CL:BLOCK OPEN (CL:BLOCK NIL (CL:LABELS ((G3731 (!) (? ! (MAKE-STREAM-STREAM :STREAM ! :INPUT-LOCATION (MAKE-STREAM-LOCATION :ID PATH)) (ERROR "Couldn't open file `~A'." PATH)))) (G3731 (%FOPEN PATH (%FOPEN-DIRECTION DIRECTION))))))) (CL:SETF (CL:GETHASH #'OPEN *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'PATH (CL:CONS 'CL:&KEY (CL:CONS 'DIRECTION NIL))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'OPEN (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '! (CL:CONS (CL:CONS '%FOPEN (CL:CONS 'PATH (CL:CONS (CL:CONS '%FOPEN-DIRECTION (CL:CONS 'DIRECTION NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '! (CL:CONS (CL:CONS 'MAKE-STREAM-STREAM (CL:CONS ':STREAM (CL:CONS '! (CL:CONS ':INPUT-LOCATION (CL:CONS (CL:CONS 'MAKE-STREAM-LOCATION (CL:CONS ':ID (CL:CONS 'PATH NIL))) NIL))))) (CL:CONS (CL:CONS '%!? (CL:CONS (CL:CONS 'ERROR (CL:CONS "Couldn't open file `~A'." (CL:CONS 'PATH NIL))) NIL)) NIL)))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'OPEN))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'CLOSE (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN CLOSE (STR) (CL:BLOCK CLOSE (CL:BLOCK NIL (%FCLOSE (STREAM-HANDLE STR))))) (CL:SETF (CL:GETHASH #'CLOSE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'CLOSE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '%FCLOSE (CL:CONS (CL:CONS 'STREAM-HANDLE (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'CLOSE))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'NUMBER-DIGIT (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN NUMBER-DIGIT (X) (CL:BLOCK NUMBER-DIGIT (CL:BLOCK NIL (CODE-CHAR (+ X #\0))))) (CL:SETF (CL:GETHASH #'NUMBER-DIGIT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'NUMBER-DIGIT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CODE-CHAR (CL:CONS (CL:CONS '+ (CL:CONS 'X (CL:CONS #\0 NIL))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'NUMBER-DIGIT))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'INTEGER-CHARS-0 (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN INTEGER-CHARS-0 (X) (CL:BLOCK INTEGER-CHARS-0 (CL:BLOCK NIL (CL:LABELS ((G3732 (!) (CL:CONS (NUMBER-DIGIT !) (? (<= 10 X) (INTEGER-CHARS-0 (/ (- X !) 10)))))) (G3732 (INTEGER (CL:MOD X 10))))))) (CL:SETF (CL:GETHASH #'INTEGER-CHARS-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'INTEGER-CHARS-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'NUMBER-DIGIT (CL:CONS '! NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '<= (CL:CONS 10 (CL:CONS 'X NIL))) (CL:CONS (CL:CONS 'INTEGER-CHARS-0 (CL:CONS (CL:CONS '/ (CL:CONS (CL:CONS '- (CL:CONS 'X (CL:CONS '! NIL))) (CL:CONS 10 NIL))) NIL)) NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'INTEGER (CL:CONS (CL:CONS 'CL:MOD (CL:CONS 'X (CL:CONS 10 NIL))) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'INTEGER-CHARS-0))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'INTEGER-CHARS (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN INTEGER-CHARS (X) (CL:BLOCK INTEGER-CHARS (CL:BLOCK NIL (REVERSE (INTEGER-CHARS-0 (INTEGER (ABS X))))))) (CL:SETF (CL:GETHASH #'INTEGER-CHARS *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'INTEGER-CHARS (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'REVERSE (CL:CONS (CL:CONS 'INTEGER-CHARS-0 (CL:CONS (CL:CONS 'INTEGER (CL:CONS (CL:CONS 'ABS (CL:CONS 'X NIL)) NIL)) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'INTEGER-CHARS))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'FRACTION-CHARS-0 (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN FRACTION-CHARS-0 (X) (CL:BLOCK FRACTION-CHARS-0 (CL:BLOCK NIL (CL:LABELS ((G3733 (!) (? (< 0 !) (CL:CONS (NUMBER-DIGIT !) (FRACTION-CHARS-0 !))))) (G3733 (CL:MOD (* X 10) 10)))))) (CL:SETF (CL:GETHASH #'FRACTION-CHARS-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'FRACTION-CHARS-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '< (CL:CONS 0 (CL:CONS '! NIL))) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'NUMBER-DIGIT (CL:CONS '! NIL)) (CL:CONS (CL:CONS 'FRACTION-CHARS-0 (CL:CONS '! NIL)) NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:MOD (CL:CONS (CL:CONS '* (CL:CONS 'X (CL:CONS 10 NIL))) (CL:CONS 10 NIL))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'FRACTION-CHARS-0))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'FRACTION-CHARS (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN FRACTION-CHARS (X) (CL:BLOCK FRACTION-CHARS (CL:BLOCK NIL (FRACTION-CHARS-0 (CL:MOD (ABS X) 1))))) (CL:SETF (CL:GETHASH #'FRACTION-CHARS *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'FRACTION-CHARS (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'FRACTION-CHARS-0 (CL:CONS (CL:CONS 'CL:MOD (CL:CONS (CL:CONS 'ABS (CL:CONS 'X NIL)) (CL:CONS 1 NIL))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'FRACTION-CHARS))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'PRINC-NUMBER (CL:CONS (CL:CONS 'X (CL:CONS 'STR NIL)) NIL)))) (CL:PROGN (CL:DEFUN PRINC-NUMBER (X STR) (CL:BLOCK PRINC-NUMBER (CL:BLOCK NIL (? (< X 0) (PRINC #\- STR)) (STREAM-PRINC (INTEGER-CHARS X) STR) (CL:LABELS ((G3734 (!) (? (NOT (ZERO? !)) (CL:PROGN (PRINC #\. STR) (STREAM-PRINC (FRACTION-CHARS !) STR))))) (G3734 (CL:MOD X 1)))))) (CL:SETF (CL:GETHASH #'PRINC-NUMBER *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'PRINC-NUMBER (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '< (CL:CONS 'X (CL:CONS 0 NIL))) (CL:CONS (CL:CONS 'PRINC (CL:CONS #\- (CL:CONS 'STR NIL))) NIL))) (CL:CONS (CL:CONS 'STREAM-PRINC (CL:CONS (CL:CONS 'INTEGER-CHARS (CL:CONS 'X NIL)) (CL:CONS 'STR NIL))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '& (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'ZERO? (CL:CONS '! NIL)) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'PRINC (CL:CONS #\. (CL:CONS 'STR NIL))) (CL:CONS (CL:CONS 'STREAM-PRINC (CL:CONS (CL:CONS 'FRACTION-CHARS (CL:CONS '! NIL)) (CL:CONS 'STR NIL))) NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:MOD (CL:CONS 'X (CL:CONS 1 NIL))) NIL)) NIL))))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'PRINC-NUMBER))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'PRINC (CL:CONS (CL:CONS 'X (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-OUTPUT* NIL)) NIL))) NIL)))) (CL:PROGN (CL:DEFUN PRINC (X CL:&OPTIONAL (STR *STANDARD-OUTPUT*)) (CL:BLOCK PRINC (CL:BLOCK NIL (CL:LABELS ((G3735 (~G1516) (CL:LABELS ((G3736 (S) (CL:LABELS ((G3737 (~G1517) (? ~G1516 ~G1517 (GET-STREAM-STRING S)))) (G3737 (CL:PROGN (? (STRING? X) (STREAM-PRINC X S) (CHARACTER? X) (STREAM-PRINC X S) (NUMBER? X) (PRINC-NUMBER X S) (SYMBOL? X) (STREAM-PRINC (SYMBOL-NAME X) S)) X))))) (G3736 (DEFAULT-STREAM ~G1516))))) (G3735 STR))))) (CL:SETF (CL:GETHASH #'PRINC *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-OUTPUT* NIL)) NIL))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'PRINC (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1516 (CL:CONS 'STR (CL:CONS (CL:CONS 'WITH (CL:CONS (CL:CONS 'S (CL:CONS (CL:CONS 'DEFAULT-STREAM (CL:CONS '~G1516 NIL)) (CL:CONS '~G1517 (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'STRING? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'STREAM-PRINC (CL:CONS 'X (CL:CONS 'S NIL))) (CL:CONS (CL:CONS 'CHARACTER? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'STREAM-PRINC (CL:CONS 'X (CL:CONS 'S NIL))) (CL:CONS (CL:CONS 'NUMBER? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'PRINC-NUMBER (CL:CONS 'X (CL:CONS 'S NIL))) (CL:CONS (CL:CONS 'SYMBOL? (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'STREAM-PRINC (CL:CONS (CL:CONS 'SYMBOL-NAME (CL:CONS 'X NIL)) (CL:CONS 'S NIL))) NIL))))))))) (CL:CONS 'X NIL))) NIL)))) (CL:CONS (CL:CONS '? (CL:CONS '~G1516 (CL:CONS '~G1517 (CL:CONS (CL:CONS 'GET-STREAM-STRING (CL:CONS 'S NIL)) NIL)))) NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'PRINC))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'SPLIT-IF (CL:CONS (CL:CONS 'PREDICATE (CL:CONS 'SEQ (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'INCLUDE? (CL:CONS NIL NIL)) NIL)))) NIL)))) (CL:PROGN (CL:DEFUN SPLIT-IF (PREDICATE SEQ CL:&KEY (INCLUDE? NIL)) (CL:BLOCK SPLIT-IF (CL:BLOCK NIL (? SEQ (CL:LABELS ((G3738 (!) (? ! (CL:CONS (SUBSEQ SEQ 0 (? INCLUDE? (++ !) !)) (SPLIT-IF PREDICATE (SUBSEQ SEQ (++ !)) :INCLUDE? INCLUDE?)) (CL:LIST SEQ)))) (G3738 (POSITION-IF PREDICATE SEQ))))))) (CL:SETF (CL:GETHASH #'SPLIT-IF *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'PREDICATE (CL:CONS 'SEQ (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'INCLUDE? (CL:CONS NIL NIL)) NIL)))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'SPLIT-IF (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS 'SEQ (CL:CONS (CL:CONS 'LET (CL:CONS '! (CL:CONS (CL:CONS 'POSITION-IF (CL:CONS 'PREDICATE (CL:CONS 'SEQ NIL))) (CL:CONS (CL:CONS '? (CL:CONS '! (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'SUBSEQ (CL:CONS 'SEQ (CL:CONS 0 (CL:CONS (CL:CONS '? (CL:CONS 'INCLUDE? (CL:CONS (CL:CONS '++ (CL:CONS '! NIL)) (CL:CONS '! NIL)))) NIL)))) (CL:CONS (CL:CONS 'SPLIT-IF (CL:CONS 'PREDICATE (CL:CONS (CL:CONS 'SUBSEQ (CL:CONS 'SEQ (CL:CONS (CL:CONS '++ (CL:CONS '! NIL)) NIL))) (CL:CONS ':INCLUDE? (CL:CONS 'INCLUDE? NIL))))) NIL))) (CL:CONS (CL:CONS '%!? (CL:CONS (CL:CONS 'CL:LIST (CL:CONS 'SEQ NIL)) NIL)) NIL)))) NIL)))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'SPLIT-IF))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'GENERIC-SPLIT (CL:CONS (CL:CONS 'OBJ (CL:CONS 'SEQ (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'TEST (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'EQL NIL)) NIL)) (CL:CONS (CL:CONS 'INCLUDE? (CL:CONS NIL NIL)) NIL))))) NIL)))) (CL:PROGN (CL:DEFUN GENERIC-SPLIT (OBJ SEQ CL:&KEY (TEST #'EQL) (INCLUDE? NIL)) (CL:BLOCK GENERIC-SPLIT (CL:BLOCK NIL (? SEQ (CL:LABELS ((G3739 (!) (? ! (CL:CONS (SUBSEQ SEQ 0 (? INCLUDE? (++ !) !)) (GENERIC-SPLIT OBJ (SUBSEQ SEQ (++ !)) :TEST TEST :INCLUDE? INCLUDE?)) (CL:LIST SEQ)))) (G3739 (POSITION OBJ SEQ :TEST TEST))))))) (CL:SETF (CL:GETHASH #'GENERIC-SPLIT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'OBJ (CL:CONS 'SEQ (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'TEST (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'EQL NIL)) NIL)) (CL:CONS (CL:CONS 'INCLUDE? (CL:CONS NIL NIL)) NIL))))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'GENERIC-SPLIT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS 'SEQ (CL:CONS (CL:CONS 'LET (CL:CONS '! (CL:CONS (CL:CONS 'POSITION (CL:CONS 'OBJ (CL:CONS 'SEQ (CL:CONS ':TEST (CL:CONS 'TEST NIL))))) (CL:CONS (CL:CONS '? (CL:CONS '! (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'SUBSEQ (CL:CONS 'SEQ (CL:CONS 0 (CL:CONS (CL:CONS '? (CL:CONS 'INCLUDE? (CL:CONS (CL:CONS '++ (CL:CONS '! NIL)) (CL:CONS '! NIL)))) NIL)))) (CL:CONS (CL:CONS 'GENERIC-SPLIT (CL:CONS 'OBJ (CL:CONS (CL:CONS 'SUBSEQ (CL:CONS 'SEQ (CL:CONS (CL:CONS '++ (CL:CONS '! NIL)) NIL))) (CL:CONS ':TEST (CL:CONS 'TEST (CL:CONS ':INCLUDE? (CL:CONS 'INCLUDE? NIL))))))) NIL))) (CL:CONS (CL:CONS '%!? (CL:CONS (CL:CONS 'CL:LIST (CL:CONS 'SEQ NIL)) NIL)) NIL)))) NIL)))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'GENERIC-SPLIT))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'SPLIT (CL:CONS (CL:CONS 'OBJ (CL:CONS 'SEQ (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'TEST (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'EQL NIL)) NIL)) (CL:CONS (CL:CONS 'INCLUDE? (CL:CONS NIL NIL)) NIL))))) NIL)))) (CL:PROGN (CL:DEFUN SPLIT (OBJ SEQ CL:&KEY (TEST #'EQL) (INCLUDE? NIL)) (CL:BLOCK SPLIT (CL:BLOCK NIL (GENERIC-SPLIT OBJ SEQ :TEST TEST :INCLUDE? INCLUDE?)))) (CL:SETF (CL:GETHASH #'SPLIT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'OBJ (CL:CONS 'SEQ (CL:CONS 'CL:&KEY (CL:CONS (CL:CONS 'TEST (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'EQL NIL)) NIL)) (CL:CONS (CL:CONS 'INCLUDE? (CL:CONS NIL NIL)) NIL))))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'SPLIT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'GENERIC-SPLIT (CL:CONS 'OBJ (CL:CONS 'SEQ (CL:CONS ':TEST (CL:CONS 'TEST (CL:CONS ':INCLUDE? (CL:CONS 'INCLUDE? NIL))))))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'SPLIT))
  (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'DIGIT-NUMBER NIL) *FUNCTIONALS*))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'DIGIT-NUMBER (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN DIGIT-NUMBER (X) (CL:BLOCK DIGIT-NUMBER (CL:BLOCK NIL (- X #\0)))) (CL:SETF (CL:GETHASH #'DIGIT-NUMBER *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'DIGIT-NUMBER (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '- (CL:CONS 'X (CL:CONS #\0 NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'DIGIT-NUMBER))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'PEEK-DIGIT (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN PEEK-DIGIT (STR) (CL:BLOCK PEEK-DIGIT (CL:BLOCK NIL (CL:LABELS ((G3740 (!) (? ! (CL:PROGN (? (DIGIT-CHAR? !) !))))) (G3740 (PEEK-CHAR STR)))))) (CL:SETF (CL:GETHASH #'PEEK-DIGIT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'PEEK-DIGIT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '& (CL:CONS '! (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'DIGIT-CHAR? (CL:CONS '! NIL)) (CL:CONS '! NIL))) NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'PEEK-DIGIT))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'PEEK-DOT (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN PEEK-DOT (STR) (CL:BLOCK PEEK-DOT (CL:BLOCK NIL (CL:LABELS ((G3741 (!) (? ! (CL:PROGN (== #\. !))))) (G3741 (PEEK-CHAR STR)))))) (CL:SETF (CL:GETHASH #'PEEK-DOT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'PEEK-DOT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '& (CL:CONS '! (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS '! NIL))) NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'PEEK-DOT))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-DECIMAL-PLACES-0 (CL:CONS (CL:CONS 'STR (CL:CONS 'V (CL:CONS 'S NIL))) NIL)))) (CL:PROGN (CL:DEFUN READ-DECIMAL-PLACES-0 (STR V S) (CL:BLOCK READ-DECIMAL-PLACES-0 (CL:BLOCK NIL (? (PEEK-DIGIT STR) (READ-DECIMAL-PLACES-0 STR (+ V (* S (DIGIT-NUMBER (READ-CHAR STR)))) (/ S 10)) V)))) (CL:SETF (CL:GETHASH #'READ-DECIMAL-PLACES-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR (CL:CONS 'V (CL:CONS 'S NIL))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-DECIMAL-PLACES-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'PEEK-DIGIT (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'READ-DECIMAL-PLACES-0 (CL:CONS 'STR (CL:CONS (CL:CONS '+ (CL:CONS 'V (CL:CONS (CL:CONS '* (CL:CONS 'S (CL:CONS (CL:CONS 'DIGIT-NUMBER (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) (CL:CONS (CL:CONS '/ (CL:CONS 'S (CL:CONS 10 NIL))) NIL)))) (CL:CONS 'V NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-DECIMAL-PLACES-0))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-DECIMAL-PLACES (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ-DECIMAL-PLACES (CL:&OPTIONAL (STR *STANDARD-INPUT*)) (CL:BLOCK READ-DECIMAL-PLACES (CL:BLOCK NIL (? (CL:LABELS ((G3742 (!) (? ! (DIGIT-CHAR? !)))) (G3742 (PEEK-CHAR STR))) (READ-DECIMAL-PLACES-0 STR 0 0.1))))) (CL:SETF (CL:GETHASH #'READ-DECIMAL-PLACES *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-DECIMAL-PLACES (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'LET (CL:CONS '! (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS '? (CL:CONS '! (CL:CONS (CL:CONS 'DIGIT-CHAR? (CL:CONS '! NIL)) NIL))) NIL)))) (CL:CONS (CL:CONS 'READ-DECIMAL-PLACES-0 (CL:CONS 'STR (CL:CONS 0 (CL:CONS 0.1 NIL)))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-DECIMAL-PLACES))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-INTEGER-0 (CL:CONS (CL:CONS 'STR (CL:CONS 'V NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ-INTEGER-0 (STR V) (CL:BLOCK READ-INTEGER-0 (CL:BLOCK NIL (? (PEEK-DIGIT STR) (READ-INTEGER-0 STR (+ (* V 10) (DIGIT-NUMBER (READ-CHAR STR)))) V)))) (CL:SETF (CL:GETHASH #'READ-INTEGER-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR (CL:CONS 'V NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-INTEGER-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'PEEK-DIGIT (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'READ-INTEGER-0 (CL:CONS 'STR (CL:CONS (CL:CONS '+ (CL:CONS (CL:CONS '* (CL:CONS 'V (CL:CONS 10 NIL))) (CL:CONS (CL:CONS 'DIGIT-NUMBER (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) (CL:CONS 'V NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-INTEGER-0))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-INTEGER (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ-INTEGER (CL:&OPTIONAL (STR *STANDARD-INPUT*)) (CL:BLOCK READ-INTEGER (CL:BLOCK NIL (? (PEEK-DIGIT STR) (INTEGER (READ-INTEGER-0 STR 0)))))) (CL:SETF (CL:GETHASH #'READ-INTEGER *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-INTEGER (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'PEEK-DIGIT (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'INTEGER (CL:CONS (CL:CONS 'READ-INTEGER-0 (CL:CONS 'STR (CL:CONS 0 NIL))) NIL)) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-INTEGER))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-NUMBER (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ-NUMBER (CL:&OPTIONAL (STR *STANDARD-INPUT*)) (CL:BLOCK READ-NUMBER (CL:BLOCK NIL (* (? (== #\- (PEEK-CHAR STR)) (CL:PROGN (READ-CHAR STR) -1) 1) (+ (READ-INTEGER STR) (CL:LABELS ((G3743 (~G1518) (? ~G1518 ~G1518 0))) (G3743 (? (PEEK-DOT STR) (? (READ-CHAR STR) (READ-DECIMAL-PLACES STR)))))))))) (CL:SETF (CL:GETHASH #'READ-NUMBER *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-NUMBER (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '* (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\- (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS -1 NIL))) (CL:CONS 1 NIL)))) (CL:CONS (CL:CONS '+ (CL:CONS (CL:CONS 'READ-INTEGER (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1518 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1518 (CL:CONS '~G1518 (CL:CONS 0 NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'PEEK-DOT (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'READ-DECIMAL-PLACES (CL:CONS 'STR NIL)) NIL))) NIL))) NIL)) NIL))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-NUMBER))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'TOKEN-IS-QUOTE? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN TOKEN-IS-QUOTE? (X) (CL:BLOCK TOKEN-IS-QUOTE? (CL:BLOCK NIL (CL:LABELS ((G3744 (~G1547) (? ~G1547 ~G1547 (CL:LABELS ((G3745 (~G1548) (? ~G1548 ~G1548 (CL:LABELS ((G3746 (~G1549) (? ~G1549 ~G1549 (CL:LABELS ((G3747 (~G1550) (? ~G1550 ~G1550 (EQ X 'ACCENT-CIRCONFLEX)))) (G3747 (EQ X 'QUASIQUOTE-SPLICE)))))) (G3746 (EQ X 'QUASIQUOTE)))))) (G3745 (EQ X 'BACKQUOTE)))))) (G3744 (EQ X 'CL:QUOTE)))))) (CL:SETF (CL:GETHASH #'TOKEN-IS-QUOTE? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'TOKEN-IS-QUOTE? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1547 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CL:QUOTE NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1547 (CL:CONS '~G1547 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1548 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'BACKQUOTE NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1548 (CL:CONS '~G1548 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1549 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'QUASIQUOTE NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1549 (CL:CONS '~G1549 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1550 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'QUASIQUOTE-SPLICE NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1550 (CL:CONS '~G1550 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'ACCENT-CIRCONFLEX NIL)) NIL))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'TOKEN-IS-QUOTE?))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%READ-CLOSING-BRACKET? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN %READ-CLOSING-BRACKET? (X) (CL:BLOCK %READ-CLOSING-BRACKET? (CL:BLOCK NIL (CL:LABELS ((G3748 (~G1551) (? ~G1551 ~G1551 (CL:LABELS ((G3749 (~G1552) (? ~G1552 ~G1552 (EQ X 'CURLY-BRACKET-CLOSE)))) (G3749 (EQ X 'SQUARE-BRACKET-CLOSE)))))) (G3748 (EQ X 'BRACKET-CLOSE)))))) (CL:SETF (CL:GETHASH #'%READ-CLOSING-BRACKET? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%READ-CLOSING-BRACKET? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1551 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'BRACKET-CLOSE NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1551 (CL:CONS '~G1551 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1552 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SQUARE-BRACKET-CLOSE NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1552 (CL:CONS '~G1552 (CL:CONS (CL:CONS 'EQ (CL:CONS 'X (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CURLY-BRACKET-CLOSE NIL)) NIL))) NIL)))) NIL)))) NIL)))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%READ-CLOSING-BRACKET?))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'SPECIAL-CHAR? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN SPECIAL-CHAR? (X) (CL:BLOCK SPECIAL-CHAR? (CL:BLOCK NIL (CL:LABELS ((G3750 (~G1553) (? ~G1553 ~G1553 (CL:LABELS ((G3751 (~G1554) (? ~G1554 ~G1554 (CL:LABELS ((G3752 (~G1555) (? ~G1555 ~G1555 (CL:LABELS ((G3753 (~G1556) (? ~G1556 ~G1556 (CL:LABELS ((G3754 (~G1557) (? ~G1557 ~G1557 (CL:LABELS ((G3755 (~G1558) (? ~G1558 ~G1558 (CL:LABELS ((G3756 (~G1559) (? ~G1559 ~G1559 (CL:LABELS ((G3757 (~G1560) (? ~G1560 ~G1560 (CL:LABELS ((G3758 (~G1561) (? ~G1561 ~G1561 (CL:LABELS ((G3759 (~G1562) (? ~G1562 ~G1562 (CL:LABELS ((G3760 (~G1563) (? ~G1563 ~G1563 (CL:LABELS ((G3761 (~G1564) (? ~G1564 ~G1564 (CL:LABELS ((G3762 (~G1565) (? ~G1565 ~G1565 (== X #\^)))) (G3762 (== X #\#)))))) (G3761 (== X #\")))))) (G3760 (== X #\;)))))) (G3759 (== X #\:)))))) (G3758 (== X #\,)))))) (G3757 (== X #\`)))))) (G3756 (== X #\')))))) (G3755 (== X #\})))))) (G3754 (== X #\{)))))) (G3753 (== X #\])))))) (G3752 (== X #\[)))))) (G3751 (== X #\))))))) (G3750 (== X #\()))))) (CL:SETF (CL:GETHASH #'SPECIAL-CHAR? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'SPECIAL-CHAR? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1553 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\( NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1553 (CL:CONS '~G1553 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1554 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\) NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1554 (CL:CONS '~G1554 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1555 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\[ NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1555 (CL:CONS '~G1555 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1556 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\] NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1556 (CL:CONS '~G1556 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1557 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\{ NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1557 (CL:CONS '~G1557 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1558 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\} NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1558 (CL:CONS '~G1558 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1559 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\' NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1559 (CL:CONS '~G1559 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1560 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\` NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1560 (CL:CONS '~G1560 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1561 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\, NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1561 (CL:CONS '~G1561 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1562 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\: NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1562 (CL:CONS '~G1562 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1563 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\; NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1563 (CL:CONS '~G1563 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1564 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\" NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1564 (CL:CONS '~G1564 (CL:CONS (CL:CONS 'LET (CL:CONS '~G1565 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\# NIL))) (CL:CONS (CL:CONS '? (CL:CONS '~G1565 (CL:CONS '~G1565 (CL:CONS (CL:CONS '== (CL:CONS 'X (CL:CONS #\^ NIL))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'SPECIAL-CHAR?))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'SYMBOL-CHAR? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN SYMBOL-CHAR? (X) (CL:BLOCK SYMBOL-CHAR? (CL:BLOCK NIL (? (> X 32) (NOT (SPECIAL-CHAR? X)))))) (CL:SETF (CL:GETHASH #'SYMBOL-CHAR? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'SYMBOL-CHAR? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '> (CL:CONS 'X (CL:CONS 32 NIL))) (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'SPECIAL-CHAR? (CL:CONS 'X NIL)) NIL)) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'SYMBOL-CHAR?))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'SKIP-COMMENT (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN SKIP-COMMENT (STR) (CL:BLOCK SKIP-COMMENT (CL:BLOCK NIL (CL:LABELS ((G3763 (C) (? C (CL:PROGN (? (== C 10) (SKIP-SPACES STR) (SKIP-COMMENT STR)))))) (G3763 (READ-CHAR STR)))))) (CL:SETF (CL:GETHASH #'SKIP-COMMENT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'SKIP-COMMENT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'C NIL) (CL:CONS (CL:CONS '& (CL:CONS 'C (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS 'C (CL:CONS 10 NIL))) (CL:CONS (CL:CONS 'SKIP-SPACES (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'SKIP-COMMENT (CL:CONS 'STR NIL)) NIL)))) NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'SKIP-COMMENT))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'SKIP-SPACES (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN SKIP-SPACES (STR) (CL:BLOCK SKIP-SPACES (CL:BLOCK NIL (CL:LABELS ((G3764 (C) (? C (CL:PROGN (? (== #\; C) (CL:PROGN (SKIP-COMMENT STR))) (? (WHITESPACE? C) (CL:PROGN (READ-CHAR STR) (SKIP-SPACES STR))))))) (G3764 (PEEK-CHAR STR)))))) (CL:SETF (CL:GETHASH #'SKIP-SPACES *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'SKIP-SPACES (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'C NIL) (CL:CONS (CL:CONS '& (CL:CONS 'C (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\; (CL:CONS 'C NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'SKIP-COMMENT (CL:CONS 'STR NIL)) NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'WHITESPACE? (CL:CONS 'C NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'SKIP-SPACES (CL:CONS 'STR NIL)) NIL))) NIL))) NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'SKIP-SPACES))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'GET-SYMBOL-0 (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN GET-SYMBOL-0 (STR) (CL:BLOCK GET-SYMBOL-0 (CL:BLOCK NIL (CL:LABELS ((G3765 (C) (? (== #\; C) (CL:PROGN (SKIP-COMMENT STR) (GET-SYMBOL-0 STR)) (? (SYMBOL-CHAR? C) (CL:CONS (CHAR-UPCASE (READ-CHAR STR)) (GET-SYMBOL-0 STR)))))) (G3765 (CHAR-UPCASE (PEEK-CHAR STR))))))) (CL:SETF (CL:GETHASH #'GET-SYMBOL-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'GET-SYMBOL-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'C NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\; (CL:CONS 'C NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'SKIP-COMMENT (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'GET-SYMBOL-0 (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'SYMBOL-CHAR? (CL:CONS 'C NIL)) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'CHAR-UPCASE (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) (CL:CONS (CL:CONS 'GET-SYMBOL-0 (CL:CONS 'STR NIL)) NIL))) NIL))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CHAR-UPCASE (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'GET-SYMBOL-0))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'GET-SYMBOL (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN GET-SYMBOL (STR) (CL:BLOCK GET-SYMBOL (CL:BLOCK NIL (CL:LABELS ((G3766 (C) (? C (CL:PROGN (? (NOT (SPECIAL-CHAR? C)) (CL:PROGN (GET-SYMBOL-0 STR))))))) (G3766 (PEEK-CHAR STR)))))) (CL:SETF (CL:GETHASH #'GET-SYMBOL *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'GET-SYMBOL (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'C NIL) (CL:CONS (CL:CONS '& (CL:CONS 'C (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '& (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'SPECIAL-CHAR? (CL:CONS 'C NIL)) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'GET-SYMBOL-0 (CL:CONS 'STR NIL)) NIL)) NIL))) NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'GET-SYMBOL))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'GET-SYMBOL-AND-PACKAGE (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN GET-SYMBOL-AND-PACKAGE (STR) (CL:BLOCK GET-SYMBOL-AND-PACKAGE (CL:BLOCK NIL (SKIP-SPACES STR) (CL:LABELS ((G3767 (SYM) (CL:LABELS ((G3768 (!) (? ! (CL:PROGN (? (== ! #\:) (VALUES (CL:LABELS ((G3769 (~G1519) (? ~G1519 ~G1519 T))) (G3769 SYM)) (? (READ-CHAR STR) (GET-SYMBOL STR))) (VALUES NIL SYM)))))) (G3768 (PEEK-CHAR STR))))) (G3767 (GET-SYMBOL STR)))))) (CL:SETF (CL:GETHASH #'GET-SYMBOL-AND-PACKAGE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'GET-SYMBOL-AND-PACKAGE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'SKIP-SPACES (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'SYM NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '& (CL:CONS '! (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS '! (CL:CONS #\: NIL))) (CL:CONS (CL:CONS 'VALUES (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1519 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1519 (CL:CONS '~G1519 (CL:CONS T NIL)))) NIL)) NIL)) (CL:CONS 'SYM NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'GET-SYMBOL (CL:CONS 'STR NIL)) NIL))) NIL))) (CL:CONS (CL:CONS 'VALUES (CL:CONS NIL (CL:CONS 'SYM NIL))) NIL)))) NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'GET-SYMBOL (CL:CONS 'STR NIL)) NIL)) NIL)))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'GET-SYMBOL-AND-PACKAGE))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-STRING-0 (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-STRING-0 (STR) (CL:BLOCK READ-STRING-0 (CL:BLOCK NIL (CL:LABELS ((G3770 (C) (? (NOT (== C #\")) (CL:PROGN (CL:CONS (? (== C #\\) (READ-CHAR STR) C) (READ-STRING-0 STR)))))) (G3770 (READ-CHAR STR)))))) (CL:SETF (CL:GETHASH #'READ-STRING-0 *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-STRING-0 (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'C NIL) (CL:CONS (CL:CONS '& (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS '== (CL:CONS 'C (CL:CONS #\" NIL))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS 'C (CL:CONS #\\ NIL))) (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS 'C NIL)))) (CL:CONS (CL:CONS 'READ-STRING-0 (CL:CONS 'STR NIL)) NIL))) NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-STRING-0))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-STRING (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-STRING (STR) (CL:BLOCK READ-STRING (CL:BLOCK NIL (LIST-STRING (READ-STRING-0 STR))))) (CL:SETF (CL:GETHASH #'READ-STRING *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-STRING (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LIST-STRING (CL:CONS (CL:CONS 'READ-STRING-0 (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-STRING))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-COMMENT-BLOCK (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-COMMENT-BLOCK (STR) (CL:BLOCK READ-COMMENT-BLOCK (CL:BLOCK NIL (CL:BLOCK NIL (CL:PROGN (CL:TAGBODY ~G1566 (? (NOT (NOT (? (== #\| (READ-CHAR STR)) (== #\# (PEEK-CHAR STR))))) (CL:RETURN-FROM NIL (CL:PROGN (READ-CHAR STR)))) NIL (CL:GO ~G1566))))))) (CL:SETF (CL:GETHASH #'READ-COMMENT-BLOCK *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-COMMENT-BLOCK (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET* (CL:CONS NIL (CL:CONS (CL:CONS 'CL:TAGBODY (CL:CONS '~G1566 (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\| (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS '== (CL:CONS #\# (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:RETURN (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) NIL)) NIL))) (CL:CONS NIL (CL:CONS (CL:CONS 'CL:GO (CL:CONS '~G1566 NIL)) NIL))))) NIL))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-COMMENT-BLOCK))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'LIST-NUMBER? (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN LIST-NUMBER? (X) (CL:BLOCK LIST-NUMBER? (CL:BLOCK NIL (? (CL:LABELS ((G3771 (~G1521) (? ~G1521 ~G1521 (DIGIT-CHAR? (CL:CAR X))))) (G3771 (? (CL:CDR X) (CL:LABELS ((G3772 (~G1520) (? ~G1520 ~G1520 (== #\. (CL:CAR X))))) (G3772 (== #\- (CL:CAR X))))))) (? (CL:CDR X) (EVERY #'(CL:LAMBDA (_) (CL:LABELS ((G3773 (~G1587) (? ~G1587 ~G1587 (== #\. _)))) (G3773 (DIGIT-CHAR? _)))) (CL:CDR X)) T))))) (CL:SETF (CL:GETHASH #'LIST-NUMBER? *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'LIST-NUMBER? (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1521 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1521 (CL:CONS '~G1521 (CL:CONS (CL:CONS 'DIGIT-CHAR? (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1520 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1520 (CL:CONS '~G1520 (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS '== (CL:CONS #\- (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL))) NIL)) NIL))) NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'EVERY (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '_ NIL) (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'DIGIT-CHAR? (CL:CONS '_ NIL)) (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS '_ NIL))) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) NIL))) (CL:CONS T NIL)))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'LIST-NUMBER?))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-TOKEN (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-TOKEN (STR) (CL:BLOCK READ-TOKEN (CL:BLOCK NIL (CL:LABELS ((G3774 (!) (? ! (CL:PROGN (CL:LABELS ((G3775 (~G1567) (CL:LABELS ((G3776 (~G1568) (? (NOT (EQ (CL:CAR ~G1567) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1567))) (CL:LABELS ((G3777 (PKG) (CL:LABELS ((G3778 (~G1569) (CL:LABELS ((G3779 (SYM) (VALUES (? (? SYM (? (NOT (CL:CDR SYM)) (== #\. (CL:CAR SYM)))) 'DOT (? SYM (? (LIST-NUMBER? SYM) 'NUMBER 'SYMBOL) (CL:LABELS ((G3780 (~G1523) (? (CHARACTER== ~G1523 #\() 'BRACKET-OPEN (CHARACTER== ~G1523 #\)) 'BRACKET-CLOSE (CHARACTER== ~G1523 #\[) 'SQUARE-BRACKET-OPEN (CHARACTER== ~G1523 #\]) 'SQUARE-BRACKET-CLOSE (CHARACTER== ~G1523 #\{) 'CURLY-BRACKET-OPEN (CHARACTER== ~G1523 #\}) 'CURLY-BRACKET-CLOSE (CHARACTER== ~G1523 #\') 'CL:QUOTE (CHARACTER== ~G1523 #\`) 'BACKQUOTE (CHARACTER== ~G1523 #\^) 'ACCENT-CIRCONFLEX (CHARACTER== ~G1523 #\") 'DBLQUOTE (CHARACTER== ~G1523 #\,) (? (== #\@ (PEEK-CHAR STR)) (? (READ-CHAR STR) 'QUASIQUOTE-SPLICE) 'QUASIQUOTE) (CHARACTER== ~G1523 #\#) (CL:LABELS ((G3781 (~G1522) (? (CHARACTER== ~G1522 #\\) 'CHAR (CHARACTER== ~G1522 #\x) 'HEXNUM (CHARACTER== ~G1522 #\') 'CL:FUNCTION (CHARACTER== ~G1522 #\|) (READ-COMMENT-BLOCK STR) (ERROR "Invalid character after '#'.")))) (G3781 (READ-CHAR STR))) (CHARACTER== ~G1523 -1) 'EOF))) (G3780 (READ-CHAR STR))))) PKG SYM))) (G3779 (CL:CAR ~G1569))))) (G3778 (CL:LABELS ((G3782 (~G1588) (? ~G1588 ~G1588 (%ERROR "Not enough VALUES.")))) (G3782 (CL:CDR ~G1568))))))) (G3777 (CL:CAR ~G1568))))) (G3776 (CL:CDR ~G1567))))) (G3775 !)))))) (G3774 (GET-SYMBOL-AND-PACKAGE STR)))))) (CL:SETF (CL:GETHASH #'READ-TOKEN *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-TOKEN (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '& (CL:CONS '! (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS '~G1567 (CL:CONS '! NIL)) (CL:CONS (CL:CONS '~G1568 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1567 NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'UNLESS (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1567 NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'VALUES NIL)) NIL))) (CL:CONS (CL:CONS 'ERROR (CL:CONS "VALUES expected instead of ~A." (CL:CONS '~G1567 NIL))) NIL))) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'PKG (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1568 NIL)) NIL)) (CL:CONS (CL:CONS '~G1569 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1568 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'SYM (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1569 NIL)) NIL)) NIL) (CL:CONS (CL:CONS 'VALUES (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '? (CL:CONS 'SYM (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'SYM NIL)) NIL)) (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'SYM NIL)) NIL))) NIL))) NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'DOT NIL)) (CL:CONS (CL:CONS '? (CL:CONS 'SYM (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'LIST-NUMBER? (CL:CONS 'SYM NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'NUMBER NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SYMBOL NIL)) NIL)))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1523 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\( NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'BRACKET-OPEN NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\) NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'BRACKET-CLOSE NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\[ NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SQUARE-BRACKET-OPEN NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\] NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SQUARE-BRACKET-CLOSE NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\{ NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CURLY-BRACKET-OPEN NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\} NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CURLY-BRACKET-CLOSE NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\' NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CL:QUOTE NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\` NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'BACKQUOTE NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\^ NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'ACCENT-CIRCONFLEX NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\" NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'DBLQUOTE NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\, NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\@ (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'QUASIQUOTE-SPLICE NIL)) NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'QUASIQUOTE NIL)) NIL)))) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS #\# NIL))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1522 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1522 (CL:CONS #\\ NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CHAR NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1522 (CL:CONS #\x NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'HEXNUM NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1522 (CL:CONS #\' NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CL:FUNCTION NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1522 (CL:CONS #\| NIL))) (CL:CONS (CL:CONS 'READ-COMMENT-BLOCK (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'ERROR (CL:CONS "Invalid character after '#'." NIL)) NIL)))))))))) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) (CL:CONS (CL:CONS 'CHARACTER== (CL:CONS '~G1523 (CL:CONS -1 NIL))) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'EOF NIL)) NIL))))))))))))))))))))))))))) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) NIL)) NIL)))) NIL)))) (CL:CONS 'PKG (CL:CONS 'SYM NIL)))) NIL))) NIL))) NIL)))) NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'GET-SYMBOL-AND-PACKAGE (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-TOKEN))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-SLOT-VALUE (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-SLOT-VALUE (X) (CL:BLOCK READ-SLOT-VALUE (CL:BLOCK NIL (? X (? (CL:CDR X) (CL:CONS 'SLOT-VALUE (CL:CONS (READ-SLOT-VALUE (BUTLAST X)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS (MAKE-SYMBOL (CL:CAR (CL:LAST X))) NIL)) NIL))) (? (STRING? (CL:CAR X)) (MAKE-SYMBOL (CL:CAR X)) (CL:CAR X))))))) (CL:SETF (CL:GETHASH #'READ-SLOT-VALUE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-SLOT-VALUE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS 'X (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'BACKQUOTE (CL:CONS (CL:CONS 'SLOT-VALUE (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS (CL:CONS 'READ-SLOT-VALUE (CL:CONS (CL:CONS 'BUTLAST (CL:CONS 'X NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS (CL:CONS 'MAKE-SYMBOL (CL:CONS (CL:CONS 'CL:CAR (CL:CONS (CL:CONS 'CL:LAST (CL:CONS 'X NIL)) NIL)) NIL)) NIL)) NIL)) NIL))) NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'STRING? (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL)) (CL:CONS (CL:CONS 'MAKE-SYMBOL (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL)))) NIL)))) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-SLOT-VALUE))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-SYMBOL-OR-SLOT-VALUE (CL:CONS (CL:CONS 'SYM (CL:CONS 'PKG NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ-SYMBOL-OR-SLOT-VALUE (SYM PKG) (CL:BLOCK READ-SYMBOL-OR-SLOT-VALUE (CL:BLOCK NIL (CL:LABELS ((G3783 (!) (? (? (CL:CDR !) (? (CL:CAR !) (CL:CAR (CL:LAST !)))) (READ-SLOT-VALUE !) (MAKE-SYMBOL (LIST-STRING SYM) (? (NOT PKG) NIL (EQ T PKG) *KEYWORD-PACKAGE* (CL:FIND-PACKAGE (LIST-STRING PKG))))))) (G3783 (CL:MAPCAR #'(CL:LAMBDA (_) (? _ (LIST-STRING _))) (SPLIT #\. SYM))))))) (CL:SETF (CL:GETHASH #'READ-SYMBOL-OR-SLOT-VALUE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'SYM (CL:CONS 'PKG NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-SYMBOL-OR-SLOT-VALUE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '! NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '! NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS (CL:CONS 'CL:LAST (CL:CONS '! NIL)) NIL)) NIL))) NIL))) (CL:CONS (CL:CONS 'READ-SLOT-VALUE (CL:CONS '! NIL)) (CL:CONS (CL:CONS 'MAKE-SYMBOL (CL:CONS (CL:CONS 'LIST-STRING (CL:CONS 'SYM NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS 'PKG NIL)) (CL:CONS NIL (CL:CONS (CL:CONS 'EQ (CL:CONS T (CL:CONS 'PKG NIL))) (CL:CONS '*KEYWORD-PACKAGE* (CL:CONS (CL:CONS 'CL:FIND-PACKAGE (CL:CONS (CL:CONS 'LIST-STRING (CL:CONS 'PKG NIL)) NIL)) NIL)))))) NIL))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:MAPCAR (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '_ NIL) (CL:CONS (CL:CONS '? (CL:CONS '_ (CL:CONS (CL:CONS 'LIST-STRING (CL:CONS '_ NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'SPLIT (CL:CONS #\. (CL:CONS 'SYM NIL))) NIL))) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-SYMBOL-OR-SLOT-VALUE))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-ATOM (CL:CONS (CL:CONS 'STR (CL:CONS 'TOKEN (CL:CONS 'PKG (CL:CONS 'SYM NIL)))) NIL)))) (CL:PROGN (CL:DEFUN READ-ATOM (STR TOKEN PKG SYM) (CL:BLOCK READ-ATOM (CL:BLOCK NIL (CL:LABELS ((G3784 (~G1524) (? (EQ ~G1524 'DBLQUOTE) (READ-STRING STR) (EQ ~G1524 'CHAR) (READ-CHAR STR) (EQ ~G1524 'NUMBER) (CL:LABELS ((G3785 (S) (PRINC (LIST-STRING SYM) S) (CL:PROGN (READ-NUMBER S)))) (G3785 (MAKE-STRING-STREAM))) (EQ ~G1524 'HEXNUM) (READ-HEX STR) (EQ ~G1524 'CL:FUNCTION) (CL:CONS 'CL:FUNCTION (CL:CONS (READ-EXPR STR) NIL)) (EQ ~G1524 'SYMBOL) (READ-SYMBOL-OR-SLOT-VALUE SYM PKG) (ERROR "Syntax error: token ~A, sym ~A." TOKEN SYM)))) (G3784 TOKEN))))) (CL:SETF (CL:GETHASH #'READ-ATOM *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR (CL:CONS 'TOKEN (CL:CONS 'PKG (CL:CONS 'SYM NIL)))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-ATOM (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1524 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1524 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'DBLQUOTE NIL)) NIL))) (CL:CONS (CL:CONS 'READ-STRING (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1524 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CHAR NIL)) NIL))) (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1524 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'NUMBER NIL)) NIL))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'S NIL) (CL:CONS (CL:CONS 'PRINC (CL:CONS (CL:CONS 'LIST-STRING (CL:CONS 'SYM NIL)) (CL:CONS 'S NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'READ-NUMBER (CL:CONS 'S NIL)) NIL)) NIL))) NIL)) (CL:CONS (CL:CONS 'MAKE-STRING-STREAM NIL) NIL)) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1524 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'HEXNUM NIL)) NIL))) (CL:CONS (CL:CONS 'READ-HEX (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1524 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CL:FUNCTION NIL)) NIL))) (CL:CONS (CL:CONS 'BACKQUOTE (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS (CL:CONS 'READ-EXPR (CL:CONS 'STR NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1524 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SYMBOL NIL)) NIL))) (CL:CONS (CL:CONS 'READ-SYMBOL-OR-SLOT-VALUE (CL:CONS 'SYM (CL:CONS 'PKG NIL))) (CL:CONS (CL:CONS 'ERROR (CL:CONS "Syntax error: token ~A, sym ~A." (CL:CONS 'TOKEN (CL:CONS 'SYM NIL)))) NIL)))))))))))))) NIL)) NIL)) (CL:CONS 'TOKEN NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-ATOM))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-QUOTE (CL:CONS (CL:CONS 'STR (CL:CONS 'TOKEN NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ-QUOTE (STR TOKEN) (CL:BLOCK READ-QUOTE (CL:BLOCK NIL (CL:LIST TOKEN (READ-EXPR STR))))) (CL:SETF (CL:GETHASH #'READ-QUOTE *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR (CL:CONS 'TOKEN NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-QUOTE (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:LIST (CL:CONS 'TOKEN (CL:CONS (CL:CONS 'READ-EXPR (CL:CONS 'STR NIL)) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-QUOTE))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-SET-LISTPROP (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-SET-LISTPROP (STR) (CL:BLOCK READ-SET-LISTPROP (CL:BLOCK NIL (CL:LABELS ((G3786 (!) (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* (CL:CONS (STREAM-LOCATION-ID !) (CL:CONS (MEMORIZED-NUMBER (STREAM-LOCATION-COLUMN !)) (MEMORIZED-NUMBER (STREAM-LOCATION-LINE !)))))))) (G3786 (STREAM-INPUT-LOCATION STR)))))) (CL:SETF (CL:GETHASH #'READ-SET-LISTPROP *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-SET-LISTPROP (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'STREAM-LOCATION-ID (CL:CONS '! NIL)) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'MEMORIZED-NUMBER (CL:CONS (CL:CONS 'STREAM-LOCATION-COLUMN (CL:CONS '! NIL)) NIL)) (CL:CONS (CL:CONS 'MEMORIZED-NUMBER (CL:CONS (CL:CONS 'STREAM-LOCATION-LINE (CL:CONS '! NIL)) NIL)) NIL))) NIL))) NIL))) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'STREAM-INPUT-LOCATION (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-SET-LISTPROP))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-CONS (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-CONS (STR) (CL:BLOCK READ-CONS (CL:BLOCK NIL (CL:LABELS ((G3787 (LOC) (CL:LABELS ((G3788 (LINE) (CL:LABELS ((G3789 (COLUMN) (CL:LABELS ((G3790 (FILE) (CL:LABELS ((ERR (_) (ERROR "~A in form starting at line ~A, column ~A in file ~A." _ LINE COLUMN FILE)) (F (TOKEN PKG SYM) (? (NOT (%READ-CLOSING-BRACKET? TOKEN)) (CL:PROGN (CL:CONS (CL:LABELS ((G3791 (~G1526) (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* *DEFAULT-LISTPROP*)) (CL:LABELS ((G3792 (~G1529) (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* ~G1526)) ~G1529)) (G3792 (CL:PROGN (CL:LABELS ((G3793 (~G1525) (? (EQ ~G1525 'BRACKET-OPEN) (READ-CONS-SLOT STR) (EQ ~G1525 'SQUARE-BRACKET-OPEN) (CL:CONS 'SQUARE (READ-CONS-SLOT STR)) (EQ ~G1525 'CURLY-BRACKET-OPEN) (CL:CONS 'CURLY (READ-CONS-SLOT STR)) (? (TOKEN-IS-QUOTE? TOKEN) (READ-QUOTE STR TOKEN) (READ-ATOM STR TOKEN PKG SYM))))) (G3793 TOKEN))))))) (G3791 *DEFAULT-LISTPROP*)) (CL:LABELS ((G3794 (~G1528) (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* *DEFAULT-LISTPROP*)) (CL:LABELS ((G3795 (~G1535) (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* ~G1528)) ~G1535)) (G3795 (CL:PROGN (CL:LABELS ((G3796 (!) (? ! (CL:LABELS ((G3797 (~G1530) (CL:LABELS ((G3798 (~G1531) (? (NOT (EQ (CL:CAR ~G1530) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1530))) (CL:LABELS ((G3799 (TOKEN) (CL:LABELS ((G3800 (~G1532) (CL:LABELS ((G3801 (PKG) (CL:LABELS ((G3802 (~G1533) (CL:LABELS ((G3803 (SYM) (? (EQ 'DOT TOKEN) (CL:LABELS ((G3804 (X) (CL:LABELS ((G3805 (~G1538) (CL:LABELS ((G3806 (~G1539) (? (NOT (EQ (CL:CAR ~G1538) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1538))) (CL:LABELS ((G3807 (TOKEN) (CL:LABELS ((G3808 (~G1540) (CL:LABELS ((G3809 (PKG) (CL:LABELS ((G3810 (~G1541) (CL:LABELS ((G3811 (SYM) (CL:LABELS ((G3812 (~G1527) (? ~G1527 ~G1527 (ERR "Only one value allowed after dotted cons")))) (G3812 (%READ-CLOSING-BRACKET? TOKEN))) X)) (G3811 (CL:CAR ~G1541))))) (G3810 (CL:LABELS ((G3813 (~G1544) (? ~G1544 ~G1544 (%ERROR "Not enough VALUES.")))) (G3813 (CL:CDR ~G1540))))))) (G3809 (CL:CAR ~G1540))))) (G3808 (CL:LABELS ((G3814 (~G1543) (? ~G1543 ~G1543 (%ERROR "Not enough VALUES.")))) (G3814 (CL:CDR ~G1539))))))) (G3807 (CL:CAR ~G1539))))) (G3806 (CL:CDR ~G1538))))) (G3805 (READ-TOKEN STR))))) (G3804 (READ-EXPR STR))) (F TOKEN PKG SYM)))) (G3803 (CL:CAR ~G1533))))) (G3802 (CL:LABELS ((G3815 (~G1537) (? ~G1537 ~G1537 (%ERROR "Not enough VALUES.")))) (G3815 (CL:CDR ~G1532))))))) (G3801 (CL:CAR ~G1532))))) (G3800 (CL:LABELS ((G3816 (~G1536) (? ~G1536 ~G1536 (%ERROR "Not enough VALUES.")))) (G3816 (CL:CDR ~G1531))))))) (G3799 (CL:CAR ~G1531))))) (G3798 (CL:CDR ~G1530))))) (G3797 !)) (ERR "Missing closing bracket")))) (G3796 (READ-TOKEN STR)))))))) (G3794 *DEFAULT-LISTPROP*))))))) (CL:LABELS ((G3817 (~G1571) (CL:LABELS ((G3818 (~G1572) (? (NOT (EQ (CL:CAR ~G1571) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1571))) (CL:LABELS ((G3819 (TOKEN) (CL:LABELS ((G3820 (~G1573) (CL:LABELS ((G3821 (PKG) (CL:LABELS ((G3822 (~G1574) (CL:LABELS ((G3823 (SYM) (? (EQ TOKEN 'DOT) (CL:CONS 'CL:CONS (READ-CONS STR)) (F TOKEN PKG SYM)))) (G3823 (CL:CAR ~G1574))))) (G3822 (CL:LABELS ((G3824 (~G1590) (? ~G1590 ~G1590 (%ERROR "Not enough VALUES.")))) (G3824 (CL:CDR ~G1573))))))) (G3821 (CL:CAR ~G1573))))) (G3820 (CL:LABELS ((G3825 (~G1589) (? ~G1589 ~G1589 (%ERROR "Not enough VALUES.")))) (G3825 (CL:CDR ~G1572))))))) (G3819 (CL:CAR ~G1572))))) (G3818 (CL:CDR ~G1571))))) (G3817 (READ-TOKEN STR)))))) (G3790 (STREAM-LOCATION-ID LOC))))) (G3789 (STREAM-LOCATION-COLUMN LOC))))) (G3788 (STREAM-LOCATION-LINE LOC))))) (G3787 (STREAM-INPUT-LOCATION STR)))))) (CL:SETF (CL:GETHASH #'READ-CONS *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-CONS (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'LOC NIL) (CL:CONS (CL:CONS 'LET (CL:CONS 'LINE (CL:CONS (CL:CONS 'STREAM-LOCATION-LINE (CL:CONS 'LOC NIL)) (CL:CONS (CL:CONS 'WITH (CL:CONS (CL:CONS 'COLUMN (CL:CONS (CL:CONS 'STREAM-LOCATION-COLUMN (CL:CONS 'LOC NIL)) (CL:CONS 'FILE (CL:CONS (CL:CONS 'STREAM-LOCATION-ID (CL:CONS 'LOC NIL)) (CL:CONS 'ERR (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '_ NIL) (CL:CONS (CL:CONS 'ERROR (CL:CONS "~A in form starting at line ~A, column ~A in file ~A." (CL:CONS '_ (CL:CONS 'LINE (CL:CONS 'COLUMN (CL:CONS 'FILE NIL)))))) NIL)) NIL)) (CL:CONS 'F (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'TOKEN (CL:CONS 'PKG (CL:CONS 'SYM NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS '%READ-CLOSING-BRACKET? (CL:CONS 'TOKEN NIL)) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1526 NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS '*DEFAULT-LISTPROP* NIL))) NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1529 NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS '~G1526 NIL))) NIL)) (CL:CONS '~G1529 NIL))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1525 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1525 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'BRACKET-OPEN NIL)) NIL))) (CL:CONS (CL:CONS 'READ-CONS-SLOT (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1525 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SQUARE-BRACKET-OPEN NIL)) NIL))) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SQUARE NIL)) (CL:CONS (CL:CONS 'READ-CONS-SLOT (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1525 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CURLY-BRACKET-OPEN NIL)) NIL))) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CURLY NIL)) (CL:CONS (CL:CONS 'READ-CONS-SLOT (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'TOKEN-IS-QUOTE? (CL:CONS 'TOKEN NIL)) (CL:CONS (CL:CONS 'READ-QUOTE (CL:CONS 'STR (CL:CONS 'TOKEN NIL))) (CL:CONS (CL:CONS 'READ-ATOM (CL:CONS 'STR (CL:CONS 'TOKEN (CL:CONS 'PKG (CL:CONS 'SYM NIL))))) NIL)))) NIL)))))))) NIL)) NIL)) (CL:CONS 'TOKEN NIL)) NIL)) NIL)) NIL))) NIL)) (CL:CONS '*DEFAULT-LISTPROP* NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1528 NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS '*DEFAULT-LISTPROP* NIL))) NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1535 NIL) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS '~G1528 NIL))) NIL)) (CL:CONS '~G1535 NIL))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '? (CL:CONS '! (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1530 NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1531 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1530 NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'VALUES NIL)) NIL))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'ERROR (CL:CONS "VALUES expected instead of ~A." (CL:CONS '~G1530 NIL))) NIL)) NIL))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'TOKEN NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1532 NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'PKG NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1533 NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'SYM NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'DOT NIL)) (CL:CONS 'TOKEN NIL))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1538 NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1539 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1538 NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'VALUES NIL)) NIL))) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'ERROR (CL:CONS "VALUES expected instead of ~A." (CL:CONS '~G1538 NIL))) NIL)) NIL))) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'TOKEN NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1540 NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'PKG NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1541 NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'SYM NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1527 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1527 (CL:CONS '~G1527 (CL:CONS (CL:CONS 'ERR (CL:CONS "Only one value allowed after dotted cons" NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS '%READ-CLOSING-BRACKET? (CL:CONS 'TOKEN NIL)) NIL)) (CL:CONS 'X NIL))) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1541 NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1544 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1544 (CL:CONS '~G1544 (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1540 NIL)) NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1540 NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1543 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1543 (CL:CONS '~G1543 (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1539 NIL)) NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1539 NIL)) NIL)) NIL))) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1538 NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-TOKEN (CL:CONS 'STR NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-EXPR (CL:CONS 'STR NIL)) NIL)) (CL:CONS (CL:CONS 'F (CL:CONS 'TOKEN (CL:CONS 'PKG (CL:CONS 'SYM NIL)))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1533 NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1537 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1537 (CL:CONS '~G1537 (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1532 NIL)) NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1532 NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1536 NIL) (CL:CONS (CL:CONS '? (CL:CONS '~G1536 (CL:CONS '~G1536 (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1531 NIL)) NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1531 NIL)) NIL)) NIL))) NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1530 NIL)) NIL)) NIL)) NIL)) (CL:CONS '! NIL)) (CL:CONS (CL:CONS 'ERR (CL:CONS "Missing closing bracket" NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-TOKEN (CL:CONS 'STR NIL)) NIL)) NIL)) NIL)) NIL))) NIL)) (CL:CONS '*DEFAULT-LISTPROP* NIL)) NIL))) NIL)) NIL))) NIL)) NIL)) NIL)))))))) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS '~G1571 (CL:CONS (CL:CONS 'READ-TOKEN (CL:CONS 'STR NIL)) NIL)) (CL:CONS (CL:CONS '~G1572 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1571 NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'UNLESS (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1571 NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'VALUES NIL)) NIL))) (CL:CONS (CL:CONS 'ERROR (CL:CONS "VALUES expected instead of ~A." (CL:CONS '~G1571 NIL))) NIL))) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'TOKEN (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1572 NIL)) NIL)) (CL:CONS (CL:CONS '~G1573 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1572 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'PKG (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1573 NIL)) NIL)) (CL:CONS (CL:CONS '~G1574 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1573 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'SYM (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1574 NIL)) NIL)) NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS 'TOKEN (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'DOT NIL)) NIL))) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CL:CONS NIL)) (CL:CONS (CL:CONS 'READ-CONS (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS 'F (CL:CONS 'TOKEN (CL:CONS 'PKG (CL:CONS 'SYM NIL)))) NIL)))) NIL))) NIL))) NIL))) NIL)))) NIL))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'STREAM-INPUT-LOCATION (CL:CONS 'STR NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-CONS))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-CONS-SLOT (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-CONS-SLOT (STR) (CL:BLOCK READ-CONS-SLOT (CL:BLOCK NIL (READ-SET-LISTPROP STR) (CL:LABELS ((G3826 (~G1545) (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* *DEFAULT-LISTPROP*)) (CL:LABELS ((G3827 (~G1581) (CL:PROGN (CL:SETQ *DEFAULT-LISTPROP* ~G1545)) ~G1581)) (G3827 (CL:PROGN (CL:LABELS ((G3828 (!) (? (== #\. (PEEK-CHAR STR)) (CL:PROGN (READ-CHAR STR) (CL:LABELS ((G3829 (~G1576) (CL:LABELS ((G3830 (~G1577) (? (NOT (EQ (CL:CAR ~G1576) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1576))) (CL:LABELS ((G3831 (TOKEN) (CL:LABELS ((G3832 (~G1578) (CL:LABELS ((G3833 (PKG) (CL:LABELS ((G3834 (~G1579) (CL:LABELS ((G3835 (SYM) (READ-SLOT-VALUE (CL:LIST ! (LIST-STRING SYM))))) (G3835 (CL:CAR ~G1579))))) (G3834 (CL:LABELS ((G3836 (~G1592) (? ~G1592 ~G1592 (%ERROR "Not enough VALUES.")))) (G3836 (CL:CDR ~G1578))))))) (G3833 (CL:CAR ~G1578))))) (G3832 (CL:LABELS ((G3837 (~G1591) (? ~G1591 ~G1591 (%ERROR "Not enough VALUES.")))) (G3837 (CL:CDR ~G1577))))))) (G3831 (CL:CAR ~G1577))))) (G3830 (CL:CDR ~G1576))))) (G3829 (READ-TOKEN STR)))) !))) (G3828 (READ-CONS STR)))))))) (G3826 *DEFAULT-LISTPROP*))))) (CL:SETF (CL:GETHASH #'READ-CONS-SLOT *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-CONS-SLOT (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'READ-SET-LISTPROP (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'LET (CL:CONS '~G1545 (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS '*DEFAULT-LISTPROP* NIL))) NIL)) (CL:CONS (CL:CONS 'LET (CL:CONS '~G1581 (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS '== (CL:CONS #\. (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'READ-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS '~G1576 (CL:CONS (CL:CONS 'READ-TOKEN (CL:CONS 'STR NIL)) NIL)) (CL:CONS (CL:CONS '~G1577 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1576 NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'UNLESS (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1576 NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'VALUES NIL)) NIL))) (CL:CONS (CL:CONS 'ERROR (CL:CONS "VALUES expected instead of ~A." (CL:CONS '~G1576 NIL))) NIL))) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'TOKEN (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1577 NIL)) NIL)) (CL:CONS (CL:CONS '~G1578 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1577 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'PKG (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1578 NIL)) NIL)) (CL:CONS (CL:CONS '~G1579 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1578 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'SYM (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1579 NIL)) NIL)) NIL) (CL:CONS (CL:CONS 'READ-SLOT-VALUE (CL:CONS (CL:CONS 'CL:LIST (CL:CONS '! (CL:CONS (CL:CONS 'LIST-STRING (CL:CONS 'SYM NIL)) NIL))) NIL)) NIL))) NIL))) NIL))) NIL)))) NIL))) (CL:CONS '! NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'READ-CONS (CL:CONS 'STR NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '*DEFAULT-LISTPROP* (CL:CONS '~G1545 NIL))) NIL)) (CL:CONS '~G1581 NIL))))) NIL))))) NIL)))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-CONS-SLOT))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-EXPR (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-EXPR (STR) (CL:BLOCK READ-EXPR (CL:BLOCK NIL (CL:LABELS ((G3838 (~G1582) (CL:LABELS ((G3839 (~G1583) (? (NOT (EQ (CL:CAR ~G1582) 'VALUES)) (CL:PROGN (ERROR "VALUES expected instead of ~A." ~G1582))) (CL:LABELS ((G3840 (TOKEN) (CL:LABELS ((G3841 (~G1584) (CL:LABELS ((G3842 (PKG) (CL:LABELS ((G3843 (~G1585) (CL:LABELS ((G3844 (SYM) (CL:LABELS ((G3845 (~G1546) (? (EQ ~G1546 NIL) NIL (EQ ~G1546 'EOF) NIL (EQ ~G1546 'BRACKET-OPEN) (READ-CONS-SLOT STR) (EQ ~G1546 'SQUARE-BRACKET-OPEN) (CL:CONS 'SQUARE (READ-CONS-SLOT STR)) (EQ ~G1546 'CURLY-BRACKET-OPEN) (CL:CONS 'CURLY (READ-CONS-SLOT STR)) (? (TOKEN-IS-QUOTE? TOKEN) (READ-QUOTE STR TOKEN) (READ-ATOM STR TOKEN PKG SYM))))) (G3845 TOKEN)))) (G3844 (CL:CAR ~G1585))))) (G3843 (CL:LABELS ((G3846 (~G1594) (? ~G1594 ~G1594 (%ERROR "Not enough VALUES.")))) (G3846 (CL:CDR ~G1584))))))) (G3842 (CL:CAR ~G1584))))) (G3841 (CL:LABELS ((G3847 (~G1593) (? ~G1593 ~G1593 (%ERROR "Not enough VALUES.")))) (G3847 (CL:CDR ~G1583))))))) (G3840 (CL:CAR ~G1583))))) (G3839 (CL:CDR ~G1582))))) (G3838 (READ-TOKEN STR)))))) (CL:SETF (CL:GETHASH #'READ-EXPR *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-EXPR (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS '~G1582 (CL:CONS (CL:CONS 'READ-TOKEN (CL:CONS 'STR NIL)) NIL)) (CL:CONS (CL:CONS '~G1583 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1582 NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'UNLESS (CL:CONS (CL:CONS 'EQ (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1582 NIL)) (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'VALUES NIL)) NIL))) (CL:CONS (CL:CONS 'ERROR (CL:CONS "VALUES expected instead of ~A." (CL:CONS '~G1582 NIL))) NIL))) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'TOKEN (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1583 NIL)) NIL)) (CL:CONS (CL:CONS '~G1584 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1583 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'PKG (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1584 NIL)) NIL)) (CL:CONS (CL:CONS '~G1585 (CL:CONS (CL:CONS '|\|| (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1584 NIL)) (CL:CONS (CL:CONS '%ERROR (CL:CONS "Not enough VALUES." NIL)) NIL))) NIL)) NIL)) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'SYM (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1585 NIL)) NIL)) NIL) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '~G1546 NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1546 (CL:CONS NIL NIL))) (CL:CONS NIL (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1546 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'EOF NIL)) NIL))) (CL:CONS NIL (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1546 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'BRACKET-OPEN NIL)) NIL))) (CL:CONS (CL:CONS 'READ-CONS-SLOT (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1546 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SQUARE-BRACKET-OPEN NIL)) NIL))) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'SQUARE NIL)) (CL:CONS (CL:CONS 'READ-CONS-SLOT (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS 'EQ (CL:CONS '~G1546 (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CURLY-BRACKET-OPEN NIL)) NIL))) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'CURLY NIL)) (CL:CONS (CL:CONS 'READ-CONS-SLOT (CL:CONS 'STR NIL)) NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'TOKEN-IS-QUOTE? (CL:CONS 'TOKEN NIL)) (CL:CONS (CL:CONS 'READ-QUOTE (CL:CONS 'STR (CL:CONS 'TOKEN NIL))) (CL:CONS (CL:CONS 'READ-ATOM (CL:CONS 'STR (CL:CONS 'TOKEN (CL:CONS 'PKG (CL:CONS 'SYM NIL))))) NIL)))) NIL)))))))))))) NIL)) NIL)) (CL:CONS 'TOKEN NIL)) NIL))) NIL))) NIL))) NIL)))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-EXPR))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) NIL)))) (CL:PROGN (CL:DEFUN READ (CL:&OPTIONAL (STR *STANDARD-INPUT*)) (CL:BLOCK READ (CL:BLOCK NIL (SKIP-SPACES STR) (? (PEEK-CHAR STR) (READ-EXPR STR))))) (CL:SETF (CL:GETHASH #'READ *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&OPTIONAL (CL:CONS (CL:CONS 'STR (CL:CONS '*STANDARD-INPUT* NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'SKIP-SPACES (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'READ-EXPR (CL:CONS 'STR NIL)) NIL))) NIL)))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'READ-ALL (CL:CONS (CL:CONS 'STR NIL) NIL)))) (CL:PROGN (CL:DEFUN READ-ALL (STR) (CL:BLOCK READ-ALL (CL:BLOCK NIL (SKIP-SPACES STR) (? (PEEK-CHAR STR) (CL:CONS (READ STR) (READ-ALL STR)))))) (CL:SETF (CL:GETHASH #'READ-ALL *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'STR NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'READ-ALL (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'SKIP-SPACES (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'READ (CL:CONS 'STR NIL)) (CL:CONS (CL:CONS 'READ-ALL (CL:CONS 'STR NIL)) NIL))) NIL))) NIL)))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'READ-ALL))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%LOAD-R (CL:CONS (CL:CONS 'S NIL) NIL)))) (CL:PROGN (CL:DEFUN %LOAD-R (S) (CL:BLOCK %LOAD-R (CL:BLOCK NIL (? (PEEK-CHAR S) (CL:PROGN (CL:CONS (READ S) (%LOAD-R S))))))) (CL:SETF (CL:GETHASH #'%LOAD-R *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'S NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%LOAD-R (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'PEEK-CHAR (CL:CONS 'S NIL)) (CL:CONS (CL:CONS 'CL:PROGN (CL:CONS (CL:CONS 'CL:CONS (CL:CONS (CL:CONS 'READ (CL:CONS 'S NIL)) (CL:CONS (CL:CONS '%LOAD-R (CL:CONS 'S NIL)) NIL))) NIL)) NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%LOAD-R))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%EXPAND (CL:CONS (CL:CONS 'X NIL) NIL)))) (CL:PROGN (CL:DEFUN %EXPAND (X) (CL:BLOCK %EXPAND (CL:BLOCK NIL (CL:LABELS ((G3848 (!) (? (EQUAL X !) X (%EXPAND !)))) (G3848 (QUASIQUOTE-EXPAND (MACROEXPAND (DOT-EXPAND X)))))))) (CL:SETF (CL:GETHASH #'%EXPAND *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%EXPAND (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS '! NIL) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'EQUAL (CL:CONS 'X (CL:CONS '! NIL))) (CL:CONS 'X (CL:CONS (CL:CONS '%EXPAND (CL:CONS '! NIL)) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'QUASIQUOTE-EXPAND (CL:CONS (CL:CONS 'MACROEXPAND (CL:CONS (CL:CONS 'DOT-EXPAND (CL:CONS 'X NIL)) NIL)) NIL)) NIL)) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%EXPAND))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS '%LOAD (CL:CONS (CL:CONS 'PATHNAME NIL) NIL)))) (CL:PROGN (CL:DEFUN %LOAD (PATHNAME) (CL:BLOCK %LOAD (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS '%LOAD (CL:CONS PATHNAME NIL))) (CL:BLOCK NIL (CL:LABELS ((G3849 (~G1597) (CL:LABELS ((G3850 (I) (CL:TAGBODY ~G1595 (? (NOT ~G1597) (CL:GO ~G1596)) (CL:SETQ I (CL:CAR ~G1597)) (%EVAL (%EXPAND I)) (CL:SETQ ~G1597 (CL:CDR ~G1597)) (CL:GO ~G1595) ~G1596 (CL:RETURN-FROM NIL (CL:PROGN))))) (G3850 NIL)))) (G3849 (CL:LABELS ((G3851 (S) (CL:LABELS ((G3852 (~G1598) (CLOSE S) ~G1598)) (G3852 (CL:PROGN (%LOAD-R S)))))) (G3851 (OPEN PATHNAME :DIRECTION 'INPUT))))))))) (CL:SETF (CL:GETHASH #'%LOAD *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'PATHNAME NIL) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS '%LOAD (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'PRINT-DEFINITION (CL:CONS (CL:CONS 'BACKQUOTE (CL:CONS (CL:CONS '%LOAD (CL:CONS (CL:CONS 'QUASIQUOTE (CL:CONS 'PATHNAME NIL)) NIL)) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'LET (CL:CONS '~G1597 (CL:CONS (CL:CONS 'WITH-OPEN-FILE (CL:CONS 'S (CL:CONS (CL:CONS 'OPEN (CL:CONS 'PATHNAME (CL:CONS ':DIRECTION (CL:CONS (CL:CONS 'CL:QUOTE (CL:CONS 'INPUT NIL)) NIL)))) (CL:CONS (CL:CONS '%LOAD-R (CL:CONS 'S NIL)) NIL)))) (CL:CONS (CL:CONS 'LET* (CL:CONS (CL:CONS (CL:CONS 'I (CL:CONS NIL NIL)) NIL) (CL:CONS (CL:CONS 'CL:TAGBODY (CL:CONS '~G1595 (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'NOT (CL:CONS '~G1597 NIL)) (CL:CONS (CL:CONS 'CL:GO (CL:CONS '~G1596 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS 'I (CL:CONS (CL:CONS 'CL:CAR (CL:CONS '~G1597 NIL)) NIL))) (CL:CONS (CL:CONS '%EVAL (CL:CONS (CL:CONS '%EXPAND (CL:CONS 'I NIL)) NIL)) (CL:CONS (CL:CONS 'CL:SETQ (CL:CONS '~G1597 (CL:CONS (CL:CONS 'CL:CDR (CL:CONS '~G1597 NIL)) NIL))) (CL:CONS (CL:CONS 'CL:GO (CL:CONS '~G1595 NIL)) (CL:CONS '~G1596 (CL:CONS (CL:CONS 'CL:RETURN-FROM (CL:CONS NIL (CL:CONS (CL:CONS 'CL:PROGN NIL) NIL))) NIL))))))))) NIL))) NIL)))) NIL))) NIL)))) NIL))) NIL)))) (CL:RETURN-FROM NIL '%LOAD))
  
negative.code: (CL:PROGN (CL:DEFUN QUASIQUOTE-EXPAND (X) (CL:CAR (%QUASIQUOTE-EXPAND (CL:LIST X)))) (CL:SETF (CL:GETHASH #'QUASIQUOTE-EXPAND *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS (CL:CONS '%QUASIQUOTE-EXPAND (CL:CONS (CL:CONS 'CL:LIST (CL:CONS 'X NIL)) NIL)) NIL)) NIL))))
  (CL:SETQ *QUASIQUOTE-EXPAND* #'QUASIQUOTE-EXPAND)
  (CL:PROGN (CL:DEFUN IDENTITY (X) X) (CL:SETF (CL:GETHASH #'IDENTITY *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'X NIL) (CL:CONS 'X NIL))))
  (CL:PROGN (CL:DEFUN + (CL:&REST X) (CL:LABELS ((G3655 (A) (? A (CL:APPLY (? (CONS? A) #'APPEND (STRING? A) #'STRING-CONCAT #'NUMBER+) X) (? (CL:CDR X) (CL:APPLY #'+ (CL:CDR X)))))) (G3655 (CL:CAR X)))) (CL:SETF (CL:GETHASH #'+ *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&REST (CL:CONS 'X NIL)) (CL:CONS (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS (CL:CONS (CL:CONS 'A NIL) (CL:CONS (CL:CONS '? (CL:CONS 'A (CL:CONS (CL:CONS 'CL:APPLY (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CONS? (CL:CONS 'A NIL)) (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'APPEND NIL)) (CL:CONS (CL:CONS 'STRING? (CL:CONS 'A NIL)) (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'STRING-CONCAT NIL)) (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'NUMBER+ NIL)) NIL)))))) (CL:CONS 'X NIL))) (CL:CONS (CL:CONS '? (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CL:APPLY (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS '+ NIL)) (CL:CONS (CL:CONS 'CL:CDR (CL:CONS 'X NIL)) NIL))) NIL))) NIL)))) NIL)) NIL)) (CL:CONS (CL:CONS 'CL:CAR (CL:CONS 'X NIL)) NIL)) NIL))))
  (CL:PROGN (CL:DEFUN - (CL:&REST X) (CL:APPLY #'NUMBER- X)) (CL:SETF (CL:GETHASH #'- *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'CL:&REST (CL:CONS 'X NIL)) (CL:CONS (CL:CONS 'CL:APPLY (CL:CONS (CL:CONS 'CL:FUNCTION (CL:CONS 'NUMBER- NIL)) (CL:CONS 'X NIL))) NIL))))
  (CL:BLOCK NIL (PRINT-DEFINITION (CL:CONS 'DEFUN (CL:CONS 'FUNCALL (CL:CONS (CL:CONS 'FUN (CL:CONS 'CL:&REST (CL:CONS 'ARGS NIL))) NIL)))) (CL:PROGN (CL:DEFUN FUNCALL (FUN CL:&REST ARGS) (CL:BLOCK FUNCALL (CL:BLOCK NIL (CL:APPLY FUN ARGS)))) (CL:SETF (CL:GETHASH #'FUNCALL *FUNCTION-ATOM-SOURCES*) (CL:CONS (CL:CONS 'FUN (CL:CONS 'CL:&REST (CL:CONS 'ARGS NIL))) (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS 'FUNCALL (CL:CONS (CL:CONS 'CL:BLOCK (CL:CONS NIL (CL:CONS (CL:CONS 'CL:APPLY (CL:CONS 'FUN (CL:CONS 'ARGS NIL))) NIL))) NIL))) NIL)))) (CL:RETURN-FROM NIL 'FUNCALL))
  (CL:SETQ *FUNCTIONALS* (%NCONC (CL:CONS 'CAAR (CL:CONS 'CADR (CL:CONS 'CDAR (CL:CONS 'CDDR (CL:CONS 'CADAR (CL:CONS 'CDDAR (CL:CONS 'CAADAR (CL:CONS 'CADDR (CL:CONS 'CAADR (CL:CONS 'CDDDR (CL:CONS 'CDADAR (CL:CONS 'CAADDR (CL:CONS 'CADDAR (CL:CONS 'CDDDAR (CL:CONS 'CDDDDR (CL:CONS 'CADADR (CL:CONS 'CADADDR (CL:CONS 'CADADAR (CL:CONS 'CDDADAR NIL))))))))))))))))))) *FUNCTIONALS*))
  