version	U12.1.00
uid	folding.u1-1786033103-0
record	ulsp__FoldingRangeHandler__state,3
	0,__s
	1,__m
	2,filehandler
record	ulsp__FoldingRangeHandler__methods,3
	0,setVariables
	1,getResult
	2,findFoldingRanges
impl	error
link	regexp.u
link	ximage.u
global	8
	0,000005,ulsp__FoldingRangeHandler_setVariables,2
	1,000005,ulsp__FoldingRangeHandler_getResult,1
	2,000005,ulsp__FoldingRangeHandler_findFoldingRanges,1
	3,000011,ulsp__FoldingRangeHandler__state,3
	4,000011,ulsp__FoldingRangeHandler__methods,3
	5,000001,ulsp__FoldingRangeHandler__oprec,0
	6,000005,ulsp__FoldingRangeHandler,1
	7,000005,ulsp__FoldingRangeHandlerinitialize,0

proc ulsp__FoldingRangeHandler_setVariables
	local	0,001000,self
	local	1,001000,new_filehandler
	declend
	filen	folding.icn
	line	16
	colm	11
	synt	any
	mark	L1
	pnull
	pnull
	var	0
	line	17
	colm	11
	synt	any
	field	filehandler
	var	1
	line	17
	colm	23
	synt	any
	asgn
	unmark
lab L1
	pnull
	line	18
	colm	1
	synt	any
	pfail
	end
proc ulsp__FoldingRangeHandler_getResult
	local	0,001000,self
	local	1,000020,results_list
	local	2,000020,tokenKind
	local	3,000020,tokenName
	local	4,000020,entry
	local	5,000020,startLine
	local	6,000020,endLine
	local	7,000020,result
	local	8,000000,key
	local	9,000000,member
	local	10,000000,put
	local	11,000000,table
	con	0,010000,5,162,141,156,147,145
	con	1,010000,5,163,164,141,162,164
	con	2,002000,1,1
	con	3,010000,3,145,156,144
	con	4,010000,9,151,156,151,164,151,141,154,154,171
	con	5,010000,9,163,164,141,162,164,114,151,156,145
	con	6,010000,7,145,156,144,114,151,156,145
	declend
	line	24
	colm	11
	synt	any
	mark	L1
	pnull
	var	1
	pnull
	line	27
	colm	23
	synt	any
	llist	0
	line	27
	colm	20
	synt	any
	asgn
	unmark
lab L1
	mark	L2
	line	29
	colm	7
	synt	every
	mark0
	pnull
	var	2
	var	8
	pnull
	pnull
	var	0
	line	29
	colm	34
	synt	any
	field	filehandler
	line	29
	colm	46
	synt	any
	field	internal_positions
	line	29
	colm	29
	synt	any
	invoke	1
	line	29
	colm	23
	synt	any
	asgn
	pop
	mark0
	line	30
	colm	10
	synt	every
	mark0
	pnull
	var	3
	var	8
	pnull
	pnull
	pnull
	var	0
	line	30
	colm	37
	synt	any
	field	filehandler
	line	30
	colm	49
	synt	any
	field	internal_positions
	var	2
	line	30
	colm	68
	synt	any
	subsc
	line	30
	colm	32
	synt	any
	invoke	1
	line	30
	colm	26
	synt	any
	asgn
	pop
	mark0
	mark	L7
	pnull
	var	4
	pnull
	pnull
	pnull
	pnull
	var	0
	line	31
	colm	26
	synt	any
	field	filehandler
	line	31
	colm	38
	synt	any
	field	internal_positions
	var	2
	line	31
	colm	57
	synt	any
	subsc
	var	3
	line	31
	colm	68
	synt	any
	subsc
	line	31
	colm	19
	synt	any
	asgn
	unmark
lab L7
	line	33
	colm	13
	synt	if
	mark0
	var	9
	var	4
	str	0
	line	33
	colm	22
	synt	any
	invoke	2
	unmark
	mark	L8
	pnull
	var	5
	pnull
	pnull
	pnull
	var	4
	str	0
	line	34
	colm	34
	synt	any
	subsc
	str	1
	line	34
	colm	43
	synt	any
	subsc
	int	2
	line	34
	colm	52
	synt	any
	subsc
	line	34
	colm	26
	synt	any
	asgn
	unmark
lab L8
	mark	L9
	pnull
	var	6
	pnull
	pnull
	pnull
	pnull
	var	4
	str	0
	line	35
	colm	32
	synt	any
	subsc
	str	3
	line	35
	colm	41
	synt	any
	subsc
	int	2
	line	35
	colm	48
	synt	any
	subsc
	int	2
	line	35
	colm	52
	synt	any
	minus
	line	35
	colm	24
	synt	any
	asgn
	unmark
lab L9
	mark	L10
	line	37
	colm	16
	synt	if
	mark0
	pnull
	var	2
	str	4
	line	37
	colm	29
	synt	any
	lexeq
	unmark
	pnull
	var	6
	dup
	int	2
	line	37
	colm	56
	synt	any
	plus
	asgn
	line	37
	colm	16
	synt	endif
	unmark
lab L10
	line	38
	colm	16
	synt	if
	mark0
	pnull
	var	5
	var	6
	line	38
	colm	29
	synt	any
	numlt
	unmark
	var	10
	var	1
	var	11
	str	5
	var	5
	str	6
	var	6
	line	39
	colm	42
	synt	any
	invoke	4
	line	39
	colm	22
	synt	any
	invoke	2
	line	38
	colm	16
	synt	endif
	line	33
	colm	13
	synt	endif
	unmark
lab L5
	efail
lab L6
	line	30
	colm	10
	synt	endevery
	unmark
lab L3
	efail
lab L4
	line	29
	colm	7
	synt	endevery
	unmark
lab L2
	mark	L11
	mark	L12
	pnull
	var	1
	dup
	pnull
	var	0
	line	48
	colm	37
	synt	any
	field	findFoldingRanges
	line	48
	colm	55
	synt	any
	invoke	0
	line	48
	colm	27
	synt	any
	lconcat
	asgn
	line	48
	colm	7
	synt	any
	pret
lab L12
	synt	any
	pfail
	unmark
lab L11
	pnull
	line	49
	colm	1
	synt	any
	pfail
	end
proc ulsp__FoldingRangeHandler_findFoldingRanges
	local	0,001000,self
	local	1,000020,lineNum
	local	2,000020,_line
	local	3,000020,commentBlock
	local	4,000020,commentLine
	local	5,000020,results_list
	local	6,000020,open_blocks
	local	7,000020,startLine
	local	8,000020,character
	local	9,000020,ch
	local	10,000020,single_quote
	local	11,000020,double_quote
	local	12,000020,importBlock
	local	13,000020,importLine
	local	14,000000,ReMatch
	local	15,000000,put
	local	16,000000,table
	local	17,000000,move
	local	18,000000,pattern_concat
	local	19,000000,pop
	local	20,000000,push
	con	0,002000,1,1
	con	1,002000,1,0
	con	2,010000,8,136,134,163,052,043,056,052,044
	con	3,010000,9,163,164,141,162,164,114,151,156,145
	con	4,010000,7,145,156,144,114,151,156,145
	con	5,002000,1,2
	con	6,010000,19,136,050,154,151,156,153,174,151,155,160,157,162,164,051,134,163,053,056,052
	con	7,010000,4,056,052,134,175
	con	8,010000,1,047
	con	9,010000,1,134
	con	10,010000,1,042
	con	11,010000,4,056,052,134,173
	declend
	line	58
	colm	11
	synt	any
	mark	L1
	pnull
	var	1
	int	0
	line	62
	colm	15
	synt	any
	asgn
	unmark
lab L1
	mark	L2
	pnull
	var	3
	int	1
	line	63
	colm	20
	synt	any
	asgn
	unmark
lab L2
	mark	L3
	pnull
	var	12
	int	1
	line	64
	colm	19
	synt	any
	asgn
	unmark
lab L3
	mark	L4
	pnull
	var	5
	pnull
	line	65
	colm	23
	synt	any
	llist	0
	line	65
	colm	20
	synt	any
	asgn
	unmark
lab L4
	mark	L5
	pnull
	var	6
	pnull
	line	66
	colm	22
	synt	any
	llist	0
	line	66
	colm	19
	synt	any
	asgn
	unmark
lab L5
	mark	L6
lab L7
	line	67
	colm	7
	synt	while
	mark0
	pnull
	var	2
	pnull
	pnull
	pnull
	var	0
	line	67
	colm	26
	synt	any
	field	filehandler
	line	67
	colm	38
	synt	any
	field	temp_idoc
	line	67
	colm	48
	synt	any
	field	getUniFileLine
	pnull
	pnull
	var	0
	line	67
	colm	68
	synt	any
	field	filehandler
	line	67
	colm	80
	synt	any
	field	uri
	var	1
	line	67
	colm	63
	synt	any
	invoke	2
	line	67
	colm	19
	synt	any
	asgn
	unmark
	mark	L7
	mark	L10
	line	68
	colm	10
	synt	ifelse
	mark	L11
	var	14
	str	2
	var	2
	line	68
	colm	20
	synt	any
	invoke	2
	unmark
	mark	L13
	pnull
	var	3
	dup
	int	0
	line	69
	colm	26
	synt	any
	plus
	asgn
	unmark
lab L13
	line	70
	colm	13
	synt	if
	mark0
	pnull
	var	3
	int	0
	line	70
	colm	29
	synt	any
	numeq
	unmark
	pnull
	var	4
	var	1
	line	70
	colm	50
	synt	any
	asgn
	line	70
	colm	13
	synt	endif
	goto	L12
lab L11
	mark	L14
	line	72
	colm	13
	synt	if
	mark0
	pnull
	var	3
	int	0
	line	72
	colm	29
	synt	any
	numgt
	unmark
	var	15
	var	5
	var	16
	str	3
	pnull
	var	4
	int	0
	line	74
	colm	43
	synt	any
	minus
	str	4
	pnull
	var	1
	int	5
	line	75
	colm	37
	synt	any
	minus
	line	73
	colm	39
	synt	any
	invoke	4
	line	73
	colm	19
	synt	any
	invoke	2
	line	72
	colm	13
	synt	endif
	unmark
lab L14
	mark	L15
	pnull
	var	3
	int	1
	line	78
	colm	26
	synt	any
	asgn
	unmark
lab L15
	mark	L16
	line	79
	colm	13
	synt	ifelse
	mark	L17
	var	14
	str	6
	var	2
	line	79
	colm	23
	synt	any
	invoke	2
	unmark
	mark	L19
	pnull
	var	12
	dup
	int	0
	line	80
	colm	28
	synt	any
	plus
	asgn
	unmark
lab L19
	line	81
	colm	16
	synt	if
	mark0
	pnull
	var	12
	int	0
	line	81
	colm	31
	synt	any
	numeq
	unmark
	pnull
	var	13
	var	1
	line	81
	colm	51
	synt	any
	asgn
	line	81
	colm	16
	synt	endif
	goto	L18
lab L17
	mark	L20
	line	83
	colm	16
	synt	if
	mark0
	pnull
	var	12
	int	0
	line	83
	colm	31
	synt	any
	numgt
	unmark
	var	15
	var	5
	var	16
	str	3
	pnull
	var	13
	int	0
	line	85
	colm	45
	synt	any
	minus
	str	4
	pnull
	var	1
	int	5
	line	86
	colm	40
	synt	any
	minus
	line	84
	colm	42
	synt	any
	invoke	4
	line	84
	colm	22
	synt	any
	invoke	2
	line	83
	colm	16
	synt	endif
	unmark
lab L20
	pnull
	var	12
	int	1
	line	89
	colm	28
	synt	any
	asgn
lab L18
	line	79
	colm	13
	synt	endifelse
	unmark
lab L16
	mark	L21
	line	91
	colm	13
	synt	if
	mark0
	pnull
	pnull
	var	6
	line	91
	colm	16
	synt	any
	size
	int	1
	line	91
	colm	29
	synt	any
	numgt
	pop
	pnull
	var	8
	var	14
	str	7
	var	2
	line	91
	colm	55
	synt	any
	invoke	2
	line	91
	colm	45
	synt	any
	asgn
	unmark
	var	2
	line	92
	colm	22
	synt	any
	bscan
	mark	L22
	pnull
	var	10
	int	1
	line	93
	colm	32
	synt	any
	asgn
	unmark
lab L22
	mark	L23
	pnull
	var	11
	int	1
	line	94
	colm	32
	synt	any
	asgn
	unmark
lab L23
	mark	L24
lab L25
	line	95
	colm	19
	synt	while
	mark0
	pnull
	line	95
	colm	26
	synt	any
	keywd	pos
	var	8
	line	95
	colm	31
	synt	any
	numlt
	unmark
	mark	L25
	mark	L28
	pnull
	var	9
	mark	L29
	var	17
	int	0
	line	96
	colm	32
	synt	any
	invoke	1
	line	96
	colm	36
	synt	any
	esusp
	goto	L30
lab L29
	unmark
	unmark
	pnull
	goto	L27
lab L30
	line	96
	colm	25
	synt	any
	asgn
	unmark
lab L28
	mark	L31
	line	97
	colm	22
	synt	if
	mark0
	pnull
	var	9
	str	8
	line	97
	colm	29
	synt	any
	lexeq
	pop
	pnull
	pnull
	var	2
	pnull
	line	97
	colm	46
	synt	any
	keywd	pos
	int	5
	line	97
	colm	50
	synt	any
	minus
	line	97
	colm	45
	synt	any
	subsc
	str	9
	line	97
	colm	54
	synt	any
	lexne
	unmark
	pnull
	var	10
	dup
	int	0
	line	97
	colm	83
	synt	any
	plus
	asgn
	line	97
	colm	22
	synt	endif
	unmark
lab L31
	line	98
	colm	22
	synt	if
	mark0
	pnull
	var	9
	str	10
	line	98
	colm	29
	synt	any
	lexeq
	pop
	pnull
	pnull
	var	2
	pnull
	line	98
	colm	46
	synt	any
	keywd	pos
	int	5
	line	98
	colm	50
	synt	any
	minus
	line	98
	colm	45
	synt	any
	subsc
	str	9
	line	98
	colm	54
	synt	any
	lexne
	unmark
	pnull
	var	11
	dup
	int	0
	line	98
	colm	83
	synt	any
	plus
	asgn
	line	98
	colm	22
	synt	endif
lab L26
	unmark
	goto	L25
lab L27
	line	95
	colm	19
	synt	endwhile
	unmark
lab L24
	line	100
	colm	19
	synt	if
	mark0
	var	18
	pnull
	pnull
	var	10
	int	5
	line	100
	colm	53
	synt	any
	mod
	int	1
	line	100
	colm	58
	synt	any
	numeq
	pnull
	pnull
	var	11
	int	5
	line	100
	colm	80
	synt	any
	mod
	int	1
	line	100
	colm	85
	synt	any
	numeq
	line	100
	colm	36
	synt	any
	invoke	2
	unmark
	mark	L32
	pnull
	var	7
	var	19
	var	6
	line	101
	colm	38
	synt	any
	invoke	1
	line	101
	colm	32
	synt	any
	asgn
	unmark
lab L32
	var	15
	var	5
	var	16
	str	3
	pnull
	var	7
	int	0
	line	103
	colm	47
	synt	any
	minus
	str	4
	pnull
	var	1
	int	5
	line	104
	colm	43
	synt	any
	minus
	line	102
	colm	45
	synt	any
	invoke	4
	line	102
	colm	25
	synt	any
	invoke	2
	line	100
	colm	19
	synt	endif
	line	92
	colm	22
	synt	any
	escan
	line	91
	colm	13
	synt	endif
	unmark
lab L21
	line	109
	colm	13
	synt	if
	mark0
	pnull
	var	8
	var	14
	str	11
	var	2
	line	109
	colm	36
	synt	any
	invoke	2
	line	109
	colm	26
	synt	any
	asgn
	unmark
	var	2
	line	110
	colm	22
	synt	any
	bscan
	mark	L33
	pnull
	var	10
	int	1
	line	111
	colm	32
	synt	any
	asgn
	unmark
lab L33
	mark	L34
	pnull
	var	11
	int	1
	line	112
	colm	32
	synt	any
	asgn
	unmark
lab L34
	mark	L35
lab L36
	line	113
	colm	19
	synt	while
	mark0
	pnull
	line	113
	colm	26
	synt	any
	keywd	pos
	var	8
	line	113
	colm	31
	synt	any
	numlt
	unmark
	mark	L36
	mark	L39
	pnull
	var	9
	mark	L40
	var	17
	int	0
	line	114
	colm	32
	synt	any
	invoke	1
	line	114
	colm	36
	synt	any
	esusp
	goto	L41
lab L40
	unmark
	unmark
	pnull
	goto	L38
lab L41
	line	114
	colm	25
	synt	any
	asgn
	unmark
lab L39
	mark	L42
	line	115
	colm	22
	synt	if
	mark0
	pnull
	var	9
	str	8
	line	115
	colm	29
	synt	any
	lexeq
	pop
	pnull
	pnull
	var	2
	pnull
	line	115
	colm	46
	synt	any
	keywd	pos
	int	5
	line	115
	colm	50
	synt	any
	minus
	line	115
	colm	45
	synt	any
	subsc
	str	9
	line	115
	colm	54
	synt	any
	lexne
	unmark
	pnull
	var	10
	dup
	int	0
	line	115
	colm	83
	synt	any
	plus
	asgn
	line	115
	colm	22
	synt	endif
	unmark
lab L42
	line	116
	colm	22
	synt	if
	mark0
	pnull
	var	9
	str	10
	line	116
	colm	29
	synt	any
	lexeq
	pop
	pnull
	pnull
	var	2
	pnull
	line	116
	colm	46
	synt	any
	keywd	pos
	int	5
	line	116
	colm	50
	synt	any
	minus
	line	116
	colm	45
	synt	any
	subsc
	str	9
	line	116
	colm	54
	synt	any
	lexne
	unmark
	pnull
	var	11
	dup
	int	0
	line	116
	colm	83
	synt	any
	plus
	asgn
	line	116
	colm	22
	synt	endif
lab L37
	unmark
	goto	L36
lab L38
	line	113
	colm	19
	synt	endwhile
	unmark
lab L35
	line	118
	colm	19
	synt	if
	mark0
	var	18
	pnull
	pnull
	var	10
	int	5
	line	118
	colm	53
	synt	any
	mod
	int	1
	line	118
	colm	58
	synt	any
	numeq
	pnull
	pnull
	var	11
	int	5
	line	118
	colm	80
	synt	any
	mod
	int	1
	line	118
	colm	85
	synt	any
	numeq
	line	118
	colm	36
	synt	any
	invoke	2
	unmark
	var	20
	var	6
	var	1
	line	119
	colm	26
	synt	any
	invoke	2
	line	118
	colm	19
	synt	endif
	line	110
	colm	22
	synt	any
	escan
	line	109
	colm	13
	synt	endif
lab L12
	line	68
	colm	10
	synt	endifelse
	unmark
lab L10
	pnull
	var	1
	dup
	int	0
	line	124
	colm	18
	synt	any
	plus
	asgn
lab L8
	unmark
	goto	L7
lab L9
	line	67
	colm	7
	synt	endwhile
	unmark
lab L6
	mark	L43
	mark	L44
	var	5
	line	126
	colm	7
	synt	any
	pret
lab L44
	synt	any
	pfail
	unmark
lab L43
	pnull
	line	127
	colm	1
	synt	any
	pfail
	end
proc ulsp__FoldingRangeHandler
	local	0,001000,filehandler
	local	1,000020,self
	local	2,000020,clone
	local	3,000000,ulsp__FoldingRangeHandler__oprec
	local	4,000000,ulsp__FoldingRangeHandlerinitialize
	local	5,000000,ulsp__FoldingRangeHandler__state
	declend
	filen	__faux.icn
	line	5
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	line	8
	colm	3
	synt	if
	mark0
	pnull
	var	3
	line	8
	colm	6
	synt	any
	null
	unmark
	var	4
	line	8
	colm	80
	synt	any
	invoke	0
	line	8
	colm	3
	synt	endif
	unmark
lab L2
	einit	L1
lab L3
	mark	L4
	pnull
	var	1
	var	5
	line	10
	colm	44
	synt	any
	keywd	null
	var	3
	var	0
	line	10
	colm	43
	synt	any
	invoke	3
	line	10
	colm	8
	synt	any
	asgn
	unmark
lab L4
	mark	L5
	pnull
	pnull
	var	1
	line	11
	colm	7
	synt	any
	field	__s
	var	1
	line	11
	colm	12
	synt	any
	asgn
	unmark
lab L5
	mark	L6
	mark	L7
	var	1
	line	12
	colm	3
	synt	any
	pret
lab L7
	synt	any
	pfail
	unmark
lab L6
	pnull
	line	13
	colm	1
	synt	any
	pfail
	end
proc ulsp__FoldingRangeHandlerinitialize
	local	0,000000,ulsp__FoldingRangeHandler__oprec
	local	1,000000,ulsp__FoldingRangeHandler__methods
	local	2,000000,ulsp__FoldingRangeHandler_setVariables
	local	3,000000,ulsp__FoldingRangeHandler_getResult
	local	4,000000,ulsp__FoldingRangeHandler_findFoldingRanges
	declend
	line	15
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	pnull
	var	0
	var	1
	var	2
	var	3
	var	4
	line	16
	colm	81
	synt	any
	invoke	3
	line	16
	colm	44
	synt	any
	asgn
	unmark
lab L2
	einit	L1
lab L3
	line	17
	colm	1
	synt	any
	pfail
	end
