proc invoke
	filen	calls.icn
	local	0,001000,call
	declend
	line	36
	colm	11
	mark	L1
	mark0
	pnull
	var	0
	line	38
	colm	16
	field	proc
	pnull
	var	0
	line	38
	colm	28
	field	args
	invoke	-1
	line	38
	colm	4
	psusp
	pop
lab L2
	efail
lab L3
	unmark
lab L1
	pnull
	line	40
	colm	1
	pfail
	end
proc call_image
	local	0,001000,call
	local	1,000020,args
	local	2,000000,procname
	con	0,010000,0
	con	1,010000,2,054,040
	con	2,010000,1,050
	con	3,002000,1,1
	con	4,002000,1,2
	con	5,010000,1,051
	declend
	line	46
	colm	11
	mark	L1
	pnull
	var	1
	str	0
	line	49
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	1
	dup
	pnull
	pnull
	pnull
	var	0
	line	51
	colm	25
	field	args
	line	51
	colm	20
	bang
	str	1
	line	51
	colm	31
	cat
	line	51
	colm	15
	cat
	asgn
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L5
	mark	L6
	pnull
	pnull
	pnull
	var	2
	pnull
	var	0
	line	53
	colm	24
	field	proc
	line	53
	colm	19
	invoke	1
	str	2
	line	53
	colm	31
	cat
	pnull
	var	1
	int	3
	pnull
	int	4
	line	53
	colm	48
	neg
	line	53
	colm	47
	sect
	line	53
	colm	38
	cat
	str	5
	line	53
	colm	52
	cat
	line	53
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	55
	colm	1
	pfail
	end
proc make_call
	local	0,001000,s
	local	1,000020,arg
	local	2,000020,args
	local	3,000020,result
	local	4,000000,call
	local	5,000000,proc
	local	6,000000,tab
	local	7,000000,upto
	local	8,000000,move
	local	9,000000,make_args
	con	0,020000,1,050
	con	1,002000,1,1
	declend
	line	61
	colm	11
	mark	L1
	var	0
	line	64
	colm	6
	bscan
	mark	L2
	pnull
	var	3
	mark	L3
	var	4
	var	5
	var	6
	var	7
	cset	0
	line	65
	colm	35
	invoke	1
	line	65
	colm	30
	invoke	1
	line	65
	colm	26
	invoke	1
	line	65
	colm	21
	invoke	1
	esusp
	goto	L4
lab L3
	line	65
	colm	46
	pfail
lab L4
	line	65
	colm	14
	asgn
	unmark
lab L2
	mark	L5
	var	8
	int	1
	line	66
	colm	11
	invoke	1
	unmark
lab L5
	pnull
	pnull
	var	3
	line	67
	colm	13
	field	args
	var	9
	var	6
	pnull
	int	1
	line	67
	colm	36
	neg
	line	67
	colm	35
	invoke	1
	line	67
	colm	31
	invoke	1
	line	67
	colm	19
	asgn
	line	64
	colm	6
	escan
	unmark
lab L1
	mark	L6
	mark	L7
	var	3
	line	70
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	72
	colm	1
	pfail
	end
proc make_args
	local	0,001000,s
	local	1,000020,args
	local	2,000020,arg
	local	3,000000,tab
	local	4,000000,upto
	local	5,000000,put
	local	6,000000,ivalue
	local	7,000000,move
	con	0,020000,1,054
	con	1,002000,1,0
	con	2,002000,1,1
	declend
	line	76
	colm	11
	mark	L1
	pnull
	var	1
	pnull
	line	79
	colm	12
	llist	0
	line	79
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	var	0
	line	81
	colm	6
	bscan
lab L3
	mark0
	pnull
	var	2
	var	3
	mark	L6
	var	4
	cset	0
	line	82
	colm	28
	invoke	1
	esusp
	goto	L7
lab L6
	int	1
lab L7
	line	82
	colm	23
	invoke	1
	line	82
	colm	17
	asgn
	unmark
	mark	L3
	mark	L8
	mark	L9
	var	5
	var	1
	var	6
	var	2
	line	83
	colm	26
	invoke	1
	line	83
	colm	13
	invoke	2
	esusp
	goto	L10
lab L9
	line	83
	colm	35
	pfail
lab L10
	unmark
lab L8
	mark	L11
	var	7
	int	2
	line	84
	colm	14
	invoke	1
	esusp
	goto	L12
lab L11
	unmark
	pnull
	goto	L5
lab L12
lab L4
	unmark
	goto	L3
lab L5
	line	81
	colm	6
	escan
	unmark
lab L2
	mark	L13
	mark	L14
	var	1
	line	88
	colm	4
	pret
lab L14
	pfail
	unmark
lab L13
	pnull
	line	90
	colm	1
	pfail
	end
proc call_code
	local	0,001000,s
	local	1,000020,code
	local	2,000020,arg
	local	3,000020,result
	local	4,000000,tab
	local	5,000000,upto
	local	6,000000,move
	local	7,000000,ivalue
	con	0,010000,5,143,141,154,154,050
	con	1,020000,1,050
	con	2,010000,3,054,040,133
	con	3,002000,1,1
	con	4,020000,2,054,051
	con	5,010000,2,054,040
	con	6,002000,1,2
	con	7,010000,2,135,051
	declend
	line	94
	colm	11
	mark	L1
	var	0
	line	97
	colm	6
	bscan
	mark	L2
	pnull
	var	3
	mark	L3
	pnull
	pnull
	str	0
	var	4
	var	5
	cset	1
	line	98
	colm	36
	invoke	1
	line	98
	colm	31
	invoke	1
	line	98
	colm	25
	cat
	str	2
	line	98
	colm	43
	cat
	esusp
	goto	L4
lab L3
	line	98
	colm	54
	pfail
lab L4
	line	98
	colm	14
	asgn
	unmark
lab L2
	mark	L5
	var	6
	int	3
	line	99
	colm	11
	invoke	1
	unmark
lab L5
lab L6
	mark0
	pnull
	var	2
	var	4
	var	5
	cset	4
	line	100
	colm	28
	invoke	1
	line	100
	colm	23
	invoke	1
	line	100
	colm	17
	asgn
	unmark
	mark	L6
	mark	L9
	pnull
	var	3
	dup
	mark	L10
	pnull
	var	7
	var	2
	line	101
	colm	28
	invoke	1
	str	5
	line	101
	colm	34
	cat
	esusp
	goto	L11
lab L10
	line	101
	colm	44
	pfail
lab L11
	line	101
	colm	17
	cat
	asgn
	unmark
lab L9
	mark	L12
	var	6
	int	3
	line	102
	colm	14
	invoke	1
	esusp
	goto	L13
lab L12
	unmark
	pnull
	goto	L8
lab L13
lab L7
	unmark
	goto	L6
lab L8
	line	97
	colm	6
	escan
	unmark
lab L1
	mark	L14
	mark	L15
	pnull
	pnull
	var	3
	int	3
	pnull
	int	6
	line	106
	colm	20
	neg
	line	106
	colm	19
	sect
	str	7
	line	106
	colm	24
	cat
	line	106
	colm	4
	pret
lab L15
	pfail
	unmark
lab L14
	pnull
	line	108
	colm	1
	pfail
	end
proc write_calltable
	local	0,001000,T
	local	1,001000,p
	local	2,001000,f
	local	3,000020,name
	local	4,000000,key
	local	5,000000,writes
	local	6,000000,procname
	local	7,000000,image
	local	8,000000,write
	con	0,010000,1,075
	con	1,010000,1,072
	con	2,010000,1,054
	declend
	line	118
	colm	11
	mark	L1
	mark0
	pnull
	var	3
	var	4
	var	0
	line	121
	colm	21
	invoke	1
	line	121
	colm	15
	asgn
	pop
	mark0
	mark	L4
	var	5
	var	2
	var	3
	str	0
	line	122
	colm	13
	invoke	3
	unmark
lab L4
	mark	L5
	var	5
	var	2
	var	6
	var	1
	line	123
	colm	25
	invoke	1
	str	1
	line	123
	colm	13
	invoke	3
	unmark
lab L5
	mark0
	var	5
	var	2
	var	7
	pnull
	pnull
	var	0
	var	3
	line	124
	colm	31
	subsc
	line	124
	colm	29
	bang
	line	124
	colm	28
	invoke	1
	str	2
	line	124
	colm	19
	invoke	3
	pop
lab L6
	efail
lab L7
	unmark
lab L2
	efail
lab L3
	unmark
lab L1
	mark	L8
	var	8
	var	2
	line	127
	colm	9
	invoke	1
	unmark
lab L8
	mark	L9
	mark	L10
	pnull
	line	129
	colm	4
	pret
lab L10
	pfail
	unmark
lab L9
	pnull
	line	131
	colm	1
	pfail
	end
proc read_calltable
	local	0,001000,f
	local	1,000020,T
	local	2,000020,line
	local	3,000020,p
	local	4,000020,args
	local	5,000000,table
	local	6,000000,read
	local	7,000000,name
	local	8,000000,tab
	local	9,000000,upto
	local	10,000000,move
	local	11,000000,put
	local	12,000000,ivalue
	local	13,000000,call
	local	14,000000,proc
	con	0,020000,2,075,042
	con	1,002000,1,1
	con	2,020000,1,072
	con	3,020000,1,054
	declend
	line	135
	colm	11
	mark	L1
	pnull
	var	1
	var	5
	line	138
	colm	14
	invoke	0
	line	138
	colm	6
	asgn
	unmark
lab L1
	mark	L2
lab L3
	mark0
	pnull
	var	2
	var	6
	var	0
	line	140
	colm	22
	invoke	1
	line	140
	colm	15
	asgn
	unmark
	mark	L3
	var	2
	line	141
	colm	12
	bscan
	mark	L6
	pnull
	var	7
	mark	L7
	var	8
	var	9
	cset	0
	line	142
	colm	26
	invoke	1
	line	142
	colm	21
	invoke	1
	esusp
	goto	L8
lab L7
	line	142
	colm	36
	pfail
lab L8
	line	142
	colm	15
	asgn
	unmark
lab L6
	mark	L9
	var	10
	int	1
	line	143
	colm	14
	invoke	1
	unmark
lab L9
	mark	L10
	pnull
	var	3
	mark	L11
	var	8
	var	9
	cset	2
	line	144
	colm	23
	invoke	1
	line	144
	colm	18
	invoke	1
	esusp
	goto	L12
lab L11
	line	144
	colm	32
	pfail
lab L12
	line	144
	colm	12
	asgn
	unmark
lab L10
	mark	L13
	var	10
	int	1
	line	145
	colm	14
	invoke	1
	unmark
lab L13
	mark	L14
	pnull
	var	4
	pnull
	line	146
	colm	18
	llist	0
	line	146
	colm	15
	asgn
	unmark
lab L14
	mark	L15
lab L16
	mark0
	var	11
	var	4
	var	12
	var	8
	var	9
	cset	3
	line	147
	colm	41
	invoke	1
	line	147
	colm	36
	invoke	1
	line	147
	colm	32
	invoke	1
	line	147
	colm	19
	invoke	2
	unmark
	mark	L16
	var	10
	int	1
	line	148
	colm	18
	invoke	1
lab L17
	unmark
	goto	L16
lab L18
	unmark
lab L15
	pnull
	pnull
	var	1
	var	7
	line	149
	colm	11
	subsc
	mark	L19
	var	13
	var	14
	var	3
	line	149
	colm	30
	invoke	1
	var	4
	line	149
	colm	25
	invoke	2
	esusp
	goto	L20
lab L19
	line	149
	colm	43
	pfail
lab L20
	line	149
	colm	18
	asgn
	line	141
	colm	12
	escan
lab L4
	unmark
	goto	L3
lab L5
	unmark
lab L2
	mark	L21
	mark	L22
	var	1
	line	152
	colm	4
	pret
lab L22
	pfail
	unmark
lab L21
	pnull
	line	154
	colm	1
	pfail
	end
