version	U12.1.00
uid	complex.u1-1787877386-0
record	math__Complex__state,4
	0,__s
	1,__m
	2,r
	3,i
record	math__Complex__methods,14
	0,add
	1,minus
	2,mult
	3,div
	4,__add__
	5,__minus__
	6,__mult__
	7,__div__
	8,conjugate
	9,addInverse
	10,multInverse
	11,toString
	12,convert
	13,initially
impl	local
global	19
	0,000005,math__Complex_add,2
	1,000005,math__Complex_minus,2
	2,000005,math__Complex_mult,2
	3,000005,math__Complex_div,2
	4,000005,math__Complex___add__,2
	5,000005,math__Complex___minus__,2
	6,000005,math__Complex___mult__,2
	7,000005,math__Complex___div__,2
	8,000005,math__Complex_conjugate,1
	9,000005,math__Complex_addInverse,1
	10,000005,math__Complex_multInverse,1
	11,000005,math__Complex_toString,1
	12,000005,math__Complex_convert,2
	13,000005,math__Complex_initially,3
	14,000011,math__Complex__state,4
	15,000011,math__Complex__methods,14
	16,000001,math__Complex__oprec,0
	17,000005,math__Complex,2
	18,000005,math__Complexinitialize,0

proc math__Complex_add
	local	0,001000,self
	local	1,001000,x
	local	2,000000,math__Complex
	declend
	filen	complex.icn
	line	27
	colm	11
	synt	any
	mark	L1
	line	28
	colm	8
	synt	if
	mark0
	pnull
	var	1
	pnull
	var	0
	line	28
	colm	20
	synt	any
	field	convert
	var	1
	line	28
	colm	28
	synt	any
	invoke	1
	line	28
	colm	13
	synt	any
	asgn
	unmark
	mark	L2
	var	2
	pnull
	pnull
	var	0
	line	28
	colm	61
	synt	any
	field	r
	pnull
	var	1
	line	28
	colm	65
	synt	any
	field	r
	line	28
	colm	63
	synt	any
	plus
	pnull
	pnull
	var	0
	line	28
	colm	72
	synt	any
	field	i
	pnull
	var	1
	line	28
	colm	76
	synt	any
	field	i
	line	28
	colm	74
	synt	any
	plus
	line	28
	colm	56
	synt	any
	invoke	2
	line	28
	colm	36
	synt	any
	pret
lab L2
	synt	any
	pfail
	line	28
	colm	8
	synt	endif
	unmark
lab L1
	pnull
	line	29
	colm	1
	synt	any
	pfail
	end
proc math__Complex_minus
	local	0,001000,self
	local	1,001000,x
	local	2,000000,math__Complex
	declend
	line	34
	colm	11
	synt	any
	mark	L1
	line	35
	colm	8
	synt	if
	mark0
	pnull
	var	1
	pnull
	var	0
	line	35
	colm	20
	synt	any
	field	convert
	var	1
	line	35
	colm	28
	synt	any
	invoke	1
	line	35
	colm	13
	synt	any
	asgn
	unmark
	mark	L2
	var	2
	pnull
	pnull
	var	0
	line	35
	colm	61
	synt	any
	field	r
	pnull
	var	1
	line	35
	colm	65
	synt	any
	field	r
	line	35
	colm	63
	synt	any
	minus
	pnull
	pnull
	var	0
	line	35
	colm	72
	synt	any
	field	i
	pnull
	var	1
	line	35
	colm	76
	synt	any
	field	i
	line	35
	colm	74
	synt	any
	minus
	line	35
	colm	56
	synt	any
	invoke	2
	line	35
	colm	36
	synt	any
	pret
lab L2
	synt	any
	pfail
	line	35
	colm	8
	synt	endif
	unmark
lab L1
	pnull
	line	36
	colm	1
	synt	any
	pfail
	end
proc math__Complex_mult
	local	0,001000,self
	local	1,001000,x
	local	2,000000,math__Complex
	declend
	line	41
	colm	11
	synt	any
	mark	L1
	line	42
	colm	8
	synt	if
	mark0
	pnull
	var	1
	pnull
	var	0
	line	42
	colm	20
	synt	any
	field	convert
	var	1
	line	42
	colm	28
	synt	any
	invoke	1
	line	42
	colm	13
	synt	any
	asgn
	unmark
	mark	L2
	var	2
	pnull
	pnull
	pnull
	var	0
	line	42
	colm	61
	synt	any
	field	r
	pnull
	var	1
	line	42
	colm	65
	synt	any
	field	r
	line	42
	colm	63
	synt	any
	mult
	pnull
	pnull
	var	0
	line	42
	colm	72
	synt	any
	field	i
	pnull
	var	1
	line	42
	colm	76
	synt	any
	field	i
	line	42
	colm	74
	synt	any
	mult
	line	42
	colm	67
	synt	any
	minus
	pnull
	pnull
	pnull
	var	0
	line	42
	colm	83
	synt	any
	field	r
	pnull
	var	1
	line	42
	colm	87
	synt	any
	field	i
	line	42
	colm	85
	synt	any
	mult
	pnull
	pnull
	var	0
	line	42
	colm	94
	synt	any
	field	i
	pnull
	var	1
	line	42
	colm	98
	synt	any
	field	r
	line	42
	colm	96
	synt	any
	mult
	line	42
	colm	89
	synt	any
	plus
	line	42
	colm	56
	synt	any
	invoke	2
	line	42
	colm	36
	synt	any
	pret
lab L2
	synt	any
	pfail
	line	42
	colm	8
	synt	endif
	unmark
lab L1
	pnull
	line	43
	colm	1
	synt	any
	pfail
	end
proc math__Complex_div
	local	0,001000,self
	local	1,001000,x
	local	2,000000,c
	local	3,000000,n
	local	4,000000,d
	local	5,000000,real
	local	6,000000,math__Complex
	declend
	line	50
	colm	11
	synt	any
	mark	L1
	line	51
	colm	8
	synt	if
	mark0
	pnull
	var	1
	pnull
	var	0
	line	51
	colm	20
	synt	any
	field	convert
	var	1
	line	51
	colm	28
	synt	any
	invoke	1
	line	51
	colm	13
	synt	any
	asgn
	unmark
	mark	L2
	pnull
	var	2
	pnull
	var	1
	line	52
	colm	17
	synt	any
	field	conjugate
	line	52
	colm	27
	synt	any
	invoke	0
	line	52
	colm	13
	synt	any
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	3
	pnull
	var	0
	line	53
	colm	20
	synt	any
	field	mult
	var	2
	line	53
	colm	25
	synt	any
	invoke	1
	line	53
	colm	13
	synt	any
	asgn
	unmark
lab L3
	mark	L4
	pnull
	var	4
	var	5
	pnull
	pnull
	var	1
	line	54
	colm	25
	synt	any
	field	mult
	var	2
	line	54
	colm	30
	synt	any
	invoke	1
	line	54
	colm	34
	synt	any
	field	r
	line	54
	colm	22
	synt	any
	invoke	1
	line	54
	colm	13
	synt	any
	asgn
	unmark
lab L4
	mark	L5
	var	6
	pnull
	pnull
	var	3
	line	55
	colm	33
	synt	any
	field	r
	var	4
	line	55
	colm	35
	synt	any
	div
	pnull
	pnull
	var	3
	line	55
	colm	39
	synt	any
	field	i
	var	4
	line	55
	colm	41
	synt	any
	div
	line	55
	colm	31
	synt	any
	invoke	2
	line	55
	colm	11
	synt	any
	pret
lab L5
	synt	any
	pfail
	line	51
	colm	8
	synt	endif
	unmark
lab L1
	pnull
	line	57
	colm	1
	synt	any
	pfail
	end
proc math__Complex___add__
	local	0,001000,self
	local	1,001000,x
	declend
	line	62
	colm	11
	synt	any
	mark	L1
	mark	L2
	pnull
	var	0
	line	63
	colm	19
	synt	any
	field	add
	var	1
	line	63
	colm	23
	synt	any
	invoke	1
	line	63
	colm	8
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	64
	colm	1
	synt	any
	pfail
	end
proc math__Complex___minus__
	local	0,001000,self
	local	1,001000,x
	declend
	line	69
	colm	11
	synt	any
	mark	L1
	mark	L2
	pnull
	var	0
	line	70
	colm	19
	synt	any
	field	minus
	var	1
	line	70
	colm	25
	synt	any
	invoke	1
	line	70
	colm	8
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	71
	colm	1
	synt	any
	pfail
	end
proc math__Complex___mult__
	local	0,001000,self
	local	1,001000,x
	declend
	line	76
	colm	11
	synt	any
	mark	L1
	mark	L2
	pnull
	var	0
	line	77
	colm	19
	synt	any
	field	mult
	var	1
	line	77
	colm	24
	synt	any
	invoke	1
	line	77
	colm	8
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	78
	colm	1
	synt	any
	pfail
	end
proc math__Complex___div__
	local	0,001000,self
	local	1,001000,x
	declend
	line	85
	colm	11
	synt	any
	mark	L1
	mark	L2
	pnull
	var	0
	line	86
	colm	19
	synt	any
	field	div
	var	1
	line	86
	colm	23
	synt	any
	invoke	1
	line	86
	colm	8
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	87
	colm	1
	synt	any
	pfail
	end
proc math__Complex_conjugate
	local	0,001000,self
	local	1,000000,math__Complex
	declend
	line	93
	colm	11
	synt	any
	mark	L1
	mark	L2
	var	1
	pnull
	var	0
	line	94
	colm	33
	synt	any
	field	r
	pnull
	pnull
	var	0
	line	94
	colm	41
	synt	any
	field	i
	line	94
	colm	36
	synt	any
	neg
	line	94
	colm	28
	synt	any
	invoke	2
	line	94
	colm	8
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	95
	colm	1
	synt	any
	pfail
	end
proc math__Complex_addInverse
	local	0,001000,self
	local	1,000000,math__Complex
	declend
	line	102
	colm	11
	synt	any
	mark	L1
	mark	L2
	var	1
	pnull
	pnull
	var	0
	line	103
	colm	34
	synt	any
	field	r
	line	103
	colm	29
	synt	any
	neg
	pnull
	pnull
	var	0
	line	103
	colm	42
	synt	any
	field	i
	line	103
	colm	37
	synt	any
	neg
	line	103
	colm	28
	synt	any
	invoke	2
	line	103
	colm	8
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	104
	colm	1
	synt	any
	pfail
	end
proc math__Complex_multInverse
	local	0,001000,self
	local	1,000000,n
	local	2,000000,d
	local	3,000000,real
	local	4,000000,math__Complex
	con	0,002000,1,2
	declend
	line	111
	colm	11
	synt	any
	mark	L1
	pnull
	var	1
	pnull
	var	0
	line	112
	colm	17
	synt	any
	field	conjugate
	line	112
	colm	27
	synt	any
	invoke	0
	line	112
	colm	10
	synt	any
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	2
	var	3
	pnull
	pnull
	pnull
	var	0
	line	113
	colm	24
	synt	any
	field	r
	int	0
	line	113
	colm	26
	synt	any
	power
	pnull
	pnull
	var	0
	line	113
	colm	33
	synt	any
	field	i
	int	0
	line	113
	colm	35
	synt	any
	power
	line	113
	colm	28
	synt	any
	plus
	line	113
	colm	19
	synt	any
	invoke	1
	line	113
	colm	10
	synt	any
	asgn
	unmark
lab L2
	mark	L3
	mark	L4
	var	4
	pnull
	pnull
	var	1
	line	114
	colm	30
	synt	any
	field	r
	var	2
	line	114
	colm	32
	synt	any
	div
	pnull
	pnull
	var	1
	line	114
	colm	36
	synt	any
	field	i
	var	2
	line	114
	colm	38
	synt	any
	div
	line	114
	colm	28
	synt	any
	invoke	2
	line	114
	colm	8
	synt	any
	pret
lab L4
	synt	any
	pfail
	unmark
lab L3
	pnull
	line	115
	colm	1
	synt	any
	pfail
	end
proc math__Complex_toString
	local	0,001000,self
	con	0,010000,1,050
	con	1,010000,1,054
	con	2,010000,2,151,051
	declend
	line	120
	colm	11
	synt	any
	mark	L1
	mark	L2
	pnull
	pnull
	pnull
	pnull
	str	0
	pnull
	var	0
	line	121
	colm	24
	synt	any
	field	r
	line	121
	colm	18
	synt	any
	cat
	str	1
	line	121
	colm	26
	synt	any
	cat
	pnull
	var	0
	line	121
	colm	37
	synt	any
	field	i
	line	121
	colm	31
	synt	any
	cat
	str	2
	line	121
	colm	39
	synt	any
	cat
	line	121
	colm	8
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	122
	colm	1
	synt	any
	pfail
	end
proc math__Complex_convert
	local	0,001000,self
	local	1,001000,x
	local	2,000000,type
	local	3,000000,math__Complex
	local	4,000000,numeric
	con	0,010000,20,155,141,164,150,137,137,103,157,155,160,154,145,170,137,137,163,164,141,164,145
	con	1,002000,1,0
	declend
	line	128
	colm	11
	synt	any
	mark	L1
	line	129
	colm	8
	synt	if
	mark0
	pnull
	var	2
	var	1
	line	129
	colm	17
	synt	any
	invoke	1
	str	0
	line	129
	colm	21
	synt	any
	lexeq
	unmark
	mark	L2
	var	1
	line	129
	colm	52
	synt	any
	pret
lab L2
	synt	any
	pfail
	line	129
	colm	8
	synt	endif
	unmark
lab L1
	mark	L3
	mark	L4
	var	3
	var	4
	var	1
	line	130
	colm	36
	synt	any
	invoke	1
	int	1
	line	130
	colm	28
	synt	any
	invoke	2
	line	130
	colm	8
	synt	any
	pret
lab L4
	synt	any
	pfail
	unmark
lab L3
	pnull
	line	131
	colm	1
	synt	any
	pfail
	end
proc math__Complex_initially
	local	0,001000,self
	local	1,001000,pr
	local	2,001000,pi
	con	0,002000,1,0
	declend
	line	133
	colm	11
	synt	any
	mark	L1
	pnull
	pnull
	var	0
	line	134
	colm	12
	synt	any
	field	r
	mark	L2
	pnull
	var	1
	line	134
	colm	16
	synt	any
	nonnull
	line	134
	colm	19
	synt	any
	esusp
	goto	L3
lab L2
	int	0
lab L3
	line	134
	colm	14
	synt	any
	asgn
	unmark
lab L1
	mark	L4
	pnull
	pnull
	var	0
	line	135
	colm	12
	synt	any
	field	i
	mark	L5
	pnull
	var	2
	line	135
	colm	16
	synt	any
	nonnull
	line	135
	colm	19
	synt	any
	esusp
	goto	L6
lab L5
	int	0
lab L6
	line	135
	colm	14
	synt	any
	asgn
	unmark
lab L4
	mark	L7
	mark	L8
	pnull
	line	136
	colm	7
	synt	any
	pret
lab L8
	synt	any
	pfail
	unmark
lab L7
	pnull
	line	137
	colm	1
	synt	any
	pfail
	end
proc math__Complex
	local	0,001000,pr
	local	1,001000,pi
	local	2,000020,self
	local	3,000020,clone
	local	4,000000,math__Complex__oprec
	local	5,000000,math__Complexinitialize
	local	6,000000,math__Complex__state
	declend
	filen	__faux.icn
	line	5
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	line	8
	colm	3
	synt	if
	mark0
	pnull
	var	4
	line	8
	colm	6
	synt	any
	null
	unmark
	var	5
	line	8
	colm	56
	synt	any
	invoke	0
	line	8
	colm	3
	synt	endif
	unmark
lab L2
	einit	L1
lab L3
	mark	L4
	pnull
	var	2
	var	6
	line	10
	colm	32
	synt	any
	keywd	null
	var	4
	line	10
	colm	31
	synt	any
	invoke	2
	line	10
	colm	8
	synt	any
	asgn
	unmark
lab L4
	mark	L5
	pnull
	pnull
	var	2
	line	11
	colm	7
	synt	any
	field	__s
	var	2
	line	11
	colm	12
	synt	any
	asgn
	unmark
lab L5
	mark	L6
	mark	L7
	pnull
	pnull
	var	2
	line	12
	colm	7
	synt	any
	field	__m
	line	12
	colm	11
	synt	any
	field	initially
	var	2
	var	0
	var	1
	line	12
	colm	21
	synt	any
	invoke	3
	line	12
	colm	34
	synt	any
	esusp
	goto	L8
lab L7
	line	12
	colm	36
	synt	any
	pfail
lab L8
	unmark
lab L6
	mark	L9
	mark	L10
	var	2
	line	13
	colm	3
	synt	any
	pret
lab L10
	synt	any
	pfail
	unmark
lab L9
	pnull
	line	14
	colm	1
	synt	any
	pfail
	end
proc math__Complexinitialize
	local	0,000000,math__Complex__oprec
	local	1,000000,math__Complex__methods
	local	2,000000,math__Complex_add
	local	3,000000,math__Complex_minus
	local	4,000000,math__Complex_mult
	local	5,000000,math__Complex_div
	local	6,000000,math__Complex___add__
	local	7,000000,math__Complex___minus__
	local	8,000000,math__Complex___mult__
	local	9,000000,math__Complex___div__
	local	10,000000,math__Complex_conjugate
	local	11,000000,math__Complex_addInverse
	local	12,000000,math__Complex_multInverse
	local	13,000000,math__Complex_toString
	local	14,000000,math__Complex_convert
	local	15,000000,math__Complex_initially
	declend
	line	16
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	pnull
	var	0
	var	1
	var	2
	var	3
	var	4
	var	5
	var	6
	var	7
	var	8
	var	9
	var	10
	var	11
	var	12
	var	13
	var	14
	var	15
	line	17
	colm	57
	synt	any
	invoke	14
	line	17
	colm	32
	synt	any
	asgn
	unmark
lab L2
	einit	L1
lab L3
	line	18
	colm	1
	synt	any
	pfail
	end
