[Mailman-Developers] cgi extensions [add-on]

Nagy Balazs julian7@kva.hu
Fri, 11 Sep 1998 01:22:48 +0200 (CEST)


  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---456965764-1528156929-905469768=:8757
Content-Type: TEXT/PLAIN; charset=US-ASCII

This patch implements CGI extensions in the program.  Please apply it.
-- 
hacker: /n./ One who enjoys the intellectual challenge of creatively
             overcoming or circumventing limitations.
PGP 0x1DE3631D / A8 B4 92 EE 1F 55 27 C8  86 64 9C 42 41 A4 BD B8

---456965764-1528156929-905469768=:8757
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="mailman-cgiext.patch"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.LNX.4.02.9809110122480.8757@krondor.kva.hu>
Content-Description: mailman-cgiext.patch
Content-Disposition: attachment; filename="mailman-cgiext.patch"

ZGlmZiAtYnJ1TiBtYWlsbWFuLm9yaWcvTWFpbG1hbi9Cb3VuY2VyLnB5IG1h
aWxtYW4vTWFpbG1hbi9Cb3VuY2VyLnB5DQotLS0gbWFpbG1hbi5vcmlnL01h
aWxtYW4vQm91bmNlci5weQlTYXQgQXVnICA4IDE0OjE1OjQwIDE5OTgNCisr
KyBtYWlsbWFuL01haWxtYW4vQm91bmNlci5weQlNb24gQXVnIDMxIDEzOjUw
OjA2IDE5OTgNCkBAIC0xNzgsNyArMTc4LDcgQEANCiAgICAgICAgICAgICBp
ZiBkaWQgPT0gJ2Rpc2FibGVkJyBhbmQgc3VjY2VlZGVkID09IDE6DQogICAg
ICAgICAgICAgICAgIHJlZW5hYmxlID0gVXRpbHMubWFrZXRleHQoDQogICAg
ICAgICAgICAgICAgICAgICAncmVlbmFibGUudHh0JywNCi0gICAgICAgICAg
ICAgICAgICAgIHsnbGlzdGluZm9fdXJsJzogc2VsZi5HZXRBYnNvbHV0ZVNj
cmlwdFVSTCgnbGlzdGluZm8nKSwNCisgICAgICAgICAgICAgICAgICAgIHsn
bGlzdGluZm9fdXJsJzogc2VsZi5HZXRBYnNvbHV0ZVNjcmlwdFVSTChtbV9j
ZmcuTElTVElORk9fQ0dJKSwNCiAgICAgICAgICAgICAgICAgICAgICB9KQ0K
ICAgICAgICAgICAgIGVsc2U6DQogICAgICAgICAgICAgICAgIHJlZW5hYmxl
ID0gJycNCmRpZmYgLWJydU4gbWFpbG1hbi5vcmlnL01haWxtYW4vQ2dpL2Fk
bWluLnB5IG1haWxtYW4vTWFpbG1hbi9DZ2kvYWRtaW4ucHkNCi0tLSBtYWls
bWFuLm9yaWcvTWFpbG1hbi9DZ2kvYWRtaW4ucHkJU2F0IEF1ZyAgOCAxNDox
NzoyNiAxOTk4DQorKysgbWFpbG1hbi9NYWlsbWFuL0NnaS9hZG1pbi5weQlN
b24gQXVnIDMxIDEzOjUwOjA2IDE5OTgNCkBAIC0xMzAsNyArMTMwLDcgQEAN
CiAgICAgICAgICAgICAgICAgJ2FkbWxvZ2luLnR4dCcsDQogICAgICAgICAg
ICAgICAgIHsibGlzdG5hbWUiOiBsaXN0X25hbWUsDQogICAgICAgICAgICAg
ICAgICAicGF0aCIgICAgOiBvcy5lbnZpcm9uLmdldCgiUkVRVUVTVF9VUkki
LA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIi9tYWlsbWFuL2FkbWluLyIgKyBsaXN0X25hbWUpLA0KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIi9tYWlsbWFuLyIgKyBtbV9jZmcuQURN
SU5fQ0dJICsgIi8iICsgbGlzdF9uYW1lICksDQogICAgICAgICAgICAgICAg
ICAibWVzc2FnZSIgOiBtZXNzYWdlLA0KICAgICAgICAgICAgICAgICAgfSkN
CiAgICAgICAgICAgICBwcmludCB0ZXh0DQpAQCAtMjI0LDcgKzIyNCw3IEBA
DQogICAgICAgICAgICAgICAgICAgICAgICsNCiAgICAgICAgICAgICAgICAg
ICAgICAgIiBHZW5lcmFsIGxpc3QgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5k
IGF0ICIsDQogICAgICAgICAgICAgICAgICAgICAgIExpbmsob3MucGF0aC5q
b2luKCcuLi8nKiBVdGlscy5HZXROZXN0aW5nTGV2ZWwoKSwgDQotICAgICAg
ICAgICAgICAgICAgICAgICAgICAibGlzdGluZm8vIiksICJ0aGUgbWFpbGlu
ZyBsaXN0IG92ZXJ2aWV3IHBhZ2UiKSwNCisgICAgICAgICAgICAgICAgICAg
ICAgICAgIG1tX2NmZy5MSVNUSU5GT19DR0kgKyAiLyIpLCAidGhlIG1haWxp
bmcgbGlzdCBvdmVydmlldyBwYWdlIiksDQogICAgICAgICAgICAgICAgICAg
ICAgICIuIg0KICAgICAgICAgICAgICAgICAgICAgICAiPHA+KFNlbmQgcXVl
c3Rpb25zIGFuZCBjb21tZW50cyB0byAiLA0KICAgICAgICAgICAgICAgICAg
ICAgIExpbmsoIm1haWx0bzolcyIgJSBtbV9jZmcuTUFJTE1BTl9PV05FUiwN
CkBAIC0yMzksNyArMjM5LDcgQEANCiAgICAgaWYgYWR2ZXJ0aXNlZDoNCiAg
ICAgICAgIHRhYmxlLkFkZFJvdyhbSXRhbGljKCJMaXN0IiksIEl0YWxpYygi
RGVzY3JpcHRpb24iKV0pDQogICAgICAgICBmb3IgbCBpbiBhZHZlcnRpc2Vk
Og0KLSAgICAgICAgICAgIHRhYmxlLkFkZFJvdyhbTGluayhsLkdldFJlbGF0
aXZlU2NyaXB0VVJMKCdhZG1pbicpLCANCisgICAgICAgICAgICB0YWJsZS5B
ZGRSb3coW0xpbmsobC5HZXRSZWxhdGl2ZVNjcmlwdFVSTChtbV9jZmcuQURN
SU5fQ0dJKSwgDQogCSAgICAgICAgICAgICAgICAgIEJvbGQobC5yZWFsX25h
bWUpKSxsLmRlc2NyaXB0aW9uXSkNCiANCiAgICAgZG9jLkFkZEl0ZW0odGFi
bGUpDQpAQCAtMjYxLDEzICsyNjEsMTMgQEANCiAgICAgbGlua3NfdGFibGUu
QWRkUm93KFtDZW50ZXIoQm9sZCgiQ29uZmlndXJhdGlvbiBDYXRlZ29yaWVz
IikpLA0KICAgICAgICAgICAgICAgICAgICAgICAgIENlbnRlcihCb2xkKCJP
dGhlciBBZG1pbmlzdHJhdGl2ZSBBY3Rpdml0aWVzIikpXSkNCiAgICAgb3Ro
ZXJfbGlua3MgPSBVbm9yZGVyZWRMaXN0KCkNCi0gICAgbGluayA9IExpbmso
bHN0LkdldFJlbGF0aXZlU2NyaXB0VVJMKCdhZG1pbmRiJyksIA0KKyAgICBs
aW5rID0gTGluayhsc3QuR2V0UmVsYXRpdmVTY3JpcHRVUkwobW1fY2ZnLkFE
TUlOREJfQ0dJKSwgDQogICAgICAgICAgICAgICAgICdUZW5kIHRvIHBlbmRp
bmcgYWRtaW5pc3RyYXRpdmUgcmVxdWVzdHMuJykNCiAgICAgb3RoZXJfbGlu
a3MuQWRkSXRlbShsaW5rKQ0KLSAgICBsaW5rID0gTGluayhsc3QuR2V0UmVs
YXRpdmVTY3JpcHRVUkwoJ2xpc3RpbmZvJyksDQorICAgIGxpbmsgPSBMaW5r
KGxzdC5HZXRSZWxhdGl2ZVNjcmlwdFVSTChtbV9jZmcuTElTVElORk9fQ0dJ
KSwNCiAgICAgICAgICAgICAgICAgJ0dvIHRvIHRoZSBnZW5lcmFsIGxpc3Qg
aW5mb3JtYXRpb24gcGFnZS4nKQ0KICAgICBvdGhlcl9saW5rcy5BZGRJdGVt
KGxpbmspDQotICAgIGxpbmsgPSBMaW5rKGxzdC5HZXRSZWxhdGl2ZVNjcmlw
dFVSTCgnZWRpdGh0bWwnKSwNCisgICAgbGluayA9IExpbmsobHN0LkdldFJl
bGF0aXZlU2NyaXB0VVJMKG1tX2NmZy5FRElUSFRNTF9DR0kpLA0KICAgICAg
ICAgICAgICAgICAnRWRpdCB0aGUgSFRNTCBmb3IgdGhlIHB1YmxpYyBsaXN0
IHBhZ2VzLicpDQogICAgIG90aGVyX2xpbmtzLkFkZEl0ZW0obGluaykNCiAN
CkBAIC0yNzcsNyArMjc3LDcgQEANCiAgICAgICAgICAgICB0aGVzZV9saW5r
cy5BZGRJdGVtKCI8Yj4gPSZndDsgIiArIHYgKyAiICZsdDs9IDwvYj4iKQ0K
ICAgICAgICAgZWxzZToNCiAgICAgICAgICAgICB0aGVzZV9saW5rcy5BZGRJ
dGVtKExpbmsoIiVzLyVzIiAlIA0KLQkgICAgICAgICAgICAgICAgIChsc3Qu
R2V0UmVsYXRpdmVTY3JpcHRVUkwoJ2FkbWluJyksayksdikpDQorCSAgICAg
ICAgICAgICAgICAgKGxzdC5HZXRSZWxhdGl2ZVNjcmlwdFVSTChtbV9jZmcu
QURNSU5fQ0dJKSxrKSx2KSkNCiANCiAgICAgbGlua3NfdGFibGUuQWRkUm93
KFt0aGVzZV9saW5rcywgb3RoZXJfbGlua3NdKQ0KICAgICBsaW5rc190YWJs
ZS5BZGRSb3dJbmZvKG1heChsaW5rc190YWJsZS5HZXRDdXJyZW50Um93SW5k
ZXgoKSwgMCksDQpAQCAtMjg2LDEwICsyODYsMTAgQEANCiAgICAgZG9jLkFk
ZEl0ZW0obGlua3NfdGFibGUpDQogICAgIGRvYy5BZGRJdGVtKCc8aHI+JykN
CiAgICAgaWYgY2F0ZWdvcnlfc3VmZml4Og0KLSAgICAgICAgZm9ybSA9IEZv
cm0oIiVzLyVzIiAlIChsc3QuR2V0UmVsYXRpdmVTY3JpcHRVUkwoJ2FkbWlu
JyksDQorICAgICAgICBmb3JtID0gRm9ybSgiJXMvJXMiICUgKGxzdC5HZXRS
ZWxhdGl2ZVNjcmlwdFVSTChtbV9jZmcuQURNSU5fQ0dJKSwNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY2F0ZWdvcnlfc3VmZml4KSkN
CiAgICAgZWxzZToNCi0gICAgICAgIGZvcm0gPSBGb3JtKGxzdC5HZXRSZWxh
dGl2ZVNjcmlwdFVSTCgnYWRtaW4nKSkNCisgICAgICAgIGZvcm0gPSBGb3Jt
KGxzdC5HZXRSZWxhdGl2ZVNjcmlwdFVSTChtbV9jZmcuQURNSU5fQ0dJKSkN
CiAgICAgZG9jLkFkZEl0ZW0oZm9ybSkNCiANCiAgICAgZm9ybS5BZGRJdGVt
KCJNYWtlIHlvdXIgY2hhbmdlcywgYmVsb3csIGFuZCB0aGVuIHN1Ym1pdCBp
dCBhbGwgYXQgdGhlIg0KQEAgLTQwNCw3ICs0MDQsNyBAQA0KICAgICBkb2Mu
QWRkSXRlbSgiPGI+JXM8L2I+ICglcyk6ICVzPHA+IiAlICh2YXJuYW1lLCBj
YXRlZ29yeSwgaXRlbVs0XSkpDQogICAgIGRvYy5BZGRJdGVtKCIlczxwPiIg
JSBpdGVtWzVdKQ0KIA0KLSAgICBmb3JtID0gRm9ybShvcy5wYXRoLmpvaW4o
bHN0LkdldFJlbGF0aXZlU2NyaXB0VVJMKCdhZG1pbicpLCBjYXRlZ29yeSkp
DQorICAgIGZvcm0gPSBGb3JtKG9zLnBhdGguam9pbihsc3QuR2V0UmVsYXRp
dmVTY3JpcHRVUkwobW1fY2ZnLkFETUlOX0NHSSksIGNhdGVnb3J5KSkNCiAg
ICAgdmFsdGFiID0gVGFibGUoY2VsbHNwYWNpbmc9MywgY2VsbHBhZGRpbmc9
NCkNCiAgICAgQWRkT3B0aW9uc1RhYmxlSXRlbSh2YWx0YWIsIGl0ZW0sIGNh
dGVnb3J5LCBsc3QsIG5vZGV0YWlscz0xKQ0KICAgICBmb3JtLkFkZEl0ZW0o
dmFsdGFiKQ0KQEAgLTUwNCw4ICs1MDQsOCBAQA0KICAgICAgICAgcGkgPSBv
cy5lbnZpcm9uWyJQQVRIX0lORk8iXQ0KICAgICAgICAgZm9yIGNpIGluIGNo
dW5rX2luZGljZXM6DQogICAgICAgICAgICAgc3RhcnQsIGVuZCA9IGNodW5r
c1tjaV1bMF0sIGNodW5rc1tjaV1bLTFdDQotICAgICAgICAgICAgYnV0dG9u
cy5hcHBlbmQoIjxhIGhyZWY9L21haWxtYW4vYWRtaW4lcz9jaHVuaz0lZD4g
ZnJvbSAlcyB0byAlcyA8L2E+IiAlIFwNCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAoIHBpLCBjaSwgc3RhcnQsIGVuZCkpDQorICAgICAgICAgICAg
YnV0dG9ucy5hcHBlbmQoIjxhIGhyZWY9L21haWxtYW4vJXMlcz9jaHVuaz0l
ZD4gZnJvbSAlcyB0byAlcyA8L2E+IiAlIFwNCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAoIG1tX2NmZy5BRE1JTl9DR0ksIHBpLCBjaSwgc3RhcnQs
IGVuZCkpDQogICAgICAgICBidXR0b25zID0gYXBwbHkoVW5vcmRlcmVkTGlz
dCwgdHVwbGUoYnV0dG9ucykpDQogICAgICAgICBmb290ZXIgPSBmb290ZXIg
KyBidXR0b25zLkZvcm1hdCgpICsgIjxwPiIgDQogICAgIGVsc2U6DQpkaWZm
IC1icnVOIG1haWxtYW4ub3JpZy9NYWlsbWFuL0NnaS9hZG1pbmRiLnB5IG1h
aWxtYW4vTWFpbG1hbi9DZ2kvYWRtaW5kYi5weQ0KLS0tIG1haWxtYW4ub3Jp
Zy9NYWlsbWFuL0NnaS9hZG1pbmRiLnB5CVNhdCBBdWcgIDggMTQ6MTc6Mjkg
MTk5OA0KKysrIG1haWxtYW4vTWFpbG1hbi9DZ2kvYWRtaW5kYi5weQlNb24g
QXVnIDMxIDE0OjE2OjQzIDE5OTgNCkBAIC0xOTUsNiArMTk1LDggQEANCiAN
CiAMDQogZGVmIFByaW50UmVxdWVzdHMoZG9jKToNCisgICAgZnJvbSBNYWls
bWFuIGltcG9ydCBtbV9jZmcNCisNCiAgICAgIyBYWFg6IFl1aywgYmxlY2gs
IGljaw0KICAgICBnbG9iYWwgbGlzdA0KICAgICBnbG9iYWwgZm9ybQ0KQEAg
LTIwNywxNCArMjA5LDE0IEBADQogICAgIGRvYy5BZGRJdGVtKGh0bWxmb3Jt
YXQuSGVhZGVyKDIsICJBZG1pbmlzdHJhdGl2ZSByZXF1ZXN0cyBmb3IgIg0K
IAkJCQkgICInJXMnIG1haWxpbmcgbGlzdCIgJSBsaXN0LnJlYWxfbmFtZSkp
DQogICAgIGRvYy5BZGRJdGVtKGh0bWxmb3JtYXQuRm9udFNpemUoIisxIiwg
aHRtbGZvcm1hdC5MaW5rKA0KLQlsaXN0LkdldFJlbGF0aXZlU2NyaXB0VVJM
KCdhZG1pbicpLCBodG1sZm9ybWF0Lkl0YWxpYygNCisJbGlzdC5HZXRSZWxh
dGl2ZVNjcmlwdFVSTChtbV9jZmcuQURNSU5fQ0dJKSwgaHRtbGZvcm1hdC5J
dGFsaWMoDQogCSAgICAnVmlldyBvciBlZGl0IHRoZSBsaXN0IGNvbmZpZ3Vy
YXRpb24gaW5mb3JtYXRpb24nKSkpKQ0KICAgICBkb2MuQWRkSXRlbSgnPHA+
PGhyPicpDQogICAgIGlmIG5vdCBsaXN0Lk51bVJlcXVlc3RzUGVuZGluZygp
Og0KIAlkb2MuQWRkSXRlbShodG1sZm9ybWF0LkhlYWRlcigzLCdUaGVyZSBh
cmUgbm8gcGVuZGluZyByZXF1ZXN0cy4nKSkNCiAJZG9jLkFkZEl0ZW0obGlz
dC5HZXRNYWlsbWFuRm9vdGVyKCkpDQogCXJldHVybg0KLSAgICBmb3JtID0g
aHRtbGZvcm1hdC5Gb3JtKGxpc3QuR2V0UmVsYXRpdmVTY3JpcHRVUkwoJ2Fk
bWluZGInKSkNCisgICAgZm9ybSA9IGh0bWxmb3JtYXQuRm9ybShsaXN0Lkdl
dFJlbGF0aXZlU2NyaXB0VVJMKG1tX2NmZy5BRE1JTkRCX0NHSSkpDQogICAg
IGRvYy5BZGRJdGVtKGZvcm0pDQogICAgIGZvcm0uQWRkSXRlbSgnQWRtaW4g
cGFzc3dvcmQ6ICcpDQogICAgIGZvcm0uQWRkSXRlbShodG1sZm9ybWF0LlBh
c3N3b3JkQm94KCdhZG1pbnB3JykpDQpkaWZmIC1icnVOIG1haWxtYW4ub3Jp
Zy9NYWlsbWFuL0NnaS9lZGl0aHRtbC5weSBtYWlsbWFuL01haWxtYW4vQ2dp
L2VkaXRodG1sLnB5DQotLS0gbWFpbG1hbi5vcmlnL01haWxtYW4vQ2dpL2Vk
aXRodG1sLnB5CVNhdCBBdWcgIDggMTQ6MTc6MzIgMTk5OA0KKysrIG1haWxt
YW4vTWFpbG1hbi9DZ2kvZWRpdGh0bWwucHkJTW9uIEF1ZyAzMSAxMzo1MDow
NiAxOTk4DQpAQCAtODcsNyArODcsNyBAQA0KICAgICAgICAgZG9jLkFkZEl0
ZW0oaHRtbGZvcm1hdC5IZWFkZXIoMiwgJ1NlbGVjdCBwYWdlIHRvIGVkaXQ6
JykpDQogICAgICAgICB0ZW1wbGF0ZV9saXN0ID0gaHRtbGZvcm1hdC5Vbm9y
ZGVyZWRMaXN0KCkNCiAgICAgICAgIGZvciAodGVtcGxhdGUsIGluZm8pIGlu
IHRlbXBsYXRlX2RhdGE6DQotICAgICAgICAgICAgbCA9IGh0bWxmb3JtYXQu
TGluayhvcy5wYXRoLmpvaW4obGlzdC5HZXRSZWxhdGl2ZVNjcmlwdFVSTCgn
ZWRpdGh0bWwnKSwNCisgICAgICAgICAgICBsID0gaHRtbGZvcm1hdC5MaW5r
KG9zLnBhdGguam9pbihsaXN0LkdldFJlbGF0aXZlU2NyaXB0VVJMKG1tX2Nm
Zy5FRElUSFRNTF9DR0kpLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlKSwgaW5mbykNCiANCiAgICAg
ICAgICAgICB0ZW1wbGF0ZV9saXN0LkFkZEl0ZW0obCkNCkBAIC0xNDYsMTQg
KzE0NiwxNCBAQA0KIA0KICAgICBkb2MuQWRkSXRlbSgnPGhyPicpDQogDQot
ICAgIGxpbmsgPSBodG1sZm9ybWF0LkxpbmsobGlzdC5HZXRSZWxhdGl2ZVNj
cmlwdFVSTCgnYWRtaW4nKSwNCisgICAgbGluayA9IGh0bWxmb3JtYXQuTGlu
ayhsaXN0LkdldFJlbGF0aXZlU2NyaXB0VVJMKG1tX2NmZy5BRE1JTl9DR0kp
LA0KIAkJCSAgICdWaWV3IG9yIGVkaXQgdGhlIGxpc3QgY29uZmlndXJhdGlv
biBpbmZvcm1hdGlvbi4nKQ0KICAgICBkb2MuQWRkSXRlbShodG1sZm9ybWF0
LkZvbnRTaXplKCIrMSIsIGxpbmspKQ0KICAgICBkb2MuQWRkSXRlbSgnPHA+
JykNCiANCiAgICAgZG9jLkFkZEl0ZW0oJzxocj4nKQ0KIA0KLSAgICBmb3Jt
ID0gaHRtbGZvcm1hdC5Gb3JtKG9zLnBhdGguam9pbihsaXN0LkdldFJlbGF0
aXZlU2NyaXB0VVJMKCdlZGl0aHRtbCcpLA0KKyAgICBmb3JtID0gaHRtbGZv
cm1hdC5Gb3JtKG9zLnBhdGguam9pbihsaXN0LkdldFJlbGF0aXZlU2NyaXB0
VVJMKG1tX2NmZy5FRElUSFRNTF9DR0kpLA0KIAkJCQkJdGVtcGxhdGVfbmFt
ZSkpDQogICAgIGRvYy5BZGRJdGVtKGZvcm0pDQogDQpkaWZmIC1icnVOIG1h
aWxtYW4ub3JpZy9NYWlsbWFuL0NnaS9saXN0aW5mby5weSBtYWlsbWFuL01h
aWxtYW4vQ2dpL2xpc3RpbmZvLnB5DQotLS0gbWFpbG1hbi5vcmlnL01haWxt
YW4vQ2dpL2xpc3RpbmZvLnB5CVNhdCBBdWcgIDggMTQ6MTc6NDMgMTk5OA0K
KysrIG1haWxtYW4vTWFpbG1hbi9DZ2kvbGlzdGluZm8ucHkJTW9uIEF1ZyAz
MSAxMzo1MDowNiAxOTk4DQpAQCAtMTIyLDcgKzEyMiw3IEBADQogICAgICAg
ICAgICAgICAgICAgICAgICsNCiAgICAgICAgICAgICAgICAgICAgICAgJzxw
PiBMaXN0IGFkbWluaXN0cmF0b3JzLCB5b3UgY2FuIHZpc2l0ICcsDQogICAg
ICAgICAgICAgICAgICAgICAgIExpbmsob3MucGF0aC5qb2luKCcuLi8nICog
VXRpbHMuR2V0TmVzdGluZ0xldmVsKCksDQotCSAgICAgICAgICAgICAgICAg
ICAnYWRtaW4vJyksICJ0aGUgbGlzdCBhZG1pbiBvdmVydmlldyBwYWdlIiks
DQorCSAgICAgICAgICAgICAgICAgICBtbV9jZmcuQURNSU5fQ0dJICsgJy8n
KSwgInRoZSBsaXN0IGFkbWluIG92ZXJ2aWV3IHBhZ2UiKSwNCiAgICAgICAg
ICAgICAgICAgICAgICAgIiB0byBmaW5kIHRoZSBtYW5hZ2VtZW50IGludGVy
ZmFjZSBmb3IgeW91ciBsaXN0LiINCiAgICAgICAgICAgICAgICAgICAgICAg
IjxwPihTZW5kIHF1ZXN0aW9ucyBvciBjb21tZW50cyB0byAiLA0KICAgICAg
ICAgICAgICAgICAgICAgICBMaW5rKCJtYWlsdG86JXMiICUgbW1fY2ZnLk1B
SUxNQU5fT1dORVIsDQpAQCAtMTM1LDcgKzEzNSw3IEBADQogICAgIGlmIGFk
dmVydGlzZWQ6DQogICAgICAgICB0YWJsZS5BZGRSb3coW0l0YWxpYygiTGlz
dCIpLCBJdGFsaWMoIkRlc2NyaXB0aW9uIildKQ0KICAgICBmb3IgbCBpbiBh
ZHZlcnRpc2VkOg0KLSAgICAgICAgdGFibGUuQWRkUm93KFtMaW5rKGwuR2V0
UmVsYXRpdmVTY3JpcHRVUkwoJ2xpc3RpbmZvJyksIA0KKyAgICAgICAgdGFi
bGUuQWRkUm93KFtMaW5rKGwuR2V0UmVsYXRpdmVTY3JpcHRVUkwobW1fY2Zn
LkxJU1RJTkZPX0NHSSksIA0KIAkgICAgICBCb2xkKGwucmVhbF9uYW1lKSks
IGwuZGVzY3JpcHRpb25dKQ0KIA0KICAgICBkb2MuQWRkSXRlbSh0YWJsZSkN
CkBAIC0xNjQsOCArMTY0LDggQEANCiAgICAgcmVwbGFjZW1lbnRzWyc8bW0t
bmV3LXBhc3N3b3JkLWJveD4nXSA9IGxpc3QuRm9ybWF0U2VjdXJlQm94KCdw
dycpDQogICAgIHJlcGxhY2VtZW50c1snPG1tLWNvbmZpcm0tcGFzc3dvcmQ+
J10gPSBsaXN0LkZvcm1hdFNlY3VyZUJveCgncHctY29uZicpDQogICAgIHJl
cGxhY2VtZW50c1snPG1tLXN1YnNjcmliZS1mb3JtLXN0YXJ0PiddID0gXA0K
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBsaXN0LkZvcm1hdEZvcm1TdGFydCgnc3Vic2NyaWJlJykNCi0gICAgcmVw
bGFjZW1lbnRzWyc8bW0tcm9zdGVyLWZvcm0tc3RhcnQ+J10gPSBsaXN0LkZv
cm1hdEZvcm1TdGFydCgncm9zdGVyJykNCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC5Gb3JtYXRGb3JtU3Rh
cnQobW1fY2ZnLlNVQlNDUklCRV9DR0kpDQorICAgIHJlcGxhY2VtZW50c1sn
PG1tLXJvc3Rlci1mb3JtLXN0YXJ0PiddID0gbGlzdC5Gb3JtYXRGb3JtU3Rh
cnQobW1fY2ZnLlJPU1RFUl9DR0kpDQogICAgIHJlcGxhY2VtZW50c1snPG1t
LWVkaXRpbmctb3B0aW9ucz4nXSA9IGxpc3QuRm9ybWF0RWRpdGluZ09wdGlv
bigpDQogICAgIHJlcGxhY2VtZW50c1snPG1tLWluZm8tYnV0dG9uPiddID0g
U3VibWl0QnV0dG9uKCdVc2VyT3B0aW9ucycsDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFZGl0IE9w
dGlvbnMnKS5Gb3JtYXQoKQ0KZGlmZiAtYnJ1TiBtYWlsbWFuLm9yaWcvTWFp
bG1hbi9DZ2kvb3B0aW9ucy5weSBtYWlsbWFuL01haWxtYW4vQ2dpL29wdGlv
bnMucHkNCi0tLSBtYWlsbWFuLm9yaWcvTWFpbG1hbi9DZ2kvb3B0aW9ucy5w
eQlTYXQgQXVnICA4IDE0OjE3OjQ1IDE5OTgNCisrKyBtYWlsbWFuL01haWxt
YW4vQ2dpL29wdGlvbnMucHkJTW9uIEF1ZyAzMSAxMzo1MDowNiAxOTk4DQpA
QCAtMTE1LDcgKzExNSw3IEBADQogICAgIHJlcGxhY2VtZW50c1snPG1tLWNv
bmZpcm0tcGFzcy1ib3g+J10gPSBsaXN0LkZvcm1hdFNlY3VyZUJveCgnY29u
ZnB3JykNCiAgICAgcmVwbGFjZW1lbnRzWyc8bW0tY2hhbmdlLXBhc3MtYnV0
dG9uPiddID0gbGlzdC5Gb3JtYXRCdXR0b24oJ2NoYW5nZXB3JywNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIkNoYW5nZSBNeSBQYXNzd29yZCIpDQotICAgIHJl
cGxhY2VtZW50c1snPG1tLWZvcm0tc3RhcnQ+J10gPSBsaXN0LkZvcm1hdEZv
cm1TdGFydCgnaGFuZGxlX29wdHMnLCB1c2VyKQ0KKyAgICByZXBsYWNlbWVu
dHNbJzxtbS1mb3JtLXN0YXJ0PiddID0gbGlzdC5Gb3JtYXRGb3JtU3RhcnQo
bW1fY2ZnLkhPUFRTX0NHSSwgdXNlcikNCiAgICAgcmVwbGFjZW1lbnRzWyc8
bW0tdXNlcj4nXSA9IHVzZXINCiAgICAgcmVwbGFjZW1lbnRzWyc8bW0tcHJl
c2VudGFibGUtdXNlcj4nXSA9IHByZXNlbnRhYmxlX3VzZXINCiAgICAgcmVw
bGFjZW1lbnRzWyc8bW0tZW1haWwtbXktcHc+J10gPSBsaXN0LkZvcm1hdEJ1
dHRvbignZW1haWxwdycsDQpkaWZmIC1icnVOIG1haWxtYW4ub3JpZy9NYWls
bWFuL0RlZmF1bHRzLnB5LmluIG1haWxtYW4vTWFpbG1hbi9EZWZhdWx0cy5w
eS5pbg0KLS0tIG1haWxtYW4ub3JpZy9NYWlsbWFuL0RlZmF1bHRzLnB5Lmlu
CVNhdCBBdWcgIDggMTQ6MTU6NDMgMTk5OA0KKysrIG1haWxtYW4vTWFpbG1h
bi9EZWZhdWx0cy5weS5pbglNb24gQXVnIDMxIDEzOjUwOjA2IDE5OTgNCkBA
IC0yMTcsMyArMjE3LDE1IEBADQogDQogIyBEYXRhIGZpbGUgdmVyc2lvbiBu
dW1iZXINCiBEQVRBX0ZJTEVfVkVSU0lPTiA9IDMNCisNCisjIENHSSBmaWxl
IG5hbWVzDQorQURNSU5fQ0dJICAgICAgID0gImFkbWluQENHSUVYVEAiDQor
QURNSU5EQl9DR0kgICAgID0gImFkbWluZGJAQ0dJRVhUQCINCitBUkNISVZF
X0NHSSAgICAgPSAiYXJjaGl2ZUBDR0lFWFRAIg0KK0xJU1RJTkZPX0NHSSAg
ICA9ICJsaXN0aW5mb0BDR0lFWFRAIg0KK09QVElPTlNfQ0dJICAgICA9ICJv
cHRpb25zQENHSUVYVEAiDQorRURJVEhUTUxfQ0dJICAgID0gImVkaXRodG1s
QENHSUVYVEAiDQorUk9TVEVSX0NHSSAgICAgID0gInJvc3RlckBDR0lFWFRA
Ig0KK0hPUFRTX0NHSSAgICAgICA9ICJoYW5kbGVfb3B0c0BDR0lFWFRAIg0K
K1NVQlNDUklCRV9DR0kgICA9ICJzdWJzY3JpYmVAQ0dJRVhUQCINCitQUklW
QVRFX0NHSSAgICAgPSAicHJpdmF0ZUBDR0lFWFRAIg0KZGlmZiAtYnJ1TiBt
YWlsbWFuLm9yaWcvTWFpbG1hbi9EZWxpdmVyZXIucHkgbWFpbG1hbi9NYWls
bWFuL0RlbGl2ZXJlci5weQ0KLS0tIG1haWxtYW4ub3JpZy9NYWlsbWFuL0Rl
bGl2ZXJlci5weQlTdW4gQXVnIDMwIDE1OjU1OjU0IDE5OTgNCisrKyBtYWls
bWFuL01haWxtYW4vRGVsaXZlcmVyLnB5CU1vbiBBdWcgMzEgMTM6NTA6MDYg
MTk5OA0KQEAgLTEwMCw3ICsxMDAsNyBAQA0KICAgICAgICAgICAgICdwb3N0
YWNrLnR4dCcsDQogICAgICAgICAgICAgeydzdWJqZWN0JyAgICAgOiBzdWJq
ZWN0LA0KICAgICAgICAgICAgICAnbGlzdG5hbWUnICAgIDogc2VsZi5yZWFs
X25hbWUsDQotICAgICAgICAgICAgICdsaXN0aW5mb191cmwnOiBzZWxmLkdl
dEFic29sdXRlU2NyaXB0VVJMKCdsaXN0aW5mbycpLA0KKyAgICAgICAgICAg
ICAnbGlzdGluZm9fdXJsJzogc2VsZi5HZXRBYnNvbHV0ZVNjcmlwdFVSTCht
bV9jZmcuTElTVElORk9fQ0dJKSwNCiAgICAgICAgICAgICAgfSkNCiAJc2Vs
Zi5TZW5kVGV4dFRvVXNlcignJXMgcG9zdCBhY2tub3dsZWdlbWVudCcgJSBz
ZWxmLnJlYWxfbmFtZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9keSwgc2VuZGVyKQ0KQEAgLTExOCw3ICsxMTgsNyBAQA0KICAgICAgICAg
ICAgICAnaG9zdF9uYW1lJyAgIDogc2VsZi5ob3N0X25hbWUsDQogICAgICAg
ICAgICAgICd3ZWxjb21lJyAgICAgOiB3ZWxjb21lLA0KICAgICAgICAgICAg
ICAnZW1haWxhZGRyJyAgIDogc2VsZi5HZXRMaXN0RW1haWwoKSwNCi0gICAg
ICAgICAgICAgJ2xpc3RpbmZvX3VybCc6IHNlbGYuR2V0QWJzb2x1dGVTY3Jp
cHRVUkwoJ2xpc3RpbmZvJyksDQorICAgICAgICAgICAgICdsaXN0aW5mb191
cmwnOiBzZWxmLkdldEFic29sdXRlU2NyaXB0VVJMKG1tX2NmZy5MSVNUSU5G
T19DR0kpLA0KICAgICAgICAgICAgICAnb3B0aW9uc3VybCcgIDogc2VsZi5H
ZXRBYnNvbHV0ZU9wdGlvbnNVUkwobmFtZSksDQogICAgICAgICAgICAgICdw
YXNzd29yZCcgICAgOiBwYXNzd29yZCwNCiAgICAgICAgICAgICAgfSkNCmRp
ZmYgLWJydU4gbWFpbG1hbi5vcmlnL01haWxtYW4vRGlnZXN0ZXIucHkgbWFp
bG1hbi9NYWlsbWFuL0RpZ2VzdGVyLnB5DQotLS0gbWFpbG1hbi5vcmlnL01h
aWxtYW4vRGlnZXN0ZXIucHkJU2F0IEF1ZyAgOCAxNDoxNTo0OCAxOTk4DQor
KysgbWFpbG1hbi9NYWlsbWFuL0RpZ2VzdGVyLnB5CU1vbiBBdWcgMzEgMTM6
NTA6MDYgMTk5OA0KQEAgLTMzMCw3ICszMzAsNyBAQA0KICAgICAgICAgICAg
IHN1YnN0cyA9IHt9DQogICAgICAgICAgICAgc3Vic3RzLnVwZGF0ZShsc3Qu
X19kaWN0X18pDQogICAgICAgICAgICAgc3Vic3RzLnVwZGF0ZSh7J2dvdF9s
aXN0aW5mb191cmwnOiANCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbHN0LkdldEFic29sdXRlU2NyaXB0VVJMKCdsaXN0aW5m
bycpLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBsc3QuR2V0QWJzb2x1dGVTY3JpcHRVUkwobW1fY2ZnLkxJU1RJTkZPX0NH
SSksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dvdF9yZXF1ZXN0
X2VtYWlsJzogbHN0LkdldFJlcXVlc3RFbWFpbCgpLA0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICdnb3RfbGlzdF9lbWFpbCc6IGxzdC5HZXRMaXN0
RW1haWwoKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ290X293
bmVyX2VtYWlsJzogbHN0LkdldEFkbWluRW1haWwoKSwNCmRpZmYgLWJydU4g
bWFpbG1hbi5vcmlnL01haWxtYW4vSFRNTEZvcm1hdHRlci5weSBtYWlsbWFu
L01haWxtYW4vSFRNTEZvcm1hdHRlci5weQ0KLS0tIG1haWxtYW4ub3JpZy9N
YWlsbWFuL0hUTUxGb3JtYXR0ZXIucHkJU2F0IEF1ZyAgOCAxNDoxNTo1NCAx
OTk4DQorKysgbWFpbG1hbi9NYWlsbWFuL0hUTUxGb3JtYXR0ZXIucHkJTW9u
IEF1ZyAzMSAxMzo1MDowNiAxOTk4DQpAQCAtOTMsNyArOTMsNyBAQA0KIAkJ
c2hvd2luZyA9IE9ic2N1cmVFbWFpbChwZXJzb24sIGZvcl90ZXh0PTEpDQog
CSAgICBlbHNlOg0KIAkJc2hvd2luZyA9IHBlcnNvbg0KLQkgICAgZ290ID0g
TGluayhvcy5wYXRoLmpvaW4obWUuR2V0UmVsYXRpdmVTY3JpcHRVUkwoJ29w
dGlvbnMnKSwNCisJICAgIGdvdCA9IExpbmsob3MucGF0aC5qb2luKG1lLkdl
dFJlbGF0aXZlU2NyaXB0VVJMKG1tX2NmZy5PUFRJT05TX0NHSSksDQogCQkJ
CSAgICBpZCksIHNob3dpbmcpDQogICAgICAgICAgICAgaWYgbWUuR2V0VXNl
ck9wdGlvbihwZXJzb24sIGRpc2RlbCk6DQogICAgICAgICAgICAgICAgIGdv
dCA9IEl0YWxpYygiKCIsIGdvdCwgIikiKQ0KZGlmZiAtYnJ1TiBtYWlsbWFu
Lm9yaWcvTWFpbG1hbi9MaXN0QWRtaW4ucHkgbWFpbG1hbi9NYWlsbWFuL0xp
c3RBZG1pbi5weQ0KLS0tIG1haWxtYW4ub3JpZy9NYWlsbWFuL0xpc3RBZG1p
bi5weQlTYXQgQXVnICA4IDE0OjE2OjEwIDE5OTgNCisrKyBtYWlsbWFuL01h
aWxtYW4vTGlzdEFkbWluLnB5CU1vbiBBdWcgMzEgMTQ6MzQ6NTggMTk5OA0K
QEAgLTI3LDcgKzI3LDcgQEANCiBpbXBvcnQgRXJyb3JzDQogaW1wb3J0IE1l
c3NhZ2UNCiBpbXBvcnQgVXRpbHMNCi0NCitmcm9tIE1haWxtYW4gaW1wb3J0
IG1tX2NmZw0KIA0KIGNsYXNzIExpc3RBZG1pbjoNCiAgICAgZGVmIEluaXRW
YXJzKHNlbGYpOg0KQEAgLTU1LDcgKzU1LDcgQEANCiAgICAgICAgICAgICAg
ICAgICAgIHsndXNlcm5hbWUnICAgOiB3aG8sDQogICAgICAgICAgICAgICAg
ICAgICAgJ2xpc3RuYW1lJyAgIDogc2VsZi5yZWFsX25hbWUsDQogICAgICAg
ICAgICAgICAgICAgICAgJ2hvc3RuYW1lJyAgIDogc2VsZi5ob3N0X25hbWUs
DQotICAgICAgICAgICAgICAgICAgICAgJ2FkbWluZGJfdXJsJzogc2VsZi5H
ZXRBYnNvbHV0ZVNjcmlwdFVSTCgnYWRtaW5kYicpLA0KKyAgICAgICAgICAg
ICAgICAgICAgICdhZG1pbmRiX3VybCc6IHNlbGYuR2V0QWJzb2x1dGVTY3Jp
cHRVUkwobW1fY2ZnLkFETUlOREJfQ0dJKSwNCiAgICAgICAgICAgICAgICAg
ICAgICB9KQ0KIAkJc2VsZi5TZW5kVGV4dFRvVXNlcihzdWJqZWN0ID0gc3Vi
aiwNCiAJCQkJICAgIHJlY2lwaWVudCA9IHNlbGYuR2V0QWRtaW5FbWFpbCgp
LA0KQEAgLTc4LDcgKzc4LDcgQEANCiAgICAgICAgICAgICAgICAgICAgICAn
cmVhc29uJyAgICAgOiByZWFzb24sDQogICAgICAgICAgICAgICAgICAgICAg
J3NlbmRlcicgICAgIDogc2VuZGVyLA0KICAgICAgICAgICAgICAgICAgICAg
ICdzdWJqZWN0JyAgICA6IHN1YmplY3QsDQotICAgICAgICAgICAgICAgICAg
ICAgJ2FkbWluZGJfdXJsJzogc2VsZi5HZXRBYnNvbHV0ZVNjcmlwdFVSTCgn
YWRtaW5kYicpLA0KKyAgICAgICAgICAgICAgICAgICAgICdhZG1pbmRiX3Vy
bCc6IHNlbGYuR2V0QWJzb2x1dGVTY3JpcHRVUkwobW1fY2ZnLkFETUlOREJf
Q0dJKSwNCiAgICAgICAgICAgICAgICAgICAgICB9KQ0KIAkJc2VsZi5TZW5k
VGV4dFRvVXNlcihzdWJqZWN0ID0gc3ViaiwNCiAJCQkJICAgIHJlY2lwaWVu
dCA9IHNlbGYuR2V0QWRtaW5FbWFpbCgpLA0KZGlmZiAtYnJ1TiBtYWlsbWFu
Lm9yaWcvTWFpbG1hbi9NYWlsTGlzdC5weSBtYWlsbWFuL01haWxtYW4vTWFp
bExpc3QucHkNCi0tLSBtYWlsbWFuLm9yaWcvTWFpbG1hbi9NYWlsTGlzdC5w
eQlTYXQgQXVnICA4IDE0OjE2OjM0IDE5OTgNCisrKyBtYWlsbWFuL01haWxt
YW4vTWFpbExpc3QucHkJTW9uIEF1ZyAzMSAxMzo1MDowNiAxOTk4DQpAQCAt
ODQsNyArODQsNyBAQA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2VsZi5faW50ZXJuYWxfbmFtZSkpDQogDQog
ICAgIGRlZiBHZXRBYnNvbHV0ZU9wdGlvbnNVUkwoc2VsZiwgYWRkciwgb2Jz
Y3VyZWQ9MCwpOg0KLQlvcHRpb25zID0gc2VsZi5HZXRBYnNvbHV0ZVNjcmlw
dFVSTCgnb3B0aW9ucycpDQorCW9wdGlvbnMgPSBzZWxmLkdldEFic29sdXRl
U2NyaXB0VVJMKG1tX2NmZy5PUFRJT05TX0NHSSkNCiAgICAgICAgIGlmIG9i
c2N1cmVkOg0KICAgICAgICAgICAgIHRyZWF0ZWQgPSBVdGlscy5PYnNjdXJl
RW1haWwoYWRkciwgZm9yX3RleHQ9MCkNCiAgICAgICAgIGVsc2U6DQpAQCAt
MzU5LDcgKzM1OSw3IEBADQogICAgICAgICAgICAgIiBjb3ZlcmluZyBtZW1i
ZXJzIGFuZCBvdXRzaWRlcnMuIg0KICAgICAgICAgICAgICcgIChTZWUgYWxz
byB0aGUgPGEgaHJlZj0iJXMiPkFyY2hpdmFsIE9wdGlvbnMgc2VjdGlvbjwv
YT4gZm9yJw0KICAgICAgICAgICAgICcgc2VwYXJhdGUgYXJjaGl2ZS1wcml2
YWN5IHNldHRpbmdzLiknDQotICAgICAgICAgICAgJSBvcy5wYXRoLmpvaW4o
c2VsZi5HZXRSZWxhdGl2ZVNjcmlwdFVSTCgnYWRtaW4nKSwgJ2FyY2hpdmUn
KSwNCisgICAgICAgICAgICAlIG9zLnBhdGguam9pbihzZWxmLkdldFJlbGF0
aXZlU2NyaXB0VVJMKG1tX2NmZy5BRE1JTl9DR0kpLCAnYXJjaGl2ZScpLA0K
IA0KIAkgICAgIlN1YnNjcmliaW5nIiwNCiANCmRpZmYgLWJydU4gbWFpbG1h
bi5vcmlnL01haWxtYW4vbW1fY2ZnLnB5LmluIG1haWxtYW4vTWFpbG1hbi9t
bV9jZmcucHkuaW4NCi0tLSBtYWlsbWFuLm9yaWcvTWFpbG1hbi9tbV9jZmcu
cHkuaW4JU2F0IEF1ZyAgOCAxNDoxNjo1NCAxOTk4DQorKysgbWFpbG1hbi9N
YWlsbWFuL21tX2NmZy5weS5pbglNb24gQXVnIDMxIDEzOjU0OjM2IDE5OTgN
CkBAIC01Myw3ICs1Myw3IEBADQogTUFJTE1BTl9PV05FUiAgICAgPSAnbWFp
bG1hbi1vd25lckAlcycgJSBERUZBVUxUX0hPU1RfTkFNRQ0KIA0KIFBVQkxJ
Q19BUkNISVZFX1VSTCA9ICcvcGlwZXJtYWlsJw0KLVBSSVZBVEVfQVJDSElW
RV9VUkwgPSAnL21haWxtYW4vcHJpdmF0ZScNCitQUklWQVRFX0FSQ0hJVkVf
VVJMID0gJy9tYWlsbWFuL3ByaXZhdGVAQ0dJRVhUQCcNCiANCiAjIE5vdGUg
LSBpZiB5b3UncmUgbG9va2luZyBmb3Igc29tZXRoaW5nIHRoYXQgaXMgaW1w
b3J0ZWQgZnJvbSBtbV9jZmcsIGJ1dCB5b3UNCiAjIGRpZG4ndCBmaW5kIGl0
IGFib3ZlLCBpdCdzIHByb2JhYmx5IGluIERlZmF1bHRzLnB5Lg0KZGlmZiAt
YnJ1TiBtYWlsbWFuLm9yaWcvYmluL2NvbnZlcnRfbGlzdCBtYWlsbWFuL2Jp
bi9jb252ZXJ0X2xpc3QNCi0tLSBtYWlsbWFuLm9yaWcvYmluL2NvbnZlcnRf
bGlzdAlTdW4gQXVnIDMwIDE1OjU1OjU1IDE5OTgNCisrKyBtYWlsbWFuL2Jp
bi9jb252ZXJ0X2xpc3QJTW9uIEF1ZyAzMSAxMzo1MDowNiAxOTk4DQpAQCAt
ODQsNyArODQsNyBAQA0KICAgICBkaWN0ID0geydsaXN0bmFtZScgICAgOiBt
bC5yZWFsX25hbWUsDQogICAgICAgICAgICAgJ2xpc3Rob3N0JyAgICA6IG1s
Lmhvc3RfbmFtZSwNCiAgICAgICAgICAgICAnbGlzdGFkZHInICAgIDogbWwu
R2V0TGlzdEVtYWlsKCksDQotICAgICAgICAgICAgJ2xpc3RpbmZvX3VybCc6
IG1sLkdldEFic29sdXRlU2NyaXB0VVJMKCdsaXN0aW5mbycpLA0KKyAgICAg
ICAgICAgICdsaXN0aW5mb191cmwnOiBtbC5HZXRBYnNvbHV0ZVNjcmlwdFVS
TChtbV9jZmcuTElTVElORk9fQ0dJKSwNCiAgICAgICAgICAgICAncmVxdWVz
dGFkZHInIDogbWwuR2V0UmVxdWVzdEVtYWlsKCksDQogICAgICAgICAgICAg
J2FkbWluYWRkcicgICA6IG1sLkdldEFkbWluRW1haWwoKSwNCiAgICAgICAg
ICAgICAndmVyc2lvbicgICAgIDogTWFpbG1hbi5tbV9jZmcuVkVSU0lPTiwN
CmRpZmYgLWJydU4gbWFpbG1hbi5vcmlnL2Jpbi9uZXdsaXN0IG1haWxtYW4v
YmluL25ld2xpc3QNCi0tLSBtYWlsbWFuLm9yaWcvYmluL25ld2xpc3QJU2F0
IEF1ZyAgOCAxNDoxODo0OCAxOTk4DQorKysgbWFpbG1hbi9iaW4vbmV3bGlz
dAlNb24gQXVnIDMxIDEzOjUwOjA2IDE5OTgNCkBAIC0xMjAsOCArMTIwLDgg
QEANCiAgICAgICAgICduZXdsaXN0LnR4dCcsDQogICAgICAgICB7J2xpc3Ru
YW1lJyAgICA6IGxpc3RfbmFtZSwNCiAgICAgICAgICAncGFzc3dvcmQnICAg
IDogbGlzdF9wdywgDQotICAgICAgICAgJ2FkbWluX3VybCcgICA6IG5ld2xp
c3QuR2V0QWJzb2x1dGVTY3JpcHRVUkwoJ2FkbWluJyksIA0KLSAgICAgICAg
ICdsaXN0aW5mb191cmwnOiBuZXdsaXN0LkdldEFic29sdXRlU2NyaXB0VVJM
KCdsaXN0aW5mbycpLA0KKyAgICAgICAgICdhZG1pbl91cmwnICAgOiBuZXds
aXN0LkdldEFic29sdXRlU2NyaXB0VVJMKG1tX2NmZy5BRE1JTl9DR0kpLCAN
CisgICAgICAgICAnbGlzdGluZm9fdXJsJzogbmV3bGlzdC5HZXRBYnNvbHV0
ZVNjcmlwdFVSTChtbV9jZmcuTElTVElORk9fQ0dJKSwNCiAgICAgICAgICAn
cmVxdWVzdGFkZHInIDogIiVzLXJlcXVlc3RAJXMiICUgKGxpc3RfbmFtZSwg
bmV3bGlzdC5ob3N0X25hbWUpLA0KICAgICAgICAgICdob3N0bmFtZScgICAg
OiBuZXdsaXN0Lmhvc3RfbmFtZSwNCiAgICAgICAgICB9KQ0KZGlmZiAtYnJ1
TiBtYWlsbWFuLm9yaWcvY29uZmlndXJlIG1haWxtYW4vY29uZmlndXJlDQot
LS0gbWFpbG1hbi5vcmlnL2NvbmZpZ3VyZQlTYXQgQXVnICA4IDE0OjE1OjI1
IDE5OTgNCisrKyBtYWlsbWFuL2NvbmZpZ3VyZQlNb24gQXVnIDMxIDEzOjUw
OjA2IDE5OTgNCkBAIC0xLDYgKzEsNiBAQA0KICMhIC9iaW4vc2gNCiANCi0j
IEZyb20gY29uZmlndXJlLmluIFJldmlzaW9uOiAxLjIwIA0KKyMgRnJvbSBj
b25maWd1cmUuaW4gUmV2aXNpb246IDEuMjEgDQogDQogIyBHdWVzcyB2YWx1
ZXMgZm9yIHN5c3RlbS1kZXBlbmRlbnQgdmFyaWFibGVzIGFuZCBjcmVhdGUg
TWFrZWZpbGVzLg0KICMgR2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgdXNpbmcg
YXV0b2NvbmYgdmVyc2lvbiAyLjEyIA0KQEAgLTI1LDYgKzI1LDkgQEANCiBh
Y19oZWxwPSIkYWNfaGVscA0KIA0KIAktLXdpdGgtY2dpLWdpZCAgCXNwZWNp
ZnkgR0lEIENHSSBwcm9ncmFtcyBydW4gYXMiDQorYWNfaGVscD0iJGFjX2hl
bHANCisNCisJLS13aXRoLWNnaS1leHQgICAgICAgIHNwZWNpZnkgZXh0ZW5z
aW9ucyBvZiBDR0kgcHJvZ3JhbXMiDQogDQogIyBJbml0aWFsaXplIHNvbWUg
dmFyaWFibGVzIHNldCBieSBvcHRpb25zLg0KICMgVGhlIHZhcmlhYmxlcyBo
YXZlIHRoZSBzYW1lIG5hbWVzIGFzIHRoZSBvcHRpb25zLCB3aXRoDQpAQCAt
NTQ1LDcgKzU0OCw3IEBADQogDQogIyBDaGVjayBmb3IgUHl0aG9uISAgQmV0
dGVyIGJlIGZvdW5kIG9uICRQQVRIDQogZWNobyAkYWNfbiAiY2hlY2tpbmcg
Zm9yIC0td2l0aC1weXRob24iIi4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNv
bmZpZ3VyZTo1NDk6IGNoZWNraW5nIGZvciAtLXdpdGgtcHl0aG9uIiA+JjUN
CitlY2hvICJjb25maWd1cmU6NTUyOiBjaGVja2luZyBmb3IgLS13aXRoLXB5
dGhvbiIgPiY1DQogIyBDaGVjayB3aGV0aGVyIC0td2l0aC1weXRob24gb3Ig
LS13aXRob3V0LXB5dGhvbiB3YXMgZ2l2ZW4uDQogaWYgdGVzdCAiJHt3aXRo
X3B5dGhvbitzZXR9IiA9IHNldDsgdGhlbg0KICAgd2l0aHZhbD0iJHdpdGhf
cHl0aG9uIg0KQEAgLTU1OSw3ICs1NjIsNyBAQA0KIAkjIEV4dHJhY3QgdGhl
IGZpcnN0IHdvcmQgb2YgInB5dGhvbiIsIHNvIGl0IGNhbiBiZSBhIHByb2dy
YW0gbmFtZSB3aXRoIGFyZ3MuDQogc2V0IGR1bW15IHB5dGhvbjsgYWNfd29y
ZD0kMg0KIGVjaG8gJGFjX24gImNoZWNraW5nIGZvciAkYWNfd29yZCIiLi4u
ICRhY19jIiAxPiY2DQotZWNobyAiY29uZmlndXJlOjU2MzogY2hlY2tpbmcg
Zm9yICRhY193b3JkIiA+JjUNCitlY2hvICJjb25maWd1cmU6NTY2OiBjaGVj
a2luZyBmb3IgJGFjX3dvcmQiID4mNQ0KIGlmIGV2YWwgInRlc3QgXCJgZWNo
byAnJCcneydhY19jdl9wYXRoX3dpdGhfcHl0aG9uJytzZXR9J2BcIiA9IHNl
dCI7IHRoZW4NCiAgIGVjaG8gJGFjX24gIihjYWNoZWQpICRhY19jIiAxPiY2
DQogZWxzZQ0KQEAgLTU5MSw3ICs1OTQsNyBAQA0KIGZpDQogDQogZWNobyAk
YWNfbiAiY2hlY2tpbmcgUHl0aG9uIGludGVycHJldGVyIiIuLi4gJGFjX2Mi
IDE+JjYNCi1lY2hvICJjb25maWd1cmU6NTk1OiBjaGVja2luZyBQeXRob24g
aW50ZXJwcmV0ZXIiID4mNQ0KK2VjaG8gImNvbmZpZ3VyZTo1OTg6IGNoZWNr
aW5nIFB5dGhvbiBpbnRlcnByZXRlciIgPiY1DQogaWYgdGVzdCAhIC14ICR3
aXRoX3B5dGhvbg0KIHRoZW4NCiAgICAgeyBlY2hvICJjb25maWd1cmU6IGVy
cm9yOiANCkBAIC02MzUsNyArNjM4LDcgQEANCiAjIFNWUjQgL3Vzci91Y2Iv
aW5zdGFsbCwgd2hpY2ggdHJpZXMgdG8gdXNlIHRoZSBub25leGlzdGVudCBn
cm91cCAic3RhZmYiDQogIyAuL2luc3RhbGwsIHdoaWNoIGNhbiBiZSBlcnJv
bmVvdXNseSBjcmVhdGVkIGJ5IG1ha2UgZnJvbSAuL2luc3RhbGwuc2guDQog
ZWNobyAkYWNfbiAiY2hlY2tpbmcgZm9yIGEgQlNEIGNvbXBhdGlibGUgaW5z
dGFsbCIiLi4uICRhY19jIiAxPiY2DQotZWNobyAiY29uZmlndXJlOjYzOTog
Y2hlY2tpbmcgZm9yIGEgQlNEIGNvbXBhdGlibGUgaW5zdGFsbCIgPiY1DQor
ZWNobyAiY29uZmlndXJlOjY0MjogY2hlY2tpbmcgZm9yIGEgQlNEIGNvbXBh
dGlibGUgaW5zdGFsbCIgPiY1DQogaWYgdGVzdCAteiAiJElOU1RBTEwiOyB0
aGVuDQogaWYgZXZhbCAidGVzdCBcImBlY2hvICckJyd7J2FjX2N2X3BhdGhf
aW5zdGFsbCcrc2V0fSdgXCIgPSBzZXQiOyB0aGVuDQogICBlY2hvICRhY19u
ICIoY2FjaGVkKSAkYWNfYyIgMT4mNg0KQEAgLTY4NSw3ICs2ODgsNyBAQA0K
IHRlc3QgLXogIiRJTlNUQUxMX0RBVEEiICYmIElOU1RBTExfREFUQT0nJHtJ
TlNUQUxMfSAtbSA2NDQnDQogDQogZWNobyAkYWNfbiAiY2hlY2tpbmcgd2hl
dGhlciAke01BS0UtbWFrZX0gc2V0cyBcJHtNQUtFfSIiLi4uICRhY19jIiAx
PiY2DQotZWNobyAiY29uZmlndXJlOjY4OTogY2hlY2tpbmcgd2hldGhlciAk
e01BS0UtbWFrZX0gc2V0cyBcJHtNQUtFfSIgPiY1DQorZWNobyAiY29uZmln
dXJlOjY5MjogY2hlY2tpbmcgd2hldGhlciAke01BS0UtbWFrZX0gc2V0cyBc
JHtNQUtFfSIgPiY1DQogc2V0IGR1bW15ICR7TUFLRS1tYWtlfTsgYWNfbWFr
ZT1gZWNobyAiJDIiIHwgc2VkICd5JS4vKy0lX19wXyUnYA0KIGlmIGV2YWwg
InRlc3QgXCJgZWNobyAnJCcneydhY19jdl9wcm9nX21ha2VfJHthY19tYWtl
fV9zZXQnK3NldH0nYFwiID0gc2V0IjsgdGhlbg0KICAgZWNobyAkYWNfbiAi
KGNhY2hlZCkgJGFjX2MiIDE+JjYNCkBAIC03MTQsNyArNzE3LDcgQEANCiAN
CiAjIEZpbmQgY29tcGlsZXIsIGFsbG93IGFsdGVybmF0aXZlcyB0byBnY2MN
CiBlY2hvICRhY19uICJjaGVja2luZyBmb3IgLS13aXRob3V0LWdjYyIiLi4u
ICRhY19jIiAxPiY2DQotZWNobyAiY29uZmlndXJlOjcxODogY2hlY2tpbmcg
Zm9yIC0td2l0aG91dC1nY2MiID4mNQ0KK2VjaG8gImNvbmZpZ3VyZTo3MjE6
IGNoZWNraW5nIGZvciAtLXdpdGhvdXQtZ2NjIiA+JjUNCiAjIENoZWNrIHdo
ZXRoZXIgLS13aXRoLWdjYyBvciAtLXdpdGhvdXQtZ2NjIHdhcyBnaXZlbi4N
CiBpZiB0ZXN0ICIke3dpdGhfZ2NjK3NldH0iID0gc2V0OyB0aGVuDQogICB3
aXRodmFsPSIkd2l0aF9nY2MiDQpAQCAtNzQzLDcgKzc0Niw3IEBADQogIyBF
eHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJnY2MiLCBzbyBpdCBjYW4gYmUg
YSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLg0KIHNldCBkdW1teSBnY2M7IGFj
X3dvcmQ9JDINCiBlY2hvICRhY19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQi
Ii4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNvbmZpZ3VyZTo3NDc6IGNoZWNr
aW5nIGZvciAkYWNfd29yZCIgPiY1DQorZWNobyAiY29uZmlndXJlOjc1MDog
Y2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUNCiBpZiBldmFsICJ0ZXN0IFwi
YGVjaG8gJyQnJ3snYWNfY3ZfcHJvZ19DQycrc2V0fSdgXCIgPSBzZXQiOyB0
aGVuDQogICBlY2hvICRhY19uICIoY2FjaGVkKSAkYWNfYyIgMT4mNg0KIGVs
c2UNCkBAIC03NzIsNyArNzc1LDcgQEANCiAgICMgRXh0cmFjdCB0aGUgZmly
c3Qgd29yZCBvZiAiY2MiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUg
d2l0aCBhcmdzLg0KIHNldCBkdW1teSBjYzsgYWNfd29yZD0kMg0KIGVjaG8g
JGFjX24gImNoZWNraW5nIGZvciAkYWNfd29yZCIiLi4uICRhY19jIiAxPiY2
DQotZWNobyAiY29uZmlndXJlOjc3NjogY2hlY2tpbmcgZm9yICRhY193b3Jk
IiA+JjUNCitlY2hvICJjb25maWd1cmU6Nzc5OiBjaGVja2luZyBmb3IgJGFj
X3dvcmQiID4mNQ0KIGlmIGV2YWwgInRlc3QgXCJgZWNobyAnJCcneydhY19j
dl9wcm9nX0NDJytzZXR9J2BcIiA9IHNldCI7IHRoZW4NCiAgIGVjaG8gJGFj
X24gIihjYWNoZWQpICRhY19jIiAxPiY2DQogZWxzZQ0KQEAgLTgyMCw3ICs4
MjMsNyBAQA0KIGZpDQogDQogZWNobyAkYWNfbiAiY2hlY2tpbmcgd2hldGhl
ciB0aGUgQyBjb21waWxlciAoJENDICRDRkxBR1MgJExERkxBR1MpIHdvcmtz
IiIuLi4gJGFjX2MiIDE+JjYNCi1lY2hvICJjb25maWd1cmU6ODI0OiBjaGVj
a2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyICgkQ0MgJENGTEFHUyAkTERG
TEFHUykgd29ya3MiID4mNQ0KK2VjaG8gImNvbmZpZ3VyZTo4Mjc6IGNoZWNr
aW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKCRDQyAkQ0ZMQUdTICRMREZM
QUdTKSB3b3JrcyIgPiY1DQogDQogYWNfZXh0PWMNCiAjIENGTEFHUyBpcyBu
b3QgaW4gYWNfY3BwIGJlY2F1c2UgLWcsIC1PLCBldGMuIGFyZSBub3QgdmFs
aWQgY3BwIG9wdGlvbnMuDQpAQCAtODMwLDExICs4MzMsMTEgQEANCiBjcm9z
c19jb21waWxpbmc9JGFjX2N2X3Byb2dfY2NfY3Jvc3MNCiANCiBjYXQgPiBj
b25mdGVzdC4kYWNfZXh0IDw8RU9GDQotI2xpbmUgODM0ICJjb25maWd1cmUi
DQorI2xpbmUgODM3ICJjb25maWd1cmUiDQogI2luY2x1ZGUgImNvbmZkZWZz
LmgiDQogbWFpbigpe3JldHVybigwKTt9DQogRU9GDQotaWYgeyAoZXZhbCBl
Y2hvIGNvbmZpZ3VyZTo4Mzg6IFwiJGFjX2xpbmtcIikgMT4mNTsgKGV2YWwg
JGFjX2xpbmspIDI+JjU7IH0gJiYgdGVzdCAtcyBjb25mdGVzdDsgdGhlbg0K
K2lmIHsgKGV2YWwgZWNobyBjb25maWd1cmU6ODQxOiBcIiRhY19saW5rXCIp
IDE+JjU7IChldmFsICRhY19saW5rKSAyPiY1OyB9ICYmIHRlc3QgLXMgY29u
ZnRlc3Q7IHRoZW4NCiAgIGFjX2N2X3Byb2dfY2Nfd29ya3M9eWVzDQogICAj
IElmIHdlIGNhbid0IHJ1biBhIHRyaXZpYWwgcHJvZ3JhbSwgd2UgYXJlIHBy
b2JhYmx5IHVzaW5nIGEgY3Jvc3MgY29tcGlsZXIuDQogICBpZiAoLi9jb25m
dGVzdDsgZXhpdCkgMj4vZGV2L251bGw7IHRoZW4NCkBAIC04NTQsMTIgKzg1
NywxMiBAQA0KICAgeyBlY2hvICJjb25maWd1cmU6IGVycm9yOiBpbnN0YWxs
YXRpb24gb3IgY29uZmlndXJhdGlvbiBwcm9ibGVtOiBDIGNvbXBpbGVyIGNh
bm5vdCBjcmVhdGUgZXhlY3V0YWJsZXMuIiAxPiYyOyBleGl0IDE7IH0NCiBm
aQ0KIGVjaG8gJGFjX24gImNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGls
ZXIgKCRDQyAkQ0ZMQUdTICRMREZMQUdTKSBpcyBhIGNyb3NzLWNvbXBpbGVy
IiIuLi4gJGFjX2MiIDE+JjYNCi1lY2hvICJjb25maWd1cmU6ODU4OiBjaGVj
a2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyICgkQ0MgJENGTEFHUyAkTERG
TEFHUykgaXMgYSBjcm9zcy1jb21waWxlciIgPiY1DQorZWNobyAiY29uZmln
dXJlOjg2MTogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxlciAoJEND
ICRDRkxBR1MgJExERkxBR1MpIGlzIGEgY3Jvc3MtY29tcGlsZXIiID4mNQ0K
IGVjaG8gIiRhY190IiIkYWNfY3ZfcHJvZ19jY19jcm9zcyIgMT4mNg0KIGNy
b3NzX2NvbXBpbGluZz0kYWNfY3ZfcHJvZ19jY19jcm9zcw0KIA0KIGVjaG8g
JGFjX24gImNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIEdOVSBDIiIu
Li4gJGFjX2MiIDE+JjYNCi1lY2hvICJjb25maWd1cmU6ODYzOiBjaGVja2lu
ZyB3aGV0aGVyIHdlIGFyZSB1c2luZyBHTlUgQyIgPiY1DQorZWNobyAiY29u
ZmlndXJlOjg2NjogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgR05V
IEMiID4mNQ0KIGlmIGV2YWwgInRlc3QgXCJgZWNobyAnJCcneydhY19jdl9w
cm9nX2djYycrc2V0fSdgXCIgPSBzZXQiOyB0aGVuDQogICBlY2hvICRhY19u
ICIoY2FjaGVkKSAkYWNfYyIgMT4mNg0KIGVsc2UNCkBAIC04NjgsNyArODcx
LDcgQEANCiAgIHllczsNCiAjZW5kaWYNCiBFT0YNCi1pZiB7IGFjX3RyeT0n
JHtDQy1jY30gLUUgY29uZnRlc3QuYyc7IHsgKGV2YWwgZWNobyBjb25maWd1
cmU6ODcyOiBcIiRhY190cnlcIikgMT4mNTsgKGV2YWwgJGFjX3RyeSkgMj4m
NTsgfTsgfSB8IGVncmVwIHllcyA+L2Rldi9udWxsIDI+JjE7IHRoZW4NCitp
ZiB7IGFjX3RyeT0nJHtDQy1jY30gLUUgY29uZnRlc3QuYyc7IHsgKGV2YWwg
ZWNobyBjb25maWd1cmU6ODc1OiBcIiRhY190cnlcIikgMT4mNTsgKGV2YWwg
JGFjX3RyeSkgMj4mNTsgfTsgfSB8IGVncmVwIHllcyA+L2Rldi9udWxsIDI+
JjE7IHRoZW4NCiAgIGFjX2N2X3Byb2dfZ2NjPXllcw0KIGVsc2UNCiAgIGFj
X2N2X3Byb2dfZ2NjPW5vDQpAQCAtODgzLDcgKzg4Niw3IEBADQogICBhY19z
YXZlX0NGTEFHUz0iJENGTEFHUyINCiAgIENGTEFHUz0NCiAgIGVjaG8gJGFj
X24gImNoZWNraW5nIHdoZXRoZXIgJHtDQy1jY30gYWNjZXB0cyAtZyIiLi4u
ICRhY19jIiAxPiY2DQotZWNobyAiY29uZmlndXJlOjg4NzogY2hlY2tpbmcg
d2hldGhlciAke0NDLWNjfSBhY2NlcHRzIC1nIiA+JjUNCitlY2hvICJjb25m
aWd1cmU6ODkwOiBjaGVja2luZyB3aGV0aGVyICR7Q0MtY2N9IGFjY2VwdHMg
LWciID4mNQ0KIGlmIGV2YWwgInRlc3QgXCJgZWNobyAnJCcneydhY19jdl9w
cm9nX2NjX2cnK3NldH0nYFwiID0gc2V0IjsgdGhlbg0KICAgZWNobyAkYWNf
biAiKGNhY2hlZCkgJGFjX2MiIDE+JjYNCiBlbHNlDQpAQCAtOTMxLDcgKzkz
NCw3IEBADQogIyBQdWxsIHRoZSBoYXNoIG1hcmsgb3V0IG9mIHRoZSBtYWNy
byBjYWxsIHRvIGF2b2lkIG00IHByb2JsZW1zLg0KIGFjX21zZz0id2hldGhl
ciAjISB3b3JrcyBpbiBzaGVsbCBzY3JpcHRzIg0KIGVjaG8gJGFjX24gImNo
ZWNraW5nICRhY19tc2ciIi4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNvbmZp
Z3VyZTo5MzU6IGNoZWNraW5nICRhY19tc2ciID4mNQ0KK2VjaG8gImNvbmZp
Z3VyZTo5Mzg6IGNoZWNraW5nICRhY19tc2ciID4mNQ0KIGlmIGV2YWwgInRl
c3QgXCJgZWNobyAnJCcneydhY19jdl9zeXNfaW50ZXJwcmV0ZXInK3NldH0n
YFwiID0gc2V0IjsgdGhlbg0KICAgZWNobyAkYWNfbiAiKGNhY2hlZCkgJGFj
X2MiIDE+JjYNCiBlbHNlDQpAQCAtOTY1LDcgKzk2OCw3IEBADQogDQogIyBH
cm91cCBgbWFpbG1hbicgbXVzdCBleGlzdA0KIGVjaG8gJGFjX24gImNoZWNr
aW5nIGZvciBtYWlsbWFuIEdJRCIiLi4uICRhY19jIiAxPiY2DQotZWNobyAi
Y29uZmlndXJlOjk2OTogY2hlY2tpbmcgZm9yIG1haWxtYW4gR0lEIiA+JjUN
CitlY2hvICJjb25maWd1cmU6OTcyOiBjaGVja2luZyBmb3IgbWFpbG1hbiBH
SUQiID4mNQ0KIA0KICMgTUFJTE1BTl9HSUQgPT0gdmFyaWFibGUgbmFtZQ0K
ICMgbWFpbG1hbiA9PSB1c2VyIGlkIHRvIGNoZWNrIGZvcg0KQEAgLTEwMTcs
NyArMTAyMCw3IEBADQogZmkNCiANCiBlY2hvICRhY19uICJjaGVja2luZyBw
ZXJtaXNzaW9ucyBvbiAkcHJlZml4Y2hlY2siIi4uLiAkYWNfYyIgMT4mNg0K
LWVjaG8gImNvbmZpZ3VyZToxMDIxOiBjaGVja2luZyBwZXJtaXNzaW9ucyBv
biAkcHJlZml4Y2hlY2siID4mNQ0KK2VjaG8gImNvbmZpZ3VyZToxMDI0OiBj
aGVja2luZyBwZXJtaXNzaW9ucyBvbiAkcHJlZml4Y2hlY2siID4mNQ0KIA0K
IGNhdCA+IGNvbmZ0ZXN0LnB5IDw8RU9GDQogaW1wb3J0IG9zLCBncnAsIHN0
cmluZw0KQEAgLTEwNjMsNyArMTA2Niw3IEBADQogIyBOb3cgZmluZCB0aGUg
VUlEcyBhbmQgR0lEcw0KICMgU3VwcG9ydCAtLXdpdGgtbWFpbC1naWQgYW5k
IC0td2l0aC1jZ2ktZ2lkDQogZWNobyAkYWNfbiAiY2hlY2tpbmcgZm9yIG1h
aWwgd3JhcHBlciBHSUQiIi4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNvbmZp
Z3VyZToxMDY3OiBjaGVja2luZyBmb3IgbWFpbCB3cmFwcGVyIEdJRCIgPiY1
DQorZWNobyAiY29uZmlndXJlOjEwNzA6IGNoZWNraW5nIGZvciBtYWlsIHdy
YXBwZXIgR0lEIiA+JjUNCiAjIENoZWNrIHdoZXRoZXIgLS13aXRoLW1haWwt
Z2lkIG9yIC0td2l0aG91dC1tYWlsLWdpZCB3YXMgZ2l2ZW4uDQogaWYgdGVz
dCAiJHt3aXRoX21haWxfZ2lkK3NldH0iID0gc2V0OyB0aGVuDQogICB3aXRo
dmFsPSIkd2l0aF9tYWlsX2dpZCINCkBAIC0xMTI0LDcgKzExMjcsNyBAQA0K
IA0KIA0KIGVjaG8gJGFjX24gImNoZWNraW5nIGZvciBDR0kgd3JhcHBlciBH
SUQiIi4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNvbmZpZ3VyZToxMTI4OiBj
aGVja2luZyBmb3IgQ0dJIHdyYXBwZXIgR0lEIiA+JjUNCitlY2hvICJjb25m
aWd1cmU6MTEzMTogY2hlY2tpbmcgZm9yIENHSSB3cmFwcGVyIEdJRCIgPiY1
DQogIyBDaGVjayB3aGV0aGVyIC0td2l0aC1jZ2ktZ2lkIG9yIC0td2l0aG91
dC1jZ2ktZ2lkIHdhcyBnaXZlbi4NCiBpZiB0ZXN0ICIke3dpdGhfY2dpX2dp
ZCtzZXR9IiA9IHNldDsgdGhlbg0KICAgd2l0aHZhbD0iJHdpdGhfY2dpX2dp
ZCINCkBAIC0xMTg3LDYgKzExOTAsMjUgQEANCiAjTU1fRklORF9VU0VSX0lE
KEFMSUFTX1VJRCwgbWFpbG1hbiwgYWxpYXNfd3JhcHBlcikNCiAjTU1fRklO
RF9HUk9VUF9JRChBTElBU19HSUQsIG1haWwsIGFsaWFzX3dyYXBwZXIpDQog
DQorIyBDR0kgZXh0ZW5zaW9uIGNoZWNraW5nDQorDQorZWNobyAkYWNfbiAi
Y2hlY2tpbmcgZm9yIENHSSBleHRlbnNpb24iIi4uLiAkYWNfYyIgMT4mNg0K
K2VjaG8gImNvbmZpZ3VyZToxMTk3OiBjaGVja2luZyBmb3IgQ0dJIGV4dGVu
c2lvbiIgPiY1DQorIyBDaGVjayB3aGV0aGVyIC0td2l0aC1jZ2ktZXh0IG9y
IC0td2l0aG91dC1jZ2ktZXh0IHdhcyBnaXZlbi4NCitpZiB0ZXN0ICIke3dp
dGhfY2dpX2V4dCtzZXR9IiA9IHNldDsgdGhlbg0KKyAgd2l0aHZhbD0iJHdp
dGhfY2dpX2V4dCINCisgIDoNCitmaQ0KKw0KK2lmIHRlc3QgLXogIiR3aXRo
X2NnaV9leHQiDQordGhlbg0KKyAgICBDR0lFWFQ9JycNCisgICAgd2l0aF9j
Z2lfZXh0PSdubycNCitlbHNlDQorICAgIENHSUVYVD0kd2l0aF9jZ2lfZXh0
DQorZmkNCitlY2hvICIkYWNfdCIiJHdpdGhfY2dpX2V4dCIgMT4mNg0KKw0K
ICMgZmlndXJlIG91dCB0aGUgREVGQVVMVF9IT1NUX05BTUUgYW5kIERFRkFV
TFRfVVJMDQogDQogDQpAQCAtMTIxOSwxNCArMTI0MSwxNCBAQA0KICRQWVRI
T04gY29uZnRlc3QucHkNCiANCiBlY2hvICRhY19uICJjaGVja2luZyBmb3Ig
ZGVmYXVsdCBmdWxseSBxdWFsaWZpZWQgaG9zdCBuYW1lIiIuLi4gJGFjX2Mi
IDE+JjYNCi1lY2hvICJjb25maWd1cmU6MTIyMzogY2hlY2tpbmcgZm9yIGRl
ZmF1bHQgZnVsbHkgcXVhbGlmaWVkIGhvc3QgbmFtZSIgPiY1DQorZWNobyAi
Y29uZmlndXJlOjEyNDU6IGNoZWNraW5nIGZvciBkZWZhdWx0IGZ1bGx5IHF1
YWxpZmllZCBob3N0IG5hbWUiID4mNQ0KIGlmIHRlc3QgLXogIiRGUUROIg0K
IHRoZW4NCiAgICAgRlFETj1gaGVhZCAtMSBjb25mdGVzdC5vdXRgDQogZmkN
CiBlY2hvICIkYWNfdCIiJEZRRE4iIDE+JjYNCiBlY2hvICRhY19uICJjaGVj
a2luZyBmb3IgZGVmYXVsdCBVUkwgaG9zdCBjb21wb25lbnQiIi4uLiAkYWNf
YyIgMT4mNg0KLWVjaG8gImNvbmZpZ3VyZToxMjMwOiBjaGVja2luZyBmb3Ig
ZGVmYXVsdCBVUkwgaG9zdCBjb21wb25lbnQiID4mNQ0KK2VjaG8gImNvbmZp
Z3VyZToxMjUyOiBjaGVja2luZyBmb3IgZGVmYXVsdCBVUkwgaG9zdCBjb21w
b25lbnQiID4mNQ0KIGlmIHRlc3QgLXogIiRVUkwiDQogdGhlbg0KICAgICBV
Ukw9YHRhaWwgLTEgY29uZnRlc3Qub3V0YA0KQEAgLTEyMzgsMTIgKzEyNjAs
MTIgQEANCiBmb3IgYWNfZnVuYyBpbiBzdHJlcnJvcg0KIGRvDQogZWNobyAk
YWNfbiAiY2hlY2tpbmcgZm9yICRhY19mdW5jIiIuLi4gJGFjX2MiIDE+JjYN
Ci1lY2hvICJjb25maWd1cmU6MTI0MjogY2hlY2tpbmcgZm9yICRhY19mdW5j
IiA+JjUNCitlY2hvICJjb25maWd1cmU6MTI2NDogY2hlY2tpbmcgZm9yICRh
Y19mdW5jIiA+JjUNCiBpZiBldmFsICJ0ZXN0IFwiYGVjaG8gJyQnJ3snYWNf
Y3ZfZnVuY18kYWNfZnVuYycrc2V0fSdgXCIgPSBzZXQiOyB0aGVuDQogICBl
Y2hvICRhY19uICIoY2FjaGVkKSAkYWNfYyIgMT4mNg0KIGVsc2UNCiAgIGNh
dCA+IGNvbmZ0ZXN0LiRhY19leHQgPDxFT0YNCi0jbGluZSAxMjQ3ICJjb25m
aWd1cmUiDQorI2xpbmUgMTI2OSAiY29uZmlndXJlIg0KICNpbmNsdWRlICJj
b25mZGVmcy5oIg0KIC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1
YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywNCiAgICAg
d2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciAkYWNfZnVuYygpOyBiZWxv
dy4gICovDQpAQCAtMTI2Niw3ICsxMjg4LDcgQEANCiANCiA7IHJldHVybiAw
OyB9DQogRU9GDQotaWYgeyAoZXZhbCBlY2hvIGNvbmZpZ3VyZToxMjcwOiBc
IiRhY19saW5rXCIpIDE+JjU7IChldmFsICRhY19saW5rKSAyPiY1OyB9ICYm
IHRlc3QgLXMgY29uZnRlc3Q7IHRoZW4NCitpZiB7IChldmFsIGVjaG8gY29u
ZmlndXJlOjEyOTI6IFwiJGFjX2xpbmtcIikgMT4mNTsgKGV2YWwgJGFjX2xp
bmspIDI+JjU7IH0gJiYgdGVzdCAtcyBjb25mdGVzdDsgdGhlbg0KICAgcm0g
LXJmIGNvbmZ0ZXN0Kg0KICAgZXZhbCAiYWNfY3ZfZnVuY18kYWNfZnVuYz15
ZXMiDQogZWxzZQ0KQEAgLTEyOTMsNyArMTMxNSw3IEBADQogDQogIyBDaGVj
a3MgZm9yIGhlYWRlciBmaWxlcy4NCiBlY2hvICRhY19uICJjaGVja2luZyBo
b3cgdG8gcnVuIHRoZSBDIHByZXByb2Nlc3NvciIiLi4uICRhY19jIiAxPiY2
DQotZWNobyAiY29uZmlndXJlOjEyOTc6IGNoZWNraW5nIGhvdyB0byBydW4g
dGhlIEMgcHJlcHJvY2Vzc29yIiA+JjUNCitlY2hvICJjb25maWd1cmU6MTMx
OTogY2hlY2tpbmcgaG93IHRvIHJ1biB0aGUgQyBwcmVwcm9jZXNzb3IiID4m
NQ0KICMgT24gU3Vucywgc29tZXRpbWVzICRDUFAgbmFtZXMgYSBkaXJlY3Rv
cnkuDQogaWYgdGVzdCAtbiAiJENQUCIgJiYgdGVzdCAtZCAiJENQUCI7IHRo
ZW4NCiAgIENQUD0NCkBAIC0xMzA4LDEzICsxMzMwLDEzIEBADQogICAjIE9u
IHRoZSBOZVhULCBjYyAtRSBydW5zIHRoZSBjb2RlIHRocm91Z2ggdGhlIGNv
bXBpbGVyJ3MgcGFyc2VyLA0KICAgIyBub3QganVzdCB0aHJvdWdoIGNwcC4N
CiAgIGNhdCA+IGNvbmZ0ZXN0LiRhY19leHQgPDxFT0YNCi0jbGluZSAxMzEy
ICJjb25maWd1cmUiDQorI2xpbmUgMTMzNCAiY29uZmlndXJlIg0KICNpbmNs
dWRlICJjb25mZGVmcy5oIg0KICNpbmNsdWRlIDxhc3NlcnQuaD4NCiBTeW50
YXggRXJyb3INCiBFT0YNCiBhY190cnk9IiRhY19jcHAgY29uZnRlc3QuJGFj
X2V4dCA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0Ig0KLXsgKGV2YWwgZWNo
byBjb25maWd1cmU6MTMxODogXCIkYWNfdHJ5XCIpIDE+JjU7IChldmFsICRh
Y190cnkpIDI+JjU7IH0NCit7IChldmFsIGVjaG8gY29uZmlndXJlOjEzNDA6
IFwiJGFjX3RyeVwiKSAxPiY1OyAoZXZhbCAkYWNfdHJ5KSAyPiY1OyB9DQog
YWNfZXJyPWBncmVwIC12ICdeICorJyBjb25mdGVzdC5vdXRgDQogaWYgdGVz
dCAteiAiJGFjX2VyciI7IHRoZW4NCiAgIDoNCkBAIC0xMzI1LDEzICsxMzQ3
LDEzIEBADQogICBybSAtcmYgY29uZnRlc3QqDQogICBDUFA9IiR7Q0MtY2N9
IC1FIC10cmFkaXRpb25hbC1jcHAiDQogICBjYXQgPiBjb25mdGVzdC4kYWNf
ZXh0IDw8RU9GDQotI2xpbmUgMTMyOSAiY29uZmlndXJlIg0KKyNsaW5lIDEz
NTEgImNvbmZpZ3VyZSINCiAjaW5jbHVkZSAiY29uZmRlZnMuaCINCiAjaW5j
bHVkZSA8YXNzZXJ0Lmg+DQogU3ludGF4IEVycm9yDQogRU9GDQogYWNfdHJ5
PSIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQgPi9kZXYvbnVsbCAyPmNvbmZ0
ZXN0Lm91dCINCi17IChldmFsIGVjaG8gY29uZmlndXJlOjEzMzU6IFwiJGFj
X3RyeVwiKSAxPiY1OyAoZXZhbCAkYWNfdHJ5KSAyPiY1OyB9DQoreyAoZXZh
bCBlY2hvIGNvbmZpZ3VyZToxMzU3OiBcIiRhY190cnlcIikgMT4mNTsgKGV2
YWwgJGFjX3RyeSkgMj4mNTsgfQ0KIGFjX2Vycj1gZ3JlcCAtdiAnXiAqKycg
Y29uZnRlc3Qub3V0YA0KIGlmIHRlc3QgLXogIiRhY19lcnIiOyB0aGVuDQog
ICA6DQpAQCAtMTM1NCwxMiArMTM3NiwxMiBAQA0KIGVjaG8gIiRhY190IiIk
Q1BQIiAxPiY2DQogDQogZWNobyAkYWNfbiAiY2hlY2tpbmcgZm9yIEFOU0kg
QyBoZWFkZXIgZmlsZXMiIi4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNvbmZp
Z3VyZToxMzU4OiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcyIg
PiY1DQorZWNobyAiY29uZmlndXJlOjEzODA6IGNoZWNraW5nIGZvciBBTlNJ
IEMgaGVhZGVyIGZpbGVzIiA+JjUNCiBpZiBldmFsICJ0ZXN0IFwiYGVjaG8g
JyQnJ3snYWNfY3ZfaGVhZGVyX3N0ZGMnK3NldH0nYFwiID0gc2V0IjsgdGhl
bg0KICAgZWNobyAkYWNfbiAiKGNhY2hlZCkgJGFjX2MiIDE+JjYNCiBlbHNl
DQogICBjYXQgPiBjb25mdGVzdC4kYWNfZXh0IDw8RU9GDQotI2xpbmUgMTM2
MyAiY29uZmlndXJlIg0KKyNsaW5lIDEzODUgImNvbmZpZ3VyZSINCiAjaW5j
bHVkZSAiY29uZmRlZnMuaCINCiAjaW5jbHVkZSA8c3RkbGliLmg+DQogI2lu
Y2x1ZGUgPHN0ZGFyZy5oPg0KQEAgLTEzNjcsNyArMTM4OSw3IEBADQogI2lu
Y2x1ZGUgPGZsb2F0Lmg+DQogRU9GDQogYWNfdHJ5PSIkYWNfY3BwIGNvbmZ0
ZXN0LiRhY19leHQgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dCINCi17IChl
dmFsIGVjaG8gY29uZmlndXJlOjEzNzE6IFwiJGFjX3RyeVwiKSAxPiY1OyAo
ZXZhbCAkYWNfdHJ5KSAyPiY1OyB9DQoreyAoZXZhbCBlY2hvIGNvbmZpZ3Vy
ZToxMzkzOiBcIiRhY190cnlcIikgMT4mNTsgKGV2YWwgJGFjX3RyeSkgMj4m
NTsgfQ0KIGFjX2Vycj1gZ3JlcCAtdiAnXiAqKycgY29uZnRlc3Qub3V0YA0K
IGlmIHRlc3QgLXogIiRhY19lcnIiOyB0aGVuDQogICBybSAtcmYgY29uZnRl
c3QqDQpAQCAtMTM4NCw3ICsxNDA2LDcgQEANCiBpZiB0ZXN0ICRhY19jdl9o
ZWFkZXJfc3RkYyA9IHllczsgdGhlbg0KICAgIyBTdW5PUyA0Lnggc3RyaW5n
LmggZG9lcyBub3QgZGVjbGFyZSBtZW0qLCBjb250cmFyeSB0byBBTlNJLg0K
IGNhdCA+IGNvbmZ0ZXN0LiRhY19leHQgPDxFT0YNCi0jbGluZSAxMzg4ICJj
b25maWd1cmUiDQorI2xpbmUgMTQxMCAiY29uZmlndXJlIg0KICNpbmNsdWRl
ICJjb25mZGVmcy5oIg0KICNpbmNsdWRlIDxzdHJpbmcuaD4NCiBFT0YNCkBA
IC0xNDAyLDcgKzE0MjQsNyBAQA0KIGlmIHRlc3QgJGFjX2N2X2hlYWRlcl9z
dGRjID0geWVzOyB0aGVuDQogICAjIElTQyAyLjAuMiBzdGRsaWIuaCBkb2Vz
IG5vdCBkZWNsYXJlIGZyZWUsIGNvbnRyYXJ5IHRvIEFOU0kuDQogY2F0ID4g
Y29uZnRlc3QuJGFjX2V4dCA8PEVPRg0KLSNsaW5lIDE0MDYgImNvbmZpZ3Vy
ZSINCisjbGluZSAxNDI4ICJjb25maWd1cmUiDQogI2luY2x1ZGUgImNvbmZk
ZWZzLmgiDQogI2luY2x1ZGUgPHN0ZGxpYi5oPg0KIEVPRg0KQEAgLTE0MjMs
NyArMTQ0NSw3IEBADQogICA6DQogZWxzZQ0KICAgY2F0ID4gY29uZnRlc3Qu
JGFjX2V4dCA8PEVPRg0KLSNsaW5lIDE0MjcgImNvbmZpZ3VyZSINCisjbGlu
ZSAxNDQ5ICJjb25maWd1cmUiDQogI2luY2x1ZGUgImNvbmZkZWZzLmgiDQog
I2luY2x1ZGUgPGN0eXBlLmg+DQogI2RlZmluZSBJU0xPV0VSKGMpICgnYScg
PD0gKGMpICYmIChjKSA8PSAneicpDQpAQCAtMTQzNCw3ICsxNDU2LDcgQEAN
CiBleGl0ICgwKTsgfQ0KIA0KIEVPRg0KLWlmIHsgKGV2YWwgZWNobyBjb25m
aWd1cmU6MTQzODogXCIkYWNfbGlua1wiKSAxPiY1OyAoZXZhbCAkYWNfbGlu
aykgMj4mNTsgfSAmJiB0ZXN0IC1zIGNvbmZ0ZXN0ICYmICguL2NvbmZ0ZXN0
OyBleGl0KSAyPi9kZXYvbnVsbA0KK2lmIHsgKGV2YWwgZWNobyBjb25maWd1
cmU6MTQ2MDogXCIkYWNfbGlua1wiKSAxPiY1OyAoZXZhbCAkYWNfbGluaykg
Mj4mNTsgfSAmJiB0ZXN0IC1zIGNvbmZ0ZXN0ICYmICguL2NvbmZ0ZXN0OyBl
eGl0KSAyPi9kZXYvbnVsbA0KIHRoZW4NCiAgIDoNCiBlbHNlDQpAQCAtMTQ2
MSwxNyArMTQ4MywxNyBAQA0KIGRvDQogYWNfc2FmZT1gZWNobyAiJGFjX2hk
ciIgfCBzZWQgJ3klLi8rLSVfX3BfJSdgDQogZWNobyAkYWNfbiAiY2hlY2tp
bmcgZm9yICRhY19oZHIiIi4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNvbmZp
Z3VyZToxNDY1OiBjaGVja2luZyBmb3IgJGFjX2hkciIgPiY1DQorZWNobyAi
Y29uZmlndXJlOjE0ODc6IGNoZWNraW5nIGZvciAkYWNfaGRyIiA+JjUNCiBp
ZiBldmFsICJ0ZXN0IFwiYGVjaG8gJyQnJ3snYWNfY3ZfaGVhZGVyXyRhY19z
YWZlJytzZXR9J2BcIiA9IHNldCI7IHRoZW4NCiAgIGVjaG8gJGFjX24gIihj
YWNoZWQpICRhY19jIiAxPiY2DQogZWxzZQ0KICAgY2F0ID4gY29uZnRlc3Qu
JGFjX2V4dCA8PEVPRg0KLSNsaW5lIDE0NzAgImNvbmZpZ3VyZSINCisjbGlu
ZSAxNDkyICJjb25maWd1cmUiDQogI2luY2x1ZGUgImNvbmZkZWZzLmgiDQog
I2luY2x1ZGUgPCRhY19oZHI+DQogRU9GDQogYWNfdHJ5PSIkYWNfY3BwIGNv
bmZ0ZXN0LiRhY19leHQgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dCINCi17
IChldmFsIGVjaG8gY29uZmlndXJlOjE0NzU6IFwiJGFjX3RyeVwiKSAxPiY1
OyAoZXZhbCAkYWNfdHJ5KSAyPiY1OyB9DQoreyAoZXZhbCBlY2hvIGNvbmZp
Z3VyZToxNDk3OiBcIiRhY190cnlcIikgMT4mNTsgKGV2YWwgJGFjX3RyeSkg
Mj4mNTsgfQ0KIGFjX2Vycj1gZ3JlcCAtdiAnXiAqKycgY29uZnRlc3Qub3V0
YA0KIGlmIHRlc3QgLXogIiRhY19lcnIiOyB0aGVuDQogICBybSAtcmYgY29u
ZnRlc3QqDQpAQCAtMTUwMCwxMiArMTUyMiwxMiBAQA0KIA0KICMgQ2hlY2tz
IGZvciB0eXBlZGVmcywgc3RydWN0dXJlcywgYW5kIGNvbXBpbGVyIGNoYXJh
Y3RlcmlzdGljcy4NCiBlY2hvICRhY19uICJjaGVja2luZyBmb3IgdWlkX3Qg
aW4gc3lzL3R5cGVzLmgiIi4uLiAkYWNfYyIgMT4mNg0KLWVjaG8gImNvbmZp
Z3VyZToxNTA0OiBjaGVja2luZyBmb3IgdWlkX3QgaW4gc3lzL3R5cGVzLmgi
ID4mNQ0KK2VjaG8gImNvbmZpZ3VyZToxNTI2OiBjaGVja2luZyBmb3IgdWlk
X3QgaW4gc3lzL3R5cGVzLmgiID4mNQ0KIGlmIGV2YWwgInRlc3QgXCJgZWNo
byAnJCcneydhY19jdl90eXBlX3VpZF90JytzZXR9J2BcIiA9IHNldCI7IHRo
ZW4NCiAgIGVjaG8gJGFjX24gIihjYWNoZWQpICRhY19jIiAxPiY2DQogZWxz
ZQ0KICAgY2F0ID4gY29uZnRlc3QuJGFjX2V4dCA8PEVPRg0KLSNsaW5lIDE1
MDkgImNvbmZpZ3VyZSINCisjbGluZSAxNTMxICJjb25maWd1cmUiDQogI2lu
Y2x1ZGUgImNvbmZkZWZzLmgiDQogI2luY2x1ZGUgPHN5cy90eXBlcy5oPg0K
IEVPRg0KQEAgLTE1MzQsNyArMTU1Niw3IEBADQogZmkNCiANCiBlY2hvICRh
Y19uICJjaGVja2luZyB0eXBlIG9mIGFycmF5IGFyZ3VtZW50IHRvIGdldGdy
b3VwcyIiLi4uICRhY19jIiAxPiY2DQotZWNobyAiY29uZmlndXJlOjE1Mzg6
IGNoZWNraW5nIHR5cGUgb2YgYXJyYXkgYXJndW1lbnQgdG8gZ2V0Z3JvdXBz
IiA+JjUNCitlY2hvICJjb25maWd1cmU6MTU2MDogY2hlY2tpbmcgdHlwZSBv
ZiBhcnJheSBhcmd1bWVudCB0byBnZXRncm91cHMiID4mNQ0KIGlmIGV2YWwg
InRlc3QgXCJgZWNobyAnJCcneydhY19jdl90eXBlX2dldGdyb3Vwcycrc2V0
fSdgXCIgPSBzZXQiOyB0aGVuDQogICBlY2hvICRhY19uICIoY2FjaGVkKSAk
YWNfYyIgMT4mNg0KIGVsc2UNCkBAIC0xNTQyLDcgKzE1NjQsNyBAQA0KICAg
YWNfY3ZfdHlwZV9nZXRncm91cHM9Y3Jvc3MNCiBlbHNlDQogICBjYXQgPiBj
b25mdGVzdC4kYWNfZXh0IDw8RU9GDQotI2xpbmUgMTU0NiAiY29uZmlndXJl
Ig0KKyNsaW5lIDE1NjggImNvbmZpZ3VyZSINCiAjaW5jbHVkZSAiY29uZmRl
ZnMuaCINCiANCiAvKiBUaGFua3MgdG8gTWlrZSBSZW5kZWxsIGZvciB0aGlz
IHRlc3QuICAqLw0KQEAgLTE1NjcsNyArMTU4OSw3IEBADQogfQ0KIA0KIEVP
Rg0KLWlmIHsgKGV2YWwgZWNobyBjb25maWd1cmU6MTU3MTogXCIkYWNfbGlu
a1wiKSAxPiY1OyAoZXZhbCAkYWNfbGluaykgMj4mNTsgfSAmJiB0ZXN0IC1z
IGNvbmZ0ZXN0ICYmICguL2NvbmZ0ZXN0OyBleGl0KSAyPi9kZXYvbnVsbA0K
K2lmIHsgKGV2YWwgZWNobyBjb25maWd1cmU6MTU5MzogXCIkYWNfbGlua1wi
KSAxPiY1OyAoZXZhbCAkYWNfbGluaykgMj4mNTsgfSAmJiB0ZXN0IC1zIGNv
bmZ0ZXN0ICYmICguL2NvbmZ0ZXN0OyBleGl0KSAyPi9kZXYvbnVsbA0KIHRo
ZW4NCiAgICAgYWNfY3ZfdHlwZV9nZXRncm91cHM9Z2lkX3QNCiBlbHNlDQpA
QCAtMTU4MSw3ICsxNjAzLDcgQEANCiANCiBpZiB0ZXN0ICRhY19jdl90eXBl
X2dldGdyb3VwcyA9IGNyb3NzOyB0aGVuDQogICAgICAgICBjYXQgPiBjb25m
dGVzdC4kYWNfZXh0IDw8RU9GDQotI2xpbmUgMTU4NSAiY29uZmlndXJlIg0K
KyNsaW5lIDE2MDcgImNvbmZpZ3VyZSINCiAjaW5jbHVkZSAiY29uZmRlZnMu
aCINCiAjaW5jbHVkZSA8dW5pc3RkLmg+DQogRU9GDQpAQCAtMTYwNywxMiAr
MTYyOSwxMiBAQA0KIA0KICMgQ2hlY2tzIGZvciBsaWJyYXJ5IGZ1bmN0aW9u
cy4NCiBlY2hvICRhY19uICJjaGVja2luZyBmb3IgdnByaW50ZiIiLi4uICRh
Y19jIiAxPiY2DQotZWNobyAiY29uZmlndXJlOjE2MTE6IGNoZWNraW5nIGZv
ciB2cHJpbnRmIiA+JjUNCitlY2hvICJjb25maWd1cmU6MTYzMzogY2hlY2tp
bmcgZm9yIHZwcmludGYiID4mNQ0KIGlmIGV2YWwgInRlc3QgXCJgZWNobyAn
JCcneydhY19jdl9mdW5jX3ZwcmludGYnK3NldH0nYFwiID0gc2V0IjsgdGhl
bg0KICAgZWNobyAkYWNfbiAiKGNhY2hlZCkgJGFjX2MiIDE+JjYNCiBlbHNl
DQogICBjYXQgPiBjb25mdGVzdC4kYWNfZXh0IDw8RU9GDQotI2xpbmUgMTYx
NiAiY29uZmlndXJlIg0KKyNsaW5lIDE2MzggImNvbmZpZ3VyZSINCiAjaW5j
bHVkZSAiY29uZmRlZnMuaCINCiAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmlu
ZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMs
DQogICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIgdnByaW50Zigp
OyBiZWxvdy4gICovDQpAQCAtMTYzNSw3ICsxNjU3LDcgQEANCiANCiA7IHJl
dHVybiAwOyB9DQogRU9GDQotaWYgeyAoZXZhbCBlY2hvIGNvbmZpZ3VyZTox
NjM5OiBcIiRhY19saW5rXCIpIDE+JjU7IChldmFsICRhY19saW5rKSAyPiY1
OyB9ICYmIHRlc3QgLXMgY29uZnRlc3Q7IHRoZW4NCitpZiB7IChldmFsIGVj
aG8gY29uZmlndXJlOjE2NjE6IFwiJGFjX2xpbmtcIikgMT4mNTsgKGV2YWwg
JGFjX2xpbmspIDI+JjU7IH0gJiYgdGVzdCAtcyBjb25mdGVzdDsgdGhlbg0K
ICAgcm0gLXJmIGNvbmZ0ZXN0Kg0KICAgZXZhbCAiYWNfY3ZfZnVuY192cHJp
bnRmPXllcyINCiBlbHNlDQpAQCAtMTY1OSwxMiArMTY4MSwxMiBAQA0KIA0K
IGlmIHRlc3QgIiRhY19jdl9mdW5jX3ZwcmludGYiICE9IHllczsgdGhlbg0K
IGVjaG8gJGFjX24gImNoZWNraW5nIGZvciBfZG9wcm50IiIuLi4gJGFjX2Mi
IDE+JjYNCi1lY2hvICJjb25maWd1cmU6MTY2MzogY2hlY2tpbmcgZm9yIF9k
b3BybnQiID4mNQ0KK2VjaG8gImNvbmZpZ3VyZToxNjg1OiBjaGVja2luZyBm
b3IgX2RvcHJudCIgPiY1DQogaWYgZXZhbCAidGVzdCBcImBlY2hvICckJyd7
J2FjX2N2X2Z1bmNfX2RvcHJudCcrc2V0fSdgXCIgPSBzZXQiOyB0aGVuDQog
ICBlY2hvICRhY19uICIoY2FjaGVkKSAkYWNfYyIgMT4mNg0KIGVsc2UNCiAg
IGNhdCA+IGNvbmZ0ZXN0LiRhY19leHQgPDxFT0YNCi0jbGluZSAxNjY4ICJj
b25maWd1cmUiDQorI2xpbmUgMTY5MCAiY29uZmlndXJlIg0KICNpbmNsdWRl
ICJjb25mZGVmcy5oIg0KIC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9f
c3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywNCiAg
ICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBfZG9wcm50KCk7IGJl
bG93LiAgKi8NCkBAIC0xNjg3LDcgKzE3MDksNyBAQA0KIA0KIDsgcmV0dXJu
IDA7IH0NCiBFT0YNCi1pZiB7IChldmFsIGVjaG8gY29uZmlndXJlOjE2OTE6
IFwiJGFjX2xpbmtcIikgMT4mNTsgKGV2YWwgJGFjX2xpbmspIDI+JjU7IH0g
JiYgdGVzdCAtcyBjb25mdGVzdDsgdGhlbg0KK2lmIHsgKGV2YWwgZWNobyBj
b25maWd1cmU6MTcxMzogXCIkYWNfbGlua1wiKSAxPiY1OyAoZXZhbCAkYWNf
bGluaykgMj4mNTsgfSAmJiB0ZXN0IC1zIGNvbmZ0ZXN0OyB0aGVuDQogICBy
bSAtcmYgY29uZnRlc3QqDQogICBldmFsICJhY19jdl9mdW5jX19kb3BybnQ9
eWVzIg0KIGVsc2UNCkBAIC0xODcxLDYgKzE4OTMsNyBAQA0KIHMlQE1BSUxN
QU5fR0lEQCUkTUFJTE1BTl9HSUQlZw0KIHMlQE1BSUxfR0lEQCUkTUFJTF9H
SUQlZw0KIHMlQENHSV9HSURAJSRDR0lfR0lEJWcNCitzJUBDR0lFWFRAJSRD
R0lFWFQlZw0KIHMlQEZRRE5AJSRGUUROJWcNCiBzJUBVUkxAJSRVUkwlZw0K
IHMlQENQUEAlJENQUCVnDQpkaWZmIC1icnVOIG1haWxtYW4ub3JpZy9jb25m
aWd1cmUuaW4gbWFpbG1hbi9jb25maWd1cmUuaW4NCi0tLSBtYWlsbWFuLm9y
aWcvY29uZmlndXJlLmluCVNhdCBBdWcgIDggMTQ6MTU6MjggMTk5OA0KKysr
IG1haWxtYW4vY29uZmlndXJlLmluCU1vbiBBdWcgMzEgMTM6NTA6MDYgMTk5
OA0KQEAgLTI1NSw2ICsyNTUsMjAgQEANCiANCiAjTU1fRklORF9VU0VSX0lE
KEFMSUFTX1VJRCwgbWFpbG1hbiwgYWxpYXNfd3JhcHBlcikNCiAjTU1fRklO
RF9HUk9VUF9JRChBTElBU19HSUQsIG1haWwsIGFsaWFzX3dyYXBwZXIpDQor
DQorIyBDR0kgZXh0ZW5zaW9uIGNoZWNraW5nDQorQUNfU1VCU1QoQ0dJRVhU
KQ0KK0FDX01TR19DSEVDS0lORyhmb3IgQ0dJIGV4dGVuc2lvbikNCitBQ19B
UkdfV0lUSChjZ2ktZXh0LCBbDQorCS0td2l0aC1jZ2ktZXh0ICAgICAgICBz
cGVjaWZ5IGV4dGVuc2lvbnMgb2YgQ0dJIHByb2dyYW1zXSkNCitpZiB0ZXN0
IC16ICIkd2l0aF9jZ2lfZXh0Ig0KK3RoZW4NCisgICAgQ0dJRVhUPScnDQor
ICAgIHdpdGhfY2dpX2V4dD0nbm8nDQorZWxzZQ0KKyAgICBDR0lFWFQ9JHdp
dGhfY2dpX2V4dA0KK2ZpDQorQUNfTVNHX1JFU1VMVCgkd2l0aF9jZ2lfZXh0
KQ0KIA0KICMgZmlndXJlIG91dCB0aGUgREVGQVVMVF9IT1NUX05BTUUgYW5k
IERFRkFVTFRfVVJMDQogQUNfU1VCU1QoRlFETikNCmRpZmYgLWJydU4gbWFp
bG1hbi5vcmlnL3NjcmlwdHMvTWFrZWZpbGUuaW4gbWFpbG1hbi9zY3JpcHRz
L01ha2VmaWxlLmluDQotLS0gbWFpbG1hbi5vcmlnL3NjcmlwdHMvTWFrZWZp
bGUuaW4JU2F0IEF1ZyAgOCAxNDoxOTo1NCAxOTk4DQorKysgbWFpbG1hbi9z
Y3JpcHRzL01ha2VmaWxlLmluCU1vbiBBdWcgMzEgMTM6NTA6MDYgMTk5OA0K
QEAgLTMxLDYgKzMxLDcgQEANCiBDQz0JCUBDQ0ANCiBDSE1PRD0gIAlAQ0hN
T0RADQogSU5TVEFMTD0JQElOU1RBTExADQorQ0dJRVhUPQkJQENHSUVYVEAN
CiANCiBERUZTPSAgIAlAREVGU0ANCiANCmRpZmYgLWJydU4gbWFpbG1hbi5v
cmlnL3NyYy9NYWtlZmlsZS5pbiBtYWlsbWFuL3NyYy9NYWtlZmlsZS5pbg0K
LS0tIG1haWxtYW4ub3JpZy9zcmMvTWFrZWZpbGUuaW4JU2F0IEF1ZyAgOCAx
NDoyMDoxNiAxOTk4DQorKysgbWFpbG1hbi9zcmMvTWFrZWZpbGUuaW4JTW9u
IEF1ZyAzMSAxMzo1MDowNiAxOTk4DQpAQCAtNDUsNyArNDUsNyBAQA0KIE9Q
VD0JCUBPUFRADQogQ0ZMQUdTPQkJJChPUFQpICQoREVGUykNCiBDR0lESVI9
IAkkKGV4ZWNfcHJlZml4KS9jZ2ktYmluDQotQ0dJRVhUPQkJDQorQ0dJRVhU
PQkJQENHSUVYVEANCiBNQUlMRElSPQkkKGV4ZWNfcHJlZml4KS9tYWlsDQog
DQogU0hFTEw9CQkvYmluL3NoDQo=
---456965764-1528156929-905469768=:8757--