version	U12.1.00
uid	qsort.u1-1786033037-0
impl	local
global	1
	0,000005,util__qsort,4

proc util__qsort
	local	0,001000,l
	local	1,001000,comparator
	local	2,001000,first
	local	3,001000,last
	local	4,000020,i
	local	5,000020,j
	local	6,000020,pivot
	local	7,000000,util__qsort
	con	0,002000,1,1
	con	1,002000,1,2
	declend
	filen	qsort.icn
	line	14
	colm	11
	synt	any
	mark	L1
	pnull
	pnull
	var	2
	line	16
	colm	4
	synt	any
	null
	int	0
	line	16
	colm	11
	synt	any
	asgn
	unmark
lab L1
	mark	L2
	pnull
	pnull
	var	3
	line	17
	colm	4
	synt	any
	null
	pnull
	var	0
	line	17
	colm	13
	synt	any
	size
	line	17
	colm	10
	synt	any
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	4
	var	2
	line	19
	colm	6
	synt	any
	asgn
	unmark
lab L3
	mark	L4
	pnull
	var	5
	var	3
	line	20
	colm	6
	synt	any
	asgn
	unmark
lab L4
	mark	L5
	line	22
	colm	4
	synt	if
	mark0
	pnull
	var	4
	var	5
	line	22
	colm	9
	synt	any
	numeq
	unmark
	mark	L6
	var	0
	line	23
	colm	7
	synt	any
	pret
lab L6
	synt	any
	pfail
	line	22
	colm	4
	synt	endif
	unmark
lab L5
	mark	L7
	pnull
	var	6
	pnull
	var	0
	pnull
	pnull
	var	4
	var	5
	line	25
	colm	18
	synt	any
	plus
	int	1
	line	25
	colm	23
	synt	any
	div
	line	25
	colm	14
	synt	any
	subsc
	line	25
	colm	10
	synt	any
	asgn
	unmark
lab L7
	mark	L8
lab L9
	line	26
	colm	4
	synt	repeat
	mark	L9
	mark	L12
lab L13
	line	27
	colm	7
	synt	while
	mark0
	pnull
	var	1
	line	27
	colm	23
	synt	any
	field	compare
	pnull
	var	0
	var	4
	line	27
	colm	33
	synt	any
	subsc
	var	6
	line	27
	colm	31
	synt	any
	invoke	2
	unmark
	mark	L13
	pnull
	var	4
	dup
	int	0
	line	27
	colm	50
	synt	any
	plus
	asgn
lab L14
	unmark
	goto	L13
lab L15
	line	27
	colm	7
	synt	endwhile
	unmark
lab L12
	mark	L16
lab L17
	line	28
	colm	7
	synt	while
	mark0
	pnull
	var	1
	line	28
	colm	23
	synt	any
	field	compare
	var	6
	pnull
	var	0
	var	5
	line	28
	colm	40
	synt	any
	subsc
	line	28
	colm	31
	synt	any
	invoke	2
	unmark
	mark	L17
	pnull
	var	5
	dup
	int	0
	line	28
	colm	50
	synt	any
	minus
	asgn
lab L18
	unmark
	goto	L17
lab L19
	line	28
	colm	7
	synt	endwhile
	unmark
lab L16
	mark	L20
	line	29
	colm	7
	synt	if
	mark0
	pnull
	var	4
	var	5
	line	29
	colm	12
	synt	any
	numle
	unmark
	mark	L21
	pnull
	pnull
	var	0
	var	4
	line	30
	colm	11
	synt	any
	subsc
	pnull
	var	0
	var	5
	line	30
	colm	20
	synt	any
	subsc
	line	30
	colm	15
	synt	any
	swap
	unmark
lab L21
	mark	L22
	pnull
	var	4
	dup
	int	0
	line	31
	colm	12
	synt	any
	plus
	asgn
	unmark
lab L22
	pnull
	var	5
	dup
	int	0
	line	32
	colm	12
	synt	any
	minus
	asgn
	line	29
	colm	7
	synt	endif
	unmark
lab L20
	line	34
	colm	7
	synt	if
	mark0
	pnull
	var	4
	var	5
	line	34
	colm	12
	synt	any
	numgt
	unmark
	unmark
	pnull
	goto	L11
	line	34
	colm	7
	synt	endif
lab L10
	unmark
	goto	L9
lab L11
	line	26
	colm	4
	synt	endrepeat
	unmark
lab L8
	mark	L23
	line	37
	colm	4
	synt	if
	mark0
	pnull
	var	2
	var	5
	line	37
	colm	13
	synt	any
	numlt
	unmark
	var	7
	var	0
	var	1
	var	2
	var	5
	line	38
	colm	18
	synt	any
	invoke	4
	line	37
	colm	4
	synt	endif
	unmark
lab L23
	mark	L24
	line	39
	colm	4
	synt	if
	mark0
	pnull
	var	4
	var	3
	line	39
	colm	9
	synt	any
	numlt
	unmark
	var	7
	var	0
	var	1
	var	4
	var	3
	line	40
	colm	18
	synt	any
	invoke	4
	line	39
	colm	4
	synt	endif
	unmark
lab L24
	mark	L25
	mark	L26
	var	0
	line	41
	colm	4
	synt	any
	pret
lab L26
	synt	any
	pfail
	unmark
lab L25
	pnull
	line	42
	colm	2
	synt	any
	pfail
	end
