proc basename
	filen	basename.icn
	local	0,001000,name
	local	1,001000,suffix
	local	2,000020,i
	local	3,000020,base
	local	4,000000,upto
	local	5,000000,tab
	local	6,000000,integer
	local	7,000000,find
	local	8,000000,pos
	con	0,020000,3,057,134,072
	con	1,002000,1,1
	con	2,002000,1,0
	declend
	line	31
	colm	11
	mark	L1
	var	0
	line	34
	colm	9
	bscan
	mark	L2
	mark0
	pnull
	var	2
	var	4
	cset	0
	line	35
	colm	22
	invoke	1
	line	35
	colm	15
	asgn
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L5
	var	5
	pnull
	var	6
	var	2
	line	36
	colm	18
	invoke	1
	int	1
	line	36
	colm	22
	plus
	line	36
	colm	10
	invoke	1
	unmark
lab L5
	mark	L6
	pnull
	var	3
	int	1
	var	5
	var	7
	pnull
	var	1
	line	37
	colm	29
	nonnull
	line	37
	colm	28
	invoke	1
	line	37
	colm	23
	invoke	1
	var	8
	pnull
	pnull
	var	1
	line	37
	colm	46
	size
	line	37
	colm	45
	neg
	line	37
	colm	44
	invoke	1
	line	37
	colm	19
	invoke	2
	line	37
	colm	15
	asgn
	unmark
	mark	L8
	var	3
	line	37
	colm	61
	pret
lab L8
	pfail
	goto	L7
lab L6
	mark	L9
	var	5
	int	2
	line	38
	colm	22
	invoke	1
	line	38
	colm	12
	pret
lab L9
	pfail
lab L7
	line	34
	colm	9
	escan
	unmark
lab L1
	pnull
	line	41
	colm	1
	pfail
	end
