proc cat
	local	0,001000,args
	local	1,000020,result
	con	0,010000,0
	declend
	filen	strings.icn
	line	145
	colm	11
	mark	L1
	pnull
	var	1
	str	0
	line	148
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	1
	dup
	pnull
	var	0
	line	150
	colm	22
	bang
	line	150
	colm	17
	cat
	asgn
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L5
	mark	L6
	var	1
	line	152
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	154
	colm	1
	pfail
	end
proc charcnt
	local	0,001000,s
	local	1,001000,c
	local	2,000020,count
	local	3,000000,tab
	local	4,000000,upto
	local	5,000000,many
	con	0,002000,1,0
	declend
	line	156
	colm	11
	mark	L1
	pnull
	var	2
	int	0
	line	159
	colm	10
	asgn
	unmark
lab L1
	mark	L2
	var	0
	line	161
	colm	6
	bscan
lab L3
	mark0
	var	3
	var	4
	var	1
	line	162
	colm	21
	invoke	1
	line	162
	colm	16
	invoke	1
	unmark
	mark	L3
	pnull
	var	2
	dup
	pnull
	var	3
	var	5
	var	1
	line	163
	colm	29
	invoke	1
	line	163
	colm	24
	invoke	1
	line	163
	colm	20
	size
	line	163
	colm	16
	plus
	asgn
lab L4
	unmark
	goto	L3
lab L5
	line	161
	colm	6
	escan
	unmark
lab L2
	mark	L6
	mark	L7
	var	2
	line	166
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	168
	colm	1
	pfail
	end
proc collate
	local	0,001000,s1
	local	1,001000,s2
	local	2,000020,length
	local	3,000020,ltemp
	local	4,000020,rtemp
	local	5,000040,llabels
	local	6,000040,rlabels
	local	7,000040,clabels
	local	8,000040,blabels
	local	9,000040,half
	local	10,000000,left
	local	11,000000,right
	local	12,000000,collate
	local	13,000000,string
	local	14,000000,map
	con	0,010000,2,141,142
	con	1,010000,2,143,144
	con	2,010000,4,141,143,142,144
	con	3,002000,1,2
	declend
	line	170
	colm	11
	init	L1
	mark	L1
	mark	L2
	pnull
	var	5
	str	0
	line	175
	colm	15
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	6
	str	1
	line	176
	colm	15
	asgn
	unmark
lab L3
	mark	L4
	pnull
	var	8
	pnull
	var	5
	var	6
	line	177
	colm	26
	cat
	line	177
	colm	15
	asgn
	unmark
lab L4
	mark	L5
	pnull
	var	7
	str	2
	line	178
	colm	15
	asgn
	unmark
lab L5
	mark	L6
	pnull
	var	9
	int	3
	line	179
	colm	12
	asgn
	unmark
lab L6
	mark	L7
	pnull
	var	3
	var	10
	line	180
	colm	21
	keywd	cset
	pnull
	pnull
	line	180
	colm	29
	keywd	cset
	line	180
	colm	28
	size
	int	3
	line	180
	colm	35
	div
	line	180
	colm	20
	invoke	2
	line	180
	colm	13
	asgn
	unmark
lab L7
	mark	L8
	pnull
	var	4
	var	11
	line	181
	colm	22
	keywd	cset
	pnull
	pnull
	line	181
	colm	30
	keywd	cset
	line	181
	colm	29
	size
	int	3
	line	181
	colm	36
	div
	line	181
	colm	21
	invoke	2
	line	181
	colm	13
	asgn
	unmark
lab L8
	mark	L9
	pnull
	var	7
	var	12
	var	3
	var	4
	line	182
	colm	25
	invoke	2
	line	182
	colm	15
	asgn
	unmark
lab L9
	mark	L10
	pnull
	var	5
	var	3
	line	183
	colm	15
	asgn
	unmark
lab L10
	mark	L11
	pnull
	var	6
	var	4
	line	184
	colm	15
	asgn
	unmark
lab L11
	mark	L12
	pnull
	var	8
	var	13
	line	185
	colm	25
	keywd	cset
	line	185
	colm	24
	invoke	1
	line	185
	colm	15
	asgn
	unmark
lab L12
	pnull
	var	9
	pnull
	var	5
	line	186
	colm	15
	size
	line	186
	colm	12
	asgn
	unmark
lab L1
	mark	L13
	pnull
	var	2
	pnull
	var	0
	line	189
	colm	14
	size
	line	189
	colm	11
	asgn
	unmark
lab L13
	mark	L14
	mark	L15
	pnull
	var	2
	var	9
	line	190
	colm	14
	numle
	unmark
	mark	L17
	var	14
	var	10
	var	7
	pnull
	int	3
	var	2
	line	191
	colm	34
	mult
	line	191
	colm	22
	invoke	2
	pnull
	var	10
	var	5
	var	2
	line	191
	colm	49
	invoke	2
	var	10
	var	6
	var	2
	line	192
	colm	14
	invoke	2
	line	191
	colm	67
	cat
	pnull
	var	0
	var	1
	line	192
	colm	36
	cat
	line	191
	colm	17
	invoke	3
	line	191
	colm	7
	pret
lab L17
	pfail
	goto	L16
lab L15
	mark	L18
	pnull
	var	14
	var	7
	var	8
	pnull
	var	10
	var	0
	var	9
	line	193
	colm	42
	invoke	2
	var	10
	var	1
	var	9
	line	193
	colm	60
	invoke	2
	line	193
	colm	53
	cat
	line	193
	colm	19
	invoke	3
	var	12
	var	11
	var	0
	pnull
	var	2
	var	9
	line	194
	colm	32
	minus
	line	194
	colm	20
	invoke	2
	var	11
	var	1
	pnull
	var	2
	var	9
	line	194
	colm	58
	minus
	line	194
	colm	46
	invoke	2
	line	194
	colm	14
	invoke	2
	line	193
	colm	72
	cat
	line	193
	colm	9
	pret
lab L18
	pfail
lab L16
	unmark
lab L14
	pnull
	line	196
	colm	1
	pfail
	end
proc comb
	local	0,001000,s
	local	1,001000,i
	local	2,000020,j
	local	3,000000,comb
	con	0,002000,1,1
	con	1,002000,1,0
	declend
	line	198
	colm	11
	mark	L1
	mark0
	pnull
	var	1
	int	0
	line	201
	colm	9
	numlt
	unmark
	line	201
	colm	18
	pfail
	unmark
lab L1
	mark	L2
	mark0
	mark	L5
	pnull
	var	1
	int	0
	line	202
	colm	17
	numeq
	unmark
	pnull
	var	0
	line	202
	colm	26
	bang
	goto	L6
lab L5
	pnull
	pnull
	var	0
	pnull
	var	2
	pnull
	int	0
	pnull
	pnull
	pnull
	var	0
	line	203
	colm	24
	size
	var	1
	line	203
	colm	27
	minus
	int	0
	line	203
	colm	31
	plus
	push1
	line	203
	colm	21
	toby
	line	203
	colm	16
	asgn
	line	203
	colm	13
	subsc
	var	3
	pnull
	var	0
	pnull
	var	2
	int	0
	line	203
	colm	48
	plus
	int	1
	line	203
	colm	51
	sect
	pnull
	var	1
	int	0
	line	203
	colm	58
	minus
	line	203
	colm	43
	invoke	2
	line	203
	colm	36
	cat
lab L6
	line	202
	colm	4
	psusp
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	pnull
	line	205
	colm	1
	pfail
	end
proc compress
	local	0,001000,s
	local	1,001000,c
	local	2,000020,result
	local	3,000020,s1
	local	4,000000,tab
	local	5,000000,upto
	local	6,000000,move
	local	7,000000,many
	con	0,010000,0
	con	1,002000,1,1
	con	2,002000,1,0
	declend
	line	207
	colm	11
	mark	L1
	pnull
	pnull
	var	1
	line	210
	colm	4
	null
	line	210
	colm	10
	keywd	cset
	line	210
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	2
	str	0
	line	212
	colm	11
	asgn
	unmark
lab L2
	mark	L3
	var	0
	line	214
	colm	6
	bscan
	mark	L4
lab L5
	mark0
	pnull
	var	2
	dup
	var	4
	var	5
	var	1
	line	215
	colm	33
	invoke	1
	line	215
	colm	28
	invoke	1
	line	215
	colm	20
	cat
	asgn
	unmark
	mark	L5
	mark	L8
	pnull
	var	2
	dup
	pnull
	var	3
	var	6
	int	1
	line	216
	colm	33
	invoke	1
	line	216
	colm	26
	asgn
	line	216
	colm	17
	cat
	asgn
	unmark
lab L8
	var	4
	var	7
	var	3
	line	217
	colm	18
	invoke	1
	line	217
	colm	13
	invoke	1
lab L6
	unmark
	goto	L5
lab L7
	unmark
lab L4
	mark	L9
	pnull
	var	2
	var	4
	int	2
	line	219
	colm	27
	invoke	1
	line	219
	colm	21
	cat
	line	219
	colm	7
	pret
lab L9
	pfail
	line	214
	colm	6
	escan
	unmark
lab L3
	pnull
	line	221
	colm	1
	pfail
	end
proc csort
	local	0,001000,s
	local	1,000020,c
	local	2,000020,s1
	local	3,000000,cset
	local	4,000000,find
	con	0,010000,0
	declend
	line	223
	colm	11
	mark	L1
	pnull
	var	2
	str	0
	line	226
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	1
	pnull
	var	3
	var	0
	line	228
	colm	20
	invoke	1
	line	228
	colm	15
	bang
	line	228
	colm	12
	asgn
	pop
	mark0
	mark0
	var	4
	var	1
	var	0
	line	229
	colm	17
	invoke	2
	pop
	mark0
	pnull
	var	2
	dup
	var	1
	line	230
	colm	13
	cat
	asgn
	unmark
lab L5
	efail
lab L6
	unmark
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L7
	mark	L8
	var	2
	line	232
	colm	4
	pret
lab L8
	pfail
	unmark
lab L7
	pnull
	line	234
	colm	1
	pfail
	end
proc decollate
	local	0,001000,s
	local	1,001000,i
	local	2,000020,ssize
	local	3,000040,dsize
	local	4,000040,image
	local	5,000040,object
	local	6,000000,collate
	local	7,000000,left
	local	8,000000,map
	local	9,000000,decollate
	con	0,002000,1,2
	con	1,002000,1,1
	con	2,002000,1,0
	declend
	line	238
	colm	11
	init	L1
	mark	L1
	mark	L2
	pnull
	var	4
	var	6
	var	7
	line	243
	colm	29
	keywd	cset
	pnull
	pnull
	line	243
	colm	37
	keywd	cset
	line	243
	colm	36
	size
	int	0
	line	243
	colm	43
	div
	line	243
	colm	28
	invoke	2
	var	7
	line	243
	colm	54
	keywd	cset
	pnull
	pnull
	line	243
	colm	62
	keywd	cset
	line	243
	colm	61
	size
	int	0
	line	243
	colm	68
	div
	line	243
	colm	53
	invoke	2
	line	243
	colm	23
	invoke	2
	line	243
	colm	13
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	5
	var	7
	line	244
	colm	22
	keywd	cset
	pnull
	pnull
	line	244
	colm	30
	keywd	cset
	line	244
	colm	29
	size
	int	0
	line	244
	colm	36
	div
	line	244
	colm	21
	invoke	2
	line	244
	colm	14
	asgn
	unmark
lab L3
	pnull
	var	3
	pnull
	var	4
	line	245
	colm	16
	size
	line	245
	colm	13
	asgn
	unmark
lab L1
	mark	L4
	pnull
	pnull
	var	1
	line	248
	colm	4
	null
	int	1
	line	248
	colm	7
	asgn
	unmark
lab L4
	mark	L5
	pnull
	var	1
	dup
	int	0
	line	250
	colm	6
	mod
	asgn
	unmark
lab L5
	mark	L6
	pnull
	var	2
	pnull
	var	0
	line	251
	colm	13
	size
	line	251
	colm	10
	asgn
	unmark
lab L6
	mark	L7
	mark	L8
	pnull
	pnull
	var	2
	var	1
	line	253
	colm	13
	plus
	var	3
	line	253
	colm	17
	numle
	unmark
	mark	L10
	var	8
	pnull
	var	5
	int	1
	dup
	pnull
	pnull
	var	2
	var	1
	line	254
	colm	35
	plus
	int	0
	line	254
	colm	40
	div
	line	254
	colm	26
	plus
	sect
	pnull
	var	4
	pnull
	var	1
	int	1
	line	254
	colm	55
	plus
	dup
	var	2
	line	254
	colm	59
	plus
	sect
	var	0
	line	254
	colm	17
	invoke	3
	line	254
	colm	7
	pret
lab L10
	pfail
	goto	L9
lab L8
	mark	L11
	pnull
	var	8
	pnull
	var	5
	int	1
	dup
	pnull
	pnull
	var	3
	int	0
	line	255
	colm	37
	minus
	int	0
	line	255
	colm	42
	div
	line	255
	colm	28
	plus
	sect
	pnull
	var	4
	pnull
	var	1
	int	1
	line	255
	colm	57
	plus
	dup
	pnull
	var	3
	int	0
	line	255
	colm	69
	minus
	line	255
	colm	61
	plus
	sect
	pnull
	var	0
	int	1
	dup
	pnull
	var	3
	int	0
	line	256
	colm	19
	minus
	line	256
	colm	10
	plus
	sect
	line	255
	colm	19
	invoke	3
	var	9
	pnull
	var	0
	pnull
	var	3
	int	1
	line	256
	colm	47
	minus
	int	2
	line	256
	colm	50
	sect
	var	1
	line	256
	colm	38
	invoke	2
	line	256
	colm	26
	cat
	line	255
	colm	9
	pret
lab L11
	pfail
lab L9
	unmark
lab L7
	pnull
	line	258
	colm	1
	pfail
	end
proc deletec
	local	0,001000,s
	local	1,001000,c
	local	2,000020,result
	local	3,000000,tab
	local	4,000000,upto
	local	5,000000,many
	con	0,010000,0
	con	1,002000,1,0
	declend
	line	260
	colm	11
	mark	L1
	pnull
	var	2
	str	0
	line	263
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	var	0
	line	265
	colm	6
	bscan
	mark	L3
lab L4
	mark0
	pnull
	var	2
	dup
	var	3
	var	4
	var	1
	line	266
	colm	33
	invoke	1
	line	266
	colm	28
	invoke	1
	line	266
	colm	20
	cat
	asgn
	unmark
	mark	L4
	var	3
	var	5
	var	1
	line	267
	colm	18
	invoke	1
	line	267
	colm	13
	invoke	1
lab L5
	unmark
	goto	L4
lab L6
	unmark
lab L3
	mark	L7
	pnull
	var	2
	dup
	var	3
	int	1
	line	268
	colm	29
	invoke	1
	line	268
	colm	21
	cat
	asgn
	line	268
	colm	7
	pret
lab L7
	pfail
	line	265
	colm	6
	escan
	unmark
lab L2
	pnull
	line	271
	colm	1
	pfail
	end
proc deletep
	local	0,001000,s
	local	1,001000,L
	local	2,000000,sort
	local	3,000000,pull
	con	0,010000,0
	declend
	line	273
	colm	11
	mark	L1
	pnull
	var	1
	var	2
	var	1
	line	275
	colm	13
	invoke	1
	line	275
	colm	6
	asgn
	unmark
lab L1
	mark	L2
lab L3
	mark0
	pnull
	pnull
	var	0
	var	3
	var	1
	line	277
	colm	16
	invoke	1
	line	277
	colm	11
	subsc
	str	0
	line	277
	colm	21
	asgn
lab L4
	unmark
	goto	L3
lab L5
	unmark
lab L2
	mark	L6
	mark	L7
	var	0
	line	279
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	281
	colm	1
	pfail
	end
proc deletes
	local	0,001000,s1
	local	1,001000,s2
	local	2,000020,result
	local	3,000020,i
	local	4,000000,tab
	local	5,000000,find
	local	6,000000,move
	con	0,010000,0
	con	1,002000,1,0
	declend
	line	283
	colm	11
	mark	L1
	pnull
	var	2
	str	0
	line	286
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	3
	pnull
	var	1
	line	287
	colm	9
	size
	line	287
	colm	6
	asgn
	unmark
lab L2
	mark	L3
	var	0
	line	289
	colm	7
	bscan
	mark	L4
lab L5
	mark0
	pnull
	var	2
	dup
	var	4
	var	5
	var	1
	line	290
	colm	33
	invoke	1
	line	290
	colm	28
	invoke	1
	line	290
	colm	20
	cat
	asgn
	unmark
	mark	L5
	var	6
	var	3
	line	291
	colm	14
	invoke	1
lab L6
	unmark
	goto	L5
lab L7
	unmark
lab L4
	mark	L8
	pnull
	var	2
	dup
	var	4
	int	1
	line	292
	colm	29
	invoke	1
	line	292
	colm	21
	cat
	asgn
	line	292
	colm	7
	pret
lab L8
	pfail
	line	289
	colm	7
	escan
	unmark
lab L3
	pnull
	line	295
	colm	1
	pfail
	end
proc diffcnt
	local	0,001000,s
	local	1,000000,cset
	declend
	line	297
	colm	11
	mark	L1
	mark	L2
	pnull
	var	1
	var	0
	line	299
	colm	16
	invoke	1
	line	299
	colm	11
	size
	line	299
	colm	4
	pret
lab L2
	pfail
	unmark
lab L1
	pnull
	line	301
	colm	1
	pfail
	end
proc extend
	local	0,001000,s
	local	1,001000,n
	local	2,000020,i
	local	3,000000,left
	local	4,000000,repl
	con	0,002000,1,0
	con	1,002000,1,1
	declend
	line	303
	colm	11
	mark	L1
	pnull
	var	2
	pnull
	var	1
	pnull
	var	0
	line	306
	colm	13
	size
	line	306
	colm	11
	div
	line	306
	colm	6
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	pnull
	var	1
	pnull
	var	0
	line	307
	colm	11
	size
	line	307
	colm	9
	mod
	int	0
	line	307
	colm	14
	numgt
	unmark
	pnull
	var	2
	dup
	int	1
	line	307
	colm	25
	plus
	asgn
	unmark
lab L2
	mark	L3
	mark	L4
	var	3
	var	4
	var	0
	var	2
	line	309
	colm	20
	invoke	2
	var	1
	line	309
	colm	15
	invoke	2
	line	309
	colm	4
	pret
lab L4
	pfail
	unmark
lab L3
	pnull
	line	311
	colm	1
	pfail
	end
proc interleave
	local	0,001000,s1
	local	1,001000,s2
	local	2,000000,collate
	local	3,000000,extend
	declend
	line	313
	colm	11
	mark	L1
	mark	L2
	var	2
	var	0
	var	3
	var	1
	pnull
	var	0
	line	315
	colm	34
	size
	line	315
	colm	29
	invoke	2
	line	315
	colm	18
	invoke	2
	line	315
	colm	4
	pret
lab L2
	pfail
	unmark
lab L1
	pnull
	line	317
	colm	1
	pfail
	end
proc ispal
	local	0,001000,s
	local	1,000000,reverse
	declend
	line	319
	colm	11
	mark	L1
	mark	L2
	pnull
	var	0
	var	1
	var	0
	line	321
	colm	19
	invoke	1
	line	321
	colm	9
	lexeq
	unmark
	mark	L4
	var	0
	line	321
	colm	28
	pret
lab L4
	pfail
	goto	L3
lab L2
	line	321
	colm	42
	pfail
lab L3
	unmark
lab L1
	pnull
	line	323
	colm	1
	pfail
	end
proc maxlen
	local	0,001000,L
	local	1,001000,p
	local	2,000020,i
	local	3,000000,proc
	con	0,002000,1,0
	con	1,010000,1,052
	con	2,002000,1,1
	declend
	line	325
	colm	11
	mark	L1
	mark0
	pnull
	pnull
	var	0
	line	328
	colm	7
	size
	int	0
	line	328
	colm	10
	numeq
	unmark
	line	328
	colm	19
	pfail
	unmark
lab L1
	mark	L2
	pnull
	pnull
	var	1
	line	330
	colm	4
	null
	var	3
	str	1
	int	2
	line	330
	colm	14
	invoke	2
	line	330
	colm	7
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	2
	int	0
	line	332
	colm	6
	asgn
	unmark
lab L3
	mark	L4
	mark0
	pnull
	var	2
	dup
	var	1
	pnull
	var	0
	line	334
	colm	18
	bang
	line	334
	colm	17
	invoke	1
	line	334
	colm	12
	numlt
	asgn
	pop
lab L5
	efail
lab L6
	unmark
lab L4
	mark	L7
	mark	L8
	var	2
	line	336
	colm	4
	pret
lab L8
	pfail
	unmark
lab L7
	pnull
	line	338
	colm	1
	pfail
	end
proc meander
	local	0,001000,alpha
	local	1,001000,n
	local	2,000020,result
	local	3,000020,trial
	local	4,000020,t
	local	5,000020,i
	local	6,000020,c
	local	7,000000,repl
	local	8,000000,tab
	local	9,000000,find
	con	0,002000,1,1
	con	1,002000,1,0
	declend
	line	340
	colm	11
	mark	L1
	pnull
	var	5
	pnull
	var	0
	line	343
	colm	9
	size
	line	343
	colm	6
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	4
	pnull
	var	1
	int	0
	line	344
	colm	11
	minus
	line	344
	colm	6
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	2
	var	7
	pnull
	var	0
	int	0
	line	345
	colm	24
	subsc
	var	4
	line	345
	colm	18
	invoke	2
	line	345
	colm	11
	asgn
	unmark
lab L3
	mark	L4
lab L5
	mark0
	pnull
	var	6
	pnull
	var	0
	var	5
	line	347
	colm	20
	subsc
	line	347
	colm	12
	asgn
	unmark
	mark	L5
	mark	L8
	var	2
	line	348
	colm	14
	bscan
	mark	L9
	var	8
	pnull
	var	4
	line	349
	colm	14
	neg
	line	349
	colm	13
	invoke	1
	unmark
lab L9
	pnull
	var	3
	pnull
	var	8
	int	1
	line	350
	colm	22
	invoke	1
	var	6
	line	350
	colm	26
	cat
	line	350
	colm	16
	asgn
	line	348
	colm	14
	escan
	unmark
lab L8
	mark	L10
	var	2
	line	352
	colm	17
	bscan
	var	9
	var	3
	line	352
	colm	23
	invoke	1
	line	352
	colm	17
	escan
	unmark
	pnull
	var	5
	dup
	int	0
	line	353
	colm	12
	minus
	asgn
	goto	L11
lab L10
	mark	L12
	pnull
	var	2
	dup
	var	6
	line	355
	colm	17
	cat
	asgn
	unmark
lab L12
	pnull
	var	5
	pnull
	var	0
	line	356
	colm	15
	size
	line	356
	colm	12
	asgn
lab L11
lab L6
	unmark
	goto	L5
lab L7
	unmark
lab L4
	mark	L13
	mark	L14
	pnull
	var	2
	var	1
	int	1
	line	360
	colm	19
	sect
	line	360
	colm	4
	pret
lab L14
	pfail
	unmark
lab L13
	pnull
	line	362
	colm	1
	pfail
	end
proc multicoll
	local	0,001000,L
	local	1,000020,result
	local	2,000020,i
	local	3,000020,j
	con	0,010000,0
	con	1,002000,1,1
	declend
	line	364
	colm	11
	mark	L1
	pnull
	var	1
	str	0
	line	367
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	2
	pnull
	int	1
	pnull
	pnull
	var	0
	int	1
	line	369
	colm	22
	subsc
	line	369
	colm	20
	size
	push1
	line	369
	colm	17
	toby
	line	369
	colm	12
	asgn
	pop
	mark0
	mark0
	pnull
	var	3
	pnull
	int	1
	pnull
	var	0
	line	370
	colm	23
	size
	push1
	line	370
	colm	20
	toby
	line	370
	colm	15
	asgn
	pop
	mark0
	pnull
	var	1
	dup
	pnull
	pnull
	var	0
	var	3
	line	371
	colm	23
	subsc
	var	2
	line	371
	colm	26
	subsc
	line	371
	colm	17
	cat
	asgn
	unmark
lab L5
	efail
lab L6
	unmark
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L7
	mark	L8
	var	1
	line	373
	colm	4
	pret
lab L8
	pfail
	unmark
lab L7
	pnull
	line	375
	colm	1
	pfail
	end
proc ochars
	local	0,001000,w
	local	1,000020,out
	local	2,000020,c
	local	3,000000,find
	con	0,010000,0
	declend
	line	377
	colm	11
	mark	L1
	pnull
	var	1
	str	0
	line	380
	colm	8
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	2
	pnull
	var	0
	line	382
	colm	15
	bang
	line	382
	colm	12
	asgn
	pop
	mark0
	mark0
	mark	L5
	var	3
	var	2
	var	1
	line	383
	colm	20
	invoke	2
	unmark
	efail
lab L5
	pnull
	unmark
	pnull
	var	1
	dup
	var	2
	line	384
	colm	17
	cat
	asgn
	unmark
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L6
	mark	L7
	var	1
	line	386
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	388
	colm	1
	pfail
	end
proc palins
	local	0,001000,s
	local	1,001000,n
	local	2,000020,c
	local	3,000020,lpart
	local	4,000020,mpart
	local	5,000020,rpart
	local	6,000020,h
	local	7,000020,p
	local	8,000000,palins
	local	9,000000,move
	local	10,000000,tab
	con	0,002000,1,1
	con	1,002000,1,2
	con	2,002000,1,0
	declend
	line	390
	colm	11
	mark	L1
	mark	L2
	pnull
	var	1
	int	0
	line	393
	colm	9
	numeq
	unmark
	mark0
	pnull
	var	0
	line	393
	colm	26
	bang
	line	393
	colm	18
	psusp
	pop
lab L4
	efail
lab L5
	goto	L3
lab L2
	mark	L6
	pnull
	var	1
	int	1
	line	394
	colm	14
	numeq
	unmark
	mark0
	pnull
	var	2
	pnull
	var	0
	line	395
	colm	18
	bang
	line	395
	colm	15
	asgn
	pop
	mark0
	mark0
	pnull
	var	2
	var	2
	line	395
	colm	34
	cat
	line	395
	colm	24
	psusp
	pop
lab L10
	efail
lab L11
	unmark
lab L8
	efail
lab L9
	goto	L7
lab L6
	mark	L12
	pnull
	pnull
	var	1
	int	1
	line	396
	colm	14
	mod
	int	2
	line	396
	colm	18
	numeq
	unmark
	mark	L14
	pnull
	var	6
	pnull
	pnull
	var	1
	int	1
	line	397
	colm	15
	minus
	int	1
	line	397
	colm	20
	div
	line	397
	colm	9
	asgn
	unmark
lab L14
	mark0
	pnull
	var	7
	var	8
	var	0
	pnull
	var	1
	int	1
	line	398
	colm	30
	minus
	line	398
	colm	24
	invoke	2
	line	398
	colm	15
	asgn
	pop
	mark0
	mark	L17
	var	7
	line	399
	colm	12
	bscan
	mark	L18
	pnull
	var	3
	var	9
	var	6
	line	400
	colm	26
	invoke	1
	line	400
	colm	19
	asgn
	unmark
lab L18
	pnull
	var	5
	var	10
	int	2
	line	401
	colm	25
	invoke	1
	line	401
	colm	19
	asgn
	line	399
	colm	12
	escan
	unmark
lab L17
	mark0
	pnull
	var	2
	pnull
	var	0
	line	403
	colm	21
	bang
	line	403
	colm	18
	asgn
	pop
	mark0
	mark	L21
	pnull
	var	4
	pnull
	var	2
	var	2
	line	404
	colm	24
	cat
	line	404
	colm	19
	asgn
	unmark
lab L21
	mark0
	pnull
	pnull
	var	3
	var	4
	line	405
	colm	27
	cat
	var	5
	line	405
	colm	36
	cat
	line	405
	colm	13
	psusp
	pop
lab L22
	efail
lab L23
	unmark
lab L19
	efail
lab L20
	unmark
lab L15
	efail
lab L16
	goto	L13
lab L12
	mark	L24
	pnull
	var	6
	pnull
	pnull
	var	1
	int	0
	line	410
	colm	15
	minus
	int	1
	line	410
	colm	20
	div
	line	410
	colm	9
	asgn
	unmark
lab L24
	mark0
	pnull
	var	7
	var	8
	var	0
	pnull
	var	1
	int	0
	line	411
	colm	30
	minus
	line	411
	colm	24
	invoke	2
	line	411
	colm	15
	asgn
	pop
	mark0
	mark	L27
	var	7
	line	412
	colm	12
	bscan
	mark	L28
	pnull
	var	3
	var	9
	var	6
	line	413
	colm	26
	invoke	1
	line	413
	colm	19
	asgn
	unmark
lab L28
	pnull
	var	5
	var	10
	int	2
	line	414
	colm	25
	invoke	1
	line	414
	colm	19
	asgn
	line	412
	colm	12
	escan
	unmark
lab L27
	mark0
	mark0
	pnull
	pnull
	var	3
	pnull
	var	0
	line	416
	colm	33
	bang
	line	416
	colm	30
	cat
	var	5
	line	416
	colm	36
	cat
	line	416
	colm	16
	psusp
	pop
lab L31
	efail
lab L32
	pop
lab L29
	efail
lab L30
	unmark
lab L25
	efail
lab L26
lab L13
lab L7
lab L3
	unmark
lab L1
	pnull
	line	420
	colm	1
	pfail
	end
proc permute
	local	0,001000,s
	local	1,000020,i
	local	2,000000,permute
	con	0,002000,1,0
	con	1,010000,0
	con	2,002000,1,1
	declend
	line	422
	colm	11
	mark	L1
	mark0
	pnull
	pnull
	var	0
	line	425
	colm	7
	size
	int	0
	line	425
	colm	10
	numeq
	unmark
	mark	L2
	str	1
	line	425
	colm	19
	pret
lab L2
	pfail
	unmark
lab L1
	mark	L3
	mark0
	pnull
	pnull
	var	0
	pnull
	var	1
	pnull
	int	2
	pnull
	var	0
	line	426
	colm	24
	size
	push1
	line	426
	colm	21
	toby
	line	426
	colm	16
	asgn
	line	426
	colm	13
	subsc
	var	2
	pnull
	pnull
	var	0
	int	2
	var	1
	line	426
	colm	42
	sect
	pnull
	var	0
	pnull
	var	1
	int	2
	line	426
	colm	52
	plus
	int	0
	line	426
	colm	54
	sect
	line	426
	colm	46
	cat
	line	426
	colm	38
	invoke	1
	line	426
	colm	28
	cat
	line	426
	colm	4
	psusp
	pop
lab L4
	efail
lab L5
	unmark
lab L3
	pnull
	line	428
	colm	1
	pfail
	end
proc pretrim
	local	0,001000,s
	local	1,001000,c
	local	2,000000,tab
	local	3,000000,many
	con	0,020000,1,040
	con	1,002000,1,0
	declend
	line	430
	colm	11
	mark	L1
	pnull
	pnull
	var	1
	line	432
	colm	4
	null
	cset	0
	line	432
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	var	0
	line	434
	colm	6
	bscan
	mark	L3
	var	2
	var	3
	var	1
	line	435
	colm	15
	invoke	1
	line	435
	colm	10
	invoke	1
	unmark
lab L3
	mark	L4
	var	2
	int	1
	line	436
	colm	17
	invoke	1
	line	436
	colm	7
	pret
lab L4
	pfail
	line	434
	colm	6
	escan
	unmark
lab L2
	pnull
	line	439
	colm	1
	pfail
	end
proc reflect
	local	0,001000,s1
	local	1,001000,i
	local	2,001000,s2
	local	3,000000,reverse
	con	0,002000,1,0
	con	1,010000,0
	con	2,002000,1,2
	con	3,002000,1,1
	con	4,002000,1,3
	declend
	line	441
	colm	11
	mark	L1
	pnull
	pnull
	var	1
	line	443
	colm	4
	null
	int	0
	line	443
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	pnull
	pnull
	var	2
	line	444
	colm	4
	null
	str	1
	line	444
	colm	8
	asgn
	unmark
lab L2
	mark	L3
	mark	L4
	pnull
	pnull
	var	0
	var	2
	line	446
	colm	14
	cat
	var	3
	mark0
	var	1
	eret
	mark	L6
	ccase
	int	0
	line	448
	colm	11
	eqv
	unmark
	pop
	pnull
	var	0
	int	2
	pnull
	int	3
	line	448
	colm	20
	neg
	line	448
	colm	19
	sect
	goto	L5
lab L6
	mark	L7
	ccase
	int	3
	line	449
	colm	11
	eqv
	unmark
	pop
	pnull
	var	0
	int	2
	int	0
	line	449
	colm	19
	sect
	goto	L5
lab L7
	mark	L8
	ccase
	int	2
	line	450
	colm	11
	eqv
	unmark
	pop
	pnull
	var	0
	int	3
	pnull
	int	3
	line	450
	colm	20
	neg
	line	450
	colm	19
	sect
	goto	L5
lab L8
	mark	L9
	ccase
	int	4
	line	451
	colm	11
	eqv
	unmark
	pop
	var	0
	goto	L5
lab L9
	efail
lab L5
	line	446
	colm	30
	invoke	1
	line	446
	colm	20
	cat
	line	446
	colm	4
	pret
lab L4
	pfail
	unmark
lab L3
	pnull
	line	455
	colm	1
	pfail
	end
proc replace
	local	0,001000,s1
	local	1,001000,s2
	local	2,001000,s3
	local	3,000020,result
	local	4,000020,i
	local	5,000000,tab
	local	6,000000,find
	local	7,000000,move
	con	0,010000,0
	con	1,002000,1,0
	declend
	line	457
	colm	11
	mark	L1
	pnull
	var	3
	str	0
	line	460
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	4
	pnull
	var	1
	line	461
	colm	9
	size
	line	461
	colm	6
	asgn
	unmark
lab L2
	mark	L3
	mark0
	pnull
	var	4
	int	1
	line	462
	colm	9
	numeq
	unmark
	line	462
	colm	18
	pfail
	unmark
lab L3
	mark	L4
	var	0
	line	464
	colm	7
	bscan
	mark	L5
lab L6
	mark0
	pnull
	var	3
	dup
	var	5
	var	6
	var	1
	line	465
	colm	33
	invoke	1
	line	465
	colm	28
	invoke	1
	line	465
	colm	20
	cat
	asgn
	unmark
	mark	L6
	mark	L9
	pnull
	var	3
	dup
	var	2
	line	466
	colm	17
	cat
	asgn
	unmark
lab L9
	var	7
	var	4
	line	467
	colm	14
	invoke	1
lab L7
	unmark
	goto	L6
lab L8
	unmark
lab L5
	mark	L10
	pnull
	var	3
	var	5
	int	1
	line	469
	colm	27
	invoke	1
	line	469
	colm	21
	cat
	line	469
	colm	7
	pret
lab L10
	pfail
	line	464
	colm	7
	escan
	unmark
lab L4
	pnull
	line	472
	colm	1
	pfail
	end
proc replacem
	local	0,001000,s
	local	1,001000,pairs
	local	2,000000,replace
	local	3,000000,get
	declend
	line	474
	colm	11
	mark	L1
lab L2
	mark0
	pnull
	var	0
	var	2
	var	0
	var	3
	var	1
	line	476
	colm	29
	invoke	1
	var	3
	var	1
	line	476
	colm	41
	invoke	1
	line	476
	colm	22
	invoke	3
	line	476
	colm	12
	asgn
lab L3
	unmark
	goto	L2
lab L4
	unmark
lab L1
	mark	L5
	mark	L6
	var	0
	line	478
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	480
	colm	1
	pfail
	end
proc replc
	local	0,001000,s
	local	1,001000,L
	local	2,000020,result
	local	3,000000,repl
	local	4,000000,get
	con	0,010000,0
	declend
	line	481
	colm	11
	mark	L1
	pnull
	var	2
	str	0
	line	484
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	2
	dup
	var	3
	pnull
	var	0
	line	486
	colm	27
	bang
	var	4
	var	1
	line	486
	colm	34
	invoke	1
	line	486
	colm	26
	invoke	2
	line	486
	colm	17
	cat
	asgn
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L5
	mark	L6
	var	2
	line	488
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	490
	colm	1
	pfail
	end
proc rotate
	local	0,001000,s
	local	1,001000,i
	con	0,010000,0
	con	1,002000,1,1
	con	2,002000,1,0
	declend
	line	492
	colm	11
	mark	L1
	mark0
	pnull
	var	0
	str	0
	line	494
	colm	9
	lexeq
	unmark
	mark	L2
	var	0
	line	494
	colm	20
	pret
lab L2
	pfail
	unmark
lab L1
	mark	L3
	pnull
	pnull
	var	1
	line	495
	colm	4
	null
	int	1
	line	495
	colm	7
	asgn
	unmark
lab L3
	mark	L4
	mark0
	pnull
	var	1
	int	2
	line	496
	colm	9
	numle
	unmark
	pnull
	var	1
	dup
	pnull
	var	0
	line	496
	colm	25
	size
	line	496
	colm	21
	plus
	asgn
	unmark
lab L4
	mark	L5
	pnull
	var	1
	dup
	pnull
	var	0
	line	497
	colm	10
	size
	line	497
	colm	6
	mod
	asgn
	unmark
lab L5
	mark	L6
	mark	L7
	pnull
	pnull
	var	0
	pnull
	var	1
	int	1
	line	499
	colm	15
	plus
	int	2
	line	499
	colm	18
	sect
	pnull
	var	0
	int	1
	pnull
	var	1
	int	1
	line	499
	colm	31
	plus
	line	499
	colm	28
	sect
	line	499
	colm	22
	cat
	line	499
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	501
	colm	1
	pfail
	end
proc schars
	local	0,001000,s
	local	1,000000,string
	local	2,000000,cset
	declend
	line	503
	colm	11
	mark	L1
	mark	L2
	var	1
	var	2
	var	0
	line	505
	colm	22
	invoke	1
	line	505
	colm	17
	invoke	1
	line	505
	colm	4
	pret
lab L2
	pfail
	unmark
lab L1
	pnull
	line	507
	colm	1
	pfail
	end
proc scramble
	local	0,001000,s
	local	1,000020,i
	con	0,002000,1,2
	con	1,002000,1,1
	declend
	line	509
	colm	11
	mark	L1
	mark0
	pnull
	var	1
	pnull
	pnull
	var	0
	line	512
	colm	15
	size
	int	0
	pnull
	int	1
	line	512
	colm	26
	neg
	line	512
	colm	18
	toby
	line	512
	colm	12
	asgn
	pop
	mark0
	pnull
	pnull
	var	0
	pnull
	var	1
	line	513
	colm	9
	random
	line	513
	colm	8
	subsc
	pnull
	var	0
	var	1
	line	513
	colm	18
	subsc
	line	513
	colm	13
	swap
	unmark
lab L2
	efail
lab L3
	unmark
lab L1
	mark	L4
	mark	L5
	var	0
	line	515
	colm	4
	pret
lab L5
	pfail
	unmark
lab L4
	pnull
	line	517
	colm	1
	pfail
	end
proc selectp
	local	0,001000,s
	local	1,001000,L
	local	2,000020,result
	con	0,010000,0
	declend
	line	519
	colm	11
	mark	L1
	pnull
	var	2
	str	0
	line	522
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	2
	dup
	pnull
	var	0
	pnull
	var	1
	line	524
	colm	24
	bang
	line	524
	colm	23
	subsc
	line	524
	colm	17
	cat
	asgn
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L5
	mark	L6
	var	2
	line	526
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	528
	colm	1
	pfail
	end
proc starseq
	local	0,001000,s
	local	1,000000,starseq
	con	0,010000,0
	declend
	line	530
	colm	11
	mark	L1
	pnull
	pnull
	var	0
	line	532
	colm	4
	null
	str	0
	line	532
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	mark0
	mark	L5
	str	0
	esusp
	goto	L6
lab L5
	pnull
	var	1
	var	0
	line	534
	colm	25
	invoke	1
	pnull
	var	0
	line	534
	colm	32
	bang
	line	534
	colm	29
	cat
lab L6
	line	534
	colm	4
	psusp
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	pnull
	line	536
	colm	1
	pfail
	end
proc strcnt
	local	0,001000,s1
	local	1,001000,s2
	local	2,000020,j
	local	3,000020,i
	local	4,000000,tab
	local	5,000000,find
	local	6,000000,move
	con	0,002000,1,0
	con	1,002000,1,1
	declend
	line	538
	colm	11
	mark	L1
	mark0
	pnull
	pnull
	var	0
	line	541
	colm	7
	size
	int	0
	line	541
	colm	11
	numeq
	unmark
	line	541
	colm	20
	pfail
	unmark
lab L1
	mark	L2
	pnull
	var	2
	int	0
	line	543
	colm	6
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	3
	pnull
	var	0
	line	544
	colm	9
	size
	line	544
	colm	6
	asgn
	unmark
lab L3
	mark	L4
	var	1
	line	546
	colm	7
	bscan
	mark	L5
lab L6
	mark0
	var	4
	var	5
	var	0
	line	547
	colm	21
	invoke	1
	line	547
	colm	16
	invoke	1
	unmark
	mark	L6
	mark	L9
	pnull
	var	2
	dup
	int	1
	line	548
	colm	12
	plus
	asgn
	unmark
lab L9
	var	6
	var	3
	line	549
	colm	14
	invoke	1
lab L7
	unmark
	goto	L6
lab L8
	unmark
lab L5
	mark	L10
	var	2
	line	551
	colm	7
	pret
lab L10
	pfail
	line	546
	colm	7
	escan
	unmark
lab L4
	pnull
	line	554
	colm	1
	pfail
	end
proc substrings
	local	0,001000,s
	local	1,001000,i
	local	2,001000,j
	local	3,000000,tab
	local	4,000000,move
	con	0,002000,1,1
	declend
	line	556
	colm	11
	mark	L1
	pnull
	pnull
	var	1
	line	558
	colm	4
	null
	int	0
	line	558
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	pnull
	pnull
	var	2
	line	559
	colm	4
	null
	pnull
	var	0
	line	559
	colm	10
	size
	line	559
	colm	7
	asgn
	unmark
lab L2
	mark	L3
	var	0
	line	561
	colm	6
	bscan
	mark0
	var	3
	pnull
	int	0
	pnull
	var	0
	line	562
	colm	22
	size
	push1
	line	562
	colm	19
	toby
	line	562
	colm	16
	invoke	1
	pop
	mark0
	mark0
	var	4
	pnull
	var	1
	var	2
	push1
	line	563
	colm	25
	toby
	line	563
	colm	22
	invoke	1
	line	563
	colm	10
	psusp
	pop
lab L6
	efail
lab L7
	unmark
lab L4
	efail
lab L5
	line	561
	colm	6
	escan
	unmark
lab L3
	pnull
	line	566
	colm	1
	pfail
	end
proc transpose
	local	0,001000,s1
	local	1,001000,s2
	local	2,001000,s3
	local	3,000020,n
	local	4,000020,result
	local	5,000000,map
	local	6,000000,move
	local	7,000000,tab
	con	0,010000,0
	con	1,002000,1,0
	declend
	line	568
	colm	11
	mark	L1
	pnull
	var	3
	pnull
	var	1
	line	571
	colm	9
	size
	line	571
	colm	6
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	4
	str	0
	line	572
	colm	11
	asgn
	unmark
lab L2
	mark	L3
	var	0
	line	574
	colm	7
	bscan
	mark	L4
lab L5
	mark0
	pnull
	var	4
	dup
	var	5
	var	2
	var	1
	var	6
	var	3
	line	575
	colm	41
	invoke	1
	line	575
	colm	28
	invoke	3
	line	575
	colm	20
	cat
	asgn
lab L6
	unmark
	goto	L5
lab L7
	unmark
lab L4
	mark	L8
	pnull
	var	4
	dup
	var	7
	int	1
	line	576
	colm	29
	invoke	1
	line	576
	colm	21
	cat
	asgn
	line	576
	colm	7
	pret
lab L8
	pfail
	line	574
	colm	7
	escan
	unmark
lab L3
	pnull
	line	579
	colm	1
	pfail
	end
proc words
	local	0,001000,s
	local	1,001000,c
	local	2,000000,tab
	local	3,000000,many
	local	4,000000,pos
	local	5,000000,upto
	con	0,020000,6,040,011,015,012,013,014
	con	1,002000,1,0
	con	2,002000,1,1
	declend
	line	581
	colm	11
	mark	L1
	pnull
	pnull
	var	1
	line	583
	colm	4
	null
	cset	0
	line	583
	colm	7
	asgn
	unmark
lab L1
	mark	L2
	var	0
	line	585
	colm	6
	bscan
	mark	L3
	var	2
	var	3
	var	1
	line	586
	colm	15
	invoke	1
	line	586
	colm	10
	invoke	1
	unmark
lab L3
lab L4
	mark0
	mark	L7
	var	4
	int	1
	line	587
	colm	20
	invoke	1
	unmark
	efail
lab L7
	pnull
	unmark
	mark	L4
	mark	L8
	mark0
	int	2
	line	588
	colm	21
	limit
	var	2
	mark	L11
	var	5
	var	1
	line	588
	colm	26
	invoke	1
	esusp
	goto	L12
lab L11
	int	1
lab L12
	line	588
	colm	21
	invoke	1
	lsusp
	line	588
	colm	10
	psusp
	pop
lab L9
	efail
lab L10
	unmark
lab L8
	var	2
	var	3
	var	1
	line	589
	colm	18
	invoke	1
	line	589
	colm	13
	invoke	1
lab L5
	unmark
	goto	L4
lab L6
	line	585
	colm	6
	escan
	unmark
lab L2
	mark	L13
	line	593
	colm	4
	pfail
	unmark
lab L13
	pnull
	line	595
	colm	1
	pfail
	end
