proc str2poly
	filen	polynom.icn
	local	0,001000,str
	local	1,000020,poly
	local	2,000020,var
	local	3,000020,vars
	local	4,000020,term
	local	5,000020,factor
	local	6,000020,power
	local	7,000000,table
	local	8,000000,move
	local	9,000000,tab
	local	10,000000,upto
	local	11,000000,many
	local	12,000000,integer
	local	13,000000,repl
	local	14,000000,csort
	local	15,000000,numeric
	con	0,002000,1,0
	con	1,002000,1,1
	con	2,020000,2,055,053
	con	3,020000,3,053,056,055
	con	4,010000,0
	declend
	line	34
	colm	11
	mark	L1
	pnull
	var	1
	var	7
	int	0
	line	37
	colm	17
	invoke	1
	line	37
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	var	0
	line	39
	colm	8
	bscan
lab L3
	mark0
	pnull
	var	4
	pnull
	var	8
	int	1
	line	40
	colm	26
	invoke	1
	var	9
	mark	L6
	var	10
	cset	2
	line	40
	colm	41
	invoke	1
	esusp
	goto	L7
lab L6
	int	0
lab L7
	line	40
	colm	36
	invoke	1
	line	40
	colm	30
	cat
	line	40
	colm	18
	asgn
	unmark
	mark	L3
	var	4
	line	41
	colm	15
	bscan
	mark	L8
	pnull
	var	5
	int	1
	line	42
	colm	20
	asgn
	unmark
lab L8
	mark	L9
	pnull
	var	5
	var	9
	var	11
	pnull
	line	43
	colm	32
	keywd	digits
	cset	3
	line	43
	colm	40
	unions
	line	43
	colm	31
	invoke	1
	line	43
	colm	26
	invoke	1
	line	43
	colm	20
	asgn
	unmark
lab L9
	mark	L10
	var	9
	int	0
	line	44
	colm	16
	invoke	1
	line	44
	colm	20
	bscan
	mark	L11
	pnull
	var	3
	str	4
	line	45
	colm	21
	asgn
	unmark
lab L11
lab L12
	mark0
	pnull
	var	2
	var	8
	int	1
	line	46
	colm	33
	invoke	1
	line	46
	colm	26
	asgn
	unmark
	mark	L12
	mark	L15
	pnull
	var	6
	int	1
	line	47
	colm	25
	asgn
	unmark
lab L15
	mark	L16
	pnull
	var	6
	var	12
	var	9
	var	11
	line	48
	colm	45
	keywd	digits
	line	48
	colm	44
	invoke	1
	line	48
	colm	39
	invoke	1
	line	48
	colm	35
	invoke	1
	line	48
	colm	25
	asgn
	unmark
lab L16
	pnull
	var	3
	dup
	var	13
	var	2
	var	6
	line	49
	colm	33
	invoke	2
	line	49
	colm	24
	cat
	asgn
lab L13
	unmark
	goto	L12
lab L14
	line	44
	colm	20
	escan
	unmark
lab L10
	pnull
	pnull
	var	1
	var	14
	var	3
	line	52
	colm	23
	invoke	1
	line	52
	colm	17
	subsc
	dup
	mark	L17
	var	15
	var	5
	line	52
	colm	42
	invoke	1
	esusp
	goto	L18
lab L17
	line	52
	colm	53
	pfail
lab L18
	line	52
	colm	31
	plus
	asgn
	line	41
	colm	15
	escan
lab L4
	unmark
	goto	L3
lab L5
	line	39
	colm	8
	escan
	unmark
lab L2
	mark	L19
	mark	L20
	var	1
	line	57
	colm	4
	pret
lab L20
	pfail
	unmark
lab L19
	pnull
	line	59
	colm	1
	pfail
	end
proc polyadd
	local	0,001000,poly1
	local	1,001000,poly2
	local	2,000020,poly
	local	3,000020,keys
	local	4,000020,k
	local	5,000000,sort
	local	6,000000,set
	local	7,000000,keylist
	local	8,000000,table
	con	0,002000,1,0
	declend
	line	61
	colm	11
	mark	L1
	pnull
	var	3
	var	5
	pnull
	var	6
	var	7
	var	0
	line	64
	colm	28
	invoke	1
	line	64
	colm	20
	invoke	1
	var	6
	var	7
	var	1
	line	64
	colm	51
	invoke	1
	line	64
	colm	43
	invoke	1
	line	64
	colm	37
	unions
	line	64
	colm	16
	invoke	1
	line	64
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	2
	var	8
	int	0
	line	66
	colm	17
	invoke	1
	line	66
	colm	9
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	4
	pnull
	var	3
	line	68
	colm	15
	bang
	line	68
	colm	12
	asgn
	pop
	mark0
	pnull
	pnull
	var	2
	var	4
	line	69
	colm	11
	subsc
	pnull
	pnull
	var	0
	var	4
	line	69
	colm	23
	subsc
	pnull
	var	1
	var	4
	line	69
	colm	34
	subsc
	line	69
	colm	27
	plus
	line	69
	colm	15
	asgn
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L6
	mark	L7
	var	2
	line	71
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	73
	colm	1
	pfail
	end
proc polymod
	local	0,001000,poly
	local	1,001000,i
	local	2,000020,poly1
	local	3,000020,keys
	local	4,000020,k
	local	5,000000,keylist
	local	6,000000,table
	con	0,002000,1,0
	declend
	line	75
	colm	11
	mark	L1
	pnull
	var	3
	var	5
	var	0
	line	78
	colm	19
	invoke	1
	line	78
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	2
	var	6
	int	0
	line	80
	colm	18
	invoke	1
	line	80
	colm	10
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	4
	pnull
	var	3
	line	82
	colm	15
	bang
	line	82
	colm	12
	asgn
	pop
	mark0
	pnull
	pnull
	var	2
	var	4
	line	83
	colm	12
	subsc
	pnull
	pnull
	var	0
	var	4
	line	83
	colm	23
	subsc
	var	1
	line	83
	colm	27
	mod
	line	83
	colm	16
	asgn
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L6
	mark	L7
	var	2
	line	85
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	87
	colm	1
	pfail
	end
proc polysub
	local	0,001000,poly1
	local	1,001000,poly2
	local	2,000020,poly
	local	3,000020,keys
	local	4,000020,k
	local	5,000000,sort
	local	6,000000,set
	local	7,000000,keylist
	local	8,000000,table
	con	0,002000,1,0
	declend
	line	89
	colm	11
	mark	L1
	pnull
	var	3
	var	5
	pnull
	var	6
	var	7
	var	0
	line	92
	colm	28
	invoke	1
	line	92
	colm	20
	invoke	1
	var	6
	var	7
	var	1
	line	92
	colm	51
	invoke	1
	line	92
	colm	43
	invoke	1
	line	92
	colm	37
	unions
	line	92
	colm	16
	invoke	1
	line	92
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	2
	var	8
	int	0
	line	94
	colm	17
	invoke	1
	line	94
	colm	9
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	4
	pnull
	var	3
	line	96
	colm	15
	bang
	line	96
	colm	12
	asgn
	pop
	mark0
	pnull
	pnull
	var	2
	var	4
	line	97
	colm	11
	subsc
	pnull
	pnull
	var	0
	var	4
	line	97
	colm	23
	subsc
	pnull
	var	1
	var	4
	line	97
	colm	34
	subsc
	line	97
	colm	27
	minus
	line	97
	colm	15
	asgn
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L6
	mark	L7
	var	2
	line	99
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	101
	colm	1
	pfail
	end
proc polymul
	local	0,001000,poly1
	local	1,001000,poly2
	local	2,000020,poly
	local	3,000020,keys1
	local	4,000020,keys2
	local	5,000020,k1
	local	6,000020,k2
	local	7,000000,keylist
	local	8,000000,table
	local	9,000000,csort
	con	0,002000,1,0
	declend
	line	103
	colm	11
	mark	L1
	pnull
	var	3
	var	7
	var	0
	line	106
	colm	20
	invoke	1
	line	106
	colm	10
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	4
	var	7
	var	1
	line	107
	colm	20
	invoke	1
	line	107
	colm	10
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	2
	var	8
	int	0
	line	109
	colm	17
	invoke	1
	line	109
	colm	9
	asgn
	unmark
lab L3
	mark	L4
	mark0
	pnull
	var	5
	pnull
	var	3
	line	111
	colm	16
	bang
	line	111
	colm	13
	asgn
	pop
	mark0
	mark0
	pnull
	var	6
	pnull
	var	4
	line	112
	colm	19
	bang
	line	112
	colm	16
	asgn
	pop
	mark0
	pnull
	pnull
	var	2
	var	9
	pnull
	var	5
	var	6
	line	113
	colm	24
	cat
	line	113
	colm	20
	invoke	1
	line	113
	colm	14
	subsc
	dup
	pnull
	pnull
	var	0
	var	5
	line	113
	colm	41
	subsc
	pnull
	var	1
	var	6
	line	113
	colm	53
	subsc
	line	113
	colm	46
	mult
	line	113
	colm	32
	plus
	asgn
	unmark
lab L7
	efail
lab L8
	unmark
lab L5
	efail
lab L6
	unmark
lab L4
	mark	L9
	mark	L10
	var	2
	line	115
	colm	4
	pret
lab L10
	pfail
	unmark
lab L9
	pnull
	line	117
	colm	1
	pfail
	end
proc polyexp
	local	0,001000,poly1
	local	1,001000,i
	local	2,000020,poly
	local	3,000000,copy
	local	4,000000,polymul
	con	0,002000,1,1
	declend
	line	119
	colm	11
	mark	L1
	pnull
	var	2
	var	3
	var	0
	line	122
	colm	16
	invoke	1
	line	122
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	int	0
	pnull
	var	1
	int	0
	line	124
	colm	17
	minus
	push1
	line	124
	colm	12
	toby
	pop
	mark0
	pnull
	var	2
	var	4
	var	2
	var	0
	line	125
	colm	22
	invoke	2
	line	125
	colm	12
	asgn
	unmark
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L5
	mark	L6
	var	2
	line	127
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	129
	colm	1
	pfail
	end
proc poly2str
	local	0,001000,poly
	local	1,000020,str
	local	2,000020,keys
	local	3,000020,k
	local	4,000020,count
	local	5,000020,var
	local	6,000000,keylist
	local	7,000000,move
	local	8,000000,tab
	local	9,000000,many
	con	0,010000,0
	con	1,002000,1,0
	con	2,010000,1,053
	con	3,002000,1,1
	con	4,002000,1,2
	con	5,010000,1,060
	declend
	line	131
	colm	11
	mark	L1
	pnull
	var	2
	var	6
	var	0
	line	134
	colm	19
	invoke	1
	line	134
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	1
	str	0
	line	136
	colm	8
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	3
	pnull
	var	2
	line	138
	colm	15
	bang
	line	138
	colm	12
	asgn
	pop
	mark0
	mark	L6
	mark	L7
	pnull
	pnull
	var	0
	var	3
	line	139
	colm	14
	subsc
	int	1
	line	139
	colm	18
	numeq
	unmark
	unmark
	unmark
	goto	L4
	goto	L8
lab L7
	mark	L9
	pnull
	pnull
	var	0
	var	3
	line	140
	colm	19
	subsc
	int	1
	line	140
	colm	23
	numgt
	unmark
	pnull
	var	1
	dup
	pnull
	str	2
	mark	L11
	pnull
	pnull
	var	0
	var	3
	line	140
	colm	54
	subsc
	int	3
	line	140
	colm	58
	numne
	esusp
	goto	L12
lab L11
	str	0
lab L12
	line	140
	colm	45
	cat
	line	140
	colm	36
	cat
	asgn
	goto	L10
lab L9
	mark0
	pnull
	pnull
	var	0
	var	3
	line	141
	colm	19
	subsc
	int	1
	line	141
	colm	23
	numlt
	unmark
	pnull
	var	1
	dup
	mark	L13
	pnull
	pnull
	var	0
	var	3
	line	141
	colm	47
	subsc
	int	3
	line	141
	colm	51
	numne
	esusp
	goto	L14
lab L13
	str	0
lab L14
	line	141
	colm	36
	cat
	asgn
lab L10
lab L8
	unmark
lab L6
	var	3
	line	142
	colm	9
	bscan
lab L15
	mark0
	pnull
	var	5
	var	7
	int	3
	line	143
	colm	27
	invoke	1
	line	143
	colm	20
	asgn
	unmark
	mark	L15
	mark	L18
	pnull
	var	4
	int	3
	line	144
	colm	19
	asgn
	unmark
lab L18
	mark	L19
	pnull
	var	4
	dup
	pnull
	var	8
	var	9
	var	5
	line	145
	colm	32
	invoke	1
	line	145
	colm	27
	invoke	1
	line	145
	colm	23
	size
	line	145
	colm	19
	plus
	asgn
	unmark
lab L19
	mark	L20
	pnull
	var	4
	int	3
	line	146
	colm	22
	numeq
	unmark
	pnull
	var	1
	dup
	var	5
	line	146
	colm	35
	cat
	asgn
	goto	L21
lab L20
	pnull
	var	1
	dup
	pnull
	var	5
	var	4
	line	147
	colm	31
	cat
	line	147
	colm	22
	cat
	asgn
lab L21
lab L16
	unmark
	goto	L15
lab L17
	line	142
	colm	9
	escan
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L22
	mark	L23
	mark	L24
	pnull
	var	1
	int	4
	int	1
	line	152
	colm	16
	sect
	esusp
	goto	L25
lab L24
	str	5
lab L25
	line	152
	colm	4
	pret
lab L23
	pfail
	unmark
lab L22
	pnull
	line	154
	colm	1
	pfail
	end
proc polydiff
	local	0,001000,poly
	local	1,001000,var
	local	2,000020,poly_new
	local	3,000020,keys
	local	4,000020,k
	local	5,000020,nvars
	local	6,000020,newk
	local	7,000000,table
	local	8,000000,keylist
	local	9,000000,tab
	local	10,000000,upto
	local	11,000000,many
	local	12,000000,repl
	con	0,002000,1,1
	con	1,002000,1,0
	declend
	line	156
	colm	11
	mark	L1
	pnull
	var	2
	var	7
	line	159
	colm	21
	invoke	0
	line	159
	colm	13
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	3
	var	8
	var	0
	line	161
	colm	19
	invoke	1
	line	161
	colm	9
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	4
	pnull
	var	3
	line	163
	colm	15
	bang
	line	163
	colm	12
	asgn
	pop
	mark0
	var	4
	line	164
	colm	9
	bscan
	mark0
	pnull
	var	6
	var	9
	var	10
	var	1
	line	165
	colm	29
	invoke	1
	line	165
	colm	24
	invoke	1
	line	165
	colm	18
	asgn
	unmark
	mark	L6
	pnull
	var	5
	pnull
	var	9
	var	11
	var	1
	line	166
	colm	31
	invoke	1
	line	166
	colm	26
	invoke	1
	line	166
	colm	22
	size
	line	166
	colm	19
	asgn
	unmark
lab L6
	mark	L7
	pnull
	var	6
	dup
	pnull
	var	12
	var	1
	pnull
	var	5
	int	0
	line	167
	colm	39
	minus
	line	167
	colm	27
	invoke	2
	var	9
	int	1
	line	167
	colm	50
	invoke	1
	line	167
	colm	44
	cat
	line	167
	colm	18
	cat
	asgn
	unmark
lab L7
	pnull
	pnull
	var	2
	var	6
	line	168
	colm	21
	subsc
	pnull
	var	5
	pnull
	var	0
	var	4
	line	168
	colm	43
	subsc
	line	168
	colm	37
	mult
	line	168
	colm	28
	asgn
	line	164
	colm	9
	escan
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L8
	mark	L9
	var	2
	line	173
	colm	4
	pret
lab L9
	pfail
	unmark
lab L8
	pnull
	line	175
	colm	1
	pfail
	end
proc polyintg
	local	0,001000,poly
	local	1,001000,var
	local	2,000020,poly_new
	local	3,000020,keys
	local	4,000020,k
	local	5,000020,nvars
	local	6,000020,newk
	local	7,000000,table
	local	8,000000,keylist
	local	9,000000,tab
	local	10,000000,upto
	local	11,000000,many
	local	12,000000,repl
	local	13,000000,real
	con	0,002000,1,1
	con	1,002000,1,0
	declend
	line	177
	colm	11
	mark	L1
	pnull
	var	2
	var	7
	line	180
	colm	21
	invoke	0
	line	180
	colm	13
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	3
	var	8
	var	0
	line	182
	colm	19
	invoke	1
	line	182
	colm	9
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	4
	pnull
	var	3
	line	184
	colm	15
	bang
	line	184
	colm	12
	asgn
	pop
	mark0
	var	4
	line	185
	colm	9
	bscan
	mark0
	pnull
	var	6
	var	9
	var	10
	var	1
	line	186
	colm	29
	invoke	1
	line	186
	colm	24
	invoke	1
	line	186
	colm	18
	asgn
	unmark
	mark	L6
	pnull
	var	5
	pnull
	var	9
	var	11
	var	1
	line	187
	colm	31
	invoke	1
	line	187
	colm	26
	invoke	1
	line	187
	colm	22
	size
	line	187
	colm	19
	asgn
	unmark
lab L6
	mark	L7
	pnull
	var	6
	dup
	pnull
	var	12
	var	1
	pnull
	var	5
	int	0
	line	188
	colm	39
	plus
	line	188
	colm	27
	invoke	2
	var	9
	int	1
	line	188
	colm	50
	invoke	1
	line	188
	colm	44
	cat
	line	188
	colm	18
	cat
	asgn
	unmark
lab L7
	pnull
	pnull
	var	2
	var	6
	line	189
	colm	21
	subsc
	pnull
	pnull
	var	0
	var	4
	line	189
	colm	35
	subsc
	var	13
	pnull
	var	5
	int	0
	line	189
	colm	52
	plus
	line	189
	colm	45
	invoke	1
	line	189
	colm	39
	div
	line	189
	colm	28
	asgn
	line	185
	colm	9
	escan
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L8
	mark	L9
	var	2
	line	194
	colm	4
	pret
lab L9
	pfail
	unmark
lab L8
	pnull
	line	196
	colm	1
	pfail
	end
proc peval
	local	0,001000,str
	local	1,000000,tab
	local	2,000000,bal
	local	3,000000,pos
	local	4,000000,poper
	local	5,000000,str2poly
	con	0,002000,1,2
	con	1,010000,1,050
	con	2,020000,1,051
	con	3,010000,1,051
	con	4,002000,1,0
	declend
	line	198
	colm	11
	mark	L1
lab L2
	mark0
	pnull
	var	0
	sdup
	line	200
	colm	14
	bscan
	int	0
	pnull
	str	1
	line	200
	colm	20
	tabmat
	var	1
	var	2
	cset	2
	line	200
	colm	33
	invoke	1
	line	200
	colm	29
	invoke	1
	pnull
	str	3
	line	200
	colm	41
	tabmat
	var	3
	int	4
	line	200
	colm	50
	invoke	1
	line	200
	colm	19
	invoke	4
	line	200
	colm	14
	escan
	asgn
lab L3
	unmark
	goto	L2
lab L4
	unmark
lab L1
	mark	L5
	mark	L6
	mark	L7
	var	4
	var	0
	line	202
	colm	16
	invoke	1
	esusp
	goto	L8
lab L7
	var	5
	var	0
	line	202
	colm	32
	invoke	1
lab L8
	line	202
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	204
	colm	1
	pfail
	end
proc poper
	local	0,001000,str
	local	1,000000,pform
	local	2,000000,tab
	local	3,000000,bal
	local	4,000000,move
	con	0,020000,7,055,053,052,136,072,174,045
	con	1,002000,1,1
	con	2,002000,1,0
	declend
	line	206
	colm	11
	mark	L1
	mark	L2
	var	0
	line	208
	colm	15
	bscan
	var	1
	var	2
	var	3
	cset	0
	line	209
	colm	20
	invoke	1
	line	209
	colm	16
	invoke	1
	var	4
	int	1
	line	209
	colm	38
	invoke	1
	var	2
	int	2
	line	209
	colm	46
	invoke	1
	line	209
	colm	12
	invoke	3
	line	208
	colm	15
	escan
	line	208
	colm	4
	pret
lab L2
	pfail
	unmark
lab L1
	pnull
	line	212
	colm	1
	pfail
	end
proc pform
	local	0,001000,str1
	local	1,001000,op
	local	2,001000,str2
	local	3,000000,polyadd
	local	4,000000,peval
	local	5,000000,polysub
	local	6,000000,polymul
	local	7,000000,polyexp
	local	8,000000,polydiff
	local	9,000000,polyintg
	local	10,000000,polymod
	con	0,010000,1,053
	con	1,010000,1,055
	con	2,010000,1,052
	con	3,010000,1,136
	con	4,010000,1,072
	con	5,010000,1,174
	con	6,010000,1,045
	declend
	line	214
	colm	11
	mark	L1
	mark	L2
	mark0
	var	1
	eret
	mark	L4
	ccase
	str	0
	line	217
	colm	12
	eqv
	unmark
	pop
	var	3
	var	4
	var	0
	line	217
	colm	28
	invoke	1
	var	4
	var	2
	line	217
	colm	41
	invoke	1
	line	217
	colm	22
	invoke	2
	goto	L3
lab L4
	mark	L5
	ccase
	str	1
	line	218
	colm	12
	eqv
	unmark
	pop
	var	5
	var	4
	var	0
	line	218
	colm	28
	invoke	1
	var	4
	var	2
	line	218
	colm	41
	invoke	1
	line	218
	colm	22
	invoke	2
	goto	L3
lab L5
	mark	L6
	ccase
	str	2
	line	219
	colm	12
	eqv
	unmark
	pop
	var	6
	var	4
	var	0
	line	219
	colm	28
	invoke	1
	var	4
	var	2
	line	219
	colm	41
	invoke	1
	line	219
	colm	22
	invoke	2
	goto	L3
lab L6
	mark	L7
	ccase
	str	3
	line	220
	colm	12
	eqv
	unmark
	pop
	var	7
	var	4
	var	0
	line	220
	colm	28
	invoke	1
	var	2
	line	220
	colm	22
	invoke	2
	goto	L3
lab L7
	mark	L8
	ccase
	str	4
	line	221
	colm	12
	eqv
	unmark
	pop
	var	8
	var	4
	var	0
	line	221
	colm	29
	invoke	1
	var	2
	line	221
	colm	23
	invoke	2
	goto	L3
lab L8
	mark	L9
	ccase
	str	5
	line	222
	colm	12
	eqv
	unmark
	pop
	var	9
	var	4
	var	0
	line	222
	colm	29
	invoke	1
	var	2
	line	222
	colm	23
	invoke	2
	goto	L3
lab L9
	mark	L10
	ccase
	str	6
	line	223
	colm	12
	eqv
	unmark
	pop
	var	10
	var	4
	var	0
	line	223
	colm	28
	invoke	1
	var	2
	line	223
	colm	22
	invoke	2
	goto	L3
lab L10
	efail
lab L3
	line	216
	colm	4
	pret
lab L2
	pfail
	unmark
lab L1
	pnull
	line	226
	colm	1
	pfail
	end
proc poly2profile
	local	0,001000,poly
	local	1,000020,str
	local	2,000020,keys
	local	3,000020,k
	local	4,000020,count
	local	5,000020,vara
	local	6,000020,i
	local	7,000020,seg
	local	8,000000,keylist
	local	9,000000,abs
	local	10,000000,reverse
	local	11,000000,left
	local	12,000000,repl
	con	0,010000,0
	con	1,002000,1,0
	con	2,002000,1,1
	declend
	line	228
	colm	11
	mark	L1
	pnull
	var	2
	var	8
	var	0
	line	231
	colm	19
	invoke	1
	line	231
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	1
	str	0
	line	233
	colm	8
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	3
	pnull
	var	2
	line	235
	colm	15
	bang
	line	235
	colm	12
	asgn
	pop
	mark0
	mark	L6
	pnull
	var	6
	pnull
	var	0
	var	3
	line	236
	colm	16
	subsc
	line	236
	colm	9
	asgn
	unmark
lab L6
	mark	L7
	mark0
	pnull
	var	6
	int	1
	line	237
	colm	12
	numlt
	unmark
	mark	L8
	pnull
	var	6
	var	9
	var	6
	line	238
	colm	18
	invoke	1
	line	238
	colm	12
	asgn
	unmark
lab L8
	pnull
	var	3
	var	10
	var	3
	line	239
	colm	22
	invoke	1
	line	239
	colm	12
	asgn
	unmark
lab L7
	pnull
	var	1
	dup
	var	11
	var	12
	var	3
	pnull
	var	6
	int	2
	line	241
	colm	31
	plus
	line	241
	colm	25
	invoke	2
	pnull
	var	6
	pnull
	var	3
	line	241
	colm	41
	size
	line	241
	colm	39
	mult
	line	241
	colm	20
	invoke	2
	line	241
	colm	11
	cat
	asgn
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L9
	mark	L10
	var	1
	line	244
	colm	4
	pret
lab L10
	pfail
	unmark
lab L9
	pnull
	line	246
	colm	1
	pfail
	end
proc poly2profilelen
	local	0,001000,poly
	local	1,000020,i
	local	2,000020,keys
	local	3,000020,k
	local	4,000020,count
	local	5,000020,var
	local	6,000000,keylist
	local	7,000000,repl
	local	8,000000,abs
	con	0,002000,1,0
	declend
	line	248
	colm	11
	mark	L1
	pnull
	var	2
	var	6
	var	0
	line	251
	colm	19
	invoke	1
	line	251
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	1
	int	0
	line	253
	colm	6
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	3
	pnull
	var	2
	line	255
	colm	15
	bang
	line	255
	colm	12
	asgn
	pop
	mark0
	pnull
	var	1
	dup
	pnull
	var	7
	var	3
	var	8
	pnull
	var	0
	var	3
	line	256
	colm	31
	subsc
	line	256
	colm	26
	invoke	1
	line	256
	colm	19
	invoke	2
	line	256
	colm	14
	size
	line	256
	colm	10
	plus
	asgn
	unmark
lab L4
	efail
lab L5
	unmark
lab L3
	mark	L6
	mark	L7
	var	1
	line	258
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	260
	colm	1
	pfail
	end
proc basepolystr
	local	0,001000,clist
	local	1,001000,plist
	local	2,000000,poly2str
	local	3,000000,basepoly
	con	0,010000,1,050
	con	1,010000,1,051
	declend
	line	262
	colm	11
	mark	L1
	mark	L2
	pnull
	pnull
	str	0
	var	2
	var	3
	var	0
	var	1
	line	264
	colm	35
	invoke	2
	line	264
	colm	26
	invoke	1
	line	264
	colm	15
	cat
	str	1
	line	264
	colm	51
	cat
	line	264
	colm	4
	pret
lab L2
	pfail
	unmark
lab L1
	pnull
	line	266
	colm	1
	pfail
	end
proc basepoly
	local	0,001000,clist
	local	1,001000,plist
	local	2,000020,poly
	local	3,000020,i
	local	4,000020,c
	local	5,000020,p
	local	6,000040,vlist
	local	7,000000,string
	local	8,000000,table
	local	9,000000,get
	local	10,000000,repl
	con	0,002000,1,1
	con	1,002000,1,0
	declend
	line	268
	colm	11
	init	L1
	mark	L1
	pnull
	var	6
	var	7
	line	272
	colm	28
	keywd	lcase
	line	272
	colm	27
	invoke	1
	line	272
	colm	18
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	2
	var	8
	line	274
	colm	17
	invoke	0
	line	274
	colm	9
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	3
	int	0
	line	276
	colm	6
	asgn
	unmark
lab L3
	mark	L4
lab L5
	mark0
	pnull
	var	4
	var	9
	var	0
	line	278
	colm	18
	invoke	1
	line	278
	colm	12
	asgn
	pop
	pnull
	var	5
	var	9
	var	1
	line	278
	colm	36
	invoke	1
	line	278
	colm	30
	asgn
	unmark
	mark	L5
	mark	L8
	pnull
	pnull
	var	2
	var	10
	pnull
	var	6
	var	3
	line	279
	colm	22
	subsc
	pnull
	int	1
	var	5
	line	279
	colm	30
	numle
	line	279
	colm	16
	invoke	2
	line	279
	colm	11
	subsc
	pnull
	int	1
	var	4
	line	279
	colm	44
	numne
	line	279
	colm	38
	asgn
	unmark
lab L8
	pnull
	var	3
	dup
	int	0
	line	280
	colm	9
	plus
	asgn
lab L6
	unmark
	goto	L5
lab L7
	unmark
lab L4
	mark	L9
	mark	L10
	var	2
	line	283
	colm	4
	pret
lab L10
	pfail
	unmark
lab L9
	pnull
	line	285
	colm	1
	pfail
	end
