netfax prototype system

Fernando Marques Silva <marques@barra.nce.ufrj.br> Wed, 10 June 1992 14:21 UTC

Received: from nri.nri.reston.va.us by ietf.NRI.Reston.VA.US id aa02238; 10 Jun 92 10:21 EDT
Received: from nri.reston.va.us by NRI.Reston.VA.US id aa11782; 10 Jun 92 10:21 EDT
Received: from stubbs.ucop.edu by NRI.Reston.VA.US id aa11767; 10 Jun 92 10:20 EDT
Received: by stubbs.ucop.edu (5.57/1.34) id AA12155; Wed, 10 Jun 92 06:22:04 -0700
Received: from joa.nce.ufrj.br.ufrj.br by barra.nce.ufrj.br (4.1/UFRJ-1.0) id AA00440; Wed, 10 Jun 92 10:34:25 EST
Date: Wed, 10 Jun 1992 10:34:25 -0500
From: Fernando Marques Silva <marques@barra.nce.ufrj.br>
Message-Id: <9206101334.AA00440@barra.nce.ufrj.br>
To: mhn@stubbs.ucop.edu
Subject: netfax prototype system
Cc: netfax@stubbs.ucop.edu

Dear Mark

We at Rio de Janeiro, were developed a prototype of a E-mail-based system for
 interchange of fax messages. Our system is in accordance with the Netfax    standard, and now we want to make contact with others researchers that have
 similar systems. Our intend is to exchange information and messages for              certificate our systems.

Thanks

Fernando Marques
.

	From marques@joa.ufrj.br Thu Jun  4 13:02:56 1992
	Return-Path: <marques@joa.ufrj.br>
	Received: from recreio.nce.ufrj.br.ufrj.br by joa.ufrj.br.ufrj.br (4.1/SMI-4.1)
		id AA04194; Thu, 4 Jun 92 13:02:54 EST
	Received: by recreio.nce.ufrj.br.ufrj.br (4.1/SMI-4.1)
		id AA01411; Thu, 4 Jun 92 13:02:51 EST
	Date: WED, 22 Apr 92  10:17:01  -0300
	From: marques@joa.ufrj.br
	To: marques@joa.ufrj.br
	Message-Id: <00100043>
	Subject: teste                                             
	Content-Type: IMAGE/NETFAX ;Pagina =   1 ;Total =   1;De = fernando marques                                  ;Para = paulo aguiar                                      
	Content-Transfer-Encoding: BASE64 
	Status: RO

	LyoNCiAgINrExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTE
	xMTExMTExMTExMTExMTExMTExMTExMTExL8NCiAgILMgICAgICAgICAgICAgICAgICAgICAgICAg
	ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMNCiAgILMg
	IENYTFdJTi5IICAtICBDWEwgaXMgQ29weXJpZ2h0IChjKSAxOTg3LTE5ODkgYnkgTWlrZSBTbWVk
	bGV5LiAgICAgICAgICAgILMNCiAgILMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
	ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMNCiAgILMgIFRoaXMgaGVh
	ZGVyIGZpbGUgY29udGFpbnMgZnVuY3Rpb24gcHJvdG90eXBlcyBhbmQgZGVmaW5pdGlvbnMgZm9y
	ICAgICAgILMNCiAgILMgIHdpbmRvd2luZyBmdW5jdGlvbnMuICAgICAgICAgICAgICAgICAgICAg
	ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMNCiAgILMgICAgICAgICAgICAgICAgICAg
	ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMN
	CiAgIMDExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTE
	xMTExMTExMTExMTExMTExMTExMTExNkNCiovDQoNCiNpZiBkZWZpbmVkKF9fVFVSQk9DX18pICAg
	ICAgICAgICAgICAgICAgICAgLyogVHVyYm8gQyAqLw0KICAgICNpZiBfX1NURENfXw0KICAgICAg
	ICAjZGVmaW5lIF9DZGVjbA0KICAgICNlbHNlDQogICAgICAgICNkZWZpbmUgX0NkZWNsICBjZGVj
	bA0KICAgICNlbmRpZg0KICAgICNkZWZpbmUgX05lYXINCiNlbGlmIGRlZmluZWQoX19aVENfXykg
	ICAgICAgICAgICAgICAgICAgICAgLyogWm9ydGVjaCBDKysgKi8NCiAgICAjZGVmaW5lIF9DZGVj
	bA0KICAgICNkZWZpbmUgX05lYXINCiNlbGlmIGRlZmluZWQoTV9JODYpICYmICFkZWZpbmVkKF9f
	WlRDX18pICAgLyogTWljcm9zb2Z0IEMvUXVpY2tDICovDQogICAgI2lmICFkZWZpbmVkKE5PX0VY
	VF9LRVlTKQ0KICAgICAgICAjZGVmaW5lIF9DZGVjbCAgY2RlY2wNCiAgICAgICAgI2RlZmluZSBf
	TmVhciAgIG5lYXINCiAgICAjZWxzZQ0KICAgICAgICAjZGVmaW5lIF9DZGVjbA0KICAgICAgICAj
	ZGVmaW5lIF9OZWFyDQogICAgI2VuZGlmDQojZW5kaWYNCg0KDQovKi0tLS0tLS0tLS0tLS0tLS0t
	LS0tLS0tLS0tLS0tLVsgV0lORE9XIHR5cGUgXS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
	LSovDQoNCnR5cGVkZWYgaW50ICAgICBXSU5ET1c7DQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0t
	LS0tLS0tWyBmdW5jdGlvbiBwcm90b3R5cGVzIF0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8N
	Cg0KaW50ICAgICAgX0NkZWNsIHdhY3RpdihXSU5ET1cgd2hhbmRsZSk7DQppbnQgICAgICBfQ2Rl
	Y2wgd2JvcmRlcihpbnQgYnR5cGUpOw0KaW50ICAgICAgX0NkZWNsIHdib3goaW50IHdzcm93LGlu
	dCB3c2NvbCxpbnQgd2Vyb3csaW50IHdlY29sLGludCBidHlwZQ0KICAgICAgICAgICAgICAgICxp
	bnQgYXR0cik7DQppbnQgICAgICBfQ2RlY2wgd2JwcmludGMoaW50IGJvcmQsaW50IG9mZnMsaW50
	IGF0dHIsaW50IGNoKTsNCmludCAgICAgIF9DZGVjbCB3Y2NsZWFyKGludCBhdHRyKTsNCmludCAg
	ICAgIF9DZGVjbCB3Y2VudGVycyhpbnQgd3JvdyxpbnQgYXR0cixjaGFyICpzdHIpOw0KaW50ICAg
	ICAgX0NkZWNsIHdjaGdhdHRyKGludCBiYXR0cixpbnQgd2F0dHIpOw0KaW50ICAgICAgX0NkZWNs
	IHdjaGtib3goaW50IHdzcm93LGludCB3c2NvbCxpbnQgd2Vyb3csaW50IHdlY29sKTsNCmludCAg
	ICAgIF9DZGVjbCB3Y2hrY29sKGludCB3Y29sKTsNCmludCAgICAgIF9DZGVjbCB3Y2hrY29vcmQo
	aW50IHdyb3csaW50IHdjb2wpOw0KaW50ICAgICAgX0NkZWNsIHdjaGtyb3coaW50IHdyb3cpOw0K
	aW50ICAgICAgX0NkZWNsIHdjbG9zZSh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3Y2xvc2VhbGwo
	dm9pZCk7DQppbnQgICAgICBfQ2RlY2wgd2NscmVvbCh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3
	Y2xyZW9zKHZvaWQpOw0KV0lORE9XICAgX0NkZWNsIHdjb3B5KGludCBuc3JvdyxpbnQgbnNjb2wp
	Ow0KaW50ICAgICAgX0NkZWNsIHdkZWxsaW5lKGludCB3cm93LGludCBkaXJlYyk7DQppbnQgICAg
	ICBfQ2RlY2wgd2RyYWcoaW50IGRpcmVjdGlvbik7DQppbnQgICAgICBfQ2RlY2wgd2R1bXAodm9p
	ZCk7DQppbnQgICAgICBfQ2RlY2wgd2R1cGMoaW50IGNoLGludCBjb3VudCk7DQppbnQgICAgICBf
	Q2RlY2wgd2R1cHMoY2hhciAqc3RyLGludCBjb3VudCk7DQpjaGFyICAgICpfQ2RlY2wgd2Vycm1z
	Zyh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3ZmlsbChpbnQgd3Nyb3csaW50IHdzY29sLGludCB3
	ZXJvdyxpbnQgd2Vjb2wsaW50IGNoLGludCBhdHRyKTsNCnN0cnVjdCAgIF93cmVjX3QgKl9DZGVj
	bCB3ZmluZHJlYyhXSU5ET1cgd2hhbmRsZSk7DQppbnQgICAgICBfQ2RlY2wgd2dldGModm9pZCk7
	DQppbnQgICAgICBfQ2RlY2wgd2dldGNoZihjaGFyICp2YWxpZCxpbnQgZGVmY2hhcik7DQppbnQg
	ICAgICBfQ2RlY2wgd2dldG5zKGNoYXIgKnN0cixpbnQgbWF4Y2hhcnMpOw0KaW50ICAgICAgX0Nk
	ZWNsIHdnZXRzKGNoYXIgKnN0cik7DQppbnQgICAgICBfQ2RlY2wgd2dldHluKGludCBjZGVmYXVs
	dCk7DQppbnQgICAgICBfQ2RlY2wgd2dvdG94eShpbnQgd3JvdyxpbnQgd2NvbCk7DQpXSU5ET1cg
	ICBfQ2RlY2wgd2hhbmRsZSh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aGVscGNhdChpbnQgY2F0
	KTsNCmludCAgICAgIF9DZGVjbCB3aGVscGNscih2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aGVs
	cGRlZihjaGFyICpmaWxlLHVuc2lnbmVkIGtleSxpbnQgd2luYXR0cixpbnQgdGV4dGF0dHIsDQog
	ICAgICAgICAgICAgICAgICAgICAgICAgaW50IHNlbGF0dHIsaW50IGJhcmF0dHIsdm9pZCAoX0Nk
	ZWNsICpvcGVuKSh2b2lkKSk7DQppbnQgICAgICBfQ2RlY2wgd2hlbHBvcCh2b2lkKTsNCmludCAg
	ICAgIF9DZGVjbCB3aGVscG9wYyh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aGVscHBjYXQoaW50
	IGNhdCk7DQppbnQgICAgICBfQ2RlY2wgd2hlbHB1c2godm9pZCk7DQppbnQgICAgICBfQ2RlY2wg
	d2hlbHB1c2hjKGludCBjYXQpOw0KaW50ICAgICAgX0NkZWNsIHdoZWxwd2luKGludCBzcm93LGlu
	dCBzY29sLGludCBlcm93LGludCBlY29sLGludCBidHlwZSwNCiAgICAgICAgICAgICAgICAgICAg
	ICAgICBpbnQgdGl0bGUpOw0KaW50ICAgICAgX0NkZWNsIHdoaWRlKHZvaWQpOw0KaW50ICAgICAg
	X0NkZWNsIHdobGluZShpbnQgd3Nyb3csaW50IHdzY29sLGludCBjb3VudCxpbnQgYnR5cGUsaW50
	IGF0dHIpOw0KV0lORE9XICAgX0NkZWNsIHdpbmRvd2F0KGludCByb3csaW50IGNvbCk7DQppbnQg
	ICAgICBfQ2RlY2wgd2lucGJlZyhpbnQgZmllbGRhdHRyLGludCB0ZXh0YXR0cik7DQppbnQgICAg
	ICBfQ2RlY2wgd2lucGRlZihpbnQgd3JvdyxpbnQgd2NvbCxjaGFyICpzdHIsY2hhciAqZm9ybWF0
	LGludCBmY29udiwNCiAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb2RlLGludCAoX0NkZWNs
	ICp2YWxpZGF0ZSkgKGNoYXIgKiksaW50IGhlbHApOw0KaW50ICAgICAgX0NkZWNsIHdpbnBmYmEo
	dm9pZCAoX0NkZWNsICpiZWZvcmUpKHZvaWQpLA0KICAgICAgICAgICAgICAgICAgICAgICAgdm9p
	ZCAoX0NkZWNsICphZnRlcikodm9pZCkpOw0Kc3RydWN0IF9maWVsZF90ICpfQ2RlY2wgd2lucGZm
	aW5kKGludCB3cm93LGludCB3Y29sKTsNCmludCAgICAgIF9DZGVjbCB3aW5wa2V5KHVuc2lnbmVk
	IChfQ2RlY2wgKmdldGtleSkoaW50ICopLHVuc2lnbmVkICp0ZXJta2V5KTsNCmludCAgICAgIF9D
	ZGVjbCB3aW5wcmVhZCh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aW5wdXRzZihjaGFyICpzdHIs
	Y2hhciAqZm10KTsNCmludCAgICAgIF9DZGVjbCB3aW5zbGluZShpbnQgd3JvdyxpbnQgZGlyZWMp
	Ow0KaW50ICAgICAgX0NkZWNsIHdtZW51YmVnKGludCBzcm93LGludCBzY29sLGludCBlcm93LGlu
	dCBlY29sLGludCBidHlwZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYmF0dHIsaW50
	IHdhdHRyLHZvaWQgKF9DZGVjbCAqb3Blbikodm9pZCkpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51
	YmVnYyh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3bWVudWVuZChpbnQgdGFnaW5pdCxpbnQgbWVu
	dXR5cGUsaW50IGJhcndpZHRoLGludCB0ZXh0cG9zLA0KICAgICAgICAgICAgICAgICAgICAgICAg
	IGludCB0ZXh0YXR0cixpbnQgc2NoYXJhdHRyLGludCBub3NlbGF0dHIsaW50IGJhcmF0dHIpOw0K
	aW50ICAgICAgX0NkZWNsIHdtZW51Z2V0KHZvaWQpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51aWJh
	KHZvaWQgKF9DZGVjbCAqYmVmb3JlKSh2b2lkKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICB2
	b2lkIChfQ2RlY2wgKmFmdGVyKSh2b2lkKSk7DQppbnQgICAgICBfQ2RlY2wgd21lbnVpZHNhYihp
	bnQgdGFnaWQpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51aWVuYWIoaW50IHRhZ2lkKTsNCnN0cnVj
	dCAgIF9pdGVtX3QgKl9DZGVjbCB3bWVudWlmaW5kKGludCB0YWdpZCk7DQppbnQgICAgICBfQ2Rl
	Y2wgd21lbnVpbmV4dChpbnQgdGFnaWQpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51aXRlbShpbnQg
	d3JvdyxpbnQgd2NvbCxjaGFyICpzdHIsaW50IHNjaGFyLGludCB0YWdpZCwNCiAgICAgICAgICAg
	ICAgICAgICAgICAgICAgaW50IGZtYXNrLHZvaWQgKF9DZGVjbCAqc2VsZWN0KSh2b2lkKSwNCiAg
	ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaG90a2V5LGludCBoZWxwKTsNCmludCAg
	ICAgIF9DZGVjbCB3bWVudWl0eHQoaW50IHdyb3csaW50IHdjb2wsaW50IGF0dHIsY2hhciAqc3Ry
	KTsNCmludCAgICAgIF9DZGVjbCB3bWVzc2FnZShjaGFyICpzdHIsaW50IGJvcmRlcixpbnQgbGVm
	dG9mcyxpbnQgYXR0cik7DQppbnQgICAgICBfQ2RlY2wgd21vdmUoaW50IG5zcm93LGludCBuc2Nv
	bCk7DQpXSU5ET1cgICBfQ2RlY2wgd29wZW4oaW50IHNyb3csaW50IHNjb2wsaW50IGVyb3csaW50
	IGVjb2wsaW50IGJ0eXBlLGludCBiYXR0ciwNCiAgICAgICAgICAgICAgICAgICAgICBpbnQgd2F0
	dHIpOw0KaW50ICAgICAgX0NkZWNsIHdwZXJyb3IoY2hhciAqbWVzc2FnZSk7DQppbnQgICAgICBf
	Q2RlY2wgd3Bnb3RveHkoaW50IHdyb3csaW50IHdjb2wpOw0KY2hhciAgICAqX0NkZWNsIHdwaWNr
	ZmlsZShpbnQgc3JvdyxpbnQgc2NvbCxpbnQgZXJvdyxpbnQgZWNvbCxpbnQgYnR5cGUsDQogICAg
	ICAgICAgICAgICAgICAgICAgICAgIGludCBib3JkYXR0cixpbnQgd2luYXR0cixpbnQgYmFyYXR0
	cixpbnQgdGl0bGUsDQogICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZpbGVzcGVjLHZv
	aWQgKF9DZGVjbCAqb3Blbikodm9pZCkpOw0KaW50ICAgICAgX0NkZWNsIHdwaWNrc3RyKGludCBz
	cm93LGludCBzY29sLGludCBlcm93LGludCBlY29sLGludCBidHlwZSwNCiAgICAgICAgICAgICAg
	ICAgICAgICAgICBpbnQgYm9yZGF0dHIsaW50IHdpbmF0dHIsaW50IGJhcmF0dHIsY2hhciAqc3Ry
	YXJyW10sDQogICAgICAgICAgICAgICAgICAgICAgICAgaW50IGluaXRlbGVtLHZvaWQgKF9DZGVj
	bCAqb3Blbikodm9pZCkpOw0KaW50ICAgICAgX0NkZWNsIHdwcmludGMoaW50IHdyb3csaW50IHdj
	b2wsaW50IGF0dHIsaW50IGNoKTsNCmludCAgICAgIF9DZGVjbCB3cHJpbnRmKGNvbnN0IGNoYXIg
	KmZvcm1hdCwuLi4pOw0KaW50ICAgICAgX0NkZWNsIHdwcmludHMoaW50IHdyb3csaW50IHdjb2ws
	aW50IGF0dHIsY2hhciAqc3RyKTsNCmludCAgICAgIF9DZGVjbCB3cHJpbnRzZihpbnQgd3Jvdyxp
	bnQgd2NvbCxpbnQgYXR0cixjaGFyICpmb3JtYXQsY2hhciAqc3RyKTsNCmludCAgICAgIF9DZGVj
	bCB3cHV0YyhpbnQgY2gpOw0KaW50ICAgICAgX0NkZWNsIHdwdXRucyhjaGFyICpzdHIsaW50IHdp
	ZHRoKTsNCmludCAgICAgIF9DZGVjbCB3cHV0cyhjaGFyICpzdHIpOw0KaW50ICAgICAgX0NkZWNs
	IHdwdXRzdyhjaGFyICpzdHIpOw0KaW50ICAgICAgX0NkZWNsIHdyZWFkY3VyKGludCAqd3Jvdyxp
	bnQgKndjb2wpOw0Kdm9pZCAgICAgX0NkZWNsIHdyZXN0b3JlKGludCAqd2J1Zik7DQppbnQgICAg
	ICBfQ2RlY2wgd3JqdXN0cyhpbnQgd3JvdyxpbnQgd2pjb2wsaW50IGF0dHIsY2hhciAqc3RyKTsN
	CmludCAgICAgKl9DZGVjbCB3c2F2ZShpbnQgc3JvdyxpbnQgc2NvbCxpbnQgZXJvdyxpbnQgZWNv
	bCk7DQppbnQgICAgICBfQ2RlY2wgd3NjYW5mKGNvbnN0IGNoYXIgKmZvcm1hdCwuLi4pOw0KaW50
	ICAgICAgX0NkZWNsIHdzY3JvbGwoaW50IGNvdW50LGludCBkaXJlYyk7DQppbnQgICAgICBfQ2Rl
	Y2wgd3Njcm9sbGJveChpbnQgd3Nyb3csaW50IHdzY29sLGludCB3ZXJvdyxpbnQgd2Vjb2wsaW50
	IGNvdW50LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGRpcmVjdGlvbik7DQppbnQg
	ICAgICBfQ2RlY2wgd3NlbHN0cihpbnQgd3JvdyxpbnQgd2NvbCxpbnQgYXR0cixjaGFyICpzdHJh
	cnJbXSwNCiAgICAgICAgICAgICAgICAgICAgICAgIGludCBpbml0ZWxlbSk7DQppbnQgICAgICBf
	Q2RlY2wgd3NoYWRvZmYodm9pZCk7DQppbnQgICAgICBfQ2RlY2wgd3NoYWRvdyhpbnQgYXR0cik7
	DQppbnQgICAgICBfQ2RlY2wgd3NpemUoaW50IG5lcm93LGludCBuZWNvbCk7DQppbnQgICAgICBf
	Q2RlY2wgd3NsaWRlKGludCBuc3JvdyxpbnQgbnNjb2wpOw0KaW50ICAgICAgX0NkZWNsIHd0ZXh0
	YXR0cihpbnQgYXR0cik7DQppbnQgICAgICBfQ2RlY2wgd3RpdGxlKGNoYXIgKnN0cixpbnQgdHBv
	cyxpbnQgdGF0dHIpOw0KaW50ICAgICAgX0NkZWNsIHd1bmhpZGUoV0lORE9XIHdoYW5kbGUpOw0K
	aW50ICAgICAgX0NkZWNsIHd1bmxpbmsoV0lORE9XIHcpOw0KaW50ICAgICAgX0NkZWNsIHd2bGlu
	ZShpbnQgd3Nyb3csaW50IHdzY29sLGludCBjb3VudCxpbnQgYnR5cGUsaW50IGF0dHIpOw0KaW50
	ICAgICAgX0NkZWNsIHd3cHJpbnRzKFdJTkRPVyB3aGFuZGxlLGludCB3cm93LGludCB3Y29sLGlu
	dCBhdHRyLGNoYXIgKnN0cik7DQoNCi8qLS0tLS0tLS0tLS0tLVsgZXJyb3IgY29kZXMgcmV0dXJu
	ZWQgZnJvbSB3aW5kb3dpbmcgZnVuY3Rpb25zIF0tLS0tLS0tLS0tLS0tKi8NCg0KI2RlZmluZSBX
	X05PRVJST1IgICAwICAgICAgIC8qIG5vIGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAq
	Lw0KI2RlZmluZSBXX0VTQ1BSRVNTICAxICAgICAgIC8qIEVzY2FwZSBrZXkgd2FzIHByZXNzZWQg
	ICAgICAgICAgICAqLw0KI2RlZmluZSBXX0FMTE9DRVJSICAyICAgICAgIC8qIG1lbW9yeSBhbGxv
	Y2F0aW9uIGVycm9yICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PVEZPVU5EICAzICAgICAgIC8q
	IHJlY29yZCBub3QgZm91bmQgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PQUNUSVZF
	ICA0ICAgICAgIC8qIG5vIGFjdGl2ZSB3aW5kb3cgICAgICAgICAgICAgICAgICAqLw0KI2RlZmlu
	ZSBXX0lOVkNPT1JEICA1ICAgICAgIC8qIGludmFsaWQgY29vcmRpbmF0ZXMgICAgICAgICAgICAg
	ICAqLw0KI2RlZmluZSBXX0lOVkZPUk1UICA2ICAgICAgIC8qIGludmFsaWQgZm9ybWF0IHN0cmlu
	ZyAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PSU5QREVGICA3ICAgICAgIC8qIG5vIGlucHV0
	IGZpZWxkcyBkZWZpbmVkICAgICAgICAgICAqLw0KI2RlZmluZSBXX1NUUkxPTkcgICA4ICAgICAg
	IC8qIHN0cmluZyB0b28gbG9uZyBmb3Igd2luZG93ICAgICAgICAqLw0KI2RlZmluZSBXX0lOVkJU
	WVBFICA5ICAgICAgIC8qIGludmFsaWQgYm94IHR5cGUgICAgICAgICAgICAgICAgICAqLw0KI2Rl
	ZmluZSBXX05PQk9SREVSICAxMCAgICAgIC8qIG5vIHdpbmRvdyBib3JkZXIgICAgICAgICAgICAg
	ICAgICAqLw0KI2RlZmluZSBXX05PSElEREVOICAxMSAgICAgIC8qIG5vIGhpZGRlbiB3aW5kb3dz
	ICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PVEhJREQgICAxMiAgICAgIC8qIHdpbmRv
	dyBpcyBub3QgaGlkZGVuICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PU0VMRUNUICAxMyAg
	ICAgIC8qIG5vIHNlbGVjdGFibGUgbWVudSBpdGVtcyAgICAgICAgICAqLw0KI2RlZmluZSBXX05P
	SVRNREVGICAxNCAgICAgIC8qIG5vIG1lbnUgaXRlbXMgZGVmaW5lZCAgICAgICAgICAgICAqLw0K
	I2RlZmluZSBXX05PTU5VRU5EICAxNSAgICAgIC8qIG5vIGVuZCBvZiBtZW51IHNwZWNpZmllZCAg
	ICAgICAgICAqLw0KI2RlZmluZSBXX05PTU5VREVGICAxNiAgICAgIC8qIG5vIG1lbnUgZGVmaW5l
	ZCAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PTU5VQkVHICAxNyAgICAgIC8qIG5v
	IGJlZ2luIG9mIG1lbnUgc3BlY2lmaWVkICAgICAgICAqLw0KI2RlZmluZSBXX05PRlJNREVGICAx
	OCAgICAgIC8qIG5vIGZvcm0gZGVmaW5lZCAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBX
	X05PRlJNQkVHICAxOSAgICAgIC8qIG5vIGJlZ2luIG9mIGZvcm0gc3BlY2lmaWVkICAgICAgICAq
	Lw0KI2RlZmluZSBXX05PSExQREVGICAyMCAgICAgIC8qIG5vIGhlbHAgcmVjb3JkIGRlZmluZWQg
	ICAgICAgICAgICAqLw0KI2RlZmluZSBXX0hMUFNUS09WICAyMSAgICAgIC8qIGhlbHAgc3RhY2sg
	b3ZlcmZsb3cgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX0hMUFNUS1VOICAyMiAgICAgIC8q
	IGhlbHAgc3RhY2sgdW5kZXJmbG93ICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX0RPU0VSUk9S
	ICAyMyAgICAgIC8qIERPUyBlcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmlu
	ZSBXX05PTUFUQ0ggICAyNCAgICAgIC8qIG5vIGZpbGVzIG1hdGNoZWQgaW5wdXQgZmlsZXNwZWMg
	ICAqLw0KI2RlZmluZSBXX0lOVlRBR0lEICAyNSAgICAgIC8qIGludmFsaWQgdGFnIGlkZW50aWZp
	ZXIgICAgICAgICAgICAqLw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
	ICAgIA0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVsgd2luZG93IGJvcmRlciBpZGVudGlmaWVy
	cyBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVFBfQk9SRCAgMCAgICAgIC8q
	IHRvcCBib3JkZXIgICAgKi8NCiNkZWZpbmUgQlRfQk9SRCAgMSAgICAgIC8qIGJvdHRvbSBib3Jk
	ZXIgKi8NCiNkZWZpbmUgTFRfQk9SRCAgMiAgICAgIC8qIGxlZnQgYm9yZGVyICAgKi8NCiNkZWZp
	bmUgUlRfQk9SRCAgMyAgICAgIC8qIHJpZ2h0IGJvcmRlciAgKi8NCg0KLyotLS0tLS0tLS0tLS0t
	LS0tLS0tLS0tLS0tLVsgZGlyZWN0aW9uIGNvZGVzIF0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
	LS0tLS0qLw0KDQojZGVmaW5lIERfRE9XTiAgICAwDQojZGVmaW5lIERfVVAgICAgICAxDQojZGVm
	aW5lIERfTEVGVCAgICAyDQojZGVmaW5lIERfUklHSFQgICAzDQojZGVmaW5lIFNET1dOICAgICBE
	X0RPV04gICAgLyogc2Nyb2xsIGRvd24gKi8NCiNkZWZpbmUgU1VQICAgICAgIERfVVAgICAgICAv
	KiBzY3JvbGwgdXAgICAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1bIG1lbnUgaXRlbSBy
	ZWNvcmQgZGVmaW5pdGlvbiBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCnN0cnVjdCBfaXRl
	bV90IHsNCiAgICBzdHJ1Y3QgX2l0ZW1fdCAqcHJldjsgICAvKiBwb2ludGVyIHRvIHByZXZpb3Vz
	IHJlY29yZCAgICAgICovDQogICAgc3RydWN0IF9pdGVtX3QgKm5leHQ7ICAgLyogcG9pbnRlciB0
	byBuZXh0IHJlY29yZCAgICAgICAgICAqLw0KICAgIHZvaWQgKmNoaWxkOyAgICAgICAgICAgIC8q
	IHBvaW50ZXIgdG8gc3VibWVudSdzIHJlY29yZCAgICAgKi8NCiAgICBjaGFyICpzdHI7ICAgICAg
	ICAgICAgICAvKiBhZGRyZXNzIG9mIHNlbGVjdGlvbiBzdHJpbmcgICAgICovDQogICAgY2hhciAq
	ZGVzYzsgICAgICAgICAgICAgLyogdGV4dCBkZXNjcmlwdGlvbiBvZiBtZW51IG9wdGlvbiAqLw0K
	ICAgIHZvaWQgKCpzZWxlY3QpICh2b2lkKTsgIC8qIGFkZHJlc3Mgb2Ygc2VsZWN0aW9uIGZ1bmN0
	aW9uICAgKi8NCiAgICB2b2lkICgqYmVmb3JlKSAodm9pZCk7ICAvKiBhZGRyZXNzIG9mICJiZWZv
	cmUiIGZ1bmN0aW9uICAgICovDQogICAgdm9pZCAoKmFmdGVyKSAgKHZvaWQpOyAgLyogYWRkcmVz
	cyBvZiAiYWZ0ZXIiICBmdW5jdGlvbiAgICAqLw0KICAgIHVuc2lnbmVkIGhvdGtleTsgICAgICAg
	IC8qIGhvdCBrZXkgdG8gc2VsZWN0IGZ1bmN0aW9uICAgICAgKi8NCiAgICBpbnQgdGFnaWQ7ICAg
	ICAgICAgICAgICAvKiB0YWcgaWRlbnRpZmllciAgICAgICAgICAgICAgICAgICovDQogICAgaW50
	IGhlbHA7ICAgICAgICAgICAgICAgLyogaGVscCBjYXRlZ29yeSBudW1iZXIgICAgICAgICAgICAq
	Lw0KICAgIGludCB3cm93OyAgICAgICAgICAgICAgIC8qIHN0YXJ0IG9mIHRleHQgLSB3aW5kb3cg
	cm93ICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHdjb2w7ICAgICAvKiBzdGFydCBvZiB0ZXh0
	IC0gd2luZG93IGNvbHVtbiAgICovDQogICAgdW5zaWduZWQgY2hhciBzY2hhcjsgICAgLyogcXVp
	Y2sgc2VsZWN0aW9uIGNoYXJhY3RlciAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZm1hc2s7
	ICAgIC8qIHNwZWNpYWwgZmVhdHVyZSBtYXNrICAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBj
	aGFyIGR3cm93OyAgICAvKiBkZXNjcmlwdGlvbiB3aW5kb3cgcm93ICAgICAgICAgICovDQogICAg
	dW5zaWduZWQgY2hhciBkd2NvbDsgICAgLyogZGVzY3JpcHRpb24gd2luZG93IGNvbHVtbiAgICAg
	ICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZGF0dHI7ICAgIC8qIGRlc2NyaXB0aW9uIGF0dHJpYnV0
	ZSAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHJlZGlzcDsgICAvKiByZWRpc3BsYXkg
	ZmxhZyAgICAgICAgICAgICAgICAgICovDQp9Ow0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tWyB3
	aW5kb3cgbWVudSByZWNvcmQgZGVmaW5pdGlvbiBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoN
	CnN0cnVjdCBfbWVudV90IHsNCiAgICBzdHJ1Y3QgX21lbnVfdCAqcHJldjsgICAgICAgLyogcG9p
	bnRlciB0byBwcmV2IG1lbnUgc3RydWN0dXJlICAgKi8NCiAgICBzdHJ1Y3QgX21lbnVfdCAqbmV4
	dDsgICAgICAgLyogcG9pbnRlciB0byBuZXh0IG1lbnUgc3RydWN0dXJlICAgKi8NCiAgICBzdHJ1
	Y3QgX21lbnVfdCAqcGFyZW50OyAgICAgLyogcG9pbnRlciB0byBwYXJlbnQgbWVudSAgICAgICAg
	ICAgKi8NCiAgICBzdHJ1Y3QgX2l0ZW1fdCAqaXRlbTsgICAgICAgLyogcG9pbnRlciB0byBoZWFk
	IG1lbnUgaXRlbSAgICAgICAgKi8NCiAgICBzdHJ1Y3QgX2l0ZW1fdCAqY2l0ZW07ICAgICAgLyog
	cG9pbnRlciB0byBjdXJyZW50IG1lbnUgaXRlbSAgICAgKi8NCiAgICB2b2lkICgqb3BlbikgKHZv
	aWQpOyAgICAgICAgLyogYWRkcmVzcyBvZiBwb3N0LW9wZW5pbmcgZnVuY3Rpb24gKi8NCiAgICBp
	bnQgdGFnY3VycjsgICAgICAgICAgICAgICAgLyogdGFnIElEIG9mIGl0ZW0gc2VsZWN0aW9uIGJh
	ciBvbiAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHVzZWN1cnI7ICAgICAgLyogd2lsbCBtZW51IHVz
	ZSBjdXJyZW50IHdpbmRvdz8gICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHNyb3c7ICAgICAgICAg
	Lyogc3RhcnRpbmcgcm93IG9mIG1lbnUgd2luZG93ICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFy
	IHNjb2w7ICAgICAgICAgLyogc3RhcnRpbmcgY29sdW1uIG9mIG1lbnUgd2luZG93ICAgKi8NCiAg
	ICB1bnNpZ25lZCBjaGFyIGVyb3c7ICAgICAgICAgLyogZW5kaW5nIHJvdyBvZiBtZW51IHdpbmRv
	dyAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGVjb2w7ICAgICAgICAgLyogZW5kaW5nIGNv
	bHVtbiBvZiBtZW51IHdpbmRvdyAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGJ0eXBlOyAgICAg
	ICAgLyogbWVudSB3aW5kb3cgYm9yZGVyIHR5cGUgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBj
	aGFyIGJhdHRyOyAgICAgICAgLyogbWVudSB3aW5kb3cgYm9yZGVyIGF0dHJpYnV0ZSAgICAgKi8N
	CiAgICB1bnNpZ25lZCBjaGFyIHdhdHRyOyAgICAgICAgLyogbWVudSB3aW5kb3cgYXR0cmlidXRl
	ICAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIG1lbnV0eXBlOyAgICAgLyogbWVudSB0
	eXBlIG1hc2sgICAgICAgICAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGJhcndpZHRo
	OyAgICAgLyogd2lkdGggb2YgbWVudSBiYXIgb3IgemVybyAgICAgICAgKi8NCiAgICB1bnNpZ25l
	ZCBjaGFyIHRleHRwb3M7ICAgICAgLyogb2Zmc2V0IG9mIHRleHQgZnJvbSBzdGFydCBvZiBiYXIg
	Ki8NCiAgICB1bnNpZ25lZCBjaGFyIHRleHRhdHRyOyAgICAgLyogYXR0cmlidXRlIG9mIG1lbnUg
	dGV4dCAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHNjaGFyYXR0cjsgICAgLyogYXR0
	cmlidXRlIG9mIHNlbGVjdGlvbiBjaGFyYWN0ZXIgKi8NCiAgICB1bnNpZ25lZCBjaGFyIG5vc2Vs
	YXR0cjsgICAgLyogbm9uLXNlbGVjdGFibGUgdGV4dCBhdHRyaWJ1dGUgICAgKi8NCiAgICB1bnNp
	Z25lZCBjaGFyIGJhcmF0dHI7ICAgICAgLyogYXR0cmlidXRlIG9mIHNlbGVjdGlvbiBiYXIgICAg
	ICAgKi8NCn07DQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1bIHdpbmRvdyBoZWxwIGluZm9ybWF0
	aW9uIHJlY29yZCBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0Kc3RydWN0IF9oZWxwX3Qgew0K
	ICAgIGludCBoZWxwWzIwXTsgICAgICAgICAgICAgICAvKiBoZWxwIHN0YWNrICAgICAgICAgICAg
	ICAgICAqLw0KICAgIGNoYXIgKmZpbGU7ICAgICAgICAgICAgICAgICAvKiBoZWxwIGZpbGUgbmFt
	ZSAgICAgICAgICAgICAqLw0KICAgIGludCBoZWxwcHRyOyAgICAgICAgICAgICAgICAvKiBoZWxw
	IHN0YWNrIHBvaW50ZXIgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGludCAga2V5OyAgICAgICAg
	ICAvKiBoZWxwIGhvdCBrZXkgICAgICAgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgd2lu
	YXR0cjsgICAgICAvKiBoZWxwIHdpbmRvdyBhdHRyaWJ1dGUgICAgICAqLw0KICAgIHVuc2lnbmVk
	IGNoYXIgdGV4dGF0dHI7ICAgICAvKiBoZWxwIHdpbmRvdyB0ZXh0IGF0dHJpYnV0ZSAqLw0KICAg
	IHVuc2lnbmVkIGNoYXIgc2VsYXR0cjsgICAgICAvKiBzZWxlY3Rpb24gdGV4dCBhdHRyaWJ1dGUg
	ICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgYmFyYXR0cjsgICAgICAvKiBzZWxlY3Rpb24gYmFyIGF0
	dHJpYnV0ZSAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgc3JvdzsgICAgICAgICAvKiBoZWxwIHdp
	bmRvdyBzdGFydCByb3cgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgc2NvbDsgICAgICAgICAv
	KiBoZWxwIHdpbmRvdyBzdGFydCBjb2x1bW4gICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZXJvdzsg
	ICAgICAgICAvKiBoZWxwIHdpbmRvdyBlbmQgcm93ICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNo
	YXIgZWNvbDsgICAgICAgICAvKiBoZWxwIHdpbmRvdyBlbmQgY29sdW1uICAgICAqLw0KICAgIHVu
	c2lnbmVkIGNoYXIgYnR5cGU7ICAgICAgICAvKiBoZWxwIHdpbmRvdyBib3ggdHlwZSAgICAgICAq
	Lw0KICAgIHVuc2lnbmVkIGNoYXIgdGl0bGU7ICAgICAgICAvKiBkaXNwbGF5ICJIZWxwIiB0aXRs
	ZT8gICAgICAqLw0KICAgIHZvaWQgKCpvcGVuKSAodm9pZCk7ICAgICAgICAvKiBwb2ludGVyIHRv
	IG9wZW4gZnVuY3Rpb24gICAqLw0KfTsNCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVsgd2lu
	ZG93IGluZm9ybWF0aW9uIHJlY29yZCBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1
	Y3QgX3dpbmZvX3Qgew0KICAgIHN0cnVjdCBfd3JlY190ICAqYWN0aXZlOyAgICAvKiBwb2ludGVy
	IHRvIGFjdGl2ZSB3aW5kb3cgICAgICAgICAqLw0KICAgIHN0cnVjdCBfd3JlY190ICAqaGlkZGVu
	OyAgICAvKiBwb2ludGVyIHRvIGhlYWQgaGlkZGVuIHdpbmRvdyAgICAqLw0KICAgIHN0cnVjdCBf
	bWVudV90ICAqbWVudTsgICAgICAvKiBwb2ludGVyIHRvIGhlYWQgbWVudSByZWNvcmQgICAgICAq
	Lw0KICAgIHN0cnVjdCBfbWVudV90ICAqY21lbnU7ICAgICAvKiBwb2ludGVyIHRvIGN1cnJlbnQg
	bWVudSByZWNvcmQgICAqLw0KICAgIHN0cnVjdCBfaGVscF90ICAqaGVscHRyOyAgICAvKiBwb2lu
	dGVyIHRvIGhlbHAgaW5mbyByZWNvcmQgICAgICAqLw0KICAgIFdJTkRPVyBoYW5kbGU7ICAgICAg
	ICAgICAgICAvKiBsYXN0IGhhbmRsZSBnaXZlbiB0byBhIHdpbmRvdyAgICAqLw0KICAgIGludCBt
	YXhmaWxlczsgICAgICAgICAgICAgICAvKiBtYXggZmlsZXMgYWxsb3dlZCBpbiB3cGlja2ZpbGUo
	KSAqLw0KICAgIGludCBoZWxwOyAgICAgICAgICAgICAgICAgICAvKiBjdXJyZW50IGhlbHAgY2F0
	ZWdvcnkgICAgICAgICAgICAqLw0KICAgIGludCBlcnJubzsgICAgICAgICAgICAgICAgICAvKiBl
	cnJvciBudW0gZnJvbSBsYXN0IHdpbmRvdyBmdW5jICAqLw0KICAgIGludCB0b3RhbDsgICAgICAg
	ICAgICAgICAgICAvKiB0b3RhbCBudW1iZXIgb2Ygb3BlbiB3aW5kb3dzICAgICAqLw0KICAgIGlu
	dCBtbGV2ZWwsaWxldmVsOyAgICAgICAgICAvKiBzeXN0ZW0gdmFyaWFibGVzIHVzZWQgaW4gbWVu
	dXMgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZXNjOyAgICAgICAgICAvKiBjaGVjayBmb3IgRXNj
	IGluIGlucHV0IGZ1bmNpb25zPyAqLw0KICAgIHVuc2lnbmVkIGNoYXIgdGFid2lkdGg7ICAgICAv
	KiB3aW5kb3cgVFRZIG91dHB1dCB0YWIgd2lkdGggICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIg
	ZmlsbGNoOyAgICAgICAvKiBjaGFyYWN0ZXIgdG8gZmlsbCB3aW5kb3dzIHdpdGggICAqLw0KfTsN
	Cg0KZXh0ZXJuIHN0cnVjdCBfd2luZm9fdCBfTmVhciBfQ2RlY2wgX3dpbmZvOw0KDQovKi0tLS0t
	LS0tLS0tLS0tLS0tLS1bIGZtYXNrIGRlZmluaXRpb25zIGZvciB3bWVudWl0ZW0oKSBdLS0tLS0t
	LS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgTV9IQVNQRCAgICAgMSAgIC8qIGhhcyBwdWxsLWRv
	d24gbWVudSBhdHRhY2hlZCAgICovDQojZGVmaW5lIE1fTk9TRUwgICAgIDIgICAvKiBpcyBub3Qg
	c2VsZWN0YWJsZSAgICAgICAgICAgICAqLw0KI2RlZmluZSBNX0NMT1NFICAgICA0ICAgLyogY2xv
	c2UgbWVudSBhZnRlciBzZWxlY3QgZnVuYyAgKi8NCiNkZWZpbmUgTV9DTEFMTCAgICAgOCAgIC8q
	IGNsb3NlIGFsbCBtZW51cyB3aGVuIHNlbGVjdGVkICovDQojZGVmaW5lIE1fQ0xPU0IgICAgMTYg
	ICAvKiBjbG9zZSBtZW51IGJlZm9yZSBzZWxlY3QgZnVuYyAqLw0KDQovKi0tLS0tLS0tLS0tLS0t
	LS0tLVsgbWVudXR5cGUgZGVmaW5pdGlvbnMgZm9yIHdtZW51ZW5kKCkgXS0tLS0tLS0tLS0tLS0t
	LS0tLSovDQoNCiNkZWZpbmUgTV9IT1JaICAgICAgMSAgICAgICAvKiBob3Jpem9udGFsIG1lbnUg
	ICAgICAgICAqLw0KI2RlZmluZSBNX1ZFUlQgICAgICAyICAgICAgIC8qIHZlcnRpY2FsIG1lbnUg
	ICAgICAgICAgICovDQojZGVmaW5lIE1fT01OSSAgICAgIDcgICAgICAgLyogb21uaWRpcmVjdGlv
	bmFsIG1lbnUgICAgKi8NCiNkZWZpbmUgTV9QRCAgICAgICAgOCAgICAgICAvKiBwdWxsLWRvd24g
	bWVudSAgICAgICAgICAqLw0KI2RlZmluZSBNX05PUVMgICAgICAxNiAgICAgIC8qIGRpc2FibGUg
	cXVpY2sgc2VsZWN0aW9uICovDQojZGVmaW5lIE1fU0FWRSAgICAgIDMyICAgICAgLyogc2F2ZSBs
	YXN0IGJhciBwb3NpdGlvbiAgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS1bIHNwZWNpYWwgcmV0
	dXJuIGNvZGVzIGZyb20gd21lbnVnZXQoKSBdLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQojZGVmaW5l
	IE1fRVhJVCAgICAgIDMyNzY0ICAgLyogZXhpdCBtZW51ICAgICAgICAgICAgICAgKi8NCiNkZWZp
	bmUgTV9FWElUQUxMICAgMzI3NjUgICAvKiBleGl0IGFsbCBtZW51cyAgICAgICAgICAqLw0KI2Rl
	ZmluZSBNX1BSRVZQRCAgICAzMjc2NiAgIC8qIHByZXZpb3VzIHB1bGwtZG93biBtZW51ICovDQoj
	ZGVmaW5lIE1fTkVYVFBEICAgIDMyNzY3ICAgLyogbmV4dCBwdWxsLWRvd24gbWVudSAgICAgKi8N
	Cg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS1bIHdpbmRvdyBpbnB1dCBmaWVsZCBkZWZpbml0aW9u
	IF0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1Y3QgX2ZpZWxkX3Qgew0KICAgIHN0cnVj
	dCBfZmllbGRfdCAqcHJldjsgICAgICAvKiBwb2ludGVyIHRvIHByZXZpb3VzIGZpZWxkICAgICAg
	ICovDQogICAgc3RydWN0IF9maWVsZF90ICpuZXh0OyAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCBm
	aWVsZCAgICAgICAgICAgKi8NCiAgICBjaGFyICpzdHI7ICAgICAgICAgICAgICAgICAgLyogYWRk
	cmVzcyBvZiByZWNlaXZpbmcgc3RyaW5nICAgICAqLw0KICAgIGNoYXIgKmJ1ZjsgICAgICAgICAg
	ICAgICAgICAvKiBhZGRyZXNzIG9mIHRlbXAgcmVjZWl2ZSBzdHJpbmcgICovDQogICAgY2hhciAq
	Zm9ybWF0OyAgICAgICAgICAgICAgIC8qIGlucHV0IGZpZWxkIGZvcm1hdCBzdHJpbmcgICAgICAg
	Ki8NCiAgICBpbnQgKCp2YWxpZGF0ZSkgKGNoYXIgKik7ICAgLyogYWRkcmVzcyBvZiB2YWxpZGF0
	aW9uIGZ1bmN0aW9uICAqLw0KICAgIHZvaWQgKCpiZWZvcmUpICh2b2lkKTsgICAgICAvKiBhZGRy
	ZXNzIG9mICJiZWZvcmUiIGZ1bmN0aW9uICAgICovDQogICAgdm9pZCAoKmFmdGVyKSAgKHZvaWQp
	OyAgICAgIC8qIGFkZHJlc3Mgb2YgImFmdGVyIiAgZnVuY3Rpb24gICAgKi8NCiAgICBpbnQgaGVs
	cDsgICAgICAgICAgICAgICAgICAgLyogaGVscCBjYXRlZ29yeSBudW1iZXIgICAgICAgICAgICAq
	Lw0KICAgIGludCBsZW5idWY7ICAgICAgICAgICAgICAgICAvKiBsZW5ndGggb2YgYnVmZmVyICAg
	ICAgICAgICAgICAgICovDQogICAgaW50IGxlbmZsZDsgICAgICAgICAgICAgICAgIC8qIGxlbmd0
	aCBvZiBzY3JlZW4gaW5wdXQgZmllbGQgICAgKi8NCiAgICBpbnQgbGVuZm10OyAgICAgICAgICAg
	ICAgICAgLyogbGVuZ3RoIG9mIGZvcm1hdCBzdHJpbmcgICAgICAgICAqLw0KICAgIHVuc2lnbmVk
	IGNoYXIgd3JvdzsgICAgICAgICAvKiBzdGFydCBvZiBpbnB1dCAtIHdpbmRvdyByb3cgICAgICov
	DQogICAgdW5zaWduZWQgY2hhciB3Y29sOyAgICAgICAgIC8qIHN0YXJ0IG9mIGlucHV0IC0gd2lu
	ZG93IGNvbHVtbiAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIG1vZGU7ICAgICAgICAgLyogMD1pbml0
	LCAxPXVwZGF0ZSwgMj1jb25kIHVwZGF0ZSAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZGVjcG9zOyAg
	ICAgICAvKiBkZWNpbWFsIHBvc2l0aW9uIChudW1lcmljKSAgICAgICovDQogICAgdW5zaWduZWQg
	Y2hhciByZWRpc3A7ICAgICAgIC8qIHJlZGlzcGxheSBmbGFnICAgICAgICAgICAgICAgICAgKi8N
	CiAgICBjaGFyIGZjb252OyAgICAgICAgICAgICAgICAgLyogZmllbGQgY29udmVyc2lvbiBjaGFy
	YWN0ZXIgICAgICAqLw0KfTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KLyot
	LS0tLS0tLS0tLS0tLS0tLS0tWyB3aW5kb3cgZGF0YSBlbnRyeSBmb3JtIGRlZmluaXRpb24gXS0t
	LS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1Y3QgX2Zvcm1fdCB7DQogICAgdW5zaWduZWQgKCpn
	ZXRrZXkpIChpbnQgKik7IC8qIHBvaW50ZXIgdG8gYWx0ZXJuYXRlIGdldCBmdW5jICAgKi8NCiAg
	ICBzdHJ1Y3QgX2Zvcm1fdCAgKnByZXY7ICAgICAgLyogcG9pbnRlciB0byBwcmV2aW91cyBmb3Jt
	IHJlY29yZCAqLw0KICAgIHN0cnVjdCBfZm9ybV90ICAqbmV4dDsgICAgICAvKiBwb2ludGVyIHRv
	IG5leHQgZm9ybSByZWNvcmQgICAgICovDQogICAgc3RydWN0IF9maWVsZF90ICpmaWVsZDsgICAg
	IC8qIHBvaW50ZXIgdG8gaGVhZCBmaWVsZCByZWNvcmQgICAgKi8NCiAgICBzdHJ1Y3QgX2ZpZWxk
	X3QgKmNmaWVsZDsgICAgLyogcG9pbnRlciB0byBjdXJyZW50IGZpZWxkIHJlY29yZCAqLw0KICAg
	IHVuc2lnbmVkICp0ZXJta2V5OyAgICAgICAgICAvKiBhZGRyIG9mIGludCBmb3IgdGVybWluYXRp
	bmcga2V5ICovDQogICAgY2hhciAqcGZvcm1hdDsgICAgICAgICAgICAgIC8qIGZvcm1hdCBzdHJp
	bmcgcG9pbnRlciAgICAgICAgICAgKi8NCiAgICBjaGFyICpwYnVmOyAgICAgICAgICAgICAgICAg
	LyogYnVmZmVyIHN0cmluZyBwb2ludGVyICAgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIg
	Y3dyb3c7ICAgICAgICAvKiBjdXJyZW50IHdpbmRvdyByb3cgICAgICAgICAgICAgICovDQogICAg
	dW5zaWduZWQgY2hhciBjd2NvbDsgICAgICAgIC8qIGN1cnJlbnQgd2luZG93IGNvbHVtbiAgICAg
	ICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGRlY2ltYWw7ICAgICAgLyogZGVjaW1hbCBmaWVs
	ZCBmbGFnICAgICAgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgaW5zZXJ0OyAgICAgICAv
	KiBpbnNlcnQgbW9kZSBmbGFnICAgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBm
	aWVsZGF0dHI7ICAgIC8qIGZpZWxkIGF0dHJpYnV0ZSAgICAgICAgICAgICAgICAgKi8NCiAgICB1
	bnNpZ25lZCBjaGFyIHRleHRhdHRyOyAgICAgLyogdGV4dCBhdHRyaWJ1dGUgICAgICAgICAgICAg
	ICAgICAqLw0KfTsNCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tWyBzdHJ1Y3R1cmUgb2Ygd2lu
	ZG93IHJlY29yZHMgXS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1Y3QgX3dyZWNfdCB7
	DQogICAgc3RydWN0IF93cmVjX3QgKnByZXY7ICAgLyogcG9pbnRlciB0byBwcmV2aW91cyB3aW5k
	b3cgcmVjb3JkICovDQogICAgc3RydWN0IF93cmVjX3QgKm5leHQ7ICAgLyogcG9pbnRlciB0byBu
	ZXh0IHdpbmRvdyByZWNvcmQgICAgICovDQogICAgc3RydWN0IF9mb3JtX3QgKmZvcm07ICAgLyog
	cG9pbnRlciB0byBoZWFkIGZvcm0gcmVjb3JkICAgICAgICovDQogICAgaW50ICp3YnVmOyAgICAg
	ICAgICAgICAgLyogYWRkcmVzcyBvZiB3aW5kb3cncyBidWZmZXIgICAgICAgICovDQogICAgaW50
	ICp3c2J1ZjsgICAgICAgICAgICAgLyogYWRkcmVzcyBvZiB3aW5kb3cgc2hhZG93J3MgYnVmZmVy
	ICovDQogICAgY2hhciAqdGl0bGU7ICAgICAgICAgICAgLyogYWRkcmVzcyBvZiB3aW5kb3cncyB0
	aXRsZSBzdHJpbmcgICovDQogICAgV0lORE9XIHdoYW5kbGU7ICAgICAgICAgLyogd2luZG93J3Mg
	aGFuZGxlICAgICAgICAgICAgICAgICAgICovDQogICAgaW50IGhlbHA7ICAgICAgICAgICAgICAg
	LyogaGVscCBjYXRlZ29yeSBudW1iZXIgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hh
	ciBzcm93OyAgICAgLyogc3RhcnQgcm93IG9mIHdpbmRvdyAgICAgICAgICAgICAgICovDQogICAg
	dW5zaWduZWQgY2hhciBzY29sOyAgICAgLyogc3RhcnQgY29sdW1uIG9mIHdpbmRvdyAgICAgICAg
	ICAgICovDQogICAgdW5zaWduZWQgY2hhciBlcm93OyAgICAgLyogZW5kIHJvdyBvZiB3aW5kb3cg
	ICAgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBlY29sOyAgICAgLyogZW5kIGNv
	bHVtbiBvZiB3aW5kb3cgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBidHlwZTsg
	ICAgLyogd2luZG93J3MgYm94IHR5cGUgICAgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQg
	Y2hhciB3YXR0cjsgICAgLyogd2luZG93J3MgaW5pdGlhbCB0ZXh0IGF0dHJpYnV0ZSAgICovDQog
	ICAgdW5zaWduZWQgY2hhciBiYXR0cjsgICAgLyogYXRycmlidXRlIG9mIHdpbmRvdydzIGJvcmRl
	ciAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBib3JkZXI7ICAgLyogaGFzIGJvcmRlcj8gIDAg
	PSBubywgMSA9IHllcyAgICAgICovDQogICAgdW5zaWduZWQgY2hhciByb3c7ICAgICAgLyogd2lu
	ZG93J3MgY3VycmVudCBjdXJzb3Igcm93ICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBjb2x1
	bW47ICAgLyogd2luZG93J3MgY3VycmVudCBjdXJzb3IgY29sdW1uICAgICovDQogICAgdW5zaWdu
	ZWQgY2hhciBhdHRyOyAgICAgLyogd2luZG93J3MgY3VycmVudCB0ZXh0IGF0dHJpYnV0ZSAgICov
	DQogICAgdW5zaWduZWQgY2hhciB0cG9zOyAgICAgLyogcG9zaXRpb24gb2Ygd2luZG93J3MgdGl0
	bGUgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciB0YXR0cjsgICAgLyogYXR0cmlidXRlIG9m
	IHdpbmRvdydzIHRpdGxlICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciB3c2F0dHI7ICAgLyog
	YXR0cmlidXRlIG9mIHdpbmRvdydzIHNoYWRvdyAgICAgICovDQp9OyAgICAgICAgICAgICAgICAg
	ICAgICAgICAgICAgICAgIA0KDQovKi0tLS0tLS0tLS0tLVsgd2luZG93IHRpdGxlIHBvc2l0aW9u
	IGRlZmluaXRpb25zIGZvciB3dGl0bGUoKSBdLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVExF
	RlQgICAgICAgMSAgIC8qIGxlZnQganVzdGlmaWVkICAqLw0KI2RlZmluZSBUQ0VOVEVSICAgICAy
	ICAgLyogY2VudGVyZWQgICAgICAgICovDQojZGVmaW5lIFRSSUdIVCAgICAgIDMgICAvKiByaWdo
	dCBqdXN0aWZpZWQgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1bIGRlZmluaXRpb24g
	b2YgTlVMTCBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQojaWYgIWRlZmluZWQo
	TlVMTCkNCiAgICAjaWYgZGVmaW5lZChfX1RVUkJPQ19fKSAgICAgICAgICAgICAgICAgICAgIC8q
	IFR1cmJvIEMgKi8NCiAgICAgICAgI2lmIGRlZmluZWQoX19USU5ZX18pIHx8IGRlZmluZWQoX19T
	TUFMTF9fKSB8fCBkZWZpbmVkKF9fTUVESVVNX18pDQogICAgICAgICAgICAjZGVmaW5lIE5VTEwg
	ICAgMA0KICAgICAgICAjZWxzZQ0KICAgICAgICAgICAgI2RlZmluZSBOVUxMICAgIDBMDQogICAg
	ICAgICNlbmRpZg0KICAgICNlbGlmIGRlZmluZWQoX19aVENfXykgICAgICAgICAgICAgICAgICAg
	ICAgLyogWm9ydGVjaCBDKysgKi8NCiAgICAgICAgI2lmZGVmIExQVFINCiAgICAgICAgICAgICNk
	ZWZpbmUgTlVMTCAgICAwTA0KICAgICAgICAjZWxzZQ0KICAgICAgICAgICAgI2RlZmluZSBOVUxM
	ICAgIDANCiAgICAgICAgI2VuZGlmDQogICAgI2VsaWYgZGVmaW5lZChNX0k4NikgJiYgIWRlZmlu
	ZWQoX19aVENfXykgICAvKiBNaWNyb3NvZnQgQy9RdWlja0MgKi8NCiAgICAgICAgI2lmIGRlZmlu
	ZWQoTV9JODZTTSkgfHwgZGVmaW5lZChNX0k4Nk1NKQ0KICAgICAgICAgICAgI2RlZmluZSBOVUxM
	ICAgIDANCiAgICAgICAgI2Vsc2UNCiAgICAgICAgICAgICNkZWZpbmUgTlVMTCAgICAwTA0KICAg
	ICAgICAjZW5kaWYNCiAgICAjZW5kaWYNCiNlbmRpZg0KDQovKi0tLS0tLS0tLS0tLS0tWyBhdHRy
	aWJ1dGUgY29kZXMgZm9yIGZ1bmN0aW9ucyB0aGF0IHVzZSB0aGVtIF0tLS0tLS0tLS0tLS0tLSov
	DQoNCiNpZiAgICAgIWRlZmluZWQoQkxBQ0spICAgICAvKiBmb3JlZ3JvdW5kIGNvbG9ycyAqLw0K
	I2RlZmluZSBCTEFDSyAgICAgICAwICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBCTFVFICAg
	ICAgICAxDQojZGVmaW5lIEdSRUVOICAgICAgIDINCiNkZWZpbmUgQ1lBTiAgICAgICAgMw0KI2Rl
	ZmluZSBSRUQgICAgICAgICA0DQojZGVmaW5lIE1BR0VOVEEgICAgIDUNCiNkZWZpbmUgQlJPV04g
	ICAgICAgNg0KI2RlZmluZSBZRUxMT1cgICAgICAxNA0KI2RlZmluZSBXSElURSAgICAgICAxNQ0K
	I2VuZGlmDQojaWYgICAgICFkZWZpbmVkKExHUkVZKQ0KI2RlZmluZSBMR1JFWSAgICAgICA3ICAg
	ICAgIC8qIENYTCBhYmJyZXZpYXRlcyBMSUdIVCBhcyBMICAgICovDQojZGVmaW5lIERHUkVZICAg
	ICAgIDggICAgICAgLyogYW5kIERBUksgYXMgRCBmb3IgZWFzZSBvZiB1c2UgKi8NCiNkZWZpbmUg
	TEJMVUUgICAgICAgOQ0KI2RlZmluZSBMR1JFRU4gICAgICAxMA0KI2RlZmluZSBMQ1lBTiAgICAg
	ICAxMQ0KI2RlZmluZSBMUkVEICAgICAgICAxMg0KI2RlZmluZSBMTUFHRU5UQSAgICAxMw0KDQoj
	ZGVmaW5lIF9CTEFDSyAgICAgIDAgICAgICAgLyogYmFja2dyb3VuZCBjb2xvcnMgKi8NCiNkZWZp
	bmUgX0JMVUUgICAgICAgMTYNCiNkZWZpbmUgX0dSRUVOICAgICAgMzINCiNkZWZpbmUgX0NZQU4g
	ICAgICAgNDgNCiNkZWZpbmUgX1JFRCAgICAgICAgNjQNCiNkZWZpbmUgX01BR0VOVEEgICAgODAN
	CiNkZWZpbmUgX0JST1dOICAgICAgOTYNCiNkZWZpbmUgX0xHUkVZICAgICAgMTEyDQojZW5kaWYN
	Cg0KI2lmICAgICAhZGVmaW5lZChCTElOSykNCiNkZWZpbmUgQkxJTksgICAgICAgMTI4ICAgICAv
	KiBibGluayBhdHRyaWJ1dGUgKi8NCiNlbmRpZg0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
	LS0tLS1bIG1hY3JvIGZ1bmN0aW9ucyBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoN
	CiNpZiAhZGVmaW5lZChNS19GUCkNCiNkZWZpbmUgTUtfRlAoc2VnLG9mcykgICAgICAoKHZvaWQg
	ZmFyICopICgoKHVuc2lnbmVkIGxvbmcpKHNlZykgPDwgMTYpIHwgXA0KICAgICAgICAgICAgICAg
	ICAgICAgICAgICAgICh1bnNpZ25lZCkob2ZzKSkpDQojZW5kaWYNCiNkZWZpbmUgd2NsZWFyKCkg
	ICAgICAgICAgICB3Y2NsZWFyKF93aW5mby5hY3RpdmUtPndhdHRyKQ0KI2RlZmluZSB3ZmlsbGNo
	KGEpICAgICAgICAgIChfd2luZm8uZmlsbGNoPWEpDQojZGVmaW5lIHdoZWxwdW5kZWYoKSAgICAg
	ICAgd2hlbHBkZWYoTlVMTCwwLDAsMCwwLDAsTlVMTCkNCiNkZWZpbmUgd2lucGZjdXJyKCkgICAg
	ICAgICAoX3dpbmZvLmFjdGl2ZS0+Zm9ybS0+Y2ZpZWxkKQ0KI2RlZmluZSB3aXNhY3RpdihhKSAg
	ICAgICAgIChhPT1fd2luZm8uYWN0aXZlLT53aGFuZGxlKQ0KI2RlZmluZSB3bWVudW1jdXJyKCkg
	ICAgICAgIChfd2luZm8uY21lbnUpDQojZGVmaW5lIHdtZW51aWN1cnIoKSAgICAgICAgKHdtZW51
	bWN1cnIoKS0+Y2l0ZW0pDQojZGVmaW5lIHdzZXRlc2MoYSkgICAgICAgICAgKF93aW5mby5lc2M9
	YSkNCiNkZWZpbmUgd3RhYndpZHRoKGEpICAgICAgICAoX3dpbmZvLnRhYndpZHRoPSgoYT09MCk/
	MTphKSkNCg==


----- Begin Included Message -----

From marques@joa.ufrj.br Thu Jun  4 13:02:56 1992
Return-Path: <marques@joa.ufrj.br>
Received: from recreio.nce.ufrj.br.ufrj.br by joa.ufrj.br.ufrj.br (4.1/SMI-4.1)
	id AA04194; Thu, 4 Jun 92 13:02:54 EST
Received: by recreio.nce.ufrj.br.ufrj.br (4.1/SMI-4.1)
	id AA01411; Thu, 4 Jun 92 13:02:51 EST
Date: WED, 22 Apr 92  10:17:01  -0300
From: marques@joa.ufrj.br
To: marques@joa.ufrj.br
Message-Id: <00100043>
Subject: teste                                             
Content-Type: IMAGE/NETFAX ;Pagina =   1 ;Total =   1;De = fernando marques                                  ;Para = paulo aguiar                                      
Content-Transfer-Encoding: BASE64 
Status: RO

LyoNCiAgINrExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTE
xMTExMTExMTExMTExMTExMTExMTExMTExL8NCiAgILMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMNCiAgILMg
IENYTFdJTi5IICAtICBDWEwgaXMgQ29weXJpZ2h0IChjKSAxOTg3LTE5ODkgYnkgTWlrZSBTbWVk
bGV5LiAgICAgICAgICAgILMNCiAgILMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMNCiAgILMgIFRoaXMgaGVh
ZGVyIGZpbGUgY29udGFpbnMgZnVuY3Rpb24gcHJvdG90eXBlcyBhbmQgZGVmaW5pdGlvbnMgZm9y
ICAgICAgILMNCiAgILMgIHdpbmRvd2luZyBmdW5jdGlvbnMuICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMNCiAgILMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgILMN
CiAgIMDExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTE
xMTExMTExMTExMTExMTExMTExMTExNkNCiovDQoNCiNpZiBkZWZpbmVkKF9fVFVSQk9DX18pICAg
ICAgICAgICAgICAgICAgICAgLyogVHVyYm8gQyAqLw0KICAgICNpZiBfX1NURENfXw0KICAgICAg
ICAjZGVmaW5lIF9DZGVjbA0KICAgICNlbHNlDQogICAgICAgICNkZWZpbmUgX0NkZWNsICBjZGVj
bA0KICAgICNlbmRpZg0KICAgICNkZWZpbmUgX05lYXINCiNlbGlmIGRlZmluZWQoX19aVENfXykg
ICAgICAgICAgICAgICAgICAgICAgLyogWm9ydGVjaCBDKysgKi8NCiAgICAjZGVmaW5lIF9DZGVj
bA0KICAgICNkZWZpbmUgX05lYXINCiNlbGlmIGRlZmluZWQoTV9JODYpICYmICFkZWZpbmVkKF9f
WlRDX18pICAgLyogTWljcm9zb2Z0IEMvUXVpY2tDICovDQogICAgI2lmICFkZWZpbmVkKE5PX0VY
VF9LRVlTKQ0KICAgICAgICAjZGVmaW5lIF9DZGVjbCAgY2RlY2wNCiAgICAgICAgI2RlZmluZSBf
TmVhciAgIG5lYXINCiAgICAjZWxzZQ0KICAgICAgICAjZGVmaW5lIF9DZGVjbA0KICAgICAgICAj
ZGVmaW5lIF9OZWFyDQogICAgI2VuZGlmDQojZW5kaWYNCg0KDQovKi0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLVsgV0lORE9XIHR5cGUgXS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSovDQoNCnR5cGVkZWYgaW50ICAgICBXSU5ET1c7DQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tWyBmdW5jdGlvbiBwcm90b3R5cGVzIF0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8N
Cg0KaW50ICAgICAgX0NkZWNsIHdhY3RpdihXSU5ET1cgd2hhbmRsZSk7DQppbnQgICAgICBfQ2Rl
Y2wgd2JvcmRlcihpbnQgYnR5cGUpOw0KaW50ICAgICAgX0NkZWNsIHdib3goaW50IHdzcm93LGlu
dCB3c2NvbCxpbnQgd2Vyb3csaW50IHdlY29sLGludCBidHlwZQ0KICAgICAgICAgICAgICAgICxp
bnQgYXR0cik7DQppbnQgICAgICBfQ2RlY2wgd2JwcmludGMoaW50IGJvcmQsaW50IG9mZnMsaW50
IGF0dHIsaW50IGNoKTsNCmludCAgICAgIF9DZGVjbCB3Y2NsZWFyKGludCBhdHRyKTsNCmludCAg
ICAgIF9DZGVjbCB3Y2VudGVycyhpbnQgd3JvdyxpbnQgYXR0cixjaGFyICpzdHIpOw0KaW50ICAg
ICAgX0NkZWNsIHdjaGdhdHRyKGludCBiYXR0cixpbnQgd2F0dHIpOw0KaW50ICAgICAgX0NkZWNs
IHdjaGtib3goaW50IHdzcm93LGludCB3c2NvbCxpbnQgd2Vyb3csaW50IHdlY29sKTsNCmludCAg
ICAgIF9DZGVjbCB3Y2hrY29sKGludCB3Y29sKTsNCmludCAgICAgIF9DZGVjbCB3Y2hrY29vcmQo
aW50IHdyb3csaW50IHdjb2wpOw0KaW50ICAgICAgX0NkZWNsIHdjaGtyb3coaW50IHdyb3cpOw0K
aW50ICAgICAgX0NkZWNsIHdjbG9zZSh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3Y2xvc2VhbGwo
dm9pZCk7DQppbnQgICAgICBfQ2RlY2wgd2NscmVvbCh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3
Y2xyZW9zKHZvaWQpOw0KV0lORE9XICAgX0NkZWNsIHdjb3B5KGludCBuc3JvdyxpbnQgbnNjb2wp
Ow0KaW50ICAgICAgX0NkZWNsIHdkZWxsaW5lKGludCB3cm93LGludCBkaXJlYyk7DQppbnQgICAg
ICBfQ2RlY2wgd2RyYWcoaW50IGRpcmVjdGlvbik7DQppbnQgICAgICBfQ2RlY2wgd2R1bXAodm9p
ZCk7DQppbnQgICAgICBfQ2RlY2wgd2R1cGMoaW50IGNoLGludCBjb3VudCk7DQppbnQgICAgICBf
Q2RlY2wgd2R1cHMoY2hhciAqc3RyLGludCBjb3VudCk7DQpjaGFyICAgICpfQ2RlY2wgd2Vycm1z
Zyh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3ZmlsbChpbnQgd3Nyb3csaW50IHdzY29sLGludCB3
ZXJvdyxpbnQgd2Vjb2wsaW50IGNoLGludCBhdHRyKTsNCnN0cnVjdCAgIF93cmVjX3QgKl9DZGVj
bCB3ZmluZHJlYyhXSU5ET1cgd2hhbmRsZSk7DQppbnQgICAgICBfQ2RlY2wgd2dldGModm9pZCk7
DQppbnQgICAgICBfQ2RlY2wgd2dldGNoZihjaGFyICp2YWxpZCxpbnQgZGVmY2hhcik7DQppbnQg
ICAgICBfQ2RlY2wgd2dldG5zKGNoYXIgKnN0cixpbnQgbWF4Y2hhcnMpOw0KaW50ICAgICAgX0Nk
ZWNsIHdnZXRzKGNoYXIgKnN0cik7DQppbnQgICAgICBfQ2RlY2wgd2dldHluKGludCBjZGVmYXVs
dCk7DQppbnQgICAgICBfQ2RlY2wgd2dvdG94eShpbnQgd3JvdyxpbnQgd2NvbCk7DQpXSU5ET1cg
ICBfQ2RlY2wgd2hhbmRsZSh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aGVscGNhdChpbnQgY2F0
KTsNCmludCAgICAgIF9DZGVjbCB3aGVscGNscih2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aGVs
cGRlZihjaGFyICpmaWxlLHVuc2lnbmVkIGtleSxpbnQgd2luYXR0cixpbnQgdGV4dGF0dHIsDQog
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IHNlbGF0dHIsaW50IGJhcmF0dHIsdm9pZCAoX0Nk
ZWNsICpvcGVuKSh2b2lkKSk7DQppbnQgICAgICBfQ2RlY2wgd2hlbHBvcCh2b2lkKTsNCmludCAg
ICAgIF9DZGVjbCB3aGVscG9wYyh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aGVscHBjYXQoaW50
IGNhdCk7DQppbnQgICAgICBfQ2RlY2wgd2hlbHB1c2godm9pZCk7DQppbnQgICAgICBfQ2RlY2wg
d2hlbHB1c2hjKGludCBjYXQpOw0KaW50ICAgICAgX0NkZWNsIHdoZWxwd2luKGludCBzcm93LGlu
dCBzY29sLGludCBlcm93LGludCBlY29sLGludCBidHlwZSwNCiAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgdGl0bGUpOw0KaW50ICAgICAgX0NkZWNsIHdoaWRlKHZvaWQpOw0KaW50ICAgICAg
X0NkZWNsIHdobGluZShpbnQgd3Nyb3csaW50IHdzY29sLGludCBjb3VudCxpbnQgYnR5cGUsaW50
IGF0dHIpOw0KV0lORE9XICAgX0NkZWNsIHdpbmRvd2F0KGludCByb3csaW50IGNvbCk7DQppbnQg
ICAgICBfQ2RlY2wgd2lucGJlZyhpbnQgZmllbGRhdHRyLGludCB0ZXh0YXR0cik7DQppbnQgICAg
ICBfQ2RlY2wgd2lucGRlZihpbnQgd3JvdyxpbnQgd2NvbCxjaGFyICpzdHIsY2hhciAqZm9ybWF0
LGludCBmY29udiwNCiAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb2RlLGludCAoX0NkZWNs
ICp2YWxpZGF0ZSkgKGNoYXIgKiksaW50IGhlbHApOw0KaW50ICAgICAgX0NkZWNsIHdpbnBmYmEo
dm9pZCAoX0NkZWNsICpiZWZvcmUpKHZvaWQpLA0KICAgICAgICAgICAgICAgICAgICAgICAgdm9p
ZCAoX0NkZWNsICphZnRlcikodm9pZCkpOw0Kc3RydWN0IF9maWVsZF90ICpfQ2RlY2wgd2lucGZm
aW5kKGludCB3cm93LGludCB3Y29sKTsNCmludCAgICAgIF9DZGVjbCB3aW5wa2V5KHVuc2lnbmVk
IChfQ2RlY2wgKmdldGtleSkoaW50ICopLHVuc2lnbmVkICp0ZXJta2V5KTsNCmludCAgICAgIF9D
ZGVjbCB3aW5wcmVhZCh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3aW5wdXRzZihjaGFyICpzdHIs
Y2hhciAqZm10KTsNCmludCAgICAgIF9DZGVjbCB3aW5zbGluZShpbnQgd3JvdyxpbnQgZGlyZWMp
Ow0KaW50ICAgICAgX0NkZWNsIHdtZW51YmVnKGludCBzcm93LGludCBzY29sLGludCBlcm93LGlu
dCBlY29sLGludCBidHlwZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYmF0dHIsaW50
IHdhdHRyLHZvaWQgKF9DZGVjbCAqb3Blbikodm9pZCkpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51
YmVnYyh2b2lkKTsNCmludCAgICAgIF9DZGVjbCB3bWVudWVuZChpbnQgdGFnaW5pdCxpbnQgbWVu
dXR5cGUsaW50IGJhcndpZHRoLGludCB0ZXh0cG9zLA0KICAgICAgICAgICAgICAgICAgICAgICAg
IGludCB0ZXh0YXR0cixpbnQgc2NoYXJhdHRyLGludCBub3NlbGF0dHIsaW50IGJhcmF0dHIpOw0K
aW50ICAgICAgX0NkZWNsIHdtZW51Z2V0KHZvaWQpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51aWJh
KHZvaWQgKF9DZGVjbCAqYmVmb3JlKSh2b2lkKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICB2
b2lkIChfQ2RlY2wgKmFmdGVyKSh2b2lkKSk7DQppbnQgICAgICBfQ2RlY2wgd21lbnVpZHNhYihp
bnQgdGFnaWQpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51aWVuYWIoaW50IHRhZ2lkKTsNCnN0cnVj
dCAgIF9pdGVtX3QgKl9DZGVjbCB3bWVudWlmaW5kKGludCB0YWdpZCk7DQppbnQgICAgICBfQ2Rl
Y2wgd21lbnVpbmV4dChpbnQgdGFnaWQpOw0KaW50ICAgICAgX0NkZWNsIHdtZW51aXRlbShpbnQg
d3JvdyxpbnQgd2NvbCxjaGFyICpzdHIsaW50IHNjaGFyLGludCB0YWdpZCwNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGZtYXNrLHZvaWQgKF9DZGVjbCAqc2VsZWN0KSh2b2lkKSwNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaG90a2V5LGludCBoZWxwKTsNCmludCAg
ICAgIF9DZGVjbCB3bWVudWl0eHQoaW50IHdyb3csaW50IHdjb2wsaW50IGF0dHIsY2hhciAqc3Ry
KTsNCmludCAgICAgIF9DZGVjbCB3bWVzc2FnZShjaGFyICpzdHIsaW50IGJvcmRlcixpbnQgbGVm
dG9mcyxpbnQgYXR0cik7DQppbnQgICAgICBfQ2RlY2wgd21vdmUoaW50IG5zcm93LGludCBuc2Nv
bCk7DQpXSU5ET1cgICBfQ2RlY2wgd29wZW4oaW50IHNyb3csaW50IHNjb2wsaW50IGVyb3csaW50
IGVjb2wsaW50IGJ0eXBlLGludCBiYXR0ciwNCiAgICAgICAgICAgICAgICAgICAgICBpbnQgd2F0
dHIpOw0KaW50ICAgICAgX0NkZWNsIHdwZXJyb3IoY2hhciAqbWVzc2FnZSk7DQppbnQgICAgICBf
Q2RlY2wgd3Bnb3RveHkoaW50IHdyb3csaW50IHdjb2wpOw0KY2hhciAgICAqX0NkZWNsIHdwaWNr
ZmlsZShpbnQgc3JvdyxpbnQgc2NvbCxpbnQgZXJvdyxpbnQgZWNvbCxpbnQgYnR5cGUsDQogICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCBib3JkYXR0cixpbnQgd2luYXR0cixpbnQgYmFyYXR0
cixpbnQgdGl0bGUsDQogICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZpbGVzcGVjLHZv
aWQgKF9DZGVjbCAqb3Blbikodm9pZCkpOw0KaW50ICAgICAgX0NkZWNsIHdwaWNrc3RyKGludCBz
cm93LGludCBzY29sLGludCBlcm93LGludCBlY29sLGludCBidHlwZSwNCiAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgYm9yZGF0dHIsaW50IHdpbmF0dHIsaW50IGJhcmF0dHIsY2hhciAqc3Ry
YXJyW10sDQogICAgICAgICAgICAgICAgICAgICAgICAgaW50IGluaXRlbGVtLHZvaWQgKF9DZGVj
bCAqb3Blbikodm9pZCkpOw0KaW50ICAgICAgX0NkZWNsIHdwcmludGMoaW50IHdyb3csaW50IHdj
b2wsaW50IGF0dHIsaW50IGNoKTsNCmludCAgICAgIF9DZGVjbCB3cHJpbnRmKGNvbnN0IGNoYXIg
KmZvcm1hdCwuLi4pOw0KaW50ICAgICAgX0NkZWNsIHdwcmludHMoaW50IHdyb3csaW50IHdjb2ws
aW50IGF0dHIsY2hhciAqc3RyKTsNCmludCAgICAgIF9DZGVjbCB3cHJpbnRzZihpbnQgd3Jvdyxp
bnQgd2NvbCxpbnQgYXR0cixjaGFyICpmb3JtYXQsY2hhciAqc3RyKTsNCmludCAgICAgIF9DZGVj
bCB3cHV0YyhpbnQgY2gpOw0KaW50ICAgICAgX0NkZWNsIHdwdXRucyhjaGFyICpzdHIsaW50IHdp
ZHRoKTsNCmludCAgICAgIF9DZGVjbCB3cHV0cyhjaGFyICpzdHIpOw0KaW50ICAgICAgX0NkZWNs
IHdwdXRzdyhjaGFyICpzdHIpOw0KaW50ICAgICAgX0NkZWNsIHdyZWFkY3VyKGludCAqd3Jvdyxp
bnQgKndjb2wpOw0Kdm9pZCAgICAgX0NkZWNsIHdyZXN0b3JlKGludCAqd2J1Zik7DQppbnQgICAg
ICBfQ2RlY2wgd3JqdXN0cyhpbnQgd3JvdyxpbnQgd2pjb2wsaW50IGF0dHIsY2hhciAqc3RyKTsN
CmludCAgICAgKl9DZGVjbCB3c2F2ZShpbnQgc3JvdyxpbnQgc2NvbCxpbnQgZXJvdyxpbnQgZWNv
bCk7DQppbnQgICAgICBfQ2RlY2wgd3NjYW5mKGNvbnN0IGNoYXIgKmZvcm1hdCwuLi4pOw0KaW50
ICAgICAgX0NkZWNsIHdzY3JvbGwoaW50IGNvdW50LGludCBkaXJlYyk7DQppbnQgICAgICBfQ2Rl
Y2wgd3Njcm9sbGJveChpbnQgd3Nyb3csaW50IHdzY29sLGludCB3ZXJvdyxpbnQgd2Vjb2wsaW50
IGNvdW50LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGRpcmVjdGlvbik7DQppbnQg
ICAgICBfQ2RlY2wgd3NlbHN0cihpbnQgd3JvdyxpbnQgd2NvbCxpbnQgYXR0cixjaGFyICpzdHJh
cnJbXSwNCiAgICAgICAgICAgICAgICAgICAgICAgIGludCBpbml0ZWxlbSk7DQppbnQgICAgICBf
Q2RlY2wgd3NoYWRvZmYodm9pZCk7DQppbnQgICAgICBfQ2RlY2wgd3NoYWRvdyhpbnQgYXR0cik7
DQppbnQgICAgICBfQ2RlY2wgd3NpemUoaW50IG5lcm93LGludCBuZWNvbCk7DQppbnQgICAgICBf
Q2RlY2wgd3NsaWRlKGludCBuc3JvdyxpbnQgbnNjb2wpOw0KaW50ICAgICAgX0NkZWNsIHd0ZXh0
YXR0cihpbnQgYXR0cik7DQppbnQgICAgICBfQ2RlY2wgd3RpdGxlKGNoYXIgKnN0cixpbnQgdHBv
cyxpbnQgdGF0dHIpOw0KaW50ICAgICAgX0NkZWNsIHd1bmhpZGUoV0lORE9XIHdoYW5kbGUpOw0K
aW50ICAgICAgX0NkZWNsIHd1bmxpbmsoV0lORE9XIHcpOw0KaW50ICAgICAgX0NkZWNsIHd2bGlu
ZShpbnQgd3Nyb3csaW50IHdzY29sLGludCBjb3VudCxpbnQgYnR5cGUsaW50IGF0dHIpOw0KaW50
ICAgICAgX0NkZWNsIHd3cHJpbnRzKFdJTkRPVyB3aGFuZGxlLGludCB3cm93LGludCB3Y29sLGlu
dCBhdHRyLGNoYXIgKnN0cik7DQoNCi8qLS0tLS0tLS0tLS0tLVsgZXJyb3IgY29kZXMgcmV0dXJu
ZWQgZnJvbSB3aW5kb3dpbmcgZnVuY3Rpb25zIF0tLS0tLS0tLS0tLS0tKi8NCg0KI2RlZmluZSBX
X05PRVJST1IgICAwICAgICAgIC8qIG5vIGVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAq
Lw0KI2RlZmluZSBXX0VTQ1BSRVNTICAxICAgICAgIC8qIEVzY2FwZSBrZXkgd2FzIHByZXNzZWQg
ICAgICAgICAgICAqLw0KI2RlZmluZSBXX0FMTE9DRVJSICAyICAgICAgIC8qIG1lbW9yeSBhbGxv
Y2F0aW9uIGVycm9yICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PVEZPVU5EICAzICAgICAgIC8q
IHJlY29yZCBub3QgZm91bmQgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PQUNUSVZF
ICA0ICAgICAgIC8qIG5vIGFjdGl2ZSB3aW5kb3cgICAgICAgICAgICAgICAgICAqLw0KI2RlZmlu
ZSBXX0lOVkNPT1JEICA1ICAgICAgIC8qIGludmFsaWQgY29vcmRpbmF0ZXMgICAgICAgICAgICAg
ICAqLw0KI2RlZmluZSBXX0lOVkZPUk1UICA2ICAgICAgIC8qIGludmFsaWQgZm9ybWF0IHN0cmlu
ZyAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PSU5QREVGICA3ICAgICAgIC8qIG5vIGlucHV0
IGZpZWxkcyBkZWZpbmVkICAgICAgICAgICAqLw0KI2RlZmluZSBXX1NUUkxPTkcgICA4ICAgICAg
IC8qIHN0cmluZyB0b28gbG9uZyBmb3Igd2luZG93ICAgICAgICAqLw0KI2RlZmluZSBXX0lOVkJU
WVBFICA5ICAgICAgIC8qIGludmFsaWQgYm94IHR5cGUgICAgICAgICAgICAgICAgICAqLw0KI2Rl
ZmluZSBXX05PQk9SREVSICAxMCAgICAgIC8qIG5vIHdpbmRvdyBib3JkZXIgICAgICAgICAgICAg
ICAgICAqLw0KI2RlZmluZSBXX05PSElEREVOICAxMSAgICAgIC8qIG5vIGhpZGRlbiB3aW5kb3dz
ICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PVEhJREQgICAxMiAgICAgIC8qIHdpbmRv
dyBpcyBub3QgaGlkZGVuICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PU0VMRUNUICAxMyAg
ICAgIC8qIG5vIHNlbGVjdGFibGUgbWVudSBpdGVtcyAgICAgICAgICAqLw0KI2RlZmluZSBXX05P
SVRNREVGICAxNCAgICAgIC8qIG5vIG1lbnUgaXRlbXMgZGVmaW5lZCAgICAgICAgICAgICAqLw0K
I2RlZmluZSBXX05PTU5VRU5EICAxNSAgICAgIC8qIG5vIGVuZCBvZiBtZW51IHNwZWNpZmllZCAg
ICAgICAgICAqLw0KI2RlZmluZSBXX05PTU5VREVGICAxNiAgICAgIC8qIG5vIG1lbnUgZGVmaW5l
ZCAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX05PTU5VQkVHICAxNyAgICAgIC8qIG5v
IGJlZ2luIG9mIG1lbnUgc3BlY2lmaWVkICAgICAgICAqLw0KI2RlZmluZSBXX05PRlJNREVGICAx
OCAgICAgIC8qIG5vIGZvcm0gZGVmaW5lZCAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBX
X05PRlJNQkVHICAxOSAgICAgIC8qIG5vIGJlZ2luIG9mIGZvcm0gc3BlY2lmaWVkICAgICAgICAq
Lw0KI2RlZmluZSBXX05PSExQREVGICAyMCAgICAgIC8qIG5vIGhlbHAgcmVjb3JkIGRlZmluZWQg
ICAgICAgICAgICAqLw0KI2RlZmluZSBXX0hMUFNUS09WICAyMSAgICAgIC8qIGhlbHAgc3RhY2sg
b3ZlcmZsb3cgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX0hMUFNUS1VOICAyMiAgICAgIC8q
IGhlbHAgc3RhY2sgdW5kZXJmbG93ICAgICAgICAgICAgICAqLw0KI2RlZmluZSBXX0RPU0VSUk9S
ICAyMyAgICAgIC8qIERPUyBlcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmlu
ZSBXX05PTUFUQ0ggICAyNCAgICAgIC8qIG5vIGZpbGVzIG1hdGNoZWQgaW5wdXQgZmlsZXNwZWMg
ICAqLw0KI2RlZmluZSBXX0lOVlRBR0lEICAyNSAgICAgIC8qIGludmFsaWQgdGFnIGlkZW50aWZp
ZXIgICAgICAgICAgICAqLw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIA0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVsgd2luZG93IGJvcmRlciBpZGVudGlmaWVy
cyBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVFBfQk9SRCAgMCAgICAgIC8q
IHRvcCBib3JkZXIgICAgKi8NCiNkZWZpbmUgQlRfQk9SRCAgMSAgICAgIC8qIGJvdHRvbSBib3Jk
ZXIgKi8NCiNkZWZpbmUgTFRfQk9SRCAgMiAgICAgIC8qIGxlZnQgYm9yZGVyICAgKi8NCiNkZWZp
bmUgUlRfQk9SRCAgMyAgICAgIC8qIHJpZ2h0IGJvcmRlciAgKi8NCg0KLyotLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLVsgZGlyZWN0aW9uIGNvZGVzIF0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0qLw0KDQojZGVmaW5lIERfRE9XTiAgICAwDQojZGVmaW5lIERfVVAgICAgICAxDQojZGVm
aW5lIERfTEVGVCAgICAyDQojZGVmaW5lIERfUklHSFQgICAzDQojZGVmaW5lIFNET1dOICAgICBE
X0RPV04gICAgLyogc2Nyb2xsIGRvd24gKi8NCiNkZWZpbmUgU1VQICAgICAgIERfVVAgICAgICAv
KiBzY3JvbGwgdXAgICAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS1bIG1lbnUgaXRlbSBy
ZWNvcmQgZGVmaW5pdGlvbiBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCnN0cnVjdCBfaXRl
bV90IHsNCiAgICBzdHJ1Y3QgX2l0ZW1fdCAqcHJldjsgICAvKiBwb2ludGVyIHRvIHByZXZpb3Vz
IHJlY29yZCAgICAgICovDQogICAgc3RydWN0IF9pdGVtX3QgKm5leHQ7ICAgLyogcG9pbnRlciB0
byBuZXh0IHJlY29yZCAgICAgICAgICAqLw0KICAgIHZvaWQgKmNoaWxkOyAgICAgICAgICAgIC8q
IHBvaW50ZXIgdG8gc3VibWVudSdzIHJlY29yZCAgICAgKi8NCiAgICBjaGFyICpzdHI7ICAgICAg
ICAgICAgICAvKiBhZGRyZXNzIG9mIHNlbGVjdGlvbiBzdHJpbmcgICAgICovDQogICAgY2hhciAq
ZGVzYzsgICAgICAgICAgICAgLyogdGV4dCBkZXNjcmlwdGlvbiBvZiBtZW51IG9wdGlvbiAqLw0K
ICAgIHZvaWQgKCpzZWxlY3QpICh2b2lkKTsgIC8qIGFkZHJlc3Mgb2Ygc2VsZWN0aW9uIGZ1bmN0
aW9uICAgKi8NCiAgICB2b2lkICgqYmVmb3JlKSAodm9pZCk7ICAvKiBhZGRyZXNzIG9mICJiZWZv
cmUiIGZ1bmN0aW9uICAgICovDQogICAgdm9pZCAoKmFmdGVyKSAgKHZvaWQpOyAgLyogYWRkcmVz
cyBvZiAiYWZ0ZXIiICBmdW5jdGlvbiAgICAqLw0KICAgIHVuc2lnbmVkIGhvdGtleTsgICAgICAg
IC8qIGhvdCBrZXkgdG8gc2VsZWN0IGZ1bmN0aW9uICAgICAgKi8NCiAgICBpbnQgdGFnaWQ7ICAg
ICAgICAgICAgICAvKiB0YWcgaWRlbnRpZmllciAgICAgICAgICAgICAgICAgICovDQogICAgaW50
IGhlbHA7ICAgICAgICAgICAgICAgLyogaGVscCBjYXRlZ29yeSBudW1iZXIgICAgICAgICAgICAq
Lw0KICAgIGludCB3cm93OyAgICAgICAgICAgICAgIC8qIHN0YXJ0IG9mIHRleHQgLSB3aW5kb3cg
cm93ICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHdjb2w7ICAgICAvKiBzdGFydCBvZiB0ZXh0
IC0gd2luZG93IGNvbHVtbiAgICovDQogICAgdW5zaWduZWQgY2hhciBzY2hhcjsgICAgLyogcXVp
Y2sgc2VsZWN0aW9uIGNoYXJhY3RlciAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZm1hc2s7
ICAgIC8qIHNwZWNpYWwgZmVhdHVyZSBtYXNrICAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBj
aGFyIGR3cm93OyAgICAvKiBkZXNjcmlwdGlvbiB3aW5kb3cgcm93ICAgICAgICAgICovDQogICAg
dW5zaWduZWQgY2hhciBkd2NvbDsgICAgLyogZGVzY3JpcHRpb24gd2luZG93IGNvbHVtbiAgICAg
ICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZGF0dHI7ICAgIC8qIGRlc2NyaXB0aW9uIGF0dHJpYnV0
ZSAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHJlZGlzcDsgICAvKiByZWRpc3BsYXkg
ZmxhZyAgICAgICAgICAgICAgICAgICovDQp9Ow0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tWyB3
aW5kb3cgbWVudSByZWNvcmQgZGVmaW5pdGlvbiBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoN
CnN0cnVjdCBfbWVudV90IHsNCiAgICBzdHJ1Y3QgX21lbnVfdCAqcHJldjsgICAgICAgLyogcG9p
bnRlciB0byBwcmV2IG1lbnUgc3RydWN0dXJlICAgKi8NCiAgICBzdHJ1Y3QgX21lbnVfdCAqbmV4
dDsgICAgICAgLyogcG9pbnRlciB0byBuZXh0IG1lbnUgc3RydWN0dXJlICAgKi8NCiAgICBzdHJ1
Y3QgX21lbnVfdCAqcGFyZW50OyAgICAgLyogcG9pbnRlciB0byBwYXJlbnQgbWVudSAgICAgICAg
ICAgKi8NCiAgICBzdHJ1Y3QgX2l0ZW1fdCAqaXRlbTsgICAgICAgLyogcG9pbnRlciB0byBoZWFk
IG1lbnUgaXRlbSAgICAgICAgKi8NCiAgICBzdHJ1Y3QgX2l0ZW1fdCAqY2l0ZW07ICAgICAgLyog
cG9pbnRlciB0byBjdXJyZW50IG1lbnUgaXRlbSAgICAgKi8NCiAgICB2b2lkICgqb3BlbikgKHZv
aWQpOyAgICAgICAgLyogYWRkcmVzcyBvZiBwb3N0LW9wZW5pbmcgZnVuY3Rpb24gKi8NCiAgICBp
bnQgdGFnY3VycjsgICAgICAgICAgICAgICAgLyogdGFnIElEIG9mIGl0ZW0gc2VsZWN0aW9uIGJh
ciBvbiAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHVzZWN1cnI7ICAgICAgLyogd2lsbCBtZW51IHVz
ZSBjdXJyZW50IHdpbmRvdz8gICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHNyb3c7ICAgICAgICAg
Lyogc3RhcnRpbmcgcm93IG9mIG1lbnUgd2luZG93ICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFy
IHNjb2w7ICAgICAgICAgLyogc3RhcnRpbmcgY29sdW1uIG9mIG1lbnUgd2luZG93ICAgKi8NCiAg
ICB1bnNpZ25lZCBjaGFyIGVyb3c7ICAgICAgICAgLyogZW5kaW5nIHJvdyBvZiBtZW51IHdpbmRv
dyAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGVjb2w7ICAgICAgICAgLyogZW5kaW5nIGNv
bHVtbiBvZiBtZW51IHdpbmRvdyAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGJ0eXBlOyAgICAg
ICAgLyogbWVudSB3aW5kb3cgYm9yZGVyIHR5cGUgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBj
aGFyIGJhdHRyOyAgICAgICAgLyogbWVudSB3aW5kb3cgYm9yZGVyIGF0dHJpYnV0ZSAgICAgKi8N
CiAgICB1bnNpZ25lZCBjaGFyIHdhdHRyOyAgICAgICAgLyogbWVudSB3aW5kb3cgYXR0cmlidXRl
ICAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIG1lbnV0eXBlOyAgICAgLyogbWVudSB0
eXBlIG1hc2sgICAgICAgICAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGJhcndpZHRo
OyAgICAgLyogd2lkdGggb2YgbWVudSBiYXIgb3IgemVybyAgICAgICAgKi8NCiAgICB1bnNpZ25l
ZCBjaGFyIHRleHRwb3M7ICAgICAgLyogb2Zmc2V0IG9mIHRleHQgZnJvbSBzdGFydCBvZiBiYXIg
Ki8NCiAgICB1bnNpZ25lZCBjaGFyIHRleHRhdHRyOyAgICAgLyogYXR0cmlidXRlIG9mIG1lbnUg
dGV4dCAgICAgICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIHNjaGFyYXR0cjsgICAgLyogYXR0
cmlidXRlIG9mIHNlbGVjdGlvbiBjaGFyYWN0ZXIgKi8NCiAgICB1bnNpZ25lZCBjaGFyIG5vc2Vs
YXR0cjsgICAgLyogbm9uLXNlbGVjdGFibGUgdGV4dCBhdHRyaWJ1dGUgICAgKi8NCiAgICB1bnNp
Z25lZCBjaGFyIGJhcmF0dHI7ICAgICAgLyogYXR0cmlidXRlIG9mIHNlbGVjdGlvbiBiYXIgICAg
ICAgKi8NCn07DQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1bIHdpbmRvdyBoZWxwIGluZm9ybWF0
aW9uIHJlY29yZCBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0Kc3RydWN0IF9oZWxwX3Qgew0K
ICAgIGludCBoZWxwWzIwXTsgICAgICAgICAgICAgICAvKiBoZWxwIHN0YWNrICAgICAgICAgICAg
ICAgICAqLw0KICAgIGNoYXIgKmZpbGU7ICAgICAgICAgICAgICAgICAvKiBoZWxwIGZpbGUgbmFt
ZSAgICAgICAgICAgICAqLw0KICAgIGludCBoZWxwcHRyOyAgICAgICAgICAgICAgICAvKiBoZWxw
IHN0YWNrIHBvaW50ZXIgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGludCAga2V5OyAgICAgICAg
ICAvKiBoZWxwIGhvdCBrZXkgICAgICAgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgd2lu
YXR0cjsgICAgICAvKiBoZWxwIHdpbmRvdyBhdHRyaWJ1dGUgICAgICAqLw0KICAgIHVuc2lnbmVk
IGNoYXIgdGV4dGF0dHI7ICAgICAvKiBoZWxwIHdpbmRvdyB0ZXh0IGF0dHJpYnV0ZSAqLw0KICAg
IHVuc2lnbmVkIGNoYXIgc2VsYXR0cjsgICAgICAvKiBzZWxlY3Rpb24gdGV4dCBhdHRyaWJ1dGUg
ICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgYmFyYXR0cjsgICAgICAvKiBzZWxlY3Rpb24gYmFyIGF0
dHJpYnV0ZSAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgc3JvdzsgICAgICAgICAvKiBoZWxwIHdp
bmRvdyBzdGFydCByb3cgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgc2NvbDsgICAgICAgICAv
KiBoZWxwIHdpbmRvdyBzdGFydCBjb2x1bW4gICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZXJvdzsg
ICAgICAgICAvKiBoZWxwIHdpbmRvdyBlbmQgcm93ICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNo
YXIgZWNvbDsgICAgICAgICAvKiBoZWxwIHdpbmRvdyBlbmQgY29sdW1uICAgICAqLw0KICAgIHVu
c2lnbmVkIGNoYXIgYnR5cGU7ICAgICAgICAvKiBoZWxwIHdpbmRvdyBib3ggdHlwZSAgICAgICAq
Lw0KICAgIHVuc2lnbmVkIGNoYXIgdGl0bGU7ICAgICAgICAvKiBkaXNwbGF5ICJIZWxwIiB0aXRs
ZT8gICAgICAqLw0KICAgIHZvaWQgKCpvcGVuKSAodm9pZCk7ICAgICAgICAvKiBwb2ludGVyIHRv
IG9wZW4gZnVuY3Rpb24gICAqLw0KfTsNCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVsgd2lu
ZG93IGluZm9ybWF0aW9uIHJlY29yZCBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1
Y3QgX3dpbmZvX3Qgew0KICAgIHN0cnVjdCBfd3JlY190ICAqYWN0aXZlOyAgICAvKiBwb2ludGVy
IHRvIGFjdGl2ZSB3aW5kb3cgICAgICAgICAqLw0KICAgIHN0cnVjdCBfd3JlY190ICAqaGlkZGVu
OyAgICAvKiBwb2ludGVyIHRvIGhlYWQgaGlkZGVuIHdpbmRvdyAgICAqLw0KICAgIHN0cnVjdCBf
bWVudV90ICAqbWVudTsgICAgICAvKiBwb2ludGVyIHRvIGhlYWQgbWVudSByZWNvcmQgICAgICAq
Lw0KICAgIHN0cnVjdCBfbWVudV90ICAqY21lbnU7ICAgICAvKiBwb2ludGVyIHRvIGN1cnJlbnQg
bWVudSByZWNvcmQgICAqLw0KICAgIHN0cnVjdCBfaGVscF90ICAqaGVscHRyOyAgICAvKiBwb2lu
dGVyIHRvIGhlbHAgaW5mbyByZWNvcmQgICAgICAqLw0KICAgIFdJTkRPVyBoYW5kbGU7ICAgICAg
ICAgICAgICAvKiBsYXN0IGhhbmRsZSBnaXZlbiB0byBhIHdpbmRvdyAgICAqLw0KICAgIGludCBt
YXhmaWxlczsgICAgICAgICAgICAgICAvKiBtYXggZmlsZXMgYWxsb3dlZCBpbiB3cGlja2ZpbGUo
KSAqLw0KICAgIGludCBoZWxwOyAgICAgICAgICAgICAgICAgICAvKiBjdXJyZW50IGhlbHAgY2F0
ZWdvcnkgICAgICAgICAgICAqLw0KICAgIGludCBlcnJubzsgICAgICAgICAgICAgICAgICAvKiBl
cnJvciBudW0gZnJvbSBsYXN0IHdpbmRvdyBmdW5jICAqLw0KICAgIGludCB0b3RhbDsgICAgICAg
ICAgICAgICAgICAvKiB0b3RhbCBudW1iZXIgb2Ygb3BlbiB3aW5kb3dzICAgICAqLw0KICAgIGlu
dCBtbGV2ZWwsaWxldmVsOyAgICAgICAgICAvKiBzeXN0ZW0gdmFyaWFibGVzIHVzZWQgaW4gbWVu
dXMgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZXNjOyAgICAgICAgICAvKiBjaGVjayBmb3IgRXNj
IGluIGlucHV0IGZ1bmNpb25zPyAqLw0KICAgIHVuc2lnbmVkIGNoYXIgdGFid2lkdGg7ICAgICAv
KiB3aW5kb3cgVFRZIG91dHB1dCB0YWIgd2lkdGggICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIg
ZmlsbGNoOyAgICAgICAvKiBjaGFyYWN0ZXIgdG8gZmlsbCB3aW5kb3dzIHdpdGggICAqLw0KfTsN
Cg0KZXh0ZXJuIHN0cnVjdCBfd2luZm9fdCBfTmVhciBfQ2RlY2wgX3dpbmZvOw0KDQovKi0tLS0t
LS0tLS0tLS0tLS0tLS1bIGZtYXNrIGRlZmluaXRpb25zIGZvciB3bWVudWl0ZW0oKSBdLS0tLS0t
LS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgTV9IQVNQRCAgICAgMSAgIC8qIGhhcyBwdWxsLWRv
d24gbWVudSBhdHRhY2hlZCAgICovDQojZGVmaW5lIE1fTk9TRUwgICAgIDIgICAvKiBpcyBub3Qg
c2VsZWN0YWJsZSAgICAgICAgICAgICAqLw0KI2RlZmluZSBNX0NMT1NFICAgICA0ICAgLyogY2xv
c2UgbWVudSBhZnRlciBzZWxlY3QgZnVuYyAgKi8NCiNkZWZpbmUgTV9DTEFMTCAgICAgOCAgIC8q
IGNsb3NlIGFsbCBtZW51cyB3aGVuIHNlbGVjdGVkICovDQojZGVmaW5lIE1fQ0xPU0IgICAgMTYg
ICAvKiBjbG9zZSBtZW51IGJlZm9yZSBzZWxlY3QgZnVuYyAqLw0KDQovKi0tLS0tLS0tLS0tLS0t
LS0tLVsgbWVudXR5cGUgZGVmaW5pdGlvbnMgZm9yIHdtZW51ZW5kKCkgXS0tLS0tLS0tLS0tLS0t
LS0tLSovDQoNCiNkZWZpbmUgTV9IT1JaICAgICAgMSAgICAgICAvKiBob3Jpem9udGFsIG1lbnUg
ICAgICAgICAqLw0KI2RlZmluZSBNX1ZFUlQgICAgICAyICAgICAgIC8qIHZlcnRpY2FsIG1lbnUg
ICAgICAgICAgICovDQojZGVmaW5lIE1fT01OSSAgICAgIDcgICAgICAgLyogb21uaWRpcmVjdGlv
bmFsIG1lbnUgICAgKi8NCiNkZWZpbmUgTV9QRCAgICAgICAgOCAgICAgICAvKiBwdWxsLWRvd24g
bWVudSAgICAgICAgICAqLw0KI2RlZmluZSBNX05PUVMgICAgICAxNiAgICAgIC8qIGRpc2FibGUg
cXVpY2sgc2VsZWN0aW9uICovDQojZGVmaW5lIE1fU0FWRSAgICAgIDMyICAgICAgLyogc2F2ZSBs
YXN0IGJhciBwb3NpdGlvbiAgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS1bIHNwZWNpYWwgcmV0
dXJuIGNvZGVzIGZyb20gd21lbnVnZXQoKSBdLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQojZGVmaW5l
IE1fRVhJVCAgICAgIDMyNzY0ICAgLyogZXhpdCBtZW51ICAgICAgICAgICAgICAgKi8NCiNkZWZp
bmUgTV9FWElUQUxMICAgMzI3NjUgICAvKiBleGl0IGFsbCBtZW51cyAgICAgICAgICAqLw0KI2Rl
ZmluZSBNX1BSRVZQRCAgICAzMjc2NiAgIC8qIHByZXZpb3VzIHB1bGwtZG93biBtZW51ICovDQoj
ZGVmaW5lIE1fTkVYVFBEICAgIDMyNzY3ICAgLyogbmV4dCBwdWxsLWRvd24gbWVudSAgICAgKi8N
Cg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS1bIHdpbmRvdyBpbnB1dCBmaWVsZCBkZWZpbml0aW9u
IF0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1Y3QgX2ZpZWxkX3Qgew0KICAgIHN0cnVj
dCBfZmllbGRfdCAqcHJldjsgICAgICAvKiBwb2ludGVyIHRvIHByZXZpb3VzIGZpZWxkICAgICAg
ICovDQogICAgc3RydWN0IF9maWVsZF90ICpuZXh0OyAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCBm
aWVsZCAgICAgICAgICAgKi8NCiAgICBjaGFyICpzdHI7ICAgICAgICAgICAgICAgICAgLyogYWRk
cmVzcyBvZiByZWNlaXZpbmcgc3RyaW5nICAgICAqLw0KICAgIGNoYXIgKmJ1ZjsgICAgICAgICAg
ICAgICAgICAvKiBhZGRyZXNzIG9mIHRlbXAgcmVjZWl2ZSBzdHJpbmcgICovDQogICAgY2hhciAq
Zm9ybWF0OyAgICAgICAgICAgICAgIC8qIGlucHV0IGZpZWxkIGZvcm1hdCBzdHJpbmcgICAgICAg
Ki8NCiAgICBpbnQgKCp2YWxpZGF0ZSkgKGNoYXIgKik7ICAgLyogYWRkcmVzcyBvZiB2YWxpZGF0
aW9uIGZ1bmN0aW9uICAqLw0KICAgIHZvaWQgKCpiZWZvcmUpICh2b2lkKTsgICAgICAvKiBhZGRy
ZXNzIG9mICJiZWZvcmUiIGZ1bmN0aW9uICAgICovDQogICAgdm9pZCAoKmFmdGVyKSAgKHZvaWQp
OyAgICAgIC8qIGFkZHJlc3Mgb2YgImFmdGVyIiAgZnVuY3Rpb24gICAgKi8NCiAgICBpbnQgaGVs
cDsgICAgICAgICAgICAgICAgICAgLyogaGVscCBjYXRlZ29yeSBudW1iZXIgICAgICAgICAgICAq
Lw0KICAgIGludCBsZW5idWY7ICAgICAgICAgICAgICAgICAvKiBsZW5ndGggb2YgYnVmZmVyICAg
ICAgICAgICAgICAgICovDQogICAgaW50IGxlbmZsZDsgICAgICAgICAgICAgICAgIC8qIGxlbmd0
aCBvZiBzY3JlZW4gaW5wdXQgZmllbGQgICAgKi8NCiAgICBpbnQgbGVuZm10OyAgICAgICAgICAg
ICAgICAgLyogbGVuZ3RoIG9mIGZvcm1hdCBzdHJpbmcgICAgICAgICAqLw0KICAgIHVuc2lnbmVk
IGNoYXIgd3JvdzsgICAgICAgICAvKiBzdGFydCBvZiBpbnB1dCAtIHdpbmRvdyByb3cgICAgICov
DQogICAgdW5zaWduZWQgY2hhciB3Y29sOyAgICAgICAgIC8qIHN0YXJ0IG9mIGlucHV0IC0gd2lu
ZG93IGNvbHVtbiAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIG1vZGU7ICAgICAgICAgLyogMD1pbml0
LCAxPXVwZGF0ZSwgMj1jb25kIHVwZGF0ZSAqLw0KICAgIHVuc2lnbmVkIGNoYXIgZGVjcG9zOyAg
ICAgICAvKiBkZWNpbWFsIHBvc2l0aW9uIChudW1lcmljKSAgICAgICovDQogICAgdW5zaWduZWQg
Y2hhciByZWRpc3A7ICAgICAgIC8qIHJlZGlzcGxheSBmbGFnICAgICAgICAgICAgICAgICAgKi8N
CiAgICBjaGFyIGZjb252OyAgICAgICAgICAgICAgICAgLyogZmllbGQgY29udmVyc2lvbiBjaGFy
YWN0ZXIgICAgICAqLw0KfTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KLyot
LS0tLS0tLS0tLS0tLS0tLS0tWyB3aW5kb3cgZGF0YSBlbnRyeSBmb3JtIGRlZmluaXRpb24gXS0t
LS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1Y3QgX2Zvcm1fdCB7DQogICAgdW5zaWduZWQgKCpn
ZXRrZXkpIChpbnQgKik7IC8qIHBvaW50ZXIgdG8gYWx0ZXJuYXRlIGdldCBmdW5jICAgKi8NCiAg
ICBzdHJ1Y3QgX2Zvcm1fdCAgKnByZXY7ICAgICAgLyogcG9pbnRlciB0byBwcmV2aW91cyBmb3Jt
IHJlY29yZCAqLw0KICAgIHN0cnVjdCBfZm9ybV90ICAqbmV4dDsgICAgICAvKiBwb2ludGVyIHRv
IG5leHQgZm9ybSByZWNvcmQgICAgICovDQogICAgc3RydWN0IF9maWVsZF90ICpmaWVsZDsgICAg
IC8qIHBvaW50ZXIgdG8gaGVhZCBmaWVsZCByZWNvcmQgICAgKi8NCiAgICBzdHJ1Y3QgX2ZpZWxk
X3QgKmNmaWVsZDsgICAgLyogcG9pbnRlciB0byBjdXJyZW50IGZpZWxkIHJlY29yZCAqLw0KICAg
IHVuc2lnbmVkICp0ZXJta2V5OyAgICAgICAgICAvKiBhZGRyIG9mIGludCBmb3IgdGVybWluYXRp
bmcga2V5ICovDQogICAgY2hhciAqcGZvcm1hdDsgICAgICAgICAgICAgIC8qIGZvcm1hdCBzdHJp
bmcgcG9pbnRlciAgICAgICAgICAgKi8NCiAgICBjaGFyICpwYnVmOyAgICAgICAgICAgICAgICAg
LyogYnVmZmVyIHN0cmluZyBwb2ludGVyICAgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIg
Y3dyb3c7ICAgICAgICAvKiBjdXJyZW50IHdpbmRvdyByb3cgICAgICAgICAgICAgICovDQogICAg
dW5zaWduZWQgY2hhciBjd2NvbDsgICAgICAgIC8qIGN1cnJlbnQgd2luZG93IGNvbHVtbiAgICAg
ICAgICAgKi8NCiAgICB1bnNpZ25lZCBjaGFyIGRlY2ltYWw7ICAgICAgLyogZGVjaW1hbCBmaWVs
ZCBmbGFnICAgICAgICAgICAgICAqLw0KICAgIHVuc2lnbmVkIGNoYXIgaW5zZXJ0OyAgICAgICAv
KiBpbnNlcnQgbW9kZSBmbGFnICAgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBm
aWVsZGF0dHI7ICAgIC8qIGZpZWxkIGF0dHJpYnV0ZSAgICAgICAgICAgICAgICAgKi8NCiAgICB1
bnNpZ25lZCBjaGFyIHRleHRhdHRyOyAgICAgLyogdGV4dCBhdHRyaWJ1dGUgICAgICAgICAgICAg
ICAgICAqLw0KfTsNCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tWyBzdHJ1Y3R1cmUgb2Ygd2lu
ZG93IHJlY29yZHMgXS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQpzdHJ1Y3QgX3dyZWNfdCB7
DQogICAgc3RydWN0IF93cmVjX3QgKnByZXY7ICAgLyogcG9pbnRlciB0byBwcmV2aW91cyB3aW5k
b3cgcmVjb3JkICovDQogICAgc3RydWN0IF93cmVjX3QgKm5leHQ7ICAgLyogcG9pbnRlciB0byBu
ZXh0IHdpbmRvdyByZWNvcmQgICAgICovDQogICAgc3RydWN0IF9mb3JtX3QgKmZvcm07ICAgLyog
cG9pbnRlciB0byBoZWFkIGZvcm0gcmVjb3JkICAgICAgICovDQogICAgaW50ICp3YnVmOyAgICAg
ICAgICAgICAgLyogYWRkcmVzcyBvZiB3aW5kb3cncyBidWZmZXIgICAgICAgICovDQogICAgaW50
ICp3c2J1ZjsgICAgICAgICAgICAgLyogYWRkcmVzcyBvZiB3aW5kb3cgc2hhZG93J3MgYnVmZmVy
ICovDQogICAgY2hhciAqdGl0bGU7ICAgICAgICAgICAgLyogYWRkcmVzcyBvZiB3aW5kb3cncyB0
aXRsZSBzdHJpbmcgICovDQogICAgV0lORE9XIHdoYW5kbGU7ICAgICAgICAgLyogd2luZG93J3Mg
aGFuZGxlICAgICAgICAgICAgICAgICAgICovDQogICAgaW50IGhlbHA7ICAgICAgICAgICAgICAg
LyogaGVscCBjYXRlZ29yeSBudW1iZXIgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hh
ciBzcm93OyAgICAgLyogc3RhcnQgcm93IG9mIHdpbmRvdyAgICAgICAgICAgICAgICovDQogICAg
dW5zaWduZWQgY2hhciBzY29sOyAgICAgLyogc3RhcnQgY29sdW1uIG9mIHdpbmRvdyAgICAgICAg
ICAgICovDQogICAgdW5zaWduZWQgY2hhciBlcm93OyAgICAgLyogZW5kIHJvdyBvZiB3aW5kb3cg
ICAgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBlY29sOyAgICAgLyogZW5kIGNv
bHVtbiBvZiB3aW5kb3cgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBidHlwZTsg
ICAgLyogd2luZG93J3MgYm94IHR5cGUgICAgICAgICAgICAgICAgICovDQogICAgdW5zaWduZWQg
Y2hhciB3YXR0cjsgICAgLyogd2luZG93J3MgaW5pdGlhbCB0ZXh0IGF0dHJpYnV0ZSAgICovDQog
ICAgdW5zaWduZWQgY2hhciBiYXR0cjsgICAgLyogYXRycmlidXRlIG9mIHdpbmRvdydzIGJvcmRl
ciAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBib3JkZXI7ICAgLyogaGFzIGJvcmRlcj8gIDAg
PSBubywgMSA9IHllcyAgICAgICovDQogICAgdW5zaWduZWQgY2hhciByb3c7ICAgICAgLyogd2lu
ZG93J3MgY3VycmVudCBjdXJzb3Igcm93ICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciBjb2x1
bW47ICAgLyogd2luZG93J3MgY3VycmVudCBjdXJzb3IgY29sdW1uICAgICovDQogICAgdW5zaWdu
ZWQgY2hhciBhdHRyOyAgICAgLyogd2luZG93J3MgY3VycmVudCB0ZXh0IGF0dHJpYnV0ZSAgICov
DQogICAgdW5zaWduZWQgY2hhciB0cG9zOyAgICAgLyogcG9zaXRpb24gb2Ygd2luZG93J3MgdGl0
bGUgICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciB0YXR0cjsgICAgLyogYXR0cmlidXRlIG9m
IHdpbmRvdydzIHRpdGxlICAgICAgICovDQogICAgdW5zaWduZWQgY2hhciB3c2F0dHI7ICAgLyog
YXR0cmlidXRlIG9mIHdpbmRvdydzIHNoYWRvdyAgICAgICovDQp9OyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIA0KDQovKi0tLS0tLS0tLS0tLVsgd2luZG93IHRpdGxlIHBvc2l0aW9u
IGRlZmluaXRpb25zIGZvciB3dGl0bGUoKSBdLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVExF
RlQgICAgICAgMSAgIC8qIGxlZnQganVzdGlmaWVkICAqLw0KI2RlZmluZSBUQ0VOVEVSICAgICAy
ICAgLyogY2VudGVyZWQgICAgICAgICovDQojZGVmaW5lIFRSSUdIVCAgICAgIDMgICAvKiByaWdo
dCBqdXN0aWZpZWQgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1bIGRlZmluaXRpb24g
b2YgTlVMTCBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQojaWYgIWRlZmluZWQo
TlVMTCkNCiAgICAjaWYgZGVmaW5lZChfX1RVUkJPQ19fKSAgICAgICAgICAgICAgICAgICAgIC8q
IFR1cmJvIEMgKi8NCiAgICAgICAgI2lmIGRlZmluZWQoX19USU5ZX18pIHx8IGRlZmluZWQoX19T
TUFMTF9fKSB8fCBkZWZpbmVkKF9fTUVESVVNX18pDQogICAgICAgICAgICAjZGVmaW5lIE5VTEwg
ICAgMA0KICAgICAgICAjZWxzZQ0KICAgICAgICAgICAgI2RlZmluZSBOVUxMICAgIDBMDQogICAg
ICAgICNlbmRpZg0KICAgICNlbGlmIGRlZmluZWQoX19aVENfXykgICAgICAgICAgICAgICAgICAg
ICAgLyogWm9ydGVjaCBDKysgKi8NCiAgICAgICAgI2lmZGVmIExQVFINCiAgICAgICAgICAgICNk
ZWZpbmUgTlVMTCAgICAwTA0KICAgICAgICAjZWxzZQ0KICAgICAgICAgICAgI2RlZmluZSBOVUxM
ICAgIDANCiAgICAgICAgI2VuZGlmDQogICAgI2VsaWYgZGVmaW5lZChNX0k4NikgJiYgIWRlZmlu
ZWQoX19aVENfXykgICAvKiBNaWNyb3NvZnQgQy9RdWlja0MgKi8NCiAgICAgICAgI2lmIGRlZmlu
ZWQoTV9JODZTTSkgfHwgZGVmaW5lZChNX0k4Nk1NKQ0KICAgICAgICAgICAgI2RlZmluZSBOVUxM
ICAgIDANCiAgICAgICAgI2Vsc2UNCiAgICAgICAgICAgICNkZWZpbmUgTlVMTCAgICAwTA0KICAg
ICAgICAjZW5kaWYNCiAgICAjZW5kaWYNCiNlbmRpZg0KDQovKi0tLS0tLS0tLS0tLS0tWyBhdHRy
aWJ1dGUgY29kZXMgZm9yIGZ1bmN0aW9ucyB0aGF0IHVzZSB0aGVtIF0tLS0tLS0tLS0tLS0tLSov
DQoNCiNpZiAgICAgIWRlZmluZWQoQkxBQ0spICAgICAvKiBmb3JlZ3JvdW5kIGNvbG9ycyAqLw0K
I2RlZmluZSBCTEFDSyAgICAgICAwICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBCTFVFICAg
ICAgICAxDQojZGVmaW5lIEdSRUVOICAgICAgIDINCiNkZWZpbmUgQ1lBTiAgICAgICAgMw0KI2Rl
ZmluZSBSRUQgICAgICAgICA0DQojZGVmaW5lIE1BR0VOVEEgICAgIDUNCiNkZWZpbmUgQlJPV04g
ICAgICAgNg0KI2RlZmluZSBZRUxMT1cgICAgICAxNA0KI2RlZmluZSBXSElURSAgICAgICAxNQ0K
I2VuZGlmDQojaWYgICAgICFkZWZpbmVkKExHUkVZKQ0KI2RlZmluZSBMR1JFWSAgICAgICA3ICAg
ICAgIC8qIENYTCBhYmJyZXZpYXRlcyBMSUdIVCBhcyBMICAgICovDQojZGVmaW5lIERHUkVZICAg
ICAgIDggICAgICAgLyogYW5kIERBUksgYXMgRCBmb3IgZWFzZSBvZiB1c2UgKi8NCiNkZWZpbmUg
TEJMVUUgICAgICAgOQ0KI2RlZmluZSBMR1JFRU4gICAgICAxMA0KI2RlZmluZSBMQ1lBTiAgICAg
ICAxMQ0KI2RlZmluZSBMUkVEICAgICAgICAxMg0KI2RlZmluZSBMTUFHRU5UQSAgICAxMw0KDQoj
ZGVmaW5lIF9CTEFDSyAgICAgIDAgICAgICAgLyogYmFja2dyb3VuZCBjb2xvcnMgKi8NCiNkZWZp
bmUgX0JMVUUgICAgICAgMTYNCiNkZWZpbmUgX0dSRUVOICAgICAgMzINCiNkZWZpbmUgX0NZQU4g
ICAgICAgNDgNCiNkZWZpbmUgX1JFRCAgICAgICAgNjQNCiNkZWZpbmUgX01BR0VOVEEgICAgODAN
CiNkZWZpbmUgX0JST1dOICAgICAgOTYNCiNkZWZpbmUgX0xHUkVZICAgICAgMTEyDQojZW5kaWYN
Cg0KI2lmICAgICAhZGVmaW5lZChCTElOSykNCiNkZWZpbmUgQkxJTksgICAgICAgMTI4ICAgICAv
KiBibGluayBhdHRyaWJ1dGUgKi8NCiNlbmRpZg0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS1bIG1hY3JvIGZ1bmN0aW9ucyBdLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoN
CiNpZiAhZGVmaW5lZChNS19GUCkNCiNkZWZpbmUgTUtfRlAoc2VnLG9mcykgICAgICAoKHZvaWQg
ZmFyICopICgoKHVuc2lnbmVkIGxvbmcpKHNlZykgPDwgMTYpIHwgXA0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICh1bnNpZ25lZCkob2ZzKSkpDQojZW5kaWYNCiNkZWZpbmUgd2NsZWFyKCkg
ICAgICAgICAgICB3Y2NsZWFyKF93aW5mby5hY3RpdmUtPndhdHRyKQ0KI2RlZmluZSB3ZmlsbGNo
KGEpICAgICAgICAgIChfd2luZm8uZmlsbGNoPWEpDQojZGVmaW5lIHdoZWxwdW5kZWYoKSAgICAg
ICAgd2hlbHBkZWYoTlVMTCwwLDAsMCwwLDAsTlVMTCkNCiNkZWZpbmUgd2lucGZjdXJyKCkgICAg
ICAgICAoX3dpbmZvLmFjdGl2ZS0+Zm9ybS0+Y2ZpZWxkKQ0KI2RlZmluZSB3aXNhY3RpdihhKSAg
ICAgICAgIChhPT1fd2luZm8uYWN0aXZlLT53aGFuZGxlKQ0KI2RlZmluZSB3bWVudW1jdXJyKCkg
ICAgICAgIChfd2luZm8uY21lbnUpDQojZGVmaW5lIHdtZW51aWN1cnIoKSAgICAgICAgKHdtZW51
bWN1cnIoKS0+Y2l0ZW0pDQojZGVmaW5lIHdzZXRlc2MoYSkgICAgICAgICAgKF93aW5mby5lc2M9
YSkNCiNkZWZpbmUgd3RhYndpZHRoKGEpICAgICAgICAoX3dpbmZvLnRhYndpZHRoPSgoYT09MCk/
MTphKSkNCg==


----- End Included Message -----