proc imr2tie
	filen	tieutils.icn
	local	0,001000,imr
	con	0,010000,1,073
	declend
	line	84
	colm	11
	mark	L1
	mark	L2
	pnull
	pnull
	pnull
	pnull
	pnull
	var	0
	line	86
	colm	14
	field	width
	str	0
	line	86
	colm	21
	cat
	pnull
	pnull
	pnull
	var	0
	line	86
	colm	35
	field	pixels
	line	86
	colm	31
	size
	pnull
	var	0
	line	86
	colm	48
	field	width
	line	86
	colm	43
	div
	line	86
	colm	28
	cat
	str	0
	line	86
	colm	55
	cat
	pnull
	var	0
	line	86
	colm	68
	field	pixels
	line	86
	colm	62
	cat
	line	86
	colm	4
	pret
lab L2
	pfail
	unmark
lab L1
	pnull
	line	88
	colm	1
	pfail
	end
proc pat2tie
	local	0,001000,pat
	local	1,000020,matrix
	local	2,000020,tieup
	local	3,000020,shafts
	local	4,000020,treadles
	local	5,000000,tab
	local	6,000000,upto
	local	7,000000,move
	local	8,000000,list
	local	9,000000,put
	local	10,000000,pat2rows
	local	11,000000,tie
	local	12,000000,tier2string
	con	0,020000,1,054
	con	1,002000,1,1
	declend
	line	90
	colm	11
	mark	L1
	var	0
	line	93
	colm	8
	bscan
	mark	L2
	pnull
	var	3
	var	5
	var	6
	cset	0
	line	94
	colm	28
	invoke	1
	line	94
	colm	23
	invoke	1
	line	94
	colm	17
	asgn
	pop
	var	7
	int	1
	line	95
	colm	11
	invoke	1
	pop
	pnull
	var	4
	var	5
	var	6
	cset	0
	line	96
	colm	27
	invoke	1
	line	96
	colm	22
	invoke	1
	line	96
	colm	16
	asgn
	pop
	var	7
	int	1
	line	97
	colm	11
	invoke	1
	unmark
	mark	L4
	pnull
	var	1
	var	8
	var	3
	line	98
	colm	24
	invoke	1
	line	98
	colm	17
	asgn
	unmark
lab L4
lab L5
	mark0
	var	9
	var	1
	var	7
	var	4
	line	99
	colm	32
	invoke	1
	line	99
	colm	19
	invoke	2
lab L6
	unmark
	goto	L5
lab L7
	goto	L3
lab L2
	pnull
	var	1
	var	10
	var	0
	line	101
	colm	30
	invoke	1
	line	101
	colm	19
	asgn
lab L3
	line	93
	colm	8
	escan
	unmark
lab L1
	mark	L8
	pnull
	var	2
	var	11
	pnull
	pnull
	var	1
	int	1
	line	104
	colm	24
	subsc
	line	104
	colm	17
	size
	pnull
	var	1
	line	104
	colm	29
	size
	var	1
	line	104
	colm	16
	invoke	3
	line	104
	colm	10
	asgn
	unmark
lab L8
	mark	L9
	mark	L10
	var	12
	var	2
	line	106
	colm	22
	invoke	1
	line	106
	colm	4
	pret
lab L10
	pfail
	unmark
lab L9
	pnull
	line	108
	colm	1
	pfail
	end
proc pat2tier
	local	0,001000,pat
	local	1,000020,matrix
	local	2,000000,pat2rows
	local	3,000000,tie
	con	0,002000,1,1
	declend
	line	110
	colm	11
	mark	L1
	pnull
	var	1
	var	2
	var	0
	line	113
	colm	22
	invoke	1
	line	113
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark	L3
	var	3
	pnull
	pnull
	var	1
	int	0
	line	115
	colm	22
	subsc
	line	115
	colm	15
	size
	pnull
	var	1
	line	115
	colm	27
	size
	var	1
	line	115
	colm	14
	invoke	3
	line	115
	colm	4
	pret
lab L3
	pfail
	unmark
lab L2
	pnull
	line	117
	colm	1
	pfail
	end
proc showpat
	local	0,001000,pat
	local	1,001000,cellsize
	local	2,001000,fg
	local	3,001000,bg
	local	4,000020,x
	local	5,000020,y
	local	6,000020,panel
	local	7,000020,row
	local	8,000020,rows
	local	9,000020,color
	local	10,000020,tieup
	local	11,000000,pat2rows
	local	12,000000,makepanel
	local	13,000000,colorcell
	con	0,002000,2,10
	con	1,002000,1,1
	con	2,010000,1,061
	con	3,010000,5,142,154,141,143,153
	con	4,010000,5,167,150,151,164,145
	declend
	line	121
	colm	11
	mark	L1
	pnull
	pnull
	var	1
	line	124
	colm	4
	null
	int	0
	line	124
	colm	14
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	8
	var	11
	var	0
	line	126
	colm	20
	invoke	1
	line	126
	colm	9
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	6
	var	12
	pnull
	pnull
	var	8
	int	1
	line	128
	colm	28
	subsc
	line	128
	colm	23
	size
	pnull
	var	8
	line	128
	colm	33
	size
	var	1
	var	2
	var	3
	line	128
	colm	22
	invoke	5
	line	128
	colm	10
	asgn
	unmark
lab L3
	mark	L4
	pnull
	var	5
	int	1
	line	130
	colm	6
	asgn
	unmark
lab L4
	mark	L5
	mark0
	pnull
	var	7
	pnull
	var	8
	line	132
	colm	17
	bang
	line	132
	colm	14
	asgn
	pop
	mark0
	mark	L8
	mark0
	pnull
	var	4
	pnull
	int	1
	pnull
	var	7
	line	133
	colm	23
	size
	push1
	line	133
	colm	20
	toby
	line	133
	colm	15
	asgn
	pop
	mark0
	mark	L11
	pnull
	var	9
	mark	L12
	pnull
	pnull
	var	7
	var	4
	line	134
	colm	25
	subsc
	str	2
	line	134
	colm	29
	lexeq
	unmark
	str	3
	goto	L13
lab L12
	str	4
lab L13
	line	134
	colm	16
	asgn
	unmark
lab L11
	var	13
	var	6
	var	4
	var	5
	var	9
	line	135
	colm	19
	invoke	4
	unmark
lab L9
	efail
lab L10
	unmark
lab L8
	pnull
	var	5
	dup
	int	1
	line	137
	colm	9
	plus
	asgn
	unmark
lab L6
	efail
lab L7
	unmark
lab L5
	mark	L14
	mark	L15
	var	6
	line	140
	colm	4
	pret
lab L15
	pfail
	unmark
lab L14
	pnull
	line	142
	colm	1
	pfail
	end
proc str2matrix
	local	0,001000,shafts
	local	1,001000,treadles
	local	2,001000,tieup
	local	3,000020,matrix
	local	4,000000,put
	local	5,000000,move
	con	0,002000,1,1
	declend
	line	144
	colm	11
	mark	L1
	pnull
	var	3
	pnull
	line	147
	colm	14
	llist	0
	line	147
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	var	2
	line	149
	colm	10
	bscan
	mark0
	pnull
	int	0
	var	1
	push1
	line	150
	colm	15
	toby
	pop
	mark0
	var	4
	var	3
	var	5
	var	0
	line	151
	colm	26
	invoke	1
	line	151
	colm	13
	invoke	2
	unmark
lab L3
	efail
lab L4
	line	149
	colm	10
	escan
	unmark
lab L2
	mark	L5
	mark	L6
	var	3
	line	154
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	156
	colm	1
	pfail
	end
proc testtie
	local	0,001000,s
	local	1,000020,n
	local	2,000020,m
	local	3,000020,bits
	local	4,000000,integer
	local	5,000000,tab
	local	6,000000,upto
	local	7,000000,move
	local	8,000000,cset
	con	0,002000,1,0
	con	1,020000,1,073
	con	2,002000,1,1
	con	3,020000,2,060,061
	declend
	line	158
	colm	11
	mark	L1
	var	0
	line	161
	colm	6
	bscan
	mark	L2
	pnull
	var	1
	pnull
	int	0
	var	4
	var	5
	var	6
	cset	1
	line	162
	colm	33
	invoke	1
	line	162
	colm	28
	invoke	1
	line	162
	colm	24
	invoke	1
	line	162
	colm	15
	numlt
	line	162
	colm	9
	asgn
	pop
	var	7
	int	2
	line	163
	colm	11
	invoke	1
	pop
	pnull
	var	2
	pnull
	int	0
	var	4
	var	5
	var	6
	cset	1
	line	164
	colm	33
	invoke	1
	line	164
	colm	28
	invoke	1
	line	164
	colm	24
	invoke	1
	line	164
	colm	15
	numlt
	line	164
	colm	9
	asgn
	pop
	var	7
	int	2
	line	165
	colm	11
	invoke	1
	pop
	pnull
	var	3
	var	5
	int	0
	line	166
	colm	18
	invoke	1
	line	166
	colm	12
	asgn
	esusp
	goto	L3
lab L2
	line	167
	colm	11
	pfail
lab L3
	line	161
	colm	6
	escan
	unmark
lab L1
	mark	L4
	mark0
	pnull
	pnull
	pnull
	var	8
	var	3
	line	169
	colm	13
	invoke	1
	cset	3
	line	169
	colm	20
	diff
	line	169
	colm	7
	size
	int	0
	line	169
	colm	29
	numgt
	unmark
	line	169
	colm	38
	pfail
	unmark
lab L4
	mark	L5
	mark0
	pnull
	pnull
	var	3
	line	171
	colm	7
	size
	pnull
	var	1
	var	2
	line	171
	colm	19
	mult
	line	171
	colm	13
	numne
	unmark
	line	171
	colm	29
	pfail
	unmark
lab L5
	mark	L6
	mark	L7
	var	0
	line	173
	colm	4
	pret
lab L7
	pfail
	unmark
lab L6
	pnull
	line	175
	colm	1
	pfail
	end
proc tie2imr
	local	0,001000,tie
	local	1,000020,width
	local	2,000000,tab
	local	3,000000,upto
	local	4,000000,move
	local	5,000000,imstoimr
	con	0,020000,1,073
	con	1,002000,1,1
	con	2,010000,4,054,147,062,054
	con	3,002000,1,0
	declend
	line	177
	colm	11
	mark	L1
	var	0
	line	180
	colm	8
	bscan
	mark	L2
	pnull
	var	1
	var	2
	var	3
	cset	0
	line	181
	colm	24
	invoke	1
	line	181
	colm	19
	invoke	1
	line	181
	colm	13
	asgn
	unmark
lab L2
	mark	L3
	var	4
	int	1
	line	182
	colm	11
	invoke	1
	unmark
lab L3
	mark	L4
	var	2
	pnull
	var	3
	cset	0
	line	183
	colm	15
	invoke	1
	int	1
	line	183
	colm	21
	plus
	line	183
	colm	10
	invoke	1
	unmark
lab L4
	mark	L5
	var	5
	pnull
	pnull
	var	1
	str	2
	line	184
	colm	29
	cat
	var	2
	int	3
	line	184
	colm	45
	invoke	1
	line	184
	colm	39
	cat
	line	184
	colm	22
	invoke	1
	line	184
	colm	7
	pret
lab L5
	pfail
	line	180
	colm	8
	escan
	unmark
lab L1
	pnull
	line	187
	colm	1
	pfail
	end
proc tie2pat
	local	0,001000,shafts
	local	1,001000,treadles
	local	2,001000,tie
	local	3,000020,tieup
	local	4,000020,matrix
	local	5,000000,tie2tier
	local	6,000000,rows2pat
	declend
	line	189
	colm	11
	mark	L1
	pnull
	var	3
	var	5
	var	0
	var	1
	var	2
	line	192
	colm	21
	invoke	3
	line	192
	colm	10
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	4
	pnull
	var	3
	line	193
	colm	19
	field	matrix
	line	193
	colm	11
	asgn
	unmark
lab L2
	mark	L3
	mark	L4
	var	6
	var	4
	line	194
	colm	19
	invoke	1
	line	194
	colm	4
	pret
lab L4
	pfail
	unmark
lab L3
	pnull
	line	196
	colm	1
	pfail
	end
proc tie2tier
	local	0,001000,shafts
	local	1,001000,treadles
	local	2,001000,tieup
	local	3,000020,matrix
	local	4,000000,put
	local	5,000000,move
	local	6,000000,tie
	con	0,002000,1,1
	declend
	line	198
	colm	11
	mark	L1
	pnull
	var	3
	pnull
	line	201
	colm	14
	llist	0
	line	201
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	var	2
	line	203
	colm	10
	bscan
	mark0
	pnull
	int	0
	var	1
	push1
	line	204
	colm	15
	toby
	pop
	mark0
	var	4
	var	3
	var	5
	var	0
	line	205
	colm	26
	invoke	1
	line	205
	colm	13
	invoke	2
	unmark
lab L3
	efail
lab L4
	line	203
	colm	10
	escan
	unmark
lab L2
	mark	L5
	mark	L6
	var	6
	var	0
	var	1
	var	3
	line	208
	colm	14
	invoke	3
	line	208
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	210
	colm	1
	pfail
	end
proc tie2coltier
	local	0,001000,tieup
	local	1,000020,result
	local	2,000020,shafts
	local	3,000020,treadles
	local	4,000020,rec
	local	5,000000,upto
	local	6,000000,tab
	local	7,000000,move
	local	8,000000,stop
	local	9,000000,put
	local	10,000000,tcolors
	local	11,000000,tie
	con	0,020000,1,073
	con	1,010000,4,070,073,070,073
	con	2,002000,1,1
	con	3,010000,17,052,052,052,040,151,156,166,141,154,151,144,040,164,151,145,165,160
	declend
	line	212
	colm	11
	mark	L1
	pnull
	var	1
	pnull
	line	215
	colm	14
	llist	0
	line	215
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark0
	mark	L3
	var	5
	cset	0
	var	0
	line	217
	colm	15
	invoke	2
	unmark
	efail
lab L3
	pnull
	unmark
	pnull
	var	0
	pnull
	str	1
	var	0
	line	218
	colm	23
	cat
	line	218
	colm	13
	asgn
	unmark
lab L2
	mark	L4
	var	0
	line	220
	colm	10
	bscan
	mark	L5
	mark	L6
	pnull
	var	2
	var	6
	var	5
	cset	0
	line	222
	colm	28
	invoke	1
	line	222
	colm	23
	invoke	1
	line	222
	colm	17
	asgn
	pop
	var	7
	int	2
	line	223
	colm	14
	invoke	1
	pop
	pnull
	var	3
	var	6
	var	5
	cset	0
	line	224
	colm	30
	invoke	1
	line	224
	colm	25
	invoke	1
	line	224
	colm	19
	asgn
	pop
	var	7
	int	2
	line	225
	colm	14
	invoke	1
	esusp
	goto	L7
lab L6
	var	8
	str	3
	line	226
	colm	18
	invoke	1
lab L7
	unmark
lab L5
	mark0
	pnull
	int	2
	var	2
	push1
	line	227
	colm	15
	toby
	pop
	mark0
	var	9
	var	1
	var	10
	var	7
	var	3
	line	228
	colm	34
	invoke	1
	line	228
	colm	29
	invoke	1
	line	228
	colm	13
	invoke	2
	unmark
lab L8
	efail
lab L9
	line	220
	colm	10
	escan
	unmark
lab L4
	mark	L10
	mark	L11
	var	11
	var	2
	var	3
	var	1
	line	231
	colm	14
	invoke	3
	line	231
	colm	4
	pret
lab L11
	pfail
	unmark
lab L10
	pnull
	line	233
	colm	1
	pfail
	end
proc tcolors
	local	0,001000,s
	local	1,000020,i
	local	2,000020,result
	local	3,000000,put
	con	0,002000,1,1
	con	1,010000,1,060
	con	2,010000,5,142,154,141,143,153
	con	3,010000,5,167,150,151,164,145
	declend
	line	235
	colm	11
	mark	L1
	pnull
	var	2
	pnull
	line	238
	colm	14
	llist	0
	line	238
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	1
	pnull
	int	0
	pnull
	var	0
	line	240
	colm	20
	size
	push1
	line	240
	colm	17
	toby
	line	240
	colm	12
	asgn
	pop
	mark0
	var	3
	var	2
	mark	L5
	pnull
	pnull
	var	0
	var	1
	line	241
	colm	23
	subsc
	str	1
	line	241
	colm	27
	lexeq
	unmark
	str	2
	goto	L6
lab L5
	str	3
lab L6
	line	241
	colm	10
	invoke	2
	unmark
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L7
	mark	L8
	var	2
	line	243
	colm	4
	pret
lab L8
	pfail
	unmark
lab L7
	pnull
	line	245
	colm	1
	pfail
	end
proc tier2string
	local	0,001000,rec
	local	1,000020,result
	con	0,010000,0
	declend
	line	247
	colm	11
	mark	L1
	pnull
	var	1
	str	0
	line	250
	colm	11
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	1
	dup
	pnull
	pnull
	var	0
	line	252
	colm	26
	field	matrix
	line	252
	colm	22
	bang
	line	252
	colm	17
	cat
	asgn
	pop
lab L3
	efail
lab L4
	unmark
lab L2
	mark	L5
	mark	L6
	var	1
	line	254
	colm	4
	pret
lab L6
	pfail
	unmark
lab L5
	pnull
	line	256
	colm	1
	pfail
	end
proc twill
	local	0,001000,pattern
	local	1,001000,shift
	local	2,001000,shafts
	local	3,001000,treadles
	local	4,000020,row
	local	5,000020,rows
	local	6,000000,overunder
	local	7,000000,put
	local	8,000000,rotate
	con	0,002000,1,1
	declend
	line	258
	colm	11
	mark	L1
	pnull
	pnull
	var	3
	line	261
	colm	4
	null
	var	2
	line	261
	colm	14
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	4
	mark	L3
	var	6
	var	0
	var	3
	line	263
	colm	20
	invoke	2
	esusp
	goto	L4
lab L3
	line	263
	colm	42
	pfail
lab L4
	line	263
	colm	8
	asgn
	unmark
lab L2
	mark	L5
	pnull
	var	5
	pnull
	line	265
	colm	12
	llist	0
	line	265
	colm	9
	asgn
	unmark
lab L5
	mark	L6
	var	7
	var	5
	var	4
	line	267
	colm	7
	invoke	2
	unmark
lab L6
	mark	L7
	mark0
	pnull
	int	0
	pnull
	var	2
	int	0
	line	269
	colm	22
	minus
	push1
	line	269
	colm	12
	toby
	pop
	mark0
	var	7
	var	5
	pnull
	var	4
	var	8
	var	4
	var	1
	line	270
	colm	30
	invoke	2
	line	270
	colm	21
	asgn
	line	270
	colm	10
	invoke	2
	unmark
lab L8
	efail
lab L9
	unmark
lab L7
	mark	L10
	mark	L11
	var	5
	line	272
	colm	4
	pret
lab L11
	pfail
	unmark
lab L10
	pnull
	line	274
	colm	1
	pfail
	end
proc overunder
	local	0,001000,pattern
	local	1,001000,treadles
	local	2,000020,row
	local	3,000020,count
	local	4,000020,i
	local	5,000000,tab
	local	6,000000,many
	local	7,000000,repl
	local	8,000000,pos
	local	9,000000,extend
	con	0,010000,0
	con	1,002000,1,1
	con	2,010000,1,057
	con	3,002000,1,2
	con	4,002000,1,0
	declend
	line	276
	colm	11
	mark	L1
	pnull
	var	2
	str	0
	line	279
	colm	8
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	3
	int	1
	line	281
	colm	10
	asgn
	unmark
lab L2
	mark	L3
	var	0
	line	283
	colm	12
	bscan
	mark	L4
lab L5
	mark0
	pnull
	str	2
	line	284
	colm	13
	tabmat
	unmark
	mark	L5
	mark	L8
	pnull
	var	4
	mark	L9
	var	5
	var	6
	line	285
	colm	24
	keywd	digits
	line	285
	colm	23
	invoke	1
	line	285
	colm	18
	invoke	1
	esusp
	goto	L10
lab L9
	line	285
	colm	36
	pfail
lab L10
	line	285
	colm	12
	asgn
	unmark
lab L8
	mark	L11
	pnull
	var	2
	dup
	var	7
	var	3
	var	4
	line	286
	colm	23
	invoke	2
	line	286
	colm	14
	cat
	asgn
	unmark
lab L11
	mark	L12
	pnull
	var	3
	dup
	int	1
	line	287
	colm	16
	plus
	asgn
	unmark
lab L12
	pnull
	var	3
	dup
	int	3
	line	288
	colm	16
	mod
	asgn
lab L6
	unmark
	goto	L5
lab L7
	unmark
lab L4
	mark0
	mark	L13
	var	8
	int	4
	line	290
	colm	17
	invoke	1
	unmark
	efail
lab L13
	pnull
	unmark
	line	290
	colm	26
	pfail
	line	283
	colm	12
	escan
	unmark
lab L3
	mark	L14
	mark	L15
	var	9
	var	2
	var	1
	line	293
	colm	17
	invoke	2
	line	293
	colm	4
	pret
lab L15
	pfail
	unmark
lab L14
	pnull
	line	295
	colm	1
	pfail
	end
proc direct
	local	0,001000,shafts
	local	1,001000,treadles
	local	2,000020,row
	local	3,000020,i
	local	4,000020,rows
	local	5,000020,swap
	local	6,000000,repl
	local	7,000000,put
	local	8,000000,rotate
	local	9,000000,pflip
	local	10,000000,protate
	con	0,002000,1,1
	con	1,010000,1,061
	con	2,010000,1,060
	con	3,002000,2,90
	con	4,010000,1,166
	declend
	line	300
	colm	11
	mark	L1
	pnull
	pnull
	var	1
	line	303
	colm	4
	null
	var	0
	line	303
	colm	14
	asgn
	unmark
lab L1
	mark	L2
	mark0
	pnull
	var	0
	var	1
	line	305
	colm	14
	numne
	unmark
	mark	L3
	pnull
	var	0
	var	1
	line	306
	colm	14
	swap
	unmark
lab L3
	pnull
	var	5
	int	0
	line	307
	colm	12
	asgn
	unmark
lab L2
	mark	L4
	pnull
	var	4
	pnull
	line	310
	colm	12
	llist	0
	line	310
	colm	9
	asgn
	unmark
lab L4
	mark	L5
	pnull
	var	2
	pnull
	str	1
	var	6
	str	2
	pnull
	var	1
	int	0
	line	312
	colm	37
	minus
	line	312
	colm	22
	invoke	2
	line	312
	colm	15
	cat
	line	312
	colm	8
	asgn
	unmark
lab L5
	mark	L6
	var	7
	var	4
	var	2
	line	314
	colm	7
	invoke	2
	unmark
lab L6
	mark	L7
	mark0
	pnull
	var	3
	pnull
	int	0
	pnull
	var	0
	int	0
	line	316
	colm	27
	minus
	push1
	line	316
	colm	17
	toby
	line	316
	colm	12
	asgn
	pop
	mark0
	var	7
	var	4
	pnull
	var	2
	var	8
	var	2
	pnull
	int	0
	line	317
	colm	36
	neg
	line	317
	colm	30
	invoke	2
	line	317
	colm	21
	asgn
	line	317
	colm	10
	invoke	2
	unmark
lab L8
	efail
lab L9
	unmark
lab L7
	mark	L10
	mark	L11
	pnull
	var	5
	line	319
	colm	7
	null
	unmark
	mark	L13
	var	4
	line	319
	colm	18
	pret
lab L13
	pfail
	goto	L12
lab L11
	mark	L14
	var	9
	var	10
	var	4
	pnull
	int	3
	line	320
	colm	36
	neg
	line	320
	colm	29
	invoke	2
	str	4
	line	320
	colm	21
	invoke	2
	line	320
	colm	9
	pret
lab L14
	pfail
lab L12
	unmark
lab L10
	pnull
	line	322
	colm	1
	pfail
	end
proc satin
	local	0,001000,counter
	local	1,001000,shafts
	local	2,001000,treadles
	local	3,000020,row
	local	4,000020,rows
	local	5,000020,m
	local	6,000020,k
	local	7,000000,list
	local	8,000000,repl
	local	9,000000,residue
	con	0,010000,1,060
	con	1,002000,1,1
	con	2,010000,1,061
	con	3,002000,1,2
	declend
	line	324
	colm	11
	mark	L1
	pnull
	var	4
	var	7
	var	1
	var	8
	str	0
	var	2
	line	327
	colm	29
	invoke	2
	line	327
	colm	16
	invoke	2
	line	327
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	5
	int	1
	line	329
	colm	6
	asgn
	unmark
lab L2
	mark	L3
	pnull
	pnull
	pnull
	var	4
	int	1
	line	330
	colm	8
	subsc
	int	1
	subsc
	str	2
	line	330
	colm	16
	asgn
	unmark
lab L3
	mark	L4
	mark0
	pnull
	var	6
	pnull
	int	3
	var	1
	push1
	line	332
	colm	17
	toby
	line	332
	colm	12
	asgn
	pop
	mark0
	pnull
	pnull
	pnull
	var	4
	var	6
	line	333
	colm	11
	subsc
	var	9
	pnull
	var	5
	dup
	var	0
	line	333
	colm	25
	plus
	asgn
	var	1
	int	1
	line	333
	colm	22
	invoke	3
	line	333
	colm	11
	subsc
	str	2
	line	333
	colm	50
	asgn
	unmark
lab L5
	efail
lab L6
	unmark
lab L4
	mark	L7
	mark	L8
	var	4
	line	335
	colm	4
	pret
lab L8
	pfail
	unmark
lab L7
	pnull
	line	337
	colm	1
	pfail
	end
proc tabby
	local	0,001000,shafts
	local	1,001000,treadles
	local	2,000020,rows
	local	3,000020,row
	local	4,000020,i
	local	5,000000,repl
	local	6,000000,push
	local	7,000000,rotate
	con	0,010000,2,060,061
	con	1,002000,1,1
	con	2,002000,1,2
	declend
	line	339
	colm	11
	mark	L1
	pnull
	var	2
	pnull
	line	342
	colm	12
	llist	0
	line	342
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	3
	var	5
	str	0
	pnull
	pnull
	var	1
	int	1
	line	344
	colm	32
	plus
	int	2
	line	344
	colm	37
	div
	line	344
	colm	15
	invoke	2
	line	344
	colm	8
	asgn
	unmark
lab L2
	mark	L3
	var	6
	var	2
	var	3
	line	346
	colm	8
	invoke	2
	unmark
lab L3
	mark	L4
	mark0
	pnull
	var	4
	pnull
	int	1
	pnull
	var	0
	int	1
	line	348
	colm	27
	minus
	push1
	line	348
	colm	17
	toby
	line	348
	colm	12
	asgn
	pop
	mark0
	var	6
	var	2
	pnull
	var	3
	var	7
	var	3
	int	1
	line	349
	colm	31
	invoke	2
	line	349
	colm	22
	asgn
	line	349
	colm	11
	invoke	2
	unmark
lab L5
	efail
lab L6
	unmark
lab L4
	mark	L7
	mark	L8
	var	2
	line	351
	colm	4
	pret
lab L8
	pfail
	unmark
lab L7
	mark	L9
	mark	L10
	pnull
	line	353
	colm	4
	pret
lab L10
	pfail
	unmark
lab L9
	pnull
	line	355
	colm	1
	pfail
	end
proc general
	local	0,001000,pattern
	local	1,001000,shift
	local	2,001000,rep
	local	3,001000,shafts
	local	4,000020,row
	local	5,000020,rows
	local	6,000020,i
	local	7,000000,overunder
	local	8,000000,put
	local	9,000000,rotate
	con	0,002000,1,1
	declend
	line	357
	colm	11
	mark	L1
	pnull
	var	4
	mark	L2
	var	7
	var	0
	var	3
	line	360
	colm	20
	invoke	2
	esusp
	goto	L3
lab L2
	line	360
	colm	40
	pfail
lab L3
	line	360
	colm	8
	asgn
	unmark
lab L1
	mark	L4
	pnull
	var	5
	pnull
	line	362
	colm	12
	llist	0
	line	362
	colm	9
	asgn
	unmark
lab L4
	mark	L5
	mark0
	pnull
	int	0
	var	2
	push1
	line	364
	colm	12
	toby
	pop
	mark0
	var	8
	var	5
	var	4
	line	365
	colm	10
	invoke	2
	unmark
lab L6
	efail
lab L7
	unmark
lab L5
	mark	L8
	mark0
	pnull
	var	6
	pnull
	var	3
	var	2
	line	367
	colm	43
	div
	line	367
	colm	18
	limit
	pnull
	int	0
	pnull
	var	3
	int	0
	line	367
	colm	28
	minus
	push1
	line	367
	colm	18
	toby
	lsusp
	line	367
	colm	12
	asgn
	pop
	mark0
	mark	L11
	pnull
	var	4
	var	9
	var	4
	var	1
	line	368
	colm	20
	invoke	2
	line	368
	colm	11
	asgn
	unmark
lab L11
	mark0
	pnull
	int	0
	var	2
	push1
	line	369
	colm	15
	toby
	pop
	mark0
	var	8
	var	5
	var	4
	line	370
	colm	13
	invoke	2
	unmark
lab L12
	efail
lab L13
	unmark
lab L9
	efail
lab L10
	unmark
lab L8
	mark	L14
	pnull
	var	5
	pnull
	var	5
	int	0
	dup
	var	3
	line	373
	colm	18
	plus
	sect
	line	373
	colm	9
	asgn
	unmark
lab L14
	mark	L15
	mark	L16
	var	5
	line	375
	colm	4
	pret
lab L16
	pfail
	unmark
lab L15
	pnull
	line	377
	colm	1
	pfail
	end
proc exptie
	local	0,001000,expression
	local	1,001000,shafts
	local	2,001000,treadles
	local	3,000020,output
	local	4,000020,size
	local	5,000020,row
	local	6,000020,rows
	local	7,000020,values
	local	8,000020,input
	local	9,000000,open
	local	10,000000,stop
	local	11,000000,write
	local	12,000000,close
	local	13,000000,system
	local	14,000000,remove
	local	15,000000,put
	local	16,000000,move
	con	0,010000,13,057,164,155,160,057,145,170,160,162,056,151,143,156
	con	1,010000,1,167
	con	2,010000,42,052,052,052,040,143,141,156,156,157,164,040,157,160,145,156,040,146,151,154,145,040,146,157,162,040,164,151,145,055,165,160,040,145,170,160,162,145,163,163,151,157,156
	con	3,010000,27,044,151,156,143,154,165,144,145,040,042,057,164,155,160,057,151,156,143,154,165,144,145,056,167,166,160,042
	con	4,010000,12,154,151,156,153,040,163,145,161,146,156,143,163
	con	5,010000,16,160,162,157,143,145,144,165,162,145,040,155,141,151,156,050,051
	con	6,010000,15,040,040,040,145,166,145,162,171,040,167,162,151,164,145,050
	con	7,010000,9,040,045,040,040,062,051,040,134,040
	con	8,010000,3,145,156,144
	con	9,010000,49,151,143,157,156,164,040,055,163,040,057,164,155,160,057,145,170,160,162,040,076,057,144,145,166,057,156,165,154,154,040,062,076,057,164,155,160,057,163,145,161,144,162,141,146,164,056,145,162,162
	con	10,002000,1,0
	con	11,010000,4,145,170,160,162
	con	12,010000,1,160
	con	13,010000,0
	con	14,010000,25,052,052,052,040,163,150,157,162,164,040,164,151,145,055,165,160,040,163,145,161,165,145,156,143,145
	declend
	line	379
	colm	11
	mark	L1
	pnull
	var	4
	pnull
	var	1
	var	2
	line	382
	colm	19
	mult
	line	382
	colm	9
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	3
	mark	L3
	var	9
	str	0
	str	1
	line	384
	colm	18
	invoke	2
	esusp
	goto	L4
lab L3
	mark	L5
	var	10
	str	2
	line	385
	colm	11
	invoke	1
	unmark
lab L5
	line	386
	colm	7
	pfail
lab L4
	line	384
	colm	11
	asgn
	unmark
lab L2
	mark	L6
	var	11
	var	3
	str	3
	line	389
	colm	9
	invoke	2
	unmark
lab L6
	mark	L7
	var	11
	var	3
	str	4
	line	390
	colm	9
	invoke	2
	unmark
lab L7
	mark	L8
	var	11
	var	3
	str	5
	line	391
	colm	9
	invoke	2
	unmark
lab L8
	mark	L9
	var	11
	var	3
	str	6
	var	0
	str	7
	var	4
	line	392
	colm	9
	invoke	5
	unmark
lab L9
	mark	L10
	var	11
	var	3
	str	8
	line	393
	colm	9
	invoke	2
	unmark
lab L10
	mark	L11
	var	12
	var	3
	line	395
	colm	9
	invoke	1
	unmark
lab L11
	mark	L12
	mark0
	pnull
	var	13
	str	9
	line	399
	colm	13
	invoke	1
	int	10
	line	399
	colm	67
	numne
	unmark
	line	400
	colm	7
	pfail
	unmark
lab L12
	mark	L13
	pnull
	var	8
	var	9
	str	11
	str	12
	line	402
	colm	17
	invoke	2
	line	402
	colm	10
	asgn
	unmark
lab L13
	mark	L14
	pnull
	var	7
	str	13
	line	404
	colm	11
	asgn
	unmark
lab L14
	mark	L15
	mark0
	pnull
	var	7
	dup
	pnull
	var	8
	line	405
	colm	22
	bang
	line	405
	colm	17
	cat
	asgn
	pop
lab L16
	efail
lab L17
	unmark
lab L15
	mark	L18
	var	12
	var	8
	line	407
	colm	9
	invoke	1
	unmark
lab L18
	mark	L19
	var	14
	str	11
	line	409
	colm	10
	invoke	1
	unmark
lab L19
	mark	L20
	pnull
	var	6
	pnull
	line	411
	colm	12
	llist	0
	line	411
	colm	9
	asgn
	unmark
lab L20
	mark	L21
	mark0
	pnull
	pnull
	var	7
	line	413
	colm	7
	size
	pnull
	var	1
	var	2
	line	413
	colm	25
	mult
	line	413
	colm	15
	numlt
	unmark
	mark	L22
	var	10
	str	14
	line	414
	colm	11
	invoke	1
	unmark
lab L22
	line	415
	colm	7
	pfail
	unmark
lab L21
	mark	L23
	var	7
	line	418
	colm	11
	bscan
lab L24
	mark0
	var	15
	var	6
	var	16
	var	1
	line	419
	colm	27
	invoke	1
	line	419
	colm	16
	invoke	2
lab L25
	unmark
	goto	L24
lab L26
	line	418
	colm	11
	escan
	unmark
lab L23
	mark	L27
	mark	L28
	var	6
	line	422
	colm	4
	pret
lab L28
	pfail
	unmark
lab L27
	pnull
	line	424
	colm	1
	pfail
	end
