com php/gtk-src: cleanup of outdated files: cvsclean cvsclean.bat ext/extension_list ext/gtk+/php_gtk.dsp ext/libglade/ libglade.dsp ext/mozembed/Makefile.frag ext/mozembed/RE ADME ext/mozembed/config.m4 ext/mozembed/demos/browser .php ext/mozembed/demos/demos/spell.php ext/mozembed/mo zembed.defs ext/mozembed/mozembed.overrides ext/mozembe d/php_mozembed.c ext/mozembed/php_mozembed.h ext/mo zembed/ref.mozembed.defs ext/mozembed/ref.mozembed.ov erride w

[email protected] (Elizabeth Marie Smith) Mon, 23 Jun 2014 15:05:25 +0000
Newsgroups php.gtk.cvs
Message-ID <[email protected]>
--5a45bd338eacf5d27b7d294f74d1c319c79016b5
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Commit:    e29ec51a9dcbe52ea528596b75a87d6a68649efa=0AAuthor:    Elizabeth =
M Smith <[email protected]>         Mon, 23 Jun 2014 11:05:25 -0400=0AP=
arents:   9251177c138e5be7e3c33f689eb08d639da62cb8=0ABranches:  master=0A=
=0ALink:       http://git.php.net/?p=3Dphp/gtk-src.git;a=3Dcommitdiff;h=3De=
29ec51a9dcbe52ea528596b75a87d6a68649efa=0A=0ALog:=0Acleanup of outdated fil=
es=0A=0Alibmozembed hasn't existed for years, we're in git not cvs, and .ds=
p files do not work=0A=0AChanged paths:=0A  D  cvsclean=0A  D  cvsclean.bat=
=0A  D  ext/extension_list=0A  D  ext/gtk+/php_gtk.dsp=0A  D  ext/libglade/=
libglade.dsp=0A  D  ext/mozembed/Makefile.frag=0A  D  ext/mozembed/README=
=0A  D  ext/mozembed/config.m4=0A  D  ext/mozembed/demos/browser.php=0A  D =
 ext/mozembed/demos/demos/spell.php=0A  D  ext/mozembed/mozembed.defs=0A  D=
  ext/mozembed/mozembed.overrides=0A  D  ext/mozembed/php_mozembed.c=0A  D =
 ext/mozembed/php_mozembed.h=0A  D  ext/mozembed/ref.mozembed.defs=0A  D  e=
xt/mozembed/ref.mozembed.override=0A  D  win32/cvsclean.js=0A=0A
--5a45bd338eacf5d27b7d294f74d1c319c79016b5
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="diff_e29ec51a9dcbe52ea528596b75a87d6a68649efa.txt"

ZGlmZiAtLWdpdCBhL2N2c2NsZWFuIGIvY3ZzY2xlYW4KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1
CmluZGV4IGE5NTY5NGMuLjAwMDAwMDAKLS0tIGEvY3ZzY2xlYW4KKysrIC9kZXYvbnVsbApAQCAt
MSwzICswLDAgQEAKLSMhIC9iaW4vc2gKLQotJHtNQUtFOi1tYWtlfSAtZiBidWlsZDIvYnVpbGQu
bWsgY3ZzY2xlYW4td29yawpkaWZmIC0tZ2l0IGEvY3ZzY2xlYW4uYmF0IGIvY3ZzY2xlYW4uYmF0
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDc1NQppbmRleCBmNjQ0MTMwLi4wMDAwMDAwCi0tLSBhL2N2
c2NsZWFuLmJhdAorKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotQGVjaG8gb2ZmCi1jc2Ny
aXB0IC9ub2xvZ28gd2luMzJcY3ZzY2xlYW4uanMKZGlmZiAtLWdpdCBhL2V4dC9leHRlbnNpb25f
bGlzdCBiL2V4dC9leHRlbnNpb25fbGlzdApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MmYxNTU2Mi4uMDAwMDAwMAotLS0gYS9leHQvZXh0ZW5zaW9uX2xpc3QKKysrIC9kZXYvbnVsbApA
QCAtMSwxNCArMCwwIEBACi1UaGVzZSB3ZXJlIHRoZSBleHRlbnNpb24gZGlyZWN0b3JpZXMgdGhh
dCB3ZXJlIHJlbW92ZWQgZWl0aGVyIGJlY2F1c2UgdGhleSB3ZXJlCi1lbXB0eSBvciBhcmUgbm90
IGFwcGxpY2FibGUgdG8gUEhQLUd0azI6Ci0KLWNhbnZhcwotY29tYm9idXR0b24KLWV4dHJhCi1n
ZGtwaXhidWYKLWd0a2h0bWwKLWltbGliCi1waWVtZW51Ci1zY3JvbGxwYW5lCi1zcGFuZWQKLXNx
cGFuZQotZ3Rrc2NpbnRpbGxhCmRpZmYgLS1naXQgYS9leHQvZ3RrKy9waHBfZ3RrLmRzcCBiL2V4
dC9ndGsrL3BocF9ndGsuZHNwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjOWM3ZjQ5
Li4wMDAwMDAwCi0tLSBhL2V4dC9ndGsrL3BocF9ndGsuZHNwCisrKyAvZGV2L251bGwKQEAgLTEs
Mjk1ICswLDAgQEAKLSMgTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gUHJvamVjdCBGaWxlIC0g
TmFtZT0icGhwX2d0ayIgLSBQYWNrYWdlIE93bmVyPTw0Pg0KLSMgTWljcm9zb2Z0IERldmVsb3Bl
ciBTdHVkaW8gR2VuZXJhdGVkIEJ1aWxkIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDYuMDANCi0jICoq
IERPIE5PVCBFRElUICoqDQotDQotIyBUQVJHVFlQRSAiV2luMzIgKHg4NikgRHluYW1pYy1MaW5r
IExpYnJhcnkiIDB4MDEwMg0KLQ0KLUNGRz1waHBfZ3RrIC0gV2luMzIgRGVidWdfVFMNCi0hTUVT
U0FHRSBUaGlzIGlzIG5vdCBhIHZhbGlkIG1ha2VmaWxlLiBUbyBidWlsZCB0aGlzIHByb2plY3Qg
dXNpbmcgTk1BS0UsDQotIU1FU1NBR0UgdXNlIHRoZSBFeHBvcnQgTWFrZWZpbGUgY29tbWFuZCBh
bmQgcnVuDQotIU1FU1NBR0UgDQotIU1FU1NBR0UgTk1BS0UgL2YgInBocF9ndGsubWFrIi4NCi0h
TUVTU0FHRSANCi0hTUVTU0FHRSBZb3UgY2FuIHNwZWNpZnkgYSBjb25maWd1cmF0aW9uIHdoZW4g
cnVubmluZyBOTUFLRQ0KLSFNRVNTQUdFIGJ5IGRlZmluaW5nIHRoZSBtYWNybyBDRkcgb24gdGhl
IGNvbW1hbmQgbGluZS4gRm9yIGV4YW1wbGU6DQotIU1FU1NBR0UgDQotIU1FU1NBR0UgTk1BS0Ug
L2YgInBocF9ndGsubWFrIiBDRkc9InBocF9ndGsgLSBXaW4zMiBEZWJ1Z19UUyINCi0hTUVTU0FH
RSANCi0hTUVTU0FHRSBQb3NzaWJsZSBjaG9pY2VzIGZvciBjb25maWd1cmF0aW9uIGFyZToNCi0h
TUVTU0FHRSANCi0hTUVTU0FHRSAicGhwX2d0ayAtIFdpbjMyIFJlbGVhc2VfVFMiIChiYXNlZCBv
biAiV2luMzIgKHg4NikgRHluYW1pYy1MaW5rIExpYnJhcnkiKQ0KLSFNRVNTQUdFICJwaHBfZ3Rr
IC0gV2luMzIgRGVidWdfVFMiIChiYXNlZCBvbiAiV2luMzIgKHg4NikgRHluYW1pYy1MaW5rIExp
YnJhcnkiKQ0KLSFNRVNTQUdFIA0KLQ0KLSMgQmVnaW4gUHJvamVjdA0KLSMgUFJPUCBBbGxvd1Bl
ckNvbmZpZ0RlcGVuZGVuY2llcyAwDQotIyBQUk9QIFNjY19Qcm9qTmFtZSAiIg0KLSMgUFJPUCBT
Y2NfTG9jYWxQYXRoICIiDQotQ1BQPWNsLmV4ZQ0KLU1UTD1taWRsLmV4ZQ0KLVJTQz1yYy5leGUN
Ci0NCi0hSUYgICIkKENGRykiID09ICJwaHBfZ3RrIC0gV2luMzIgUmVsZWFzZV9UUyINCi0NCi0j
IFBST1AgQkFTRSBVc2VfTUZDIDANCi0jIFBST1AgQkFTRSBVc2VfRGVidWdfTGlicmFyaWVzIDAN
Ci0jIFBST1AgQkFTRSBPdXRwdXRfRGlyICJSZWxlYXNlX1RTIg0KLSMgUFJPUCBCQVNFIEludGVy
bWVkaWF0ZV9EaXIgIlJlbGVhc2VfVFMiDQotIyBQUk9QIEJBU0UgVGFyZ2V0X0RpciAiIg0KLSMg
UFJPUCBVc2VfTUZDIDANCi0jIFBST1AgVXNlX0RlYnVnX0xpYnJhcmllcyAwDQotIyBQUk9QIE91
dHB1dF9EaXIgIlJlbGVhc2VfVFMiDQotIyBQUk9QIEludGVybWVkaWF0ZV9EaXIgIlJlbGVhc2Vf
VFMiDQotIyBQUk9QIElnbm9yZV9FeHBvcnRfTGliIDANCi0jIFBST1AgVGFyZ2V0X0RpciAiIg0K
LSMgQUREIEJBU0UgQ1BQIC9ub2xvZ28gL01UIC9XMyAvR1ggL08yIC9EICJXSU4zMiIgL0QgIk5E
RUJVRyIgL0QgIl9XSU5ET1dTIiAvRCAiX01CQ1MiIC9EICJfVVNSRExMIiAvRCAiUEhQX0dUS19F
WFBPUlRTIiAvWVggL0ZEIC9jDQotIyBBREQgQ1BQIC9ub2xvZ28gL01UIC9XMyAvR1ggL08yIC9J
ICIuLlwuLiIgL0kgIi4uXC4uXG1haW4iIC9JICIuLlwuLlwuLlxwaHA1IiAvSSAiLi5cLi5cLi5c
cGhwNVxtYWluIiAvSSAiLi5cLi5cLi5ccGhwNVxaZW5kIiAvSSAiLi5cLi5cLi5ccGhwNVxUU1JN
IiAvRCAiV0lOMzIiIC9EICJOREVCVUciIC9EICJfV0lORE9XUyIgL0QgIl9NQkNTIiAvRCAiX1VT
UkRMTCIgL0QgIlBIUF9HVEtfRVhQT1JUUyIgL0QgIlBIUF9XSU4zMiIgL0QgIlpFTkRfV0lOMzIi
IC9EIFpUUz0xIC9EIFpFTkRfREVCVUc9MCAvRCBIQVZFX1BIUF9HVEs9MSAvRCAiQ09NUElMRV9E
TF9QSFBfR1RLIiAvRCAiVFNSTV9FWFBPUlRTIiAvWVggL0ZEIC9jDQotIyBBREQgQkFTRSBNVEwg
L25vbG9nbyAvRCAiTkRFQlVHIiAvbWt0eXBsaWIyMDMgL3dpbjMyDQotIyBBREQgTVRMIC9ub2xv
Z28gL0QgIk5ERUJVRyIgL21rdHlwbGliMjAzIC93aW4zMg0KLSMgQUREIEJBU0UgUlNDIC9sIDB4
NDA5IC9kICJOREVCVUciDQotIyBBREQgUlNDIC9sIDB4NDA5IC9kICJOREVCVUciDQotQlNDMzI9
YnNjbWFrZS5leGUNCi0jIEFERCBCQVNFIEJTQzMyIC9ub2xvZ28NCi0jIEFERCBCU0MzMiAvbm9s
b2dvDQotTElOSzMyPWxpbmsuZXhlDQotIyBBREQgQkFTRSBMSU5LMzIga2VybmVsMzIubGliIHVz
ZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGli
IHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBv
ZGJjY3AzMi5saWIgL25vbG9nbyAvZGxsIC9tYWNoaW5lOkkzODYNCi0jIEFERCBMSU5LMzIgcGhw
NHRzLmxpYiBndGsubGliIGdkay5saWIgZ2xpYi0yLjAubGliIGludGwubGliIGtlcm5lbDMyLmxp
YiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMy
LmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5s
aWIgb2RiY2NwMzIubGliIC9ub2xvZ28gL2RsbCAvbWFjaGluZTpJMzg2IC9vdXQ6Ii4uLy4uL3dp
bjMyL1JlbGVhc2VfVFMvcGhwX2d0ay5kbGwiIC9saWJwYXRoOiIuLlwuLlwuLlxwaHA1XFJlbGVh
c2VfVFMiDQotIyBTVUJUUkFDVCBMSU5LMzIgL3BkYjpub25lDQotDQotIUVMU0VJRiAgIiQoQ0ZH
KSIgPT0gInBocF9ndGsgLSBXaW4zMiBEZWJ1Z19UUyINCi0NCi0jIFBST1AgQkFTRSBVc2VfTUZD
IDANCi0jIFBST1AgQkFTRSBVc2VfRGVidWdfTGlicmFyaWVzIDENCi0jIFBST1AgQkFTRSBPdXRw
dXRfRGlyICJEZWJ1Z19UUyINCi0jIFBST1AgQkFTRSBJbnRlcm1lZGlhdGVfRGlyICJEZWJ1Z19U
UyINCi0jIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQotIyBQUk9QIFVzZV9NRkMgMA0KLSMgUFJP
UCBVc2VfRGVidWdfTGlicmFyaWVzIDENCi0jIFBST1AgT3V0cHV0X0RpciAiRGVidWdfVFMiDQot
IyBQUk9QIEludGVybWVkaWF0ZV9EaXIgIkRlYnVnX1RTIg0KLSMgUFJPUCBJZ25vcmVfRXhwb3J0
X0xpYiAwDQotIyBQUk9QIFRhcmdldF9EaXIgIiINCi0jIEFERCBCQVNFIENQUCAvbm9sb2dvIC9N
VGQgL1czIC9HbSAvR1ggL1pJIC9PZCAvRCAiV0lOMzIiIC9EICJfREVCVUciIC9EICJfV0lORE9X
UyIgL0QgIl9NQkNTIiAvRCAiX1VTUkRMTCIgL0QgIlBIUF9HVEtfRVhQT1JUUyIgL1lYIC9GRCAv
R1ogL2MNCi0jIEFERCBDUFAgL25vbG9nbyAvTVRkIC9XMyAvR20gL0dYIC9aSSAvT2QgL0kgIi4u
XC4uIiAvSSAiLi5cLi5cbWFpbiIgL0kgIi4uXC4uXC4uXHBocDUiIC9JICIuLlwuLlwuLlxwaHA1
XG1haW4iIC9JICIuLlwuLlwuLlxwaHA1XFplbmQiIC9JICIuLlwuLlwuLlxwaHA1XFRTUk0iIC9E
ICJXSU4zMiIgL0QgIl9ERUJVRyIgL0QgIl9XSU5ET1dTIiAvRCAiX01CQ1MiIC9EICJfVVNSRExM
IiAvRCAiUEhQX0dUS19FWFBPUlRTIiAvRCAiUEhQX1dJTjMyIiAvRCAiWkVORF9XSU4zMiIgL0Qg
WlRTPTEgL0QgWkVORF9ERUJVRz0xIC9EIEhBVkVfUEhQX0dUSz0xIC9EICJDT01QSUxFX0RMX1BI
UF9HVEsiIC9GUiAvWVggL0ZEIC9HWiAvYw0KLSMgQUREIEJBU0UgTVRMIC9ub2xvZ28gL0QgIl9E
RUJVRyIgL21rdHlwbGliMjAzIC93aW4zMg0KLSMgQUREIE1UTCAvbm9sb2dvIC9EICJfREVCVUci
IC9ta3R5cGxpYjIwMyAvd2luMzINCi0jIEFERCBCQVNFIFJTQyAvbCAweDQwOSAvZCAiX0RFQlVH
Ig0KLSMgQUREIFJTQyAvbCAweDQwOSAvZCAiX0RFQlVHIg0KLUJTQzMyPWJzY21ha2UuZXhlDQot
IyBBREQgQkFTRSBCU0MzMiAvbm9sb2dvDQotIyBBREQgQlNDMzIgL25vbG9nbw0KLUxJTkszMj1s
aW5rLmV4ZQ0KLSMgQUREIEJBU0UgTElOSzMyIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMy
LmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBv
bGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIC9u
b2xvZ28gL2RsbCAvZGVidWcgL21hY2hpbmU6STM4NiAvcGRidHlwZTpzZXB0DQotIyBBREQgTElO
SzMyIHBocDR0c19kZWJ1Zy5saWIgZ3RrLmxpYiBnZGsubGliIGdsaWItMi4wLmxpYiBpbnRsLmxp
YiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIgd2luc3Bvb2wubGliIGNvbWRsZzMy
LmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIubGliIG9sZWF1dDMyLmxpYiB1dWlk
LmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiAvbm9sb2dvIC9kbGwgL2RlYnVnIC9tYWNoaW5l
OkkzODYgL291dDoiLi4vLi4vd2luMzIvRGVidWdfVFMvcGhwX2d0ay5kbGwiIC9wZGJ0eXBlOnNl
cHQgL2xpYnBhdGg6Ii4uXC4uXC4uXHBocDVcRGVidWdfVFMiDQotDQotIUVORElGIA0KLQ0KLSMg
QmVnaW4gVGFyZ2V0DQotDQotIyBOYW1lICJwaHBfZ3RrIC0gV2luMzIgUmVsZWFzZV9UUyINCi0j
IE5hbWUgInBocF9ndGsgLSBXaW4zMiBEZWJ1Z19UUyINCi0jIEJlZ2luIEdyb3VwICJQYXJzZXJz
Ig0KLQ0KLSMgUFJPUCBEZWZhdWx0X0ZpbHRlciAicGhwIg0KLSMgQmVnaW4gU291cmNlIEZpbGUN
Ci0NCi1TT1VSQ0U9LlxnZGsuZGVmcw0KLQ0KLSFJRiAgIiQoQ0ZHKSIgPT0gInBocF9ndGsgLSBX
aW4zMiBSZWxlYXNlX1RTIg0KLQ0KLVVTRVJERVBfX0dES19EPSJnZGsub3ZlcnJpZGVzIgkiZ2Rr
LmRlZnMiCQ0KLSMgQmVnaW4gQ3VzdG9tIEJ1aWxkDQotSW5wdXRQYXRoPS5cZ2RrLmRlZnMNCi0N
Ci0iZ2VuX2dkay5jIiA6ICQoU09VUkNFKSAiJChJTlRESVIpIiAiJChPVVRESVIpIg0KLQlwaHAu
ZXhlIC1xIC4uXC4uXGdlbmVyYXRvclxnZW5lcmF0b3IucGhwIC1vIGV4dFxndGslJTJiXGdkay5v
dmVycmlkZXMgLXAgZ2RrIGV4dFxndGslJTJiXGdkay5kZWZzID5nZW5fZ2RrLmMNCi0NCi0jIEVu
ZCBDdXN0b20gQnVpbGQNCi0NCi0hRUxTRUlGICAiJChDRkcpIiA9PSAicGhwX2d0ayAtIFdpbjMy
IERlYnVnX1RTIg0KLQ0KLVVTRVJERVBfX0dES19EPSJnZGsub3ZlcnJpZGVzIgkiZ2RrLmRlZnMi
CQ0KLSMgQmVnaW4gQ3VzdG9tIEJ1aWxkDQotSW5wdXRQYXRoPS5cZ2RrLmRlZnMNCi0NCi0iZ2Vu
X2dkay5jIiA6ICQoU09VUkNFKSAiJChJTlRESVIpIiAiJChPVVRESVIpIg0KLQlwaHAuZXhlIC1x
IC4uXC4uXGdlbmVyYXRvclxnZW5lcmF0b3IucGhwIC1vIGV4dFxndGslJTJiXGdkay5vdmVycmlk
ZXMgLXAgZ2RrIGV4dFxndGslJTJiXGdkay5kZWZzID5nZW5fZ2RrLmMNCi0NCi0jIEVuZCBDdXN0
b20gQnVpbGQNCi0NCi0hRU5ESUYgDQotDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEJlZ2luIFNv
dXJjZSBGaWxlDQotDQotU09VUkNFPS4uXC4uXGdlbmVyYXRvclxnZW5lcmF0b3IucGhwDQotDQot
IUlGICAiJChDRkcpIiA9PSAicGhwX2d0ayAtIFdpbjMyIFJlbGVhc2VfVFMiDQotDQotVVNFUkRF
UF9fR0VORVI9Imdlbl9ndGsuYyIJImdlbl9nZGsuYyIJDQotIyBCZWdpbiBDdXN0b20gQnVpbGQN
Ci1JbnB1dFBhdGg9Li5cLi5cZ2VuZXJhdG9yXGdlbmVyYXRvci5waHANCi0NCi1CdWlsZENtZHM9
IFwNCi0JZ3JlcCAtaCAiXlBIUF9HVEtfRVhQT1JUX0NFIiBnZW5fZ3RrLmMgZ2VuX2dkay5jIHwg
c2VkIC1lICJzL14vUEhQX0dUS19BUEkgZXh0ZXJuIC8iID4gZ2VuX2NlX2d0ay5oIFwNCi0JZ3Jl
cCAtaCAiXlBIUF9HVEtfRVhQT1JUX0NFIiBnZW5fZ3RrLmMgZ2VuX2dkay5jIHwgc2VkIC1lICJz
L14vUEhQX0dUS19BUEkgZXh0ZXJuIC8iID4gZ2VuX2d0ay5oIFwNCi0JZ3JlcCAtaCAiUEhQX0dU
S19FWFBPUlRfRlVOQyIgZ2VuX2d0ay5jIGdlbl9nZGsuYyB8IHNlZCAtZSAicy8qb2JqKS8mOy8i
ID4+IGdlbl9ndGsuaCBcDQotCQ0KLQ0KLSJnZW5fY2VfZ3RrLmgiIDogJChTT1VSQ0UpICIkKElO
VERJUikiICIkKE9VVERJUikiDQotICAgJChCdWlsZENtZHMpDQotDQotImdlbl9ndGsuaCIgOiAk
KFNPVVJDRSkgIiQoSU5URElSKSIgIiQoT1VURElSKSINCi0gICAkKEJ1aWxkQ21kcykNCi0jIEVu
ZCBDdXN0b20gQnVpbGQNCi0NCi0hRUxTRUlGICAiJChDRkcpIiA9PSAicGhwX2d0ayAtIFdpbjMy
IERlYnVnX1RTIg0KLQ0KLVVTRVJERVBfX0dFTkVSPSJnZW5fZ3RrLmMiCSJnZW5fZ2RrLmMiCQ0K
LSMgQmVnaW4gQ3VzdG9tIEJ1aWxkDQotSW5wdXRQYXRoPS4uXC4uXGdlbmVyYXRvclxnZW5lcmF0
b3IucGhwDQotDQotQnVpbGRDbWRzPSBcDQotCWdyZXAgLWggIl5QSFBfR1RLX0VYUE9SVF9DRSIg
Z2VuX2d0ay5jIGdlbl9nZGsuYyB8IHNlZCAtZSAicy9eL1BIUF9HVEtfQVBJIGV4dGVybiAvIiA+
IGdlbl9jZV9ndGsuaCBcDQotCWdyZXAgLWggIl5QSFBfR1RLX0VYUE9SVF9DRSIgZ2VuX2d0ay5j
IGdlbl9nZGsuYyB8IHNlZCAtZSAicy9eL1BIUF9HVEtfQVBJIGV4dGVybiAvIiA+IGdlbl9ndGsu
aCBcDQotCWdyZXAgLWggIlBIUF9HVEtfRVhQT1JUX0ZVTkMiIGdlbl9ndGsuYyBnZW5fZ2RrLmMg
fCBzZWQgLWUgInMvKm9iaikvJjsvIiA+PiBnZW5fZ3RrLmggXA0KLQkNCi0NCi0iZ2VuX2NlX2d0
ay5oIiA6ICQoU09VUkNFKSAiJChJTlRESVIpIiAiJChPVVRESVIpIg0KLSAgICQoQnVpbGRDbWRz
KQ0KLQ0KLSJnZW5fZ3RrLmgiIDogJChTT1VSQ0UpICIkKElOVERJUikiICIkKE9VVERJUikiDQot
ICAgJChCdWlsZENtZHMpDQotIyBFbmQgQ3VzdG9tIEJ1aWxkDQotDQotIUVORElGIA0KLQ0KLSMg
RW5kIFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0iLlxndGsu
ZGVmcyINCi0NCi0hSUYgICIkKENGRykiID09ICJwaHBfZ3RrIC0gV2luMzIgUmVsZWFzZV9UUyIN
Ci0NCi1VU0VSREVQX19HVEtfRD0iZ3RrLm92ZXJyaWRlcyIJImd0ay5kZWZzIgkNCi0jIEJlZ2lu
IEN1c3RvbSBCdWlsZA0KLUlucHV0UGF0aD0iLlxndGsuZGVmcyINCi0NCi0iZ2VuX2d0ay5jIiA6
ICQoU09VUkNFKSAiJChJTlRESVIpIiAiJChPVVRESVIpIg0KLQlwaHAuZXhlIC1xIC4uXC4uXGdl
bmVyYXRvclxnZW5lcmF0b3IucGhwIC1vIGV4dFxndGslJTJiXGd0ay5vdmVycmlkZXMgLXAgZ3Rr
IC1yIGV4dFxndGslJTJiXGdkay5kZWZzIGV4dFxndGslJTJiXGd0ay5kZWZzID5nZW5fZ3RrLmMN
Ci0NCi0jIEVuZCBDdXN0b20gQnVpbGQNCi0NCi0hRUxTRUlGICAiJChDRkcpIiA9PSAicGhwX2d0
ayAtIFdpbjMyIERlYnVnX1RTIg0KLQ0KLVVTRVJERVBfX0dUS19EPSJndGsub3ZlcnJpZGVzIgki
Z3RrLmRlZnMiCQ0KLSMgQmVnaW4gQ3VzdG9tIEJ1aWxkDQotSW5wdXRQYXRoPSIuXGd0ay5kZWZz
Ig0KLQ0KLSJnZW5fZ3RrLmMiIDogJChTT1VSQ0UpICIkKElOVERJUikiICIkKE9VVERJUikiDQot
CXBocC5leGUgLXEgLi5cLi5cZ2VuZXJhdG9yXGdlbmVyYXRvci5waHAgLW8gZXh0XGd0ayUlMmJc
Z3RrLm92ZXJyaWRlcyAtcCBndGsgZXh0XGd0ayUlMmJcZ3RrLmRlZnMgPmdlbl9ndGsuYw0KLQ0K
LSMgRW5kIEN1c3RvbSBCdWlsZA0KLQ0KLSFFTkRJRiANCi0NCi0jIEVuZCBTb3VyY2UgRmlsZQ0K
LSMgRW5kIEdyb3VwDQotIyBCZWdpbiBHcm91cCAiU291cmNlIEZpbGVzIg0KLQ0KLSMgUFJPUCBE
ZWZhdWx0X0ZpbHRlciAiY3BwO2M7Y3h4O3JjO2RlZjtyO29kbDtpZGw7aHBqO2JhdCINCi0jIEJl
Z2luIFNvdXJjZSBGaWxlDQotDQotU09VUkNFPXBocF9nZGsuYw0KLSMgRW5kIFNvdXJjZSBGaWxl
DQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0uLlwuLlxtYWluXHBocF9ndGsuYw0K
LSMgRW5kIFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0uLlwu
LlxtYWluXHBocF9ndGtfZXh0LnczMi5jDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEJlZ2luIFNv
dXJjZSBGaWxlDQotDQotU09VUkNFPS4uXC4uXG1haW5ccGhwX2d0a19vYmplY3QuYw0KLSMgRW5k
IFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0uLlwuLlxtYWlu
XHBocF9ndGtfdXRpbC5jDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEVuZCBHcm91cA0KLSMgQmVn
aW4gR3JvdXAgIkhlYWRlciBGaWxlcyINCi0NCi0jIFBST1AgRGVmYXVsdF9GaWx0ZXIgImg7aHBw
O2h4eDtobTtpbmwiDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0uLlwuLlxtYWlu
XHBocF9ndGsuaA0KLSMgRW5kIFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0K
LVNPVVJDRT0uLlwuLlxtYWluXHBocF9ndGtfbW9kdWxlLmgNCi0jIEVuZCBTb3VyY2UgRmlsZQ0K
LSMgRW5kIEdyb3VwDQotIyBCZWdpbiBHcm91cCAiUmVzb3VyY2UgRmlsZXMiDQotDQotIyBQUk9Q
IERlZmF1bHRfRmlsdGVyICJpY287Y3VyO2JtcDtkbGc7cmMyO3JjdDtiaW47cmdzO2dpZjtqcGc7
anBlZztqcGUiDQotIyBFbmQgR3JvdXANCi0jIEJlZ2luIEdyb3VwICJHdGsrIg0KLQ0KLSMgUFJP
UCBEZWZhdWx0X0ZpbHRlciAiIg0KLSMgQmVnaW4gR3JvdXAgIlNvdXJjZSBGaWxlcyBOby4gMSIN
Ci0NCi0jIFBST1AgRGVmYXVsdF9GaWx0ZXIgIiouYyINCi0jIEJlZ2luIFNvdXJjZSBGaWxlDQot
DQotU09VUkNFPS5cZ2VuX2dkay5jDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEJlZ2luIFNvdXJj
ZSBGaWxlDQotDQotU09VUkNFPS5cZ2VuX2d0ay5jDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEJl
Z2luIFNvdXJjZSBGaWxlDQotDQotU09VUkNFPSJwaHBfZ3RrKy5jIg0KLSMgRW5kIFNvdXJjZSBG
aWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0icGhwX2d0aytfdHlwZXMuYyIN
Ci0jIEVuZCBTb3VyY2UgRmlsZQ0KLSMgRW5kIEdyb3VwDQotIyBCZWdpbiBHcm91cCAiSGVhZGVy
IEZpbGVzIE5vLiAxIg0KLQ0KLSMgUFJPUCBEZWZhdWx0X0ZpbHRlciAiKi5oIg0KLSMgQmVnaW4g
U291cmNlIEZpbGUNCi0NCi1TT1VSQ0U9LlxnZW5fY2VfZ3RrLmgNCi0jIEVuZCBTb3VyY2UgRmls
ZQ0KLSMgQmVnaW4gU291cmNlIEZpbGUNCi0NCi1TT1VSQ0U9LlxnZW5fZ3RrLmgNCi0jIEVuZCBT
b3VyY2UgRmlsZQ0KLSMgQmVnaW4gU291cmNlIEZpbGUNCi0NCi1TT1VSQ0U9InBocF9ndGsrLmgi
DQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEVuZCBHcm91cA0KLSMgQmVnaW4gR3JvdXAgIk92ZXJy
aWRlIEZpbGVzIE5vLiAxIg0KLQ0KLSMgUFJPUCBEZWZhdWx0X0ZpbHRlciAiKi5vdmVycmlkZSIN
Ci0jIEJlZ2luIFNvdXJjZSBGaWxlDQotDQotU09VUkNFPS5cZ2RrLm92ZXJyaWRlcw0KLSMgRW5k
IFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0uXGd0ay5vdmVy
cmlkZXMNCi0jIEVuZCBTb3VyY2UgRmlsZQ0KLSMgRW5kIEdyb3VwDQotIyBFbmQgR3JvdXANCi0j
IEJlZ2luIFNvdXJjZSBGaWxlDQotDQotU09VUkNFPS5cUkVBRE1FLnR4dA0KLSMgRW5kIFNvdXJj
ZSBGaWxlDQotIyBFbmQgVGFyZ2V0DQotIyBFbmQgUHJvamVjdA0KZGlmZiAtLWdpdCBhL2V4dC9s
aWJnbGFkZS9saWJnbGFkZS5kc3AgYi9leHQvbGliZ2xhZGUvbGliZ2xhZGUuZHNwCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMGUzMGZkLi4wMDAwMDAwCi0tLSBhL2V4dC9saWJnbGFk
ZS9saWJnbGFkZS5kc3AKKysrIC9kZXYvbnVsbApAQCAtMSwxNjIgKzAsMCBAQAotIyBNaWNyb3Nv
ZnQgRGV2ZWxvcGVyIFN0dWRpbyBQcm9qZWN0IEZpbGUgLSBOYW1lPSJsaWJnbGFkZSIgLSBQYWNr
YWdlIE93bmVyPTw0Pg0KLSMgTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gR2VuZXJhdGVkIEJ1
aWxkIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDYuMDANCi0jICoqIERPIE5PVCBFRElUICoqDQotDQot
IyBUQVJHVFlQRSAiV2luMzIgKHg4NikgRHluYW1pYy1MaW5rIExpYnJhcnkiIDB4MDEwMg0KLQ0K
LUNGRz1saWJnbGFkZSAtIFdpbjMyIERlYnVnX1RTDQotIU1FU1NBR0UgVGhpcyBpcyBub3QgYSB2
YWxpZCBtYWtlZmlsZS4gVG8gYnVpbGQgdGhpcyBwcm9qZWN0IHVzaW5nIE5NQUtFLA0KLSFNRVNT
QUdFIHVzZSB0aGUgRXhwb3J0IE1ha2VmaWxlIGNvbW1hbmQgYW5kIHJ1bg0KLSFNRVNTQUdFIA0K
LSFNRVNTQUdFIE5NQUtFIC9mICJsaWJnbGFkZS5tYWsiLg0KLSFNRVNTQUdFIA0KLSFNRVNTQUdF
IFlvdSBjYW4gc3BlY2lmeSBhIGNvbmZpZ3VyYXRpb24gd2hlbiBydW5uaW5nIE5NQUtFDQotIU1F
U1NBR0UgYnkgZGVmaW5pbmcgdGhlIG1hY3JvIENGRyBvbiB0aGUgY29tbWFuZCBsaW5lLiBGb3Ig
ZXhhbXBsZToNCi0hTUVTU0FHRSANCi0hTUVTU0FHRSBOTUFLRSAvZiAibGliZ2xhZGUubWFrIiBD
Rkc9ImxpYmdsYWRlIC0gV2luMzIgRGVidWdfVFMiDQotIU1FU1NBR0UgDQotIU1FU1NBR0UgUG9z
c2libGUgY2hvaWNlcyBmb3IgY29uZmlndXJhdGlvbiBhcmU6DQotIU1FU1NBR0UgDQotIU1FU1NB
R0UgImxpYmdsYWRlIC0gV2luMzIgUmVsZWFzZV9UUyIgKGJhc2VkIG9uICJXaW4zMiAoeDg2KSBE
eW5hbWljLUxpbmsgTGlicmFyeSIpDQotIU1FU1NBR0UgImxpYmdsYWRlIC0gV2luMzIgRGVidWdf
VFMiIChiYXNlZCBvbiAiV2luMzIgKHg4NikgRHluYW1pYy1MaW5rIExpYnJhcnkiKQ0KLSFNRVNT
QUdFIA0KLQ0KLSMgQmVnaW4gUHJvamVjdA0KLSMgUFJPUCBBbGxvd1BlckNvbmZpZ0RlcGVuZGVu
Y2llcyAwDQotIyBQUk9QIFNjY19Qcm9qTmFtZSAiIg0KLSMgUFJPUCBTY2NfTG9jYWxQYXRoICIi
DQotQ1BQPWNsLmV4ZQ0KLU1UTD1taWRsLmV4ZQ0KLVJTQz1yYy5leGUNCi0NCi0hSUYgICIkKENG
RykiID09ICJsaWJnbGFkZSAtIFdpbjMyIFJlbGVhc2VfVFMiDQotDQotIyBQUk9QIEJBU0UgVXNl
X01GQyAwDQotIyBQUk9QIEJBU0UgVXNlX0RlYnVnX0xpYnJhcmllcyAwDQotIyBQUk9QIEJBU0Ug
T3V0cHV0X0RpciAiUmVsZWFzZV9UUyINCi0jIFBST1AgQkFTRSBJbnRlcm1lZGlhdGVfRGlyICJS
ZWxlYXNlX1RTIg0KLSMgUFJPUCBCQVNFIFRhcmdldF9EaXIgIiINCi0jIFBST1AgVXNlX01GQyAw
DQotIyBQUk9QIFVzZV9EZWJ1Z19MaWJyYXJpZXMgMA0KLSMgUFJPUCBPdXRwdXRfRGlyICJSZWxl
YXNlX1RTIg0KLSMgUFJPUCBJbnRlcm1lZGlhdGVfRGlyICJSZWxlYXNlX1RTIg0KLSMgUFJPUCBJ
Z25vcmVfRXhwb3J0X0xpYiAwDQotIyBQUk9QIFRhcmdldF9EaXIgIiINCi0jIEFERCBCQVNFIENQ
UCAvbm9sb2dvIC9NVCAvVzMgL0dYIC9PMiAvRCAiV0lOMzIiIC9EICJOREVCVUciIC9EICJfV0lO
RE9XUyIgL0QgIl9NQkNTIiAvRCAiX1VTUkRMTCIgL0QgIkxJQkdMQURFX0VYUE9SVFMiIC9ZWCAv
RkQgL2MNCi0jIEFERCBDUFAgL25vbG9nbyAvTVQgL1czIC9HWCAvTzIgL0kgIi4iIC9JICIuLi8u
Li8iIC9JICIuLi8uLi9tYWluIiAvSSAiLi4vLi4vLi4vcGhwNSIgL0kgIi4uLy4uLy4uL3BocDUv
bWFpbiIgL0kgIi4uLy4uLy4uL3BocDVcWmVuZCIgL0kgIi4uLy4uLy4uL3BocDVcVFNSTSIgL0kg
Ii4uLy4uLy4uL3NyYy9ndGsrIiAvSSAiLi4vLi4vLi4vc3JjL2d0aysvZ2RrIiAvSSAiLi4vLi4v
Li4vc3JjL2dsaWIiIC9JICIuLi8uLi8uLi9zcmMvZ2xpYi9nbGliIiAvSSAiLi4vLi4vLi4vc3Jj
L3BhbmdvIiAvSSAiLi4vLi4vLi4vc3JjL2xpYmdsYWRlIiAvRCAiV0lOMzIiIC9EICJOREVCVUci
IC9EICJfV0lORE9XUyIgL0QgIl9NQkNTIiAvRCAiX1VTUkRMTCIgL0QgIkxJQkdMQURFX0VYUE9S
VFMiIC9EICJQSFBfV0lOMzIiIC9EICJaRU5EX1dJTjMyIiAvRCBaVFM9MSAvRCBaRU5EX0RFQlVH
PTAgL0QgSEFWRV9QSFBfR1RLPTEgL0QgR1RLX1NIQVJFRD0xIC9EIEhBVkVfTElCR0xBREU9MSAv
RCAiUEhQX0dUS19DT01QSUxFX0RMX0xJQkdMQURFIiAvWVggL0ZEIC9jDQotIyBBREQgQkFTRSBN
VEwgL25vbG9nbyAvRCAiTkRFQlVHIiAvbWt0eXBsaWIyMDMgL3dpbjMyDQotIyBBREQgTVRMIC9u
b2xvZ28gL0QgIk5ERUJVRyIgL21rdHlwbGliMjAzIC93aW4zMg0KLSMgQUREIEJBU0UgUlNDIC9s
IDB4NDA5IC9kICJOREVCVUciDQotIyBBREQgUlNDIC9sIDB4NDA5IC9kICJOREVCVUciDQotQlND
MzI9YnNjbWFrZS5leGUNCi0jIEFERCBCQVNFIEJTQzMyIC9ub2xvZ28NCi0jIEFERCBCU0MzMiAv
bm9sb2dvDQotTElOSzMyPWxpbmsuZXhlDQotIyBBREQgQkFTRSBMSU5LMzIga2VybmVsMzIubGli
IHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIu
bGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxp
YiBvZGJjY3AzMi5saWIgL25vbG9nbyAvZGxsIC9tYWNoaW5lOkkzODYNCi0jIEFERCBMSU5LMzIg
cGhwNHRzLmxpYiBwaHBfZ3RrLmxpYiBndGsubGliIGdsaWItMi4wLmxpYiBsaWJnbGFkZS5saWIg
a2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5s
aWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5s
aWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvZGxsIC9tYWNoaW5lOkkzODYgL291
dDoiLi4vLi4vd2luMzIvUmVsZWFzZV9UUy9waHBfZ3RrX2xpYmdsYWRlLmRsbCIgL2xpYnBhdGg6
Ii4uXC4uXC4uXHBocDVcUmVsZWFzZV9UUyIgL2xpYnBhdGg6Ii4uXGd0aytcUmVsZWFzZV9UUyIN
Ci0NCi0hRUxTRUlGICAiJChDRkcpIiA9PSAibGliZ2xhZGUgLSBXaW4zMiBEZWJ1Z19UUyINCi0N
Ci0jIFBST1AgQkFTRSBVc2VfTUZDIDANCi0jIFBST1AgQkFTRSBVc2VfRGVidWdfTGlicmFyaWVz
IDENCi0jIFBST1AgQkFTRSBPdXRwdXRfRGlyICJEZWJ1Z19UUyINCi0jIFBST1AgQkFTRSBJbnRl
cm1lZGlhdGVfRGlyICJEZWJ1Z19UUyINCi0jIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQotIyBQ
Uk9QIFVzZV9NRkMgMA0KLSMgUFJPUCBVc2VfRGVidWdfTGlicmFyaWVzIDENCi0jIFBST1AgT3V0
cHV0X0RpciAiRGVidWdfVFMiDQotIyBQUk9QIEludGVybWVkaWF0ZV9EaXIgIkRlYnVnX1RTIg0K
LSMgUFJPUCBJZ25vcmVfRXhwb3J0X0xpYiAwDQotIyBQUk9QIFRhcmdldF9EaXIgIiINCi0jIEFE
RCBCQVNFIENQUCAvbm9sb2dvIC9NVGQgL1czIC9HbSAvR1ggL1pJIC9PZCAvRCAiV0lOMzIiIC9E
ICJfREVCVUciIC9EICJfV0lORE9XUyIgL0QgIl9NQkNTIiAvRCAiX1VTUkRMTCIgL0QgIkxJQkdM
QURFX0VYUE9SVFMiIC9ZWCAvRkQgL0daIC9jDQotIyBBREQgQ1BQIC9ub2xvZ28gL01UZCAvVzMg
L0dtIC9HWCAvWkkgL09kIC9JICIuIiAvSSAiLi4vLi4vIiAvSSAiLi4vLi4vbWFpbiIgL0kgIi4u
Ly4uLy4uL3BocDUiIC9JICIuLi8uLi8uLi9waHA1L21haW4iIC9JICIuLi8uLi8uLi9waHA1XFpl
bmQiIC9JICIuLi8uLi8uLi9waHA1XFRTUk0iIC9JICIuLi8uLi8uLi9zcmMvZ3RrKyIgL0kgIi4u
Ly4uLy4uL3NyYy9ndGsrL2dkayIgL0kgIi4uLy4uLy4uL3NyYy9nbGliIiAvSSAiLi4vLi4vLi4v
c3JjL2dsaWIvZ2xpYiIgL0kgIi4uLy4uLy4uL3NyYy9wYW5nbyIgL0kgIi4uLy4uLy4uL3NyYy9s
aWJnbGFkZSIgL0QgIldJTjMyIiAvRCAiX0RFQlVHIiAvRCAiX1dJTkRPV1MiIC9EICJfTUJDUyIg
L0QgIl9VU1JETEwiIC9EICJMSUJHTEFERV9FWFBPUlRTIiAvRCAiUEhQX1dJTjMyIiAvRCAiWkVO
RF9XSU4zMiIgL0QgWlRTPTEgL0QgWkVORF9ERUJVRz0xIC9EIEhBVkVfUEhQX0dUSz0xIC9EIEdU
S19TSEFSRUQ9MSAvRCBIQVZFX0xJQkdMQURFPTEgL0QgIlBIUF9HVEtfQ09NUElMRV9ETF9MSUJH
TEFERSIgL1lYIC9GRCAvR1ogL2MNCi0jIEFERCBCQVNFIE1UTCAvbm9sb2dvIC9EICJfREVCVUci
IC9ta3R5cGxpYjIwMyAvd2luMzINCi0jIEFERCBNVEwgL25vbG9nbyAvRCAiX0RFQlVHIiAvbWt0
eXBsaWIyMDMgL3dpbjMyDQotIyBBREQgQkFTRSBSU0MgL2wgMHg0MDkgL2QgIl9ERUJVRyINCi0j
IEFERCBSU0MgL2wgMHg0MDkgL2QgIl9ERUJVRyINCi1CU0MzMj1ic2NtYWtlLmV4ZQ0KLSMgQURE
IEJBU0UgQlNDMzIgL25vbG9nbw0KLSMgQUREIEJTQzMyIC9ub2xvZ28NCi1MSU5LMzI9bGluay5l
eGUNCi0jIEFERCBCQVNFIExJTkszMiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIg
d2luc3Bvb2wubGliIGNvbWRsZzMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIu
bGliIG9sZWF1dDMyLmxpYiB1dWlkLmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiAvbm9sb2dv
IC9kbGwgL2RlYnVnIC9tYWNoaW5lOkkzODYgL3BkYnR5cGU6c2VwdA0KLSMgQUREIExJTkszMiBw
aHA0dHNfZGVidWcubGliIHBocF9ndGsubGliIGd0ay5saWIgZ2xpYi0yLjAubGliIGxpYmdsYWRl
LmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIgd2luc3Bvb2wubGliIGNvbWRs
ZzMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIubGliIG9sZWF1dDMyLmxpYiB1
dWlkLmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiAvbm9sb2dvIC9kbGwgL2RlYnVnIC9tYWNo
aW5lOkkzODYgL291dDoiLi4vLi4vd2luMzIvRGVidWdfVFMvcGhwX2d0a19saWJnbGFkZS5kbGwi
IC9wZGJ0eXBlOnNlcHQgL2xpYnBhdGg6Ii4uXC4uXC4uXHBocDVcRGVidWdfVFMiIC9saWJwYXRo
OiIuLlxndGsrXERlYnVnX1RTIg0KLQ0KLSFFTkRJRiANCi0NCi0jIEJlZ2luIFRhcmdldA0KLQ0K
LSMgTmFtZSAibGliZ2xhZGUgLSBXaW4zMiBSZWxlYXNlX1RTIg0KLSMgTmFtZSAibGliZ2xhZGUg
LSBXaW4zMiBEZWJ1Z19UUyINCi0jIEJlZ2luIEdyb3VwICJQYXJzZXJzIg0KLQ0KLSMgUFJPUCBE
ZWZhdWx0X0ZpbHRlciAiZGVmcyINCi0jIEJlZ2luIFNvdXJjZSBGaWxlDQotDQotU09VUkNFPS5c
bGliZ2xhZGUuZGVmcw0KLQ0KLSFJRiAgIiQoQ0ZHKSIgPT0gImxpYmdsYWRlIC0gV2luMzIgUmVs
ZWFzZV9UUyINCi0NCi1VU0VSREVQX19MSUJHTD0ibGliZ2xhZGUub3ZlcnJpZGVzIgkibGliZ2xh
ZGUuZGVmcyIJDQotIyBCZWdpbiBDdXN0b20gQnVpbGQNCi1JbnB1dFBhdGg9LlxsaWJnbGFkZS5k
ZWZzDQotDQotImdlbl9saWJnbGFkZS5jIiA6ICQoU09VUkNFKSAiJChJTlRESVIpIiAiJChPVVRE
SVIpIg0KLQlwaHAuZXhlIC1xIC4uXC4uXGdlbmVyYXRvclxnZW5lcmF0b3IucGhwIC1vIGV4dFxs
aWJnbGFkZVxsaWJnbGFkZS5vdmVycmlkZXMgLXAgbGliZ2xhZGUgLXIgZXh0XGd0ayUlMmJcZ3Rr
LmRlZnMgZXh0XGxpYmdsYWRlXGxpYmdsYWRlLmRlZnMgPmdlbl9saWJnbGFkZS5jIA0KLQlncmVw
IC1oICJeUEhQX0dUS19FWFBPUlRfQ0UiIGdlbl9saWJnbGFkZS5jIHwgc2VkIC1lICJzL14vZXh0
ZXJuIC8iID4gZ2VuX2NlX2xpYmdsYWRlLmggDQotCQ0KLSMgRW5kIEN1c3RvbSBCdWlsZA0KLQ0K
LSFFTFNFSUYgICIkKENGRykiID09ICJsaWJnbGFkZSAtIFdpbjMyIERlYnVnX1RTIg0KLQ0KLVVT
RVJERVBfX0xJQkdMPSJsaWJnbGFkZS5vdmVycmlkZXMiCSJsaWJnbGFkZS5kZWZzIgkNCi0jIEJl
Z2luIEN1c3RvbSBCdWlsZA0KLUlucHV0UGF0aD0uXGxpYmdsYWRlLmRlZnMNCi0NCi0iZ2VuX2xp
YmdsYWRlLmMiIDogJChTT1VSQ0UpICIkKElOVERJUikiICIkKE9VVERJUikiDQotCXBocC5leGUg
LXEgLi5cLi5cZ2VuZXJhdG9yXGdlbmVyYXRvci5waHAgLW8gZXh0XGxpYmdsYWRlXGxpYmdsYWRl
Lm92ZXJyaWRlcyAtcCBsaWJnbGFkZSAtciBleHRcZ3RrJSUyYlxndGsuZGVmcyBleHRcbGliZ2xh
ZGVcbGliZ2xhZGUuZGVmcyA+Z2VuX2xpYmdsYWRlLmMgDQotCWdyZXAgLWggIl5QSFBfR1RLX0VY
UE9SVF9DRSIgZ2VuX2xpYmdsYWRlLmMgfCBzZWQgLWUgInMvXi9leHRlcm4gLyIgPiBnZW5fY2Vf
bGliZ2xhZGUuaCANCi0JDQotIyBFbmQgQ3VzdG9tIEJ1aWxkDQotDQotIUVORElGIA0KLQ0KLSMg
RW5kIFNvdXJjZSBGaWxlDQotIyBFbmQgR3JvdXANCi0jIEJlZ2luIEdyb3VwICJTb3VyY2UgRmls
ZXMiDQotDQotIyBQUk9QIERlZmF1bHRfRmlsdGVyICJjcHA7YztjeHg7cmM7ZGVmO3I7b2RsO2lk
bDtocGo7YmF0Ig0KLSMgQmVnaW4gU291cmNlIEZpbGUNCi0NCi1TT1VSQ0U9LlxnZW5fbGliZ2xh
ZGUuYw0KLSMgRW5kIFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJD
RT0uXHBocF9saWJnbGFkZS5jDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEVuZCBHcm91cA0KLSMg
QmVnaW4gR3JvdXAgIkhlYWRlciBGaWxlcyINCi0NCi0jIFBST1AgRGVmYXVsdF9GaWx0ZXIgImg7
aHBwO2h4eDtobTtpbmwiDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KLVNPVVJDRT0uXGdlbl9j
ZV9saWJnbGFkZS5oDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEJlZ2luIFNvdXJjZSBGaWxlDQot
DQotU09VUkNFPS5ccGhwX2xpYmdsYWRlLmgNCi0jIEVuZCBTb3VyY2UgRmlsZQ0KLSMgRW5kIEdy
b3VwDQotIyBCZWdpbiBHcm91cCAiUmVzb3VyY2UgRmlsZXMiDQotDQotIyBQUk9QIERlZmF1bHRf
RmlsdGVyICJpY287Y3VyO2JtcDtkbGc7cmMyO3JjdDtiaW47cmdzO2dpZjtqcGc7anBlZztqcGUi
DQotIyBFbmQgR3JvdXANCi0jIEJlZ2luIEdyb3VwICJPdmVycmlkZSBGaWxlcyINCi0NCi0jIFBS
T1AgRGVmYXVsdF9GaWx0ZXIgIioub3ZlcnJpZGUiDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0K
LVNPVVJDRT0uLlxleHRcbGliZ2xhZGVcbGliZ2xhZGUub3ZlcnJpZGVzDQotIyBFbmQgU291cmNl
IEZpbGUNCi0jIEVuZCBHcm91cA0KLSMgRW5kIFRhcmdldA0KLSMgRW5kIFByb2plY3QNCmRpZmYg
LS1naXQgYS9leHQvbW96ZW1iZWQvTWFrZWZpbGUuZnJhZyBiL2V4dC9tb3plbWJlZC9NYWtlZmls
ZS5mcmFnCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZjc4MDFlLi4wMDAwMDAwCi0t
LSBhL2V4dC9tb3plbWJlZC9NYWtlZmlsZS5mcmFnCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAs
MCBAQAotCi0kKGJ1aWxkZGlyKS9nZW5fbW96ZW1iZWQuYzogJChzcmNkaXIpL21vemVtYmVkLmRl
ZnMgJChzcmNkaXIpL21vemVtYmVkLm92ZXJyaWRlcwotCSggXAotICAgICAkKFBIUCkgJCh0b3Bf
c3JjZGlyKS9nZW5lcmF0b3IvZ2VuZXJhdG9yLnBocCBcCi0JIAktbCAkKEBEKS8kKCpGKS5sb2cg
XAotICAgICAgICAtciBleHQvZ3RrKy9hdGstdHlwZXMuZGVmcyAgIFwKLSAgICAgICAgLXIgZXh0
L2d0aysvcGFuZ28tdHlwZXMuZGVmcyBcCi0gICAgICAgIC1yIGV4dC9ndGsrL2dkay10eXBlcy5k
ZWZzICAgXAotICAgICAgICAtciBleHQvZ3RrKy9ndGstdHlwZXMuZGVmcyAgIFwKLQkJLW8gZXh0
L21vemVtYmVkL21vemVtYmVkLm92ZXJyaWRlcyBcCi0gICAgICAgIC1wIEd0a01vemVtYmVkIFwK
LQkJLWYgJEAgZXh0L21vemVtYmVkL21vemVtYmVkLmRlZnMgXAotICAgICAmJiBncmVwIC1oICJe
UEhQX0dUS19FWFBPUlRfQ0UiICRAIHwgc2VkIC1lICJzIV4hZXh0ZXJuICEiID4gJChARCkvJCgq
RikuaCBcCi0JKQpkaWZmIC0tZ2l0IGEvZXh0L21vemVtYmVkL1JFQURNRSBiL2V4dC9tb3plbWJl
ZC9SRUFETUUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhiMzJlNjMuLjAwMDAwMDAK
LS0tIGEvZXh0L21vemVtYmVkL1JFQURNRQorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAK
LUxJQ0VOU0U6IE1vemlsbGEgUHVibGljIExpY2Vuc2UgLyAoT3B0aW9uYWxseSBMR1BML0dQTCkK
LUFVVEhPUjogTW96aWxsYS5vcmcKLVVSTDogaHR0cDovL2x4ci5tb3ppbGxhLm9yZy9tb3ppbGxh
L3NvdXJjZS9lbWJlZGRpbmcvYnJvd3Nlci9ndGsvc3JjLwotCi1HdGtNb3plbWJlZCBpcyBhIHdp
ZGdldCB0aGF0IGFsbG93cyB5b3UgdG8gZW1iZWQgdGhlIE1vemlsbGEgZW5naW5lIGluIHlvdXIg
R3RrKwotYXBwbGljYXRpb25zLiBDaGVjayB0aGUgZGVtb3MvIGRpcmVjdG9yeSBmb3Igc2FtcGxl
IHNjcmlwdChzKS4KLQotWW91IG5lZWQgdG8gYWRkIHRoZSAtLXdpdGgtbW96ZW1iZWQgc3dpdGNo
IHRvIHlvdXIgLi9jb25maWd1cmUgc3RhdGVtZW50IHdoZW4KLXlvdSBidWlsZCBQSFAtR1RLIDIg
aW4gb3JkZXIgdG8gZW5hYmxlIHRoaXMgZXh0ZW5zaW9uLgotCi1OT1RFOiBUaGlzIGV4dGVuc2lv
biBpcyBjdXJyZW50bHkgc3VwcG9ydGVkIG9ubHkgb24gdGhlICpuaXggcGxhdGZvcm0uCmRpZmYg
LS1naXQgYS9leHQvbW96ZW1iZWQvY29uZmlnLm00IGIvZXh0L21vemVtYmVkL2NvbmZpZy5tNApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGZjZDZhMS4uMDAwMDAwMAotLS0gYS9leHQv
bW96ZW1iZWQvY29uZmlnLm00CisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotZG5sICRJ
ZCQKLWRubCBjb25maWcubTQgZm9yIG1vemVtYmVkIG1vZHVsZQotCi1kZWZpbmUoZmlyZWZveF9y
ZXF1aXJlZF92ZXJzaW9uLCAxLjUuMCkKLWRlZmluZShtb3ppbGxhX3JlcXVpcmVkX3ZlcnNpb24s
IDEuNy4wKQotZGVmaW5lKHh1bHJ1bm5lcl9yZXF1aXJlZF92ZXJzaW9uLCAxLjcuMCkgI0p1c3Qg
YSB3aWxkIGd1ZXNzCi0KLVBIUF9HVEtfQVJHX1dJVEgobW96ZW1iZWQsZm9yIEd0a01vekVtYmVk
IHN1cHBvcnQsCi1bICAtLXdpdGgtbW96ZW1iZWQgICAgICAgICBFbmFibGUgR3RrTW96RW1iZWQg
c3VwcG9ydF0sbm8pCi0KLWRubCBmaXJzdCBjaGVjayBmb3IgZmlyZWZveCwgdGhlbiBtb3ppbGxh
Ci1pZiB0ZXN0ICIkUEhQX0dUS19NT1pFTUJFRCIgIT0gIm5vIjsgdGhlbgotICBQS0dfQ0hFQ0tf
TU9EVUxFUyhNT1pFTUJFRCwgW2ZpcmVmb3gtZ3RrbW96ZW1iZWQgPj0gZmlyZWZveF9yZXF1aXJl
ZF92ZXJzaW9uXSwKLSAgaGF2ZV9tb3plbWJlZD15ZXMsIGhhdmVfbW96ZW1iZWQ9bm8pCi0gIGlm
IHRlc3QgIiRoYXZlX21vemVtYmVkIiAhPSAieWVzIjsgdGhlbgotICAgIFBLR19DSEVDS19NT0RV
TEVTKE1PWkVNQkVELCBbbW96aWxsYS1ndGttb3plbWJlZCA+PSBtb3ppbGxhX3JlcXVpcmVkX3Zl
cnNpb25dLAotICAgIGhhdmVfbW96ZW1iZWQ9eWVzLCBoYXZlX21vemVtYmVkPW5vKQotICBmaQot
ICBpZiB0ZXN0ICIkaGF2ZV9tb3plbWJlZCIgIT0gInllcyI7IHRoZW4KLSAgICBQS0dfQ0hFQ0tf
TU9EVUxFUyhNT1pFTUJFRCwgW3h1bHJ1bm5lci1ndGttb3plbWJlZCA+PSB4dWxydW5uZXJfcmVx
dWlyZWRfdmVyc2lvbl0sCi0gICAgaGF2ZV9tb3plbWJlZD15ZXMsIGhhdmVfbW96ZW1iZWQ9bm8p
Ci0gIGZpCi0gIGlmIHRlc3QgIiRoYXZlX21vemVtYmVkIiAhPSAieWVzIjsgdGhlbgotICAgIEFD
X01TR19SRVNVTFQoW1VuYWJsZSB0byBsb2NhdGUgZmlyZWZveC1ndGttb3plbWJlZCB2ZXJzaW9u
IGZpcmVmb3hfcmVxdWlyZWRfdmVyc2lvbiwgbW96aWxsYS1ndGttb3plbWJlZCB2ZXJzaW9uIG1v
emlsbGFfcmVxdWlyZWRfdmVyc2lvbiwgeHVscnVubmVyLWd0a21vemVtYmVkIHh1bHJ1bm5lcl9y
ZXF1aXJlZF92ZXJzaW9uIG9yIGhpZ2hlcjogbm90IGJ1aWxkaW5nXSkKLSAgZWxzZQotICAgIEFD
X0RFRklORShIQVZFX01PWkVNQkVELCAxLCBbbW96ZW1iZWQgc3VwcG9ydF0pCi0gICAgUEhQX0VW
QUxfSU5DTElORSgkTU9aRU1CRURfQ0ZMQUdTKQotICAgIGlmIHRlc3QgIiRwaHBfZ3RrX2V4dF9z
aGFyZWQiID0gInllcyI7IHRoZW4KLSAgICAgIFBIUF9FVkFMX0xJQkxJTkUoJE1PWkVNQkVEX0xJ
QlMsIFBIUF9HVEsyX01PWkVNQkVEX1NIQVJFRF9MSUJBREQpCi0gICAgICBQSFBfU1VCU1QoUEhQ
X0dUSzJfTU9aRU1CRURfU0hBUkVEX0xJQkFERCkKLSAgICBlbHNlCi0gICAgICBQSFBfRVZBTF9M
SUJMSU5FKCRNT1pFTUJFRF9MSUJTLCBQSFBfR1RLMl9TSEFSRURfTElCQUREKQotICAgIGZpCi0g
ICAgUEhQX0dUS19FWFRFTlNJT04obW96ZW1iZWQsICRwaHBfZ3RrX2V4dF9zaGFyZWQsIHBocF9t
b3plbWJlZC5jLCBnZW5fbW96ZW1iZWQuYykKLSAgZmkKLWZpCmRpZmYgLS1naXQgYS9leHQvbW96
ZW1iZWQvZGVtb3MvYnJvd3Nlci5waHAgYi9leHQvbW96ZW1iZWQvZGVtb3MvYnJvd3Nlci5waHAK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMxYzYzMGEuLjAwMDAwMDAKLS0tIGEvZXh0
L21vemVtYmVkL2RlbW9zL2Jyb3dzZXIucGhwCisrKyAvZGV2L251bGwKQEAgLTEsNjggKzAsMCBA
QAotPD9waHAKLQotICAgIGdsb2JhbCAkbG9jYXRpb247Ci0gICAgZ2xvYmFsICRtb3pDb21wb25l
bnQ7Ci0gICAgJGxvY2F0aW9uID0gbmV3IEd0a0VudHJ5KCk7Ci0gICAgJG1vekNvbXBvbmVudCA9
IG5ldyBHdGtNb3pFbWJlZCgpOwotICAgIAotICAgICRnb0J1dHRvbiA9IEd0a0J1dHRvbjo6bmV3
X2Zyb21fc3RvY2soR3RrOjpTVE9DS19PSyk7Ci0gICAgJHN0b3BCdXR0b24gPSBHdGtCdXR0b246
Om5ld19mcm9tX3N0b2NrKEd0azo6U1RPQ0tfU1RPUCk7Ci0gICAgJGdvRm9yd2FyZCA9IEd0a0J1
dHRvbjo6bmV3X2Zyb21fc3RvY2soR3RrOjpTVE9DS19HT19GT1JXQVJEKTsKLSAgICAkZ29CYWNr
d2FyZCA9IEd0a0J1dHRvbjo6bmV3X2Zyb21fc3RvY2soR3RrOjpTVE9DS19HT19CQUNLKTsKLSAg
ICAKLSAgICAkZ29CdXR0b24tPmNvbm5lY3Rfc2ltcGxlKCJjbGlja2VkIiwgImdvdG8iKTsKLSAg
ICAkc3RvcEJ1dHRvbi0+Y29ubmVjdF9zaW1wbGUoImNsaWNrZWQiLCAic3RvcCIpOwotICAgICRn
b0ZvcndhcmQtPmNvbm5lY3Rfc2ltcGxlKCJjbGlja2VkIiwgImZvcndhcmQiKTsKLSAgICAkZ29C
YWNrd2FyZC0+Y29ubmVjdF9zaW1wbGUoImNsaWNrZWQiLCAiYmFjayIpOwotCi0gICAgLyogSG9t
ZSBQYWdlISAqLwotICAgICRtb3pDb21wb25lbnQtPmxvYWRfdXJsKCJodHRwOi8vZ3RrLnBocC5u
ZXQvIik7Ci0KLSAgICAkbG9jYXRpb25CYXIgPSBuZXcgR3RrSEJveCgpOwotICAgICRsb2NhdGlv
bkJhci0+cGFja19zdGFydCgkbG9jYXRpb24pOwotICAgICRsb2NhdGlvbkJhci0+cGFja19zdGFy
dCgkZ29CdXR0b24pOwotICAgICRsb2NhdGlvbkJhci0+cGFja19zdGFydCgkc3RvcEJ1dHRvbik7
Ci0gICAgJGxvY2F0aW9uQmFyLT5wYWNrX3N0YXJ0KCRnb0ZvcndhcmQpOwotICAgICRsb2NhdGlv
bkJhci0+cGFja19zdGFydCgkZ29CYWNrd2FyZCk7Ci0KLSAgICAkbWFpbkJveCA9IG5ldyBHdGtW
Qm94KCk7Ci0gICAgJG1haW5Cb3gtPnBhY2tfc3RhcnQoJGxvY2F0aW9uQmFyLCBmYWxzZSwgZmFs
c2UpOwotICAgICRtYWluQm94LT5wYWNrX3N0YXJ0KCRtb3pDb21wb25lbnQsIHRydWUsIHRydWUp
OwotICAgIAotICAgICRtYWluV2luZG93ID0gbmV3IEd0a1dpbmRvdygpOwotICAgICRtYWluV2lu
ZG93LT5tYXhpbWl6ZSgpOwotICAgICRtYWluV2luZG93LT5zZXRfdGl0bGUoIlBIUC1HdGsyJ3Mg
Zmlyc3Qgd2ViIGJyb3dzZXIhIik7Ci0gICAgJG1haW5XaW5kb3ctPmFkZCgkbWFpbkJveCk7Ci0K
LSAgICAkbWFpbldpbmRvdy0+c2hvd19hbGwoKTsKLSAgICAkbWFpbldpbmRvdy0+Y29ubmVjdF9z
aW1wbGUoImRlc3Ryb3kiLCBhcnJheSgiR3RrIiwgIm1haW5fcXVpdCIpKTsKLQotICAgIEd0azo6
bWFpbigpOwotCi0gICAgZnVuY3Rpb24gZ290bygpCi0gICAgewotICAgICAgICBnbG9iYWwgJGxv
Y2F0aW9uOwotICAgICAgICBnbG9iYWwgJG1vekNvbXBvbmVudDsKLSAgICAgICAgJHVybCA9IHRy
aW0oJGxvY2F0aW9uLT5nZXRfdGV4dCgpKTsKLSAgICAgICAgJG1vekNvbXBvbmVudC0+bG9hZF91
cmwoJHVybCk7Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gc3RvcCgpCi0gICAgewotICAgICAgICBn
bG9iYWwgJG1vekNvbXBvbmVudDsKLSAgICAgICAgJG1vekNvbXBvbmVudC0+c3RvcF9sb2FkKCk7
Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gZm9yd2FyZCgpCi0gICAgewotICAgICAgICBnbG9iYWwg
JG1vekNvbXBvbmVudDsKLSAgICAgICAgJG1vekNvbXBvbmVudC0+Z29fZm9yd2FyZCgpOwotICAg
IH0KLQotICAgIGZ1bmN0aW9uIGJhY2soKQotICAgIHsKLSAgICAgICAgZ2xvYmFsICRtb3pDb21w
b25lbnQ7Ci0gICAgICAgICRtb3pDb21wb25lbnQtPmdvX2JhY2soKTsKLSAgICB9Ci0KLT8+CmRp
ZmYgLS1naXQgYS9leHQvbW96ZW1iZWQvZGVtb3MvZGVtb3Mvc3BlbGwucGhwIGIvZXh0L21vemVt
YmVkL2RlbW9zL2RlbW9zL3NwZWxsLnBocApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YzJmYzcxMC4uMDAwMDAwMAotLS0gYS9leHQvbW96ZW1iZWQvZGVtb3MvZGVtb3Mvc3BlbGwucGhw
CisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBAQAotPD9waHAKLQotJHfKPSBuZXcgR3RrV2lu
ZG93KCk7Ci0kdCA9IG5ldyBHdGtUZXh0QnVmZmVyKCk7Ci0kdiA9IG5ldyBHdGtUZXh0Vmlldygk
dCk7Ci0KLSRzyj0gbmV3IEd0a1NwZWxsKCR2KTsKLSRzLT5zZXRfbGFuZ3VhZ2UoJ2VuJyk7Ci0K
LSR3LT5zZXRfdGl0bGUoJ1NwZWxsykNoZWNrJyk7Ci0kdy0+c2V0X3NpemVfcmVxdWVzdCgyMDAs
yjIwMCk7Ci0kdy0+YWRkKCR2KTsKLSR3LT5zaG93X2FsbCgpOwotCi0kdy0+Y29ubmVjdF9zaW1w
bGUoJ2Rlc3Ryb3knLCBhcnJheSgnR3RrJywgJ21haW5fcXVpdCcpKTsKLQotR3RrOjptYWluKCk7
Ci0KLT8+Ci0KZGlmZiAtLWdpdCBhL2V4dC9tb3plbWJlZC9tb3plbWJlZC5kZWZzIGIvZXh0L21v
emVtYmVkL21vemVtYmVkLmRlZnMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU4OWU1
YWIuLjAwMDAwMDAKLS0tIGEvZXh0L21vemVtYmVkL21vemVtYmVkLmRlZnMKKysrIC9kZXYvbnVs
bApAQCAtMSwxNDggKzAsMCBAQAotOzsgLSotIHNjaGVtZSAtKi0KLTsgb2JqZWN0IGRlZmluaXRp
b25zIC4uLgotKGRlZmluZS1vYmplY3QgTW96RW1iZWQKLSAgKGluLW1vZHVsZSAiR3RrIikKLSAg
KHBhcmVudCAiR3RrQmluIikKLSAgKGMtbmFtZSAiR3RrTW96RW1iZWQiKQotICAoZ3R5cGUtaWQg
IkdUS19UWVBFX01PWl9FTUJFRCIpCi0pCi0KLTs7IEVudW1lcmF0aW9ucyBhbmQgZmxhZ3MgLi4u
Ci0KLTs7IEZyb20gL3Vzci9pbmNsdWRlL21vemlsbGEtMS4yYi9ndGtlbWJlZG1vei9ndGttb3pl
bWJlZC5oCi0KLShkZWZpbmUtZnVuY3Rpb24gZ3RrX21vel9lbWJlZF9nZXRfdHlwZQotICAoYy1u
YW1lICJndGtfbW96X2VtYmVkX2dldF90eXBlIikKLSAgKHJldHVybi10eXBlICJHdGtUeXBlIikK
LSkKLQotKGRlZmluZS1mdW5jdGlvbiBndGtfbW96X2VtYmVkX25ldwotICAoYy1uYW1lICJndGtf
bW96X2VtYmVkX25ldyIpCi0gIChpcy1jb25zdHJ1Y3Rvci1vZiAiR3RrTW96RW1iZWQiKQotICAo
cmV0dXJuLXR5cGUgIkd0a1dpZGdldCoiKQotKQotCi0oZGVmaW5lLW1ldGhvZCBsb2FkX3VybAot
ICAob2Ytb2JqZWN0ICJHdGtNb3pFbWJlZCIpCi0gIChjLW5hbWUgImd0a19tb3pfZW1iZWRfbG9h
ZF91cmwiKQotICAocmV0dXJuLXR5cGUgIm5vbmUiKQotICAocGFyYW1ldGVycwotICAgICcoImNv
bnN0LWNoYXIqIiAidXJsIikKLSAgKQotKQotCi0oZGVmaW5lLW1ldGhvZCBzdG9wX2xvYWQKLSAg
KG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX3N0b3Bf
bG9hZCIpCi0gIChyZXR1cm4tdHlwZSAibm9uZSIpCi0pCi0KLShkZWZpbmUtbWV0aG9kIGNhbl9n
b19iYWNrCi0gIChvZi1vYmplY3QgIkd0a01vekVtYmVkIikKLSAgKGMtbmFtZSAiZ3RrX21vel9l
bWJlZF9jYW5fZ29fYmFjayIpCi0gIChyZXR1cm4tdHlwZSAiZ2Jvb2xlYW4iKQotKQotCi0oZGVm
aW5lLW1ldGhvZCBjYW5fZ29fZm9yd2FyZAotICAob2Ytb2JqZWN0ICJHdGtNb3pFbWJlZCIpCi0g
IChjLW5hbWUgImd0a19tb3pfZW1iZWRfY2FuX2dvX2ZvcndhcmQiKQotICAocmV0dXJuLXR5cGUg
Imdib29sZWFuIikKLSkKLQotKGRlZmluZS1tZXRob2QgZ29fYmFjawotICAob2Ytb2JqZWN0ICJH
dGtNb3pFbWJlZCIpCi0gIChjLW5hbWUgImd0a19tb3pfZW1iZWRfZ29fYmFjayIpCi0gIChyZXR1
cm4tdHlwZSAibm9uZSIpCi0pCi0KLShkZWZpbmUtbWV0aG9kIGdvX2ZvcndhcmQKLSAgKG9mLW9i
amVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX2dvX2ZvcndhcmQi
KQotICAocmV0dXJuLXR5cGUgIm5vbmUiKQotKQotCi0oZGVmaW5lLW1ldGhvZCByZW5kZXJfZGF0
YQotICAob2Ytb2JqZWN0ICJHdGtNb3pFbWJlZCIpCi0gIChjLW5hbWUgImd0a19tb3pfZW1iZWRf
cmVuZGVyX2RhdGEiKQotICAocmV0dXJuLXR5cGUgIm5vbmUiKQotICAocGFyYW1ldGVycwotICAg
ICcoImNvbnN0LWNoYXIqIiAiZGF0YSIpCi0gICAgJygiZ3VpbnQzMiIgImxlbiIpCi0gICAgJygi
Y29uc3QtY2hhcioiICJiYXNlX3VyaSIpCi0gICAgJygiY29uc3QtY2hhcioiICJtaW1lX3R5cGUi
KQotICApCi0pCi0KLShkZWZpbmUtbWV0aG9kIG9wZW5fc3RyZWFtCi0gIChvZi1vYmplY3QgIkd0
a01vekVtYmVkIikKLSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9vcGVuX3N0cmVhbSIpCi0gIChy
ZXR1cm4tdHlwZSAibm9uZSIpCi0gIChwYXJhbWV0ZXJzCi0gICAgJygiY29uc3QtY2hhcioiICJi
YXNlX3VyaSIpCi0gICAgJygiY29uc3QtY2hhcioiICJtaW1lX3R5cGUiKQotICApCi0pCi0KLShk
ZWZpbmUtbWV0aG9kIGFwcGVuZF9kYXRhCi0gIChvZi1vYmplY3QgIkd0a01vekVtYmVkIikKLSAg
KGMtbmFtZSAiZ3RrX21vel9lbWJlZF9hcHBlbmRfZGF0YSIpCi0gIChyZXR1cm4tdHlwZSAibm9u
ZSIpCi0gIChwYXJhbWV0ZXJzCi0gICAgJygiY29uc3QtY2hhcioiICJkYXRhIikKLSAgICAnKCJn
dWludDMyIiAibGVuIikKLSAgKQotKQotCi0oZGVmaW5lLW1ldGhvZCBjbG9zZV9zdHJlYW0KLSAg
KG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX2Nsb3Nl
X3N0cmVhbSIpCi0gIChyZXR1cm4tdHlwZSAibm9uZSIpCi0pCi0KLShkZWZpbmUtbWV0aG9kIGdl
dF9saW5rX21lc3NhZ2UKLSAgKG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJn
dGtfbW96X2VtYmVkX2dldF9saW5rX21lc3NhZ2UiKQotICAocmV0dXJuLXR5cGUgImNoYXIqIikK
LSkKLQotKGRlZmluZS1tZXRob2QgZ2V0X2pzX3N0YXR1cwotICAob2Ytb2JqZWN0ICJHdGtNb3pF
bWJlZCIpCi0gIChjLW5hbWUgImd0a19tb3pfZW1iZWRfZ2V0X2pzX3N0YXR1cyIpCi0gIChyZXR1
cm4tdHlwZSAiY2hhcioiKQotKQotCi0oZGVmaW5lLW1ldGhvZCBnZXRfdGl0bGUKLSAgKG9mLW9i
amVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX2dldF90aXRsZSIp
Ci0gIChyZXR1cm4tdHlwZSAiY2hhcioiKQotKQotCi0oZGVmaW5lLW1ldGhvZCBnZXRfbG9jYXRp
b24KLSAgKG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVk
X2dldF9sb2NhdGlvbiIpCi0gIChyZXR1cm4tdHlwZSAiY2hhcioiKQotKQotCi0oZGVmaW5lLW1l
dGhvZCByZWxvYWQKLSAgKG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtf
bW96X2VtYmVkX3JlbG9hZCIpCi0gIChyZXR1cm4tdHlwZSAibm9uZSIpCi0gIChwYXJhbWV0ZXJz
Ci0gICAgJygiZ2ludDMyIiAiZmxhZ3MiKQotICApCi0pCi0KLShkZWZpbmUtbWV0aG9kIHNldF9j
aHJvbWVfbWFzawotICAob2Ytb2JqZWN0ICJHdGtNb3pFbWJlZCIpCi0gIChjLW5hbWUgImd0a19t
b3pfZW1iZWRfc2V0X2Nocm9tZV9tYXNrIikKLSAgKHJldHVybi10eXBlICJub25lIikKLSAgKHBh
cmFtZXRlcnMKLSAgICAnKCJndWludDMyIiAiZmxhZ3MiKQotICApCi0pCi0KLShkZWZpbmUtbWV0
aG9kIGdldF9jaHJvbWVfbWFzawotICAob2Ytb2JqZWN0ICJHdGtNb3pFbWJlZCIpCi0gIChjLW5h
bWUgImd0a19tb3pfZW1iZWRfZ2V0X2Nocm9tZV9tYXNrIikKLSAgKHJldHVybi10eXBlICJndWlu
dDMyIikKLSkKZGlmZiAtLWdpdCBhL2V4dC9tb3plbWJlZC9tb3plbWJlZC5vdmVycmlkZXMgYi9l
eHQvbW96ZW1iZWQvbW96ZW1iZWQub3ZlcnJpZGVzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA4N2NlOTMyLi4wMDAwMDAwCi0tLSBhL2V4dC9tb3plbWJlZC9tb3plbWJlZC5vdmVycmlk
ZXMKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0vKiB2aW06IHNldCBmdD1jcHA6ICov
Ci0lJQotaGVhZGVycwotI2luY2x1ZGUgPGd0a21vemVtYmVkLmg+Ci0jaW5jbHVkZSAiZXh0L2d0
aysvcGhwX2d0aysuaCIKLSNpbmNsdWRlICJwaHBfZ3RrX2FwaS5oIgotJSUKLWNvbnN0YW50cwot
JSUKLWlnbm9yZS1nbG9iCi0gICpfZ2V0X3R5cGUKZGlmZiAtLWdpdCBhL2V4dC9tb3plbWJlZC9w
aHBfbW96ZW1iZWQuYyBiL2V4dC9tb3plbWJlZC9waHBfbW96ZW1iZWQuYwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMjc4ODY4MS4uMDAwMDAwMAotLS0gYS9leHQvbW96ZW1iZWQvcGhw
X21vemVtYmVkLmMKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCwwIEBACi0vKgotICogUEhQLUdU
SyAtIFRoZSBQSFAgbGFuZ3VhZ2UgYmluZGluZ3MgZm9yIEdUSysKLSAqCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMDEtMjAwOCBBbmRyZWkgWm1pZXZza2kgPGFuZHJlaUBwaHAubmV0PgotICoKLSAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKLSAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJh
bCBQdWJsaWMKLSAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb247IGVpdGhlcgotICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5
b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0gKiAKLSAqIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICogYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
LSAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4g
IFNlZSB0aGUgR05VCi0gKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLgotICogCi0gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBH
TlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCi0gKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiBGb3VuZGF0aW9uLCBJ
bmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAg
VVNBCi0gKi8KLSAKLS8qICRJZCQgKi8KLQotI2luY2x1ZGUgInBocF9tb3plbWJlZC5oIgotCi0j
aWYgSEFWRV9NT1pFTUJFRAotCi0jaWZkZWYgUEhQX0dUS19DT01QSUxFX0RMX01PWkVNQkVECi1Q
SFBfR1RLX0dFVF9FWFRFTlNJT04obW96ZW1iZWQpCi0jZW5kaWYKLQotUEhQX0dUS19YSU5JVF9G
VU5DVElPTihtb3plbWJlZCkKLXsKLSAgICBwaHBnX2d0a21vemVtYmVkX3JlZ2lzdGVyX2NsYXNz
ZXMoKTsKLQlwaHBnX2d0a21vemVtYmVkX3JlZ2lzdGVyX2NvbnN0YW50cygiR1RLX01PWkVNQkVE
XyIpOwotCQotCXJldHVybiBTVUNDRVNTOwotfQotCi1waHBfZ3RrX2V4dF9lbnRyeSBtb3plbWJl
ZF9leHRfZW50cnkgPSB7Ci0JIm1vemVtYmVkIiwKLQlQSFBfR1RLX1hJTklUKG1vemVtYmVkKSwK
LQlOVUxMLAotfTsKLQotI2VuZGlmCS8qIEhBVkVfTU9aRU1CRUQgKi8KZGlmZiAtLWdpdCBhL2V4
dC9tb3plbWJlZC9waHBfbW96ZW1iZWQuaCBiL2V4dC9tb3plbWJlZC9waHBfbW96ZW1iZWQuaApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzI4ODUwMS4uMDAwMDAwMAotLS0gYS9leHQv
bW96ZW1iZWQvcGhwX21vemVtYmVkLmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NCArMCwwIEBACi0v
KgotICogUEhQLUdUSyAtIFRoZSBQSFAgbGFuZ3VhZ2UgYmluZGluZ3MgZm9yIEdUSysKLSAqCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMDEtMjAwOCBBbmRyZWkgWm1pZXZza2kgPGFuZHJlaUBwaHAubmV0
PgotICoKLSAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKLSAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBM
ZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vu
c2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0gKiAKLSAqIFRoaXMg
bGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAotICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg
d2FycmFudHkgb2YKLSAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCi0gKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5z
ZSBmb3IgbW9yZSBkZXRhaWxzLgotICogCi0gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj
b3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCi0gKiBMaWNlbnNlIGFsb25nIHdp
dGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiBG
b3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAg
MDIxMTEtMTMwNyAgVVNBCi0gKi8KLSAKLS8qICRJZCQgKi8KLQotI2lmbmRlZiBQSFBfTU9aRU1C
RURfSAotI2RlZmluZSBQSFBfTU9aRU1CRURfSAotCi0jaW5jbHVkZSAicGhwX2d0ay5oIgotCi0j
aWYgSEFWRV9NT1pFTUJFRAotCi0jaW5jbHVkZSA8Z3RrbW96ZW1iZWQuaD4KLQotZXh0ZXJuIHBo
cF9ndGtfZXh0X2VudHJ5IG1vemVtYmVkX2V4dF9lbnRyeTsKLSNkZWZpbmUgcGhwX2d0a19leHRf
bW96ZW1iZWRfcHRyICZtb3plbWJlZF9leHRfZW50cnkKLQotdm9pZCBwaHBnX2d0a21vemVtYmVk
X3JlZ2lzdGVyX2NsYXNzZXModm9pZCk7Ci12b2lkIHBocGdfZ3RrbW96ZW1iZWRfcmVnaXN0ZXJf
Y29uc3RhbnRzKGNvbnN0IGNoYXIgKnN0cmlwX3ByZWZpeCk7Ci0KLSNlbHNlCi0KLSNkZWZpbmUg
cGhwX2d0a19leHRfbW96ZW1iZWRfcHRyIE5VTEwKLQotI2VuZGlmCS8qIEhBVkVfTU9aRU1CRUQg
Ki8KLQotI2VuZGlmCS8qIFBIUF9NT1pFTUJFRF9IICovCmRpZmYgLS1naXQgYS9leHQvbW96ZW1i
ZWQvcmVmLm1vemVtYmVkLmRlZnMgYi9leHQvbW96ZW1iZWQvcmVmLm1vemVtYmVkLmRlZnMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY2ZGY3YmIuLjAwMDAwMDAKLS0tIGEvZXh0L21v
emVtYmVkL3JlZi5tb3plbWJlZC5kZWZzCisrKyAvZGV2L251bGwKQEAgLTEsMjc2ICswLDAgQEAK
LTs7IC0qLSBzY2hlbWUgLSotCi07IG9iamVjdCBkZWZpbml0aW9ucyAuLi4KLShkZWZpbmUtb2Jq
ZWN0IE1vekVtYmVkCi0gIChpbi1tb2R1bGUgIkd0ayIpCi0gIChwYXJlbnQgIkd0a0JpbiIpCi0g
IChjLW5hbWUgIkd0a01vekVtYmVkIikKLSAgKGd0eXBlLWlkICJHVEtfVFlQRV9NT1pfRU1CRUQi
KQotKQotCi07IChkZWZpbmUtb2JqZWN0IE1vekVtYmVkU2luZ2xlCi07ICAgKGluLW1vZHVsZSAi
R3RrIikKLTsgICAocGFyZW50ICJHdGtPYmplY3QiKQotOyAgIChjLW5hbWUgIkd0a01vekVtYmVk
U2luZ2xlIikKLTsgICAoZ3R5cGUtaWQgIkdUS19UWVBFX01PWl9FTUJFRF9TSU5HTEUiKQotOyAp
Ci0KLTs7IEVudW1lcmF0aW9ucyBhbmQgZmxhZ3MgLi4uCi0KLShkZWZpbmUtZW51bSBNb3pFbWJl
ZFByb2dyZXNzRmxhZ3MKLSAgKGluLW1vZHVsZSAiR3RrIikKLSAgKGMtbmFtZSAiR3RrTW96RW1i
ZWRQcm9ncmVzc0ZsYWdzIikKLSAgKHZhbHVlcwotICAgICcoInN0YXJ0IiAiR1RLX01PWl9FTUJF
RF9GTEFHX1NUQVJUIikKLSAgICAnKCJyZWRpcmVjdGluZyIgIkdUS19NT1pfRU1CRURfRkxBR19S
RURJUkVDVElORyIpCi0gICAgJygidHJhbnNmZXJyaW5nIiAiR1RLX01PWl9FTUJFRF9GTEFHX1RS
QU5TRkVSUklORyIpCi0gICAgJygibmVnb3RpYXRpbmciICJHVEtfTU9aX0VNQkVEX0ZMQUdfTkVH
T1RJQVRJTkciKQotICAgICcoInN0b3AiICJHVEtfTU9aX0VNQkVEX0ZMQUdfU1RPUCIpCi0gICAg
JygiaXMtcmVxdWVzdCIgIkdUS19NT1pfRU1CRURfRkxBR19JU19SRVFVRVNUIikKLSAgICAnKCJp
cy1kb2N1bWVudCIgIkdUS19NT1pfRU1CRURfRkxBR19JU19ET0NVTUVOVCIpCi0gICAgJygiaXMt
bmV0d29yayIgIkdUS19NT1pfRU1CRURfRkxBR19JU19ORVRXT1JLIikKLSAgICAnKCJpcy13aW5k
b3ciICJHVEtfTU9aX0VNQkVEX0ZMQUdfSVNfV0lORE9XIikKLSAgKQotKQotCi0oZGVmaW5lLWVu
dW0gTW96RW1iZWRTdGF0dXNGbGFncwotICAoaW4tbW9kdWxlICJHdGsiKQotICAoYy1uYW1lICJH
dGtNb3pFbWJlZFN0YXR1c0ZsYWdzIikKLSAgKHZhbHVlcwotICAgICcoImRucyIgIkdUS19NT1pf
RU1CRURfU1RBVFVTX0ZBSUxFRF9ETlMiKQotICAgICcoImNvbm5lY3QiICJHVEtfTU9aX0VNQkVE
X1NUQVRVU19GQUlMRURfQ09OTkVDVCIpCi0gICAgJygidGltZW91dCIgIkdUS19NT1pfRU1CRURf
U1RBVFVTX0ZBSUxFRF9USU1FT1VUIikKLSAgICAnKCJ1c2VyY2FuY2VsZWQiICJHVEtfTU9aX0VN
QkVEX1NUQVRVU19GQUlMRURfVVNFUkNBTkNFTEVEIikKLSAgKQotKQotCi0oZGVmaW5lLWVudW0g
TW96RW1iZWRSZWxvYWRGbGFncwotICAoaW4tbW9kdWxlICJHdGsiKQotICAoYy1uYW1lICJHdGtN
b3pFbWJlZFJlbG9hZEZsYWdzIikKLSAgKHZhbHVlcwotICAgICcoIm5vcm1hbCIgIkdUS19NT1pf
RU1CRURfRkxBR19SRUxPQUROT1JNQUwiKQotICAgICcoImJ5cGFzc2NhY2hlIiAiR1RLX01PWl9F
TUJFRF9GTEFHX1JFTE9BREJZUEFTU0NBQ0hFIikKLSAgICAnKCJieXBhc3Nwcm94eSIgIkdUS19N
T1pfRU1CRURfRkxBR19SRUxPQURCWVBBU1NQUk9YWSIpCi0gICAgJygiYnlwYXNzcHJveHlhbmRj
YWNoZSIgIkdUS19NT1pfRU1CRURfRkxBR19SRUxPQURCWVBBU1NQUk9YWUFORENBQ0hFIikKLSAg
ICAnKCJjaGFyc2V0Y2hhbmdlIiAiR1RLX01PWl9FTUJFRF9GTEFHX1JFTE9BRENIQVJTRVRDSEFO
R0UiKQotICApCi0pCi0KLShkZWZpbmUtZW51bSBNb3pFbWJlZENocm9tZUZsYWdzCi0gIChpbi1t
b2R1bGUgIkd0ayIpCi0gIChjLW5hbWUgIkd0a01vekVtYmVkQ2hyb21lRmxhZ3MiKQotICAodmFs
dWVzCi0gICAgJygiZGVmYXVsdGNocm9tZSIgIkdUS19NT1pfRU1CRURfRkxBR19ERUZBVUxUQ0hS
T01FIikKLSAgICAnKCJ3aW5kb3dib3JkZXJzb24iICJHVEtfTU9aX0VNQkVEX0ZMQUdfV0lORE9X
Qk9SREVSU09OIikKLSAgICAnKCJ3aW5kb3djbG9zZW9uIiAiR1RLX01PWl9FTUJFRF9GTEFHX1dJ
TkRPV0NMT1NFT04iKQotICAgICcoIndpbmRvd3Jlc2l6ZW9uIiAiR1RLX01PWl9FTUJFRF9GTEFH
X1dJTkRPV1JFU0laRU9OIikKLSAgICAnKCJtZW51YmFyb24iICJHVEtfTU9aX0VNQkVEX0ZMQUdf
TUVOVUJBUk9OIikKLSAgICAnKCJ0b29sYmFyb24iICJHVEtfTU9aX0VNQkVEX0ZMQUdfVE9PTEJB
Uk9OIikKLSAgICAnKCJsb2NhdGlvbmJhcm9uIiAiR1RLX01PWl9FTUJFRF9GTEFHX0xPQ0FUSU9O
QkFST04iKQotICAgICcoInN0YXR1c2Jhcm9uIiAiR1RLX01PWl9FTUJFRF9GTEFHX1NUQVRVU0JB
Uk9OIikKLSAgICAnKCJwZXJzb25hbHRvb2xiYXJvbiIgIkdUS19NT1pfRU1CRURfRkxBR19QRVJT
T05BTFRPT0xCQVJPTiIpCi0gICAgJygic2Nyb2xsYmFyc29uIiAiR1RLX01PWl9FTUJFRF9GTEFH
X1NDUk9MTEJBUlNPTiIpCi0gICAgJygidGl0bGViYXJvbiIgIkdUS19NT1pfRU1CRURfRkxBR19U
SVRMRUJBUk9OIikKLSAgICAnKCJleHRyYWNocm9tZW9uIiAiR1RLX01PWl9FTUJFRF9GTEFHX0VY
VFJBQ0hST01FT04iKQotICAgICcoImFsbGNocm9tZSIgIkdUS19NT1pfRU1CRURfRkxBR19BTExD
SFJPTUUiKQotICAgICcoIndpbmRvd3JhaXNlZCIgIkdUS19NT1pfRU1CRURfRkxBR19XSU5ET1dS
QUlTRUQiKQotICAgICcoIndpbmRvd2xvd2VyZWQiICJHVEtfTU9aX0VNQkVEX0ZMQUdfV0lORE9X
TE9XRVJFRCIpCi0gICAgJygiY2VudGVyc2NyZWVuIiAiR1RLX01PWl9FTUJFRF9GTEFHX0NFTlRF
UlNDUkVFTiIpCi0gICAgJygiZGVwZW5kZW50IiAiR1RLX01PWl9FTUJFRF9GTEFHX0RFUEVOREVO
VCIpCi0gICAgJygibW9kYWwiICJHVEtfTU9aX0VNQkVEX0ZMQUdfTU9EQUwiKQotICAgICcoIm9w
ZW5hc2RpYWxvZyIgIkdUS19NT1pfRU1CRURfRkxBR19PUEVOQVNESUFMT0ciKQotICAgICcoIm9w
ZW5hc2Nocm9tZSIgIkdUS19NT1pfRU1CRURfRkxBR19PUEVOQVNDSFJPTUUiKQotICApCi0pCi0K
LQotOzsgRnJvbSAvdXNyL2luY2x1ZGUvbW96aWxsYS0xLjJiL2d0a2VtYmVkbW96L2d0a21vemVt
YmVkLmgKLQotKGRlZmluZS1mdW5jdGlvbiBndGtfbW96X2VtYmVkX2dldF90eXBlCi0gIChjLW5h
bWUgImd0a19tb3pfZW1iZWRfZ2V0X3R5cGUiKQotICAocmV0dXJuLXR5cGUgIkd0a1R5cGUiKQot
KQotCi0oZGVmaW5lLWZ1bmN0aW9uIGd0a19tb3pfZW1iZWRfbmV3Ci0gIChjLW5hbWUgImd0a19t
b3pfZW1iZWRfbmV3IikKLSAgKGlzLWNvbnN0cnVjdG9yLW9mICJHdGtNb3pFbWJlZCIpCi0gIChy
ZXR1cm4tdHlwZSAiR3RrV2lkZ2V0KiIpCi0pCi0KLShkZWZpbmUtZnVuY3Rpb24gcHVzaF9zdGFy
dHVwCi0gIChjLW5hbWUgImd0a19tb3pfZW1iZWRfcHVzaF9zdGFydHVwIikKLSAgKHJldHVybi10
eXBlICJub25lIikKLSkKLQotKGRlZmluZS1mdW5jdGlvbiBwb3Bfc3RhcnR1cAotICAoYy1uYW1l
ICJndGtfbW96X2VtYmVkX3BvcF9zdGFydHVwIikKLSAgKHJldHVybi10eXBlICJub25lIikKLSkK
LQotKGRlZmluZS1mdW5jdGlvbiBndGtfbW96X2VtYmVkX3NldF9jb21wX3BhdGgKLSAgKGMtbmFt
ZSAiZ3RrX21vel9lbWJlZF9zZXRfY29tcF9wYXRoIikKLSAgKHJldHVybi10eXBlICJub25lIikK
LSAgKHBhcmFtZXRlcnMKLSAgICAnKCJjaGFyKiIgImFQYXRoIikKLSAgKQotKQotCi0oZGVmaW5l
LWZ1bmN0aW9uIGd0a19tb3pfZW1iZWRfc2V0X3Byb2ZpbGVfcGF0aAotICAoYy1uYW1lICJndGtf
bW96X2VtYmVkX3NldF9wcm9maWxlX3BhdGgiKQotICAocmV0dXJuLXR5cGUgIm5vbmUiKQotICAo
cGFyYW1ldGVycwotICAgICcoImNoYXIqIiAiYURpciIpCi0gICAgJygiY2hhcioiICJhTmFtZSIp
Ci0gICkKLSkKLQotKGRlZmluZS1tZXRob2QgbG9hZF91cmwKLSAgKG9mLW9iamVjdCAiR3RrTW96
RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX2xvYWRfdXJsIikKLSAgKHJldHVybi10
eXBlICJub25lIikKLSAgKHBhcmFtZXRlcnMKLSAgICAnKCJjb25zdC1jaGFyKiIgInVybCIpCi0g
ICkKLSkKLQotKGRlZmluZS1tZXRob2Qgc3RvcF9sb2FkCi0gIChvZi1vYmplY3QgIkd0a01vekVt
YmVkIikKLSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9zdG9wX2xvYWQiKQotICAocmV0dXJuLXR5
cGUgIm5vbmUiKQotKQotCi0oZGVmaW5lLW1ldGhvZCBjYW5fZ29fYmFjawotICAob2Ytb2JqZWN0
ICJHdGtNb3pFbWJlZCIpCi0gIChjLW5hbWUgImd0a19tb3pfZW1iZWRfY2FuX2dvX2JhY2siKQot
ICAocmV0dXJuLXR5cGUgImdib29sZWFuIikKLSkKLQotKGRlZmluZS1tZXRob2QgY2FuX2dvX2Zv
cndhcmQKLSAgKG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2Vt
YmVkX2Nhbl9nb19mb3J3YXJkIikKLSAgKHJldHVybi10eXBlICJnYm9vbGVhbiIpCi0pCi0KLShk
ZWZpbmUtbWV0aG9kIGdvX2JhY2sKLSAgKG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1u
YW1lICJndGtfbW96X2VtYmVkX2dvX2JhY2siKQotICAocmV0dXJuLXR5cGUgIm5vbmUiKQotKQot
Ci0oZGVmaW5lLW1ldGhvZCBnb19mb3J3YXJkCi0gIChvZi1vYmplY3QgIkd0a01vekVtYmVkIikK
LSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9nb19mb3J3YXJkIikKLSAgKHJldHVybi10eXBlICJu
b25lIikKLSkKLQotKGRlZmluZS1tZXRob2QgcmVuZGVyX2RhdGEKLSAgKG9mLW9iamVjdCAiR3Rr
TW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX3JlbmRlcl9kYXRhIikKLSAgKHJl
dHVybi10eXBlICJub25lIikKLSAgKHBhcmFtZXRlcnMKLSAgICAnKCJjb25zdC1jaGFyKiIgImRh
dGEiKQotICAgICcoImd1aW50MzIiICJsZW4iKQotICAgICcoImNvbnN0LWNoYXIqIiAiYmFzZV91
cmkiKQotICAgICcoImNvbnN0LWNoYXIqIiAibWltZV90eXBlIikKLSAgKQotKQotCi0oZGVmaW5l
LW1ldGhvZCBvcGVuX3N0cmVhbQotICAob2Ytb2JqZWN0ICJHdGtNb3pFbWJlZCIpCi0gIChjLW5h
bWUgImd0a19tb3pfZW1iZWRfb3Blbl9zdHJlYW0iKQotICAocmV0dXJuLXR5cGUgIm5vbmUiKQot
ICAocGFyYW1ldGVycwotICAgICcoImNvbnN0LWNoYXIqIiAiYmFzZV91cmkiKQotICAgICcoImNv
bnN0LWNoYXIqIiAibWltZV90eXBlIikKLSAgKQotKQotCi0oZGVmaW5lLW1ldGhvZCBhcHBlbmRf
ZGF0YQotICAob2Ytb2JqZWN0ICJHdGtNb3pFbWJlZCIpCi0gIChjLW5hbWUgImd0a19tb3pfZW1i
ZWRfYXBwZW5kX2RhdGEiKQotICAocmV0dXJuLXR5cGUgIm5vbmUiKQotICAocGFyYW1ldGVycwot
ICAgICcoImNvbnN0LWNoYXIqIiAiZGF0YSIpCi0gICAgJygiZ3VpbnQzMiIgImxlbiIpCi0gICkK
LSkKLQotKGRlZmluZS1tZXRob2QgY2xvc2Vfc3RyZWFtCi0gIChvZi1vYmplY3QgIkd0a01vekVt
YmVkIikKLSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9jbG9zZV9zdHJlYW0iKQotICAocmV0dXJu
LXR5cGUgIm5vbmUiKQotKQotCi0oZGVmaW5lLW1ldGhvZCBnZXRfbGlua19tZXNzYWdlCi0gIChv
Zi1vYmplY3QgIkd0a01vekVtYmVkIikKLSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9nZXRfbGlu
a19tZXNzYWdlIikKLSAgKHJldHVybi10eXBlICJjaGFyKiIpCi0pCi0KLShkZWZpbmUtbWV0aG9k
IGdldF9qc19zdGF0dXMKLSAgKG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJn
dGtfbW96X2VtYmVkX2dldF9qc19zdGF0dXMiKQotICAocmV0dXJuLXR5cGUgImNoYXIqIikKLSkK
LQotKGRlZmluZS1tZXRob2QgZ2V0X3RpdGxlCi0gIChvZi1vYmplY3QgIkd0a01vekVtYmVkIikK
LSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9nZXRfdGl0bGUiKQotICAocmV0dXJuLXR5cGUgImNo
YXIqIikKLSkKLQotKGRlZmluZS1tZXRob2QgZ2V0X2xvY2F0aW9uCi0gIChvZi1vYmplY3QgIkd0
a01vekVtYmVkIikKLSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9nZXRfbG9jYXRpb24iKQotICAo
cmV0dXJuLXR5cGUgImNoYXIqIikKLSkKLQotKGRlZmluZS1tZXRob2QgcmVsb2FkCi0gIChvZi1v
YmplY3QgIkd0a01vekVtYmVkIikKLSAgKGMtbmFtZSAiZ3RrX21vel9lbWJlZF9yZWxvYWQiKQot
ICAocmV0dXJuLXR5cGUgIm5vbmUiKQotICAocGFyYW1ldGVycwotICAgICcoImdpbnQzMiIgImZs
YWdzIikKLSAgKQotKQotCi0oZGVmaW5lLW1ldGhvZCBzZXRfY2hyb21lX21hc2sKLSAgKG9mLW9i
amVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX3NldF9jaHJvbWVf
bWFzayIpCi0gIChyZXR1cm4tdHlwZSAibm9uZSIpCi0gIChwYXJhbWV0ZXJzCi0gICAgJygiZ3Vp
bnQzMiIgImZsYWdzIikKLSAgKQotKQotCi0oZGVmaW5lLW1ldGhvZCBnZXRfY2hyb21lX21hc2sK
LSAgKG9mLW9iamVjdCAiR3RrTW96RW1iZWQiKQotICAoYy1uYW1lICJndGtfbW96X2VtYmVkX2dl
dF9jaHJvbWVfbWFzayIpCi0gIChyZXR1cm4tdHlwZSAiZ3VpbnQzMiIpCi0pCi0KLTsgKGRlZmlu
ZS1mdW5jdGlvbiBndGtfbW96X2VtYmVkX3Byb2dyZXNzX2ZsYWdzX2dldF90eXBlCi07ICAgKGMt
bmFtZSAiZ3RrX21vel9lbWJlZF9wcm9ncmVzc19mbGFnc19nZXRfdHlwZSIpCi07ICAgKHJldHVy
bi10eXBlICJHdGtUeXBlIikKLTsgKQotCi07IChkZWZpbmUtZnVuY3Rpb24gZ3RrX21vel9lbWJl
ZF9zdGF0dXNfZW51bXNfZ2V0X3R5cGUKLTsgICAoYy1uYW1lICJndGtfbW96X2VtYmVkX3N0YXR1
c19lbnVtc19nZXRfdHlwZSIpCi07ICAgKHJldHVybi10eXBlICJHdGtUeXBlIikKLTsgKQotCi07
IChkZWZpbmUtZnVuY3Rpb24gZ3RrX21vel9lbWJlZF9yZWxvYWRfZmxhZ3NfZ2V0X3R5cGUKLTsg
ICAoYy1uYW1lICJndGtfbW96X2VtYmVkX3JlbG9hZF9mbGFnc19nZXRfdHlwZSIpCi07ICAgKHJl
dHVybi10eXBlICJHdGtUeXBlIikKLTsgKQotCi07IChkZWZpbmUtZnVuY3Rpb24gZ3RrX21vel9l
bWJlZF9jaHJvbWVfZmxhZ3NfZ2V0X3R5cGUKLTsgICAoYy1uYW1lICJndGtfbW96X2VtYmVkX2No
cm9tZV9mbGFnc19nZXRfdHlwZSIpCi07ICAgKHJldHVybi10eXBlICJHdGtUeXBlIikKLTsgKQot
Ci0oZGVmaW5lLWZ1bmN0aW9uIGd0a19tb3pfZW1iZWRfc2luZ2xlX2dldAotICAoYy1uYW1lICJn
dGtfbW96X2VtYmVkX3NpbmdsZV9nZXQiKQotICAocmV0dXJuLXR5cGUgIkd0a01vekVtYmVkU2lu
Z2xlKiIpCi0pCi0KLQpkaWZmIC0tZ2l0IGEvZXh0L21vemVtYmVkL3JlZi5tb3plbWJlZC5vdmVy
cmlkZSBiL2V4dC9tb3plbWJlZC9yZWYubW96ZW1iZWQub3ZlcnJpZGUKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDRmZDRhYTkuLjAwMDAwMDAKLS0tIGEvZXh0L21vemVtYmVkL3JlZi5t
b3plbWJlZC5vdmVycmlkZQorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS8qIC0qLSBN
b2RlOiBDOyBjLWJhc2ljLW9mZnNldDogNCAtKi0gKi8KLSUlCi1oZWFkZXJzCi0jaW5jbHVkZSA8
UHl0aG9uLmg+Ci0KLSNpbmNsdWRlICJweWdvYmplY3QuaCIKLSNpbmNsdWRlIDxndGttb3plbWJl
ZC5oPgotCi0lJQotbW9kdWxlbmFtZSBndGttb3plbWJlZAotJSUKLWltcG9ydCBnb2JqZWN0LkdP
YmplY3QgYXMgUHlHT2JqZWN0X1R5cGUKLWltcG9ydCBndGsuT2JqZWN0IGFzIFB5R3RrT2JqZWN0
X1R5cGUKLWltcG9ydCBndGsuQmluIGFzIFB5R3RrQmluX1R5cGUKLSUlCi1pZ25vcmUtZ2xvYgot
ICAqX2dldF90eXBlCi0gIF8qCmRpZmYgLS1naXQgYS93aW4zMi9jdnNjbGVhbi5qcyBiL3dpbjMy
L2N2c2NsZWFuLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0ZjgyNTUzLi4wMDAw
MDAwCi0tLSBhL3dpbjMyL2N2c2NsZWFuLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMTIwICswLDAg
QEAKLS8qCi0gICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotICB8IFBIUCBWZXJzaW9uIDUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLSAgKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rCi0gIHwgQ29weXJpZ2h0IChjKSAxOTk3LTIwMDcgVGhlIFBIUCBHcm91cCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfAotICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLSAgfCBUaGlzIHNv
dXJjZSBmaWxlIGlzIHN1YmplY3QgdG8gdmVyc2lvbiAzLjAxIG9mIHRoZSBQSFAgbGljZW5zZSwg
ICAgICB8Ci0gIHwgdGhhdCBpcyBidW5kbGVkIHdpdGggdGhpcyBwYWNrYWdlIGluIHRoZSBmaWxl
IExJQ0VOU0UsIGFuZCBpcyAgICAgICAgfAotICB8IGF2YWlsYWJsZSB0aHJvdWdoIHRoZSB3b3Js
ZC13aWRlLXdlYiBhdCB0aGUgZm9sbG93aW5nIHVybDogICAgICAgICAgIHwKLSAgfCBodHRwOi8v
d3d3LnBocC5uZXQvbGljZW5zZS8zXzAxLnR4dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8Ci0gIHwgSWYgeW91IGRpZCBub3QgcmVjZWl2ZSBhIGNvcHkgb2YgdGhlIFBIUCBsaWNl
bnNlIGFuZCBhcmUgdW5hYmxlIHRvICAgfAotICB8IG9idGFpbiBpdCB0aHJvdWdoIHRoZSB3b3Js
ZC13aWRlLXdlYiwgcGxlYXNlIHNlbmQgYSBub3RlIHRvICAgICAgICAgIHwKLSAgfCBsaWNlbnNl
QHBocC5uZXQgc28gd2UgY2FuIG1haWwgeW91IGEgY29weSBpbW1lZGlhdGVseS4gICAgICAgICAg
ICAgICB8Ci0gICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotICB8IEF1dGhvcjogV2V6IEZ1cmxvbmcgPHdlekB0
aGVicmFpbnJvb20uY29tPiAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLSAgKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rCi0qLwotCi0vKiAkSWQ6IGN2c2NsZWFuLmpzLHYgMS4xIDIwMDctMDUtMjkgMTI6Mjg6
MTQgYXVyb3JhZW9zcm9zZSBFeHAgJCAqLwotLy8gQ2xlYW5zIHVwIGZpbGVzIHRoYXQgZG8gbm90
IGJlbG9uZyBpbiBDVlMKLQotdmFyIEZTTyA9IFdTY3JpcHQuQ3JlYXRlT2JqZWN0KCJTY3JpcHRp
bmcuRmlsZVN5c3RlbU9iamVjdCIpOwotCi1mdW5jdGlvbiBmaW5kX2N2c2lnbm9yZShkaXJuYW1l
KQotewotCWlmICghRlNPLkZvbGRlckV4aXN0cyhkaXJuYW1lKSkKLQkJcmV0dXJuOwotCi0JdmFy
IGYgPSBGU08uR2V0Rm9sZGVyKGRpcm5hbWUpOwotCXZhciBmYyA9IG5ldyBFbnVtZXJhdG9yKGYu
U3ViRm9sZGVycyk7Ci0JCi0JZm9yICg7ICFmYy5hdEVuZCgpOyBmYy5tb3ZlTmV4dCgpKSB7Ci0J
CWZpbmRfY3ZzaWdub3JlKGZjLml0ZW0oKSk7CQotCX0KLQotCWlmIChGU08uRmlsZUV4aXN0cyhk
aXJuYW1lICsgIlxcLmN2c2lnbm9yZSIpKSB7Ci0JCWtpbGxfZnJvbV9jdnNpZ25vcmUoZGlybmFt
ZSArICJcXC5jdnNpZ25vcmUiKTsKLQl9Ci19Ci0KLS8qIHJlY3Vyc2l2ZSByZW1vdmUgdXNpbmcg
Y3ZzaWdub3JlIHN0eWxlIHdpbGRjYXJkIG1hdGNoaW5nOwotICogbm90ZSB0aGF0IEZTTy5EZWxl
dGVGb2xkZXIgYW5kIEZTTy5EZWxldGVGaWxlIG1ldGhvZHMgYm90aAotICogYWNjZXB0IHdpbGRj
YXJkcywgYnV0IHRoYXQgdGhleSBhcmUgZGFuZ2Vyb3VzIHRvIHVzZSBlZzoKLSAqICIqLnBocCIg
d2lsbCBtYXRjaCAiKi5waHB0IiAqLwotZnVuY3Rpb24gcm1fcihmaWxlbmFtZSkKLXsKLQlpZiAo
RlNPLkZvbGRlckV4aXN0cyhmaWxlbmFtZSkpIHsKLQkJdmFyIGZjID0gbmV3IEVudW1lcmF0b3Io
RlNPLkdldEZvbGRlcihmaWxlbmFtZSkuU3ViRm9sZGVycyk7Ci0KLQkJZm9yICg7ICFmYy5hdEVu
ZCgpOyBmYy5tb3ZlTmV4dCgpKSB7Ci0JCQlybV9yKGZjLml0ZW0oKSk7Ci0JCX0KLQotCQlmYyA9
IG5ldyBFbnVtZXJhdG9yKEZTTy5HZXRGb2xkZXIoZmlsZW5hbWUpLkZpbGVzKTsKLQotCQlmb3Ig
KDsgIWZjLmF0RW5kKCk7IGZjLm1vdmVOZXh0KCkpIHsKLQkJCUZTTy5EZWxldGVGaWxlKGZjLml0
ZW0oKSwgdHJ1ZSk7Ci0JCX0KLQotCQlGU08uRGVsZXRlRm9sZGVyKGZpbGVuYW1lLCB0cnVlKTsK
LQl9IGVsc2UgaWYgKEZTTy5GaWxlRXhpc3RzKGZpbGVuYW1lKSkgewotCQlGU08uRGVsZXRlRmls
ZShmaWxlbmFtZSwgdHJ1ZSk7Ci0JfSBlbHNlIHsKLQkJLyogd2UgbmVlZCB0byBoYW5kbGUgd2ls
ZGNhcmRzIGhlcmUgKi8KLQkJdmFyIGZvbGRlcm5hbWUgPSBGU08uR2V0UGFyZW50Rm9sZGVyTmFt
ZShmaWxlbmFtZSk7Ci0KLQkJaWYgKGZvbGRlcm5hbWUgPT0gIiIpCi0JCQlmb2xkZXJuYW1lID0g
Ii4iOwotCQkKLQkJdmFyIGZpbGVuYW1lID0gRlNPLkdldEZpbGVOYW1lKGZpbGVuYW1lKTsKLQot
CQl2YXIgcmV0ZXh0ID0gZmlsZW5hbWUucmVwbGFjZSgvXC4vZywgJ1xcLicpOwotCQlyZXRleHQg
PSAnXicgKyByZXRleHQucmVwbGFjZSgvXCovZywgJy4qJykgKyAiJCI7Ci0JCXZhciByZSA9IG5l
dyBSZWdFeHAocmV0ZXh0KTsKLQotCQl2YXIgZm9sZGVyID0gRlNPLkdldEZvbGRlcihmb2xkZXJu
YW1lKTsKLQkJdmFyIGZjID0gbmV3IEVudW1lcmF0b3IoZm9sZGVyLlN1YkZvbGRlcnMpOwotCQlm
b3IgKDsgIWZjLmF0RW5kKCk7IGZjLm1vdmVOZXh0KCkpIHsKLQotCQkJdmFyIGl0ZW0gPSBGU08u
R2V0RmlsZU5hbWUoZmMuaXRlbSgpKTsKLQotCQkJaWYgKGl0ZW0ubWF0Y2gocmUpKSB7Ci0JCQkJ
cm1fcihmYy5pdGVtKCkpOwotCQkJfQotCQl9Ci0JCXZhciBmYyA9IG5ldyBFbnVtZXJhdG9yKGZv
bGRlci5GaWxlcyk7Ci0JCWZvciAoOyAhZmMuYXRFbmQoKTsgZmMubW92ZU5leHQoKSkgewotCQkJ
aXRlbSA9IEZTTy5HZXRGaWxlTmFtZShmYy5pdGVtKCkpOwotCi0JCQlpZiAoaXRlbS5tYXRjaChy
ZSkpIHsKLQkJCQlGU08uRGVsZXRlRmlsZShmYy5pdGVtKCksIHRydWUpOwotCQkJfQotCQl9Ci0J
fQotfQotCi1mdW5jdGlvbiBraWxsX2Zyb21fY3ZzaWdub3JlKGlnZmlsZSkKLXsKLQl2YXIgZGly
ID0gRlNPLkdldFBhcmVudEZvbGRlck5hbWUoaWdmaWxlKSArICJcXCI7Ci0JdmFyIHQgPSBGU08u
T3BlblRleHRGaWxlKGlnZmlsZSwgMSk7Ci0JdmFyIGw7Ci0JCi0JaWYgKGRpciA9PSAiLlxcIikg
ewotCQlkaXIgPSAiIjsKLQl9Ci0JCQotCXdoaWxlICghdC5hdEVuZE9mU3RyZWFtKSB7Ci0JCWwg
PSB0LlJlYWRMaW5lKCk7Ci0JCS8vIGRvbid0IGtpbGwgdGhlaXIgY29uZmlnLm5pY2UgZmlsZShz
KQotCQlpZiAobC5tYXRjaCgiY29uZmlnXC5uaWNlLioiKSB8fAotCQkJbC5tYXRjaCgiIikgfHwg
Ci0JCQlsLm1hdGNoKCIqIikpCi0JCQljb250aW51ZTsKLQkJcm1fcihkaXIgKyBsKTsKLQl9Ci0K
LX0KLQotZmluZF9jdnNpZ25vcmUoIi4iKTsKLQ==

--5a45bd338eacf5d27b7d294f74d1c319c79016b5--