[OpenAFS-devel] s390x Port for Openafs cvs
Sven Oehme
oehmes@de.ibm.com
Wed, 11 Aug 2004 16:16:10 +0200
--=_mixed 004E60E6C1256EED_=
Content-Type: multipart/alternative; boundary="=_alternative 004E60E6C1256EED_="
--=_alternative 004E60E6C1256EED_=
Content-Type: text/plain; charset="US-ASCII"
Hy ,
here is the patch for s390x for the actual cvs , developed by my team .
Sven
-------------------------------------------------------------------------------------------------------------------------
Dept. A141, TG/SSG EMEA AIS Strategy and Architecture
Development Leader Stonehenge
IBM intranet ---> http://w3.ais.mainz.de.ibm.com/stonehenge/
internet ---> http://www-5.ibm.com/services/de/its/filestore.html
Phone (+49)-6131-84-3151
Fax (+49)-6131-84-6708
Mobil (+49)-171-970-6664
E-Mail : oehmes@de.ibm.com
--=_alternative 004E60E6C1256EED_=
Content-Type: text/html; charset="US-ASCII"
<br><font size=2 face="sans-serif">Hy ,</font>
<br>
<br><font size=2 face="sans-serif">here is the patch for s390x for the
actual cvs , developed by my team .</font>
<br>
<br>
<br>
<br><font size=2 face="sans-serif">Sven</font>
<br>
<br><font size=2 face="sans-serif">-------------------------------------------------------------------------------------------------------------------------<br>
Dept. A141, TG/SSG EMEA AIS Strategy and Architecture<br>
Development Leader Stonehenge <br>
IBM intranet ---> http://w3.ais.mainz.de.ibm.com/stonehenge/<br>
internet ---> http://www-5.ibm.com/services/de/its/filestore.html<br>
Phone (+49)-6131-84-3151<br>
Fax (+49)-6131-84-6708<br>
Mobil (+49)-171-970-6664<br>
E-Mail : oehmes@de.ibm.com</font>
--=_alternative 004E60E6C1256EED_=--
--=_mixed 004E60E6C1256EED_=
Content-Type: application/octet-stream; name="openafs-cvs-s390x.patch"
Content-Disposition: attachment; filename="openafs-cvs-s390x.patch"
Content-Transfer-Encoding: base64
LS0tIG9wZW5hZnMvLi9hY2luY2x1ZGUubTQJMjAwNC0wNi0yNCAxOTozODoxOS4wMDAwMDAwMDAg
KzAyMDANCisrKyBvcGVuYWZzLXMzOTB4Ly4vYWNpbmNsdWRlLm00CTIwMDQtMDgtMDUgMTI6MjE6
NTQuMDAwMDAwMDAwICswMjAwDQpAQCAtNTg1LDYgKzU4NSw5IEBADQogCQlzMzkwLSotbGludXgq
KQ0KIAkJCUFGU19TWVNOQU1FPSJzMzkwX2xpbnV4WFgiDQogCQkJOzsNCisJCXMzOTB4LSotbGlu
dXgqKQ0KKwkJCUFGU19TWVNOQU1FPSJzMzkweF9saW51eFhYIg0KKwkJCTs7DQogCQlzcGFyYy0q
LWxpbnV4KikNCiAJCQlBRlNfU1lTTkFNRT0ic3BhcmNfbGludXhYWCINCiAJCQk7Ow0KLS0tIG9w
ZW5hZnMvLi9jb25maWcuZ3Vlc3MJMjAwMS0wNi0yOCAwNjo1NToyMS4wMDAwMDAwMDAgKzAyMDAN
CisrKyBvcGVuYWZzLXMzOTB4Ly4vY29uZmlnLmd1ZXNzCTIwMDQtMDgtMDUgMTI6MjE6MTMuMDAw
MDAwMDAwICswMjAwDQpAQCAtODU2LDYgKzg1Niw4IEBADQogRU9GDQogCSAgJENDX0ZPUl9CVUlM
RCAkZHVtbXkuYyAtbyAkZHVtbXkgMj4vZGV2L251bGwgJiYgLi8kZHVtbXkgIiR7VU5BTUVfTUFD
SElORX0iICYmIHJtICRkdW1teS5jICRkdW1teSAmJiBleGl0IDANCiAJICBybSAtZiAkZHVtbXku
YyAkZHVtbXkNCisJZWxpZiB0ZXN0ICIke1VOQU1FX01BQ0hJTkV9IiA9ICJzMzkweCI7IHRoZW4N
CisJICBlY2hvIHMzOTB4LWlibS1saW51eCAmJiBleGl0IDANCiAJZWxpZiB0ZXN0ICIke1VOQU1F
X01BQ0hJTkV9IiA9ICJzMzkwIjsgdGhlbg0KIAkgIGVjaG8gczM5MC1pYm0tbGludXggJiYgZXhp
dCAwDQogCWVsaWYgdGVzdCAiJHtVTkFNRV9NQUNISU5FfSIgPSAieDg2XzY0IjsgdGhlbg0KLS0t
IG9wZW5hZnMvLi9zcmMvYm96by9ib3MuYwkyMDAzLTEyLTA3IDIzOjQ5OjE4LjAwMDAwMDAwMCAr
MDEwMA0KKysrIG9wZW5hZnMtczM5MHgvLi9zcmMvYm96by9ib3MuYwkyMDA0LTA4LTA1IDEyOjMw
OjUyLjAwMDAwMDAwMCArMDIwMA0KQEAgLTE0NSw3ICsxNDUsOCBAQA0KIHsNCiAgICAgc3RhdGlj
IGNoYXIgdGJ1ZmZlclszMF07DQogICAgIHJlZ2lzdGVyIGNoYXIgKnRwOw0KLSAgICB0cCA9IGN0
aW1lKCh0aW1lX3QgKikgJiBhdGltZSk7DQorICAgIHRpbWVfdCB0ID0gKHRpbWVfdCkgYXRpbWU7
DQorICAgIHRwID0gY3RpbWUoJnQpOw0KICAgICBpZiAodHApIHsNCiAJc3RyY3B5KHRidWZmZXIs
IHRwKTsNCiAJdGJ1ZmZlclsyNF0gPSAwOwkvKiBnZXQgcmlkIG9mIG5ldyBsaW5lICovDQotLS0g
b3BlbmFmcy8uL3NyYy9jZi9vc2NvbmYubTQJMjAwNC0wNi0yNCAxOTozODoyNy4wMDAwMDAwMDAg
KzAyMDANCisrKyBvcGVuYWZzLXMzOTB4Ly4vc3JjL2NmL29zY29uZi5tNAkyMDA0LTA4LTExIDA5
OjI1OjM0LjAwMDAwMDAwMCArMDIwMA0KQEAgLTQzOSw3ICs0MzksNyBAQA0KIAlzMzkwX2xpbnV4
MjIpDQogCQlDQz0iZ2NjIg0KIAkJQ0NPQko9ImdjYyINCi0JCUxEPSJnY2MiDQorCQlMRD0ibGQi
DQogCQlLRVJOX09QVE1aPS1PMg0KIAkJTEVYPSJmbGV4IC1sIg0KIAkJTVRfQ0M9IiRDQyINCkBA
IC00NTYsNyArNDU2LDcgQEANCiAJczM5MF9saW51eDI0KQ0KIAkJQ0M9ImdjYyINCiAJCUNDT0JK
PSJnY2MiDQotCQlMRD0iZ2NjIg0KKwkJTEQ9ImxkIg0KIAkJS0VSTl9PUFRNWj0tTzINCiAJCUxF
WD0iZmxleCAtbCINCiAJCU1UX0NDPSIkQ0MiDQpAQCAtNDcwLDYgKzQ3MCwyMyBAQA0KIAkJU0hM
SUJfTElOS0VSPSIke01UX0NDfSAtc2hhcmVkIg0KIAkJOzsNCiANCisJczM5MHhfbGludXgyNCkN
CisJCUNDPSJnY2MiDQorCQlDQ09CSj0iZ2NjIg0KKwkJTEQ9ImxkIg0KKwkJS0VSTl9PUFRNWj0t
TzINCisJCUxFWD0iZmxleCAtbCINCisJCU1UX0NDPSIkQ0MiDQorCQlNVF9DRkxBR1M9Jy1EQUZT
X1BUSFJFQURfRU5WIC1wdGhyZWFkIC1EX1JFRU5UUkFOVCAke1hDRkxBR1N9Jw0KKwkJTVRfTElC
Uz0iLWxwdGhyZWFkIg0KKwkJUEFNX0NGTEFHUz0iLU8gLURsaW51eCAtRExJTlVYX1BBTSAtZlBJ
QyINCisJCVNITElCX0xERkxBR1M9Ii1zaGFyZWQgLVhsaW5rZXIgLXgiDQorCQlUWExJQlM9Ii1s
bmN1cnNlcyINCisJCVhDRkxBR1M9Ii1PIC1nIC1EX0xBUkdFRklMRTY0X1NPVVJDRSAtRF9fczM5
MHhfXyINCisJCVlBQ0M9ImJpc29uIC15Ig0KKwkJU0hMSUJfTElOS0VSPSIke01UX0NDfSAtc2hh
cmVkIg0KKwkJOzsNCisNCiAJc2dpXzYyKQ0KIAkJUElOU1RBTExfTElCUz0tbG1sZA0KIAkJQUZT
RF9MSUJTPSIvdXNyL2xpYi9saWJkd2FyZi5hIC91c3IvbGliL2xpYmVsZi5hIg0KLS0tIG9wZW5h
ZnMvLi9zcmMvbHdwL01ha2VmaWxlLmluCTIwMDQtMDgtMDYgMDk6NTA6NDUuMDAwMDAwMDAwICsw
MjAwDQorKysgb3BlbmFmcy1zMzkweC8uL3NyYy9sd3AvTWFrZWZpbGUuaW4JMjAwNC0wOC0wNSAx
MjoxOToxNy4wMDAwMDAwMDAgKzAyMDANCkBAIC00NCw4ICs0NCwxMiBAQA0KIAkJJChDQ09CSikg
JHtMV1BfREJHfSAke0xXUF9PUFRNWn0gLWMgLUkke1RPUF9JTkNESVJ9IC1LUElDIC1HMCAgJHtz
cmNkaXJ9L3Byb2Nlc3Muczs7IFwNCiAJc2dpXzYxIHwgc2dpXzYyIHwgc2dpXzYzICkgXA0KIAkJ
JChDQ09CSikgJHtMV1BfREJHfSAke0xXUF9PUFRNWn0gLWMgJHtYQ0ZMQUdTfSAtSSR7VE9QX0lO
Q0RJUn0gLUtQSUMgLUcwICAke3NyY2Rpcn0vcHJvY2Vzcy5zOzsgXA0KLQlzMzkwKikgXA0KLQkJ
L2xpYi9jcHAgLVAgLUkke1RPUF9JTkNESVJ9ICR7c3JjZGlyfS9wcm9jZXNzLnMgPnByb2Nlc3Mu
c3M7IFwNCisJczM5MF8qKSBcDQorCQkvbGliL2NwcCAtUCAtSSR7VE9QX0lOQ0RJUn0gJHtzcmNk
aXJ9L3Byb2Nlc3MuczM5MC5zID5wcm9jZXNzLnNzOyBcDQorCQkke0FTfSAtYWhsbnMgcHJvY2Vz
cy5zcyAtbyBwcm9jZXNzLm8gPnByb2Nlc3MubHN0OyBcDQorCQkkKFJNKSBwcm9jZXNzLnNzIDs7
IFwNCisJczM5MHhfKikgXA0KKwkJL2xpYi9jcHAgLVAgLUkke1RPUF9JTkNESVJ9ICR7c3JjZGly
fS9wcm9jZXNzLnMzOTB4LnMgPnByb2Nlc3Muc3M7IFwNCiAJCSR7QVN9IC1haGxucyBwcm9jZXNz
LnNzIC1vIHByb2Nlc3MubyA+cHJvY2Vzcy5sc3Q7IFwNCiAJCSQoUk0pIHByb2Nlc3Muc3MgOzsg
XA0KIAkqX2RhcndpbiogKSBcDQotLS0gb3BlbmFmcy8uL3NyYy9sd3AvbHdwLmMJMjAwNC0wOC0w
MiAxMzo1ODozOS4wMDAwMDAwMDAgKzAyMDANCisrKyBvcGVuYWZzLXMzOTB4Ly4vc3JjL2x3cC9s
d3AuYwkyMDA0LTA4LTA1IDEyOjA1OjQ2LjAwMDAwMDAwMCArMDIwMA0KQEAgLTczLDYgKzczLDEw
IEBADQogI2RlZmluZSBNSU5GUkFNRSAxMjgNCiAjZGVmaW5lIFNUQUNLX0FMSUdOIDgNCiAjZWxz
ZQ0KKyNpZmRlZiBfX3MzOTB4X18NCisjZGVmaW5lIE1JTkZSQU1FICAgIDE2MA0KKyNkZWZpbmUg
U1RBQ0tfQUxJR04gOA0KKyNlbHNlDQogI2lmZGVmIF9fczM5MF9fDQogI2RlZmluZSBNSU5GUkFN
RSAgICA5Ng0KICNkZWZpbmUgU1RBQ0tfQUxJR04gOA0KQEAgLTgwLDYgKzg0LDcgQEANCiAjZGVm
aW5lIFNUQUNLX0FMSUdOIDQNCiAjZW5kaWYNCiAjZW5kaWYNCisjZW5kaWYNCiANCiAvKiBEZWJ1
Z2dpbmcgbWFjcm8gKi8NCiAjaWZkZWYgREVCVUcNCi0tLSBvcGVuYWZzLy4vc3JjL2x3cC9wcm9j
ZXNzLnMJMjAwMy0wNi0yMyAxOTowMjoxOC4wMDAwMDAwMDAgKzAyMDANCisrKyBvcGVuYWZzLXMz
OTB4Ly4vc3JjL2x3cC9wcm9jZXNzLnMJMjAwNC0wOC0wNSAxMjoxNjo0Ny4wMDAwMDAwMDAgKzAy
MDANCkBAIC0xNjcsOTMgKzE2Nyw2IEBADQogCS5leHRlcm4JUFJFX0Jsb2NrW3VhXQ0KIA0KICNl
bmRpZgkvKiBSSU9TCSovDQotI2lmIGRlZmluZWQoQUZTX1MzOTBfTElOVVgyMF9FTlYpDQotICAg
ICAgLyogTGludXggZm9yIFMvMzkwICgzMSBiaXQpDQotICAgICAgICoNCi0gICAgICAgKiBXcml0
dGVuIGJ5IE5lYWxlIEZlcmd1c29uIDxOZWFsZS5GZXJndXNvbkBTb2Z0d2FyZUFHLXVzYS5jb20+
DQotICAgICAgICoNCi0gICAgICAgKiAgYWRkaXRpb25hbCBtdW5naW5nIGJ5IEFkYW0gVGhvcm50
b24gPGFkYW1Ac2luZW5vbWluZS5uZXQ+DQotICAgICAgICovDQotICAgICAgICAgICAgICAuZmls
ZSAgICJwcm9jZXNzLnMiDQotDQotICAgICAgICAgICAgICAuZ2xvYmwgc2F2ZWNvbnRleHQNCi0g
ICAgICAgICAgICAgIC50eXBlICBzYXZlY29udGV4dCwlZnVuY3Rpb24NCi0gICAgICAvKg0KLSAg
ICAgICAqIHNhdmVjb250ZXh0KGYsIGFyZWExLCBuZXdzcCkNCi0gICAgICAgKiAgICAgIGludCAo
KmYpKCk7ICAgIHN0cnVjdCBzYXZlYXJlYSAqYXJlYTE7IGNoYXIgKm5ld3NwOw0KLSAgICAgICAq
IGYgICAgIC0gcjINCi0gICAgICAgKiBhcmVhMSAtIHIzDQotICAgICAgICogbmV3c3AgLSByNA0K
LSAgICAgICAqLw0KLQ0KLSAgICAgICAvKg0KLSAgICAgICAgKiBzdHJ1Y3Qgc2F2ZWFyZWEgew0K
LSAgICAgICAgKiAgICAgIGNoYXIgICAgKnRvcHN0YWNrOw0KLSAgICAgICAgKiB9DQotICAgICAg
ICAqLw0KLQ0KLVBfUFJFOgkgICAgICAgICAgICAgICAgICAubG9uZyAgIFBSRV9CbG9jaw0KLVBf
QUJPUlQ6CSAgICAgICAgICAgICAgLmxvbmcgICBhYm9ydA0KLQ0KLXNhdmVjb250ZXh0Og0KLSAg
ICAgICAgICAgICAgc3RtICAgICAlcjYsJXIxNSwyNCglcjE1KSAgICAgICAvKiBTYXZlIG91ciBy
ZWdpc3RlcnMgKi8NCi0gICAgICAgICAgICAgIGxyICAgICAgJXIxLCVyMTUNCi0gICAgICAgICAg
ICAgIGFoaSAgICAgJXIxNSwtOTYgICAgICAgICAgICAgICAgLyogTW92ZSBvdXQgb2YgaGFybSdz
IHdheSAqLw0KLSAgICAgICAgICAgICAgc3QgICAgICAlcjEsMCglcjE1KQ0KLSAgICAgICAgICAg
ICAgYnJhcyAgICAlcjUsLkwwICAgICAgICAgICAgICAgICAvKiBHZXQgQShBKFBSRV9CbG9jaykp
ICovDQotICAgICAgICAgICAgICAubG9uZyAgIFBSRV9CbG9jaw0KLSAgICAgIC5MMDoNCi0gICAg
ICAgICAgICAgIGwgICAgICAgJXI1LDAoJXI1KSAgICAgICAgICAgICAgLyogR2V0IEEoUFJFX0Js
b2NrKSAqLw0KLSAgICAgICAgICAgICAgbXZpICAgICAzKCVyNSksMSAgICAgICAgICAgICAgICAv
KiBTZXQgaXQgKi8NCi0gICAgICAgICAgICAgIGxyICAgICAgJXI2LCVyMyAgICAgICAgICAgICAg
ICAgLyogR2V0IGJhc2Ugb2Ygc2F2ZWFyZWEgKi8NCi0gICAgICAgICAgICAgIHN0ICAgICAgJXIx
NSwwKCVyMykgICAgICAgICAgICAgLyogU2F2ZSBzdGFjayBwb2ludGVyICovDQotICAgICAgICAg
ICAgICBsdHIgICAgICVyNCwlcjQgICAgICAgICAgICAgICAgIC8qIElmIG5ldyBzcCBpcyAwICov
DQotICAgICAgICAgICAgICBqeiAgICAgIC5MMSAgICAgICAgICAgICAgICAgICAgIC8qIC4uLiBk
b24ndCBjaGFuZ2Ugc3AgKi8NCi0gICAgICAgICAgICAgIGxyICAgICAgJXIxNSwlcjQgICAgICAg
ICAgICAgICAgLyogU2V0IG5ldyBzdGFjayBwb2ludGVyICovDQotICAgICAgLkwxOg0KLSAgICAg
ICAgICAgICAgYnIgICAgICAlcjIgICAgICAgICAgICAgICAgICAgICAvKiBDYWxsIHRoZSByb3V0
aW5lICovDQotICAgICAgICAgICAgICAvKiBDYW4ndCBnZXQgaGVyZS4uLi4qLw0KLQ0KLSAgICAg
ICAgICAgICAgYnJhcyAgICAlcjUsLkwyDQotICAgICAgICAgICAgICAubG9uZyAgIGFib3J0DQot
ICAgICAgLkwyOg0KLSAgICAgICAgICAgICAgbCAgICAgICVyNSwwKCVyNSkNCi0gICAgICAgICAg
ICAgIGJhbHIgICAgJXIxNCwlcjUNCi0NCi0gICAgICAuc2F2ZWNvbnRleHRfZW5kOg0KLSAgICAg
ICAgICAgICAgLnNpemUgICBzYXZlY29udGV4dCwuc2F2ZWNvbnRleHRfZW5kLXNhdmVjb250ZXh0
DQotDQotICAgICAgLyoNCi0gICAgICAgKiByZXR1cm50byhhcmVhMikNCi0gICAgICAgKiAgICAg
IHN0cnVjdCBzYXZlYXJlYSAqYXJlYTI7DQotICAgICAgICoNCi0gICAgICAgKiBhcmVhMiAtIHIy
DQotICAgICAgICovDQotICAgICAgICAuZ2xvYmwgIHJldHVybnRvDQotICAgICAgICAudHlwZSAg
IHJldHVybnRvLCVmdW5jdGlvbg0KLXJldHVybnRvOg0KLSAgICAgICAgbCAgICAgICAlcjE1LDAo
JXIyKSAgICAgICAgICAgICAvKiBOZXcgZnJhbWUsIHRvIGdldCBjb3JyZWN0IHBvaW50ZXIqLw0K
LSAgICAgICAgYnJhcyAgICAlcjUsLkwzICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEdldCBB
KEEoUFJFX0Jsb2NrKSkNCi0gICAgICAqLw0KLSAgICAgICAgICAgICAgICAgLmxvbmcgICAgICAg
ICAgUFJFX0Jsb2NrDQotICAgICAgLkwzOg0KLSAgICAgICAgICAgICAgbCAgICAgICAlcjUsMCgl
cjUpICAgICAgICAgICAgICAvKiBHZXQgQShQUkVfQmxvY2spICovDQotICAgICAgICAgICAgICAv
KnhjICAgICAgMCg0LCVyNSksMCglcjUpICAgICAgICAgLyogQ2xlYXIgaXQgKi8NCi0JICAgICAg
bXZpICAgICAzKCVyNSksMCAgICAgICAgICAgICAgICAvKiBDbGVhciBpdCAqLyANCi0JICAgICAg
bCAgICAgICAlcjE1LDAoJXIxNSkNCi0gICAgICAgICAgICAgIGxtICAgICAgJXI2LCVyMTUsMjQo
JXIxNSkgICAgICAgLyogUmVzdG9yZSByZWdpc3RlcnMgKi8NCi0gICAgICAgICAgICAgIGJyICAg
ICAgJXIxNCAgICAgICAgICAgICAgICAgICAgLyogUmV0dXJuICovDQotDQotCSAgICAgIC8qIENh
bid0IGhhcHBlbiAqLw0KLSAgICAgICAgICAgICAgbGEgICAgICAlcjIsMTIzNA0KLSAgICAgICAg
ICAgICAgYnJhcyAgICAlcjUsLkw0DQotICAgICAgICAgICAgICAgIC5sb25nICAgICAgICAgIGFi
b3J0DQotICAgICAgLkw0Og0KLSAgICAgICAgICAgICAgbCAgICAgICAlcjUsMCglcjUpDQotICAg
ICAgICAgICAgICBiYXNyICAgICVyMTQsJXI1DQotICAgICAgLnJldHVybnRvX2VuZDoNCi0gICAg
ICAgICAgICAgIC5zaXplICAgcmV0dXJudG8sLnJldHVybnRvX2VuZC1yZXR1cm50bw0KLSNlbmRp
ZiAvKiBBRlNfUzM5MF9MSU5VWDIwX0VOViAqLw0KIAkNCiAjaWZkZWYgbWM2ODAwMA0KIC8qDQot
LS0gb3BlbmFmcy8uL3NyYy9sd3AvcHJvY2Vzcy5zMzkwLnMJMTk3MC0wMS0wMSAwMTowMDowMC4w
MDAwMDAwMDAgKzAxMDANCisrKyBvcGVuYWZzLXMzOTB4Ly4vc3JjL2x3cC9wcm9jZXNzLnMzOTAu
cwkyMDA0LTA4LTA1IDEyOjE1OjMxLjAwMDAwMDAwMCArMDIwMA0KQEAgLTAsMCArMSw5OCBAQA0K
Ky8qDQorICogQ29weXJpZ2h0IDIwMDAsIEludGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMg
Q29ycG9yYXRpb24gYW5kIG90aGVycy4NCisgKiBBbGwgUmlnaHRzIFJlc2VydmVkLg0KKyAqIA0K
KyAqIFRoaXMgc29mdHdhcmUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo
ZSBJQk0gUHVibGljDQorICogTGljZW5zZS4gIEZvciBkZXRhaWxzLCBzZWUgdGhlIExJQ0VOU0Ug
ZmlsZSBpbiB0aGUgdG9wLWxldmVsIHNvdXJjZQ0KKyAqIGRpcmVjdG9yeSBvciBvbmxpbmUgYXQg
aHR0cDovL3d3dy5vcGVuYWZzLm9yZy9kbC9saWNlbnNlMTAuaHRtbA0KKyAqDQorICogTGludXgg
Zm9yIFMvMzkwICgzMSBiaXQpDQorICoNCisgKiBXcml0dGVuIGJ5IE5lYWxlIEZlcmd1c29uIDxO
ZWFsZS5GZXJndXNvbkBTb2Z0d2FyZUFHLXVzYS5jb20+DQorICoNCisgKiAgYWRkaXRpb25hbCBt
dW5naW5nIGJ5IEFkYW0gVGhvcm50b24gPGFkYW1Ac2luZW5vbWluZS5uZXQ+DQorICovDQorDQor
I2RlZmluZQlJR05PUkVfU1REU19ICTENCisjaW5jbHVkZSA8YWZzL3BhcmFtLmg+DQorDQorICAg
ICAgICAgICAgICAuZmlsZSAgICJwcm9jZXNzLnMiDQorDQorICAgICAgICAgICAgICAuZ2xvYmwg
c2F2ZWNvbnRleHQNCisgICAgICAgICAgICAgIC50eXBlICBzYXZlY29udGV4dCwlZnVuY3Rpb24N
CisgICAgICAvKg0KKyAgICAgICAqIHNhdmVjb250ZXh0KGYsIGFyZWExLCBuZXdzcCkNCisgICAg
ICAgKiAgICAgIGludCAoKmYpKCk7ICAgIHN0cnVjdCBzYXZlYXJlYSAqYXJlYTE7IGNoYXIgKm5l
d3NwOw0KKyAgICAgICAqIGYgICAgIC0gcjINCisgICAgICAgKiBhcmVhMSAtIHIzDQorICAgICAg
ICogbmV3c3AgLSByNA0KKyAgICAgICAqLw0KKw0KKyAgICAgICAvKg0KKyAgICAgICAgKiBzdHJ1
Y3Qgc2F2ZWFyZWEgew0KKyAgICAgICAgKiAgICAgIGNoYXIgICAgKnRvcHN0YWNrOw0KKyAgICAg
ICAgKiB9DQorICAgICAgICAqLw0KKw0KK1BfUFJFOgkgICAgICAgICAgICAgICAgICAubG9uZyAg
IFBSRV9CbG9jaw0KK1BfQUJPUlQ6CSAgICAgICAgICAgICAgLmxvbmcgICBhYm9ydA0KKw0KK3Nh
dmVjb250ZXh0Og0KKyAgICAgICAgICAgICAgc3RtICAgICAlcjYsJXIxNSwyNCglcjE1KSAgICAg
ICAvKiBTYXZlIG91ciByZWdpc3RlcnMgKi8NCisgICAgICAgICAgICAgIGxyICAgICAgJXIxLCVy
MTUNCisgICAgICAgICAgICAgIGFoaSAgICAgJXIxNSwtOTYgICAgICAgICAgICAgICAgLyogTW92
ZSBvdXQgb2YgaGFybSdzIHdheSAqLw0KKyAgICAgICAgICAgICAgc3QgICAgICAlcjEsMCglcjE1
KQ0KKyAgICAgICAgICAgICAgYnJhcyAgICAlcjUsLkwwICAgICAgICAgICAgICAgICAvKiBHZXQg
QShBKFBSRV9CbG9jaykpICovDQorICAgICAgICAgICAgICAubG9uZyAgIFBSRV9CbG9jaw0KKyAg
ICAgIC5MMDoNCisgICAgICAgICAgICAgIGwgICAgICAgJXI1LDAoJXI1KSAgICAgICAgICAgICAg
LyogR2V0IEEoUFJFX0Jsb2NrKSAqLw0KKyAgICAgICAgICAgICAgbXZpICAgICAzKCVyNSksMSAg
ICAgICAgICAgICAgICAvKiBTZXQgaXQgKi8NCisgICAgICAgICAgICAgIGxyICAgICAgJXI2LCVy
MyAgICAgICAgICAgICAgICAgLyogR2V0IGJhc2Ugb2Ygc2F2ZWFyZWEgKi8NCisgICAgICAgICAg
ICAgIHN0ICAgICAgJXIxNSwwKCVyMykgICAgICAgICAgICAgLyogU2F2ZSBzdGFjayBwb2ludGVy
ICovDQorICAgICAgICAgICAgICBsdHIgICAgICVyNCwlcjQgICAgICAgICAgICAgICAgIC8qIElm
IG5ldyBzcCBpcyAwICovDQorICAgICAgICAgICAgICBqeiAgICAgIC5MMSAgICAgICAgICAgICAg
ICAgICAgIC8qIC4uLiBkb24ndCBjaGFuZ2Ugc3AgKi8NCisgICAgICAgICAgICAgIGxyICAgICAg
JXIxNSwlcjQgICAgICAgICAgICAgICAgLyogU2V0IG5ldyBzdGFjayBwb2ludGVyICovDQorICAg
ICAgLkwxOg0KKyAgICAgICAgICAgICAgYnIgICAgICAlcjIgICAgICAgICAgICAgICAgICAgICAv
KiBDYWxsIHRoZSByb3V0aW5lICovDQorICAgICAgICAgICAgICAvKiBDYW4ndCBnZXQgaGVyZS4u
Li4qLw0KKw0KKyAgICAgICAgICAgICAgYnJhcyAgICAlcjUsLkwyDQorICAgICAgICAgICAgICAu
bG9uZyAgIGFib3J0DQorICAgICAgLkwyOg0KKyAgICAgICAgICAgICAgbCAgICAgICVyNSwwKCVy
NSkNCisgICAgICAgICAgICAgIGJhbHIgICAgJXIxNCwlcjUNCisNCisgICAgICAuc2F2ZWNvbnRl
eHRfZW5kOg0KKyAgICAgICAgICAgICAgLnNpemUgICBzYXZlY29udGV4dCwuc2F2ZWNvbnRleHRf
ZW5kLXNhdmVjb250ZXh0DQorDQorICAgICAgLyoNCisgICAgICAgKiByZXR1cm50byhhcmVhMikN
CisgICAgICAgKiAgICAgIHN0cnVjdCBzYXZlYXJlYSAqYXJlYTI7DQorICAgICAgICoNCisgICAg
ICAgKiBhcmVhMiAtIHIyDQorICAgICAgICovDQorICAgICAgICAuZ2xvYmwgIHJldHVybnRvDQor
ICAgICAgICAudHlwZSAgIHJldHVybnRvLCVmdW5jdGlvbg0KK3JldHVybnRvOg0KKyAgICAgICAg
bCAgICAgICAlcjE1LDAoJXIyKSAgICAgICAgICAgICAvKiBOZXcgZnJhbWUsIHRvIGdldCBjb3Jy
ZWN0IHBvaW50ZXIqLw0KKyAgICAgICAgYnJhcyAgICAlcjUsLkwzICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIEdldCBBKEEoUFJFX0Jsb2NrKSkNCisgICAgICAqLw0KKyAgICAgICAgICAgICAg
ICAgLmxvbmcgICAgICAgICAgUFJFX0Jsb2NrDQorICAgICAgLkwzOg0KKyAgICAgICAgICAgICAg
bCAgICAgICAlcjUsMCglcjUpICAgICAgICAgICAgICAvKiBHZXQgQShQUkVfQmxvY2spICovDQor
ICAgICAgICAgICAgICAvKnhjICAgICAgMCg0LCVyNSksMCglcjUpICAgICAgICAgLyogQ2xlYXIg
aXQgKi8NCisJICAgICAgbXZpICAgICAzKCVyNSksMCAgICAgICAgICAgICAgICAvKiBDbGVhciBp
dCAqLyANCisJICAgICAgbCAgICAgICAlcjE1LDAoJXIxNSkNCisgICAgICAgICAgICAgIGxtICAg
ICAgJXI2LCVyMTUsMjQoJXIxNSkgICAgICAgLyogUmVzdG9yZSByZWdpc3RlcnMgKi8NCisgICAg
ICAgICAgICAgIGJyICAgICAgJXIxNCAgICAgICAgICAgICAgICAgICAgLyogUmV0dXJuICovDQor
DQorCSAgICAgIC8qIENhbid0IGhhcHBlbiAqLw0KKyAgICAgICAgICAgICAgbGEgICAgICAlcjIs
MTIzNA0KKyAgICAgICAgICAgICAgYnJhcyAgICAlcjUsLkw0DQorICAgICAgICAgICAgICAgIC5s
b25nICAgICAgICAgIGFib3J0DQorICAgICAgLkw0Og0KKyAgICAgICAgICAgICAgbCAgICAgICAl
cjUsMCglcjUpDQorICAgICAgICAgICAgICBiYXNyICAgICVyMTQsJXI1DQorICAgICAgLnJldHVy
bnRvX2VuZDoNCisgICAgICAgICAgICAgIC5zaXplICAgcmV0dXJudG8sLnJldHVybnRvX2VuZC1y
ZXR1cm50bw0KKw0KLS0tIG9wZW5hZnMvLi9zcmMvbHdwL3Byb2Nlc3MuczM5MHgucwkxOTcwLTAx
LTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMA0KKysrIG9wZW5hZnMtczM5MHgvLi9zcmMvbHdw
L3Byb2Nlc3MuczM5MHgucwkyMDA0LTA4LTA1IDEyOjE1OjM2LjAwMDAwMDAwMCArMDIwMA0KQEAg
LTAsMCArMSw5OCBAQA0KKy8qDQorICogQ29weXJpZ2h0IDIwMDAsIEludGVybmF0aW9uYWwgQnVz
aW5lc3MgTWFjaGluZXMgQ29ycG9yYXRpb24gYW5kIG90aGVycy4NCisgKiBBbGwgUmlnaHRzIFJl
c2VydmVkLg0KKyAqIA0KKyAqIFRoaXMgc29mdHdhcmUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIg
dGhlIHRlcm1zIG9mIHRoZSBJQk0gUHVibGljDQorICogTGljZW5zZS4gIEZvciBkZXRhaWxzLCBz
ZWUgdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgdG9wLWxldmVsIHNvdXJjZQ0KKyAqIGRpcmVjdG9y
eSBvciBvbmxpbmUgYXQgaHR0cDovL3d3dy5vcGVuYWZzLm9yZy9kbC9saWNlbnNlMTAuaHRtbA0K
KyAqDQorICogTGludXggZm9yIFMvMzkwWCAoNjQgYml0KQ0KKyAqIGJ5IFNvZXdvbm8gRWZmZW5k
aSA8U29ld29uby5FZmZlbmRpQHN5c2dvLmRlPg0KKyAqICYgSG9yc3QgQmlydGhlbG1lciA8SG9y
c3QuQmlydGhlbG1lckBzeXNnby5kZT4NCisgKg0KKyAqIGJhc2VkIG9uIExpbnV4IGZvciBTLzM5
MCAoMzEgYml0KQ0KKyAqIFdyaXR0ZW4gYnkgTmVhbGUgRmVyZ3Vzb24gPE5lYWxlLkZlcmd1c29u
QFNvZnR3YXJlQUctdXNhLmNvbT4NCisqLw0KKw0KKyNkZWZpbmUgSUdOT1JFX1NURFNfSCAgMQ0K
KyNpbmNsdWRlIDxhZnMvcGFyYW0uaD4NCisNCisgICAgICAgICAgICAgIC5maWxlICAgInByb2Nl
c3MucyINCisNCisgICAgICAgICAgICAgIC5nbG9ibCBzYXZlY29udGV4dA0KKyAgICAgICAgICAg
ICAgLnR5cGUgIHNhdmVjb250ZXh0LCVmdW5jdGlvbg0KKyAgICAgIC8qDQorICAgICAgICogc2F2
ZWNvbnRleHQoZiwgYXJlYTEsIG5ld3NwKQ0KKyAgICAgICAqICAgICAgaW50ICgqZikoKTsgICAg
c3RydWN0IHNhdmVhcmVhICphcmVhMTsgY2hhciAqbmV3c3A7DQorICAgICAgICogZiAgICAgLSBy
Mg0KKyAgICAgICAqIGFyZWExIC0gcjMNCisgICAgICAgKiBuZXdzcCAtIHI0DQorICAgICAgICov
DQorDQorICAgICAgIC8qDQorICAgICAgICAqIHN0cnVjdCBzYXZlYXJlYSB7DQorICAgICAgICAq
ICAgICAgY2hhciAgICAqdG9wc3RhY2s7DQorICAgICAgICAqIH0NCisgICAgICAgICovDQorDQor
UF9QUkU6CSAgICAgICAgICAgICAgICAgIC5sb25nICAgUFJFX0Jsb2NrDQorUF9BQk9SVDoJICAg
ICAgICAgICAgICAubG9uZyAgIGFib3J0DQorDQorc2F2ZWNvbnRleHQ6DQorICAgICAgICAgICAg
ICBzdG1nICAgICAlcjYsJXIxNSw0OCglcjE1KSAgICAgICAvKiBTYXZlIG91ciByZWdpc3RlcnMg
Ki8NCisgICAgICAgICAgICAgIGxnciAgICAgICVyMSwlcjE1DQorICAgICAgICAgICAgICBhZ2hp
ICAgICAlcjE1LC0xNjANCisgICAgICAgICAgICAgIHN0ZyAgICAgICVyMSwwKCVyMTUpDQorICAg
ICAgICAgICAgICBicmFzbCAgICAlcjUsLkwwICAgICAgICAgICAgICAgICAvKiBHZXQgQShBKFBS
RV9CbG9jaykpICovDQorICAgICAgICAgICAgICAubG9uZyAgIFBSRV9CbG9jaw0KKyAgICAgIC5M
MDoNCisgICAgICAgICAgICAgIGwgICAgICAgJXI1LDAoJXI1KSAgICAgICAgICAgICAgLyogR2V0
IEEoUFJFX0Jsb2NrKSAqLw0KKyAgICAgICAgICAgICAgbXZpICAgICAzKCVyNSksMSAgICAgICAg
ICAgICAgICAvKiBTZXQgaXQgKi8NCisgICAgICAgICAgICAgIGxnciAgICAgICVyNiwlcjMgICAg
ICAgICAgICAgICAgIC8qIEdldCBiYXNlIG9mIHNhdmVhcmVhICovDQorICAgICAgICAgICAgICBz
dGcgICAgICAlcjE1LDAoJXIzKSAgICAgICAgICAgICAvKiBTYXZlIHN0YWNrIHBvaW50ZXIgKi8N
CisgICAgICAgICAgICAgIGx0Z3IgICAgICVyNCwlcjQgICAgICAgICAgICAgICAgIC8qIElmIG5l
dyBzcCBpcyAwICovDQorICAgICAgICAgICAgICBqeiAgICAgIC5MMSAgICAgICAgICAgICAgICAg
ICAgIC8qIC4uLiBkb24ndCBjaGFuZ2Ugc3AgKi8NCisgICAgICAgICAgICAgIGxnciAgICAgICVy
MTUsJXI0ICAgICAgICAgICAgICAgIC8qIFNldCBuZXcgc3RhY2sgcG9pbnRlciAqLw0KKyAgICAg
IC5MMToNCisgICAgICAgICAgICAgIGJyICAgICAgJXIyICAgICAgICAgICAgICAgICAgICAgLyog
Q2FsbCB0aGUgcm91dGluZSAqLw0KKyAgICAgICAgICAgICAgLyogQ2FuJ3QgZ2V0IGhlcmUuLi4u
Ki8NCisNCisgICAgICAgICAgICAgIGJyYXNsICAgICVyNSwuTDINCisgICAgICAgICAgICAgIC5s
b25nICAgYWJvcnQNCisgICAgICAuTDI6DQorICAgICAgICAgICAgICBsICAgICAgJXI1LDAoJXI1
KQ0KKyAgICAgICAgICAgICAgYmFsciAgICAlcjE0LCVyNQ0KKw0KKyAgICAgIC5zYXZlY29udGV4
dF9lbmQ6DQorICAgICAgICAgICAgICAuc2l6ZSAgIHNhdmVjb250ZXh0LC5zYXZlY29udGV4dF9l
bmQtc2F2ZWNvbnRleHQNCisNCisgICAgICAvKg0KKyAgICAgICAqIHJldHVybnRvKGFyZWEyKQ0K
KyAgICAgICAqICAgICAgc3RydWN0IHNhdmVhcmVhICphcmVhMjsNCisgICAgICAgKg0KKyAgICAg
ICAqIGFyZWEyIC0gcjINCisgICAgICAgKi8NCisgICAgICAgIC5nbG9ibCAgcmV0dXJudG8NCisg
ICAgICAgIC50eXBlICAgcmV0dXJudG8sJWZ1bmN0aW9uDQorcmV0dXJudG86DQorICAgICAgICBs
ZyAgICAgICAlcjE1LDAoJXIyKSAgICAgICAgICAgICAvKiBOZXcgZnJhbWUsIHRvIGdldCBjb3Jy
ZWN0IHBvaW50ZXIqLw0KKyAgICAgICAgYnJhc2wgICAgJXI1LC5MMyAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBHZXQgQShBKFBSRV9CbG9jaykpICovDQorICAgICAgICAgICAgICAgICAubG9u
ZyAgICAgICAgICBQUkVfQmxvY2sNCisgICAgICAuTDM6DQorICAgICAgICAgICAgICBsICAgICAg
ICVyNSwwKCVyNSkgICAgICAgICAgICAgIC8qIEdldCBBKFBSRV9CbG9jaykgKi8NCisgICAgICAg
ICAgICAgIC8qeGMgICAgICAwKDQsJXI1KSwwKCVyNSkgICAgICAgICAvKiBDbGVhciBpdCAqLw0K
KwkgICAgICBtdmkgICAgIDMoJXI1KSwwICAgICAgICAgICAgICAgIC8qIENsZWFyIGl0ICovIA0K
KwkgICAgICBsZyAgICAgICAlcjE1LDAoJXIxNSkNCisgICAgICAgICAgICAgIGxtZyAgICAgICVy
NiwlcjE1LDQ4KCVyMTUpICAgICAgIC8qIFJlc3RvcmUgcmVnaXN0ZXJzICovDQorICAgICAgICAg
ICAgICBiciAgICAgICVyMTQgICAgICAgICAgICAgICAgICAgIC8qIFJldHVybiAqLw0KKw0KKwkg
ICAgICAvKiBDYW4ndCBoYXBwZW4gKi8NCisgICAgICAgICAgICAgIGxhICAgICAgJXIyLDEyMzQN
CisgICAgICAgICAgICAgIGJyYXNsICAgICVyNSwuTDQNCisgICAgICAgICAgICAgICAgLmxvbmcg
ICAgICAgICAgYWJvcnQNCisgICAgICAuTDQ6DQorICAgICAgICAgICAgICBsICAgICAgICVyNSww
KCVyNSkNCisgICAgICAgICAgICAgIGJhc3IgICAgJXIxNCwlcjUNCisgICAgICAucmV0dXJudG9f
ZW5kOg0KKyAgICAgICAgICAgICAgLnNpemUgICByZXR1cm50bywucmV0dXJudG9fZW5kLXJldHVy
bnRvDQorDQotLS0gb3BlbmFmcy8uL3NyYy9rYXV0aC9hZG1pbl90b29scy5jCTIwMDMtMTItMDcg
MjM6NDk6MjYuMDAwMDAwMDAwICswMTAwDQorKysgb3BlbmFmcy1zMzkweC8uL3NyYy9rYXV0aC9h
ZG1pbl90b29scy5jCTIwMDQtMDgtMDUgMTI6Mjc6MTUuMDAwMDAwMDAwICswMjAwDQpAQCAtODE4
LDcgKzgxOCw3IEBADQogICAgIGlmIChhcy0+cGFybXNbM10uaXRlbXMpDQogCXNzY2FuZihhcy0+
cGFybXNbM10uaXRlbXMtPmRhdGEsICIlZCIsICZrdm5vKTsNCiANCi0jaWZkZWYgQUZTX1MzOTBf
TElOVVgyMF9FTlYNCisjaWYgZGVmaW5lZChBRlNfUzM5MF9MSU5VWDIwX0VOVikgJiYgIWRlZmlu
ZWQoQUZTX1MzOTBYX0xJTlVYMjBfRU5WKQ0KICAgICBjb2RlID0gdWJpa19DYWxsKEtBTV9TZXRQ
YXNzd29yZCwgY29ubiwgMCwgbmFtZSwgaW5zdGFuY2UsIGt2bm8sIDAsIGtleSk7DQogI2Vsc2UN
CiAgICAgY29kZSA9IHViaWtfQ2FsbChLQU1fU2V0UGFzc3dvcmQsIGNvbm4sIDAsIG5hbWUsIGlu
c3RhbmNlLCBrdm5vLCBrZXkpOw0KLS0tIG9wZW5hZnMvLi9zcmMva2F1dGgvYXV0aGNsaWVudC5j
CTIwMDMtMDctMTYgMDE6MTU6MTYuMDAwMDAwMDAwICswMjAwDQorKysgb3BlbmFmcy1zMzkweC8u
L3NyYy9rYXV0aC9hdXRoY2xpZW50LmMJMjAwNC0wOC0wNSAxMjoyNzo0OC4wMDAwMDAwMDAgKzAy
MDANCkBAIC03NDksNyArNzQ5LDcgQEANCiAgICAgYWZzX2ludDMyIGNvZGU7DQogDQogICAgIExP
Q0tfR0xPQkFMX01VVEVYDQotI2lmZGVmIEFGU19TMzkwX0xJTlVYMjBfRU5WDQorI2lmIGRlZmlu
ZWQoQUZTX1MzOTBfTElOVVgyMF9FTlYpICYmICFkZWZpbmVkKEFGU19TMzkwWF9MSU5VWDIwX0VO
VikNCiAJY29kZSA9DQogCXViaWtfQ2FsbF9OZXcoS0FNX1NldFBhc3N3b3JkLCBjb25uLCAwLCBu
YW1lLCBpbnN0YW5jZSwgMCwgMCwNCiAJCSAgICAgICpuZXdrZXkpOw0KLS0tIG9wZW5hZnMvLi9z
cmMvZGVzL2NyeXB0LmMJMjAwNC0wMi0wMyAwNzoyMzozNy4wMDAwMDAwMDAgKzAxMDANCisrKyBv
cGVuYWZzLXMzOTB4Ly4vc3JjL2Rlcy9jcnlwdC5jCTIwMDQtMDgtMDUgMTE6NTY6MTQuMDAwMDAw
MDAwICswMjAwDQpAQCAtOTEsNyArOTEsNyBAQA0KICAqLw0KIA0KIC8qIFhYWCBzaG91bGRuJ3Qg
dGhpcyBiZSAhQUZTXzY0QklUX0VOViA/ICovDQotI2lmICFkZWZpbmVkKGNyYXkpICYmICFkZWZp
bmVkKEFGU19BTFBIQV9MSU5VWDIwX0VOVikgJiYgIWRlZmluZWQoQUZTX0lBNjRfTElOVVgyMF9F
TlYpICYmICFkZWZpbmVkKEFGU19BTUQ2NF9MSU5VWDIwX0VOVikgJiYgIWRlZmluZWQoQUZTX1BQ
QzY0X0xJTlVYMjBfRU5WKQ0KKyNpZiAhZGVmaW5lZChjcmF5KSAmJiAhZGVmaW5lZChBRlNfQUxQ
SEFfTElOVVgyMF9FTlYpICYmICFkZWZpbmVkKEFGU19JQTY0X0xJTlVYMjBfRU5WKSAmJiAhZGVm
aW5lZChBRlNfQU1ENjRfTElOVVgyMF9FTlYpICYmICFkZWZpbmVkKEFGU19QUEM2NF9MSU5VWDIw
X0VOVikgJiAhZGVmaW5lZChBRlNfUzM5MFhfTElOVVgyMF9FTlYpDQogI2RlZmluZQlMT05HX0lT
XzMyX0JJVFMNCiAjZW5kaWYNCiANCi0tLSBvcGVuYWZzLy4vc3JjL2NvbmZpZy9hZnNfc3lzbmFt
ZXMuaAkyMDA0LTA4LTAyIDEzOjU4OjM5LjAwMDAwMDAwMCArMDIwMA0KKysrIG9wZW5hZnMtczM5
MHgvLi9zcmMvY29uZmlnL2Fmc19zeXNuYW1lcy5oCTIwMDQtMDgtMDUgMTE6NDI6MTkuMDAwMDAw
MDAwICswMjAwDQpAQCAtMTUwLDYgKzE1MCw5IEBADQogI2RlZmluZSBTWVNfTkFNRV9JRF9zMzkw
X2xpbnV4MiAgICAgICAgIDE5MDANCiAjZGVmaW5lIFNZU19OQU1FX0lEX3MzOTBfbGludXgyMiAg
ICAgICAgMTkwMQ0KICNkZWZpbmUgU1lTX05BTUVfSURfczM5MF9saW51eDI0ICAgICAgICAxOTAy
DQorI2RlZmluZSBTWVNfTkFNRV9JRF9zMzkweF9saW51eDIgICAgICAgICAxOTAzDQorI2RlZmlu
ZSBTWVNfTkFNRV9JRF9zMzkweF9saW51eDIyICAgICAgICAxOTA0DQorI2RlZmluZSBTWVNfTkFN
RV9JRF9zMzkweF9saW51eDI0ICAgICAgICAxOTA1DQogDQogI2RlZmluZSBTWVNfTkFNRV9JRF9h
bHBoYV9saW51eF8yICAgICAgIDIwMDANCiAjZGVmaW5lIFNZU19OQU1FX0lEX2FscGhhX2xpbnV4
XzIyICAgICAgMjAwMQ0KLS0tIG9wZW5hZnMvLi9zcmMvY29uZmlnL3BhcmFtLnMzOTB4X2xpbnV4
MjQuaAkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMA0KKysrIG9wZW5hZnMtczM5
MHgvLi9zcmMvY29uZmlnL3BhcmFtLnMzOTB4X2xpbnV4MjQuaAkyMDA0LTA4LTA1IDExOjQ5OjI4
LjAwMDAwMDAwMCArMDIwMA0KQEAgLTAsMCArMSwxNjkgQEANCisjaWZuZGVmIFVLRVJORUwNCisv
KiBUaGlzIHNlY3Rpb24gZm9yIGtlcm5lbCBsaWJhZnMgY29tcGlsZXMgb25seSAqLw0KKw0KKy8q
DQorICogQ29weXJpZ2h0IDIwMDAsIEludGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMgQ29y
cG9yYXRpb24gYW5kIG90aGVycy4NCisgKiBBbGwgUmlnaHRzIFJlc2VydmVkLg0KKyAqIA0KKyAq
IFRoaXMgc29mdHdhcmUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBJ
Qk0gUHVibGljDQorICogTGljZW5zZS4gIEZvciBkZXRhaWxzLCBzZWUgdGhlIExJQ0VOU0UgZmls
ZSBpbiB0aGUgdG9wLWxldmVsIHNvdXJjZQ0KKyAqIGRpcmVjdG9yeSBvciBvbmxpbmUgYXQgaHR0
cDovL3d3dy5vcGVuYWZzLm9yZy9kbC9saWNlbnNlMTAuaHRtbA0KKyAqLw0KKw0KKw0KKyNpZm5k
ZWYgQUZTX1BBUkFNX0gNCisjZGVmaW5lIEFGU19QQVJBTV9IDQorDQorLyogSW4gdXNlciBzcGFj
ZSB0aGUgQUZTX0xJTlVYMjBfRU5WIHNob3VsZCBiZSBzdWZmaWNpZW50LiBJbiB0aGUga2VybmVs
LA0KKyAqIGl0J3MgYSBqdWRnbWVudCBjYWxsLiBJZiBzb21ldGhpbmcgaXMgb2J2aW91c2x5IHMz
OTAgc3BlY2lmaWMsIHVzZSB0aGF0DQorICogI2RlZmluZSBpbnN0ZWFkLiBOb3RlIHRoYXQgIjIw
IiByZWZlcnMgdG8gdGhlIGxpbnV4IDIuMCBrZXJuZWwuIFRoZSAiMiINCisgKiBpbiB0aGUgc3lz
bmFtZSBpcyB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBjbGllbnQuIFRoaXMgdGFrZXMgaW50
bw0KKyAqIGFjY291bnQgdGhlIHBlcmZlcnJlZCBPUyB1c2VyIHNwYWNlIGNvbmZpZ3VyYXRpb24g
YXMgd2VsbCBhcyB0aGUga2VybmVsLg0KKyAqLw0KKw0KKyNkZWZpbmUgQUZTX0xJTlVYMjBfRU5W
IDENCisjZGVmaW5lIEFGU19MSU5VWDIyX0VOVgkxDQorI2RlZmluZSBBRlNfTElOVVgyNF9FTlYJ
MQ0KKyNkZWZpbmUgQUZTX1MzOTBfTElOVVgyMF9FTlYgICAgMQ0KKyNkZWZpbmUgQUZTX1MzOTBf
TElOVVgyMl9FTlYJMQ0KKyNkZWZpbmUgQUZTX1MzOTBfTElOVVgyNF9FTlYJMQ0KKyNkZWZpbmUg
QUZTX1MzOTBYX0xJTlVYMjBfRU5WICAgIDENCisjZGVmaW5lIEFGU19TMzkwWF9MSU5VWDIyX0VO
VgkxDQorI2RlZmluZSBBRlNfUzM5MFhfTElOVVgyNF9FTlYJMQ0KKyNkZWZpbmUgQUZTX05PTkZT
VFJBTlMgMQ0KKw0KKyNkZWZpbmUgQUZTX01PVU5UX0FGUyAiYWZzIgkvKiBUaGUgbmFtZSBvZiB0
aGUgZmlsZXN5c3RlbSB0eXBlLiAqLw0KKyNkZWZpbmUgQUZTX1NZU0NBTEwgMTM3DQorI2RlZmlu
ZSBBRlNfNjRCSVRfRU5WICAxDQorI2RlZmluZSBBRlNfNjRCSVRQT0lOVEVSX0VOViAgMQ0KKyNk
ZWZpbmUgQUZTXzY0QklUX0NMSUVOVCAgMQ0KKyNkZWZpbmUgQUZTXzY0QklUX0tFUk5FTCAgMQ0K
KyNkZWZpbmUgQUZTXzY0QklUX0lPUFNfRU5WICAxDQorI2RlZmluZSBBRlNfTkFNRUlfRU5WICAg
ICAxCS8qIFVzZXIgc3BhY2UgaW50ZXJmYWNlIHRvIGZpbGUgc3lzdGVtICovDQorDQorI2lmIGRl
ZmluZWQoX19LRVJORUxfXykgJiYgIWRlZmluZWQoS0RVTVBfS0VSTkVMKQ0KKyNpbmNsdWRlIDxs
aW51eC90aHJlYWRzLmg+DQorDQorI2luY2x1ZGUgPGxpbnV4L2NvbmZpZy5oPg0KKyNpZmRlZiBD
T05GSUdfU01QDQorI3VuZGVmIENPTkZJR19TTVANCisjZW5kaWYNCisvKiBVc2luZyAiQUZTX1NN
UCIgdG8gbWFwIHRvIGhvd2V2ZXIgbWFueSAjZGVmaW5lJ3MgYXJlIHJlcXVpcmVkIHRvIGdldA0K
KyAqIE1QIHRvIGNvbXBpbGUgZm9yIExpbnV4DQorICovDQorI2lmZGVmIEFGU19TTVANCisjZGVm
aW5lIENPTkZJR19TTVAgMQ0KKyNpZm5kZWYgQ09ORklHX1MzOTBfTE9DQUxfQVBJQw0KKyNkZWZp
bmUgQ09ORklHX1MzOTBfTE9DQUxfQVBJQyAxDQorI2VuZGlmDQorI2lmbmRlZiBfX1NNUF9fDQor
I2RlZmluZSBfX1NNUF9fDQorI2VuZGlmDQorI2RlZmluZSBBRlNfR0xPQkFMX1NVTkxPQ0sNCisj
ZW5kaWYNCisjaWYgZGVmaW5lZChNT0RVTEUpICYmIGRlZmluZWQoQ09ORklHX01PRFZFUlNJT05T
KQ0KKyNkZWZpbmUgTU9EVkVSU0lPTlMNCisjaW5jbHVkZSA8bGludXgvbW9kdmVyc2lvbnMuaD4N
CisjZW5kaWYNCisjZW5kaWYgLyogX19LRVJORUxfXyAgJiYgIURVTVBfS0VSTkVMICovDQorDQor
I2luY2x1ZGUgPGFmcy9hZnNfc3lzbmFtZXMuaD4NCisNCisjZGVmaW5lIEFGU19VU0VSU1BBQ0Vf
SVBfQUREUiAxDQorI2RlZmluZSBSWEtfTElTVEVORVJfRU5WIDENCisjZGVmaW5lIEFGU19HQ1BB
R1MgICAgICAgMgkvKiBTZXQgdG8gVXNlcmRpc2FibGVkLCBhbGxvdyBzeXNjdGwgdG8gb3ZlcnJp
ZGUgKi8NCisNCisvKiBNYWNoaW5lIC8gT3BlcmF0aW5nIHN5c3RlbSBpbmZvcm1hdGlvbiAqLw0K
KyNkZWZpbmUgU1lTX05BTUUJInMzOTB4X2xpbnV4MjQiDQorI2RlZmluZSBTWVNfTkFNRV9JRAlT
WVNfTkFNRV9JRF9zMzkweF9saW51eDI0DQorI2RlZmluZSBBRlNCSUdfRU5ESUFOICAgIDENCisj
ZGVmaW5lIEFGU19IQVZFX0ZGUyAgICAgICAgMQkvKiBVc2Ugc3lzdGVtJ3MgZmZzLiAqLw0KKyNk
ZWZpbmUgQUZTX0hBVkVfU1RBVFZGUyAgICAwCS8qIFN5c3RlbSBkb2Vzbid0IHN1cHBvcnQgc3Rh
dHZmcyAqLw0KKyNkZWZpbmUgQUZTX1ZNX1JEV1JfRU5WCSAgICAxCS8qIHJlYWQvd3JpdGUgaW1w
bGVtZW50ZWQgdmlhIFZNICovDQorDQorI2lmZGVmIEtFUk5FTA0KKyNpZm5kZWYgTUlODQorI2Rl
ZmluZSBNSU4oQSxCKSAoKEEpIDwgKEIpID8gKEEpIDogKEIpKQ0KKyNlbmRpZg0KKyNpZm5kZWYg
TUFYDQorI2RlZmluZSBNQVgoQSxCKSAoKEEpID4gKEIpID8gKEEpIDogKEIpKQ0KKyNlbmRpZg0K
KyNlbmRpZiAvKiBLRVJORUwgKi8NCisNCisjZW5kaWYgLyogQUZTX1BBUkFNX0ggKi8NCisNCisj
ZWxzZSAvKiAhZGVmaW5lZChVS0VSTkVMKSAqLw0KKw0KKy8qIFRoaXMgc2VjdGlvbiBmb3IgdXNl
ciBzcGFjZSBjb21waWxlcyBvbmx5ICovDQorDQorLyogDQorICogQ29weXJpZ2h0IDIwMDAsIElu
dGVybmF0aW9uYWwgQnVzaW5lc3MgTWFjaGluZXMgQ29ycG9yYXRpb24gYW5kIG90aGVycy4NCisg
KiBBbGwgUmlnaHRzIFJlc2VydmVkLg0KKyAqIA0KKyAqIFRoaXMgc29mdHdhcmUgaGFzIGJlZW4g
cmVsZWFzZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBJQk0gUHVibGljDQorICogTGljZW5zZS4g
IEZvciBkZXRhaWxzLCBzZWUgdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgdG9wLWxldmVsIHNvdXJj
ZQ0KKyAqIGRpcmVjdG9yeSBvciBvbmxpbmUgYXQgaHR0cDovL3d3dy5vcGVuYWZzLm9yZy9kbC9s
aWNlbnNlMTAuaHRtbA0KKyAqLw0KKw0KKyNpZm5kZWYgQUZTX1BBUkFNX0gNCisjZGVmaW5lIEFG
U19QQVJBTV9IDQorDQorLyogSW4gdXNlciBzcGFjZSB0aGUgQUZTX0xJTlVYMjBfRU5WIHNob3Vs
ZCBiZSBzdWZmaWNpZW50LiBJbiB0aGUga2VybmVsLA0KKyAqIGl0J3MgYSBqdWRnbWVudCBjYWxs
LiBJZiBzb21ldGhpbmcgaXMgb2J2aW91c2x5IHMzOTAgc3BlY2lmaWMsIHVzZSB0aGF0DQorICog
I2RlZmluZSBpbnN0ZWFkLiBOb3RlIHRoYXQgIjIwIiByZWZlcnMgdG8gdGhlIGxpbnV4IDIuMCBr
ZXJuZWwuIFRoZSAiMiINCisgKiBpbiB0aGUgc3lzbmFtZSBpcyB0aGUgY3VycmVudCB2ZXJzaW9u
IG9mIHRoZSBjbGllbnQuIFRoaXMgdGFrZXMgaW50bw0KKyAqIGFjY291bnQgdGhlIHBlcmZlcnJl
ZCBPUyB1c2VyIHNwYWNlIGNvbmZpZ3VyYXRpb24gYXMgd2VsbCBhcyB0aGUga2VybmVsLg0KKyAq
Lw0KKw0KKyNkZWZpbmUgVUtFUk5FTAkJCTEJLyogdXNlciBzcGFjZSBrZXJuZWwgKi8NCisjZGVm
aW5lIEFGU19FTlYJCQkxDQorI2RlZmluZSBBRlNfVVNSX0xJTlVYMjBfRU5WICAgICAxDQorI2Rl
ZmluZSBBRlNfVVNSX0xJTlVYMjJfRU5WCTENCisjZGVmaW5lIEFGU19VU1JfTElOVVgyNF9FTlYJ
MQ0KKyNkZWZpbmUgQUZTX1MzOTBYX0xJTlVYMjBfRU5WICAgIDENCisjZGVmaW5lIEFGU19TMzkw
WF9MSU5VWDIyX0VOVgkxDQorI2RlZmluZSBBRlNfUzM5MFhfTElOVVgyNF9FTlYJMQ0KKyNkZWZp
bmUgQUZTX05PTkZTVFJBTlMgMQ0KKw0KKyNkZWZpbmUgQUZTX01PVU5UX0FGUyAiYWZzIgkvKiBU
aGUgbmFtZSBvZiB0aGUgZmlsZXN5c3RlbSB0eXBlLiAqLw0KKyNkZWZpbmUgQUZTX1NZU0NBTEwg
MTM3DQorI2RlZmluZSBBRlNfNjRCSVRfRU5WICAxDQorI2RlZmluZSBBRlNfNjRCSVRfQ0xJRU5U
ICAxDQorI2RlZmluZSBBRlNfNjRCSVRQT0lOVEVSX0VOViAgMQ0KKyNkZWZpbmUgQUZTXzY0QklU
X0lPUFNfRU5WICAxDQorI2RlZmluZSBBRlNfTkFNRUlfRU5WICAgICAxCS8qIFVzZXIgc3BhY2Ug
aW50ZXJmYWNlIHRvIGZpbGUgc3lzdGVtICovDQorI2luY2x1ZGUgPGFmcy9hZnNfc3lzbmFtZXMu
aD4NCisNCisjZGVmaW5lIEFGU19VU0VSU1BBQ0VfSVBfQUREUiAxDQorI2RlZmluZSBSWEtfTElT
VEVORVJfRU5WIDENCisjZGVmaW5lIEFGU19HQ1BBR1MJCTAJLyogaWYgbm9uemVybywgZ2FyYmFn
ZSBjb2xsZWN0IFBBR3MgKi8NCisNCisNCisvKiBNYWNoaW5lIC8gT3BlcmF0aW5nIHN5c3RlbSBp
bmZvcm1hdGlvbiAqLw0KKyNkZWZpbmUgU1lTX05BTUUJInMzOTB4X2xpbnV4MjQiDQorI2RlZmlu
ZSBTWVNfTkFNRV9JRAlTWVNfTkFNRV9JRF9zMzkweF9saW51eDI0DQorI2RlZmluZSBBRlNCSUdf
RU5ESUFOICAgIDENCisjZGVmaW5lIEFGU19IQVZFX0ZGUyAgICAgICAgMQkvKiBVc2Ugc3lzdGVt
J3MgZmZzLiAqLw0KKyNkZWZpbmUgQUZTX0hBVkVfU1RBVFZGUyAgICAwCS8qIFN5c3RlbSBkb2Vz
bid0IHN1cHBvcnQgc3RhdHZmcyAqLw0KKyNkZWZpbmUgQUZTX1ZNX1JEV1JfRU5WCSAgICAxCS8q
IHJlYWQvd3JpdGUgaW1wbGVtZW50ZWQgdmlhIFZNICovDQorDQorI2RlZmluZQlhZnNpb19pb3YJ
dWlvX2lvdg0KKyNkZWZpbmUJYWZzaW9faW92Y250CXVpb19pb3ZjbnQNCisjZGVmaW5lCWFmc2lv
X29mZnNldAl1aW9fb2Zmc2V0DQorI2RlZmluZQlhZnNpb19zZWcJdWlvX3NlZ2ZsZw0KKyNkZWZp
bmUJYWZzaW9fZm1vZGUJdWlvX2Ztb2RlDQorI2RlZmluZQlhZnNpb19yZXNpZAl1aW9fcmVzaWQN
CisjZGVmaW5lCUFGU19VSU9TWVMJMQ0KKyNkZWZpbmUJQUZTX1VJT1VTRVIJVUlPX1VTRVJTUEFD
RQ0KKyNkZWZpbmUJQUZTX0NMQllURVMJTUNMQllURVMNCisjZGVmaW5lCUFGU19NSU5DSEFOR0UJ
Mg0KKyNkZWZpbmUJVkFUVFJfTlVMTAl1c3JfdmF0dHJfbnVsbA0KKw0KKyNkZWZpbmUgQUZTX0RJ
UkVOVA0KKyNpZm5kZWYgQ01TRVJWRVJQUkVGDQorI2RlZmluZSBDTVNFUlZFUlBSRUYNCisjZW5k
aWYNCisNCisjZW5kaWYgLyogQUZTX1BBUkFNX0ggKi8NCisNCisjZW5kaWYgLyogIWRlZmluZWQo
VUtFUk5FTCkgKi8NCi0tLSBvcGVuYWZzLy4vc3JjL2NvbmZpZy9tYWtlX2xpYmFmc190cmVlLnBs
CTIwMDItMTAtMTYgMDU6NTg6MzEuMDAwMDAwMDAwICswMjAwDQorKysgb3BlbmFmcy1zMzkweC8u
L3NyYy9jb25maWcvbWFrZV9saWJhZnNfdHJlZS5wbAkyMDA0LTA4LTA2IDE2OjI1OjMxLjAwMDAw
MDAwMCArMDIwMA0KQEAgLTk2LDcgKzk2LDcgQEANCiAJJHN1YmRpciA9fiBzfC8kfHxnaW87DQog
DQogCXByaW50ICIjICRkaXIvJGRlcG5hbWVcbiI7DQotCW9wZW4oQ09NUFMsICIkZGlyLyRkZXBu
YW1lIik7DQorCW9wZW4oQ09NUFMsICIkZGVwbmFtZSIpOw0KIAl3aGlsZSAoIGRlZmluZWQoJGZp
bGUgPSA8Q09NUFM+KSApDQogCXsNCiAJCW15ICgkZGVzdGRpciwgJHByb2pfc3JjLCRvYmpfc3Jj
KTsNCi0tLSBvcGVuYWZzLy4vc3JjL2Fmcy9hZnMuaAkyMDA0LTA1LTE5IDIyOjMxOjE4LjAwMDAw
MDAwMCArMDIwMA0KKysrIG9wZW5hZnMtczM5MHgvLi9zcmMvYWZzL2Fmcy5oCTIwMDQtMDgtMDUg
MTI6MzQ6NTEuMDAwMDAwMDAwICswMjAwDQpAQCAtOTAwLDcgKzkwMCw3IEBADQogICovDQogI2Rl
ZmluZSBhZnNfaW5vZGVfdCBpbm82NF90DQogI2Vsc2UNCi0jaWYgZGVmaW5lZChBRlNfTElOVVhf
NjRCSVRfS0VSTkVMKQ0KKyNpZiBkZWZpbmVkKEFGU19MSU5VWF82NEJJVF9LRVJORUwpICYmICFk
ZWZpbmVkKEFGU19TMzkwWF9MSU5VWDI0X0VOVikNCiAjZGVmaW5lIGFmc19pbm9kZV90IGxvbmcN
CiAjZWxzZQ0KICNpZiBkZWZpbmVkKEFGU19BSVg1MV9FTlYpIHx8IGRlZmluZWQoQUZTX0hQVVgx
MTIzX0VOVikNCi0tLSBvcGVuYWZzLy4vc3JjL2Fmcy9hZnNfY2FsbC5jCTIwMDQtMDgtMDIgMTM6
NTg6MzguMDAwMDAwMDAwICswMjAwDQorKysgb3BlbmFmcy1zMzkweC8uL3NyYy9hZnMvYWZzX2Nh
bGwuYwkyMDA0LTA4LTA1IDEyOjMzOjEyLjAwMDAwMDAwMCArMDIwMA0KQEAgLTExNDgsNiArMTE0
OCw4IEBADQogICAgIGlmIChjdXJyZW50LT50aHJlYWQuZmxhZ3MgJiBUSFJFQURfSUEzMikNCiAj
ZWxpZiBkZWZpbmVkKEFGU19QUEM2NF9MSU5VWDIwX0VOVikNCiAgICAgaWYgKGN1cnJlbnQtPnRo
cmVhZC5mbGFncyAmIFBQQ19GTEFHXzMyQklUKSANCisjZWxpZiBkZWZpbmVkKEFGU19TMzkwWF9M
SU5VWDIwX0VOVikNCisgICAgaWYgKGN1cnJlbnQtPnRocmVhZC5mbGFncyAmIFMzOTBfRkxBR18z
MUJJVCkgDQogI2Vsc2UNCiAjZXJyb3IgTm90IGRvbmUgZm9yIHRoaXMgbGludXggdmVyc2lvbg0K
ICNlbmRpZg0KLS0tIG9wZW5hZnMvLi9zcmMvYWZzL2Fmc19waW9jdGwuYwkyMDA0LTA2LTA4IDE5
OjI3OjQ2LjAwMDAwMDAwMCArMDIwMA0KKysrIG9wZW5hZnMtczM5MHgvLi9zcmMvYWZzL2Fmc19w
aW9jdGwuYwkyMDA0LTA4LTA1IDEyOjM2OjAyLjAwMDAwMDAwMCArMDIwMA0KQEAgLTI2OSw2ICsy
NjksOCBAQA0KICAgICBpZiAoY3VycmVudC0+dGhyZWFkLmZsYWdzICYgVEhSRUFEX0lBMzIpDQog
I2VsaWYgZGVmaW5lZChBRlNfUFBDNjRfTElOVVgyMF9FTlYpDQogICAgIGlmIChjdXJyZW50LT50
aHJlYWQuZmxhZ3MgJiBQUENfRkxBR18zMkJJVCkNCisjZWxpZiBkZWZpbmVkKEFGU19TMzkwWF9M
SU5VWDIwX0VOVikNCisgICAgaWYgKGN1cnJlbnQtPnRocmVhZC5mbGFncyAmIFMzOTBfRkxBR18z
MUJJVCkNCiAjZWxzZQ0KICNlcnJvciBOb3QgZG9uZSBmb3IgdGhpcyBsaW51eCB0eXBlDQogI2Vu
ZGlmDQotLS0gb3BlbmFmcy8uL3NyYy9hZnMvTElOVVgvb3NpX21vZHVsZS5jCTIwMDQtMDYtMjEg
MjM6NDY6MTcuMDAwMDAwMDAwICswMjAwDQorKysgb3BlbmFmcy1zMzkweC8uL3NyYy9hZnMvTElO
VVgvb3NpX21vZHVsZS5jCTIwMDQtMDgtMDUgMTI6NTA6NTkuMDAwMDAwMDAwICswMjAwDQpAQCAt
NDcsMTggKzQ3LDI1IEBADQogI2VuZGlmDQogYXNtbGlua2FnZSBsb25nICgqc3lzX3NldGdyb3Vw
c3ApIChpbnQgZ2lkc2V0c2l6ZSwgZ2lkX3QgKiBncm91cGxpc3QpOw0KICNpZmRlZiBFWFBPUlRF
RF9TWVNfQ0FMTF9UQUJMRQ0KLSNpZmRlZiBBRlNfU1BBUkM2NF9MSU5VWDIwX0VOVg0KLWV4dGVy
biB1bnNpZ25lZCBpbnQgc3lzX2NhbGxfdGFibGVbXTsJLyogY2hhbmdlZCB0byB1aW50IGJlY2F1
c2UgU1BBUkM2NCBoYXMgc3lzY2FsdGFibGUgb2YgMzJiaXQgaXRlbXMgKi8NCisjaWYgZGVmaW5l
ZChBRlNfU1BBUkM2NF9MSU5VWDIwX0VOVikgfHwgZGVmaW5lZChBRlNfUzM5MFhfTElOVVgyNF9F
TlYpDQorZXh0ZXJuIHVuc2lnbmVkIGludCBzeXNfY2FsbF90YWJsZVtdOwkvKiBjaGFuZ2VkIHRv
IHVpbnQgYmVjYXVzZSBTUEFSQzY0IGFuZCBTMzkwWCBoYXZlIHN5c2NhbGx0YWJsZSBvZiAzMmJp
dCBpdGVtcyAqLw0KICNlbHNlDQogZXh0ZXJuIHZvaWQgKnN5c19jYWxsX3RhYmxlW107CS8qIHNh
ZmVyIGZvciBvdGhlciBsaW51Y2VzICovDQogI2VuZGlmDQogI2Vsc2UgLyogRVhQT1JURURfU1lT
X0NBTExfVEFCTEUgKi8NCi0jaWZkZWYgQUZTX1NQQVJDNjRfTElOVVgyMF9FTlYNCi1zdGF0aWMg
dW5zaWduZWQgaW50ICpzeXNfY2FsbF90YWJsZTsJLyogY2hhbmdlZCB0byB1aW50IGJlY2F1c2Ug
U1BBUkM2NCBoYXMgc3lzY2FsdGFibGUgb2YgMzJiaXQgaXRlbXMgKi8NCisjaWYgZGVmaW5lZChB
RlNfU1BBUkM2NF9MSU5VWDIwX0VOVikgfHwgZGVmaW5lZChBRlNfUzM5MFhfTElOVVgyNF9FTlYp
DQorc3RhdGljIHVuc2lnbmVkIGludCAqc3lzX2NhbGxfdGFibGU7CS8qIGNoYW5nZWQgdG8gdWlu
dCBiZWNhdXNlIFNQQVJDNjQgYW5kIFMzOTBYIGhhdmUgc3lzY2FsbHRhYmxlIG9mIDMyYml0IGl0
ZW1zICovDQogI2Vsc2UNCiBzdGF0aWMgdm9pZCAqKnN5c19jYWxsX3RhYmxlOwkvKiBzYWZlciBm
b3Igb3RoZXIgbGludWNlcyAqLw0KICNlbmRpZg0KICNlbmRpZg0KKw0KKyNpZiBkZWZpbmVkKEFG
U19TMzkwWF9MSU5VWDI0X0VOVikNCisjZGVmaW5lIF9TKHgpICgoeCk8PDEpDQorI2Vsc2UNCisj
ZGVmaW5lIF9TKHgpIHgNCisjZW5kaWYNCisNCiBleHRlcm4gc3RydWN0IGZpbGVfc3lzdGVtX3R5
cGUgYWZzX2ZzX3R5cGU7DQogDQogc3RhdGljIGxvbmcgZ2V0X3BhZ2Vfb2Zmc2V0KHZvaWQpOw0K
QEAgLTc2LDcgKzgzLDcgQEANCiAvKiBTaW5jZSBzeXNfbmlfc3lzY2FsbCBpcyBub3QgZXhwb3J0
ZWQsIEkgbmVlZCB0byBjYWNoZSBpdCBpbiBvcmRlciB0byByZXN0b3JlDQogICogaXQuDQogICov
DQotI2lmZGVmIEFGU19TUEFSQzY0X0xJTlVYMjBfRU5WDQorI2lmIGRlZmluZWQoQUZTX1NQQVJD
NjRfTElOVVgyMF9FTlYpIHx8IGRlZmluZWQoQUZTX1MzOTBYX0xJTlVYMjRfRU5WKQ0KIHN0YXRp
YyB1bnNpZ25lZCBpbnQgYWZzX25pX3N5c2NhbGwgPSAwOw0KICNlbHNlDQogc3RhdGljIHZvaWQg
KmFmc19uaV9zeXNjYWxsID0gMDsNCkBAIC0yMDgsNyArMjE1LDcgQEANCiAJCQkJICAgIF9fa2Vy
bmVsX2dpZDMyX3QgKiBncm91cGxpc3QpOw0KICNlbmRpZiAvKiBBRlNfTElOVVgyNF9FTlYgKi8N
CiANCi0jaWZkZWYgQUZTX1NQQVJDNjRfTElOVVgyMF9FTlYNCisjaWYgZGVmaW5lZChBRlNfU1BB
UkM2NF9MSU5VWDIwX0VOVikgfHwgZGVmaW5lZChBRlNfUzM5MFhfTElOVVgyNF9FTlYpDQogI2Rl
ZmluZSBQT0lOVEVSMlNZU0NBTEwgKHVuc2lnbmVkIGludCkodW5zaWduZWQgbG9uZykNCiAjZGVm
aW5lIFNZU0NBTEwyUE9JTlRFUiAodm9pZCAqKShsb25nKQ0KICNlbHNlDQpAQCAtMzY1LDcgKzM3
Miw3IEBADQogCXByaW50ZigiRmFpbGVkIHRvIGZpbmQgYWRkcmVzcyBvZiBzeXNfY2FsbF90YWJs
ZVxuIik7DQogICAgIH0gZWxzZSB7DQogCXByaW50ZigiRm91bmQgc3lzX2NhbGxfdGFibGUgYXQg
JXhcbiIsIHN5c19jYWxsX3RhYmxlKTsNCi0jaWZkZWYgQUZTX1NQQVJDNjRfTElOVVgyMF9FTlYN
CisjaWYgZGVmaW5lZChBRlNfU1BBUkM2NF9MSU5VWDIwX0VOVikgfHwgZGVmaW5lZChBRlNfUzM5
MFhfTElOVVgyNF9FTlYpDQogCWVycm9yIGNhbnQgc3VwcG9ydCB0aGlzIHlldC47DQogI2VuZGlm
IC8qIEFGU19TUEFSQzY0X0xJTlVYMjBfRU5WICovDQogI2VuZGlmIC8qIEVYUE9SVEVEX1NZU19D
QUxMX1RBQkxFICovDQpAQCAtNDM1LDcgKzQ0Miw3IEBADQogDQogCS8qIEluaXRpYWxpemUgcG9p
bnRlcnMgdG8ga2VybmVsIHN5c2NhbGxzLiAqLw0KICNpZiAhZGVmaW5lZChBRlNfTElOVVgyNF9F
TlYpDQotCXN5c19zZXR0aW1lb2ZkYXlwID0gU1lTQ0FMTDJQT0lOVEVSIHN5c19jYWxsX3RhYmxl
W19fTlJfc2V0dGltZW9mZGF5XTsNCisJc3lzX3NldHRpbWVvZmRheXAgPSBTWVNDQUxMMlBPSU5U
RVIgc3lzX2NhbGxfdGFibGVbX1MoX19OUl9zZXR0aW1lb2ZkYXkpXTsNCiAjZW5kaWYgLyogQUZT
X0lBNjRfTElOVVgyMF9FTlYgKi8NCiANCiAJLyogc2V0dXAgQUZTIGVudHJ5IHBvaW50LiAqLw0K
QEAgLTQ0Myw3ICs0NTAsNyBAQA0KICNpZiBkZWZpbmVkKEFGU19JQTY0X0xJTlVYMjBfRU5WKQ0K
IAkJU1lTQ0FMTDJQT0lOVEVSIHN5c19jYWxsX3RhYmxlW19fTlJfYWZzX3N5c2NhbGwgLSAxMDI0
XQ0KICNlbHNlDQotCQlTWVNDQUxMMlBPSU5URVIgc3lzX2NhbGxfdGFibGVbX19OUl9hZnNfc3lz
Y2FsbF0NCisJCVNZU0NBTEwyUE9JTlRFUiBzeXNfY2FsbF90YWJsZVtfUyhfX05SX2Fmc19zeXNj
YWxsKV0NCiAjZW5kaWYNCiAJCT09IGFmc19zeXNjYWxsKSB7DQogCSAgICBwcmludGYoIkFGUyBz
eXNjYWxsIGVudHJ5IHBvaW50IGFscmVhZHkgaW4gdXNlIVxuIik7DQpAQCAtNDU0LDggKzQ2MSw4
IEBADQogCXN5c19jYWxsX3RhYmxlW19fTlJfYWZzX3N5c2NhbGwgLSAxMDI0XSA9DQogCQlQT0lO
VEVSMlNZU0NBTEwoKHN0cnVjdCBmcHRyICopYWZzX3N5c2NhbGxfc3R1YiktPmlwOw0KICNlbHNl
IC8qIEFGU19JQTY0X0xJTlVYMjBfRU5WICovDQotCWFmc19uaV9zeXNjYWxsID0gc3lzX2NhbGxf
dGFibGVbX19OUl9hZnNfc3lzY2FsbF07DQotCXN5c19jYWxsX3RhYmxlW19fTlJfYWZzX3N5c2Nh
bGxdID0gUE9JTlRFUjJTWVNDQUxMIGFmc19zeXNjYWxsOw0KKwlhZnNfbmlfc3lzY2FsbCA9IHN5
c19jYWxsX3RhYmxlW19TKF9fTlJfYWZzX3N5c2NhbGwpXTsNCisJc3lzX2NhbGxfdGFibGVbX1Mo
X19OUl9hZnNfc3lzY2FsbCldID0gUE9JTlRFUjJTWVNDQUxMIGFmc19zeXNjYWxsOw0KICNpZmRl
ZiBBRlNfU1BBUkM2NF9MSU5VWDIwX0VOVg0KIAlhZnNfbmlfc3lzY2FsbDMyID0gc3lzX2NhbGxf
dGFibGUzMltfX05SX2Fmc19zeXNjYWxsXTsNCiAJc3lzX2NhbGxfdGFibGUzMltfX05SX2Fmc19z
eXNjYWxsXSA9IFBPSU5URVIyU1lTQ0FMTCBhZnNfc3lzY2FsbDMyOw0KQEAgLTQ4Niw4ICs0OTMs
OCBAQA0KICAgICBzeXNfY2FsbF90YWJsZVtfX05SX3NldGdyb3VwcyAtIDEwMjRdID0NCiAJUE9J
TlRFUjJTWVNDQUxMKChzdHJ1Y3QgZnB0ciAqKWFmc194c2V0Z3JvdXBzX3N0dWIpLT5pcDsNCiAj
ZWxzZSAvKiBBRlNfSUE2NF9MSU5VWDIwX0VOViAqLw0KLSAgICBzeXNfc2V0Z3JvdXBzcCA9IFNZ
U0NBTEwyUE9JTlRFUiBzeXNfY2FsbF90YWJsZVtfX05SX3NldGdyb3Vwc107DQotICAgIHN5c19j
YWxsX3RhYmxlW19fTlJfc2V0Z3JvdXBzXSA9IFBPSU5URVIyU1lTQ0FMTCBhZnNfeHNldGdyb3Vw
czsNCisgICAgc3lzX3NldGdyb3Vwc3AgPSBTWVNDQUxMMlBPSU5URVIgc3lzX2NhbGxfdGFibGVb
X1MoX19OUl9zZXRncm91cHMpXTsNCisgICAgc3lzX2NhbGxfdGFibGVbX1MoX19OUl9zZXRncm91
cHMpXSA9IFBPSU5URVIyU1lTQ0FMTCBhZnNfeHNldGdyb3VwczsNCiAjaWZkZWYgQUZTX1NQQVJD
NjRfTElOVVgyMF9FTlYNCiAgICAgc3lzMzJfc2V0Z3JvdXBzcCA9IFNZU0NBTEwyUE9JTlRFUiBz
eXNfY2FsbF90YWJsZTMyW19fTlJfc2V0Z3JvdXBzXTsNCiAgICAgc3lzX2NhbGxfdGFibGUzMltf
X05SX3NldGdyb3Vwc10gPSBQT0lOVEVSMlNZU0NBTEwgYWZzMzJfeHNldGdyb3VwczsNCkBAIC01
NDgsOCArNTU1LDggQEANCiAJUE9JTlRFUjJTWVNDQUxMKChzdHJ1Y3QgZnB0ciAqKXN5c19zZXRn
cm91cHNwKS0+aXA7DQogICAgIHN5c19jYWxsX3RhYmxlW19fTlJfYWZzX3N5c2NhbGwgLSAxMDI0
XSA9IGFmc19uaV9zeXNjYWxsOw0KICNlbHNlIC8qIEFGU19JQTY0X0xJTlVYMjBfRU5WICovDQot
ICAgIHN5c19jYWxsX3RhYmxlW19fTlJfc2V0Z3JvdXBzXSA9IFBPSU5URVIyU1lTQ0FMTCBzeXNf
c2V0Z3JvdXBzcDsNCi0gICAgc3lzX2NhbGxfdGFibGVbX19OUl9hZnNfc3lzY2FsbF0gPSBhZnNf
bmlfc3lzY2FsbDsNCisgICAgc3lzX2NhbGxfdGFibGVbX1MoX19OUl9zZXRncm91cHMpXSA9IFBP
SU5URVIyU1lTQ0FMTCBzeXNfc2V0Z3JvdXBzcDsNCisgICAgc3lzX2NhbGxfdGFibGVbX1MoX19O
Ul9hZnNfc3lzY2FsbCldID0gYWZzX25pX3N5c2NhbGw7DQogIyBpZmRlZiBBRlNfU1BBUkM2NF9M
SU5VWDIwX0VOVg0KICAgICBzeXNfY2FsbF90YWJsZTMyW19fTlJfc2V0Z3JvdXBzXSA9IFBPSU5U
RVIyU1lTQ0FMTCBzeXMzMl9zZXRncm91cHNwOw0KICAgICBzeXNfY2FsbF90YWJsZTMyW19fTlJf
YWZzX3N5c2NhbGxdID0gYWZzX25pX3N5c2NhbGwzMjsNCi0tLSBvcGVuYWZzLy4vc3JjL2xpYmFm
cy9NYWtlZmlsZVByb3RvLkxJTlVYLmluCTIwMDQtMDgtMDIgMTM6NTg6MzkuMDAwMDAwMDAwICsw
MjAwDQorKysgb3BlbmFmcy1zMzkweC8uL3NyYy9saWJhZnMvTWFrZWZpbGVQcm90by5MSU5VWC5p
bgkyMDA0LTA4LTA1IDEyOjAwOjI3LjAwMDAwMDAwMCArMDIwMA0KQEAgLTYxLDYgKzYxLDEwIEBA
DQogQ0NGTEFHUyA9ICQoQ09NTU9OX0tFUk5fQ0ZMQUdTKSAtZnNpZ25lZC1jaGFyDQogREVGSU5F
UyA9ICQoQ09NTU9OX0RFRklORVMpIC1EX19zMzkwX18gDQogDQorPHMzOTB4X2xpbnV4MjIgczM5
MHhfbGludXgyND4NCitDQ0ZMQUdTID0gJChDT01NT05fS0VSTl9DRkxBR1MpIC1mc2lnbmVkLWNo
YXINCitERUZJTkVTID0gJChDT01NT05fREVGSU5FUykgLURfX3MzOTB4X18gDQorDQogPHNwYXJj
X2xpbnV4MjIgc3BhcmNfbGludXgyND4NCiBMRCA9IGxkIC1tIGVsZjMyX3NwYXJjDQogQ0NGTEFH
UyA9ICQoQ09NTU9OX0tFUk5fQ0ZMQUdTKSAtbWNwdT12OCAtbW5vLWZwdSAtZmNhbGwtdXNlZC1n
NSAtZmNhbGwtdXNlZC1nNw0KQEAgLTE1Miw2ICsxNTYsOCBAQA0KIAlsbiAtZnMgJHtMSU5VWF9L
RVJORUxfUEFUSH0vaW5jbHVkZS9hc20teDg2XzY0IGFzbQ0KIDxzMzkwX2xpbnV4MjIgczM5MF9s
aW51eDI0Pg0KIAlsbiAtZnMgJHtMSU5VWF9LRVJORUxfUEFUSH0vaW5jbHVkZS9hc20tczM5MCBh
c20NCis8czM5MHhfbGludXgyMiBzMzkweF9saW51eDI0Pg0KKwlsbiAtZnMgJHtMSU5VWF9LRVJO
RUxfUEFUSH0vaW5jbHVkZS9hc20tczM5MHggYXNtDQogPHBwY19saW51eDIyIHBwY19saW51eDI0
Pg0KIAlsbiAtZnMgJHtMSU5VWF9LRVJORUxfUEFUSH0vaW5jbHVkZS9hc20tcHBjIGFzbSANCiA8
cHBjNjRfbGludXgyND4NCg==
--=_mixed 004E60E6C1256EED_=
Content-Type: application/octet-stream; name="openafs-cvs-s390x.patch.description"
Content-Disposition: attachment; filename="openafs-cvs-s390x.patch.description"
Content-Transfer-Encoding: base64
b3BlbmFmcy8uL3NyYy9hZnMvTElOVVgvb3NpX21vZHVsZS5jDQovKg0KICAgY2hhbmdlZCB0byB1
aW50IGJlY2F1c2UgUzM5MFggaGFzIHN5c2NhbGx0YWJsZSBvZiAzMmJpdCBpdGVtcw0KICAgc3lz
X2NhbGxfdGFibGVbXSA9IHsNCiAgICAgICAgMzJiaXRfc3lzY2FsbCwgc3lzY2FsbCwNCiAgICAg
ICAgMzJiaXRfc3lzY2FsbCwgc3lzY2FsbCwNCiAgICAgICAgLi4uDQogICAgICAgIH0NCiovDQoN
Cm9wZW5hZnMvLi9zcmMvYWZzL2Fmcy5oDQovKg0KICAgUzM5MFggaGFzIDMyYml0IGlub2RlDQoq
Lw0KDQpvcGVuYWZzLy4vc3JjL2Fmcy9hZnNfcGlvY3RsLmMNCm9wZW5hZnMvLi9zcmMvYWZzL2Fm
c19jYWxsLmMNCi8qDQogICBTMzkwWCBwYXJhbWV0ZXIgY29udmVyc2lvbiBvbiBTMzkwX0ZMQUdf
MzFCSVQNCiovDQoNCm9wZW5hZnMvLi9zcmMvZGVzL2NyeXB0LmMNCi8qDQogICBsb25nIGlzIDY0
IGJpdHMNCiovDQoNCm9wZW5hZnMvLi9zcmMvbHdwL01ha2VmaWxlLmluDQpvcGVuYWZzLy4vc3Jj
L2x3cC9sd3AuYw0Kb3BlbmFmcy8uL3NyYy9sd3AvcHJvY2Vzcy5zDQpvcGVuYWZzLy4vc3JjL2x3
cC9wcm9jZXNzLnMzOTAucw0Kb3BlbmFmcy8uL3NyYy9sd3AvcHJvY2Vzcy5zMzkweC5zDQovKg0K
ICAgc2F2ZWNvbnRleHQgYW5kIHJldHVybnRvIGZvciBTMzkwWA0KKi8NCg0Kb3BlbmFmcy8uL3Ny
Yy9ib3pvL2Jvcy5jDQovKg0KICAgQkFEX1RJTUUgYnVnIGZpeGVkDQoqLw0KDQpvcGVuYWZzLy4v
c3JjL2thdXRoL2FkbWluX3Rvb2xzLmMNCm9wZW5hZnMvLi9zcmMva2F1dGgvYXV0aGNsaWVudC5j
DQovKg0KICAgZW5hYmxlIHNldHBhc3N3b3JkIHVuZGVyIFMzOTBYDQoqLw0KDQpvcGVuYWZzLy4v
YWNpbmNsdWRlLm00DQpvcGVuYWZzLy4vY29uZmlnLmd1ZXNzDQpvcGVuYWZzLy4vc3JjL2NmL29z
Y29uZi5tNA0Kb3BlbmFmcy8uL3NyYy9jb25maWcvYWZzX3N5c25hbWVzLmgNCm9wZW5hZnMvLi9z
cmMvY29uZmlnL3BhcmFtLnMzOTB4X2xpbnV4MjQuaA0Kb3BlbmFmcy8uL3NyYy9jb25maWcvbWFr
ZV9saWJhZnNfdHJlZS5wbA0Kb3BlbmFmcy8uL3NyYy9saWJhZnMvTWFrZWZpbGVQcm90by5MSU5V
WC5pbg0KLyoNCiAgIFMzOTBYIGNvbmZpZ3VyYXRpb24NCiovDQo=
--=_mixed 004E60E6C1256EED_=--