perm filename CYCOMF.LAP[1,LMM] blob sn#034831 filedate 1973-04-12 generic text, type T, neo UTF8
(LAP ORDPAIR SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(CALL 2 (E LEQ)) 
	(JUMPE 1 TAG2) 
	(MOVE 2 0 P) 
	(MOVE 1 -1 P) 
	(CALL 2 (E CONS)) 
	(JRST 0 TAG1) 
TAG2 	(MOVE 2 -1 P) 
	(MOVE 1 0 P) 
	(CALL 2 (E CONS)) 
TAG3 
TAG1 	(SUB P (C 0 0 2 2)) 
	(POPJ P) 
	NIL 

(LAP EDGEMARK SUBR) 
	(PUSH P 1) 
	(HLRZ@ 1 1) 
	(CALL 1 (E NODEMARK)) 
	(PUSH P 1) 
	(HRRZ@ 1 -1 P) 
	(CALL 1 (E NODEMARK)) 
	(MOVE 2 1) 
	(POP P 1) 
	(SUB P (C 0 0 1 1)) 
	(JCALL 2 (E ORDPAIR)) 
	NIL 

(LAP LABEL1C SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P 3) 
	(CAIE 2 (QUOTE 0)) 
	(JRST 0 TAG2) 
	(MOVE 2 3) 
	(CALL 2 (E CONS)) 
	(MOVEI 2 (QUOTE NIL)) 
	(CALL 2 (E XCONS)) 
	(CALL 1 (E NCONS)) 
	(JRST 0 TAG1) 
TAG2 	(CALL 1 (E SIZE)) 
	(MOVE 2 -1 P) 
	(CALL 2 (E EQUAL)) 
	(JUMPE 1 TAG3) 
	(MOVE 2 0 P) 
	(MOVEI 1 (QUOTE NIL)) 
	(CALL 2 (E CONS)) 
	(MOVE 2 -2 P) 
	(CALL 2 (E XCONS)) 
	(CALL 1 (E NCONS)) 
	(JRST 0 TAG1) 
TAG3 	(HLRZ@ 1 -2 P) 
	(CAIE 1 (QUOTE NODES)) 
	(JRST 0 TAG4) 
	(MOVE 3 0 P) 
	(MOVE 2 -1 P) 
	(HRRZ@ 1 -2 P) 
	(CALL 3 (E LABELN)) 
	(JRST 0 TAG1) 
TAG4 	(HLRZ@ 1 -2 P) 
	(CAIE 1 (QUOTE EDGES)) 
	(JRST 0 TAG5) 
	(MOVE 3 0 P) 
	(MOVE 2 -1 P) 
	(HRRZ@ 1 -2 P) 
	(CALL 3 (E LABELE)) 
	(JRST 0 TAG1) 
TAG5 	(HLRZ@ 1 -2 P) 
	(CAIE 1 (QUOTE MULT)) 
	(JRST 0 TAG6) 
	(HRRZ@ 1 -2 P) 
	(PUSH P 1) 
	(HRRZ@ 1 -3 P) 
	(MOVE 4 -1 P) 
	(MOVE 3 -2 P) 
	(HRRZ@ 2 0 P) 
	(HLRZ@ 1 1) 
	(CALL 4 (E LABELMULT)) 
	(SUB P (C 0 0 1 1)) 
	(JRST 0 TAG1) 
TAG6 	(MOVE 3 0 P) 
	(MOVE 2 -1 P) 
	(MOVE 1 -2 P) 
	(CALL 3 (E LABELUNDEFINEDSTRUC)) 
TAG7 
TAG1 	(SUB P (C 0 0 3 3)) 
	(POPJ P) 
	NIL 

(LAP MAKEMULT SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(CAIE 1 (QUOTE 0)) 
	(JRST 0 TAG2) 
	(MOVEI 1 (QUOTE NIL)) 
	(JRST 0 TAG1) 
TAG2 	(MOVEI 2 (QUOTE 1)) 
	(CALL 2 (E EQUAL)) 
	(JUMPE 1 TAG3) 
	(MOVE 1 0 P) 
	(JRST 0 TAG1) 
TAG3 	(MOVE 2 0 P) 
	(MOVE 1 -1 P) 
	(CALL 2 (E CONS)) 
	(MOVEI 2 (QUOTE MULT)) 
	(CALL 2 (E XCONS)) 
TAG4 
TAG1 	(SUB P (C 0 0 2 2)) 
	(POPJ P) 
	NIL 

(LAP MAKENODES SUBR) 
	(PUSH P 1) 
	(JUMPE 1 TAG1) 
	(MOVE 2 0 P) 
	(MOVEI 1 (QUOTE NODES)) 
	(CALL 2 (E CONS)) 
TAG2 
TAG1 	(SUB P (C 0 0 1 1)) 
	(POPJ P) 
	NIL 

(LAP MAKEEDGES SUBR) 
	(PUSH P 1) 
	(JUMPE 1 TAG1) 
	(MOVE 2 0 P) 
	(MOVEI 1 (QUOTE EDGES)) 
	(CALL 2 (E CONS)) 
TAG2 
TAG1 	(SUB P (C 0 0 1 1)) 
	(POPJ P) 
	NIL 

(LAP LABELMULT SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P 3) 
	(PUSH P 4) 
	(MOVE 1 2) 
	(CALL 1 (E SIZE)) 
	(MOVE 4 -3 P) 
	(MOVEI 3 (QUOTE 0)) 
	(MOVE 2 1) 
	(MOVE 1 -1 P) 
	(CALL 4 (E NUMPARTITIONS)) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 1 -5 P) 
	(JUMPE 1 TAG18) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -4 P) 
	(CALL 1 (E CLCREATE)) 
	(MOVEM 1 -3 P) 
	(CALL 1 (E CDRLIST)) 
	(MOVE 3 -6 P) 
	(MOVE 2 1) 
	(MOVE 1 -8 P) 
	(CALL 3 (E LABELM)) 
	(MOVEM 1 -1 P) 
TAG2 	(MOVE 1 -1 P) 
	(JUMPE 1 TAG15) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -2 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(HLRZ@ 1 1) 
	(PUSH P -4 P) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG3 	(MOVE 1 -2 P) 
	(JUMPE 1 TAG7) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -1 P) 
	(MOVE 1 -3 P) 
	(JUMPE 1 TAG7) 
	(HLRZ@ 1 1) 
	(MOVE 2 -1 P) 
	(MOVEM 1 0 P) 
	(HLRZ@ 1 1) 
	(CALL 2 (E MAKEMULT)) 
	(MOVE 2 -4 P) 
	(CALL 2 (E COMBINE)) 
	(MOVEM 1 -4 P) 
TAG4 
TAG5 	(HRRZ@ 1 -3 P) 
	(MOVEM 1 -3 P) 
TAG6 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG3) 
TAG7 	(MOVE 1 -4 P) 
	(MOVEM 1 -4 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(HLRZ@ 1 -8 P) 
	(PUSH P -9 P) 
	(MOVEM 1 -5 P) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG8 	(MOVE 1 -7 P) 
	(JUMPN 1 TAG33) 
	(JRST 0 TAG12) 
TAG33 	(HLRZ@ 1 -7 P) 
	(MOVEM 1 -1 P) 
	(MOVE 1 -2 P) 
	(JUMPN 1 TAG35) 
	(JRST 0 TAG12) 
TAG35 	(HLRZ@ 1 -2 P) 
	(HLRZ@ 2 1) 
	(MOVEM 1 0 P) 
	(MOVE 1 -18 P) 
	(CALL 2 (E *DIF)) 
	(MOVE 2 -1 P) 
	(CALL 2 (E MAKEMULT)) 
	(MOVE 2 -3 P) 
	(CALL 2 (E COMBINE)) 
	(MOVEM 1 -3 P) 
TAG9 
TAG10 	(HRRZ@ 1 -2 P) 
	(MOVEM 1 -2 P) 
TAG11 	(HRRZ@ 1 -7 P) 
	(MOVEM 1 -7 P) 
	(JRST 0 TAG8) 
TAG12 	(MOVE 1 -3 P) 
	(HRRZ@ 2 -11 P) 
	(HRRZ@ 2 2) 
	(CALL 2 (E CONS)) 
	(MOVE 2 -8 P) 
	(CALL 2 (E XCONS)) 
	(MOVE 2 -9 P) 
	(CALL 2 (E CONS)) 
	(SUB P (C 0 0 9 9)) 
	(MOVEM 1 0 P) 
TAG13 
TAG14 	(HRRZ@ 1 -1 P) 
	(MOVEM 1 -1 P) 
	(JRST 0 TAG2) 
TAG15 
TAG16 
TAG17 	(HRRZ@ 1 -5 P) 
	(MOVEM 1 -5 P) 
	(JRST 0 TAG1) 
TAG18 	(MOVE 1 0 P) 
	(SUB P (C 0 0 10 10)) 
	(POPJ P) 
	NIL 

(LAP LABEL0A SUBR) 
	(PUSH P 1) 
	(PUSH P 2) 
	(PUSH P 3) 
	(PUSH P 4) 
	(PUSH P 5) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
	(HLRZ@ 1 3) 
	(JUMPN 1 TAG9) 
	(EXCH 5 4) 
	(HRRZ@ 4 3) 
	(MOVEI 3 (QUOTE NIL)) 
	(MOVEI 2 (QUOTE NIL)) 
	(MOVE 1 -7 P) 
	(CALL 5 (E COMB1)) 
	(JRST 0 TAG8) 
TAG9 	(HLRZ@ 1 -5 P) 
	(HLRZ@ 1 1) 
	(MOVE 2 -7 P) 
	(HLRZ@ 1 1) 
	(CALL 2 (E DIFF)) 
	(MOVE 5 -4 P) 
	(MOVE 4 -5 P) 
	(MOVE 3 1) 
	(MOVEI 2 (QUOTE NIL)) 
	(MOVE 1 -7 P) 
	(CALL 5 (E COMB)) 
TAG10 
TAG8 	(MOVEM 1 -1 P) 
TAG1 	(MOVE 1 -1 P) 
	(JUMPE 1 TAG4) 
	(HLRZ@ 1 1) 
	(MOVEM 1 -2 P) 
	(HLRZ@ 1 1) 
	(CALLF@ 1 -3 P) 
	(HLRZ@ 2 -2 P) 
	(PUSH P 1) 
	(MOVE 1 -8 P) 
	(CALL 2 (E DIFF)) 
	(CALLF@ 1 -4 P) 
	(HRRZ@ 2 -3 P) 
	(HRRZ@ 2 2) 
	(PUSH P 1) 
	(HRRZ@ 1 -8 P) 
	(HRRZ@ 1 1) 
	(HRRZ@ 1 1) 
	(HLRZ@ 1 1) 
	(CALL 2 (E CONS)) 
	(HRRZ@ 2 -8 P) 
	(HRRZ@ 2 2) 
	(HLRZ@ 2 2) 
	(CALL 2 (E XCONS)) 
	(HRRZ@ 2 -8 P) 
	(HLRZ@ 2 2) 
	(CALL 2 (E XCONS)) 
	(HLRZ@ 2 -8 P) 
	(CALL 2 (E XCONS)) 
	(POP P 2) 
	(CALL 2 (E XCONS)) 
	(POP P 2) 
	(CALL 2 (E XCONS)) 
	(MOVE 2 0 P) 
	(CALL 2 (E CONS)) 
	(MOVEM 1 0 P) 
TAG2 
TAG3 	(HRRZ@ 1 -1 P) 
	(MOVEM 1 -1 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(SUB P (C 0 0 8 8)) 
	(POPJ P) 
	NIL 

(LAP LABELN SUBR) 
	(PUSH P 2) 
	(MOVE 2 3) 
	(PUSH P 1) 
	(PUSH P 3) 
	(CALL 2 (E FINDGROUPNODES)) 
	(MOVEI 5 (QUOTE MAKENODES)) 
	(MOVE 4 -2 P) 
	(MOVE 3 1) 
	(POP P 2) 
	(POP P 1) 
	(SUB P (C 0 0 1 1)) 
	(JCALL 5 (E LABEL0A)) 
	NIL 

(LAP LABELE SUBR) 
	(PUSH P 2) 
	(MOVE 2 3) 
	(PUSH P 1) 
	(PUSH P 3) 
	(CALL 2 (E FINDGROUPEDGES)) 
	(MOVEI 5 (QUOTE MAKEEDGES)) 
	(MOVE 4 -2 P) 
	(MOVE 3 1) 
	(POP P 2) 
	(POP P 1) 
	(SUB P (C 0 0 1 1)) 
	(JCALL 5 (E LABEL0A)) 
	NIL 

(LAP UNCLASS SUBR) 
	(PUSH P 1) 
	(JUMPE 1 TAG5) 
	(HLRZ@ 1 1) 
	(CAIE 1 (QUOTE ?)) 
	(JRST 0 TAG6) 
	(HRRZ@ 1 0 P) 
	(JRST 0 TAG5) 
TAG6 	(HLRZ@ 1 0 P) 
	(CAIE 1 (QUOTE NODES)) 
	(JRST 0 TAG7) 
	(HRRZ@ 1 0 P) 
	(JRST 0 TAG5) 
TAG7 	(HLRZ@ 1 0 P) 
	(CAIE 1 (QUOTE EDGES)) 
	(JRST 0 TAG8) 
	(HRRZ@ 1 0 P) 
	(JRST 0 TAG5) 
TAG8 	(HLRZ@ 1 0 P) 
	(CAIE 1 (QUOTE MULT)) 
	(JRST 0 TAG9) 
	(HRRZ@ 1 0 P) 
	(HLRZ@ 1 1) 
	(PUSH P (C 0 0 (QUOTE 1) 0)) 
	(PUSH P 1) 
	(PUSH P (C 0 0 (QUOTE NIL) 0)) 
TAG1 	(MOVE 2 -1 P) 
	(MOVE 1 -2 P) 
	(CALL 2 (E *GREAT)) 
	(JUMPN 1 TAG4) 
	(PUSH P (C 0 0 TAG14 0)) 
	(PUSH P -1 P) 
	(HRRZ@ 1 -5 P) 
	(HRRZ@ 1 1) 
	(CALL 1 (E UNCLASS)) 
	(MOVEI 2 (QUOTE NIL)) 
	(CALL 2 (E *APPEND)) 
	(PUSH P 1) 
	(MOVNI 6 2) 
	(JCALL 14 (E NCONC)) 
TAG14 	(MOVEM 1 0 P) 
TAG2 
TAG3 	(MOVEI 2 (QUOTE 1)) 
	(MOVE 1 -2 P) 
	(CALL 2 (E *PLUS)) 
	(MOVEM 1 -2 P) 
	(JRST 0 TAG1) 
TAG4 	(MOVE 1 0 P) 
	(SUB P (C 0 0 3 3)) 
	(JRST 0 TAG5) 
TAG9 	(HLRZ@ 1 0 P) 
	(CAIE 1 (QUOTE BOTH)) 
	(JRST 0 TAG15) 
	(HRRZ@ 1 0 P) 
	(HLRZ@ 1 1) 
	(CALL 1 (E UNCLASS)) 
	(PUSH P 1) 
	(HRRZ@ 1 -1 P) 
	(HRRZ@ 1 1) 
	(CALL 1 (E UNCLASS)) 
	(MOVE 2 1) 
	(POP P 1) 
	(CALL 2 (E *APPEND)) 
	(JRST 0 TAG5) 
TAG15 	(MOVEI 2 (QUOTE (ERROR ARG TO UNCLASS))) 
	(MOVE 1 0 P) 
	(CALL 2 (E CONS)) 
	(MOVEI 2 (QUOTE NIL)) 
	(CALL 2 (E PRINT)) 
TAG16 
TAG5 	(SUB P (C 0 0 1 1)) 
	(POPJ P) 
	NIL 

(LAP LUNCLASS SUBR) 
	(MOVE 2 1) 
	(MOVEI 1 (QUOTE UNCLASS)) 
	(JCALL 2 (E MAPCAR)) 
	NIL