version	U12.1.00
uid	popen.u1-1786350189-0
impl	error
global	5
	0,000001,PIPE_cmd,0
	1,000001,PIPE_fname,0
	2,000005,popen,2
	3,000005,pclose,1
	4,000005,tempfile,1

proc popen
	local	0,001000,cmd
	local	1,001000,mode
	local	2,000020,tfn
	local	3,000020,p
	local	4,000000,PIPE_cmd
	local	5,000000,table
	local	6,000000,PIPE_fname
	local	7,000000,type
	local	8,000000,open
	local	9,000000,tempfile
	local	10,000000,upto
	local	11,000000,system
	con	0,010000,5,160,151,160,145,163
	con	1,010000,5,164,141,142,154,145
	con	2,010000,1,160
	con	3,010000,5,160,151,160,145,056
	con	4,020000,1,162
	con	5,010000,3,040,076,040
	con	6,020000,1,167
	declend
	filen	popen.icn
	line	40
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	mark	L4
	pnull
	str	0
	line	43
	colm	23
	synt	any
	keywd	features
	line	43
	colm	20
	synt	any
	lexeq
	line	43
	colm	34
	synt	any
	esusp
	goto	L5
lab L4
	mark	L6
	pnull
	var	4
	var	5
	line	44
	colm	22
	synt	any
	invoke	0
	line	44
	colm	14
	synt	any
	asgn
	unmark
lab L6
	pnull
	var	6
	var	5
	line	45
	colm	24
	synt	any
	invoke	0
	line	45
	colm	16
	synt	any
	asgn
lab L5
	unmark
lab L2
	einit	L1
lab L3
	mark	L7
	pnull
	var	7
	var	6
	line	47
	colm	8
	synt	any
	invoke	1
	str	1
	line	47
	colm	21
	synt	any
	lexne
	pop
	mark	L8
	var	8
	var	0
	pnull
	var	1
	str	2
	line	47
	colm	58
	synt	any
	cat
	line	47
	colm	47
	synt	any
	invoke	2
	line	47
	colm	36
	synt	any
	pret
lab L8
	synt	any
	pfail
	unmark
lab L7
	mark	L9
	pnull
	var	2
	var	9
	str	3
	line	48
	colm	18
	synt	any
	invoke	1
	line	48
	colm	7
	synt	any
	asgn
	unmark
lab L9
	mark	L10
	var	10
	cset	4
	var	1
	line	49
	colm	7
	synt	any
	invoke	2
	pop
	var	11
	pnull
	pnull
	var	0
	str	5
	line	49
	colm	32
	synt	any
	cat
	var	2
	line	49
	colm	41
	synt	any
	cat
	line	49
	colm	27
	synt	any
	invoke	1
	unmark
lab L10
	mark	L11
	pnull
	var	3
	var	8
	var	2
	var	1
	line	50
	colm	12
	synt	any
	invoke	2
	line	50
	colm	5
	synt	any
	asgn
	unmark
lab L11
	mark	L12
	pnull
	pnull
	var	6
	var	3
	line	51
	colm	13
	synt	any
	subsc
	var	2
	line	51
	colm	17
	synt	any
	asgn
	unmark
lab L12
	mark	L13
	var	10
	cset	6
	var	1
	line	52
	colm	7
	synt	any
	invoke	2
	pop
	pnull
	pnull
	var	4
	var	3
	line	52
	colm	29
	synt	any
	subsc
	var	0
	line	52
	colm	33
	synt	any
	asgn
	unmark
lab L13
	mark	L14
	mark	L15
	var	3
	line	53
	colm	3
	synt	any
	pret
lab L15
	synt	any
	pfail
	unmark
lab L14
	pnull
	line	54
	colm	1
	synt	any
	pfail
	end
proc pclose
	local	0,001000,pipe
	local	1,000020,status
	local	2,000000,type
	local	3,000000,PIPE_fname
	local	4,000000,close
	local	5,000000,PIPE_cmd
	local	6,000000,system
	local	7,000000,remove
	con	0,010000,5,164,141,142,154,145
	con	1,010000,3,040,074,040
	declend
	line	57
	colm	11
	synt	any
	mark	L1
	pnull
	var	2
	var	3
	line	60
	colm	8
	synt	any
	invoke	1
	str	0
	line	60
	colm	21
	synt	any
	lexne
	pop
	mark	L2
	var	4
	var	0
	line	60
	colm	48
	synt	any
	invoke	1
	line	60
	colm	36
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	mark	L3
	line	61
	colm	3
	synt	ifelse
	mark	L4
	pnull
	pnull
	var	5
	var	0
	line	61
	colm	15
	synt	any
	subsc
	line	61
	colm	6
	synt	any
	nonnull
	unmark
	mark	L6
	var	4
	var	0
	line	62
	colm	10
	synt	any
	invoke	1
	unmark
lab L6
	mark	L7
	pnull
	pnull
	var	5
	var	0
	line	63
	colm	13
	synt	any
	subsc
	dup
	pnull
	str	1
	pnull
	var	3
	var	0
	line	63
	colm	44
	synt	any
	subsc
	line	63
	colm	31
	synt	any
	cat
	line	63
	colm	20
	synt	any
	cat
	asgn
	unmark
lab L7
	pnull
	var	1
	var	6
	pnull
	var	5
	var	0
	line	64
	colm	30
	synt	any
	subsc
	line	64
	colm	21
	synt	any
	invoke	1
	line	64
	colm	12
	synt	any
	asgn
	goto	L5
lab L4
	pnull
	var	1
	var	4
	var	0
	line	66
	colm	23
	synt	any
	invoke	1
	line	66
	colm	15
	synt	any
	asgn
lab L5
	line	61
	colm	3
	synt	endifelse
	unmark
lab L3
	mark	L8
	var	7
	pnull
	var	3
	var	0
	line	67
	colm	20
	synt	any
	subsc
	line	67
	colm	9
	synt	any
	invoke	1
	unmark
lab L8
	mark	L9
	pnull
	pnull
	var	5
	var	0
	line	68
	colm	11
	synt	any
	subsc
	pnull
	pnull
	var	3
	var	0
	line	68
	colm	31
	synt	any
	subsc
	line	68
	colm	41
	synt	any
	keywd	null
	line	68
	colm	38
	synt	any
	asgn
	line	68
	colm	18
	synt	any
	asgn
	unmark
lab L9
	mark	L10
	mark	L11
	var	1
	line	69
	colm	3
	synt	any
	pret
lab L11
	synt	any
	pfail
	unmark
lab L10
	pnull
	line	70
	colm	1
	synt	any
	pfail
	end
proc tempfile
	local	0,001000,template
	local	1,000020,temp_name
	local	2,000040,dir
	local	3,000000,right
	local	4,000000,close
	local	5,000000,open
	con	0,010000,4,125,116,111,130
	con	1,010000,5,057,164,155,160,057
	con	2,010000,0
	con	3,002000,1,1
	con	4,002000,3,999
	con	5,002000,1,3
	con	6,010000,1,060
	declend
	line	74
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	line	79
	colm	5
	synt	ifelse
	mark	L4
	pnull
	str	0
	line	79
	colm	18
	synt	any
	keywd	features
	line	79
	colm	15
	synt	any
	lexeq
	unmark
	pnull
	var	2
	str	1
	line	79
	colm	37
	synt	any
	asgn
	goto	L5
lab L4
	pnull
	var	2
	str	2
	line	80
	colm	14
	synt	any
	asgn
lab L5
	line	79
	colm	5
	synt	endifelse
	unmark
lab L2
	einit	L1
lab L3
	mark	L6
	line	82
	colm	3
	synt	every
	mark0
	pnull
	var	1
	pnull
	pnull
	var	2
	var	0
	line	82
	colm	26
	synt	any
	cat
	var	3
	pnull
	int	3
	int	4
	push1
	line	82
	colm	49
	synt	any
	toby
	int	5
	str	6
	line	82
	colm	46
	synt	any
	invoke	3
	line	82
	colm	38
	synt	any
	cat
	line	82
	colm	19
	synt	any
	asgn
	pop
	mark0
	mark	L9
	var	4
	var	5
	var	1
	line	83
	colm	15
	synt	any
	invoke	1
	line	83
	colm	10
	synt	any
	invoke	1
	pop
	unmark
	unmark
	goto	L7
	unmark
lab L9
	line	84
	colm	5
	synt	suspend
	mark0
	pnull
	var	1
	line	84
	colm	13
	synt	any
	nonnull
	line	84
	colm	5
	synt	any
	psusp
	pop
lab L10
	efail
lab L11
	line	84
	colm	5
	synt	endsuspend
	unmark
lab L7
	efail
lab L8
	line	82
	colm	3
	synt	endevery
	unmark
lab L6
	pnull
	line	86
	colm	1
	synt	any
	pfail
	end
