version	U12.1.00
uid	quotedprintablehandler.u1-1786033038-0
record	mail__QuotedPrintableHandler__state,5
	0,__s
	1,__m
	2,res
	3,ll
	4,reason
record	mail__QuotedPrintableHandler__methods,10
	0,can_handle
	1,encode_data
	2,escape
	3,nl
	4,put
	5,decode_data
	6,error
	7,get_reason
	8,mail__EncodingHandler
	9,util__Error
impl	local
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/encodinghandler.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/error.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/error.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/format.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/stringbuff.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/cltable.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/comparator.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/md5.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/notification.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/listener.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/connectable.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/setfields.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/timezone.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/time.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/mapbytes.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/money.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/pushback.u
link	/usr/obj/ports/unicon-13.3beta1/unicon-0b8f99c2affe981f87639fc2577d2a68d05739ba/uni/lib/qsort.u
global	13
	0,000005,mail__QuotedPrintableHandler_can_handle,2
	1,000005,mail__QuotedPrintableHandler_encode_data,3
	2,000005,mail__QuotedPrintableHandler_escape,2
	3,000005,mail__QuotedPrintableHandler_nl,1
	4,000005,mail__QuotedPrintableHandler_put,2
	5,000005,mail__QuotedPrintableHandler_decode_data,3
	6,000011,mail__QuotedPrintableHandler__state,5
	7,000011,mail__QuotedPrintableHandler__methods,10
	8,000001,mail__QuotedPrintableHandler__oprec,0
	9,000001,mail__EncodingHandler__oprec,0
	10,000001,util__Error__oprec,0
	11,000005,mail__QuotedPrintableHandler,3
	12,000005,mail__QuotedPrintableHandlerinitialize,0

proc mail__QuotedPrintableHandler_can_handle
	local	0,001000,self
	local	1,001000,enc
	local	2,000000,map
	con	0,010000,16,161,165,157,164,145,144,055,160,162,151,156,164,141,142,154,145
	declend
	filen	quotedprintablehandler.icn
	line	13
	colm	11
	synt	any
	mark	L1
	mark	L2
	pnull
	var	2
	var	1
	line	14
	colm	19
	synt	any
	invoke	1
	str	0
	line	14
	colm	25
	synt	any
	lexeq
	line	14
	colm	7
	synt	any
	pret
lab L2
	synt	any
	pfail
	unmark
lab L1
	pnull
	line	15
	colm	1
	synt	any
	pfail
	end
proc mail__QuotedPrintableHandler_encode_data
	local	0,001000,self
	local	1,001000,m
	local	2,001000,data
	local	3,000020,s
	local	4,000040,quotable_chars
	local	5,000000,cset
	local	6,000000,pos
	local	7,000000,tab
	local	8,000000,many
	local	9,000000,any
	local	10,000000,put
	local	11,000000,move
	con	0,002000,2,33
	con	1,002000,2,62
	con	2,002000,2,63
	con	3,002000,3,128
	con	4,010000,0
	con	5,002000,1,0
	con	6,020000,2,040,011
	con	7,002000,1,1
	con	8,010000,2,015,012
	declend
	line	17
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	pnull
	var	4
	var	5
	pnull
	pnull
	line	21
	colm	35
	synt	any
	keywd	ascii
	int	0
	int	1
	line	21
	colm	44
	synt	any
	synt	any
	sect
	pnull
	line	21
	colm	52
	synt	any
	keywd	ascii
	int	2
	int	3
	line	21
	colm	61
	synt	any
	synt	any
	sect
	line	21
	colm	49
	synt	any
	cat
	line	21
	colm	34
	synt	any
	invoke	1
	line	21
	colm	25
	synt	any
	asgn
	unmark
lab L2
	einit	L1
lab L3
	mark	L4
	pnull
	pnull
	var	0
	line	24
	colm	11
	synt	any
	field	res
	str	4
	line	24
	colm	15
	synt	any
	asgn
	unmark
lab L4
	mark	L5
	pnull
	pnull
	var	0
	line	25
	colm	11
	synt	any
	field	ll
	int	5
	line	25
	colm	14
	synt	any
	asgn
	unmark
lab L5
	mark	L6
	var	2
	line	27
	colm	12
	synt	any
	bscan
lab L7
	line	28
	colm	10
	synt	while
	mark0
	mark	L10
	var	6
	int	5
	line	28
	colm	25
	synt	any
	invoke	1
	unmark
	efail
lab L10
	pnull
	unmark
	mark	L7
	line	29
	colm	13
	synt	ifelse
	mark	L11
	pnull
	var	3
	var	7
	var	8
	var	4
	line	29
	colm	33
	synt	any
	invoke	1
	line	29
	colm	26
	synt	any
	invoke	1
	line	29
	colm	18
	synt	any
	asgn
	unmark
	line	30
	colm	16
	synt	ifelse
	mark	L13
	var	6
	int	5
	line	30
	colm	24
	synt	any
	invoke	1
	pop
	var	9
	cset	6
	pnull
	var	3
	pnull
	int	7
	line	30
	colm	45
	synt	any
	neg
	line	30
	colm	44
	synt	any
	subsc
	line	30
	colm	35
	synt	any
	invoke	2
	unmark
	mark	L15
	var	10
	pnull
	var	3
	int	7
	pnull
	int	7
	line	31
	colm	29
	synt	any
	neg
	line	31
	colm	28
	synt	any
	synt	any
	sect
	line	31
	colm	24
	synt	any
	invoke	1
	unmark
lab L15
	pnull
	var	0
	line	32
	colm	23
	synt	any
	field	escape
	pnull
	var	3
	pnull
	int	7
	line	32
	colm	33
	synt	any
	neg
	line	32
	colm	32
	synt	any
	subsc
	line	32
	colm	30
	synt	any
	invoke	1
	goto	L14
lab L13
	var	10
	var	3
	line	34
	colm	24
	synt	any
	invoke	1
lab L14
	line	30
	colm	16
	synt	endifelse
	goto	L12
lab L11
	line	36
	colm	20
	synt	ifelse
	mark	L16
	pnull
	str	8
	line	36
	colm	23
	synt	any
	tabmat
	unmark
	pnull
	var	0
	line	37
	colm	20
	synt	any
	field	nl
	line	37
	colm	23
	synt	any
	invoke	0
	goto	L17
lab L16
	pnull
	var	0
	line	39
	colm	20
	synt	any
	field	escape
	var	11
	int	7
	line	39
	colm	32
	synt	any
	invoke	1
	line	39
	colm	27
	synt	any
	invoke	1
lab L17
	line	36
	colm	20
	synt	endifelse
lab L12
	line	29
	colm	13
	synt	endifelse
lab L8
	unmark
	goto	L7
lab L9
	line	28
	colm	10
	synt	endwhile
	line	27
	colm	12
	synt	any
	escan
	unmark
lab L6
	mark	L18
	mark	L19
	pnull
	var	0
	line	44
	colm	18
	synt	any
	field	res
	line	44
	colm	7
	synt	any
	pret
lab L19
	synt	any
	pfail
	unmark
lab L18
	pnull
	line	45
	colm	1
	synt	any
	pfail
	end
proc mail__QuotedPrintableHandler_escape
	local	0,001000,self
	local	1,001000,ch
	local	2,000020,t
	local	3,000000,util__format_int_to_string
	local	4,000000,ord
	con	0,010000,1,075
	con	1,002000,2,16
	con	2,002000,1,2
	con	3,002000,2,72
	con	4,002000,1,3
	declend
	line	48
	colm	11
	synt	any
	mark	L1
	pnull
	var	2
	pnull
	str	0
	var	3
	var	4
	var	1
	line	50
	colm	49
	synt	any
	invoke	1
	int	1
	int	2
	line	50
	colm	45
	synt	any
	invoke	3
	line	50
	colm	16
	synt	any
	cat
	line	50
	colm	9
	synt	any
	asgn
	unmark
lab L1
	mark	L2
	line	51
	colm	7
	synt	if
	mark0
	pnull
	pnull
	var	0
	line	51
	colm	14
	synt	any
	field	ll
	int	3
	line	51
	colm	17
	synt	any
	numgt
	unmark
	mark	L3
	pnull
	pnull
	var	0
	line	52
	colm	14
	synt	any
	field	res
	dup
	str	0
	line	52
	colm	18
	synt	any
	cat
	asgn
	unmark
lab L3
	pnull
	var	0
	line	53
	colm	14
	synt	any
	field	nl
	line	53
	colm	17
	synt	any
	invoke	0
	line	51
	colm	7
	synt	endif
	unmark
lab L2
	mark	L4
	pnull
	pnull
	var	0
	line	55
	colm	11
	synt	any
	field	res
	dup
	var	2
	line	55
	colm	15
	synt	any
	cat
	asgn
	unmark
lab L4
	mark	L5
	pnull
	pnull
	var	0
	line	56
	colm	11
	synt	any
	field	ll
	dup
	int	4
	line	56
	colm	14
	synt	any
	plus
	asgn
	unmark
lab L5
	mark	L6
	mark	L7
	pnull
	line	57
	colm	7
	synt	any
	pret
lab L7
	synt	any
	pfail
	unmark
lab L6
	pnull
	line	58
	colm	1
	synt	any
	pfail
	end
proc mail__QuotedPrintableHandler_nl
	local	0,001000,self
	con	0,010000,2,015,012
	con	1,002000,1,0
	declend
	line	61
	colm	11
	synt	any
	mark	L1
	pnull
	pnull
	var	0
	line	62
	colm	11
	synt	any
	field	res
	dup
	str	0
	line	62
	colm	15
	synt	any
	cat
	asgn
	unmark
lab L1
	mark	L2
	pnull
	pnull
	var	0
	line	63
	colm	11
	synt	any
	field	ll
	int	1
	line	63
	colm	14
	synt	any
	asgn
	unmark
lab L2
	mark	L3
	mark	L4
	pnull
	line	64
	colm	7
	synt	any
	pret
lab L4
	synt	any
	pfail
	unmark
lab L3
	pnull
	line	65
	colm	1
	synt	any
	pfail
	end
proc mail__QuotedPrintableHandler_put
	local	0,001000,self
	local	1,001000,s
	local	2,000020,lim
	con	0,002000,2,75
	con	1,002000,1,1
	con	2,010000,1,075
	con	3,002000,1,0
	declend
	line	68
	colm	11
	synt	any
	mark	L1
lab L2
	line	70
	colm	7
	synt	repeat
	mark	L2
	mark	L5
	pnull
	var	2
	pnull
	int	0
	pnull
	var	0
	line	71
	colm	26
	synt	any
	field	ll
	line	71
	colm	20
	synt	any
	minus
	line	71
	colm	14
	synt	any
	asgn
	unmark
lab L5
	line	72
	colm	10
	synt	ifelse
	mark	L6
	pnull
	pnull
	var	1
	line	72
	colm	13
	synt	any
	size
	var	2
	line	72
	colm	16
	synt	any
	numgt
	unmark
	mark	L8
	pnull
	pnull
	var	0
	line	73
	colm	17
	synt	any
	field	res
	dup
	pnull
	pnull
	var	1
	int	1
	pnull
	var	2
	int	1
	line	73
	colm	32
	synt	any
	plus
	line	73
	colm	28
	synt	any
	synt	any
	sect
	str	2
	line	73
	colm	35
	synt	any
	cat
	line	73
	colm	21
	synt	any
	cat
	asgn
	unmark
lab L8
	mark	L9
	pnull
	var	0
	line	74
	colm	17
	synt	any
	field	nl
	line	74
	colm	20
	synt	any
	invoke	0
	unmark
lab L9
	pnull
	var	1
	pnull
	var	1
	pnull
	var	2
	int	1
	line	75
	colm	23
	synt	any
	plus
	int	3
	line	75
	colm	25
	synt	any
	synt	any
	sect
	line	75
	colm	15
	synt	any
	asgn
	goto	L7
lab L6
	mark	L10
	pnull
	pnull
	var	0
	line	77
	colm	17
	synt	any
	field	res
	dup
	var	1
	line	77
	colm	21
	synt	any
	cat
	asgn
	unmark
lab L10
	mark	L11
	pnull
	pnull
	var	0
	line	78
	colm	17
	synt	any
	field	ll
	dup
	pnull
	var	1
	line	78
	colm	23
	synt	any
	size
	line	78
	colm	20
	synt	any
	plus
	asgn
	unmark
lab L11
	mark	L12
	pnull
	line	79
	colm	13
	synt	any
	pret
lab L12
	synt	any
	pfail
lab L7
	line	72
	colm	10
	synt	endifelse
lab L3
	unmark
	goto	L2
lab L4
	line	70
	colm	7
	synt	endrepeat
	unmark
lab L1
	pnull
	line	82
	colm	1
	synt	any
	pfail
	end
proc mail__QuotedPrintableHandler_decode_data
	local	0,001000,self
	local	1,001000,m
	local	2,001000,data
	local	3,000020,res
	local	4,000000,tab
	local	5,000000,upto
	local	6,000000,pos
	local	7,000000,any
	local	8,000000,move
	local	9,000000,char
	local	10,000000,util__format_string_to_int
	con	0,010000,0
	con	1,020000,2,015,075
	con	2,002000,1,0
	con	3,020000,1,075
	con	4,002000,1,1
	con	5,010000,2,015,012
	con	6,002000,1,2
	con	7,010000,25,102,141,144,040,161,165,157,164,145,144,055,160,162,151,156,164,141,142,154,145,040,144,141,164,141
	declend
	line	84
	colm	11
	synt	any
	mark	L1
	pnull
	var	3
	str	0
	line	86
	colm	11
	synt	any
	asgn
	unmark
lab L1
	mark	L2
	var	2
	line	87
	colm	12
	synt	any
	bscan
lab L3
	line	87
	colm	14
	synt	repeat
	mark	L3
	mark	L6
	pnull
	var	3
	dup
	var	4
	mark	L7
	var	5
	cset	1
	line	88
	colm	31
	synt	any
	invoke	1
	line	88
	colm	39
	synt	any
	esusp
	goto	L8
lab L7
	int	2
lab L8
	line	88
	colm	24
	synt	any
	invoke	1
	line	88
	colm	14
	synt	any
	cat
	asgn
	unmark
lab L6
	mark	L9
	line	89
	colm	10
	synt	if
	mark0
	var	6
	int	2
	line	89
	colm	18
	synt	any
	invoke	1
	unmark
	unmark
	unmark
	pnull
	goto	L5
	line	89
	colm	10
	synt	endif
	unmark
lab L9
	line	91
	colm	10
	synt	ifelse
	mark	L10
	var	7
	cset	3
	line	91
	colm	18
	synt	any
	invoke	1
	unmark
	mark	L12
	var	8
	int	4
	line	92
	colm	19
	synt	any
	invoke	1
	unmark
lab L12
	line	94
	colm	13
	synt	if
	mark0
	mark	L13
	pnull
	str	5
	line	94
	colm	20
	synt	any
	tabmat
	unmark
	efail
lab L13
	pnull
	unmark
	pnull
	var	3
	dup
	mark	L14
	var	9
	var	10
	var	8
	int	6
	line	95
	colm	63
	synt	any
	invoke	1
	line	95
	colm	58
	synt	any
	invoke	1
	line	95
	colm	31
	synt	any
	invoke	1
	line	95
	colm	68
	synt	any
	esusp
	goto	L15
lab L14
	mark	L16
	pnull
	var	0
	line	95
	colm	80
	synt	any
	field	error
	str	7
	line	95
	colm	86
	synt	any
	invoke	1
	line	95
	colm	69
	synt	any
	pret
lab L16
	synt	any
	pfail
lab L15
	line	95
	colm	20
	synt	any
	cat
	asgn
	line	94
	colm	13
	synt	endif
	goto	L11
lab L10
	pnull
	var	3
	dup
	mark	L17
	pnull
	str	5
	line	98
	colm	22
	synt	any
	tabmat
	line	98
	colm	30
	synt	any
	esusp
	goto	L18
lab L17
	mark	L19
	pnull
	var	0
	line	98
	colm	43
	synt	any
	field	error
	str	7
	line	98
	colm	49
	synt	any
	invoke	1
	line	98
	colm	32
	synt	any
	pret
lab L19
	synt	any
	pfail
lab L18
	line	98
	colm	17
	synt	any
	cat
	asgn
lab L11
	line	91
	colm	10
	synt	endifelse
lab L4
	unmark
	goto	L3
lab L5
	line	87
	colm	14
	synt	endrepeat
	line	87
	colm	12
	synt	any
	escan
	unmark
lab L2
	mark	L20
	mark	L21
	var	3
	line	100
	colm	7
	synt	any
	pret
lab L21
	synt	any
	pfail
	unmark
lab L20
	pnull
	line	101
	colm	1
	synt	any
	pfail
	end
proc mail__QuotedPrintableHandler
	local	0,001000,res
	local	1,001000,ll
	local	2,001000,reason
	local	3,000020,self
	local	4,000020,clone
	local	5,000000,mail__QuotedPrintableHandler__oprec
	local	6,000000,mail__QuotedPrintableHandlerinitialize
	local	7,000000,mail__EncodingHandler__oprec
	local	8,000000,mail__EncodingHandlerinitialize
	local	9,000000,util__Error__oprec
	local	10,000000,util__Errorinitialize
	local	11,000000,mail__QuotedPrintableHandler__state
	declend
	filen	__faux.icn
	line	5
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	mark	L4
	line	8
	colm	3
	synt	if
	mark0
	pnull
	var	5
	line	8
	colm	6
	synt	any
	null
	unmark
	var	6
	line	8
	colm	86
	synt	any
	invoke	0
	line	8
	colm	3
	synt	endif
	unmark
lab L4
	mark	L5
	line	9
	colm	3
	synt	if
	mark0
	pnull
	var	7
	line	9
	colm	6
	synt	any
	null
	unmark
	var	8
	line	9
	colm	72
	synt	any
	invoke	0
	line	9
	colm	3
	synt	endif
	unmark
lab L5
	mark	L6
	pnull
	pnull
	var	5
	line	10
	colm	38
	synt	any
	field	mail__EncodingHandler
	var	7
	line	10
	colm	61
	synt	any
	asgn
	unmark
lab L6
	mark	L7
	line	11
	colm	3
	synt	if
	mark0
	pnull
	var	9
	line	11
	colm	6
	synt	any
	null
	unmark
	var	10
	line	11
	colm	52
	synt	any
	invoke	0
	line	11
	colm	3
	synt	endif
	unmark
lab L7
	pnull
	pnull
	var	5
	line	12
	colm	38
	synt	any
	field	util__Error
	var	9
	line	12
	colm	51
	synt	any
	asgn
	unmark
lab L2
	einit	L1
lab L3
	mark	L8
	pnull
	var	3
	var	11
	line	14
	colm	47
	synt	any
	keywd	null
	var	5
	var	0
	var	1
	var	2
	line	14
	colm	46
	synt	any
	invoke	5
	line	14
	colm	8
	synt	any
	asgn
	unmark
lab L8
	mark	L9
	pnull
	pnull
	var	3
	line	15
	colm	7
	synt	any
	field	__s
	var	3
	line	15
	colm	12
	synt	any
	asgn
	unmark
lab L9
	mark	L10
	mark	L11
	var	3
	line	16
	colm	3
	synt	any
	pret
lab L11
	synt	any
	pfail
	unmark
lab L10
	pnull
	line	17
	colm	1
	synt	any
	pfail
	end
proc mail__QuotedPrintableHandlerinitialize
	local	0,000000,mail__QuotedPrintableHandler__oprec
	local	1,000000,mail__QuotedPrintableHandler__methods
	local	2,000000,mail__QuotedPrintableHandler_can_handle
	local	3,000000,mail__QuotedPrintableHandler_encode_data
	local	4,000000,mail__QuotedPrintableHandler_escape
	local	5,000000,mail__QuotedPrintableHandler_nl
	local	6,000000,mail__QuotedPrintableHandler_put
	local	7,000000,mail__QuotedPrintableHandler_decode_data
	local	8,000000,util__Error_error
	local	9,000000,util__Error_get_reason
	declend
	line	19
	colm	11
	synt	any
lab L1
	init	L3
	mark	L2
	pnull
	var	0
	var	1
	var	2
	var	3
	var	4
	var	5
	var	6
	var	7
	var	8
	var	9
	line	20
	colm	87
	synt	any
	invoke	8
	line	20
	colm	47
	synt	any
	asgn
	unmark
lab L2
	einit	L1
lab L3
	line	21
	colm	1
	synt	any
	pfail
	end
