version	U12.1.00
uid	gpxlib.u1-1786033006-0
impl	error
link	wopen.u
global	4
	0,000005,PushWin,1
	1,000005,Distance,4
	2,000005,InBounds,4
	3,000005,ScratchCanvas,4

proc PushWin
	local	0,001000,a
	local	1,000040,type
	local	2,000000,proc
	local	3,000000,push
	con	0,010000,4,164,171,160,145
	con	1,002000,1,0
	con	2,002000,1,1
	con	3,010000,6,167,151,156,144,157,167
	declend
	filen	gpxlib.icn
	line	69
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	pnull
	var	1
	var	2
	str	0
	int	1
	line	72
	colm	24
	synt	any
	invoke	2
	line	72
	colm	17
	synt	any
	asgn
	unmark
lab L2
	einit	L1
lab L3
	mark	L4
	line	74
	colm	4
	synt	if
	mark0
	mark	L5
	pnull
	var	1
	pnull
	var	0
	int	2
	line	74
	colm	18
	synt	any
	subsc
	line	74
	colm	16
	synt	any
	invoke	1
	str	3
	line	74
	colm	23
	synt	any
	lexeq
	unmark
	efail
lab L5
	pnull
	unmark
	var	3
	var	0
	line	75
	colm	15
	synt	any
	keywd	window
	line	75
	colm	11
	synt	any
	invoke	2
	line	74
	colm	4
	synt	endif
	unmark
lab L4
	mark	L6
	mark	L7
	var	0
	line	76
	colm	4
	synt	any
	pret
lab L7
	synt	any
	pfail
	unmark
lab L6
	pnull
	line	77
	colm	1
	synt	any
	pfail
	end
proc Distance
	local	0,001000,x1
	local	1,001000,y1
	local	2,001000,x2
	local	3,001000,y2
	local	4,000000,sqrt
	declend
	line	82
	colm	11
	synt	any
	mark	L1
	pnull
	var	0
	dup
	var	2
	line	83
	colm	7
	synt	any
	minus
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	1
	dup
	var	3
	line	84
	colm	7
	synt	any
	minus
	asgn
	unmark
lab L2
	mark	L3
	mark	L4
	var	4
	pnull
	pnull
	var	0
	var	0
	line	85
	colm	19
	synt	any
	mult
	pnull
	var	1
	var	1
	line	85
	colm	29
	synt	any
	mult
	line	85
	colm	24
	synt	any
	plus
	line	85
	colm	15
	synt	any
	invoke	1
	line	85
	colm	4
	synt	any
	pret
lab L4
	synt	any
	pfail
	unmark
lab L3
	pnull
	line	86
	colm	1
	synt	any
	pfail
	end
proc InBounds
	local	0,001000,x
	local	1,001000,y
	local	2,001000,w
	local	3,001000,h
	con	0,002000,1,0
	declend
	line	91
	colm	11
	synt	any
	mark	L1
	line	92
	colm	4
	synt	if
	mark0
	pnull
	var	2
	int	0
	line	92
	colm	9
	synt	any
	numlt
	unmark
	pnull
	var	0
	dup
	pnull
	var	2
	pnull
	var	2
	line	93
	colm	19
	synt	any
	neg
	line	93
	colm	16
	synt	any
	asgn
	line	93
	colm	9
	synt	any
	minus
	asgn
	line	92
	colm	4
	synt	endif
	unmark
lab L1
	mark	L2
	line	94
	colm	4
	synt	if
	mark0
	pnull
	var	3
	int	0
	line	94
	colm	9
	synt	any
	numlt
	unmark
	pnull
	var	1
	dup
	pnull
	var	3
	pnull
	var	3
	line	95
	colm	19
	synt	any
	neg
	line	95
	colm	16
	synt	any
	asgn
	line	95
	colm	9
	synt	any
	minus
	asgn
	line	94
	colm	4
	synt	endif
	unmark
lab L2
	mark	L3
	mark	L4
	pnull
	pnull
	var	0
	line	96
	colm	17
	synt	any
	keywd	x
	line	96
	colm	14
	synt	any
	numle
	pnull
	var	0
	var	2
	line	96
	colm	25
	synt	any
	plus
	line	96
	colm	20
	synt	any
	numle
	pop
	pnull
	pnull
	var	1
	line	96
	colm	38
	synt	any
	keywd	y
	line	96
	colm	35
	synt	any
	numle
	pnull
	var	1
	var	3
	line	96
	colm	46
	synt	any
	plus
	line	96
	colm	41
	synt	any
	numle
	pop
	line	96
	colm	53
	synt	any
	keywd	null
	line	96
	colm	4
	synt	any
	pret
lab L4
	synt	any
	pfail
	unmark
lab L3
	pnull
	line	97
	colm	1
	synt	any
	pfail
	end
proc ScratchCanvas
	local	0,001000,win
	local	1,001000,w
	local	2,001000,h
	local	3,001000,id
	local	4,000020,d
	local	5,000020,s
	local	6,000040,dpytab
	local	7,000040,type
	local	8,000000,table
	local	9,000000,proc
	local	10,000000,WAttrib
	local	11,000000,image
	local	12,000000,WOpen
	con	0,010000,4,164,171,160,145
	con	1,002000,1,0
	con	2,010000,6,167,151,156,144,157,167
	con	3,010000,5,167,151,144,164,150
	con	4,010000,6,150,145,151,147,150,164
	con	5,002000,3,100
	con	6,010000,7,144,151,163,160,154,141,171
	con	7,010000,1,054
	con	8,010000,6,167,151,144,164,150,075
	con	9,010000,7,150,145,151,147,150,164,075
	con	10,010000,13,143,141,156,166,141,163,075,150,151,144,144,145,156
	con	11,010000,8,144,151,163,160,154,141,171,075
	declend
	line	102
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	mark	L4
	pnull
	var	6
	var	8
	line	107
	colm	22
	synt	any
	invoke	0
	line	107
	colm	14
	synt	any
	asgn
	unmark
lab L4
	pnull
	var	7
	var	9
	str	0
	int	1
	line	108
	colm	19
	synt	any
	invoke	2
	line	108
	colm	12
	synt	any
	asgn
	unmark
lab L2
	einit	L1
lab L3
	mark	L5
	line	111
	colm	4
	synt	if
	mark0
	pnull
	var	7
	var	0
	line	111
	colm	11
	synt	any
	invoke	1
	str	2
	line	111
	colm	17
	synt	any
	lexne
	unmark
	mark	L6
	pnull
	var	0
	pnull
	var	1
	pnull
	var	2
	var	3
	line	112
	colm	23
	synt	any
	swap
	line	112
	colm	17
	synt	any
	swap
	line	112
	colm	11
	synt	any
	swap
	unmark
lab L6
	pnull
	var	0
	line	113
	colm	14
	synt	any
	keywd	window
	line	113
	colm	11
	synt	any
	asgn
	line	111
	colm	4
	synt	endif
	unmark
lab L5
	mark	L7
	pnull
	pnull
	var	1
	line	115
	colm	4
	synt	any
	null
	var	10
	var	0
	str	3
	line	115
	colm	17
	synt	any
	invoke	2
	line	115
	colm	7
	synt	any
	asgn
	unmark
lab L7
	mark	L8
	pnull
	pnull
	var	2
	line	116
	colm	4
	synt	any
	null
	var	10
	var	0
	str	4
	line	116
	colm	17
	synt	any
	invoke	2
	line	116
	colm	7
	synt	any
	asgn
	unmark
lab L8
	mark	L9
	pnull
	var	1
	dup
	int	5
	line	117
	colm	6
	synt	any
	numlt
	asgn
	unmark
lab L9
	mark	L10
	pnull
	var	2
	dup
	int	5
	line	118
	colm	6
	synt	any
	numlt
	asgn
	unmark
lab L10
	mark	L11
	pnull
	var	4
	var	10
	var	0
	str	6
	line	120
	colm	16
	synt	any
	invoke	2
	line	120
	colm	6
	synt	any
	asgn
	unmark
lab L11
	mark	L12
	pnull
	var	5
	pnull
	pnull
	var	4
	str	7
	line	121
	colm	11
	synt	any
	cat
	var	11
	var	3
	line	121
	colm	26
	synt	any
	invoke	1
	line	121
	colm	18
	synt	any
	cat
	line	121
	colm	6
	synt	any
	asgn
	unmark
lab L12
	mark	L13
	pnull
	pnull
	pnull
	var	6
	var	5
	line	122
	colm	11
	synt	any
	subsc
	line	122
	colm	4
	synt	any
	null
	var	12
	pnull
	str	8
	var	1
	line	122
	colm	33
	synt	any
	cat
	pnull
	str	9
	var	2
	line	122
	colm	49
	synt	any
	cat
	str	10
	pnull
	str	11
	var	4
	line	123
	colm	18
	synt	any
	cat
	line	122
	colm	23
	synt	any
	invoke	4
	line	122
	colm	15
	synt	any
	asgn
	unmark
lab L13
	mark	L14
	pnull
	var	0
	pnull
	var	6
	var	5
	line	124
	colm	17
	synt	any
	subsc
	line	124
	colm	8
	synt	any
	asgn
	unmark
lab L14
	mark	L15
	line	125
	colm	4
	synt	if
	mark0
	pnull
	var	0
	line	125
	colm	7
	synt	any
	null
	unmark
	line	126
	colm	7
	synt	any
	pfail
	line	125
	colm	4
	synt	endif
	unmark
lab L15
	mark	L16
	line	127
	colm	4
	synt	if
	mark0
	mark	L17
	pnull
	var	10
	var	0
	str	3
	line	127
	colm	14
	synt	any
	invoke	2
	var	1
	line	127
	colm	29
	synt	any
	numlt
	line	127
	colm	33
	synt	any
	esusp
	goto	L18
lab L17
	pnull
	var	10
	var	0
	str	4
	line	127
	colm	42
	synt	any
	invoke	2
	var	2
	line	127
	colm	58
	synt	any
	numlt
lab L18
	unmark
	var	10
	var	0
	pnull
	str	8
	var	1
	line	128
	colm	29
	synt	any
	cat
	pnull
	str	9
	var	2
	line	128
	colm	45
	synt	any
	cat
	line	128
	colm	14
	synt	any
	invoke	3
	line	127
	colm	4
	synt	endif
	unmark
lab L16
	mark	L19
	mark	L20
	var	0
	line	129
	colm	4
	synt	any
	pret
lab L20
	synt	any
	pfail
	unmark
lab L19
	pnull
	line	130
	colm	1
	synt	any
	pfail
	end
