[COMMIT] Add the non-ASCII digit support, now #'parse-integer can handle it.

Aidan Kehoe <[email protected]> Mon, 16 Mar 2015 00:31:59 +0000
Newsgroups gmane.emacs.xemacs.patches
Message-ID <[email protected]>
CkFQUFJPVkUgQ09NTUlUCgpOT1RFOiBUaGlzIHBhdGNoIGhhcyBiZWVuIGNvbW1pdHRlZC4KCiMg
SEcgY2hhbmdlc2V0IHBhdGNoCiMgVXNlciBBaWRhbiBLZWhvZSA8a2Vob2VhQHBhcmhhc2FyZC5u
ZXQ+CiMgRGF0ZSAxNDI2NDY1Njk4IDAKIyAgICAgIE1vbiBNYXIgMTYgMDA6Mjg6MTggMjAxNSAr
MDAwMAojIE5vZGUgSUQgZTBmMWRmYWE4MjFlMzA4MTg0OTNjMmE3NzczZGJkZGM3ZTgyZTMyMgoj
IFBhcmVudCAgNWVhNzkwOTM2ZGU5ODE3Y2FlODk1MWIyNDc5NmY3NGYyZjIwZWI0ZQpBZGQgdGhl
IG5vbi1BU0NJSSBkaWdpdCBzdXBwb3J0LCBub3cgIydwYXJzZS1pbnRlZ2VyIGNhbiBoYW5kbGUg
aXQuCgpsaXNwL0NoYW5nZUxvZyBhZGRpdGlvbjoKCjIwMTUtMDMtMDggIEFpZGFuIEtlaG9lICA8
a2Vob2VhQHBhcmhhc2FyZC5uZXQ+CgoJKiBtdWxlL2RpZ2l0LmVsOiBOZXcgZmlsZSwgc3BlY2lm
eWluZyBpbnRlZ2VyIHdlaWdodHMgZm9yIHRob3NlCglkZWNpbWFsIGRpZ2l0cyBzcGVjaWZpZWQg
YnkgVW5pY29kZSwgYW5kIGZvciB0aGUgTGF0aW4gY2hhcmFjdGVycwoJaW4gQVNDSUkuCgkqIGR1
bXBlZC1saXNwLmVsIChwcmVsb2FkZWQtZmlsZS1saXN0KToKCUR1bXAgdGhpcyBmaWxlLCBzbyB0
aG9zZSB3ZWlnaHRzIGFyZSBhdmFpbGFibGUgYXQgcnVudGltZS4KCnRlc3RzL0NoYW5nZUxvZyBh
ZGRpdGlvbjoKCjIwMTUtMDMtMTYgIEFpZGFuIEtlaG9lICA8a2Vob2VhQHBhcmhhc2FyZC5uZXQ+
CgoJKiBhdXRvbWF0ZWQvbGlzcC10ZXN0cy5lbDoKCUV4dGVuZCB0aGUgdGVzdHMgZm9yICMncGFy
c2UtaW50ZWdlciwgIydkaWdpdC1jaGFyLCAjJ2RpZ2l0LWNoYXItcAoJc3Vic3RhbnRpYWxseSwg
dGVzdGluZyB0aGUgVW5pY29kZSBkZWNpbWFsIGRpZ2l0cyBpbiBkZXRhaWwuCgpzcmMvQ2hhbmdl
TG9nIGFkZGl0aW9uOgoKMjAxNS0wMy0wOCAgQWlkYW4gS2Vob2UgIDxrZWhvZWFAcGFyaGFzYXJk
Lm5ldD4KCgkqIGRhdGEuYyAoRnBhcnNlX2ludGVnZXIpOgoJRG9jdW1lbnQgYSBjb21wbGljYXRp
b24gdGhhdCBhcmlzZXMgd2hlbiBhIGxlYWRpbmcgbWludXMgc2lnbiBoYXMKCWEgZGlnaXQgd2Vp
Z2h0IGJ1dCBpcyBub25ldGhlbGVzIGludGVycHJldGVkIGFzIGEgbWludXMuCgpkaWZmIC1yIDVl
YTc5MDkzNmRlOSAtciBlMGYxZGZhYTgyMWUgbGlzcC9DaGFuZ2VMb2cKLS0tIGEvbGlzcC9DaGFu
Z2VMb2cJTW9uIE1hciAxNiAwMDoxMTozMCAyMDE1ICswMDAwCisrKyBiL2xpc3AvQ2hhbmdlTG9n
CU1vbiBNYXIgMTYgMDA6Mjg6MTggMjAxNSArMDAwMApAQCAtOTEsNiArOTEsMTQgQEAKIAkqIHNp
bXBsZS5lbCAoYXBwZW5kLW1lc3NhZ2UpOgogCVVwZGF0ZSB0aGlzIHRvIHJlZmxlY3QgYSBjaGFu
Z2VkIG1lc3NhZ2Utc3RhY2sgc3RydWN0dXJlLgogCisyMDE1LTAzLTA4ICBBaWRhbiBLZWhvZSAg
PGtlaG9lYUBwYXJoYXNhcmQubmV0PgorIAorIAkqIG11bGUvZGlnaXQuZWw6IE5ldyBmaWxlLCBz
cGVjaWZ5aW5nIGludGVnZXIgd2VpZ2h0cyBmb3IgdGhvc2UKKyAJZGVjaW1hbCBkaWdpdHMgc3Bl
Y2lmaWVkIGJ5IFVuaWNvZGUsIGFuZCBmb3IgdGhlIExhdGluIGNoYXJhY3RlcnMKKyAJaW4gQVND
SUkuCisgCSogZHVtcGVkLWxpc3AuZWwgKHByZWxvYWRlZC1maWxlLWxpc3QpOgorIAlEdW1wIHRo
aXMgZmlsZSwgc28gdGhvc2Ugd2VpZ2h0cyBhcmUgYXZhaWxhYmxlIGF0IHJ1bnRpbWUuCisgCiAy
MDE1LTAyLTI1ICBBaWRhbiBLZWhvZSAgPGtlaG9lYUBwYXJoYXNhcmQubmV0PgogCiAJKiBjbC1l
eHRyYS5lbCAoZGlnaXQtY2hhci1wKTogTW92ZWQgdG8gZGF0YS5jLgpkaWZmIC1yIDVlYTc5MDkz
NmRlOSAtciBlMGYxZGZhYTgyMWUgbGlzcC9kdW1wZWQtbGlzcC5lbAotLS0gYS9saXNwL2R1bXBl
ZC1saXNwLmVsCU1vbiBNYXIgMTYgMDA6MTE6MzAgMjAxNSArMDAwMAorKysgYi9saXNwL2R1bXBl
ZC1saXNwLmVsCU1vbiBNYXIgMTYgMDA6Mjg6MTggMjAxNSArMDAwMApAQCAtMjMzLDcgKzIzMyw4
IEBACiAJICJtdWxlL211bGUtbXN3LWluaXQtbGF0ZSIpCiAKICAgICAgICAod2hlbiAoZmVhdHVy
ZXAgJ211bGUpCi0JICJtdWxlL2dlbmVyYWwtbGF0ZSIpCisJICcoIm11bGUvZGlnaXQiCisgICAg
ICAgICAgICJtdWxlL2dlbmVyYWwtbGF0ZSIpKQogCiA7OzsgbXVsZS1sb2FkLmVsIGVuZHMgaGVy
ZQogCmRpZmYgLXIgNWVhNzkwOTM2ZGU5IC1yIGUwZjFkZmFhODIxZSBtYW4vQ2hhbmdlTG9nCi0t
LSBhL21hbi9DaGFuZ2VMb2cJTW9uIE1hciAxNiAwMDoxMTozMCAyMDE1ICswMDAwCisrKyBiL21h
bi9DaGFuZ2VMb2cJTW9uIE1hciAxNiAwMDoyODoxOCAyMDE1ICswMDAwCkBAIC0xNCw2ICsxNCwx
MyBAQAogCUFkZCBub3RlcyBhYm91dCBwaXhlbF90b19nbHlwaF90cmFuc2xhdGlvbiBhbmQgcmVs
YXRlZCBjb2RlLgogCShwaXhlbF90b19nbHlwaF90cmFuc2xhdGlvbik6IE5ldyBzZWN0aW9uLgkK
IAorMjAxNS0wMy0wOCAgQWlkYW4gS2Vob2UgIDxrZWhvZWFAcGFyaGFzYXJkLm5ldD4KKworCSog
bGlzcHJlZi9zdHJpbmdzLnRleGkgKFByZWRpY2F0ZXMgZm9yIENoYXJhY3RlcnMpOgorCURvY3Vt
ZW50IGBkaWdpdC1jaGFyLXAnLCBgZGlnaXQtY2hhcicgaGVyZS4KKwkqIGxpc3ByZWYvc3RyaW5n
cy50ZXhpIChTdHJpbmcgQ29udmVyc2lvbik6CisJRG9jdW1lbnQgYHBhcnNlLWludGVnZXInIGhl
cmUuCisKIDIwMTQtMDMtMjggIEplcnJ5IEphbWVzICA8amFtZXNAeGVtYWNzLm9yZz4KIAogCSog
TWFrZWZpbGUuaW46IERvIG5vdCBidWlsZCB0ZXhpbmZvIGZpbGVzLgpkaWZmIC1yIDVlYTc5MDkz
NmRlOSAtciBlMGYxZGZhYTgyMWUgbWFuL2xpc3ByZWYvc3RyaW5ncy50ZXhpCi0tLSBhL21hbi9s
aXNwcmVmL3N0cmluZ3MudGV4aQlNb24gTWFyIDE2IDAwOjExOjMwIDIwMTUgKzAwMDAKKysrIGIv
bWFuL2xpc3ByZWYvc3RyaW5ncy50ZXhpCU1vbiBNYXIgMTYgMDA6Mjg6MTggMjAxNSArMDAwMApA
QCAtMjk3LDYgKzI5NywyMiBAQAogVGhpcyBmdW5jdGlvbiByZXR1cm5zIEBjb2Rle3R9IGlmIEB2
YXJ7b2JqZWN0fSBpcyBhbiBpbnRlZ2VyIG9yIGNoYXJhY3Rlci4KIEBlbmQgZGVmdW4KIAorQGRl
ZnVuIGRpZ2l0LWNoYXItcCBjaGFyYWN0ZXIgJm9wdGlvbmFsIChyYWRpeCAxMCkgcmFkaXgtdGFi
bGUKK1RoaXMgZnVuY3Rpb24gcmV0dXJucyBub24tbmlsIGlmIEB2YXJ7Y2hhcmFjdGVyfSByZXBy
ZXNlbnRzIGEgZGlnaXQgaW4gYmFzZQorQHZhcntyYWRpeH0uIFRoZSBub24tbmlsIHZhbHVlIHJl
dHVybmVkIGlzIHRoZSBpbnRlZ2VyIHZhbHVlIGFzc29jaWF0ZWQgd2l0aAorQHZhcntjaGFyYWN0
ZXJ9LiBAdmFye3JhZGl4fSBkZWZhdWx0cyB0byBAY29kZXsxMH0uCisKK0B2YXJ7cmFkaXgtdGFi
bGV9LCBpZiBub24tbmlsLCBzcGVjaWZpZXMgYSBjaGFyYWN0ZXIgdGFibGUgbWFwcGluZyBmcm9t
CitjaGFyYWN0ZXJzIHRvIHRoZWlyIGRpZ2l0IHZhbHVlcy4gU2VlIHRoZSBmdW5jdGlvbiBAY29k
ZXtwYXJzZS1pbnRlZ2VyfSBpbgorQHJlZntTdHJpbmcgQ29udmVyc2lvbn0uCitAZW5kIGRlZnVu
CisKK0BkZWZ1biBkaWdpdC1jaGFyIHdlaWdodCAmb3B0aW9uYWwgKHJhZGl4IDEwKSByYWRpeC10
YWJsZQorVGhpcyBmdW5jdGlvbiBpcyB0aGUgaW52ZXJzZSBvZiBAY29kZXtkaWdpdC1jaGFyLXB9
LiBHaXZlbiBhbiBpbnRlZ2VyCitAdmFye3dlaWdodH0sIGl0IHJldHVybnMgYSBjaGFyYWN0ZXIg
cmVwcmVzZW50aW5nIEB2YXJ7d2VpZ2h0fSB3aGVuIHJlYWQgd2l0aAorYmFzZSBAdmFye3JhZGl4
fS4gSWYgbm8gc3VjaCBjaGFyYWN0ZXIgZXhpc3RzLCBpdCByZXR1cm5zIEBjb2Rle25pbH0uIAor
QGVuZCBkZWZ1bgorCiBAbm9kZSBDaGFyYWN0ZXIgQ29kZXMsIFRleHQgQ29tcGFyaXNvbiwgUHJl
ZGljYXRlcyBmb3IgQ2hhcmFjdGVycywgU3RyaW5ncyBhbmQgQ2hhcmFjdGVycwogQHNlY3Rpb24g
Q2hhcmFjdGVyIENvZGVzCiAKQEAgLTU1OCw2ICs1NzQsNDAgQEAKIFNlZSBhbHNvIHRoZSBmdW5j
dGlvbiBAY29kZXtmb3JtYXR9IGluIEByZWZ7Rm9ybWF0dGluZyBTdHJpbmdzfS4KIEBlbmQgZGVm
dW4KIAorQGRlZnVuIHBhcnNlLWludGVnZXIgc3RyaW5nICZrZXkgKHN0YXJ0IDApIGVuZCAocmFk
aXggMTApIGp1bmstYWxsb3dlZCByYWRpeC10YWJsZSkKK0BjaW5kZXggcGFyc2UtaW50ZWdlcgor
VGhpcyBmdW5jdGlvbiByZXR1cm5zIHRoZSBmaXhudW0gb3IgYmlnbnVtIHZhbHVlIHJlcHJlc2Vu
dGVkIGJ5IEB2YXJ7c3RyaW5nfQoraW4gYmFzZSBAdmFye3JhZGl4fS4gSWYgQHZhcntzdGFydH0g
b3IgQHZhcntlbmR9IGFyZSBzcGVjaWZpZWQsIHRoZXkgZGVzY3JpYmUKK2Egc3Vic2VxdWVuY2Ug
b2YgQHZhcntzdHJpbmd9IHRvIGV4YW1pbmUuIEB4cmVme1NlcXVlbmNlIEJhc2ljcywgU2VxdWVu
Y2UKK0Jhc2ljcywgU2VxdWVuY2VzLCBjbH0uICBJdCBza2lwcyB3aGl0ZXNwYWNlIGF0IHRoZSBi
ZWdpbm5pbmcgYW5kIGVuZCBvZiB0aGUKK2RpZ2l0cyBzZWVuLiBMZWFkaW5nIEBjb2Rlez8rfSBh
bmQgQGNvZGV7Py19IGFyZSBhY2NlcHRlZCBhbmQgaGF2ZSB0aGUgdXN1YWwKK21lYW5pbmc7IHRo
ZXJlIGlzIG5vIHByb3Zpc2lvbiBmb3IgcmVjb2duaXRpb24gb2YgYSBsZWFkaW5nIEBjb2RleyN4
fSBvcgorQGNvZGV7I299IHRvIGluZGljYXRlIGEgbm9uLWRlZmF1bHQgQHZhcntyYWRpeH0sIGFu
ZCB0aGVyZSBpcyBubyBzcGVjaWFsCitwcm92aXNpb24gZm9yIGEgdHJhaWxpbmcgQGNvZGV7Ln0u
CisKK0lmIEB2YXJ7anVuay1hbGxvd2VkfSBpcyBub24tbmlsLCBAY29kZXtwYXJzZS1pbnRlZ2Vy
fSBhbGxvd3Mgbm9uLWRpZ2l0LAorbm9uLXdoaXRlc3BhY2UgY2hhcmFjdGVycyBiZWZvcmUgb3Ig
YWZ0ZXIgdGhlIG51bWJlciB0byBiZSBwYXJzZWQuICBPdGhlcndpc2UsCitpdCBlcnJvcnMgd2hl
biBwcmVzZW50ZWQgd2l0aCBhbnl0aGluZyBvdGhlciB0aGFuIGFuIG9wdGlvbmFsIHNlcmllcyBv
Zgord2hpdGVzcGFjZSBjaGFyYWN0ZXJzLCBmb2xsb3dlZCBieSBhIG5vbi1vcHRpb25hbCBzZXJp
ZXMgb2YgZGlnaXQgY2hhcmFjdGVycywKK2ZvbGxvd2VkIGJ5IGFuIG9wdGlvbmFsIHNlcmllcyBv
ZiB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMuCisKK0Bjb2Rle3BhcnNlLWludGVnZXJ9IHJldHVybnMg
dHdvIHZhbHVlcywgdGhlIHNlY29uZCBvZiB3aGljaCBjYW4gYmUgYWNjZXNzZWQKK2J5LCBlLmcu
IEB4cmVme011bHRpcGxlIHZhbHVlcywgbXVsdGlwbGUtdmFsdWUtYmluZCwgLH0uICBJZgorQHZh
cntqdW5rLWFsbG93ZWR9IGlzIG5pbCwgdGhlIHNlY29uZCB2YWx1ZSBpcyBhbHdheXMgdGhlIGxl
bmd0aCBvZiB0aGF0CitzdWJzZXF1ZW5jZSBvZiBAdmFye3N0cmluZ30gc3BlY2lmaWVkLiAgT3Ro
ZXJ3aXNlLCBpdCBpcyB0aGUgaW5kZXggb2YgdGhlCitmaXJzdCBub24tZGlnaXQgdHJhaWxpbmcg
Y2hhcmFjdGVyIGVuY291bnRlcmVkLgorCitOb3JtYWxseSwgdGhlIGRpZ2l0IHZhbHVlcyBmb3Ig
ZWFjaCBjaGFyYWN0ZXIgZW5jb3VudGVyZWQgYXJlIHRob3NlIHJldHVybmVkCitieSBAY29kZXtk
aWdpdC1jaGFyLXB9LiBTcGVjaWZ5aW5nIEB2YXJ7cmFkaXgtdGFibGV9IGFsbG93cyB0aGlzIHRv
IGJlCitvdmVycmlkZGVuOyBpZiBpdCBpcyBzcGVjaWZpZWQsIGl0IGlzIGEgY2hhcmFjdGVyIHRh
YmxlIChAcHhyZWZ7Q2hhciBUYWJsZXN9KQorbWFwcGluZyBmcm9tIGNoYXJhY3RlcnMgdG8gZml4
bnVtIGRpZ2l0IHZhbHVlcy4gIElmIGEgZ2l2ZW4gY2hhcmFjdGVyIGhhcyBib3RoCithIGRpZ2l0
IHZhbHVlIGFuZCBhIHdoaXRlc3BhY2UgdmFsdWUsIHRoZSBkaWdpdCB2YWx1ZSBvdmVycmlkZXMu
IEhvd2V2ZXIsIGlmIGEKK0Bjb2Rlez8tfSBib3RoIGhhcyBhIGRpZ2l0IHZhbHVlIGFuZCBpcyB0
aGUgZmlyc3QgY2hhcmFjdGVyIGV4YW1pbmVkLCBpdHMKK2RpZ2l0IHZhbHVlIGlzIGlnbm9yZWQs
IGl0IGlzIHRyZWF0ZWQgYXMgaW5kaWNhdGluZyB0aGUgbnVtYmVyIGlzIG5lZ2F0aXZlLgorQSB3
b3JrLWFyb3VuZCBpcyB0byBwcmVwZW5kIGEgY2hhcmFjdGVyIGhhdmluZyBkaWdpdCB2YWx1ZSB6
ZXJvIHRvIHBvc2l0aXZlCitpbnRlZ2VycyBhbmQgdG8gZG91YmxlIHRoZSBsZWFkaW5nIEBjb2Rl
ez8tfSBmb3IgbmVnYXRpdmUgaW50ZWdlcnMuCitAZW5kIGRlZnVuCisKIEBkZWZ1biBzdHJpbmct
dG8tbnVtYmVyIHN0cmluZyAmb3B0aW9uYWwgYmFzZQogQGNpbmRleCBzdHJpbmcgdG8gbnVtYmVy
CiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIG51bWVyaWMgdmFsdWUgcmVwcmVzZW50ZWQgYnkg
QHZhcntzdHJpbmd9LApkaWZmIC1yIDVlYTc5MDkzNmRlOSAtciBlMGYxZGZhYTgyMWUgc3JjL0No
YW5nZUxvZwotLS0gYS9zcmMvQ2hhbmdlTG9nCU1vbiBNYXIgMTYgMDA6MTE6MzAgMjAxNSArMDAw
MAorKysgYi9zcmMvQ2hhbmdlTG9nCU1vbiBNYXIgMTYgMDA6Mjg6MTggMjAxNSArMDAwMApAQCAt
MSwzICsxLDkgQEAKKzIwMTUtMDMtMDggIEFpZGFuIEtlaG9lICA8a2Vob2VhQHBhcmhhc2FyZC5u
ZXQ+CisgIAorCSogZGF0YS5jIChGcGFyc2VfaW50ZWdlcik6CisJRG9jdW1lbnQgYSBjb21wbGlj
YXRpb24gdGhhdCBhcmlzZXMgd2hlbiBhIGxlYWRpbmcgbWludXMgc2lnbiBoYXMKKwlhIGRpZ2l0
IHdlaWdodCBidXQgaXMgbm9uZXRoZWxlcyBpbnRlcnByZXRlZCBhcyBhIG1pbnVzLgorCiAyMDE1
LTAzLTE1ICBBaWRhbiBLZWhvZSAgPGtlaG9lYUBwYXJoYXNhcmQubmV0PgogCiAJKiB0ZXh0Lmg6
IE1ha2UgQ0hBUl9DT0RFX0xJTUlUIGF2YWlsYWJsZSBhcyBhICNkZWZpbmUuCmRpZmYgLXIgNWVh
NzkwOTM2ZGU5IC1yIGUwZjFkZmFhODIxZSBzcmMvZGF0YS5jCi0tLSBhL3NyYy9kYXRhLmMJTW9u
IE1hciAxNiAwMDoxMTozMCAyMDE1ICswMDAwCisrKyBiL3NyYy9kYXRhLmMJTW9uIE1hciAxNiAw
MDoyODoxOCAyMDE1ICswMDAwCkBAIC0xOTQwLDYgKzE5NDAsMTMgQEAKIHBvc3NpYmxlIHZhbHVl
cyBmdXJ0aGVyLCBhbmQgdGhlIG1heGltdW0gUkFESVggYXZhaWxhYmxlIGlzIGFsd2F5cyB0aGUg
bGFyZ2VzdAogcG9zaXRpdmUgdmFsdWUgYXZhaWxhYmxlIFJBRElYLVRBQkxFLgogCitJZiBSQURJ
WC1UQUJMRSAob3IgYGRpZ2l0LWZpeG51bS1tYXAnKSBhc3NpZ25zIGEgbnVtZXJpYyB2YWx1ZSB0
byBgLScsIGl0cworZGlnaXQgdmFsdWUgd2lsbCBiZSBpZ25vcmVkIGlmID8tIGlzIHRoZSBmaXJz
dCBjaGFyYWN0ZXIgaW4gYSBzdHJpbmcuIFRoZQorbnVtYmVyIHdpbGwgYmUgdHJlYXRlZCBhcyBu
ZWdhdGl2ZS4gIFRvIHdvcmsgYXJvdW5kIHRoaXMsIGRvdWJsZSBpdCwgb3IgYXNzaWduCithbm90
aGVyIGNoYXJhY3RlciB0aGUgdmFsdWUgemVybyBhbmQgcHJlZml4IG5vbi1uZWdhdGl2ZSBzdHJp
bmdzIHdpdGggdGhhdC4gIEEKK2RpZ2l0IHZhbHVlIGZvciA/KyB3aWxsIGJlIHJlc3BlY3RlZCBl
dmVuIGlmIGl0IGlzIHRoZSBmaXJzdCBjaGFyYWN0ZXIgaW4gdGhlCityZXByZXNlbnRhdGlvbiBv
ZiBhbiBpbnRlZ2VyLgorCiBhcmd1bWVudHM6IChTVFJJTkcgJmtleSAoU1RBUlQgMCkgZW5kIChS
QURJWCAxMCkganVuay1hbGxvd2VkIHJhZGl4LXRhYmxlKQogKi8KICAgICAgICAoaW50IG5hcmdz
LCBMaXNwX09iamVjdCAqYXJncykpCmRpZmYgLXIgNWVhNzkwOTM2ZGU5IC1yIGUwZjFkZmFhODIx
ZSB0ZXN0cy9DaGFuZ2VMb2cKLS0tIGEvdGVzdHMvQ2hhbmdlTG9nCU1vbiBNYXIgMTYgMDA6MTE6
MzAgMjAxNSArMDAwMAorKysgYi90ZXN0cy9DaGFuZ2VMb2cJTW9uIE1hciAxNiAwMDoyODoxOCAy
MDE1ICswMDAwCkBAIC0xLDMgKzEsOSBAQAorMjAxNS0wMy0xNiAgQWlkYW4gS2Vob2UgIDxrZWhv
ZWFAcGFyaGFzYXJkLm5ldD4KKworCSogYXV0b21hdGVkL2xpc3AtdGVzdHMuZWw6CisJRXh0ZW5k
IHRoZSB0ZXN0cyBmb3IgIydwYXJzZS1pbnRlZ2VyLCAjJ2RpZ2l0LWNoYXIsICMnZGlnaXQtY2hh
ci1wCisJc3Vic3RhbnRpYWxseSwgdGVzdGluZyB0aGUgVW5pY29kZSBkZWNpbWFsIGRpZ2l0cyBp
biBkZXRhaWwuCisKIDIwMTUtMDMtMTUgIEFpZGFuIEtlaG9lICA8a2Vob2VhQHBhcmhhc2FyZC5u
ZXQ+CiAKIAkqIGF1dG9tYXRlZC9tdWxlLXRlc3RzLmVsICh0ZXN0LWNoYXJzKToKZGlmZiAtciA1
ZWE3OTA5MzZkZTkgLXIgZTBmMWRmYWE4MjFlIHRlc3RzL2F1dG9tYXRlZC9saXNwLXRlc3RzLmVs
Ci0tLSBhL3Rlc3RzL2F1dG9tYXRlZC9saXNwLXRlc3RzLmVsCU1vbiBNYXIgMTYgMDA6MTE6MzAg
MjAxNSArMDAwMAorKysgYi90ZXN0cy9hdXRvbWF0ZWQvbGlzcC10ZXN0cy5lbAlNb24gTWFyIDE2
IDAwOjI4OjE4IDIwMTUgKzAwMDAKQEAgLTM1NDcsNyArMzU0Nyw3IEBACiA7Oy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIChDaGVjay1FcnJv
ciB3cm9uZy10eXBlLWFyZ3VtZW50IChwYXJzZS1pbnRlZ2VyIDEyMzQ1Njc4OSkpCi0oQ2hlY2st
RXJyb3Igd3JvbmctdHlwZS1hcmd1bWVudCAocGFyc2UtaW50ZWdlciAiMTIzNDU2Nzg5IiA6c3Rh
cnQgLTEpKQorCiAoaWYgKGZlYXR1cmVwICdiaWdudW0pCiAgICAgKHByb2duCiAgICAgICAoQ2hl
Y2stRXJyb3IgYXJncy1vdXQtb2YtcmFuZ2UKQEAgLTM1NjYsNiArMzU2NiwxMzkgQEAKICAgICAg
ICAgICAgICAocGFyc2UtaW50ZWdlciAiMTIzNDU2Nzg5IiA6anVuay1hbGxvd2VkKSkKIChDaGVj
ay1FcnJvciBpbnZhbGlkLWtleXdvcmQtYXJndW1lbnQKICAgICAgICAgICAgICAocGFyc2UtaW50
ZWdlciAiMTIzNDU2Nzg5IiA6bm8tc3VjaC1rZXl3b3JkIHQpKQorKENoZWNrLUVycm9yIHdyb25n
LXR5cGUtYXJndW1lbnQgKHBhcnNlLWludGVnZXIgIjEyMzQ1Njc4OSIgOnN0YXJ0IC0xKSkKKyhD
aGVjay1FcnJvciBpbnZhbGlkLWFyZ3VtZW50IChwYXJzZS1pbnRlZ2VyICJhYmMiKSkKKyhDaGVj
ay1FcnJvciBpbnZhbGlkLWFyZ3VtZW50IChwYXJzZS1pbnRlZ2VyICJlZnoiIDpyYWRpeCAxNikp
CisKKyhtYWNyb2xldAorICAgICgod2l0aC1kaWdpdHMgKGFzY2lpIGFsdGVybmF0ZSBzY3JpcHQp
CisgICAgICAgKGxldCAoKHRyZWUtYWxpc3QgKGxpc3QgKGNvbnMgJ29sZCAnbmV3KSkpCisgICAg
ICAgICAgICAgKHRleHQtYWxpc3QgKG1hcGNhciogIydjb25zIGFzY2lpIGFsdGVybmF0ZSkpKQor
ICAgICAgICAgKGxpc3QqCisgICAgICAgICAgJ3Byb2duCisgICAgICAgICAgKGNvbnMKKyAgICAg
ICAgICAgJ3Byb2duCisgICAgICAgICAgIChsb29wIGZvciBhc2NpaS1kaWdpdCBhY3Jvc3MgYXNj
aWkKKyAgICAgICAgICAgICAgICAgZm9yIG5vbi1hc2NpaSBhY3Jvc3MgYWx0ZXJuYXRlCisgICAg
ICAgICAgICAgICAgIGNvbGxlY3QgYChBc3NlcnQgKGVxbCAoZGlnaXQtY2hhci1wICxub24tYXNj
aWkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwoLSBhc2NpaS1kaWdpdCA/
MCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAsKGNvbmNhdCAiY2hlY2tpbmcgYGRpZ2l0
LWNoYXItcCcsIGJhc2UtMTAsICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNjcmlwdCkpKSkKKyAgICAgICAgICAoc3VibGlzCisgICAgICAgICAgIHRyZWUtYWxpc3QgCisg
ICAgICAgICAgICcoKEFzc2VydCAoZXF1YWwgKG11bHRpcGxlLXZhbHVlLWxpc3QKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKHBhcnNlLWludGVnZXIgIgktMTIzICAiKSkKKyAgICAg
ICAgICAgICAgICAgICAgICAnKC0xMjMgNykpKQorICAgICAgICAgICAgIChBc3NlcnQgKGVxdWFs
IChtdWx0aXBsZS12YWx1ZS1saXN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBh
cnNlLWludGVnZXIgIi0zZWZ6IiA6cmFkaXggMTYKKzpqdW5rLWFsbG93ZWQgdCkpCisgICAgICAg
ICAgICAgICAgICAgICAgJygtMTAwNyA0KSkpCisgICAgICAgICAgICAgKEFzc2VydCAoZXF1YWwg
KG11bHRpcGxlLXZhbHVlLWxpc3QKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBh
cnNlLWludGVnZXIgInp6ZWY5IiA6cmFkaXggMTYgOnN0YXJ0IDIpKQorICAgICAgICAgICAgICAg
ICAgICAgICcoMzgzMyA1KSkpCisgICAgICAgICAgICAgKEFzc2VydCAoZXF1YWwgKG11bHRpcGxl
LXZhbHVlLWxpc3QKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhcnNlLWludGVn
ZXIgIjAxMjM0NTY3ODkiIDpyYWRpeCA4Cis6anVuay1hbGxvd2VkIHQpKQorICAgICAgICAgICAg
ICAgICAgICAgICcoMzQyMzkxIDgpKSkKKyAgICAgICAgICAgICAoQXNzZXJ0IChlcXVhbCAobXVs
dGlwbGUtdmFsdWUtbGlzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGFyc2Ut
aW50ZWdlciAiIjpqdW5rLWFsbG93ZWQgdCkpCisgICAgICAgICAgICAgICAgICAgICAgJyhuaWwg
MCkpKQorICAgICAgICAgICAgIChBc3NlcnQgKGVxdWFsIChtdWx0aXBsZS12YWx1ZS1saXN0Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwYXJzZS1pbnRlZ2VyICJhYmMiIDpqdW5r
LWFsbG93ZWQgdCkpCisgICAgICAgICAgICAgICAgICAgICAgJyhuaWwgMCkpKQorICAgICAgICAg
ICAgIChDaGVjay1FcnJvciBpbnZhbGlkLWFyZ3VtZW50IChwYXJzZS1pbnRlZ2VyICIwMTIzNDU2
Nzg5IgorOnJhZGl4IDgpKQorICAgICAgICAgICAgIChDaGVjay1FcnJvciBpbnZhbGlkLWFyZ3Vt
ZW50IChwYXJzZS1pbnRlZ2VyICJhYmMiKSkKKyAgICAgICAgICAgICAoQ2hlY2stRXJyb3IgaW52
YWxpZC1hcmd1bWVudCAocGFyc2UtaW50ZWdlciAiZWZ6IiA6cmFkaXggMTYpKQorICAgICAgICAg
ICAgIAorICAgICAgICAgICAgIDs7IEluIGNvbnRyYXZlbnRpb24gb2YgQ29tbW9uIExpc3AsIHdl
IGFsbG93IGJvdGggMCBhbmQgMSBhcworICAgICAgICAgICAgIDs7IHZhbHVlcyBmb3IgUkFESVgs
IHVzZWxlc3MgYXMgdGhhdCBpcy4KKyAgICAgICAgICAgICAoQXNzZXJ0IChlcXVhbCAobXVsdGlw
bGUtdmFsdWUtbGlzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGFyc2UtaW50
ZWdlciAiMDAwMDAiIDpyYWRpeCAxKSkgJygwIDUpKQorICAgICAgICAgICAgICAiY2hlY2tpbmcg
MSBpcyBhbGxvd2VkIGFzIGEgdmFsdWUgZm9yIFJBRElYIikKKyAgICAgICAgICAgICAoQXNzZXJ0
IChlcXVhbCAobXVsdGlwbGUtdmFsdWUtbGlzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAocGFyc2UtaW50ZWdlciAiIiA6cmFkaXggMCA6anVuay1hbGxvd2VkIHQpKQorICAgICAg
ICAgICAgICAgICAgICAgICcobmlsIDApKQorICAgICAgICAgICAgICAiY2hlY2tpbmcgMCBpcyBh
bGxvd2VkIGFzIGEgdmFsdWUgZm9yIFJBRElYIikpCis6dGVzdCAjJyhsYW1iZGEgKG5ldyBvbGQp
CisgICAgICAgICAgICAgICAgICAgICAgIDs7IFRoaXMgZnVuY3Rpb24gcmVwbGFjZXMgYW55IEFT
Q0lJIGRlY2ltYWwgZGlnaXRzIGluCisgICAgICAgICAgICAgICAgICAgICAgIDs7IGFueSBzdHJp
bmcgZW5jb3VudGVyZWQgaW4gdGhlIHRyZWUgd2l0aCB0aGUKKyAgICAgICAgICAgICAgICAgICAg
ICAgOzsgbm9uLUFTQ0lJIGRpZ2l0cyBzdXBwbGllZCBpbiBBTFRFUk5BVEUuCisgICAgICAgICAg
ICAgICAgICAgICAgICh3aGVuIChhbmQgKHN0cmluZ3Agb2xkKSAoZmluZC1pZiAjJ2RpZ2l0LWNo
YXItcCBvbGQpKQorICAgICAgICAgICAgICAgICAgICAgICAgIChzZXRmIChjZGFyIHRyZWUtYWxp
c3QpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdGVuYXRlICdzdHJpbmcK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN1YmxpcyB0ZXh0
LWFsaXN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKGFwcGVuZCBvbGQgbmlsKSkpKQorICAgICAgICAgICAgICAgICAgICAgICAgIHQpKSkpKSkK
KyAgICAgKHJlcGVhdC1wYXJzZS1pbnRlZ2VyLW5vbi1hc2NpaSAoKQorICAgICAgICh3aGVuIChm
ZWF0dXJlcCAnbXVsZSkKKyAgICAgICAgIChjb25zCisgICAgICAgICAgJ3Byb2duCisgICAgICAg
ICAgKGxvb3AgZm9yIChjb2RlLXBvaW50IC4gc2NyaXB0KQorICAgICAgICAgICAgaW4gJygoI3gw
NjYwIC4gIkFyYWJpYy1JbmRpYyIpCisgICAgICAgICAgICAgICAgICgjeDA2ZjAgLiAiRXh0ZW5k
ZWQgQXJhYmljLUluZGljIikKKyAgICAgICAgICAgICAgICAgKCN4MDdjMCAuICJOa28iKQorICAg
ICAgICAgICAgICAgICAoI3gwOTY2IC4gIkRldmFuYWdhcmkiKQorICAgICAgICAgICAgICAgICAo
I3gwOWU2IC4gIkJlbmdhbGkiKQorICAgICAgICAgICAgICAgICAoI3gwYTY2IC4gIkd1cm11a2hp
IikKKyAgICAgICAgICAgICAgICAgKCN4MGFlNiAuICJHdWphcmF0aSIpCisgICAgICAgICAgICAg
ICAgICgjeDBiNjYgLiAiT3JpeWEiKQorICAgICAgICAgICAgICAgICAoI3gwYmU2IC4gIlRhbWls
IikKKyAgICAgICAgICAgICAgICAgKCN4MGM2NiAuICJUZWx1Z3UiKQorICAgICAgICAgICAgICAg
ICAoI3gwY2U2IC4gIkthbm5hZGEiKQorICAgICAgICAgICAgICAgICAoI3gwZDY2IC4gIk1hbGF5
YWxhbSIpCisgICAgICAgICAgICAgICAgICgjeDBkZTYgLiAiU2luaGFsYSBMaXRoIikKKyAgICAg
ICAgICAgICAgICAgKCN4MGU1MCAuICJUaGFpIikKKyAgICAgICAgICAgICAgICAgKCN4MGVkMCAu
ICJMYW8iKQorICAgICAgICAgICAgICAgICAoI3gwZjIwIC4gIlRpYmV0YW4iKQorICAgICAgICAg
ICAgICAgICAoI3gxMDQwIC4gIk15YW5tYXIiKQorICAgICAgICAgICAgICAgICAoI3gxMDkwIC4g
Ik15YW5tYXIgU2hhbiIpCisgICAgICAgICAgICAgICAgICgjeDE3ZTAgLiAiS2htZXIiKQorICAg
ICAgICAgICAgICAgICAoI3gxODEwIC4gIk1vbmdvbGlhbiIpCisgICAgICAgICAgICAgICAgICgj
eDE5NDYgLiAiTGltYnUiKQorICAgICAgICAgICAgICAgICAoI3gxOWQwIC4gIk5ldyBUYWkgTHVl
IikKKyAgICAgICAgICAgICAgICAgKCN4MWE4MCAuICJUYWkgVGhhbSBIb3JhIikKKyAgICAgICAg
ICAgICAgICAgKCN4MWE5MCAuICJUYWkgVGhhbSBUaGFtIikKKyAgICAgICAgICAgICAgICAgKCN4
MWI1MCAuICJCYWxpbmVzZSIpCisgICAgICAgICAgICAgICAgICgjeDFiYjAgLiAiU3VuZGFuZXNl
IikKKyAgICAgICAgICAgICAgICAgKCN4MWM0MCAuICJMZXBjaGEiKQorICAgICAgICAgICAgICAg
ICAoI3gxYzUwIC4gIk9sIENoaWtpIikKKyAgICAgICAgICAgICAgICAgKCN4YTYyMCAuICJWYWki
KQorICAgICAgICAgICAgICAgICAoI3hhOGQwIC4gIlNhdXJhc2h0cmEiKQorICAgICAgICAgICAg
ICAgICAoI3hhOTAwIC4gIktheWFoIExpIikKKyAgICAgICAgICAgICAgICAgKCN4YTlkMCAuICJK
YXZhbmVzZSIpCisgICAgICAgICAgICAgICAgICgjeGE5ZjAgLiAiTXlhbm1hciBUYWkgTGFpbmci
KQorICAgICAgICAgICAgICAgICAoI3hhYTUwIC4gIkNoYW0iKQorICAgICAgICAgICAgICAgICAo
I3hhYmYwIC4gIk1lZXRlaSBNYXllayIpCisgICAgICAgICAgICAgICAgICgjeGZmMTAgLiAiRnVs
bHdpZHRoIikKKyAgICAgICAgICAgICAgICAgKCN4MDAwMTA0YTAgLiAiT3NtYW55YSIpCisgICAg
ICAgICAgICAgICAgICgjeDAwMDExMDY2IC4gIkJyYWhtaSIpCisgICAgICAgICAgICAgICAgICgj
eDAwMDExMGYwIC4gIlNvcmEgU29tcGVuZyIpCisgICAgICAgICAgICAgICAgICgjeDAwMDExMTM2
IC4gIkNoYWttYSIpCisgICAgICAgICAgICAgICAgICgjeDAwMDExMWQwIC4gIlNoYXJhZGEiKQor
ICAgICAgICAgICAgICAgICAoI3gwMDAxMTJmMCAuICJLaHVkYXdhZGkiKQorICAgICAgICAgICAg
ICAgICAoI3gwMDAxMTRkMCAuICJUaXJodXRhIikKKyAgICAgICAgICAgICAgICAgKCN4MDAwMTE2
NTAgLiAiTW9kaSIpCisgICAgICAgICAgICAgICAgICgjeDAwMDExNmMwIC4gIlRha3JpIikKKyAg
ICAgICAgICAgICAgICAgKCN4MDAwMTE4ZTAgLiAiV2FyYW5nIENpdGkiKQorICAgICAgICAgICAg
ICAgICAoI3gwMDAxNmE2MCAuICJNcm8iKQorICAgICAgICAgICAgICAgICAoI3gwMDAxNmI1MCAu
ICJQYWhhd2ggSG1vbmciKQorICAgICAgICAgICAgICAgICAoI3gwMDAxZDdjZSAuICJNYXRoZW1h
dGljYWwgQm9sZCIpCisgICAgICAgICAgICAgICAgICgjeDAwMDFkN2Q4IC4gIk1hdGhlbWF0aWNh
bCBEb3VibGUtU3RydWNrIikKKyAgICAgICAgICAgICAgICAgKCN4MDAwMWQ3ZTIgLiAiTWF0aGVt
YXRpY2FsIFNhbnMtU2VyaWYiKQorICAgICAgICAgICAgICAgICAoI3gwMDAxZDdlYyAuICJNYXRo
ZW1hdGljYWwgU2Fucy1TZXJpZiBCb2xkIikKKyAgICAgICAgICAgICAgICAgKCN4MDAwMWQ3ZjYg
LiAiTWF0aGVtYXRpY2FsIE1vbm9zcGFjZSIpKQorICAgICAgICAgICAgY29sbGVjdCBgKHdpdGgt
ZGlnaXRzICIwMTIzNDU2Nzg5IgorICAgICAgICAgICAgICAgICAgICAgIDs7IEFsbCB0aGUgVW5p
Y29kZSBkZWNpbWFsIGRpZ2l0cyBoYXZlIGNvbnRpZ3VvdXMgY29kZQorICAgICAgICAgICAgICAg
ICAgICAgIDs7IHBvaW50IHJhbmdlcyBhcyBkb2N1bWVudGVkIGJ5IHRoZSBVbmljb2RlIHN0YW5k
YXJkLAorICAgICAgICAgICAgICAgICAgICAgIDs7IHdlIGNhbiBqdXN0IGluY3JlbWVudC4KKyAg
ICAgICAgICAgICAgICAgICAgICAsKGNvbmNhdCAobG9vcCBmb3IgZml4bnVtIGZyb20gY29kZS1w
b2ludAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvICgrIGNvZGUtcG9p
bnQgOSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xsZWN0IChkZWNv
ZGUtY2hhciAndWNzIGZpeG51bSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiIp
CisJCSAgICAgICxzY3JpcHQpKSkpKSkKKyAgKHdpdGgtZGlnaXRzICIwMTIzNDU2Nzg5IiAiMDEy
MzQ1Njc4OSIgIkFTQ0lJIikKKyAgKHJlcGVhdC1wYXJzZS1pbnRlZ2VyLW5vbi1hc2NpaSkpCiAK
IDs7IE5leHQgdHdvIHBhcmFncmFwaHMgb2YgdGVzdHMgZnJvbSBHTlUsIHRoYW5rIHlvdSBMZW8g
TGl1LgogKEFzc2VydCAoZXFsIChkaWdpdC1jaGFyLXAgPzMpIDMpKQpAQCAtMzU3NSwzNCArMzcw
OCwyNSBAQAogKENoZWNrLUVycm9yIGFyZ3Mtb3V0LW9mLXJhbmdlIChkaWdpdC1jaGFyLXAgP2Eg
MzcpKQogKEFzc2VydCAobm90IChkaWdpdC1jaGFyLXAgP2EgMSkpKQogCi0oQXNzZXJ0IChlcXVh
bCAobXVsdGlwbGUtdmFsdWUtbGlzdCAocGFyc2UtaW50ZWdlciAiCS0xMjMgICIpKSAnKC0xMjMg
NykpKQotKEFzc2VydCAoZXF1YWwgKG11bHRpcGxlLXZhbHVlLWxpc3QKLSAgICAgICAgICAgICAg
ICAgICAocGFyc2UtaW50ZWdlciAiLWVmeiIgOnJhZGl4IDE2IDpqdW5rLWFsbG93ZWQgdCkpCi0g
ICAgICAgICAgICAgICAnKC0yMzkgMykpKQotKEFzc2VydCAoZXF1YWwgKG11bHRpcGxlLXZhbHVl
LWxpc3QgKHBhcnNlLWludGVnZXIgInp6ZWYiIDpyYWRpeCAxNiA6c3RhcnQgMikpCi0gICAgICAg
ICAgICAgICAnKDIzOSA0KSkpCi0oQXNzZXJ0IChlcXVhbCAobXVsdGlwbGUtdmFsdWUtbGlzdAot
ICAgICAgICAgICAgICAgICAgIChwYXJzZS1pbnRlZ2VyICIwMTIzNDU2Nzg5IiA6cmFkaXggOCA6
anVuay1hbGxvd2VkIHQpKQotICAgICAgICAgICAgICAgJygzNDIzOTEgOCkpKQotKEFzc2VydCAo
ZXF1YWwgKG11bHRpcGxlLXZhbHVlLWxpc3QgKHBhcnNlLWludGVnZXIgIiIgOmp1bmstYWxsb3dl
ZCB0KSkKLSAgICAgICAgICAgICAgICcobmlsIDApKSkKLShBc3NlcnQgKGVxdWFsIChtdWx0aXBs
ZS12YWx1ZS1saXN0IChwYXJzZS1pbnRlZ2VyICJhYmMiIDpqdW5rLWFsbG93ZWQgdCkpCi0gICAg
ICAgICAgICAgICAnKG5pbCAwKSkpCi0oQ2hlY2stRXJyb3IgaW52YWxpZC1hcmd1bWVudCAocGFy
c2UtaW50ZWdlciAiMDEyMzQ1Njc4OSIgOnJhZGl4IDgpKQotKENoZWNrLUVycm9yIGludmFsaWQt
YXJndW1lbnQgKHBhcnNlLWludGVnZXIgImFiYyIpKQotKENoZWNrLUVycm9yIGludmFsaWQtYXJn
dW1lbnQgKHBhcnNlLWludGVnZXIgImVmeiIgOnJhZGl4IDE2KSkKKyhsb29wIGZvciBmaXhudW0g
ZnJvbSAwIGJlbG93IDM2CisgICAgICBkbyAoQXNzZXJ0IChlcWwgZml4bnVtIChkaWdpdC1jaGFy
LXAgKGRpZ2l0LWNoYXIgZml4bnVtIDM2KSAzNikpKSkKIAotOzsgV2UgZG9uJ3QgYWxsb3cgYSB0
cmFpbGluZyBkZWNpbWFsIHBvaW50LCBhcyB0aGUgTGlzcCByZWFkZXIgZG9lcy4KLShDaGVjay1F
cnJvciBpbnZhbGlkLWFyZ3VtZW50IChwYXJzZS1pbnRlZ2VyICIxMjM0OC4iKSkKLQotOzsgSW4g
Y29udHJhdmVudGlvbiBvZiBDb21tb24gTGlzcCwgd2UgYWxsb3cgYm90aCAwIGFuZCAxIGFzIHZh
bHVlcyBmb3IgUkFESVgsCi07OyB1c2VsZXNzIGFzIHRoYXQgaXMuCi0oQXNzZXJ0IChlcXVhbCAo
bXVsdGlwbGUtdmFsdWUtbGlzdCAocGFyc2UtaW50ZWdlciAiMDAwMDAiIDpyYWRpeCAxKSkgJygw
IDUpKQotICAgICAgICAiY2hlY2tpbmcgMSBpcyBhbGxvd2VkIGFzIGEgdmFsdWUgZm9yIFJBRElY
IikKLShBc3NlcnQgKGVxdWFsIChtdWx0aXBsZS12YWx1ZS1saXN0Ci0gICAgICAgICAgICAgICAg
ICAgKHBhcnNlLWludGVnZXIgIiIgOnJhZGl4IDAgOmp1bmstYWxsb3dlZCB0KSkKLSAgICAgICAg
ICAgICAgICcobmlsIDApKQotICAgICAgICAiY2hlY2tpbmcgMCBpcyBhbGxvd2VkIGFzIGEgdmFs
dWUgZm9yIFJBRElYIikKKyhsZXQgKChtYXggLTEpCisgICAgICAobWluIG1vc3QtcG9zaXRpdmUt
Zml4bnVtKQorICAgICAgKG1heC1jaGFyIG5pbCkgKG1pbi1jaGFyIG5pbCkpCisgIChtYXAtY2hh
ci10YWJsZSAjJyhsYW1iZGEgKGtleSB2YWx1ZSkKKyAgICAgICAgICAgICAgICAgICAgICAoaWYg
KD4gdmFsdWUgbWF4KQorICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0ZiBtYXggdmFsdWUK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWNoYXIga2V5KSkKKyAgICAgICAg
ICAgICAgICAgICAgICAoaWYgKDwgdmFsdWUgbWluKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAoc2V0ZiBtaW4gdmFsdWUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLWNo
YXIga2V5KSkKKyAgICAgICAgICAgICAgICAgICAgICBuaWwpCisgICAgICAgICAgICAgICAgICBk
aWdpdC1maXhudW0tbWFwKQorICAoQXNzZXJ0ICg+PSAzNSBtYXgpICJjaGVja2luZyBiYXNlIDM2
IGlzIHN1cHBvcnRlZCwgYGRpZ2l0LWZpeG51bS1tYXAnIikKKyAgKEFzc2VydCAoPD0gbWluIDIp
ICJjaGVja2luZyBiYXNlIHR3byBzdXBwb3J0ZWQsIGBkaWdpdC1maXhudW0tbWFwJyIpCisgIChB
c3NlcnQgKGVxbCAoZGlnaXQtY2hhci1wIG1heC1jaGFyICgxKyBtYXgpKSBtYXgpKQorICAoQXNz
ZXJ0IChlcWwgKGRpZ2l0LWNoYXItcCBtaW4tY2hhciAoMSsgbWluKSkgbWluKSkKIAogKGxldCAo
KGJpbmFyeS10YWJsZQogICAgICAgIChjb3B5LWNoYXItdGFibGUgI3MoY2hhci10YWJsZSA6dHlw
ZSBnZW5lcmljIDpkZWZhdWx0IC0xIDpkYXRhICgpKSkpKQoKCi0tIArigJhUcmFtYWRvbCBpcyBm
dXJ0aGVyIGZlZCB0byBjYXR0bGUgW+KApl0gd2hlbiB3b3JraW5nIHRoZW0gW+KApl0gKGFzIGRy
YWZ0CmFuaW1hbHMpIHNvIHRoYXQgdGhlIGFuaW1hbHMgZG8gbm90IGdldCB0aXJlZCBxdWlja2x5
LiDigKbigJkKCeKAlCBBbmdld2FuZHRlIENoZW1pZSwgU2VwdCAyMDE0LCBkZXNjcmliaW5nIHRo
ZSBzb2NpYWwgY29udGV4dCBvZgoJKHN5bnRoZXRpYykgdHJhbWFkb2wgaGF2aW5nIGJlZW4gZm91
bmQgaW4gQ2FtZXJvb24gdHJlZSByb290cy4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fClhFbWFjcy1QYXRjaGVzIG1haWxpbmcgbGlzdApYRW1hY3MtUGF0
Y2hlc0B4ZW1hY3Mub3JnCmh0dHA6Ly9saXN0cy54ZW1hY3Mub3JnL21haWxtYW4vbGlzdGluZm8v
eGVtYWNzLXBhdGNoZXMK