proc gettext
	filen	gettext.icn
	local	0,001000,KEY
	local	1,001000,FNAME
	local	2,000020,line
	local	3,000020,value
	local	4,000040,last_FNAME
	local	5,000040,intext
	local	6,000040,inidx
	local	7,000040,off_set
	local	8,000040,off_sets
	local	9,000000,stop
	local	10,000000,seek
	local	11,000000,close
	local	12,000000,open
	local	13,000000,Pathname
	local	14,000000,getidxname
	local	15,000000,get_offsets
	local	16,000000,move
	local	17,000000,tab
	local	18,000000,many
	local	19,000000,read
	local	20,000000,find
	local	21,000000,trim
	local	22,000000,firstline
	local	23,000000,_OS_offset
	local	24,000000,sequential_search
	con	0,010000,31,145,162,162,157,162,040,050,147,145,164,164,145,170,164,051,072,040,040,156,165,154,154,040,141,162,147,165,155,145,156,164
	con	1,002000,1,1
	con	2,010000,15,147,145,164,164,145,170,164,072,040,146,151,154,145,040,042
	con	3,010000,11,042,040,156,157,164,040,146,157,165,156,144
	con	4,010000,2,162,165
	con	5,010000,2,072,072
	con	6,010000,0
	con	7,010000,1,012
	con	8,020000,1,012
	con	9,010000,2,040,050
	con	10,010000,3,055,151,051
	declend
	line	100
	colm	11
	mark	L1
	mark	L2
	pnull
	var	0
	line	105
	colm	5
	null
	esusp
	goto	L3
lab L2
	pnull
	var	1
	line	105
	colm	12
	null
lab L3
	pop
	var	9
	str	0
	line	105
	colm	26
	invoke	1
	unmark
lab L1
	mark	L4
	mark	L5
	pnull
	var	1
	pnull
	var	4
	line	107
	colm	16
	nonnull
	line	107
	colm	13
	lexeq
	unmark
	mark	L7
	var	10
	var	5
	int	1
	line	108
	colm	11
	invoke	2
	unmark
lab L7
	var	10
	pnull
	var	6
	line	109
	colm	12
	nonnull
	int	1
	line	109
	colm	11
	invoke	2
	goto	L6
lab L5
	mark	L8
	mark0
	var	11
	mark	L11
	pnull
	var	5
	line	113
	colm	19
	nonnull
	esusp
	goto	L12
lab L11
	pnull
	var	6
	line	113
	colm	29
	nonnull
lab L12
	line	113
	colm	18
	invoke	1
	pop
lab L9
	efail
lab L10
	unmark
lab L8
	mark	L13
	pnull
	var	5
	mark	L14
	var	12
	var	1
	line	115
	colm	21
	invoke	1
	esusp
	goto	L15
lab L14
	var	9
	str	2
	var	1
	str	3
	line	115
	colm	35
	invoke	3
lab L15
	line	115
	colm	14
	asgn
	unmark
lab L13
	pnull
	var	6
	mark	L16
	var	12
	pnull
	var	13
	var	1
	line	117
	colm	29
	invoke	1
	var	14
	var	1
	line	117
	colm	50
	invoke	1
	line	117
	colm	37
	cat
	str	4
	line	117
	colm	20
	invoke	2
	esusp
	goto	L17
lab L16
	line	117
	colm	66
	keywd	null
lab L17
	line	117
	colm	13
	asgn
lab L6
	unmark
lab L4
	mark	L18
	pnull
	var	4
	var	1
	line	119
	colm	15
	asgn
	unmark
lab L18
	mark	L19
	mark0
	pnull
	var	8
	var	15
	var	0
	var	6
	line	126
	colm	30
	invoke	2
	line	126
	colm	16
	asgn
	unmark
	var	8
	line	127
	colm	16
	bscan
lab L20
	mark0
	pnull
	var	7
	pushn1
	var	16
	int	1
	line	128
	colm	32
	invoke	1
	var	17
	var	18
	line	128
	colm	45
	keywd	digits
	line	128
	colm	44
	invoke	1
	line	128
	colm	39
	invoke	1
	line	128
	colm	27
	invoke	2
	line	128
	colm	24
	asgn
	unmark
	mark	L20
	mark	L23
	var	10
	var	5
	var	7
	line	129
	colm	17
	invoke	2
	unmark
lab L23
	mark	L24
lab L25
	mark0
	pnull
	var	2
	mark	L28
	var	19
	var	5
	line	136
	colm	32
	invoke	1
	esusp
	goto	L29
lab L28
	line	136
	colm	43
	pfail
lab L29
	line	136
	colm	24
	asgn
	unmark
	mark	L25
	var	2
	line	137
	colm	21
	bscan
	mark0
	pushn1
	pnull
	str	5
	line	138
	colm	24
	tabmat
	var	0
	line	138
	colm	23
	invoke	2
	unmark
	unmark
	pnull
	goto	L27
	line	137
	colm	21
	escan
lab L26
	unmark
	goto	L25
lab L27
	unmark
lab L24
	mark	L30
	pnull
	var	3
	str	6
	line	145
	colm	19
	asgn
	unmark
lab L30
	mark	L31
lab L32
	mark0
	pnull
	var	2
	var	19
	var	5
	line	146
	colm	31
	invoke	1
	line	146
	colm	24
	asgn
	unmark
	mark	L32
	mark	L35
	var	20
	str	5
	var	2
	line	147
	colm	20
	invoke	2
	pop
	unmark
	unmark
	pnull
	goto	L34
	unmark
lab L35
	pnull
	var	3
	dup
	pnull
	var	2
	str	7
	line	148
	colm	32
	cat
	line	148
	colm	22
	cat
	asgn
lab L33
	unmark
	goto	L32
lab L34
	unmark
lab L31
	mark0
	pnull
	pnull
	pnull
	var	21
	var	3
	cset	8
	line	152
	colm	25
	invoke	2
	str	9
	line	152
	colm	39
	cat
	var	7
	line	152
	colm	47
	cat
	str	10
	line	152
	colm	58
	cat
	line	152
	colm	13
	psusp
	pop
lab L36
	efail
lab L37
lab L21
	unmark
	goto	L20
lab L22
	line	127
	colm	16
	escan
	unmark
lab L19
	mark	L38
	var	10
	var	5
	pnull
	pnull
	var	22
	line	159
	colm	17
	nonnull
	var	23
	line	159
	colm	28
	minus
	line	159
	colm	8
	invoke	2
	unmark
lab L38
	mark	L39
lab L40
	mark0
	pnull
	var	3
	var	24
	var	0
	var	5
	line	160
	colm	36
	invoke	2
	line	160
	colm	16
	asgn
	unmark
	mark	L40
	mark0
	var	21
	var	3
	cset	8
	line	161
	colm	19
	invoke	2
	line	161
	colm	7
	psusp
	pop
lab L43
	efail
lab L44
lab L41
	unmark
	goto	L40
lab L42
	unmark
lab L39
	pnull
	line	163
	colm	1
	pfail
	end
proc get_offsets
	local	0,001000,KEY
	local	1,001000,inidx
	local	2,000020,incr
	local	3,000020,bottom
	local	4,000020,top
	local	5,000020,loc
	local	6,000020,firstpart
	local	7,000020,offset
	local	8,000020,line
	local	9,000040,old_inidx
	local	10,000040,SOF
	local	11,000040,EOF
	local	12,000000,seek
	local	13,000000,firstline
	local	14,000000,where
	local	15,000000,read
	local	16,000000,tab
	local	17,000000,upto
	local	18,000000,_delimiter
	local	19,000000,_OS_offset
	con	0,002000,1,1
	con	1,002000,1,0
	con	2,002000,1,2
	declend
	line	165
	colm	11
	mark	L1
	mark0
	pnull
	var	1
	line	172
	colm	7
	null
	unmark
	line	173
	colm	7
	pfail
	unmark
lab L1
	mark	L2
	var	12
	var	1
	int	0
	line	179
	colm	8
	invoke	2
	unmark
lab L2
	mark	L3
	mark0
	mark	L4
	pnull
	var	1
	pnull
	var	9
	line	180
	colm	22
	nonnull
	line	180
	colm	18
	eqv
	unmark
	efail
lab L4
	pnull
	unmark
	mark	L5
	pnull
	var	13
	pnull
	var	1
	line	183
	colm	20
	bang
	line	183
	colm	17
	asgn
	unmark
lab L5
	mark	L6
	pnull
	var	10
	int	0
	line	186
	colm	11
	asgn
	unmark
lab L6
	mark	L7
	var	12
	var	1
	int	1
	line	189
	colm	11
	invoke	2
	unmark
lab L7
	mark	L8
	pnull
	var	11
	var	14
	var	1
	line	190
	colm	19
	invoke	1
	line	190
	colm	11
	asgn
	unmark
lab L8
	pnull
	var	9
	var	1
	line	192
	colm	17
	asgn
	unmark
lab L3
	mark	L9
	pnull
	var	3
	var	10
	line	196
	colm	11
	asgn
	unmark
lab L9
	mark	L10
	pnull
	var	4
	var	11
	line	196
	colm	24
	asgn
	unmark
lab L10
	mark	L11
lab L12
	mark	L13
	pnull
	var	3
	var	4
	line	200
	colm	17
	numge
	unmark
	efail
lab L13
	mark	L12
	mark	L16
	pnull
	var	5
	pnull
	pnull
	var	4
	var	3
	line	202
	colm	18
	plus
	int	2
	line	202
	colm	27
	div
	line	202
	colm	11
	asgn
	unmark
lab L16
	mark	L17
	var	12
	var	1
	var	5
	line	203
	colm	11
	invoke	2
	unmark
lab L17
	mark	L18
	var	15
	var	1
	line	207
	colm	11
	invoke	1
	unmark
lab L18
	mark	L19
	mark0
	mark	L20
	pnull
	var	14
	var	1
	line	208
	colm	16
	invoke	1
	var	11
	line	208
	colm	24
	numgt
	esusp
	goto	L21
lab L20
	mark	L22
	pnull
	var	5
	var	3
	line	208
	colm	38
	numeq
	esusp
	goto	L23
lab L22
	pnull
	var	5
	var	4
	line	208
	colm	55
	numeq
lab L23
lab L21
	unmark
	unmark
	unmark
	pnull
	goto	L15
	unmark
lab L19
	mark	L24
	pnull
	var	8
	var	15
	var	1
	line	213
	colm	22
	invoke	1
	line	213
	colm	15
	asgn
	unmark
	var	8
	line	214
	colm	15
	bscan
	mark	L26
	pnull
	var	6
	var	16
	var	17
	var	18
	line	217
	colm	34
	invoke	1
	line	217
	colm	29
	invoke	1
	line	217
	colm	23
	asgn
	unmark
lab L26
	mark	L27
	pnull
	var	0
	var	6
	line	219
	colm	20
	lexeq
	unmark
	mark	L29
	var	16
	pnull
	int	0
	var	19
	line	221
	colm	29
	minus
	line	221
	colm	26
	invoke	1
	line	221
	colm	16
	pret
lab L29
	pfail
	goto	L28
lab L27
	mark	L30
	pnull
	var	0
	var	6
	line	226
	colm	20
	lexgt
	unmark
	pnull
	var	3
	var	5
	line	227
	colm	25
	asgn
	goto	L31
lab L30
	pnull
	var	4
	var	5
	line	228
	colm	25
	asgn
lab L31
lab L28
	line	214
	colm	15
	escan
	goto	L25
lab L24
	pnull
	var	4
	var	5
	line	232
	colm	13
	asgn
lab L25
lab L14
	unmark
	goto	L12
lab L15
	unmark
lab L11
	pnull
	line	234
	colm	1
	pfail
	end
proc sequential_search
	local	0,001000,KEY
	local	1,001000,intext
	local	2,000020,line
	local	3,000020,value
	local	4,000020,off_set
	local	5,000000,where
	local	6,000000,read
	local	7,000000,match
	local	8,000000,pos
	local	9,000000,find
	local	10,000000,seek
	local	11,000000,trim
	con	0,010000,2,072,072
	con	1,010000,1,040
	con	2,010000,1,011
	con	3,002000,1,0
	con	4,010000,0
	con	5,010000,1,012
	con	6,002000,1,1
	con	7,010000,2,040,050
	con	8,010000,4,055,163,051,012
	con	9,002000,1,2
	declend
	line	238
	colm	11
	mark	L1
	pnull
	var	4
	var	5
	var	1
	line	245
	colm	20
	invoke	1
	line	245
	colm	12
	asgn
	unmark
lab L1
	mark	L2
lab L3
	mark0
	mark	L6
	pnull
	var	2
	var	6
	var	1
	line	246
	colm	23
	invoke	1
	line	246
	colm	16
	asgn
	esusp
	goto	L7
lab L6
	line	246
	colm	35
	pfail
lab L7
	unmark
	mark	L3
	var	2
	line	247
	colm	13
	bscan
	mark	L8
	pnull
	pnull
	str	0
	var	0
	line	248
	colm	20
	cat
	line	248
	colm	13
	tabmat
	pop
	mark	L10
	var	7
	mark	L12
	str	1
	esusp
	goto	L13
lab L12
	str	2
lab L13
	line	248
	colm	36
	invoke	1
	esusp
	goto	L11
lab L10
	var	8
	int	3
	line	248
	colm	54
	invoke	1
lab L11
	unmark
	unmark
	pnull
	goto	L5
	goto	L9
lab L8
	pnull
	var	4
	var	5
	var	1
	line	250
	colm	31
	invoke	1
	line	250
	colm	23
	asgn
lab L9
	line	247
	colm	13
	escan
lab L4
	unmark
	goto	L3
lab L5
	unmark
lab L2
	mark	L14
	pnull
	var	3
	str	4
	line	253
	colm	10
	asgn
	unmark
lab L14
	mark	L15
lab L16
	mark0
	pnull
	var	2
	var	6
	var	1
	line	254
	colm	22
	invoke	1
	line	254
	colm	15
	asgn
	unmark
	mark	L16
	mark	L19
	var	9
	str	0
	var	2
	line	255
	colm	11
	invoke	2
	pop
	unmark
	unmark
	pnull
	goto	L18
	unmark
lab L19
	pnull
	var	3
	dup
	pnull
	var	2
	str	5
	line	256
	colm	23
	cat
	line	256
	colm	13
	cat
	asgn
lab L17
	unmark
	goto	L16
lab L18
	unmark
lab L15
	mark	L20
	pnull
	var	3
	pnull
	pnull
	pnull
	pnull
	var	3
	int	6
	pnull
	int	6
	line	260
	colm	21
	neg
	line	260
	colm	20
	sect
	str	7
	line	260
	colm	25
	cat
	var	4
	line	260
	colm	33
	cat
	str	8
	line	260
	colm	44
	cat
	line	260
	colm	10
	asgn
	unmark
lab L20
	mark	L21
	var	10
	var	1
	pnull
	pnull
	var	5
	var	1
	line	263
	colm	22
	invoke	1
	pnull
	var	2
	line	263
	colm	33
	size
	line	263
	colm	31
	minus
	int	9
	line	263
	colm	39
	minus
	line	263
	colm	8
	invoke	2
	unmark
lab L21
	mark	L22
	mark0
	var	11
	pnull
	var	3
	str	5
	line	264
	colm	23
	cat
	line	264
	colm	16
	invoke	1
	line	264
	colm	4
	psusp
	pop
lab L23
	efail
lab L24
	unmark
lab L22
	pnull
	line	265
	colm	1
	pfail
	end
