Google
 

Trailing-Edge - PDP-10 Archives - klad_sources - klad.sources/macsym.unv
There are 97 other files named macsym.unv in the archive. Click here to see a list.
xg@P C4@ ($
	..NAC==(0		
	IRP A,<
	H  .ACV1 (A)>		
	.ACV3 (\..NAC)C:' b
	TXZ A,<^-<B>>TXZ A,CO,,@ X(
	..TRR==x10		
	RADIX 8
	..NV==1			
	IRP 8A,<
	  .TRV1 (XA)>		
	IFG ..NV-x5,<PRINTX ?TOO MANY ARGUMENTS: A>8
	JSP .A16,.ASSEXT		
	RADIX ..TRRx		
	PURGE ..TRR,..NVURGE ..TRR,Ge@ ,GeLR +I  G$:
	..STR0 G (.DECR0,,<A>,B)DECR0,,<A>,B)I6= @!h
	A==<-1`B<C>+1B<C-D>> 
	IF1,<IFDEF %A ,<PRINTX ?A ALRE@ADY DEFINED>>
	D`EFINE %A (OP,AC,Y,MSK)<
	OP (<AC>,B'Y,MSK)><ACKJn9` qx'
	ERJMP	[rTMSG <? A>
		 JSHLT]
A>
		 JKc  rX'
   IF2,<rx
	IRP A,<
	IFNsDEF A,<EXTERN A
	SUPPRE A>>>M2  R`<A>B<POS(B)><A>B<POS(M7p b &
	HRROI .b@AC2,[ASCIZ \A\]
	MOVEI .AC3,0
	SOUTI .AC3,0
	S:  D`$(
	..STR0 E(.INCR0,,<A>,B)INCR0,,<A>,B)S? a@

	TXO A,<B>
	TXO A,Ut@ Z %V
	..STR1 Z@(..JAN,<d,<C>>,Z`<A>,B,..STR5)
d:B,..STR5)
U N$r
	..STR1 N (..JE,<C>,<A>,B,..STR3)<A>,U8 R@%
	..STR1R`(..JN,<C>,<A>,B,..STR3)<A>,U:
	..STR1 X(..JNA3,<C>,<A>,B,..STR4)<A>U:~  ]@%p
	..STR1 ]`(..JNO,<d,<C>>,^<A>,B,..STR5)
d:B,..STR5)
U? W%:
	..STR1 W (..JN,<C>,<A>,B,..STR4)<A>,UN.,@ d &"
	CALL JSERR0
	CALL JSUN.,HA  UN.,HUNEM d`&&
	CALL JSHLT0
	CALL JSUNEMA  UNEMUb( xl
	..JX1==x B		
IFDEF .PSECx@T,<
	.IFN ..JX1,x`ABSOLUTE,<PRINTX yB NOT ABSOLUTE
y 		..JX1==0>
	.IFy@ ..JX1,ABSOLUTE,<y`
	.IF0 <<..JX1>-z1B0>,<	
		JUMPGEz  A,C>,<
	.IF0 z@<<..JX1>+1>,<	
	z`  JUMPE A,C>,<	{
		TXNN (A,..JX{ 1)
		JRST C>>>
	PURGE ..JX1>
I{`FNDEF .PSECT,<
	|.IF0 <<..JX1>-1B0| >,<	
		JUMPGE A|@,C>,<
	.IF0 <<.|`.JX1>+1>,<	
	  J}UMPE A,C>,<	
	} 	TXNN (A,..JX1)
		JRST C>>>
	PURGE ..JX1>
	PUb0  !
	..JX1==@B		
IFDEF .PSEC`T,<
	.IFN ..JX1,
ABSOLUTE,<PRINTX 
 B NOT ABSOLUTE

@		..JX1==0>
	.IF
` ..JX1,ABSOLUTE,<
	.IF0,<<..JX1>-
		JUMPGE<
	..ONEBB)	
	.IF0 ..BT,<
	  SETC M .SAC,A		
	  J@XN (.SAC,..JX1,C`)>,< 
	    TXNN A,..JX1	
	    J RST C>>>
	PURGE@ ..JX1>
IFNDEF .`PSECT,<
	.IF0 <<..JX1>-1B0>,<
		 JUMPGE A,C>,<
@	..ONEB (..BT,B)`	
	.IF0 ..BT,<
	  SETCM .SAC,A	 	
	  JXN (.SAC,.@.JX1,C)>,< 
	`  TXNN A,..JX1	
	  JRST C>>>
	PURGE..JX1>
	..JX1==~ B		
IFDEF .PSEC~@T,<
	.IFN ..JX1,~`ABSOLUTE,<PRINTX B NOT ABSOLUTE
 		..JX1==0>
	.IF@ ..JX1,ABSOLUTE,<`
	.IF0 <<..JX1>-1B0>,<	
		JUMPL  A,C>,<
	.IF0 <@<..JX1>+1>,<	
	` JUMPN A,C>,<	
		TXNE (A,..JX1 )
		JRST C>>>
@	PURGE ..JX1>
IF`NDEF .PSECT,<
	.IF0 <<..JX1>-1B0> ,<	
		JUMPL A,@C>,<
	.IF0 <<..J`X1>+1>,<	
	  JUMPN A,C>,<	
		T XNE (A,..JX1)
	@	JRST C>>>
	PURGE ..JX1>
	PURUbx  V
	..JX1== B		
IFDEF .PSEC@T,<
	.IFN ..JX1,`ABSOLUTE,<PRINTX B NOT ABSOLUTE
 		..JX1==0>
	.IF@ ..JX1,ABSOLUTE,<`
	.IF0 <<..JX1>-1B0>,<
		JUMPL  A,C>,<
	..ONEB @(..BT,B)	
	.IF0` ..BT,<
	  SETCM .SAC,A		
	  JX E (.SAC,..JX1,C)@>,< 
	    TXNE `A,..JX1	
	    JRST C>>>
	PURGE  ..JX1>
IFNDEF .P@SECT,<
	.IF0 <<.`.JX1>-1B0>,<
		J	UMPL A,C>,<
	.	 .ONEB (..BT,B)	
	.IF0 ..BT,<
	 	` SETCM .SAC,A		

	  JXE (.SAC,..J
 X1,C)>,< 
	    
@TXNE A,..JX1	
	
`    JRST C>>>
	PURGE ..JX1>
	Y>
@ 4`#(
	..STR0 5(..LDB,A,B,C)..LDB,A,B,C)[8@ S`1B<<A>-1>-1B<B><<A>-1>[>!` T "<A-<A/B>*B><A-<A/B[?7 T`
   ..MX1U==B			
IFDEF .PU SECT,<
   .IFN .U@.MX1,ABSOLUTE,<
U`	MOVE A,[B]>
 V  .IF ..MX1,ABSOLV UTE,<
	..MX2==0	V@	
	IFE <..MX1>B5V`3,<
	W..MX2==1
	  MOVEI A,..MXW 1>	
	IFE ..MX2,<W@		
	IFE <..MX1>BW`17,<
	  ..MX2==1X
	  MOVSI A,(..X MX1)>>	
	IFE ..MX@X2,<		
	IFE <<..X`MX1>B53-^O777777>Y,<
	  ..MX2==1
Y 	  HRROI A,<..MXY@1>>>	
	IFE ..MX2Y`,<		
	IFE <<..MXZ1>B17-^O777777B17Z >,<
	Z@..MX2==1
	  HRLOI A,(..MZ`X1-^O777777)>> 
[	IFE ..MX2,<		
	[   MOVE A,[..MX1][@>	
	>>

IFNDEF[` .PSECT,<
	..MX2\==0		
	IFE <..MX\ 1>B53,<
	  ..MX2\@==1
	  MOVEI A,\`..MX1>	
	IFE ..M]X2,<		
	IFE <..M] X1>B17,<
	  ..MX]@2==1
	  MOVSI A]`,(..MX1)>>	
	IFE^ ..MX2,<		
	IFE ^ <<..MX1>B53-^O777^@777>,<
	  ..MX2=^`=1
	  HRROI A,<_..MX1>>>	
	IFE ._ .MX2,<		
	IFE <<_@..MX1>B17-^O77777_`7B17>,<
	  ..MX2`==1
	  HRLOI A,` (..MX1-^O777777)>`@> 
	IFE ..MX2,<	``	
	  MOVE A,[..aMX1]>	
>
	PURGE ..MX1,..MX2RGE[N^= @!v
	A==C	`	
	IF1,<IFDEF %A,<PRINTX ?A ALR EADY DEFINED>>
	@DEFINE %A (OP,AC`,Y,MSK)<
	OP (<AC>,B'Y,MSK)><A_CL@ I $L
	..STR0 I@(.OPST1,<A>,<B>,C)1,<A>,<B>_CLV K@$^
	..STR0 K`(.OPST2,<A>,<B>,C)2,<A>,<B>`@ a
,TQ  a
,Q a
,*9Q a
,>(Q  a
,>(Q a
,k{Q a
,m3Q a
-J8Q @a
-iQ a
-}SQ @a
.Z7Q a
.\yQ a= c &
   IFNB c@<A>,<
	TMSG <Ac`>>
	CALL JSMSG0>
	CALL JSMSG0a4\G N(z
	..PGV0=NH=.		
	.JBVER=:13Nh7		
	LOC	.JBVER	O	
	BYTE	(3)D(9)O(A(6)B(18)C
	.ORG	..PGV0		
.a>Mm R<POINT WIDR (B),A,POS(B)>B),A,POS(B)>a? Q@
<^L<<A>&<-<A>>>><<A>&<dA  de  ,~e&:x a&
	JRST RSKP
	JRST RSeN^A  eN^g4X1 h(Z
	.NAC==0	
	IRP A,<
	  P	(USH P,A		
	  .N	HAC=.NAC+1>		
	.N	h1==.NAC
	PUSH P,
[Z [CAIA		
		AOS
( -.N1(P)	
	  IRP
H A,<
		.N1=.N1-
h1
		MOVE A,-.N1(P)>  
		SUB P,[(.NAC,,.NAC]  
		POPJ P,]]  
		g$;8 A@$
	..STR1 A`(..TQC,,<A>,B,..STR4)<A>,B,.g%{R >#r
	..STR1 > (..TQO,,<A>,B,..STR4)<A>,B,.g',W : #T
	..STR1 :@(..TQZ,,<A>,B,..STR4)<A>,B,.gR^h9 sx'/
	..STKR=t=10		
	RADIX 8
t8	..STKN==0
	IRP tXA,<
	  .STKV1 (txA)>
	JSP .A16,.uSTKST
	 ..STKN,,u8..STKN
	RADIX ..uXSTKR
	PURGE ..STuxKN,..STKR,..STKQ
gR~TKR,..STKQ
	..STR0 7`(..DPB,A,B,C)..DPB,A,B,C)i7p a &
	HRROI .a`AC1,[ASCIZ \A\]
	PSOUTZ\A\]
	    ..Sn TR1 (..TY,C,<A>,B,..STR3)<A>,iF p '
	    ..Sp@TR1 (..TY,CA,<A>,B,..STR3)<A>iFP n`&x
	    ..SoTR1 (..TY,CE,<A>,B,..STR3)<A>iF` o@&~
	    ..So`TR1 (..TY,CN,<A>,B,..STR3)<A>iFp e&*
	    ..Se TR1 (..TY,N,<A>,B,..STR3)<A>,iFt g &<
	    ..Sg@TR1 (..TY,NA,<A>,B,..STR3)<A>iFtP e`&0
	    ..SfTR1 (..TY,NE,<A>,B,..STR3)<A>iFu` f@&6
	    ..Sf`TR1 (..TY,NN,<A>,B,..STR3)<A>iFx h&B
	    ..Sh TR1 (..TY,O,<A>,B,..STR3)<A>,iF| j &T
	    ..Sj@TR1 (..TY,OA,<A>,B,..STR3)<A>iF|P h`&H
	    ..SiTR1 (..TY,OE,<A>,B,..STR3)<A>iF}` i@&N
	    ..Si`TR1 (..TY,ON,<A>,B,..STR3)<A>iGP k&Z
	    ..Sk TR1 (..TY,Z,<A>,B,..STR3)<A>,iGT m &l
	    ..Sm@TR1 (..TY,ZA,<A>,B,..STR3)<A>iGTP k`&`
	    ..SlTR1 (..TY,ZE,<A>,B,..STR3)<A>iGU` l@&f
	    ..Sl`TR1 (..TY,ZN,<A>,B,..STR3)<A>iK4@ zx'e
	..TRR=={10		
	RADIX 8
	{8..NV==1			
	IRP {XA,<
	  .TRV1 ({xA)>		
	JSP .A16,|.TRSET		
	 ..NV-|81,,..NV-1
	RADIX|X ..TRR		
	PURGE ..TRR,..NVURGE ib m@l
		..TX(C,A,<B>)..TX(Cib ox
		..TX(CA,A,<B>).TX(CibP np
		..TX(CE,A,<B>).TX(Cib` n@t
		..TX(CN,A,<B>).TX(Cibp g@<
		..TX(N,A,<B>)..TX(Nibt iH
		..TX(NA,A,<B>).TX(NibtP h@
		..TX(NE,A,<B>).TX(Nibu` h@D
		..TX(NN,A,<B>).TX(Nibx i@L
		..TX(O,A,<B>)..TX(Oib| kX
		..TX(OA,A,<B>).TX(Oib|P jP
		..TX(OE,A,<B>).TX(Oib}` j@T
		..TX(ON,A,<B>).TX(OicP k@\
		..TX(Z,A,<B>)..TX(ZicT mh
		..TX(ZA,A,<B>).TX(ZicTP l`
		..TX(ZE,A,<B>).TX(ZicU` l@d
		..TX(ZN,A,<B>).TX(Zm$,YP'm$-X5Q |m$-Z7Q xm$.zQ po&  Q<^L<-<<A>_<^L<A>>>-1>>>q? b@
	TXC A,<B>
	TXC A,:h !*
	A,T:&@ 8 #N
	..TSIZ 8@(..PST,C)
	.CAS8`E ..PST,<<
		MOV9EM A,B>,<
		HR9 RM A,B>,<
		HR9@LM A,B>,<
		DP9`B A,[POINTR (B,C)]>>INTR (B,:<;Y 3`#"
   DEFIN4E ..CNS2 (NEW,OLD4 )<
	  OLD>			
	..CNS ()>			
	:L;Y 1@#
   DEFIN1`E ..CNS (ARG)<
	2..CNS2 <ARG>,>
2 
   DEFINE ..CNS22@ (NEW,OLD)<
	DEF2`INE ..CNS (ARG)<
	  ..CNS2 <ARG>,3 <OLD'NEW>>>
   OLD'NEW>>>
   :TH [ %Z
	..JNA3 (A,C,D)JNA3 :TI [`%h
	..TSAC \(..ACT,C)
	.IF0\  ..ACT,<
	  SETC\@M .SAC,C	
	  JX\`E (.SAC,D,<B>)>],<	
	  JXO (C,D,<B>)>O (C,:TP N`%
	..TSAC O(..ACT,B)	
	.IFO 0 ..ACT,<
	  ..TO@SIZ (..PST,C)	
O`	  .CASE ..PST,<<P
		SKIPN B	
		P JRST A>,<
		HRRP@Z .SAC,B	
		JUMP`PE .SAC,A>,<
		QHLRZ .SAC,B	
		Q JUMPE .SAC,A>,<
		MOVE .SAC,B	
		JXE (.SAC,C,<RA>)>>>,<
	  JXE (B,C,<A>)>E:U` S %4
	..TSAC S@(..ACT,B)	
	.IFS`0 ..ACT,<
	  ..TTSIZ (..PST,C)
	T   .CASE ..PST,<<
		SKIPE B	
		JT`RST A>,<
		HRRZU .SAC,B	
		JUMPU N .SAC,A>,<
		HU@LRZ .SAC,B	
		JU`UMPN .SAC,A>,<
V		MOVE .SAC,B	
V 		JXN (.SAC,C,<V@A>)>>>,<
	  JXN (B,C,<A>)>N :Uh) X@%N
	..TSAC X`(..ACT,B)
	.IF0Y ..ACT,<
	  SETCY M .SAC,B	
	  JXY@N (.SAC,C,<A>)>Y`,<	
	  JXF (B,C,<A>)>F (B,:Ukh ^@%t
	..JN (A,C,D)..JN (:Uki _%x
	..JE (<B>,C,D)JE (<:dH@ 5@#8
	..TSIZ 5`(..PST,C)
	.CAS6E ..PST,<<
		MOV6 E A,B>,<
		HRR6@Z A,B>,<
		HLR6`Z A,B>,<
		LDB7 A,[POINTR (B,C)]>>INTR (B,:}i1 `!X
	A==<<<-<B>>&<B>>&<1B<^L<B>>>>>&<1B<;LH  "

	IFNDEF @C,<PRINTX C IS `NOT DEFINED
	   A (<B>,D,.FWORD  )>	
	IFDEF C,<
	IFNDEF %C,<
	 `  A (<B>,D,C)!>	
	IFDEF %C,<
	  %C (A,<B>,D,C)>>A,<B>,;LH !`"H

	..NS==0"			
	IRP C,<..N" S=..NS+1>	
	IFE "@..NS,<PRINTX ?EMP"`TY STRUCTURE LIST#, A>
	IFE ..NS-# 1,<		
	  ..STR0 #@(A,<B>,<C>,D)#`>
	IFG ..NS-1,<	$	
	..ICNS			
	.$ .CNS (<E (A,<B$@>,,>) 
	IRP C,<$`		
	  IFNDEF C,%<PRINTX C NOT DE% FINED>
	  IFDEF %@C,<
	  IFNDEF %%`C,<
	  ..CNS (<&,C,D>)>	
	  IF& DEF %C,<
	  %C&@ (..STR2,,D,C)>&` 
	  ..CNS (<)>)'		
	  ..GCNS		
' 	  ..ICNS		
	  .'@.CNS (<E (A,<B'`>>) 
	  IFNDEF %(C,<
	  ..CNS (<( ,C,D>)>	
	  IF(@DEF %C,<
	  %C(` (..STR2,,D,C)>)>> 
	..CNS (<,,)>)		
	..GCNS>);LI )@"L
	..CNS (<,C,B>).CNS (;LI *"b

	IFDIF <* D><F>,<
	  IFN*@B <D>,<
	    A*` (<B>,D,..MSK)	+
	    IFNB <F>,+ <PRINTX C AND E+@ ARE IN DIFFERENT+` WORDS>>
	  ..MS,K==0>		
	IFNB <, F>,<
	  ..MSK=..MSK!<E>>MSK=..;LJ ,`"r

	IFDIF <-D><F>,<	
	  IF- NB <D>,<
	    -@A (<B>,D,..MSK)-`>	
	  ..MSK==0>	.	
	IFNB <F>,<
. 	  ..MSK=..MSK!<E>>MSK=..MSK!<;LJ .`#

	IFDIF </D><F>,<	
	  IF/ NB <D>,<
	    I/@FNB <F>,<		
		/`A1 (B,D,..MSK)>0 
	    IFB <F>,0 <		
		A2 (B,D0@,..MSK)>> 
	  ..0`MSK==0>		
	IFNB 1<F>,<
	  ..MSK=..MSK!<E>>MSK=;&` B $"
	..TSIZ B@(..PST,C)
	.IF0B` ..PST,<		
		SETCCMM B>,<	
	C@..C TSAC (..ACT,B)	
	C`.IF0 ..ACT,<
		MOVX .SAC,C
D		XORM .SAC,B>,<D 
		..TX(C,B,C)>>..TX(C,B,C);&` >`$
	..TSIZ ?(..PST,C)
	.CAS? E ..PST,<<
		SET?@OM B>,<
		HLLOS?` B>,<
		HRROS @B>,<
	  ..TSAC (@ ..ACT,B)
	  .IF@@0 ..ACT,<
		MOVX@` .SAC,C
		IORM A.SAC,B>,<
		..TX (O,B,C)>>>T;&@ ;#l
	..TSIZ ; (..PST,C)	
	.CA;@SE ..PST,<<
		SE;`TZM B>,<	
		HLL<ZS B>,<	
		HRRZ< S B>,<	
	  ..TS<@AC (..ACT,B)	
	<`  .IF0 ..ACT,<
	=	MOVX .SAC,C	
	= 	ANDCAM .SAC,B>,=@<
		..TX (Z,B,C)>>>TX (Z,B,;&81  !R
	IFNDEF @.PSECT,<
	A==0	`		
	..TSA1==<Z B>		
	  IFE ..TS A1&^O777777777760@,<A==1> 
	>
	I`FDEF .PSECT,<
	A==0			
	..TSA1= =<Z B>		
	.IF .@.TSA1,ABSOLUTE,<	`
	  IFE ..TSA1&^O777777777760,<A ==1>> 
	PURGE ..TSA1>
	PURGE ..;&:= `!6
	A==3			
	IFE <B>+1,< A=0>	
	IFE <B>-@^O777777,<A==1> `
	IFE <B>-^O777777B17,<A==2>7;' c&
   ..TX1c ==C			
IFDEF .Pc@SECT,<
   .IFN .c`.TX1,ABSOLUTE,<
d	TDA B,[C]>
 d@  .IF ..TX1,ABSOLd UTE,<		
	..TX2==d`0		
	IFE <..TX1&e^O777777B17>,<
	e   ..TX2==1		
	  e@TRA B,..TX1>
	e`IFE ..TX2,<		
	IfFE <..TX1&^O77777f 7>,<
	  ..TX2==1f@		
	  TLA B,(.f`.TX1)>>
	IFE ..TgX2,<		
	  IFE <<g ..TX1>B53-^O77777o@7>,< 
	    ..TX3o` (A,B)>>	
	IFEp ..TX2,<		
	  TDp A B,[..TX1]>	
p@	PURGE ..TX1,..TXp`2>>
IFNDEF .PSECqT,<
	..TX2==0		
	IFE <..TX1&^O77q@7777B17>,<
	  ..q`TX2==1		
	  TRAr B,..TX1>
	IFE r ..TX2,<		
	IFE <r@..TX1&^O777777>,<r`
	  ..TX2==1		
s	  TLA B,(..TX1s )>>
	IFE ..TX2,<s@		
	  IFE <<..TXs`1>B53-^O777777>,<t 
	    ..TX3 (At ,B)>>	
	IFE ..Tt@X2,<		
	  TDA t`B,[..TX1]>	
	PURGE ..TX1,..TX2>;'` u <
	IFIDN <u@A><Z>,<		
	  ..u`TX2==1
	  ANDI vB,^-..TX1>	
	IFIv DN <A><O>,<		
	v@  ..TX2==1
	wORv`CMI B,^-..TX1>	
	IFIDN <A><C>,<w 		
	  ..TX2==1
w@	  EQVI B,^-..TX1>QVI B,^-..TX;' _@&
	..TSAC _`(..ACT,B)	
	.IF`0 ..ACT,<
		PRIN` TX ?TQA - B NOT`@ IN AC>,<
		TXA B,C>
		TXA
`P P  P 0P d  ((
	.ACV2 (A)
	.ACV2 (d@ H(2
	A=.FPAhC+..NAC		
	IFB <B>,<..NAC=..NAC+(1>
	IFNB <B>,<..NAC=..NAC+B>.d` h(B
	IFG A-.NPAC,<PRINTX ?TO(O MANY ACS USED>
	IFLE A-4,<
	 h JSP .A16,.SAVA>	
	IFG A-4,<
	(  JSP .A16,.SAV8>JSP .A16,.SAV8>):A  ):9:A  9:9  `!(
	..CSN==A
	..CSC==0
	I RP B,<
	IFE ..C@SN-..CSC,<
	  ST`OPI
	  ..CAS1 (B)>
	..CSC==..CSC+1>..CSC==..CSD	P ?DP >D)6P D,xP D8YP D8sP D;PP D;QP D;QP D;RP D;RP D;SP D;WP D;WP D;XP D;XP D;YP 	D;YP 	D;ZP 
D;ZP 
D;[P D;[P D;\P 
D;\P 
D;]P D<ZP D=7P DI6P ?D\qP S@P ,<H G`$F
	..PST==HC&<-C>
	.IF0 .H .PST-1,<
		SOS H@B>,<	
		MOVX .SAH`C,-..PST 
		ADDM .SAC,B>		ADDMP `P =|RQ &2 @!
	..IFT==`A		
	IFE ..IFT,<
	B
	..IFT==0 >		
	IFN ..IFT,<
	C>N ..IFT,<&t<H E@$4
	..PST==E`C&<-C>	
	.IF0 F..PST-1,<
		AOS F B>,<	
		MOVX .SF@AC,..PST	
		ADDM .SAC,B>		ADDM&tj7Q ?2DQ x6MiTQ @;`P ?= J$X
	..TSIZ J (..PST,C)
	.IF0J@ ..PST,<
		A BJ`>,<	
		..LDB .SAKC,B,C 
		A .SAC>C 
		A .S?=	 L $l
	..TSIZ L@(..PST,C)
	.IF0L` ..PST,<
		A BM>,<	
		..LDB .SAM C,B,C
		A .SAM@C
		..DPB .SAC,B,C>DPB .SAC,JDP'K%,z S <A>B<^D70-POS(B)>B<^D70N
0@ Nd A  Nd Nd@A  Nd@Nd`A  Nd`NeA  NeNfA  NfO%<ZA  O%<ZO%<zA  O%<zO%=H v8'3
	.STKV2 (A)
	.STKV2 O%=I vx'A
	IFB <Bw>,<..STKN==..STKNw8+1>
	IFNB <B>,<wX..STKN==..STKN+Bwx>
	..STKQ==..STKxN+1
	.STKV3 (A,\..STKQ)V3 (A,O%=I xX'O
   IFDEFxx A,<.IF A,SYMBOyL,<PRINTX STKVAR y8A ALREADY DEFINEyXD>>
	DEFINE A<-yx^OB(P)>
	$A==<Z A>>
	$A==<S):A  S):S9:A  S9:Sd  }'i
	.TRV2 (A)
	.TRV2 (Sd@ }X's
	.TRV3 (}xA,\..NV)	
	IFB ~<B>,<..NV=..NV+1~8>
	IFNB <B>,<..NV=..NV+B>,<..Sd` ~x(
   IFDEF A,<.IF A,SYMBO8L,<PRINTX TRVAR XA ALREADY DEFINEDx>>
	DEFINE A<^OB(.FP)>
	$A==<Z A>>
	$A==<>}{woP