version	U12.1.00
uid	ngrams.u1-1786032989-0
impl	error
global	2
	0,000005,ngrams,4
	1,000005,ngramset,3

proc ngrams
	local	0,001000,s
	local	1,001000,i
	local	2,001000,c
	local	3,001000,t
	local	4,000020,line
	local	5,000020,grams
	local	6,000020,a
	local	7,000020,count
	local	8,000020,f
	local	9,000000,integer
	local	10,000000,stop
	local	11,000000,cset
	local	12,000000,table
	local	13,000000,type
	local	14,000000,reads
	local	15,000000,tab
	local	16,000000,upto
	local	17,000000,many
	local	18,000000,move
	local	19,000000,sort
	local	20,000000,pull
	local	21,000000,right
	local	22,000000,get
	con	0,002000,1,0
	con	1,010000,32,052,052,052,040,151,156,166,141,154,151,144,040,156,147,162,141,155,163,040,163,160,145,143,151,146,151,143,141,164,151,157,156
	con	2,010000,30,052,052,052,040,151,156,166,141,154,151,144,040,143,163,145,164,040,163,160,145,143,151,146,151,143,141,164,151,157,156
	con	3,010000,4,146,151,154,145
	con	4,010000,0
	con	5,002000,4,1000
	con	6,002000,1,1
	con	7,002000,1,4
	con	8,002000,1,8
	con	9,002000,1,3
	declend
	filen	ngrams.icn
	line	29
	colm	11
	synt	any
	mark	L1
	line	32
	colm	4
	synt	if
	mark0
	mark	L2
	pnull
	var	9
	var	1
	line	32
	colm	19
	synt	any
	invoke	1
	int	0
	line	32
	colm	23
	synt	any
	numgt
	unmark
	efail
lab L2
	pnull
	unmark
	var	10
	str	1
	line	32
	colm	37
	synt	any
	invoke	1
	line	32
	colm	4
	synt	endif
	unmark
lab L1
	mark	L3
	pnull
	pnull
	var	2
	line	34
	colm	4
	synt	any
	null
	pnull
	line	34
	colm	10
	synt	any
	keywd	lcase
	line	34
	colm	20
	synt	any
	keywd	ucase
	line	34
	colm	17
	synt	any
	cat
	line	34
	colm	7
	synt	any
	asgn
	unmark
lab L3
	mark	L4
	line	35
	colm	4
	synt	if
	mark0
	mark	L5
	pnull
	var	2
	var	11
	var	2
	line	35
	colm	21
	synt	any
	invoke	1
	line	35
	colm	14
	synt	any
	asgn
	unmark
	efail
lab L5
	pnull
	unmark
	var	10
	str	2
	line	35
	colm	35
	synt	any
	invoke	1
	line	35
	colm	4
	synt	endif
	unmark
lab L4
	mark	L6
	pnull
	var	5
	var	12
	int	0
	line	37
	colm	18
	synt	any
	invoke	1
	line	37
	colm	10
	synt	any
	asgn
	unmark
lab L6
	mark	L7
	line	39
	colm	4
	synt	ifelse
	mark	L8
	pnull
	var	13
	var	0
	line	39
	colm	11
	synt	any
	invoke	1
	str	3
	line	39
	colm	15
	synt	any
	lexeq
	unmark
	mark	L10
	pnull
	var	4
	str	4
	line	40
	colm	12
	synt	any
	asgn
	unmark
lab L10
lab L11
	line	41
	colm	7
	synt	while
	mark0
	pnull
	var	4
	dup
	var	14
	var	8
	int	5
	line	41
	colm	28
	synt	any
	invoke	2
	line	41
	colm	18
	synt	any
	cat
	asgn
lab L12
	unmark
	goto	L11
lab L13
	line	41
	colm	7
	synt	endwhile
	goto	L9
lab L8
	pnull
	var	4
	var	0
	line	43
	colm	14
	synt	any
	asgn
lab L9
	line	39
	colm	4
	synt	endifelse
	unmark
lab L7
	mark	L14
	var	4
	line	44
	colm	9
	synt	any
	bscan
lab L15
	line	44
	colm	11
	synt	while
	mark0
	var	15
	var	16
	var	2
	line	44
	colm	25
	synt	any
	invoke	1
	line	44
	colm	20
	synt	any
	invoke	1
	unmark
	mark	L15
	int	6
	line	45
	colm	11
	synt	any
	limit
	var	15
	var	17
	var	2
	line	45
	colm	16
	synt	any
	invoke	1
	line	45
	colm	11
	synt	any
	invoke	1
	lsusp
	line	45
	colm	26
	synt	any
	bscan
lab L18
	line	45
	colm	28
	synt	while
	mark0
	pnull
	pnull
	var	5
	var	18
	var	1
	line	45
	colm	44
	synt	any
	invoke	1
	line	45
	colm	39
	synt	any
	subsc
	dup
	int	6
	line	45
	colm	49
	synt	any
	plus
	asgn
	unmark
	mark	L18
	var	18
	pnull
	pnull
	var	1
	line	46
	colm	15
	synt	any
	neg
	int	6
	line	46
	colm	18
	synt	any
	plus
	line	46
	colm	14
	synt	any
	invoke	1
lab L19
	unmark
	goto	L18
lab L20
	line	45
	colm	28
	synt	endwhile
	line	45
	colm	26
	synt	any
	escan
lab L16
	unmark
	goto	L15
lab L17
	line	44
	colm	11
	synt	endwhile
	line	44
	colm	9
	synt	any
	escan
	unmark
lab L14
	mark	L21
	line	47
	colm	4
	synt	ifelse
	mark	L22
	pnull
	var	3
	line	47
	colm	7
	synt	any
	null
	unmark
	mark	L24
	pnull
	var	6
	var	19
	var	5
	int	7
	line	48
	colm	16
	synt	any
	invoke	2
	line	48
	colm	9
	synt	any
	asgn
	unmark
lab L24
lab L25
	line	49
	colm	7
	synt	while
	mark0
	pnull
	var	7
	var	20
	var	6
	line	49
	colm	26
	synt	any
	invoke	1
	line	49
	colm	19
	synt	any
	asgn
	unmark
	mark	L25
	line	50
	colm	10
	synt	suspend
	mark0
	pnull
	var	20
	var	6
	line	50
	colm	22
	synt	any
	invoke	1
	var	21
	var	7
	int	8
	line	50
	colm	34
	synt	any
	invoke	2
	line	50
	colm	26
	synt	any
	cat
	line	50
	colm	10
	synt	any
	psusp
	pop
lab L28
	efail
lab L29
	line	50
	colm	10
	synt	endsuspend
lab L26
	unmark
	goto	L25
lab L27
	line	49
	colm	7
	synt	endwhile
	goto	L23
lab L22
	mark	L30
	pnull
	var	6
	var	19
	var	5
	int	9
	line	53
	colm	16
	synt	any
	invoke	2
	line	53
	colm	9
	synt	any
	asgn
	unmark
lab L30
	line	54
	colm	7
	synt	suspend
	mark0
lab L33
	mark0
	pnull
	var	22
	var	6
	line	54
	colm	20
	synt	any
	invoke	1
	var	21
	var	22
	var	6
	line	54
	colm	36
	synt	any
	invoke	1
	int	8
	line	54
	colm	32
	synt	any
	invoke	2
	line	54
	colm	24
	synt	any
	cat
	chfail	L33
	esusp
	line	54
	colm	7
	synt	any
	psusp
	pop
lab L31
	efail
lab L32
	line	54
	colm	7
	synt	endsuspend
lab L23
	line	47
	colm	4
	synt	endifelse
	unmark
lab L21
	pnull
	line	56
	colm	1
	synt	any
	pfail
	end
proc ngramset
	local	0,001000,s
	local	1,001000,i
	local	2,001000,c
	local	3,000020,line
	local	4,000020,grams
	local	5,000020,a
	local	6,000020,count
	local	7,000020,f
	local	8,000000,integer
	local	9,000000,stop
	local	10,000000,cset
	local	11,000000,set
	local	12,000000,type
	local	13,000000,reads
	local	14,000000,tab
	local	15,000000,upto
	local	16,000000,many
	local	17,000000,insert
	local	18,000000,move
	con	0,002000,1,0
	con	1,010000,32,052,052,052,040,151,156,166,141,154,151,144,040,156,147,162,141,155,163,040,163,160,145,143,151,146,151,143,141,164,151,157,156
	con	2,010000,30,052,052,052,040,151,156,166,141,154,151,144,040,143,163,145,164,040,163,160,145,143,151,146,151,143,141,164,151,157,156
	con	3,010000,4,146,151,154,145
	con	4,010000,0
	con	5,002000,4,1000
	con	6,002000,1,1
	declend
	line	58
	colm	11
	synt	any
	mark	L1
	line	61
	colm	4
	synt	if
	mark0
	mark	L2
	pnull
	var	8
	var	1
	line	61
	colm	19
	synt	any
	invoke	1
	int	0
	line	61
	colm	23
	synt	any
	numgt
	unmark
	efail
lab L2
	pnull
	unmark
	var	9
	str	1
	line	61
	colm	37
	synt	any
	invoke	1
	line	61
	colm	4
	synt	endif
	unmark
lab L1
	mark	L3
	pnull
	pnull
	var	2
	line	63
	colm	4
	synt	any
	null
	pnull
	line	63
	colm	10
	synt	any
	keywd	lcase
	line	63
	colm	20
	synt	any
	keywd	ucase
	line	63
	colm	17
	synt	any
	cat
	line	63
	colm	7
	synt	any
	asgn
	unmark
lab L3
	mark	L4
	line	64
	colm	4
	synt	if
	mark0
	mark	L5
	pnull
	var	2
	var	10
	var	2
	line	64
	colm	21
	synt	any
	invoke	1
	line	64
	colm	14
	synt	any
	asgn
	unmark
	efail
lab L5
	pnull
	unmark
	var	9
	str	2
	line	64
	colm	35
	synt	any
	invoke	1
	line	64
	colm	4
	synt	endif
	unmark
lab L4
	mark	L6
	pnull
	var	4
	var	11
	line	66
	colm	16
	synt	any
	invoke	0
	line	66
	colm	10
	synt	any
	asgn
	unmark
lab L6
	mark	L7
	line	68
	colm	4
	synt	ifelse
	mark	L8
	pnull
	var	12
	var	0
	line	68
	colm	11
	synt	any
	invoke	1
	str	3
	line	68
	colm	15
	synt	any
	lexeq
	unmark
	mark	L10
	pnull
	var	3
	str	4
	line	69
	colm	12
	synt	any
	asgn
	unmark
lab L10
lab L11
	line	70
	colm	7
	synt	while
	mark0
	pnull
	var	3
	dup
	var	13
	var	7
	int	5
	line	70
	colm	28
	synt	any
	invoke	2
	line	70
	colm	18
	synt	any
	cat
	asgn
lab L12
	unmark
	goto	L11
lab L13
	line	70
	colm	7
	synt	endwhile
	goto	L9
lab L8
	pnull
	var	3
	var	0
	line	72
	colm	14
	synt	any
	asgn
lab L9
	line	68
	colm	4
	synt	endifelse
	unmark
lab L7
	mark	L14
	var	3
	line	74
	colm	9
	synt	any
	bscan
lab L15
	line	74
	colm	11
	synt	while
	mark0
	var	14
	var	15
	var	2
	line	74
	colm	25
	synt	any
	invoke	1
	line	74
	colm	20
	synt	any
	invoke	1
	unmark
	mark	L15
	int	6
	line	75
	colm	11
	synt	any
	limit
	var	14
	var	16
	var	2
	line	75
	colm	16
	synt	any
	invoke	1
	line	75
	colm	11
	synt	any
	invoke	1
	lsusp
	line	75
	colm	26
	synt	any
	bscan
lab L18
	line	75
	colm	28
	synt	while
	mark0
	var	17
	var	4
	var	18
	var	1
	line	75
	colm	52
	synt	any
	invoke	1
	line	75
	colm	40
	synt	any
	invoke	2
	unmark
	mark	L18
	var	18
	pnull
	pnull
	var	1
	line	76
	colm	15
	synt	any
	neg
	int	6
	line	76
	colm	18
	synt	any
	plus
	line	76
	colm	14
	synt	any
	invoke	1
lab L19
	unmark
	goto	L18
lab L20
	line	75
	colm	28
	synt	endwhile
	line	75
	colm	26
	synt	any
	escan
lab L16
	unmark
	goto	L15
lab L17
	line	74
	colm	11
	synt	endwhile
	line	74
	colm	9
	synt	any
	escan
	unmark
lab L14
	mark	L21
	mark	L22
	var	4
	line	78
	colm	4
	synt	any
	pret
lab L22
	synt	any
	pfail
	unmark
lab L21
	pnull
	line	80
	colm	1
	synt	any
	pfail
	end
