proc barchart
	filen	barchart.icn
	local	0,001000,win
	local	1,001000,x
	local	2,001000,y
	local	3,001000,dx
	local	4,001000,dy
	local	5,001000,sf
	local	6,001000,n
	local	7,001000,l
	local	8,001000,w
	local	9,001000,b
	local	10,000020,bc
	local	11,000000,BC_rec
	local	12,000000,list
	local	13,000000,rebar
	con	0,002000,1,0
	con	1,004000,0.99999
	declend
	line	86
	colm	11
	mark	L1
	pnull
	var	10
	var	11
	var	0
	var	1
	var	2
	var	3
	var	4
	var	5
	var	6
	var	7
	var	8
	var	9
	line	88
	colm	16
	invoke	10
	line	88
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	pnull
	pnull
	var	10
	line	89
	colm	6
	field	len
	var	12
	var	6
	int	0
	line	89
	colm	18
	invoke	2
	line	89
	colm	11
	asgn
	unmark
lab L2
	mark	L3
	pnull
	pnull
	var	10
	line	90
	colm	6
	field	val
	var	12
	var	6
	line	90
	colm	18
	invoke	1
	line	90
	colm	11
	asgn
	unmark
lab L3
	mark	L4
	mark	L5
	pnull
	var	5
	int	0
	line	91
	colm	10
	numgt
	unmark
	pnull
	pnull
	var	10
	line	92
	colm	9
	field	round
	real	1
	line	92
	colm	16
	asgn
	goto	L6
lab L5
	pnull
	pnull
	var	10
	line	94
	colm	9
	field	round
	pnull
	real	1
	line	94
	colm	19
	neg
	line	94
	colm	16
	asgn
lab L6
	unmark
lab L4
	mark	L7
	var	13
	var	10
	var	5
	line	95
	colm	9
	invoke	2
	unmark
lab L7
	mark	L8
	mark	L9
	var	10
	line	96
	colm	4
	pret
lab L9
	pfail
	unmark
lab L8
	pnull
	line	97
	colm	1
	pfail
	end
proc setbar
	local	0,001000,bc
	local	1,001000,n
	local	2,001000,v
	local	3,000020,x
	local	4,000020,y
	local	5,000020,o
	local	6,000020,oldlen
	local	7,000020,newlen
	local	8,000020,incr
	local	9,000000,log
	local	10,000000,integer
	local	11,000000,abs
	local	12,000000,rebar
	local	13,000000,real
	local	14,000000,setbar
	local	15,000000,FillRectangle
	con	0,004000,0.5
	con	1,002000,1,1
	con	2,002000,1,0
	declend
	line	104
	colm	11
	mark	L1
	pnull
	var	2
	var	9
	var	2
	pnull
	pnull
	var	0
	line	107
	colm	19
	field	b
	line	107
	colm	16
	nonnull
	line	107
	colm	12
	invoke	2
	line	107
	colm	6
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	6
	mark	L3
	pnull
	pnull
	var	0
	line	108
	colm	16
	field	len
	var	1
	line	108
	colm	20
	subsc
	esusp
	goto	L4
lab L3
	line	108
	colm	26
	pfail
lab L4
	line	108
	colm	11
	asgn
	unmark
lab L2
	mark	L5
	pnull
	var	7
	var	10
	pnull
	pnull
	var	2
	pnull
	var	0
	line	109
	colm	28
	field	sf
	line	109
	colm	24
	mult
	pnull
	var	0
	line	109
	colm	36
	field	round
	line	109
	colm	32
	plus
	line	109
	colm	21
	invoke	1
	line	109
	colm	11
	asgn
	unmark
lab L5
	mark	L6
	mark0
	pnull
	var	11
	var	7
	line	111
	colm	10
	invoke	1
	pnull
	var	0
	line	111
	colm	23
	field	l
	line	111
	colm	19
	numgt
	unmark
	mark	L7
	var	12
	var	0
	pnull
	pnull
	pnull
	real	0
	pnull
	var	0
	line	113
	colm	25
	field	sf
	line	113
	colm	21
	mult
	var	13
	pnull
	var	0
	line	113
	colm	38
	field	l
	line	113
	colm	35
	invoke	1
	line	113
	colm	29
	mult
	var	13
	var	11
	pnull
	var	7
	int	1
	line	113
	colm	59
	minus
	line	113
	colm	52
	invoke	1
	line	113
	colm	48
	invoke	1
	line	113
	colm	42
	div
	line	113
	colm	12
	invoke	2
	unmark
lab L7
	mark	L8
	var	14
	var	0
	var	1
	var	2
	line	114
	colm	20
	invoke	3
	line	114
	colm	7
	pret
lab L8
	pfail
	unmark
lab L6
	mark	L9
	mark0
	pnull
	pnull
	var	8
	pnull
	var	7
	var	6
	line	118
	colm	23
	minus
	line	118
	colm	13
	asgn
	int	2
	line	118
	colm	33
	numne
	unmark
	mark	L10
	mark	L11
	pnull
	pnull
	var	0
	line	119
	colm	12
	field	dx
	int	2
	line	119
	colm	16
	numne
	unmark
	mark	L13
	pnull
	var	3
	pnull
	pnull
	var	0
	line	122
	colm	17
	field	x
	pnull
	pnull
	var	1
	int	1
	line	122
	colm	25
	minus
	pnull
	var	0
	line	122
	colm	34
	field	dx
	line	122
	colm	30
	mult
	line	122
	colm	20
	plus
	line	122
	colm	12
	asgn
	unmark
lab L13
	mark	L14
	pnull
	var	4
	pnull
	pnull
	var	0
	line	123
	colm	17
	field	y
	var	6
	line	123
	colm	20
	plus
	line	123
	colm	12
	asgn
	unmark
lab L14
	mark	L15
	pnull
	var	8
	int	2
	line	124
	colm	18
	numlt
	unmark
	var	15
	pnull
	var	0
	line	125
	colm	29
	field	win
	var	3
	pnull
	var	4
	var	8
	line	125
	colm	40
	plus
	pnull
	var	0
	line	125
	colm	50
	field	w
	pnull
	var	8
	line	125
	colm	54
	neg
	line	125
	colm	26
	invoke	5
	goto	L16
lab L15
	var	15
	pnull
	var	0
	line	127
	colm	29
	field	win
	var	3
	var	4
	pnull
	var	0
	line	127
	colm	43
	field	w
	var	8
	line	127
	colm	26
	invoke	5
lab L16
	goto	L12
lab L11
	mark	L17
	pnull
	var	3
	pnull
	pnull
	var	0
	line	133
	colm	17
	field	x
	var	6
	line	133
	colm	20
	plus
	line	133
	colm	12
	asgn
	unmark
lab L17
	mark	L18
	pnull
	var	4
	pnull
	pnull
	var	0
	line	134
	colm	17
	field	y
	pnull
	pnull
	var	1
	int	1
	line	134
	colm	25
	minus
	pnull
	var	0
	line	134
	colm	34
	field	dy
	line	134
	colm	30
	mult
	line	134
	colm	20
	plus
	line	134
	colm	12
	asgn
	unmark
lab L18
	mark	L19
	pnull
	var	8
	int	2
	line	135
	colm	18
	numlt
	unmark
	var	15
	pnull
	var	0
	line	136
	colm	29
	field	win
	pnull
	var	3
	var	8
	line	136
	colm	37
	plus
	var	4
	pnull
	var	8
	line	136
	colm	48
	neg
	pnull
	var	0
	line	136
	colm	57
	field	w
	line	136
	colm	26
	invoke	5
	goto	L20
lab L19
	var	15
	pnull
	var	0
	line	138
	colm	29
	field	win
	var	3
	var	4
	var	8
	pnull
	var	0
	line	138
	colm	49
	field	w
	line	138
	colm	26
	invoke	5
lab L20
lab L12
	unmark
lab L10
	mark	L21
	pnull
	pnull
	pnull
	var	0
	line	140
	colm	9
	field	len
	var	1
	line	140
	colm	13
	subsc
	var	7
	line	140
	colm	17
	asgn
	unmark
lab L21
	pnull
	pnull
	pnull
	var	0
	line	141
	colm	9
	field	val
	var	1
	line	141
	colm	13
	subsc
	var	2
	line	141
	colm	17
	asgn
	unmark
lab L9
	mark	L22
	mark	L23
	pnull
	line	143
	colm	4
	pret
lab L23
	pfail
	unmark
lab L22
	pnull
	line	144
	colm	1
	pfail
	end
proc rebar
	local	0,001000,bc
	local	1,001000,sf
	local	2,000020,i
	local	3,000020,l
	local	4,000020,x
	local	5,000020,y
	local	6,000020,dx
	local	7,000020,dy
	local	8,000000,EraseArea
	local	9,000000,list
	local	10,000000,setbar
	con	0,002000,1,0
	con	1,002000,1,1
	declend
	line	151
	colm	11
	mark	L1
	mark	L2
	pnull
	pnull
	var	0
	line	154
	colm	9
	field	sf
	int	0
	line	154
	colm	13
	numgt
	unmark
	pnull
	var	3
	pnull
	var	0
	line	155
	colm	14
	field	l
	line	155
	colm	9
	asgn
	goto	L3
lab L2
	pnull
	var	3
	pnull
	pnull
	var	0
	line	157
	colm	15
	field	l
	line	157
	colm	12
	neg
	line	157
	colm	9
	asgn
lab L3
	unmark
lab L1
	mark	L4
	pnull
	var	4
	pnull
	var	0
	line	158
	colm	11
	field	x
	line	158
	colm	6
	asgn
	unmark
lab L4
	mark	L5
	pnull
	var	5
	pnull
	var	0
	line	159
	colm	11
	field	y
	line	159
	colm	6
	asgn
	unmark
lab L5
	mark	L6
	mark	L7
	pnull
	pnull
	var	0
	line	161
	colm	9
	field	dx
	int	0
	line	161
	colm	13
	numne
	unmark
	mark	L9
	pnull
	var	6
	pnull
	pnull
	var	0
	line	162
	colm	15
	field	n
	pnull
	var	0
	line	162
	colm	22
	field	dx
	line	162
	colm	18
	mult
	line	162
	colm	10
	asgn
	unmark
lab L9
	pnull
	var	7
	var	3
	line	163
	colm	10
	asgn
	goto	L8
lab L7
	mark	L10
	pnull
	var	6
	var	3
	line	166
	colm	10
	asgn
	unmark
lab L10
	pnull
	var	7
	pnull
	pnull
	var	0
	line	167
	colm	15
	field	n
	pnull
	var	0
	line	167
	colm	22
	field	dy
	line	167
	colm	18
	mult
	line	167
	colm	10
	asgn
lab L8
	unmark
lab L6
	mark	L11
	mark0
	pnull
	var	6
	int	0
	line	171
	colm	10
	numlt
	unmark
	mark	L12
	pnull
	var	4
	dup
	var	6
	line	172
	colm	9
	plus
	asgn
	unmark
lab L12
	pnull
	var	6
	pnull
	var	6
	line	173
	colm	13
	neg
	line	173
	colm	10
	asgn
	unmark
lab L11
	mark	L13
	mark0
	pnull
	var	7
	int	0
	line	175
	colm	10
	numlt
	unmark
	mark	L14
	pnull
	var	5
	dup
	var	7
	line	176
	colm	9
	plus
	asgn
	unmark
lab L14
	pnull
	var	7
	pnull
	var	7
	line	177
	colm	13
	neg
	line	177
	colm	10
	asgn
	unmark
lab L13
	mark	L15
	var	8
	pnull
	var	0
	line	179
	colm	16
	field	win
	var	4
	var	5
	var	6
	var	7
	line	179
	colm	13
	invoke	5
	unmark
lab L15
	mark	L16
	pnull
	pnull
	var	0
	line	181
	colm	6
	field	len
	var	9
	pnull
	var	0
	line	181
	colm	21
	field	n
	int	0
	line	181
	colm	18
	invoke	2
	line	181
	colm	11
	asgn
	unmark
lab L16
	mark	L17
	pnull
	pnull
	var	0
	line	182
	colm	6
	field	sf
	var	1
	line	182
	colm	10
	asgn
	unmark
lab L17
	mark	L18
	mark0
	pnull
	var	2
	pnull
	int	1
	pnull
	pnull
	var	0
	line	183
	colm	23
	field	len
	line	183
	colm	20
	size
	push1
	line	183
	colm	17
	toby
	line	183
	colm	12
	asgn
	pop
	mark0
	var	10
	var	0
	var	2
	pnull
	pnull
	pnull
	var	0
	line	184
	colm	24
	field	val
	var	2
	line	184
	colm	28
	subsc
	line	184
	colm	21
	nonnull
	line	184
	colm	13
	invoke	3
	unmark
lab L19
	efail
lab L20
	unmark
lab L18
	mark	L21
	mark	L22
	pnull
	line	185
	colm	4
	pret
lab L22
	pfail
	unmark
lab L21
	pnull
	line	186
	colm	1
	pfail
	end
