From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.2 required=5.0 tests=ALL_TRUSTED, DKIM_ADSP_NXDOMAIN autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 19065 invoked from network); 17 Oct 2023 14:20:51 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 17 Oct 2023 14:20:51 -0000 Content-Type: multipart/mixed; boundary="===============0392352478428270267==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_Flask=3A_update_to_3=2E0=2C_clean_up_stale_dependants?= To: ml@inbox.vuxu.org From: ahesford Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 17 Oct 2023 16:20:51 +0200 List-Id: Message-ID: <20231017142051.5WiTu5ifVICiMJSMfkQsk8w0OG8Xatx86U1LRk1WqsA@z> GitHub notification mails are now in MIME to allow UTF8. --===============0392352478428270267== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgYWhlc2ZvcmQgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2Fo ZXNmb3JkL3ZvaWQtcGFja2FnZXMgZmxhc2sKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgv dm9pZC1wYWNrYWdlcy9wdWxsLzQ2NzM2CgpGbGFzazogdXBkYXRlIHRvIDMuMCwgY2xlYW4gdXAg c3RhbGUgZGVwZW5kYW50cwpGbGFzayBhbmQgV2Vya3pldWcgMyBkcm9wIHNvbWUgZGVwcmVjYXRl ZCBpbnRlcmZhY2VzIGFuZCBicmVhayBzb21lIG9sZCBwYWNrYWdlcywgYnV0IGEgbG90IG9mIHRo ZXNlIGFyZSBlZmZlY3RpdmVseSBkZWFkIGFueXdheS4NCg0KIyMgVGVzdGluZyB0aGUgY2hhbmdl cw0KLSBJIHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKmluIHByb2dyZXNzKioNCg0K VGhlIHJlc3VsdHMgb2YgYHhicHMtc3JjYCBjaGVjayBvbiB0aGUgZGVwZW5kYW50cyBvZiBgcHl0 aG9uMy1GbGFza2AgYW5kIGBweXRob24zLVdlcmt6ZXVnYCBhcmUgbm90ZWQgYmVsb3cuDQoNCiMj IyBGbGFzayBkZXBlbmRhbnRzDQotIFsgXSBldGVzeW5jLWRhdiAobm8gdGVzdHM7IHZlcnNpb24g cmVzdHJpY3Rpb25zIG9uIEZsYXNrLVdURiBoYXZlIGJlZW4gdmlvbGF0ZWQgc2luY2UgMjAyMi0w OS0wNykNCi0gWyBdIG1rY2hyb21lY2FzdCAobm8gdGVzdHMsIG1heWJlIGFiYW5kb253YXJlKQ0K LSBbIF0gcHl0aG9uMy1GbGFzay1IVFRQQXV0aCAobm8gdGVzdHMpDQotIFsgXSBweXRob24zLUZs YXNrLVJFU1RmdWwgKHRlc3RzIGFyZSBicm9rZW4gd2l0aCBQeXRob24gMy4xMikNCi0gWyBdIHZv bHRyb24gKHRlc3QgZnJhbWV3b3JrIHVuY2VydGFpbikNCi0gW3hdIE9wZW5MUCAoMjMgcHJlLWV4 aXN0aW5nIGZhaWx1cmVzLCAxNyBwcmUtZXhpc3RpbmcgZXJyb3JzKQ0KLSBbeF0gZmF2YSAoNCBw cmUtZXhpc3RpbmcgZmFpbHVyZXMpDQotIFt4XSBncmlwDQotIFt4XSBpbXBhY2tldCAoMTM5NiBw cmUtZXhpc3RpbmcgZmFpbHVyZXMpDQotIFt4XSBtaXRtcHJveHkgKDMgcHJlLWV4aXN0aW5nIGZh aWx1cmVzKQ0KLSBbeF0gcHl0aG9uMy1GbGFzay1CYWJlbA0KLSBbeF0gcHl0aG9uMy1GbGFzay1D b3JzDQotIFt4XSBweXRob24zLUZsYXNrLUxvZ2luDQotIFt4XSBweXRob24zLUZsYXNrLVdURg0K LSBbeF0gcHl0aG9uMy1odHRwYmluDQoNCiMjIyBXZXJremV1ZyBEZXBlbmRhbnRzDQotIFt4XSBw eXRob24zLW9wZW5hcGktY29yZQ0KLSBbeF0gcHl0aG9uMy1weXRlc3QtaHR0cHNlcnZlcg0KLSBb eF0gcHl0aG9uMy1weXRlc3QtbG9jYWxzZXJ2ZXINCi0gW3hdIHB5dGhvbjMtcXVhcnQNCg0KIyMg UmVtb3ZlZCBQYWNrYWdlcw0KLSBweXRob24zLUZsYXNrLVVzZXINCi0gcHl0aG9uMy1GbGFzay1N YWlsDQotIHB5dGhvbjMtRmxhc2stU2NyaXB0DQotIHB5dGhvbjMtRmxhc2stT0F1dGhsaWINCi0g cHl0aG9uMy1GbGFzay1Bc3NldHMNCi0gcHl0aG9uMy1GbGFzay1TUUxBbGNoZW15DQotIHB5dGhv bjMtc3Rvcm1zc2gNCgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQt bGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ2NzM2LnBhdGNoIGlzIGF0dGFjaGVk --===============0392352478428270267== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-flask-46736.patch" RnJvbSBkMzQ5YmY0ZjQwMWRjZTVmZWIxNGVjODBhN2ViMjJmMmRmYTBmOWI0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3Jn PgpEYXRlOiBNb24sIDE2IE9jdCAyMDIzIDEwOjQ5OjM4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAw MS8xOF0gcHl0aG9uMy1GbGFzay1Bc3NldHM6IHJlbW92ZSBwYWNrYWdlCgpUaGlzIHBhY2thZ2Ug aGFzbid0IGJlZW4gbWVhbmluZ2Z1bGx5IHRvdWNoZWQgc2luY2UgMjAxNi0wOC0yNS4KLS0tCiBz cmNwa2dzL3B5dGhvbjMtRmxhc2stQXNzZXRzL3RlbXBsYXRlIHwgMTcgLS0tLS0tLS0tLS0tLS0t LS0KIHNyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSAgICAgfCAgMSArCiAyIGZpbGVz IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxNyBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL3B5dGhvbjMtRmxhc2stQXNzZXRzL3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9weXRob24zLUZsYXNrLUFzc2V0cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcHl0aG9uMy1G bGFzay1Bc3NldHMvdGVtcGxhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU0YTRi NWM3MmY2NjIuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9weXRob24zLUZsYXNrLUFzc2V0 cy90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLSMgVGVtcGxhdGUgZmls ZSBmb3IgJ3B5dGhvbjMtRmxhc2stQXNzZXRzJwotcGtnbmFtZT1weXRob24zLUZsYXNrLUFzc2V0 cwotdmVyc2lvbj0wLjEyCi1yZXZpc2lvbj05Ci1idWlsZF9zdHlsZT1weXRob24zLW1vZHVsZQot aG9zdG1ha2VkZXBlbmRzPSJweXRob24zLXNldHVwdG9vbHMiCi1kZXBlbmRzPSJweXRob24zLUZs YXNrIHB5dGhvbjMtd2ViYXNzZXRzIgotc2hvcnRfZGVzYz0iQXNzZXQgbWFuYWdlbWVudCBmb3Ig Rmxhc2sgKFB5dGhvbjMpIgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgu b3JnPiIKLWxpY2Vuc2U9IkJTRC0yLUNsYXVzZSIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5j b20vbWlyYWNsZTJrL2ZsYXNrLWFzc2V0cyIKLWRpc3RmaWxlcz0iJHtQWVBJX1NJVEV9L0YvRmxh c2stQXNzZXRzL0ZsYXNrLUFzc2V0cy0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTYwMzE1 MjdiODlmYjM1MDlkMTU4MWQ5MzJhZmZhNWE3OWRkMzQ4Y2ZmZmI1OGQwYWVmOTlhNDM0NjFkNDc4 NDcKLQotcG9zdF9pbnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VOU0UKLX0KZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNr YWdlcy90ZW1wbGF0ZQppbmRleCAyMGVhMjg4ODFmMDQ2Li5lNjExNTc2YTU5MWIzIDEwMDY0NAot LS0gYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZW1v dmVkLXBhY2thZ2VzL3RlbXBsYXRlCkBAIC01ODcsNiArNTg3LDcgQEAgcmVwbGFjZXM9IgogIHB5 dGhvbi14bGliPD0wLjI5XzEKICBweXRob24temlwcDw9MS4yLjBfMgogIHB5dGhvbjMtRGphbmdv PD0zLjAuN18yCisgcHl0aG9uMy1GbGFzay1Bc3NldHM8PTAuMTJfOQogIHB5dGhvbjMtU1BBUlFM V3JhcHBlcjw9MS44LjRfNAogIHB5dGhvbjMtYWlvaHR0cC1jb3JzMjw9MC43LjBfMwogIHB5dGhv bjMtYWlvaHR0cDI8PTIuMy4xMF80CgpGcm9tIDAyNzcwYjdjODZlYWVjZTcxZWFmMjViMWEyNDIw NWJjODM3NDM1NGMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVz Zm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMTYgT2N0IDIwMjMgMTU6NTQ6MzEg LTA0MDAKU3ViamVjdDogW1BBVENIIDAyLzE4XSBweXRob24zLUZsYXNrLVVzZXI6IHJlbW92ZSBw YWNrYWdlCgpUaGlzIHBhY2thZ2UgaXNuJ3QgcmVxdWlyZWQgYnkgYW55IG90aGVycyBhbmQgaGFz bid0IGJlZW4gbWVhbmluZ2Z1bGx5CnRvdWNoZWQgc2luY2UgMjAyMC0wNy0yNy4KLS0tCiBzcmNw a2dzL3B5dGhvbjMtRmxhc2stVXNlci90ZW1wbGF0ZSB8IDE4IC0tLS0tLS0tLS0tLS0tLS0tLQog c3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlICAgfCAgMSArCiAyIGZpbGVzIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxOCBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL3B5dGhvbjMtRmxhc2stVXNlci90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv cHl0aG9uMy1GbGFzay1Vc2VyL3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLUZsYXNrLVVzZXIv dGVtcGxhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMzBmNjIzNzUzZDIuLjAw MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9weXRob24zLUZsYXNrLVVzZXIvdGVtcGxhdGUKKysr IC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi0jIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24z LUZsYXNrLVVzZXInCi1wa2duYW1lPXB5dGhvbjMtRmxhc2stVXNlcgotdmVyc2lvbj0xLjAuMi4y Ci1yZXZpc2lvbj02Ci1idWlsZF9zdHlsZT1weXRob24zLW1vZHVsZQotaG9zdG1ha2VkZXBlbmRz PSJweXRob24zLXNldHVwdG9vbHMgcHl0aG9uMy1GbGFzay1Mb2dpbiBweXRob24zLXdoZWVsIgot ZGVwZW5kcz0icHl0aG9uMy1GbGFzayBweXRob24zLUZsYXNrLUxvZ2luIHB5dGhvbjMtRmxhc2st V1RGCi0gcHl0aG9uMy1GbGFzay1TUUxBbGNoZW15IHB5dGhvbjMtRmxhc2stTWFpbCBweXRob24z LUZsYXNrLUJhYmVsIgotc2hvcnRfZGVzYz0iVXNlciBzZXNzaW9uIG1hbmFnZW1lbnQgZm9yIEZs YXNrIChQeXRob24zKSIKLW1haW50YWluZXI9InB1bHV4IDxwdWx1eEBwZjRzaC5kZT4iCi1saWNl bnNlPSJNSVQiCi1ob21lcGFnZT0iaHR0cHM6Ly9mbGFzay11c2VyLnJlYWR0aGVkb2NzLmlvL2Vu L2xhdGVzdC8iCi1kaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS9GL0ZsYXNrLVVzZXIvRmxhc2stVXNl ci0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWM5Nzg1ZmViYzJmYzdjYTE1YzY5Y2ZmZjFj OGRhYmMyNzg4ZjI1MDQzYjU0YTMzZjczYTZjMmE5ZGFmN2ZiZTQKLQotcG9zdF9pbnN0YWxsKCkg ewotCXZsaWNlbnNlIExJQ0VOU0UudHh0Ci19CmRpZmYgLS1naXQgYS9zcmNwa2dzL3JlbW92ZWQt cGFja2FnZXMvdGVtcGxhdGUgYi9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKaW5k ZXggZTYxMTU3NmE1OTFiMy4uZTA2NTg1M2E1YjQ1MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9yZW1v dmVkLXBhY2thZ2VzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1w bGF0ZQpAQCAtNTg4LDYgKzU4OCw3IEBAIHJlcGxhY2VzPSIKICBweXRob24temlwcDw9MS4yLjBf MgogIHB5dGhvbjMtRGphbmdvPD0zLjAuN18yCiAgcHl0aG9uMy1GbGFzay1Bc3NldHM8PTAuMTJf OQorIHB5dGhvbjMtRmxhc2stVXNlcjw9MS4wLjIuMl82CiAgcHl0aG9uMy1TUEFSUUxXcmFwcGVy PD0xLjguNF80CiAgcHl0aG9uMy1haW9odHRwLWNvcnMyPD0wLjcuMF8zCiAgcHl0aG9uMy1haW9o dHRwMjw9Mi4zLjEwXzQKCkZyb20gY2VhMGZlMmM4YjAyZTcyMDU0NjJlYjY3YmU3ZTAzOWNjNzRk Zjk5MCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8 YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAxNiBPY3QgMjAyMyAxNTo1Nzo1MCAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggMDMvMThdIHB5dGhvbjMtRmxhc2stTWFpbDogcmVtb3ZlIHBhY2thZ2UK ClRoaXMgcGFja2FnZSBoYXNuJ3QgYmVlbiB1cGRhdGVkIHNpbmNlIDIwMTQgYW5kIGhhc24ndCBi ZWVuIG1lYW5pbmdmdWxseQp0b3VjaGVkIHNpbmNlIGl0cyBhZGRpdGlvbiB0byB0aGUgVm9pZCBy ZXBvc2l0b3J5IGFuZCBpcyBub3QgcmVxdWlyZWQgYnkKYW55IG90aGVyIHBhY2thZ2VzLgotLS0K IHNyY3BrZ3MvcHl0aG9uMy1GbGFzay1NYWlsL3RlbXBsYXRlIHwgMTcgLS0tLS0tLS0tLS0tLS0t LS0KIHNyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSAgIHwgIDEgKwogMiBmaWxlcyBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMTcgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9weXRob24zLUZsYXNrLU1haWwvdGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNw a2dzL3B5dGhvbjMtRmxhc2stTWFpbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1N YWlsL3RlbXBsYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MTY5OWQzYjlkMmE0 Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1NYWlsL3RlbXBsYXRl CisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotIyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0 aG9uMy1GbGFzay1NYWlsJwotcGtnbmFtZT1weXRob24zLUZsYXNrLU1haWwKLXZlcnNpb249MC45 LjEKLXJldmlzaW9uPTUKLWJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCi1ob3N0bWFrZWRlcGVu ZHM9InB5dGhvbjMtc2V0dXB0b29scyIKLWRlcGVuZHM9InB5dGhvbjMtRmxhc2siCi1zaG9ydF9k ZXNjPSJGbGFzayBleHRlbnNpb24gZm9yIHNlbmRpbmcgZW1haWwgKHB5dGhvbjMpIgotbWFpbnRh aW5lcj0icHVsdXggPHB1bHV4QHBmNHNoLmRlPiIKLWxpY2Vuc2U9IkJTRC0yLUNsYXVzZSIKLWhv bWVwYWdlPSJodHRwczovL3B5dGhvbmhvc3RlZC5vcmcvZmxhc2stbWFpbC8iCi1kaXN0ZmlsZXM9 IiR7UFlQSV9TSVRFfS9GL0ZsYXNrLU1haWwvRmxhc2stTWFpbC0ke3ZlcnNpb259LnRhci5neiIK LWNoZWNrc3VtPTIyZTVlYjlhOTQwYmY0MDdiY2YzMDQxMGVjYzM3MDhmM2M1NmNjNDRiMjljMzRl MTcyNmZlODUwMDY5MzVmNDEKLQotcG9zdF9pbnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VOU0UK LX0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSBiL3NyY3Br Z3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQppbmRleCBlMDY1ODUzYTViNDUzLi43ZmIzZWZm ZjNkMjdhIDEwMDY0NAotLS0gYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCkBAIC01ODgsNiArNTg4LDcgQEAg cmVwbGFjZXM9IgogIHB5dGhvbi16aXBwPD0xLjIuMF8yCiAgcHl0aG9uMy1EamFuZ288PTMuMC43 XzIKICBweXRob24zLUZsYXNrLUFzc2V0czw9MC4xMl85CisgcHl0aG9uMy1GbGFzay1NYWlsPD0w LjkuMV81CiAgcHl0aG9uMy1GbGFzay1Vc2VyPD0xLjAuMi4yXzYKICBweXRob24zLVNQQVJRTFdy YXBwZXI8PTEuOC40XzQKICBweXRob24zLWFpb2h0dHAtY29yczI8PTAuNy4wXzMKCkZyb20gNmJj YmQyMzgxMGUxMzY5YWZkYTQ5NjdlOTExYjczNjg4ZmU3MzY0NCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTog TW9uLCAxNiBPY3QgMjAyMyAxNjowMzoyOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMThdIHB5 dGhvbjMtRmxhc2stT0F1dGhsaWI6IHJlbW92ZSBwYWNrYWdlCgpUaGlzIHBhY2thZ2UgaGFzIG5v dCBiZWVuIG1lYW5pbmdmdWxseSB0b3VjaGVkIHNpbmNlIGl0IHdhcyBhZGRlZCB0byB0aGUKcmVw b3NpdG9yeSBvbiAyMDIwLTExLTI5LCBub3RoaW5nIGRlcGVuZHMgb24gaXQsIGFuZCB1cHN0cmVh bSByZWNvbW1lbmRzCnVzaW5nIGFuIGFsdGVybmF0aXZlIHBhY2thZ2UgYW55d2F5LgotLS0KIHNy Y3BrZ3MvcHl0aG9uMy1GbGFzay1PQXV0aGxpYi90ZW1wbGF0ZSB8IDE4IC0tLS0tLS0tLS0tLS0t LS0tLQogc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlICAgICAgIHwgIDEgKwogMiBm aWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMTggZGVsZXRpb25zKC0pCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9weXRob24zLUZsYXNrLU9BdXRobGliL3RlbXBsYXRlCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9weXRob24zLUZsYXNrLU9BdXRobGliL3RlbXBsYXRlIGIvc3JjcGtncy9w eXRob24zLUZsYXNrLU9BdXRobGliL3RlbXBsYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAzYWU1MzY1ZWYwZDY0Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1G bGFzay1PQXV0aGxpYi90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLSMg VGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtRmxhc2stT0F1dGhsaWInCi1wa2duYW1lPXB5dGhv bjMtRmxhc2stT0F1dGhsaWIKLXZlcnNpb249MC45LjYKLXJldmlzaW9uPTQKLWJ1aWxkX3N0eWxl PXB5dGhvbjMtbW9kdWxlCi1ob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0b29scyIKLWRl cGVuZHM9InB5dGhvbjMtRmxhc2sgcHl0aG9uMy1yZXF1ZXN0cy1vYXV0aGxpYiIKLXNob3J0X2Rl c2M9Ik9BdXRobGliIGZvciBGbGFzayAoUHl0aG9uMykiCi1tYWludGFpbmVyPSJPcnBoYW5lZCA8 b3JwaGFuQHZvaWRsaW51eC5vcmc+IgotbGljZW5zZT0iQlNELTMtQ2xhdXNlIgotaG9tZXBhZ2U9 Imh0dHBzOi8vZ2l0aHViLmNvbS9sZXB0dXJlL2ZsYXNrLW9hdXRobGliIgotY2hhbmdlbG9nPSJo dHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbGVwdHVyZS9mbGFzay1vYXV0aGxpYi9t YXN0ZXIvQ0hBTkdFUy5yc3QiCi1kaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS9GL0ZsYXNrLU9BdXRo bGliL0ZsYXNrLU9BdXRobGliLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09NWJiNzljOGE4 ZTY3MGMyZWI0Y2I1NTNkZmMzMjgzYjZjOGQxMjAyZjY3NDkzNDY3NmRjMTczY2VlOTRmZTM5Ywot Ci1wb3N0X2luc3RhbGwoKSB7Ci0JdmxpY2Vuc2UgTElDRU5TRQotfQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlIGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2Vz L3RlbXBsYXRlCmluZGV4IDdmYjNlZmZmM2QyN2EuLjQ3ZDhhMmVhNGViMzQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3JlbW92ZWQt cGFja2FnZXMvdGVtcGxhdGUKQEAgLTU4OSw2ICs1ODksNyBAQCByZXBsYWNlcz0iCiAgcHl0aG9u My1EamFuZ288PTMuMC43XzIKICBweXRob24zLUZsYXNrLUFzc2V0czw9MC4xMl85CiAgcHl0aG9u My1GbGFzay1NYWlsPD0wLjkuMV81CisgcHl0aG9uMy1GbGFzay1PQXV0aGxpYjw9MC45LjZfNAog IHB5dGhvbjMtRmxhc2stVXNlcjw9MS4wLjIuMl82CiAgcHl0aG9uMy1TUEFSUUxXcmFwcGVyPD0x LjguNF80CiAgcHl0aG9uMy1haW9odHRwLWNvcnMyPD0wLjcuMF8zCgpGcm9tIDAwOTEwYjliOTY1 YThkZjBiY2Y2MGVmZjYwOGQ5NzBhYWIxYjU2NmYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMTYg T2N0IDIwMjMgMTY6MTA6MzEgLTA0MDAKU3ViamVjdDogW1BBVENIIDA1LzE4XSBweXRob24zLUZs YXNrLVNjcmlwdDogcmVtb3ZlIHBhY2thZ2UKClRoZSBwYWNrYWdlIGhhc24ndCBiZWVuIG1lYW5p bmdmdWxseSB0b3VjaGVkIHNpbmNlIDIwMTctMDktMTMsIG5vdGhpbmcKZGVwZW5kcyBvbiBpdCwg YW5kIHRoZSB1cHN0cmVhbSByZXBvIGhhcyBiZWVuIGFyY2hpdmVkIGZvciAzLjUgeWVhcnMuCi0t LQogc3JjcGtncy9weXRob24zLUZsYXNrLVNjcmlwdC90ZW1wbGF0ZSB8IDE3IC0tLS0tLS0tLS0t LS0tLS0tCiBzcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUgICAgIHwgIDEgKwogMiBm aWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMTcgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9weXRob24zLUZsYXNrLVNjcmlwdC90ZW1wbGF0ZQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1TY3JpcHQvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhv bjMtRmxhc2stU2NyaXB0L3RlbXBsYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw NGZiYmI2ZDQ2ODRiLi4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1T Y3JpcHQvdGVtcGxhdGUKKysrIC9kZXYvbnVsbApAQCAtMSwxNyArMCwwIEBACi0jIFRlbXBsYXRl IGZpbGUgZm9yICdweXRob24zLUZsYXNrLVNjcmlwdCcKLXBrZ25hbWU9cHl0aG9uMy1GbGFzay1T Y3JpcHQKLXZlcnNpb249Mi4wLjYKLXJldmlzaW9uPTcKLWJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9k dWxlCi1ob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0b29scyIKLWRlcGVuZHM9InB5dGhv bjMtRmxhc2siCi1zaG9ydF9kZXNjPSJTY3JpcHRpbmcgc3VwcG9ydCBmb3IgRmxhc2sgKFB5dGhv bjMpIgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKLWxpY2Vu c2U9IkJTRC0zLUNsYXVzZSIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vc211cmZpeC9m bGFzay1zY3JpcHQiCi1kaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS9GL0ZsYXNrLVNjcmlwdC9GbGFz ay1TY3JpcHQtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT02NDI1OTYzZDkxMDU0Y2ZjYzE4 NTgwNzE0MWM3MzE0YTljNWFkNDYzMjU5MTFiZDI0ZGNiNDg5YmQwMTYxYzY1Ci0KLXBvc3RfaW5z dGFsbCgpIHsKLQl2bGljZW5zZSBMSUNFTlNFCi19CmRpZmYgLS1naXQgYS9zcmNwa2dzL3JlbW92 ZWQtcGFja2FnZXMvdGVtcGxhdGUgYi9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUK aW5kZXggNDdkOGEyZWE0ZWIzNC4uYmQ2MzA0OTNiNTk4ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9y ZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90 ZW1wbGF0ZQpAQCAtNTkwLDYgKzU5MCw3IEBAIHJlcGxhY2VzPSIKICBweXRob24zLUZsYXNrLUFz c2V0czw9MC4xMl85CiAgcHl0aG9uMy1GbGFzay1NYWlsPD0wLjkuMV81CiAgcHl0aG9uMy1GbGFz ay1PQXV0aGxpYjw9MC45LjZfNAorIHB5dGhvbjMtRmxhc2stU2NyaXB0PD0yLjAuNl83CiAgcHl0 aG9uMy1GbGFzay1Vc2VyPD0xLjAuMi4yXzYKICBweXRob24zLVNQQVJRTFdyYXBwZXI8PTEuOC40 XzQKICBweXRob24zLWFpb2h0dHAtY29yczI8PTAuNy4wXzMKCkZyb20gOTVmNDliNDhhZDhhZTQ4 MzUwNDQxZTg2MjYzNmQ4YTJhZjc4ZmNkMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog IkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAxNiBPY3Qg MjAyMyAxNjoyOTozOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDYvMThdIHB5dGhvbjMtRmxhc2st U1FMQWxjaGVteTogcmVtb3ZlIHBhY2thZ2UKClRoaXMgcGFja2FnZSBoYXMgbm90IGJlZW4gbWVh bmluZ2Z1bGx5IHRvdWNoZWQgc2luY2UgMjAyMS0wNS0wOCwgbm90aGluZwpkZXBlbmRzIG9uIGl0 LCBpdHMgY3VycmVudCB2ZXJzaW9uIGRvZXMgbm90IGZ1bmN0aW9uIHdpdGggRmxhc2sgMy4wLCBh bmQKbmV3ZXIgdmVyc2lvbnMgcmVxdWlyZSBhbiB1cGRhdGUgdG8gcHl0aG9uMy1TUUxBbGNoZW15 IHRoYXQgd2lsbCBicmVhawpvdGhlciBwYWNrYWdlcyBpbiB0aGUgcmVwb3NpdG9yeS4KLS0tCiBz cmNwa2dzL3B5dGhvbjMtRmxhc2stU1FMQWxjaGVteS90ZW1wbGF0ZSB8IDE4IC0tLS0tLS0tLS0t LS0tLS0tLQogc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlICAgICAgICAgfCAgMSAr CiAyIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxOCBkZWxldGlvbnMoLSkKIGRlbGV0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3B5dGhvbjMtRmxhc2stU1FMQWxjaGVteS90ZW1wbGF0ZQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1TUUxBbGNoZW15L3RlbXBsYXRlIGIv c3JjcGtncy9weXRob24zLUZsYXNrLVNRTEFsY2hlbXkvdGVtcGxhdGUKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IGQyYWI2MWQ5ZmI3ZTIuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9weXRob24zLUZsYXNrLVNRTEFsY2hlbXkvdGVtcGxhdGUKKysrIC9kZXYvbnVsbApAQCAtMSwx OCArMCwwIEBACi0jIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24zLUZsYXNrLVNRTEFsY2hlbXkn Ci1wa2duYW1lPXB5dGhvbjMtRmxhc2stU1FMQWxjaGVteQotdmVyc2lvbj0yLjUuMQotcmV2aXNp b249NAotYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9u My1zZXR1cHRvb2xzIgotZGVwZW5kcz0icHl0aG9uMy1GbGFzayBweXRob24zLVNRTEFsY2hlbXki Ci1jaGVja2RlcGVuZHM9IiRkZXBlbmRzIgotc2hvcnRfZGVzYz0iQWRkcyBTUUxBbGNoZW15IHN1 cHBvcnQgdG8geW91ciBGbGFzayBhcHBsaWNhdGlvbiAocHl0aG9uMykiCi1tYWludGFpbmVyPSJw dWx1eCA8cHVsdXhAcGY0c2guZGU+IgotbGljZW5zZT0iTUlUIgotaG9tZXBhZ2U9Imh0dHBzOi8v Z2l0aHViLmNvbS9wYWxsZXRzL2ZsYXNrLXNxbGFsY2hlbXkiCi1kaXN0ZmlsZXM9IiR7UFlQSV9T SVRFfS9GL0ZsYXNrLVNRTEFsY2hlbXkvRmxhc2stU1FMQWxjaGVteS0ke3ZlcnNpb259LnRhci5n eiIKLWNoZWNrc3VtPTJiZGE0NGI0M2U3Y2FjYjE1ZDRlMDVmZjNjYzFmOGJjOTc5MzZjYzQ2NDYy MzQyNDEwMmJmYzJjMzVlOTU5MTIKLQotcG9zdF9pbnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VO U0UucnN0Ci19CmRpZmYgLS1naXQgYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUg Yi9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKaW5kZXggYmQ2MzA0OTNiNTk4Zi4u OTVmYTE2NDIyYWRkMiAxMDA2NDQKLS0tIGEvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQpAQCAtNTkxLDYgKzU5 MSw3IEBAIHJlcGxhY2VzPSIKICBweXRob24zLUZsYXNrLU1haWw8PTAuOS4xXzUKICBweXRob24z LUZsYXNrLU9BdXRobGliPD0wLjkuNl80CiAgcHl0aG9uMy1GbGFzay1TY3JpcHQ8PTIuMC42XzcK KyBweXRob24zLUZsYXNrLVNRTEFsY2hlbXk8PTIuNS4xXzQKICBweXRob24zLUZsYXNrLVVzZXI8 PTEuMC4yLjJfNgogIHB5dGhvbjMtU1BBUlFMV3JhcHBlcjw9MS44LjRfNAogIHB5dGhvbjMtYWlv aHR0cC1jb3JzMjw9MC43LjBfMwoKRnJvbSBjOWU5OTQ2NDIzOTBjODc1ZjgxNDBmNTY5NDM2M2Vh MzNiZTI4NTIwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2Zv cmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDE2IE9jdCAyMDIzIDE2OjE3OjQ2IC0w NDAwClN1YmplY3Q6IFtQQVRDSCAwNy8xOF0gcHl0aG9uMy1zdG9ybXNzaDogcmVtb3ZlIHBhY2th Z2UKClRoZSBwYWNrYWdlIGhhcyBub3QgYmVlbiBtZWFuaW5nZnVsbHkgdG91Y2hlZCBzaW5jZSAy MDE4LTEwLTAxLCBpcyBub3QKcmVxdWlyZWQgYnkgYW55IG90aGVyIHBhY2thZ2VzLCBhbmQgdGhl IHVwc3RyZWFtIHJlcG8gaGFzIGJlZW4gYXJjaGl2ZWQKc2luY2UgMjAyMi0xMi0yMS4KLS0tCiBz cmNwa2dzL3B5dGhvbjMtc3Rvcm1zc2gvdGVtcGxhdGUgfCAxOCAtLS0tLS0tLS0tLS0tLS0tLS0K IHNyY3BrZ3MvcHl0aG9uMy1zdG9ybXNzaC91cGRhdGUgICB8ICAxIC0KIHNyY3BrZ3MvcmVtb3Zl ZC1wYWNrYWdlcy90ZW1wbGF0ZSB8ICAxICsKIDMgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDE5IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0aG9uMy1z dG9ybXNzaC90ZW1wbGF0ZQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0aG9uMy1zdG9y bXNzaC91cGRhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtc3Rvcm1zc2gvdGVtcGxh dGUgYi9zcmNwa2dzL3B5dGhvbjMtc3Rvcm1zc2gvdGVtcGxhdGUKZGVsZXRlZCBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDJhYzg4NTgwYzc2YTUuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9w eXRob24zLXN0b3Jtc3NoL3RlbXBsYXRlCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAot IyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0aG9uMy1zdG9ybXNzaCcKLXBrZ25hbWU9cHl0aG9uMy1z dG9ybXNzaAotdmVyc2lvbj0wLjcuMAotcmV2aXNpb249NwotYnVpbGRfc3R5bGU9cHl0aG9uMy1t b2R1bGUKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xzIgotZGVwZW5kcz0icHl0 aG9uMy1zZXR1cHRvb2xzIHB5dGhvbjMtc2l4IHB5dGhvbjMtcGFyYW1pa28gcHl0aG9uMy10ZXJt Y29sb3IgcHl0aG9uMy1GbGFzayIKLXNob3J0X2Rlc2M9Ik1hbmFnZSB5b3VyIFNTSCBsaWtlIGEg Ym9zcyAoUHl0aG9uMykiCi1tYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5v cmc+IgotbGljZW5zZT0iTUlUIgotaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9lbXJlL3N0 b3JtIgotZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vZW1yZS9zdG9ybS9hcmNoaXZlLyR7 dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09YzJlNWRhMWNiNGEyN2IzMDllZDdlNDcwYzVhY2Vi ZTI4MjJmNzkyOGM1ZWYwZTM4ZjlkYWRlMjQ3Y2Y5YTZjNgotY29uZmxpY3RzPSJweXRob24tc3Rv cm1zc2g+PTAiCi0KLXBvc3RfaW5zdGFsbCgpIHsKLQl2bGljZW5zZSBMSUNFTlNFCi19CmRpZmYg LS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtc3Rvcm1zc2gvdXBkYXRlIGIvc3JjcGtncy9weXRob24z LXN0b3Jtc3NoL3VwZGF0ZQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWE0OWQ3ZDQ0 NTVmMS4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtc3Rvcm1zc2gvdXBkYXRl CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotaWdub3JlPSIxLjYuNyIKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNr YWdlcy90ZW1wbGF0ZQppbmRleCA5NWZhMTY0MjJhZGQyLi5iMTYzZGY4MWYxZjcwIDEwMDY0NAot LS0gYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZW1v dmVkLXBhY2thZ2VzL3RlbXBsYXRlCkBAIC02MTYsNiArNjE2LDcgQEAgcmVwbGFjZXM9IgogIHB5 dGhvbjMtc2hpYm9rZW48PTUuMTUuMF8zCiAgcHl0aG9uMy1zbmFrZW9pbC1kZXZlbDw9MC44Ljhf NAogIHB5dGhvbjMtc3FsYWxjaGVteS1taWdyYXRlPD0wLjEyLjBfNgorIHB5dGhvbjMtc3Rvcm1z c2g8PTAuNy4wXzcKICBweXRob24zLXR4YWNtZTw9MC45LjNfMwogIHFpbWFnZWJsaXR6PD0wLjAu Nl80CiAgcXQtZGVzaWduZXItZGV2ZWw8PTQuOC43XzI5CgpGcm9tIDgwZTM5N2YwYjZlMzQ1NjQ1 Mjk2MzU0NTg5ODU4ODlhOWRjM2RkOWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJB bmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMTYgT2N0IDIw MjMgMTE6MDA6NDAgLTA0MDAKU3ViamVjdDogW1BBVENIIDA4LzE4XSBweXRob24zLWJsaW5rZXI6 IHVwZGF0ZSB0byAxLjYuMy4KCi0tLQogc3JjcGtncy9weXRob24zLWJsaW5rZXIvdGVtcGxhdGUg fCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1ibGlua2VyL3RlbXBsYXRlIGIvc3Jj cGtncy9weXRob24zLWJsaW5rZXIvdGVtcGxhdGUKaW5kZXggYzc0N2FiMTBlYTRjMS4uZGExODk0 ZmZjYjAxYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24zLWJsaW5rZXIvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9weXRob24zLWJsaW5rZXIvdGVtcGxhdGUKQEAgLTEsOSArMSw5IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdweXRob24zLWJsaW5rZXInCiBwa2duYW1lPXB5dGhvbjMtYmxpbmtl cgotdmVyc2lvbj0xLjYuMgotcmV2aXNpb249MgordmVyc2lvbj0xLjYuMworcmV2aXNpb249MQog YnVpbGRfc3R5bGU9cHl0aG9uMy1wZXA1MTcKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1 cHRvb2xzIHB5dGhvbjMtd2hlZWwiCitob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtZmxpdF9jb3Jl IgogbWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2ZWwiCiBkZXBlbmRzPSJweXRob24zIgogY2hlY2tk ZXBlbmRzPSJweXRob24zLXB5dGVzdC1hc3luY2lvIHB5dGhvbjMtcGx1Z2d5IHB5dGhvbjMtcGFj a2FnaW5nCkBAIC0xNCw3ICsxNCw3IEBAIGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwczov L2JsaW5rZXIucmVhZHRoZWRvY3MuaW8vZW4vc3RhYmxlLyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9y YXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3BhbGxldHMtZWNvL2JsaW5rZXIvbWFpbi9DSEFOR0VT LnJzdCIKIGRpc3RmaWxlcz0iJHtQWVBJX1NJVEV9L2IvYmxpbmtlci9ibGlua2VyLSR7dmVyc2lv bn0udGFyLmd6IgotY2hlY2tzdW09NGFmZDNkZTY2ZWYzYTlmODA2NzU1OWZiN2ExY2JlNTU1YzE3 ZGNiZTE1OTcxYjA1ZDFiNjI1YzNlN2FiZTIxMworY2hlY2tzdW09MTUyMDkwZDI3YzFjNWM3MjJl ZTdlNDg1MDRiMDJkNzY1MDI4MTFjZTAyZTE1MjM1NTNiNGNmOGM4YjNkM2E4ZAogCiBwb3N0X2lu c3RhbGwoKSB7CiAJdmxpY2Vuc2UgTElDRU5TRS5yc3QKCkZyb20gNTM3YmNkZDdlZTcxMmE2YjY4 YzI3ODFkZWQwYjE5MDRhN2RhYjNmNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFu ZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAxNiBPY3QgMjAy MyAxMTowMDo1NyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDkvMThdIHB5dGhvbjMtV2Vya3pldWc6 IHVwZGF0ZSB0byAzLjAuMC4KCi0tLQogc3JjcGtncy9weXRob24zLVdlcmt6ZXVnL3RlbXBsYXRl IHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLVdlcmt6ZXVnL3RlbXBsYXRlIGIvc3Jj cGtncy9weXRob24zLVdlcmt6ZXVnL3RlbXBsYXRlCmluZGV4IDIyY2YyODNkNzA2NzIuLjU5OTQ3 MDE4MWMxMDQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1XZXJremV1Zy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL3B5dGhvbjMtV2Vya3pldWcvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24zLVdlcmt6ZXVnJwogcGtnbmFtZT1weXRob24zLVdl cmt6ZXVnCi12ZXJzaW9uPTIuMy43Ci1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMC4wCityZXZpc2lv bj0xCiBidWlsZF9zdHlsZT1weXRob24zLXBlcDUxNwogIyBTb21lIHRlc3RzIGRlcGVuZCBvbiB1 bnBhY2thZ2VkIGRlcGVuZGVuY2llcwogbWFrZV9jaGVja19hcmdzPSIKQEAgLTE4LDcgKzE4LDcg QEAgbGljZW5zZT0iQlNELTMtQ2xhdXNlIgogaG9tZXBhZ2U9Imh0dHBzOi8vcGFsbGV0c3Byb2pl Y3RzLmNvbS9wL3dlcmt6ZXVnLyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNv bnRlbnQuY29tL3BhbGxldHMvd2Vya3pldWcvbWFpbi9DSEFOR0VTLnJzdCIKIGRpc3RmaWxlcz0i aHR0cHM6Ly9naXRodWIuY29tL3BhbGxldHMvd2Vya3pldWcvYXJjaGl2ZS8ke3ZlcnNpb259LnRh ci5neiIKLWNoZWNrc3VtPWQ5YTY4Njc5YjQzMGUwOTliNjY4YTYxMTMwZjFlYjZlNjc2OGFjNjYz YTg2Njc3NDVhZDYzNzk1NWNhMWRkOWQKK2NoZWNrc3VtPTNiYTViNWYwNjY4MDczYzdhMzJmMTM0 NTFjMzcwM2U3YmNkYmZiZjdkY2U0Njk3Mzk4NzNjODZkMzdiN2FlMGMKIAogcHJlX2NoZWNrKCkg ewogCSMgRm9yIHNvbWUgcmVhc29uLCAtLWlnbm9yZSBkb2Vzbid0IHdvcmsgb24gdGhpcyBmaWxl CgpGcm9tIGI0ZGI2MGNiZTg3YTZhYjMxOGI3ODYzZTBhMzMwNDg5Y2FkZWI5MTIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5v cmc+CkRhdGU6IE1vbiwgMTYgT2N0IDIwMjMgMTE6MDE6MTggLTA0MDAKU3ViamVjdDogW1BBVENI IDEwLzE4XSBweXRob24zLUZsYXNrOiB1cGRhdGUgdG8gMy4wLjAuCgotLS0KIHNyY3BrZ3MvcHl0 aG9uMy1GbGFzay90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRp b25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1GbGFz ay90ZW1wbGF0ZSBiL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay90ZW1wbGF0ZQppbmRleCBkN2I2ZGEz NjZhYjk3Li5lNGE4OWI0ZTU5Mzc2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtRmxhc2sv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9weXRob24zLUZsYXNrL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0aG9uMy1GbGFzaycKIHBrZ25hbWU9cHl0aG9u My1GbGFzawotdmVyc2lvbj0yLjMuMwotcmV2aXNpb249MgordmVyc2lvbj0zLjAuMAorcmV2aXNp b249MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1wZXA1MTcKIGhvc3RtYWtlZGVwZW5kcz0icHl0aG9u My1mbGl0X2NvcmUiCiBkZXBlbmRzPSJweXRob24zLVdlcmt6ZXVnIHB5dGhvbjMtSmluamEyIHB5 dGhvbjMtaXRzZGFuZ2Vyb3VzCkBAIC0xMyw3ICsxMyw3IEBAIGxpY2Vuc2U9IkJTRC0zLUNsYXVz ZSIKIGhvbWVwYWdlPSJodHRwOi8vZmxhc2sucG9jb28ub3JnIgogY2hhbmdlbG9nPSJodHRwczov L3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vcGFsbGV0cy9mbGFzay9tYWluL0NIQU5HRVMucnN0 IgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vcGFsbGV0cy9mbGFzay9hcmNoaXZlLyR7 dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09MGUzZThhYjlhNmM4YzIwMDMyNTY1ODNkZWIwM2Ni MWE1NjFkNThiZjI3NTEyZTlkYWJkYTEwYjAwOWM1YzE2NAorY2hlY2tzdW09OTA3NWJhY2JkMzYz NmRhYWRmMTQ4NzJkYzUzYjBhYTk3YjhlZTI1NTM1MmYzMmRlZWQ4NDg0MjRkNzk5OWEzNwogY29u ZmxpY3RzPSJweXRob24tRmxhc2s+PTAiCiAKIHBvc3RfaW5zdGFsbCgpIHsKCkZyb20gODViMGFj ZTgxN2Q1MGVjMzA4NWQ3MzdhMzQ4MDNkNTNmZjU5YTM4NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9u LCAxNiBPY3QgMjAyMyAxMTowMzoxOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTEvMThdIHB5dGhv bjMtRmxhc2stQ29yczogdXBkYXRlIHRvIDQuMC4wLgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtRmxh c2stQ29ycy90ZW1wbGF0ZSB8IDYgKysrLS0tCiBzcmNwa2dzL3B5dGhvbjMtRmxhc2stQ29ycy91 cGRhdGUgICB8IDEgKwogMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9weXRob24zLUZsYXNrLUNvcnMvdXBk YXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLUZsYXNrLUNvcnMvdGVtcGxhdGUgYi9z cmNwa2dzL3B5dGhvbjMtRmxhc2stQ29ycy90ZW1wbGF0ZQppbmRleCA4ZjliNDRkMDc4OGVkLi5k ZWQ0MGFhMDViOGY0IDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtRmxhc2stQ29ycy90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMtRmxhc2stQ29ycy90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtRmxhc2stQ29ycycKIHBrZ25hbWU9 cHl0aG9uMy1GbGFzay1Db3JzCi12ZXJzaW9uPTMuMC4xMAotcmV2aXNpb249MwordmVyc2lvbj00 LjAuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKIGhvc3RtYWtlZGVw ZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xzIgogZGVwZW5kcz0icHl0aG9uMy1GbGFzayBweXRob24z LXNpeCIKQEAgLTEyLDcgKzEyLDcgQEAgbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8v Z2l0aHViLmNvbS9jb3J5ZG9scGhpbi9mbGFzay1jb3JzIgogY2hhbmdlbG9nPSJodHRwczovL3Jh dy5naXRodWJ1c2VyY29udGVudC5jb20vY29yeWRvbHBoaW4vZmxhc2stY29ycy9tYXN0ZXIvQ0hB TkdFTE9HLm1kIgogZGlzdGZpbGVzPSIke1BZUElfU0lURX0vRi9GbGFzay1Db3JzL0ZsYXNrLUNv cnMtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1iNjA4MzkzOTNmM2I4NGEwZjM3NDZmNmNk Y2E1NmMxYWQ3NDI2YWE3MzhiNzBkNmM2MTM3NTg1NzgyMzE4MWRlCitjaGVja3N1bT1mMjY4NTIy ZmNiMmY3M2UyZWNkZGUxZWY0NWUyZmQ1YzcxY2M0OGZlMDNjZmZiNGI0NDFjNmQxYjQwNjg0ZWIw CiAKIHBvc3RfaW5zdGFsbCgpIHsKIAl2bGljZW5zZSBMSUNFTlNFCmRpZmYgLS1naXQgYS9zcmNw a2dzL3B5dGhvbjMtRmxhc2stQ29ycy91cGRhdGUgYi9zcmNwa2dzL3B5dGhvbjMtRmxhc2stQ29y cy91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uZjdkY2Zj ZTVlYWNiMwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1Db3JzL3Vw ZGF0ZQpAQCAtMCwwICsxIEBACitpZ25vcmU9IiphKiAqcmMqIgoKRnJvbSBkMTg3OTBiYTQ2MDJm ZjAyZGVhOTgyY2QxZmU1MDllNTk3NWZiMzYwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDE2IE9j dCAyMDIzIDExOjM4OjM0IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxMi8xOF0gcHl0aG9uMy1GbGFz ay1IVFRQQXV0aDogdXBkYXRlIHRvIDQuOC4wLgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtRmxhc2st SFRUUEF1dGgvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtRmxhc2st SFRUUEF1dGgvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtRmxhc2stSFRUUEF1dGgvdGVtcGxh dGUKaW5kZXggMTY1OTZhYmY2ODhlNS4uZTgzM2Q1MzMyMDE5ZSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9weXRob24zLUZsYXNrLUhUVFBBdXRoL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1G bGFzay1IVFRQQXV0aC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3B5dGhvbjMtRmxhc2stSFRUUEF1dGgnCiBwa2duYW1lPXB5dGhvbjMtRmxhc2stSFRUUEF1 dGgKLXZlcnNpb249NC41LjAKLXJldmlzaW9uPTMKK3ZlcnNpb249NC44LjAKK3JldmlzaW9uPTEK IGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0 dXB0b29scyIKIGRlcGVuZHM9InB5dGhvbjMtRmxhc2siCkBAIC0xMCw3ICsxMCw3IEBAIG1haW50 YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBo b21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL21pZ3VlbGdyaW5iZXJnL0ZsYXNrLUhUVFBBdXRo IgogZGlzdGZpbGVzPSIke1BZUElfU0lURX0vZi9mbGFzay1odHRwYXV0aC9GbGFzay1IVFRQQXV0 aC0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTM5NTA0MGZkYTI4NTRkZjgwMGQxNWU4NGJj NGE4MWE1ZjMyZjFkNGE1ZTkxZWVlNTU0OTM2ZjM2ZjMzMGFhMjkKK2NoZWNrc3VtPTY2NTY4YTA1 YmM3Mzk0MmM2NWYxZTIyMDFhZTc0NjI5NTgxNmRjMDA5ZWRkODRiNDgyYzQ0Yzc1OGQ3NTA5N2EK IG1ha2VfY2hlY2s9bm8gIyBuZWVkcyBwYWNrYWdlcyBub3QgaW4gcmVwbyAoYXNnaXJlZikKIAog cG9zdF9pbnN0YWxsKCkgewoKRnJvbSAxMDgzZmU0ODVmZDliMmJlMDFkZTdlNDU3ZDQzZDJkMTVk M2MyNmQyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQi IDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDE2IE9jdCAyMDIzIDE0OjU2OjE1IC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAxMy8xOF0gcHl0aG9uMy1GbGFzay1CYWJlbDogdXBkYXRlIHRvIDQu MC4wLgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtRmxhc2stQmFiZWwvdGVtcGxhdGUgfCAxNCArKysr KysrLS0tLS0tLQogc3JjcGtncy9weXRob24zLUZsYXNrLUJhYmVsL3VwZGF0ZSAgIHwgIDEgKwog MiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9weXRob24zLUZsYXNrLUJhYmVsL3VwZGF0ZQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1CYWJlbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcHl0aG9u My1GbGFzay1CYWJlbC90ZW1wbGF0ZQppbmRleCA1Y2U2MzU5NTM0MGY2Li5mZjBmYjRiYjA2Njg2 IDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtRmxhc2stQmFiZWwvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9weXRob24zLUZsYXNrLUJhYmVsL3RlbXBsYXRlCkBAIC0xLDE3ICsxLDE3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24zLUZsYXNrLUJhYmVsJwogcGtnbmFtZT1weXRob24z LUZsYXNrLUJhYmVsCi12ZXJzaW9uPTIuMC4wCi1yZXZpc2lvbj02Ci1idWlsZF9zdHlsZT1weXRo b24zLW1vZHVsZQotaG9zdG1ha2VkZXBlbmRzPSJweXRob24zLXNldHVwdG9vbHMiCit2ZXJzaW9u PTQuMC4wCityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1weXRob24zLXBlcDUxNworaG9zdG1ha2Vk ZXBlbmRzPSJweXRob24zLXBvZXRyeS1jb3JlIgogZGVwZW5kcz0icHl0aG9uMy1weXR6IHB5dGhv bjMtSmluamEyIHB5dGhvbjMtQmFiZWwgcHl0aG9uMy1GbGFzayIKIGNoZWNrZGVwZW5kcz0iJHtk ZXBlbmRzfSBweXRob24zLXB5dGVzdC1tb2NrIgogc2hvcnRfZGVzYz0iUHl0aG9uMyBpMThuIGFu ZCBsMTBuIHN1cHBvcnQgZm9yIEZsYXNrIGJhc2VkIG9uIEJhYmVsIGFuZCBweXR6IgogbWFpbnRh aW5lcj0icHVsdXggPHB1bHV4QHBmNHNoLmRlPiIKIGxpY2Vuc2U9IkJTRC0zLUNsYXVzZSIKLWhv bWVwYWdlPSJodHRwczovL3B5dGhvbmhvc3RlZC5vcmcvRmxhc2stQmFiZWwvIgotZGlzdGZpbGVz PSIke1BZUElfU0lURX0vRi9GbGFzay1CYWJlbC9GbGFzay1CYWJlbC0ke3ZlcnNpb259LnRhci5n eiIKLWNoZWNrc3VtPWY5ZmFmNDVjZGIyZTFhMzJlYTJlYzE0NDAzNTg3ZDQyOTUxMDhmMzUwMTdh NzgyMWEyYjFhY2I4Y2ZkOTI1N2QKK2hvbWVwYWdlPSJodHRwczovL3B5dGhvbi1iYWJlbC5naXRo dWIuaW8vZmxhc2stYmFiZWwvIgorZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vcHl0aG9u LWJhYmVsL2ZsYXNrLWJhYmVsL2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09 Njk1MmJhOGE2ODEzYTMzYTVjMmZmNjVkZGFkNjFlODIxNTMwN2I1ZWIwNjBkMmQ4N2U0MTM4MjJh ZjkxMTRhNwogCiBwb3N0X2luc3RhbGwoKSB7CiAJdmxpY2Vuc2UgTElDRU5TRQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9weXRob24zLUZsYXNrLUJhYmVsL3VwZGF0ZSBiL3NyY3BrZ3MvcHl0aG9uMy1G bGFzay1CYWJlbC91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw MC4uOGFlY2ZkY2ExMTA5NgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1GbGFz ay1CYWJlbC91cGRhdGUKQEAgLTAsMCArMSBAQAorcGtnbmFtZT0iZmxhc2tfYmFiZWwiCgpGcm9t IDA3YmNkYWEwNTBjN2JiMzRlYjkxOWJjY2Q0ODExMDk3ZTUxMDNlMDkgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRh dGU6IE1vbiwgMTYgT2N0IDIwMjMgMTU6MDI6MzEgLTA0MDAKU3ViamVjdDogW1BBVENIIDE0LzE4 XSBncmlwOiBwYXRjaCBmb3IgV2Vya3pldWcgMwoKLS0tCiBzcmNwa2dzL2dyaXAvcGF0Y2hlcy93 ZXJremV1Zy0zLjAucGF0Y2ggfCAyNCArKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3Mv Z3JpcC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQs IDI1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL2dyaXAvcGF0Y2hlcy93ZXJremV1Zy0zLjAucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dz L2dyaXAvcGF0Y2hlcy93ZXJremV1Zy0zLjAucGF0Y2ggYi9zcmNwa2dzL2dyaXAvcGF0Y2hlcy93 ZXJremV1Zy0zLjAucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw MC4uYTQ1Y2U4MWIyNTQ4YwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ3JpcC9wYXRjaGVz L3dlcmt6ZXVnLTMuMC5wYXRjaApAQCAtMCwwICsxLDI0IEBACitGcm9tIDI3ODRlYjJjMTUxNWYx Y2RiMTU1NGQwNDlkNDhiM2JmZjBmNDIwODUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiBKb2UgRXNwb3NpdG8gPGpvZUBqb2V5ZXNwby5jb20+CitEYXRlOiBXZWQsIDExIE9jdCAyMDIz IDE2OjM0OjU2IC0wNDAwCitTdWJqZWN0OiBbUEFUQ0hdIFN1cHBvcnQgV2Vya3pldWcgMyBieSB1 c2luZyBhIGRlZmF1bHQgZW5jb2Rpbmcgb2YgVVRGLTgKKworVGhpcyBmaXhlcyB0aGUgcmVtb3Zh bCBvZiBgY2hhcnNldGAgYXR0cmlidXRlIG9mIHJlcXVlc3RzIGZyb20gaHR0cHM6Ly9naXRodWIu Y29tL3BhbGxldHMvd2Vya3pldWcvaXNzdWVzLzI2MDIKK2ludHJvZHVjZWQgYnkgV2Vya3pldWcg Mi4zLjAgKGh0dHBzOi8vd2Vya3pldWcucGFsbGV0c3Byb2plY3RzLmNvbS9lbi8zLjAueC9jaGFu Z2VzLyN2ZXJzaW9uLTItMy0wKQorLS0tCisgZ3JpcC9hcHAucHkgfCAyICstCisgMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQgYS9ncmlw L2FwcC5weSBiL2dyaXAvYXBwLnB5CitpbmRleCBmOTYzZTlkLi4xNmNkNWY0IDEwMDY0NAorLS0t IGEvZ3JpcC9hcHAucHkKKysrKyBiL2dyaXAvYXBwLnB5CitAQCAtMzk3LDcgKzM5Nyw3IEBAIGRl ZiByZW5kZXIoc2VsZiwgcm91dGU9Tm9uZSk6CisgICAgICAgICAgICAgcm91dGUgPSAnLycKKyAg ICAgICAgIHdpdGggc2VsZi50ZXN0X2NsaWVudCgpIGFzIGM6CisgICAgICAgICAgICAgcmVzcG9u c2UgPSBjLmdldChyb3V0ZSwgZm9sbG93X3JlZGlyZWN0cz1UcnVlKQorLSAgICAgICAgICAgIGVu Y29kaW5nID0gcmVzcG9uc2UuY2hhcnNldAorKyAgICAgICAgICAgIGVuY29kaW5nID0gZ2V0YXR0 cihyZXNwb25zZSwgJ2NoYXJzZXQnLCAndXRmLTgnKQorICAgICAgICAgICAgIHJldHVybiByZXNw b25zZS5kYXRhLmRlY29kZShlbmNvZGluZykKKyAKKyAgICAgZGVmIHJ1bihzZWxmLCBob3N0PU5v bmUsIHBvcnQ9Tm9uZSwgZGVidWc9Tm9uZSwgdXNlX3JlbG9hZGVyPU5vbmUsCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dyaXAvdGVtcGxhdGUgYi9zcmNwa2dzL2dyaXAvdGVtcGxhdGUKaW5kZXggOGVi MjlkMmZhNzIxMC4uMGNhYjg3NTFmZTg0YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9ncmlwL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZ3JpcC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dyaXAnCiBwa2duYW1lPWdyaXAKIHZlcnNpb249NC42LjEKLXJldmlzaW9u PTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBob3N0bWFrZWRlcGVu ZHM9InB5dGhvbjMtc2V0dXB0b29scyIKIGRlcGVuZHM9InB5dGhvbjMtZG9jb3B0IHB5dGhvbjMt Rmxhc2sgcHl0aG9uMy1NYXJrZG93biBweXRob24zLXBhdGgtYW5kLWFkZHJlc3MKCkZyb20gNGQ4 NzQ2N2ZmNWNiYzAzZTE3NmE3M2FiNmMyMDBkZWUyODNkYTE5YSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTog TW9uLCAxNiBPY3QgMjAyMyAxNTo1MDo0OSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTUvMThdIHB5 dGhvbjMtRmxhc2stTG9naW46IHBhdGNoIGZvciBGbGFzayBhbmQgV2VyemV1ZyAzCgotLS0KIC4u Li9wYXRjaGVzLzAwLmZsYXNrLTMuMC5wYXRjaCAgICAgICAgICAgICAgICB8ICA0NiArKysKIC4u Li9wYXRjaGVzLzAxLmZsYXNrLTMuMC5wYXRjaCAgICAgICAgICAgICAgICB8IDMxNyArKysrKysr KysrKysrKysrKysKIHNyY3BrZ3MvcHl0aG9uMy1GbGFzay1Mb2dpbi90ZW1wbGF0ZSAgICAgICAg ICB8ICAgNSArLQogMyBmaWxlcyBjaGFuZ2VkLCAzNjYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3B5dGhvbjMtRmxhc2stTG9naW4vcGF0 Y2hlcy8wMC5mbGFzay0zLjAucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3B5dGhv bjMtRmxhc2stTG9naW4vcGF0Y2hlcy8wMS5mbGFzay0zLjAucGF0Y2gKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3B5dGhvbjMtRmxhc2stTG9naW4vcGF0Y2hlcy8wMC5mbGFzay0zLjAucGF0Y2ggYi9z cmNwa2dzL3B5dGhvbjMtRmxhc2stTG9naW4vcGF0Y2hlcy8wMC5mbGFzay0zLjAucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uOWM0NDVmNzY5YzQ2OAotLS0g L2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1Mb2dpbi9wYXRjaGVzLzAwLmZs YXNrLTMuMC5wYXRjaApAQCAtMCwwICsxLDQ2IEBACitGcm9tIDdiMTcwYmY0ZTVlMDI0MGZlMDg0 MTY2YzljYTZlYzRmYmEyNThkY2QgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBIaXJv bWFzYSBJaGFyYSA8aWhhcmFoaXJvbWFzYUBnbWFpbC5jb20+CitEYXRlOiBNb24sIDIgT2N0IDIw MjMgMjA6MTQ6NDAgKzA5MDAKK1N1YmplY3Q6IFtQQVRDSF0gZml4OiBhdm9pZCBEZXByZWNhdGlv bldhcm5pbmcgJ3dlcmt6ZXVnLnVybHMudXJsX2RlY29kZScgaXMKKyBkZXByZWNhdGVkICgjNzQ2 KQorCistLS0KKyBzcmMvZmxhc2tfbG9naW4vdXRpbHMucHkgfCA4ICsrKystLS0tCisgMSBmaWxl IGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBh L3NyYy9mbGFza19sb2dpbi91dGlscy5weSBiL3NyYy9mbGFza19sb2dpbi91dGlscy5weQoraW5k ZXggYzNjNDY4NDYuLjQ1YTdlMjc5IDEwMDY0NAorLS0tIGEvc3JjL2ZsYXNrX2xvZ2luL3V0aWxz LnB5CisrKysgYi9zcmMvZmxhc2tfbG9naW4vdXRpbHMucHkKK0BAIC0zLDYgKzMsOCBAQAorIGZy b20gaGFzaGxpYiBpbXBvcnQgc2hhNTEyCisgZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHVybHBh cnNlCisgZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHVybHVucGFyc2UKKytmcm9tIHVybGxpYi5w YXJzZSBpbXBvcnQgcGFyc2VfcXMKKytmcm9tIHVybGxpYi5wYXJzZSBpbXBvcnQgdXJsZW5jb2Rl CisgCisgZnJvbSBmbGFzayBpbXBvcnQgY3VycmVudF9hcHAKKyBmcm9tIGZsYXNrIGltcG9ydCBn CitAQCAtMTEsOCArMTMsNiBAQAorIGZyb20gZmxhc2sgaW1wb3J0IHNlc3Npb24KKyBmcm9tIGZs YXNrIGltcG9ydCB1cmxfZm9yCisgZnJvbSB3ZXJremV1Zy5sb2NhbCBpbXBvcnQgTG9jYWxQcm94 eQorLWZyb20gd2Vya3pldWcudXJscyBpbXBvcnQgdXJsX2RlY29kZQorLWZyb20gd2Vya3pldWcu dXJscyBpbXBvcnQgdXJsX2VuY29kZQorIAorIGZyb20gLmNvbmZpZyBpbXBvcnQgQ09PS0lFX05B TUUKKyBmcm9tIC5jb25maWcgaW1wb3J0IEVYRU1QVF9NRVRIT0RTCitAQCAtMTIzLDExICsxMjMs MTEgQEAgZGVmIGxvZ2luX3VybChsb2dpbl92aWV3LCBuZXh0X3VybD1Ob25lLCBuZXh0X2ZpZWxk PSJuZXh0Iik6CisgICAgICAgICByZXR1cm4gYmFzZQorIAorICAgICBwYXJzZWRfcmVzdWx0ID0g dXJscGFyc2UoYmFzZSkKKy0gICAgbWQgPSB1cmxfZGVjb2RlKHBhcnNlZF9yZXN1bHQucXVlcnkp CisrICAgIG1kID0gcGFyc2VfcXMocGFyc2VkX3Jlc3VsdC5xdWVyeSkKKyAgICAgbWRbbmV4dF9m aWVsZF0gPSBtYWtlX25leHRfcGFyYW0oYmFzZSwgbmV4dF91cmwpCisgICAgIG5ldGxvYyA9IGN1 cnJlbnRfYXBwLmNvbmZpZy5nZXQoIkZPUkNFX0hPU1RfRk9SX1JFRElSRUNUUyIpIG9yIHBhcnNl ZF9yZXN1bHQubmV0bG9jCisgICAgIHBhcnNlZF9yZXN1bHQgPSBwYXJzZWRfcmVzdWx0Ll9yZXBs YWNlKAorLSAgICAgICAgbmV0bG9jPW5ldGxvYywgcXVlcnk9dXJsX2VuY29kZShtZCwgc29ydD1U cnVlKQorKyAgICAgICAgbmV0bG9jPW5ldGxvYywgcXVlcnk9dXJsZW5jb2RlKG1kLCBkb3NlcT1U cnVlKQorICAgICApCisgICAgIHJldHVybiB1cmx1bnBhcnNlKHBhcnNlZF9yZXN1bHQpCisgCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtRmxhc2stTG9naW4vcGF0Y2hlcy8wMS5mbGFzay0z LjAucGF0Y2ggYi9zcmNwa2dzL3B5dGhvbjMtRmxhc2stTG9naW4vcGF0Y2hlcy8wMS5mbGFzay0z LjAucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uZDJiYzQ4 NTgyMDc2MgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1GbGFzay1Mb2dpbi9w YXRjaGVzLzAxLmZsYXNrLTMuMC5wYXRjaApAQCAtMCwwICsxLDMxNyBAQAorRnJvbSA3ZDk4YTQ5 YmMzOGQwODQ5MzY3YjM0OGJmZTM3YTJiNjg5MzIzNDE5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogU2hhIDx3YW5nc2hhQHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4KK0RhdGU6IE1v biwgMiBPY3QgMjAyMyAwNzowMDoxMiAtMDUwMAorU3ViamVjdDogW1BBVENIXSBmbGFzayAzLjAg Y29tcGF0aWJpbGl0eSAoIzc3OCkKKworKiBXZXJremV1ZyAzLjAgY29tcGF0aWJsZQorCisqIHB5 dGhvbjMuNyBjb21wYXRpYmlsaXR5CisKKyogdHJvdWJsZXNob290aW5nIHZlcnNpb24gY29tcGF0 aWJpbGl0eQorCisqIHVwZGF0ZSBjb25zdHJhaW4KKworKiBwYWNrYWdlIHZlcnNpb24gdHJvdWJs ZXNob290aW5nCisKKyogdHJvdWJsZXNob290aW5nIHBhY2thZ2UgdmVyc2lvbgorCisqIHRyb3Vi bGVzaG9vdCBwYWNrYWdlIHZlcnNpb24KKworKiBwYWNrYWdlIHR1bmluZworCisqIHRyb3VibGVz aG9vdCBwYWNrYWdlIHZlcnNpb24KKworKiB0cm91Ymxlc2hvb3RpbmcgcGFja2FnZSB2ZXJzaW9u CisKKyogdHJvdWJsZXNob290IHRlc3QgY2FzZXMKKworKiB0cm91Ymxlc2hvb3QgcHl0aG9uIHBh Y2thZ2UgdmVyc2lvbgorCisqIFVwZGF0ZSB0b3guaW5pCisKKyogdmVyc2lvbiB0cm91Ymxlc2hv b3QKKworKiB2ZXJzaW9uIGZpeAorCisqIHBhY2thZ2UgdmVyc2lvbgorCisqIHBhY2thZ2UgdmVy c2lvbgorCisqIFVwZGF0ZSBzZXR1cC5weQorCisqIFVwZGF0ZSBzZXR1cC5weQorCisqIHBhY2th Z2UgdmVyc2lvbgorCisqIHBhY2thZ2UgdmVyc2lvbgorCisqIHBhY2thZ2UgdmVyc2lvbgorCisq IFVwZGF0ZSBzZXR1cC5jZmcKKworKiB2ZXJzaW9uIGZpeAorCisqIHBhY2thZ2UgdmVyc2lvbgor CisqIHBhY2thZ2UgdmVyc2lvbgorCisqIHBhY2thZ2UgdmVyc2lvbgorCisqIHBhY2thZ2UgdmVy c2lvbgorCisqIGRlcHJlY2F0ZSBweXRob24zLjcKKworKiBwYWNrYWdlIHZlcnNpb24KKworKiBt ZXJnZSBjb25mbGljdHMKKworKiBweWxpbnQgZml4CistLS0KKyAuZ2l0aHViL3dvcmtmbG93cy90 ZXN0cy55YW1sIHwgICA0ICstCisgcmVxdWlyZW1lbnRzL2NpLXJlbGVhc2UudHh0ICB8ICA4MyAr KysrKysrKystLS0tLS0tLS0tLS0KKyByZXF1aXJlbWVudHMvY2ktdGVzdHMuaW4gICAgIHwgICA1 ICstCisgcmVxdWlyZW1lbnRzL2NpLXRlc3RzLnR4dCAgICB8ICA2MSArKysrKysrKystLS0tLS0t CisgcmVxdWlyZW1lbnRzL2Rldi50eHQgICAgICAgICB8IDEzOCArKysrKystLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQorIHJlcXVpcmVtZW50cy9kb2NzLnR4dCAgICAgICAgfCAgNTAgKysr KysrKy0tLS0tLQorIHJlcXVpcmVtZW50cy9zdHlsZS50eHQgICAgICAgfCAgMjUgKysrLS0tLQor IHJlcXVpcmVtZW50cy90ZXN0cy1taW4uaW4gICAgfCAgIDggKy0KKyByZXF1aXJlbWVudHMvdGVz dHMtbWluLnR4dCAgIHwgIDM0ICsrKystLS0tLQorIHJlcXVpcmVtZW50cy90ZXN0cy5pbiAgICAg ICAgfCAgIDYgKy0KKyByZXF1aXJlbWVudHMvdGVzdHMudHh0ICAgICAgIHwgIDI4ICsrKy0tLS0K KyBzZXR1cC5jZmcgICAgICAgICAgICAgICAgICAgIHwgICAyICstCisgc2V0dXAucHkgICAgICAg ICAgICAgICAgICAgICB8ICAgNSArLQorIHNyYy9mbGFza19sb2dpbi91dGlscy5weSAgICAgfCAg IDQgKy0KKyB0ZXN0cy90ZXN0X2xvZ2luLnB5ICAgICAgICAgIHwgIDI2ICsrKystLS0KKyB0b3gu aW5pICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCisgMTYgZmlsZXMgY2hhbmdlZCwgMTk4 IGluc2VydGlvbnMoKyksIDI4MyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9mbGFz a19sb2dpbi91dGlscy5weSBiL3NyYy9mbGFza19sb2dpbi91dGlscy5weQoraW5kZXggNDVhN2Uy NzkuLjBmZGUyM2Y0IDEwMDY0NAorLS0tIGEvc3JjL2ZsYXNrX2xvZ2luL3V0aWxzLnB5CisrKysg Yi9zcmMvZmxhc2tfbG9naW4vdXRpbHMucHkKK0BAIC0xLDEwICsxLDEwIEBACisgaW1wb3J0IGht YWMKKyBmcm9tIGZ1bmN0b29scyBpbXBvcnQgd3JhcHMKKyBmcm9tIGhhc2hsaWIgaW1wb3J0IHNo YTUxMgorLWZyb20gdXJsbGliLnBhcnNlIGltcG9ydCB1cmxwYXJzZQorLWZyb20gdXJsbGliLnBh cnNlIGltcG9ydCB1cmx1bnBhcnNlCisgZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHBhcnNlX3Fz CisgZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHVybGVuY29kZQorK2Zyb20gdXJsbGliLnBhcnNl IGltcG9ydCB1cmxwYXJzZQorK2Zyb20gdXJsbGliLnBhcnNlIGltcG9ydCB1cmx1bnBhcnNlCisg CisgZnJvbSBmbGFzayBpbXBvcnQgY3VycmVudF9hcHAKKyBmcm9tIGZsYXNrIGltcG9ydCBnCitk aWZmIC0tZ2l0IGEvdGVzdHMvdGVzdF9sb2dpbi5weSBiL3Rlc3RzL3Rlc3RfbG9naW4ucHkKKy0t LSBhL3Rlc3RzL3Rlc3RfbG9naW4ucHkKKysrKyBiL3Rlc3RzL3Rlc3RfbG9naW4ucHkKK0BAIC0z MjgsNyArMzI4LDcgQEAKKyAgICAgICAgIGRlZiBlbXB0eV9zZXNzaW9uKCk6CisgICAgICAgICAg ICAgcmV0dXJuIGYibW9kaWZpZWQ9e3Nlc3Npb24ubW9kaWZpZWR9IgorIAorLSAgICAgICAgIyBU aGlzIHdpbGwgaGVscCB1cyB3aXRoIHRoZSBwb3NzaWJpbGl0eSBvZiB0eXBvZXMgaW4gdGhlIHRl c3RzLiBOb3cKKysgICAgICAgICMgVGhpcyB3aWxsIGhlbHAgdXMgd2l0aCB0aGUgcG9zc2liaWxp dHkgb2YgdHlwb3MgaW4gdGhlIHRlc3RzLiBOb3cKKyAgICAgICAgICMgd2Ugc2hvdWxkbid0IGhh dmUgdG8gY2hlY2sgZWFjaCByZXNwb25zZSB0byBoZWxwIHVzIHNldCB1cCBzdGF0ZQorICAgICAg ICAgIyAoc3VjaCBhcyBsb2dpbiBwYWdlcykgdG8gbWFrZSBzdXJlIGl0IHdvcmtlZDogd2Ugd2ls bCBhbHdheXMKKyAgICAgICAgICMgZ2V0IGFuIGV4Y2VwdGlvbiByYWlzZWQgKHJhdGhlciB0aGFu IHJldHVybiBhIDQwNCByZXNwb25zZSkKK0BAIC02NjksMjQgKzY2OSwxNyBAQAorICAgICAgICAg bmFtZSA9IHNlbGYuYXBwLmNvbmZpZ1siUkVNRU1CRVJfQ09PS0lFX05BTUUiXSA9ICJteW5hbWUi CisgICAgICAgICBkdXJhdGlvbiA9IHNlbGYuYXBwLmNvbmZpZ1siUkVNRU1CRVJfQ09PS0lFX0RV UkFUSU9OIl0gPSB0aW1lZGVsdGEoZGF5cz0yKQorICAgICAgICAgcGF0aCA9IHNlbGYuYXBwLmNv bmZpZ1siUkVNRU1CRVJfQ09PS0lFX1BBVEgiXSA9ICIvbXlwYXRoIgorLSAgICAgICAgZG9tYWlu ID0gc2VsZi5hcHAuY29uZmlnWyJSRU1FTUJFUl9DT09LSUVfRE9NQUlOIl0gPSAiLmxvY2FsaG9z dC5sb2NhbCIKKysgICAgICAgIGRvbWFpbiA9IHNlbGYuYXBwLmNvbmZpZ1siUkVNRU1CRVJfQ09P S0lFX0RPTUFJTiJdID0gImxvY2FsaG9zdC5sb2NhbCIKKyAKKyAgICAgICAgIHdpdGggc2VsZi5h cHAudGVzdF9jbGllbnQoKSBhcyBjOgorICAgICAgICAgICAgIGMuZ2V0KCIvbG9naW4tbm90Y2gt cmVtZW1iZXIiKQorIAorLSAgICAgICAgICAgICMgVE9ETzogSXMgdGhlcmUgYSBiZXR0ZXIgd2F5 IHRvIHRlc3QgdGhpcz8KKy0gICAgICAgICAgICBzZWxmLmFzc2VydEluKAorLSAgICAgICAgICAg ICAgICBkb21haW4sCistICAgICAgICAgICAgICAgIGMuY29va2llX2phci5fY29va2llcywKKy0g ICAgICAgICAgICAgICAgIkN1c3RvbSBkb21haW4gbm90IGZvdW5kIGFzIGNvb2tpZSBkb21haW4i LAorKyAgICAgICAgICAgIGNvb2tpZSA9IGMuZ2V0X2Nvb2tpZShrZXk9bmFtZSwgZG9tYWluPWRv bWFpbiwgcGF0aD1wYXRoKQorKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKAorKyAg ICAgICAgICAgICAgICBjb29raWUsICJDdXN0b20gZG9tYWluLCBwYXRoIGFuZCBuYW1lIG5vdCBm b3VuZCBpbiBjb29raWVzIgorICAgICAgICAgICAgICkKKy0gICAgICAgICAgICBkb21haW5fY29v a2llID0gYy5jb29raWVfamFyLl9jb29raWVzW2RvbWFpbl0KKy0gICAgICAgICAgICBzZWxmLmFz c2VydEluKHBhdGgsIGRvbWFpbl9jb29raWUsICJDdXN0b20gcGF0aCBub3QgZm91bmQgYXMgY29v a2llIHBhdGgiKQorLSAgICAgICAgICAgIHBhdGhfY29va2llID0gZG9tYWluX2Nvb2tpZVtwYXRo XQorLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4obmFtZSwgcGF0aF9jb29raWUsICJDdXN0b20g bmFtZSBub3QgZm91bmQgYXMgY29va2llIG5hbWUiKQorLSAgICAgICAgICAgIGNvb2tpZSA9IHBh dGhfY29va2llW25hbWVdCisgCistICAgICAgICAgICAgZXhwaXJhdGlvbl9kYXRlID0gZGF0ZXRp bWUudXRjZnJvbXRpbWVzdGFtcChjb29raWUuZXhwaXJlcykKKysgICAgICAgICAgICBleHBpcmF0 aW9uX2RhdGUgPSBkYXRldGltZS51dGNmcm9tdGltZXN0YW1wKGNvb2tpZS5leHBpcmVzLnRpbWVz dGFtcCgpKQorICAgICAgICAgICAgIGV4cGVjdGVkX2RhdGUgPSBkYXRldGltZS51dGNub3coKSAr IGR1cmF0aW9uCisgICAgICAgICAgICAgZGlmZmVyZW5jZSA9IGV4cGVjdGVkX2RhdGUgLSBleHBp cmF0aW9uX2RhdGUKKyAKK0BAIC03MDIsMjQgKzY5NSwxNyBAQAorICAgICAgICAgc2VsZi5hcHAu Y29uZmlnWyJSRU1FTUJFUl9DT09LSUVfRFVSQVRJT04iXSA9IDE3MjgwMAorICAgICAgICAgZHVy YXRpb24gPSB0aW1lZGVsdGEoaG91cnM9NykKKyAgICAgICAgIHBhdGggPSBzZWxmLmFwcC5jb25m aWdbIlJFTUVNQkVSX0NPT0tJRV9QQVRIIl0gPSAiL215cGF0aCIKKy0gICAgICAgIGRvbWFpbiA9 IHNlbGYuYXBwLmNvbmZpZ1siUkVNRU1CRVJfQ09PS0lFX0RPTUFJTiJdID0gIi5sb2NhbGhvc3Qu bG9jYWwiCisrICAgICAgICBkb21haW4gPSBzZWxmLmFwcC5jb25maWdbIlJFTUVNQkVSX0NPT0tJ RV9ET01BSU4iXSA9ICJsb2NhbGhvc3QubG9jYWwiCisgCisgICAgICAgICB3aXRoIHNlbGYuYXBw LnRlc3RfY2xpZW50KCkgYXMgYzoKKyAgICAgICAgICAgICBjLmdldCgiL2xvZ2luLW5vdGNoLXJl bWVtYmVyLWN1c3RvbSIpCisgCistICAgICAgICAgICAgIyBUT0RPOiBJcyB0aGVyZSBhIGJldHRl ciB3YXkgdG8gdGVzdCB0aGlzPworLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oCistICAgICAg ICAgICAgICAgIGRvbWFpbiwKKy0gICAgICAgICAgICAgICAgYy5jb29raWVfamFyLl9jb29raWVz LAorLSAgICAgICAgICAgICAgICAiQ3VzdG9tIGRvbWFpbiBub3QgZm91bmQgYXMgY29va2llIGRv bWFpbiIsCisrICAgICAgICAgICAgY29va2llID0gYy5nZXRfY29va2llKGtleT1uYW1lLCBkb21h aW49ZG9tYWluLCBwYXRoPXBhdGgpCisrICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUo CisrICAgICAgICAgICAgICAgIGNvb2tpZSwgIkN1c3RvbSBkb21haW4sIHBhdGggYW5kIG5hbWUg bm90IGZvdW5kIGluIGNvb2tpZXMiCisgICAgICAgICAgICAgKQorLSAgICAgICAgICAgIGRvbWFp bl9jb29raWUgPSBjLmNvb2tpZV9qYXIuX2Nvb2tpZXNbZG9tYWluXQorLSAgICAgICAgICAgIHNl bGYuYXNzZXJ0SW4ocGF0aCwgZG9tYWluX2Nvb2tpZSwgIkN1c3RvbSBwYXRoIG5vdCBmb3VuZCBh cyBjb29raWUgcGF0aCIpCistICAgICAgICAgICAgcGF0aF9jb29raWUgPSBkb21haW5fY29va2ll W3BhdGhdCistICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihuYW1lLCBwYXRoX2Nvb2tpZSwgIkN1 c3RvbSBuYW1lIG5vdCBmb3VuZCBhcyBjb29raWUgbmFtZSIpCistICAgICAgICAgICAgY29va2ll ID0gcGF0aF9jb29raWVbbmFtZV0KKyAKKy0gICAgICAgICAgICBleHBpcmF0aW9uX2RhdGUgPSBk YXRldGltZS51dGNmcm9tdGltZXN0YW1wKGNvb2tpZS5leHBpcmVzKQorKyAgICAgICAgICAgIGV4 cGlyYXRpb25fZGF0ZSA9IGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAoY29va2llLmV4cGlyZXMu dGltZXN0YW1wKCkpCisgICAgICAgICAgICAgZXhwZWN0ZWRfZGF0ZSA9IGRhdGV0aW1lLnV0Y25v dygpICsgZHVyYXRpb24KKyAgICAgICAgICAgICBkaWZmZXJlbmNlID0gZXhwZWN0ZWRfZGF0ZSAt IGV4cGlyYXRpb25fZGF0ZQorIAorQEAgLTczNCwxNSArNzIwLDE1IEBACisgICAgICAgICBzZWxm LmFwcC5jb25maWdbIlJFTUVNQkVSX0NPT0tJRV9EVVJBVElPTiJdID0gMTcyODAwCisgICAgICAg ICBkdXJhdGlvbiA9IHRpbWVkZWx0YShzZWNvbmRzPTE3MjgwMCkKKyAgICAgICAgIG5hbWUgPSBz ZWxmLmFwcC5jb25maWdbIlJFTUVNQkVSX0NPT0tJRV9OQU1FIl0gPSAibXluYW1lIgorLSAgICAg ICAgZG9tYWluID0gc2VsZi5hcHAuY29uZmlnWyJSRU1FTUJFUl9DT09LSUVfRE9NQUlOIl0gPSAi LmxvY2FsaG9zdC5sb2NhbCIKKysgICAgICAgIGRvbWFpbiA9IHNlbGYuYXBwLmNvbmZpZ1siUkVN RU1CRVJfQ09PS0lFX0RPTUFJTiJdID0gImxvY2FsaG9zdC5sb2NhbCIKKyAKKyAgICAgICAgIHdp dGggc2VsZi5hcHAudGVzdF9jbGllbnQoKSBhcyBjOgorICAgICAgICAgICAgIHJlc3VsdCA9IGMu Z2V0KCIvbG9naW4tbm90Y2gtcmVtZW1iZXIiKQorICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1 YWwocmVzdWx0LnN0YXR1c19jb2RlLCAyMDApCisgCistICAgICAgICAgICAgY29va2llID0gYy5j b29raWVfamFyLl9jb29raWVzW2RvbWFpbl1bIi8iXVtuYW1lXQorKyAgICAgICAgICAgIGNvb2tp ZSA9IGMuZ2V0X2Nvb2tpZShrZXk9bmFtZSwgZG9tYWluPWRvbWFpbiwgcGF0aD0iLyIpCisgCist ICAgICAgICAgICAgZXhwaXJhdGlvbl9kYXRlID0gZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFtcChj b29raWUuZXhwaXJlcykKKysgICAgICAgICAgICBleHBpcmF0aW9uX2RhdGUgPSBkYXRldGltZS51 dGNmcm9tdGltZXN0YW1wKGNvb2tpZS5leHBpcmVzLnRpbWVzdGFtcCgpKQorICAgICAgICAgICAg IGV4cGVjdGVkX2RhdGUgPSBkYXRldGltZS51dGNub3coKSArIGR1cmF0aW9uCisgICAgICAgICAg ICAgZGlmZmVyZW5jZSA9IGV4cGVjdGVkX2RhdGUgLSBleHBpcmF0aW9uX2RhdGUKKyAKK0BAIC03 OTQsMjUgKzc4MCwyMiBAQAorICAgICAgICAgc2VsZi5hc3NlcnRJbihleHBlY3RlZF9leGNlcHRp b25fbWVzc2FnZSwgc3RyKGNtLmV4Y2VwdGlvbikpCisgCisgICAgIGRlZiB0ZXN0X3JlbWVtYmVy X21lX3JlZnJlc2hfZXZlcnlfcmVxdWVzdChzZWxmKToKKy0gICAgICAgIGRvbWFpbiA9IHNlbGYu YXBwLmNvbmZpZ1siUkVNRU1CRVJfQ09PS0lFX0RPTUFJTiJdID0gIi5sb2NhbGhvc3QubG9jYWwi CisrICAgICAgICBkb21haW4gPSBzZWxmLmFwcC5jb25maWdbIlJFTUVNQkVSX0NPT0tJRV9ET01B SU4iXSA9ICJsb2NhbGhvc3QubG9jYWwiCisgICAgICAgICBwYXRoID0gc2VsZi5hcHAuY29uZmln WyJSRU1FTUJFUl9DT09LSUVfUEFUSCJdID0gIi8iCisgCisgICAgICAgICAjIE5vIHJlZnJlc2gK KyAgICAgICAgIHNlbGYuYXBwLmNvbmZpZ1siUkVNRU1CRVJfQ09PS0lFX1JFRlJFU0hfRUFDSF9S RVFVRVNUIl0gPSBGYWxzZQorICAgICAgICAgd2l0aCBzZWxmLmFwcC50ZXN0X2NsaWVudCgpIGFz IGM6CisgICAgICAgICAgICAgYy5nZXQoIi9sb2dpbi1ub3RjaC1yZW1lbWJlciIpCistICAgICAg ICAgICAgc2VsZi5hc3NlcnRJbigicmVtZW1iZXIiLCBjLmNvb2tpZV9qYXIuX2Nvb2tpZXNbZG9t YWluXVtwYXRoXSkKKy0gICAgICAgICAgICBleHBpcmF0aW9uX2RhdGVfMSA9IGRhdGV0aW1lLnV0 Y2Zyb210aW1lc3RhbXAoCistICAgICAgICAgICAgICAgIGMuY29va2llX2phci5fY29va2llc1tk b21haW5dW3BhdGhdWyJyZW1lbWJlciJdLmV4cGlyZXMKKy0gICAgICAgICAgICApCistCistICAg ICAgICAgICAgc2VsZi5fZGVsZXRlX3Nlc3Npb24oYykKKysgICAgICAgICAgICBjb29raWUgPSBj LmdldF9jb29raWUoa2V5PSJyZW1lbWJlciIsIGRvbWFpbj1kb21haW4sIHBhdGg9cGF0aCkKKysg ICAgICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShjb29raWUpCisrICAgICAgICAgICAgZXhw aXJhdGlvbl9kYXRlXzEgPSBkYXRldGltZS51dGNmcm9tdGltZXN0YW1wKGNvb2tpZS5leHBpcmVz LnRpbWVzdGFtcCgpKQorIAorKyAgICAgICAgICAgICMgc2VsZi5fZGVsZXRlX3Nlc3Npb24oYykK KyAgICAgICAgICAgICBjLmdldCgiL3VzZXJuYW1lIikKKy0gICAgICAgICAgICBzZWxmLmFzc2Vy dEluKCJyZW1lbWJlciIsIGMuY29va2llX2phci5fY29va2llc1tkb21haW5dW3BhdGhdKQorLSAg ICAgICAgICAgIGV4cGlyYXRpb25fZGF0ZV8yID0gZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFtcCgK Ky0gICAgICAgICAgICAgICAgYy5jb29raWVfamFyLl9jb29raWVzW2RvbWFpbl1bcGF0aF1bInJl bWVtYmVyIl0uZXhwaXJlcworLSAgICAgICAgICAgICkKKysgICAgICAgICAgICBjb29raWUgPSBj LmdldF9jb29raWUoa2V5PSJyZW1lbWJlciIsIGRvbWFpbj1kb21haW4sIHBhdGg9cGF0aCkKKysg ICAgICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShjb29raWUpCisrICAgICAgICAgICAgZXhw aXJhdGlvbl9kYXRlXzIgPSBkYXRldGltZS51dGNmcm9tdGltZXN0YW1wKGNvb2tpZS5leHBpcmVz LnRpbWVzdGFtcCgpKQorICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwaXJhdGlvbl9k YXRlXzEsIGV4cGlyYXRpb25fZGF0ZV8yKQorIAorICAgICAgICAgIyBXaXRoIHJlZnJlc2ggKG1v Y2sgZGF0ZXRpbWUncyBgdXRjbm93YCkKK0BAIC04MjAsMjIgKzgwMywyNCBAQAorICAgICAgICAg ICAgIHNlbGYuYXBwLmNvbmZpZ1siUkVNRU1CRVJfQ09PS0lFX1JFRlJFU0hfRUFDSF9SRVFVRVNU Il0gPSBUcnVlCisgICAgICAgICAgICAgbm93ID0gZGF0ZXRpbWUudXRjbm93KCkKKyAgICAgICAg ICAgICBtb2NrX2R0LnV0Y25vdyA9IE1vY2socmV0dXJuX3ZhbHVlPW5vdykKKy0KKysgICAgICAg ICAgICBtb2NrX3V0Y25vdzEgPSBtb2NrX2R0LnV0Y25vdworICAgICAgICAgICAgIHdpdGggc2Vs Zi5hcHAudGVzdF9jbGllbnQoKSBhcyBjOgorICAgICAgICAgICAgICAgICBjLmdldCgiL2xvZ2lu LW5vdGNoLXJlbWVtYmVyIikKKy0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigicmVtZW1i ZXIiLCBjLmNvb2tpZV9qYXIuX2Nvb2tpZXNbZG9tYWluXVtwYXRoXSkKKysgICAgICAgICAgICAg ICAgY29va2llID0gYy5nZXRfY29va2llKGtleT0icmVtZW1iZXIiLCBkb21haW49ZG9tYWluLCBw YXRoPXBhdGgpCisgICAgICAgICAgICAgICAgIGV4cGlyYXRpb25fZGF0ZV8xID0gZGF0ZXRpbWUu dXRjZnJvbXRpbWVzdGFtcCgKKy0gICAgICAgICAgICAgICAgICAgIGMuY29va2llX2phci5fY29v a2llc1tkb21haW5dW3BhdGhdWyJyZW1lbWJlciJdLmV4cGlyZXMKKysgICAgICAgICAgICAgICAg ICAgIGNvb2tpZS5leHBpcmVzLnRpbWVzdGFtcCgpCisgICAgICAgICAgICAgICAgICkKKyAgICAg ICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUoZXhwaXJhdGlvbl9kYXRlXzEpCisgCist ICAgICAgICAgICAgICAgIHNlbGYuX2RlbGV0ZV9zZXNzaW9uKGMpCisrICAgICAgICAgICAgICAg ICMgc2VsZi5fZGVsZXRlX3Nlc3Npb24oYykKKyAKKyAgICAgICAgICAgICAgICAgbW9ja19kdC51 dGNub3cgPSBNb2NrKHJldHVybl92YWx1ZT1ub3cgKyB0aW1lZGVsdGEoc2Vjb25kcz0xKSkKKysg ICAgICAgICAgICAgICAgbW9ja191dGNub3cyID0gbW9ja19kdC51dGNub3cKKysgICAgICAgICAg ICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChtb2NrX3V0Y25vdzEsIG1vY2tfdXRjbm93MikKKyAg ICAgICAgICAgICAgICAgYy5nZXQoIi91c2VybmFtZSIpCistICAgICAgICAgICAgICAgIHNlbGYu YXNzZXJ0SW4oInJlbWVtYmVyIiwgYy5jb29raWVfamFyLl9jb29raWVzW2RvbWFpbl1bcGF0aF0p CisrICAgICAgICAgICAgICAgIGNvb2tpZSA9IGMuZ2V0X2Nvb2tpZShrZXk9InJlbWVtYmVyIiwg ZG9tYWluPWRvbWFpbiwgcGF0aD1wYXRoKQorICAgICAgICAgICAgICAgICBleHBpcmF0aW9uX2Rh dGVfMiA9IGRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAoCistICAgICAgICAgICAgICAgICAgICBj LmNvb2tpZV9qYXIuX2Nvb2tpZXNbZG9tYWluXVtwYXRoXVsicmVtZW1iZXIiXS5leHBpcmVzCisr ICAgICAgICAgICAgICAgICAgICBjb29raWUuZXhwaXJlcy50aW1lc3RhbXAoKQorICAgICAgICAg ICAgICAgICApCisgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKGV4cGlyYXRp b25fZGF0ZV8yKQorICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGV4cGlyYXRp b25fZGF0ZV8xLCBleHBpcmF0aW9uX2RhdGVfMikKK0BAIC0xMDE2LDcgKzEwMDEsNyBAQAorICAg ICAgICAgICAgIGMuZ2V0KCIvbG9naW4tbm90Y2gtcmVtZW1iZXIiKQorICAgICAgICAgICAgIHdp dGggYy5zZXNzaW9uX3RyYW5zYWN0aW9uKCkgYXMgc2VzczoKKyAgICAgICAgICAgICAgICAgc2Vz c1siX3VzZXJfaWQiXSA9IE5vbmUKKy0gICAgICAgICAgICBjLnNldF9jb29raWUoZG9tYWluLCBz ZWxmLnJlbWVtYmVyX2Nvb2tpZV9uYW1lLCAiZm9vIikKKysgICAgICAgICAgICBjLnNldF9jb29r aWUoc2VsZi5yZW1lbWJlcl9jb29raWVfbmFtZSwgImZvbyIsIGRvbWFpbj1kb21haW4pCisgICAg ICAgICAgICAgcmVzdWx0ID0gYy5nZXQoIi91c2VybmFtZSIpCisgICAgICAgICAgICAgc2VsZi5h c3NlcnRFcXVhbCgiQW5vbnltb3VzIiwgcmVzdWx0LmRhdGEuZGVjb2RlKCJ1dGYtOCIpKQorIAor QEAgLTEzMTUsNyArMTMwMCw3IEBACisgICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAg ICByZXR1cm4gVVNFUlMuZ2V0KHVzZXJfaWQpCisgCistICAgICAgICAjIFRoaXMgd2lsbCBoZWxw IHVzIHdpdGggdGhlIHBvc3NpYmlsaXR5IG9mIHR5cG9lcyBpbiB0aGUgdGVzdHMuIE5vdworKyAg ICAgICAgIyBUaGlzIHdpbGwgaGVscCB1cyB3aXRoIHRoZSBwb3NzaWJpbGl0eSBvZiB0eXBvcyBp biB0aGUgdGVzdHMuIE5vdworICAgICAgICAgIyB3ZSBzaG91bGRuJ3QgaGF2ZSB0byBjaGVjayBl YWNoIHJlc3BvbnNlIHRvIGhlbHAgdXMgc2V0IHVwIHN0YXRlCisgICAgICAgICAjIChzdWNoIGFz IGxvZ2luIHBhZ2VzKSB0byBtYWtlIHN1cmUgaXQgd29ya2VkOiB3ZSB3aWxsIGFsd2F5cworICAg ICAgICAgIyBnZXQgYW4gZXhjZXB0aW9uIHJhaXNlZCAocmF0aGVyIHRoYW4gcmV0dXJuIGEgNDA0 IHJlc3BvbnNlKQorQEAgLTE0MjYsOSArMTQxMSwxMCBAQAorICAgICAgICAgICAgIHJlc3VsdCA9 IGxvZ2luX3VybCgiaHR0cHM6Ly9hdXRoLmxvY2FsaG9zdC9sb2dpbiIsIFBST1RFQ1RFRCkKKyAg ICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCByZXN1bHQpCisgCisrICAgICAg ICAgICAgdXJsID0gbG9naW5fdXJsKCIvbG9naW4/YWZmaWw9Y2dudSIsIFBST1RFQ1RFRCkKKyAg ICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgICAgICAiL2xvZ2luP2Fm ZmlsPWNnbnUmbmV4dD0lMkZwcm90ZWN0ZWQiLAorLSAgICAgICAgICAgICAgICBsb2dpbl91cmwo Ii9sb2dpbj9hZmZpbD1jZ251IiwgUFJPVEVDVEVEKSwKKysgICAgICAgICAgICAgICAgdXJsLAor ICAgICAgICAgICAgICkKKyAKKyAgICAgZGVmIHRlc3RfbG9naW5fdXJsX2dlbmVyYXRpb25fd2l0 aF92aWV3KHNlbGYpOgorQEAgLTE1OTAsNyArMTU3Niw3IEBACisgICAgICAgICBkZWYgbG9hZF91 c2VyKHVzZXJfaWQpOgorICAgICAgICAgICAgIHJldHVybiBVU0VSU1tzdHIodXNlcl9pZCldCisg CistICAgICAgICAjIFRoaXMgd2lsbCBoZWxwIHVzIHdpdGggdGhlIHBvc3NpYmlsaXR5IG9mIHR5 cG9lcyBpbiB0aGUgdGVzdHMuIE5vdworKyAgICAgICAgIyBUaGlzIHdpbGwgaGVscCB1cyB3aXRo IHRoZSBwb3NzaWJpbGl0eSBvZiB0eXBvcyBpbiB0aGUgdGVzdHMuIE5vdworICAgICAgICAgIyB3 ZSBzaG91bGRuJ3QgaGF2ZSB0byBjaGVjayBlYWNoIHJlc3BvbnNlIHRvIGhlbHAgdXMgc2V0IHVw IHN0YXRlCisgICAgICAgICAjIChzdWNoIGFzIGxvZ2luIHBhZ2VzKSB0byBtYWtlIHN1cmUgaXQg d29ya2VkOiB3ZSB3aWxsIGFsd2F5cworICAgICAgICAgIyBnZXQgYW4gZXhjZXB0aW9uIHJhaXNl ZCAocmF0aGVyIHRoYW4gcmV0dXJuIGEgNDA0IHJlc3BvbnNlKQorQEAgLTE2NDYsNyArMTYzMiw3 IEBACisgICAgICAgICBkZWYgbG9hZF91c2VyKHVzZXJfaWQpOgorICAgICAgICAgICAgIHJldHVy biBVU0VSU1tzdHIodXNlcl9pZCldCisgCistICAgICAgICAjIFRoaXMgd2lsbCBoZWxwIHVzIHdp dGggdGhlIHBvc3NpYmlsaXR5IG9mIHR5cG9lcyBpbiB0aGUgdGVzdHMuIE5vdworKyAgICAgICAg IyBUaGlzIHdpbGwgaGVscCB1cyB3aXRoIHRoZSBwb3NzaWJpbGl0eSBvZiB0eXBvcyBpbiB0aGUg dGVzdHMuIE5vdworICAgICAgICAgIyB3ZSBzaG91bGRuJ3QgaGF2ZSB0byBjaGVjayBlYWNoIHJl c3BvbnNlIHRvIGhlbHAgdXMgc2V0IHVwIHN0YXRlCisgICAgICAgICAjIChzdWNoIGFzIGxvZ2lu IHBhZ2VzKSB0byBtYWtlIHN1cmUgaXQgd29ya2VkOiB3ZSB3aWxsIGFsd2F5cworICAgICAgICAg IyBnZXQgYW4gZXhjZXB0aW9uIHJhaXNlZCAocmF0aGVyIHRoYW4gcmV0dXJuIGEgNDA0IHJlc3Bv bnNlKQorQEAgLTE3NDIsNyArMTcyOCw3IEBACisgICAgICAgICBkZWYgbG9hZF91c2VyKHVzZXJf aWQpOgorICAgICAgICAgICAgIHJldHVybiBVU0VSU1tpbnQodXNlcl9pZCldCisgCistICAgICAg ICAjIFRoaXMgd2lsbCBoZWxwIHVzIHdpdGggdGhlIHBvc3NpYmlsaXR5IG9mIHR5cG9lcyBpbiB0 aGUgdGVzdHMuIE5vdworKyAgICAgICAgIyBUaGlzIHdpbGwgaGVscCB1cyB3aXRoIHRoZSBwb3Nz aWJpbGl0eSBvZiB0eXBvcyBpbiB0aGUgdGVzdHMuIE5vdworICAgICAgICAgIyB3ZSBzaG91bGRu J3QgaGF2ZSB0byBjaGVjayBlYWNoIHJlc3BvbnNlIHRvIGhlbHAgdXMgc2V0IHVwIHN0YXRlCisg ICAgICAgICAjIChzdWNoIGFzIGxvZ2luIHBhZ2VzKSB0byBtYWtlIHN1cmUgaXQgd29ya2VkOiB3 ZSB3aWxsIGFsd2F5cworICAgICAgICAgIyBnZXQgYW4gZXhjZXB0aW9uIHJhaXNlZCAocmF0aGVy IHRoYW4gcmV0dXJuIGEgNDA0IHJlc3BvbnNlKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24z LUZsYXNrLUxvZ2luL3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLUZsYXNrLUxvZ2luL3RlbXBs YXRlCmluZGV4IDFlMTk4OWZjYmI3MmMuLmMxYjY2MjA0M2Y0NGIgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvcHl0aG9uMy1GbGFzay1Mb2dpbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMtRmxh c2stTG9naW4vdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3B5dGhvbjMtRmxhc2stTG9naW4nCiBwa2duYW1lPXB5dGhvbjMtRmxhc2stTG9naW4KIHZlcnNp b249MC42LjIKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9k dWxlCittYWtlX2NoZWNrX2FyZ3M9Ii1wIG5vOndhcm5pbmdzIgogaG9zdG1ha2VkZXBlbmRzPSJw eXRob24zLXNldHVwdG9vbHMiCiBkZXBlbmRzPSJweXRob24zLUZsYXNrIgotY2hlY2tkZXBlbmRz PSJweXRob24zLVdlcmt6ZXVnIHB5dGhvbjMtRmxhc2siCitjaGVja2RlcGVuZHM9InB5dGhvbjMt c2VtYW50aWN2ZXJzaW9uIHB5dGhvbjMtcHl0ZXN0IHB5dGhvbjMtYXNnaXJlZiAkZGVwZW5kcyIK IHNob3J0X2Rlc2M9IlVzZXIgc2Vzc2lvbiBtYW5hZ2VtZW50IGZvciBGbGFzayAoUHl0aG9uMyki CiBtYWludGFpbmVyPSJwdWx1eCA8cHVsdXhAcGY0c2guZGU+IgogbGljZW5zZT0iTUlUIgoKRnJv bSAwNTg5NDA3NGYxMjQyNzI4ZjZkZmY4Y2ExM2FhMzBkNTg0MWFkYjBmIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpE YXRlOiBUdWUsIDE3IE9jdCAyMDIzIDA4OjExOjM1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxNi8x OF0gTmV3IHBhY2thZ2U6IHB5dGhvbjMtZmxhc2dnZXItMC45LjcuMQoKLS0tCiBzcmNwa2dzL3B5 dGhvbjMtZmxhc2dnZXIvdGVtcGxhdGUgfCAyMiArKysrKysrKysrKysrKysrKysrKysrCiBzcmNw a2dzL3B5dGhvbjMtZmxhc2dnZXIvdXBkYXRlICAgfCAgMSArCiAyIGZpbGVzIGNoYW5nZWQsIDIz IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3B5dGhvbjMtZmxhc2dn ZXIvdGVtcGxhdGUKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3B5dGhvbjMtZmxhc2dnZXIv dXBkYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWZsYXNnZ2VyL3RlbXBsYXRlIGIv c3JjcGtncy9weXRob24zLWZsYXNnZ2VyL3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMDAuLjJjZjZhNWM1ZDQ0MGMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL3B5dGhvbjMtZmxhc2dnZXIvdGVtcGxhdGUKQEAgLTAsMCArMSwyMiBAQAorIyBUZW1wbGF0 ZSBmaWxlIGZvciAncHl0aG9uMy1mbGFzZ2dlcicKK3BrZ25hbWU9cHl0aG9uMy1mbGFzZ2dlcgor dmVyc2lvbj0wLjkuNy4xCityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1weXRob24zLW1vZHVsZQor IyBFeGFtcGxlcyByZXF1aXJlIHVucGFja2FnZWQgImZsZXgiCittYWtlX2NoZWNrX2FyZ3M9Ii0t aWdub3JlIHRlc3RzL3Rlc3RfZXhhbXBsZXMucHkiCittYWtlX2NoZWNrX3RhcmdldD0idGVzdHMi Citob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0b29scyIKK2RlcGVuZHM9InB5dGhvbjMt Rmxhc2sgcHl0aG9uMy15YW1sIHB5dGhvbjMtanNvbnNjaGVtYSBweXRob24zLW1pc3R1bmUKKyBw eXRob24zLXBhY2thZ2luZyBweXRob24zLXBhY2thZ2luZyBweXRob24zLXNpeCIKK2NoZWNrZGVw ZW5kcz0icHl0aG9uMy1weXRlc3QgJGRlcGVuZHMiCitzaG9ydF9kZXNjPSJPcGVuQVBJIHNwZWNz IGFuZCBTd2FnZ2VyIFVJIGZvciBGbGFzayBBUElzIgorbWFpbnRhaW5lcj0iQW5kcmV3IEouIEhl c2ZvcmQgPGFqaEBzaWRlYmFuZC5vcmc+IgorbGljZW5zZT0iTUlUIgoraG9tZXBhZ2U9Imh0dHA6 Ly9mbGFzZ2dlci5weXRob25hbnl3aGVyZS5jb20vIgorZGlzdGZpbGVzPSIke1BZUElfU0lURX0v Zi9mbGFzZ2dlci9mbGFzZ2dlci0ke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPWNhMDk4ZTEw YmZiYjEyZjA0N2FjYzYyOTljYzcwYTMzODUxOTQzYTc0NmU1NTBkODZlNjVlNjBkNGRmMjQ1ZmIK KworcG9zdF9pbnN0YWxsKCkgeworCXZsaWNlbnNlIExJQ0VOU0UKK30KZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcHl0aG9uMy1mbGFzZ2dlci91cGRhdGUgYi9zcmNwa2dzL3B5dGhvbjMtZmxhc2dnZXIv dXBkYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLmQ0MGQ0NzRl NWRhNTQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B5dGhvbjMtZmxhc2dnZXIvdXBkYXRl CkBAIC0wLDAgKzEgQEAKK2lnbm9yZT0iKmIqICpkZXYqIgoKRnJvbSA5ODRkNWE0MDQ4M2RkZWVl OGQ1Nzk3MWUxYjNiYjQ4YzI3OGMyY2I0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAi QW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBUdWUsIDE3IE9jdCAy MDIzIDA4OjIzOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxNy8xOF0gcHl0aG9uMy1odHRwYmlu OiB1cGRhdGUgdG8gMC4xMC4xLgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi9wYXRjaGVz L2Jyb3RsaS5wYXRjaCAgfCAgMjggKysrKysKIC4uLi9weXRob24zLWh0dHBiaW4vcGF0Y2hlcy9m bGFzay0zLjAucGF0Y2ggICB8IDExMCArKysrKysrKysrKysrKysrKysKIC4uLi9wYXRjaGVzL3dl cmt6ZXVnLTIuMS5wYXRjaCAgICAgICAgICAgICAgICB8ICA2MSAtLS0tLS0tLS0tCiBzcmNwa2dz L3B5dGhvbjMtaHR0cGJpbi90ZW1wbGF0ZSAgICAgICAgICAgICAgfCAgMTYgKy0tCiA0IGZpbGVz IGNoYW5nZWQsIDE0NiBpbnNlcnRpb25zKCspLCA2OSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi9wYXRjaGVzL2Jyb3RsaS5wYXRjaAogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0aG9uMy1odHRwYmluL3BhdGNoZXMvZmxhc2stMy4w LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9weXRob24zLWh0dHBiaW4vcGF0Y2hl cy93ZXJremV1Zy0yLjEucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtaHR0cGJp bi9wYXRjaGVzL2Jyb3RsaS5wYXRjaCBiL3NyY3BrZ3MvcHl0aG9uMy1odHRwYmluL3BhdGNoZXMv YnJvdGxpLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjUz NDE2NGNjNTA4OGYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi9w YXRjaGVzL2Jyb3RsaS5wYXRjaApAQCAtMCwwICsxLDI4IEBACitkaWZmIC11ciBweXRob24zLWh0 dHBiaW4tMC4xMC4xLm9yaWcvaHR0cGJpbi9maWx0ZXJzLnB5IHB5dGhvbjMtaHR0cGJpbi0wLjEw LjEvaHR0cGJpbi9maWx0ZXJzLnB5CistLS0gcHl0aG9uMy1odHRwYmluLTAuMTAuMS5vcmlnL2h0 dHBiaW4vZmlsdGVycy5weQkyMDIzLTEwLTE3IDA4OjEyOjU2LjgxNDEzOTQ4NSAtMDQwMAorKysr IHB5dGhvbjMtaHR0cGJpbi0wLjEwLjEvaHR0cGJpbi9maWx0ZXJzLnB5CTIwMjMtMTAtMTcgMDg6 MTQ6MjAuOTc5NTE0NTAwIC0wNDAwCitAQCAtMTAsNyArMTAsMTAgQEAKKyBpbXBvcnQgZ3ppcCBh cyBnemlwMgorIGltcG9ydCB6bGliCisgCistaW1wb3J0IGJyb3RsaWNmZmkgYXMgX2Jyb3RsaQor K3RyeToKKysgICAgaW1wb3J0IGJyb3RsaWNmZmkgYXMgX2Jyb3RsaQorK2V4Y2VwdCBJbXBvcnRF cnJvcjoKKysgICAgaW1wb3J0IGJyb3RsaSBhcyBfYnJvdGxpCisgCisgZnJvbSBzaXggaW1wb3J0 IEJ5dGVzSU8KKyBmcm9tIGRlY2ltYWwgaW1wb3J0IERlY2ltYWwKK2RpZmYgLXVyIHB5dGhvbjMt aHR0cGJpbi0wLjEwLjEub3JpZy9weXByb2plY3QudG9tbCBweXRob24zLWh0dHBiaW4tMC4xMC4x L3B5cHJvamVjdC50b21sCistLS0gcHl0aG9uMy1odHRwYmluLTAuMTAuMS5vcmlnL3B5cHJvamVj dC50b21sCTIwMjMtMTAtMTcgMDg6MTI6NTYuODE2MTM5NDk0IC0wNDAwCisrKysgcHl0aG9uMy1o dHRwYmluLTAuMTAuMS9weXByb2plY3QudG9tbAkyMDIzLTEwLTE3IDA4OjEzOjQ2LjE2NTM1OTM3 NyAtMDQwMAorQEAgLTMyLDcgKzMyLDggQEAKKyBdCisgZGVwZW5kZW5jaWVzID0gWworICAgICAi Rmxhc2siLAorLSAgICAiYnJvdGxpY2ZmaSIsCisrICAgICJicm90bGk7IHBsYXRmb3JtX3B5dGhv bl9pbXBsZW1lbnRhdGlvbiA9PSAnQ1B5dGhvbiciLAorKyAgICAiYnJvdGxpY2ZmaTsgcGxhdGZv cm1fcHl0aG9uX2ltcGxlbWVudGF0aW9uICE9ICdDUHl0aG9uJyIsCisgICAgICJkZWNvcmF0b3Ii LAorICAgICAiZmxhc2dnZXIiLAorICAgICAnZ3JlZW5sZXQgPCAzLjA7IHB5dGhvbl92ZXJzaW9u PCIzLjEyIicsCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi9wYXRjaGVzL2Zs YXNrLTMuMC5wYXRjaCBiL3NyY3BrZ3MvcHl0aG9uMy1odHRwYmluL3BhdGNoZXMvZmxhc2stMy4w LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjcwYjk4ZTg5 MTQxMWIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi9wYXRjaGVz L2ZsYXNrLTMuMC5wYXRjaApAQCAtMCwwICsxLDExMCBAQAorRnJvbSBjMWQ5ZTMzMDQ5MjYzZmVk M2NiMjc4MDZhOTdmMDk0YWNjMzUwOTA1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTog TmF0ZSBQcmV3aXR0IDxuYXRlLnByZXdpdHRAZ21haWwuY29tPgorRGF0ZTogVGh1LCAxMiBPY3Qg MjAyMyAwODozMDo0MiAtMDcwMAorU3ViamVjdDogW1BBVENIXSBTdXBwb3J0IEZsYXNrIDMuMCAo IzI5KQorCistLS0KKyBodHRwYmluL2NvcmUucHkgICAgfCAgOCArKystLS0tLQorIGh0dHBiaW4v aGVscGVycy5weSB8IDIxICsrKysrKysrKysrKysrKystLS0tLQorIHB5cHJvamVjdC50b21sICAg ICB8ICAzICstLQorIDMgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRp b25zKC0pCisKK2RpZmYgLS1naXQgYS9odHRwYmluL2NvcmUucHkgYi9odHRwYmluL2NvcmUucHkK K2luZGV4IDVjMTc4M2ExLi5hODJjMWI4OCAxMDA2NDQKKy0tLSBhL2h0dHBiaW4vY29yZS5weQor KysrIGIvaHR0cGJpbi9jb3JlLnB5CitAQCAtMzIsNyArMzIsNyBAQAorICAgICBmcm9tIHdlcmt6 ZXVnLndyYXBwZXJzIGltcG9ydCBSZXNwb25zZQorIGV4Y2VwdCBJbXBvcnRFcnJvcjogICMgd2Vy a3pldWcgPCAyLjEKKyAgICAgZnJvbSB3ZXJremV1Zy53cmFwcGVycyBpbXBvcnQgQmFzZVJlc3Bv bnNlIGFzIFJlc3BvbnNlCistZnJvbSB3ZXJremV1Zy5odHRwIGltcG9ydCBwYXJzZV9hdXRob3Jp emF0aW9uX2hlYWRlcgorKworIGZyb20gZmxhc2dnZXIgaW1wb3J0IFN3YWdnZXIsIE5PX1NBTklU SVpFUgorIAorIGZyb20gLiBpbXBvcnQgZmlsdGVycworQEAgLTQ3LDYgKzQ3LDcgQEAKKyAgICAg SCwKKyAgICAgUk9CT1RfVFhULAorICAgICBBTkdSWV9BU0NJSSwKKysgICAgcGFyc2VfYXV0aG9y aXphdGlvbl9oZWFkZXIsCisgICAgIHBhcnNlX211bHRpX3ZhbHVlX2hlYWRlciwKKyAgICAgbmV4 dF9zdGFsZV9hZnRlcl92YWx1ZSwKKyAgICAgZGlnZXN0X2NoYWxsZW5nZV9yZXNwb25zZSwKK0BA IC02MzYsMTYgKzYzNywxMyBAQCBkZWYgcmVkaXJlY3RfdG8oKToKKyAgICAgYXJnc19kaWN0ID0g cmVxdWVzdC5hcmdzLml0ZW1zKCkKKyAgICAgYXJncyA9IENhc2VJbnNlbnNpdGl2ZURpY3QoYXJn c19kaWN0KQorIAorLSAgICAjIFdlIG5lZWQgdG8gYnVpbGQgdGhlIHJlc3BvbnNlIG1hbnVhbGx5 IGFuZCBjb252ZXJ0IHRvIFVURi04IHRvIHByZXZlbnQKKy0gICAgIyB3ZXJremV1ZyBmcm9tICJm aXhpbmciIHRoZSBVUkwuIFRoaXMgZW5kcG9pbnQgc2hvdWxkIHNldCB0aGUgTG9jYXRpb24KKy0g ICAgIyBoZWFkZXIgdG8gdGhlIGV4YWN0IHN0cmluZyBzdXBwbGllZC4KKyAgICAgcmVzcG9uc2Ug PSBhcHAubWFrZV9yZXNwb25zZSgiIikKKyAgICAgcmVzcG9uc2Uuc3RhdHVzX2NvZGUgPSAzMDIK KyAgICAgaWYgInN0YXR1c19jb2RlIiBpbiBhcmdzOgorICAgICAgICAgc3RhdHVzX2NvZGUgPSBp bnQoYXJnc1sic3RhdHVzX2NvZGUiXSkKKyAgICAgICAgIGlmIHN0YXR1c19jb2RlID49IDMwMCBh bmQgc3RhdHVzX2NvZGUgPCA0MDA6CisgICAgICAgICAgICAgcmVzcG9uc2Uuc3RhdHVzX2NvZGUg PSBzdGF0dXNfY29kZQorLSAgICByZXNwb25zZS5oZWFkZXJzWyJMb2NhdGlvbiJdID0gYXJnc1si dXJsIl0uZW5jb2RlKCJ1dGYtOCIpCisrICAgIHJlc3BvbnNlLmhlYWRlcnNbIkxvY2F0aW9uIl0g PSBhcmdzWyJ1cmwiXQorIAorICAgICByZXR1cm4gcmVzcG9uc2UKKyAKK2RpZmYgLS1naXQgYS9o dHRwYmluL2hlbHBlcnMucHkgYi9odHRwYmluL2hlbHBlcnMucHkKK2luZGV4IGIyOWUxODM1Li44 MzZjODAyNiAxMDA2NDQKKy0tLSBhL2h0dHBiaW4vaGVscGVycy5weQorKysrIGIvaHR0cGJpbi9o ZWxwZXJzLnB5CitAQCAtMTMsOCArMTMsMTQgQEAKKyBpbXBvcnQgdGltZQorIGltcG9ydCBvcwor IGZyb20gaGFzaGxpYiBpbXBvcnQgbWQ1LCBzaGEyNTYsIHNoYTUxMgorLWZyb20gd2Vya3pldWcu aHR0cCBpbXBvcnQgcGFyc2VfYXV0aG9yaXphdGlvbl9oZWFkZXIKKyBmcm9tIHdlcmt6ZXVnLmRh dGFzdHJ1Y3R1cmVzIGltcG9ydCBXV1dBdXRoZW50aWNhdGUKKytmcm9tIHdlcmt6ZXVnLmh0dHAg aW1wb3J0IGR1bXBfaGVhZGVyCisrCisrdHJ5OgorKyAgICBmcm9tIHdlcmt6ZXVnLmh0dHAgaW1w b3J0IHBhcnNlX2F1dGhvcml6YXRpb25faGVhZGVyCisrZXhjZXB0IEltcG9ydEVycm9yOiAjIHdl cmt6ZXVnIDwgMi4zCisrICAgIGZyb20gd2Vya3pldWcuZGF0YXN0cnVjdHVyZXMgaW1wb3J0IEF1 dGhvcml6YXRpb24KKysgICAgcGFyc2VfYXV0aG9yaXphdGlvbl9oZWFkZXIgPSBBdXRob3JpemF0 aW9uLmZyb21faGVhZGVyCisgCisgZnJvbSBmbGFzayBpbXBvcnQgcmVxdWVzdCwgbWFrZV9yZXNw b25zZQorIGZyb20gc2l4Lm1vdmVzLnVybGxpYi5wYXJzZSBpbXBvcnQgdXJscGFyc2UsIHVybHVu cGFyc2UKK0BAIC00NjYsOSArNDcyLDE0IEBAIGRlZiBkaWdlc3RfY2hhbGxlbmdlX3Jlc3BvbnNl KGFwcCwgcW9wLCBhbGdvcml0aG0sIHN0YWxlID0gRmFsc2UpOgorICAgICBdKSwgYWxnb3JpdGht KQorICAgICBvcGFxdWUgPSBIKG9zLnVyYW5kb20oMTApLCBhbGdvcml0aG0pCisgCistICAgIGF1 dGggPSBXV1dBdXRoZW50aWNhdGUoImRpZ2VzdCIpCistICAgIGF1dGguc2V0X2RpZ2VzdCgnbWVA a2VubmV0aHJlaXR6LmNvbScsIG5vbmNlLCBvcGFxdWU9b3BhcXVlLAorLSAgICAgICAgICAgICAg ICAgICAgcW9wPSgnYXV0aCcsICdhdXRoLWludCcpIGlmIHFvcCBpcyBOb25lIGVsc2UgKHFvcCwp LCBhbGdvcml0aG09YWxnb3JpdGhtKQorLSAgICBhdXRoLnN0YWxlID0gc3RhbGUKKysgICAgdmFs dWVzID0geworKyAgICAgICAgJ3JlYWxtJzogJ21lQGtlbm5ldGhyZWl0ei5jb20nLAorKyAgICAg ICAgJ25vbmNlJzogbm9uY2UsCisrICAgICAgICAnb3BhcXVlJzogb3BhcXVlLAorKyAgICAgICAg J3FvcCc6IGR1bXBfaGVhZGVyKCgnYXV0aCcsICdhdXRoLWludCcpIGlmIHFvcCBpcyBOb25lIGVs c2UgKHFvcCwpKSwKKysgICAgICAgICdhbGdvcml0aG0nOiBhbGdvcml0aG0sCisrICAgICAgICAn c3RhbGUnOiBzdGFsZSwKKysgICAgfQorKyAgICBhdXRoID0gV1dXQXV0aGVudGljYXRlKCJkaWdl c3QiLCB2YWx1ZXM9dmFsdWVzKQorICAgICByZXNwb25zZS5oZWFkZXJzWydXV1ctQXV0aGVudGlj YXRlJ10gPSBhdXRoLnRvX2hlYWRlcigpCisgICAgIHJldHVybiByZXNwb25zZQorZGlmZiAtLWdp dCBhL3B5cHJvamVjdC50b21sIGIvcHlwcm9qZWN0LnRvbWwKK2luZGV4IDAyMDQ1N2VjLi45NDU0 ZTU2OSAxMDA2NDQKKy0tLSBhL3B5cHJvamVjdC50b21sCisrKysgYi9weXByb2plY3QudG9tbAor QEAgLTMxLDE1ICszMSwxNCBAQCBjbGFzc2lmaWVycyA9IFsKKyAgICAgIlByb2dyYW1taW5nIExh bmd1YWdlIDo6IFB5dGhvbiA6OiAzLjEyIiwKKyBdCisgZGVwZW5kZW5jaWVzID0gWworLSAgICAi Rmxhc2siLAorKyAgICAiZmxhc2sgPj0gMi4yLjQiLAorICAgICAiYnJvdGxpOyBwbGF0Zm9ybV9w eXRob25faW1wbGVtZW50YXRpb24gPT0gJ0NQeXRob24nIiwKKyAgICAgImJyb3RsaWNmZmk7IHBs YXRmb3JtX3B5dGhvbl9pbXBsZW1lbnRhdGlvbiAhPSAnQ1B5dGhvbiciLAorICAgICAiZGVjb3Jh dG9yIiwKKyAgICAgImZsYXNnZ2VyIiwKKyAgICAgJ2dyZWVubGV0IDwgMy4wOyBweXRob25fdmVy c2lvbjwiMy4xMiInLAorICAgICAnZ3JlZW5sZXQgPj0gMy4wLjBhMTsgcHl0aG9uX3ZlcnNpb24+ PSIzLjEyLjByYzAiJywKKyAgICAgJ2ltcG9ydGxpYi1tZXRhZGF0YTsgcHl0aG9uX3ZlcnNpb248 IjMuOCInLAorLSAgICAid2Vya3pldWcgPj0gMC4xNC4xIiwKKyAgICAgInNpeCIsCisgXQorIApk aWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWh0dHBiaW4vcGF0Y2hlcy93ZXJremV1Zy0yLjEu cGF0Y2ggYi9zcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi9wYXRjaGVzL3dlcmt6ZXVnLTIuMS5wYXRj aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGFjNTY2ZWRiZjAzMi4uMDAwMDAwMDAw MDAwMAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi9wYXRjaGVzL3dlcmt6ZXVnLTIuMS5w YXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDYxICswLDAgQEAKLUZyb20gZGY3MzNlOTAwMzI1ODk4 NjFkOTNiZTc4ZTIyZGJhZmMyZjFkYmVhNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206 IERhbmlsIFNoZWluIDxkc2hlaW5AYWx0bGludXgub3JnPgotRGF0ZTogTW9uLCAyNiBTZXAgMjAy MiAxNToyNjowMCArMDMwMAotU3ViamVjdDogW1BBVENIXSBmaXggV2Vya3pldWcgMi4xLnggY29t cGF0aWJpbGl0eQotCi0tIGZpeCBodHRwYmluL2NvcmUucHk6IHVzZSBSZXNwb25jZSBjbGFzcyBp bnN0ZWFkIG9mIEJhc2VSZXNwb25zZQotc2VlOiBodHRwczovL2dpdGh1Yi5jb20vcGFsbGV0cy93 ZXJremV1Zy9wdWxsLzIyNzYKLS0gZml4IHRlc3RzOiBUZXN0Q2xpZW50IGRvZXNuJ3QgcHJvdmlk ZSAnQ29udGVudC1MZW5ndGgnIGhlYWRlciBhbnltb3JlCi1zZWU6IGh0dHBzOi8vZ2l0aHViLmNv bS9wYWxsZXRzL3dlcmt6ZXVnL2lzc3Vlcy8yMzQ3Ci0tLS0KLSBodHRwYmluL2NvcmUucHkgfCA3 ICsrKysrLS0KLSB0ZXN0X2h0dHBiaW4ucHkgfCA0ICsrLS0KLSAyIGZpbGVzIGNoYW5nZWQsIDcg aW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL2h0dHBiaW4vY29y ZS5weSBiL2h0dHBiaW4vY29yZS5weQotaW5kZXggMzA1Yzk4ODIuLmQ1Yzg5ZWVkIDEwMDY0NAot LS0tIGEvaHR0cGJpbi9jb3JlLnB5Ci0rKysgYi9odHRwYmluL2NvcmUucHkKLUBAIC0yOSw3ICsy OSwxMCBAQAotIGZyb20gc2l4Lm1vdmVzIGltcG9ydCByYW5nZSBhcyB4cmFuZ2UKLSBmcm9tIHdl cmt6ZXVnLmRhdGFzdHJ1Y3R1cmVzIGltcG9ydCBXV1dBdXRoZW50aWNhdGUsIE11bHRpRGljdAot IGZyb20gd2Vya3pldWcuaHR0cCBpbXBvcnQgaHR0cF9kYXRlCi0tZnJvbSB3ZXJremV1Zy53cmFw cGVycyBpbXBvcnQgQmFzZVJlc3BvbnNlCi0rdHJ5OgotKyAgICBmcm9tIHdlcmt6ZXVnLndyYXBw ZXJzIGltcG9ydCBSZXNwb25zZQotK2V4Y2VwdCBJbXBvcnRFcnJvcjoKLSsgICAgZnJvbSB3ZXJr emV1Zy53cmFwcGVycyBpbXBvcnQgQmFzZVJlc3BvbnNlIGFzIFJlc3BvbnNlCi0gZnJvbSB3ZXJr emV1Zy5odHRwIGltcG9ydCBwYXJzZV9hdXRob3JpemF0aW9uX2hlYWRlcgotIGZyb20gZmxhc2dn ZXIgaW1wb3J0IFN3YWdnZXIsIE5PX1NBTklUSVpFUgotIAotQEAgLTc3LDcgKzgwLDcgQEAgZGVm IGpzb25pZnkoKmFyZ3MsICoqa3dhcmdzKToKLSAKLSAKLSAjIFByZXZlbnQgV1NHSSBmcm9tIGNv cnJlY3RpbmcgdGhlIGNhc2luZyBvZiB0aGUgTG9jYXRpb24gaGVhZGVyCi0tQmFzZVJlc3BvbnNl LmF1dG9jb3JyZWN0X2xvY2F0aW9uX2hlYWRlciA9IEZhbHNlCi0rUmVzcG9uc2UuYXV0b2NvcnJl Y3RfbG9jYXRpb25faGVhZGVyID0gRmFsc2UKLSAKLSAjIEZpbmQgdGhlIGNvcnJlY3QgdGVtcGxh dGUgZm9sZGVyIHdoZW4gcnVubmluZyBmcm9tIGEgZGlmZmVyZW50IGxvY2F0aW9uCi0gdG1wbF9k aXIgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChfX2ZpbGVf XykpLCAidGVtcGxhdGVzIikKLWRpZmYgLS1naXQgYS90ZXN0X2h0dHBiaW4ucHkgYi90ZXN0X2h0 dHBiaW4ucHkKLWluZGV4IGI3MTA0ZmZjLi44NzMwNWFlNiAxMDA3NTUKLS0tLSBhL3Rlc3RfaHR0 cGJpbi5weQotKysrIGIvdGVzdF9odHRwYmluLnB5Ci1AQCAtMTQ4LDcgKzE0OCw3IEBAIGRlZiB0 ZXN0X2dldChzZWxmKToKLSAgICAgICAgIGRhdGEgPSBqc29uLmxvYWRzKHJlc3BvbnNlLmRhdGEu ZGVjb2RlKCd1dGYtOCcpKQotICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhWydhcmdzJ10s IHt9KQotICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhWydoZWFkZXJzJ11bJ0hvc3QnXSwg J2xvY2FsaG9zdCcpCi0tICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGFbJ2hlYWRlcnMnXVsn Q29udGVudC1MZW5ndGgnXSwgJzAnKQotKyAgICAgICAgIyBzZWxmLmFzc2VydEVxdWFsKGRhdGFb J2hlYWRlcnMnXVsnQ29udGVudC1MZW5ndGgnXSwgJzAnKQotICAgICAgICAgc2VsZi5hc3NlcnRF cXVhbChkYXRhWydoZWFkZXJzJ11bJ1VzZXItQWdlbnQnXSwgJ3Rlc3QnKQotICAgICAgICAgIyBz ZWxmLmFzc2VydEVxdWFsKGRhdGFbJ29yaWdpbiddLCBOb25lKQotICAgICAgICAgc2VsZi5hc3Nl cnRFcXVhbChkYXRhWyd1cmwnXSwgJ2h0dHA6Ly9sb2NhbGhvc3QvZ2V0JykKLUBAIC0xNjIsNyAr MTYyLDcgQEAgZGVmIHRlc3RfYW55dGhpbmcoc2VsZik6Ci0gICAgICAgICBkYXRhID0ganNvbi5s b2FkcyhyZXNwb25zZS5kYXRhLmRlY29kZSgndXRmLTgnKSkKLSAgICAgICAgIHNlbGYuYXNzZXJ0 RXF1YWwoZGF0YVsnYXJncyddLCB7fSkKLSAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YVsn aGVhZGVycyddWydIb3N0J10sICdsb2NhbGhvc3QnKQotLSAgICAgICAgc2VsZi5hc3NlcnRFcXVh bChkYXRhWydoZWFkZXJzJ11bJ0NvbnRlbnQtTGVuZ3RoJ10sICcwJykKLSsgICAgICAgICMgc2Vs Zi5hc3NlcnRFcXVhbChkYXRhWydoZWFkZXJzJ11bJ0NvbnRlbnQtTGVuZ3RoJ10sICcwJykKLSAg ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YVsndXJsJ10sICdodHRwOi8vbG9jYWxob3N0L2Fu eXRoaW5nL2Zvby9iYXInKQotICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhWydtZXRob2Qn XSwgJ0dFVCcpCi0gICAgICAgICBzZWxmLmFzc2VydFRydWUocmVzcG9uc2UuZGF0YS5lbmRzd2l0 aChiJ1xuJykpCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtaHR0cGJpbi90ZW1wbGF0ZSBi L3NyY3BrZ3MvcHl0aG9uMy1odHRwYmluL3RlbXBsYXRlCmluZGV4IGU3NDU0M2E2N2ZjNWIuLmU2 ZThmYzliYmQxYmYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1odHRwYmluL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1odHRwYmluL3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24zLWh0dHBiaW4nCiBwa2duYW1lPXB5dGhvbjMt aHR0cGJpbgotdmVyc2lvbj0wLjcuMAotcmV2aXNpb249NAotYnVpbGRfc3R5bGU9cHl0aG9uMy1t b2R1bGUKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xzIgotZGVwZW5kcz0icHl0 aG9uMy1GbGFzayBweXRob24zLWRlY29yYXRvciBweXRob24zLXNpeCBweXRob24zLUJyb3RsaQot IHB5dGhvbjMtcmF2ZW4gcHl0aG9uMy1ibGlua2VyIgordmVyc2lvbj0wLjEwLjEKK3JldmlzaW9u PTEKK2J1aWxkX3N0eWxlPXB5dGhvbjMtcGVwNTE3Citob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMt c2V0dXB0b29scyBweXRob24zLXdoZWVsIgorZGVwZW5kcz0icHl0aG9uMy1GbGFzayBweXRob24z LUJyb3RsaSBweXRob24zLWRlY29yYXRvciBweXRob24zLWZsYXNnZ2VyCisgcHl0aG9uMy1ncmVl bmxldCBweXRob24zLXNpeCIKIGNoZWNrZGVwZW5kcz0icHl0aG9uMy1weXRlc3QgJGRlcGVuZHMi CiBzaG9ydF9kZXNjPSJIVFRQIFJlcXVlc3QgJiBSZXNwb25zZSBTZXJ2aWNlIgogbWFpbnRhaW5l cj0iTWljaGFsIFZhc2lsZWsgPG1pY2hhbEB2YXNpbGVrLmN6PiIKIGxpY2Vuc2U9IklTQyIKLWhv bWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vcG9zdG1hbmxhYnMvaHR0cGJpbiIKK2hvbWVwYWdl PSJodHRwczovL2dpdGh1Yi5jb20vcHNmL2h0dHBiaW4iCiBkaXN0ZmlsZXM9IiR7UFlQSV9TSVRF fS9oL2h0dHBiaW4vaHR0cGJpbi0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWNiYjM3Nzkw YzkxNTc1ZjRmMTU3NTdmNDJhZDQxZDlmNzI5ZWIyMjdkNWVkYmU4OWU0ZWMxNzU0ODZkYjhkZmEK K2NoZWNrc3VtPTdiODU5NmJlYjBlNzVhN2I2NTNjMzlkMWYzY2YyNjNkNmQ1YzQ3NmQyOWUxZGY2 ZjdiYjJiNzBiZjlmMDZhM2QKIAogcG9zdF9pbnN0YWxsKCkgewogCXZsaWNlbnNlIExJQ0VOU0UK CkZyb20gOWY3MzQxYmNhZjdlNjZiNmE5ZWE3NTc0M2NlNmU5OTY5YjUzOTZkMyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9y Zz4KRGF0ZTogVHVlLCAxNyBPY3QgMjAyMyAxMDowNDo1MCAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg MTgvMThdIHB5dGhvbjMtcXVhcnQ6IHVwZGF0ZSB0byAwLjE5LjMuCgotLS0KIC4uLi9weXRob24z LXF1YXJ0L3BhdGNoZXMvYmxpbmtlci0xLjYucGF0Y2ggICB8IDM2MCAtLS0tLS0tLS0tLS0tLS0t LS0KIHNyY3BrZ3MvcHl0aG9uMy1xdWFydC90ZW1wbGF0ZSAgICAgICAgICAgICAgICB8ICAxMyAr LQogMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDM2NiBkZWxldGlvbnMoLSkKIGRl bGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3B5dGhvbjMtcXVhcnQvcGF0Y2hlcy9ibGlua2VyLTEu Ni5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1xdWFydC9wYXRjaGVzL2JsaW5r ZXItMS42LnBhdGNoIGIvc3JjcGtncy9weXRob24zLXF1YXJ0L3BhdGNoZXMvYmxpbmtlci0xLjYu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY1YjU2YjNjOGJhYjcuLjAwMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy9weXRob24zLXF1YXJ0L3BhdGNoZXMvYmxpbmtlci0xLjYu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzNjAgKzAsMCBAQAotRnJvbSBjOWI1NTVmZjI4NGJi NTRhNDVhZGFiNDRjOGU2ZDc4YWI4NzEzZGEwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJv bTogcGdqb25lcyA8cGhpbGlwLmdyYWhhbS5qb25lc0Bnb29nbGVtYWlsLmNvbT4KLURhdGU6IFN1 biwgOSBBcHIgMjAyMyAxNjo1NzoyNiArMDEwMAotU3ViamVjdDogW1BBVENIXSBVcGdyYWRlIHRv IGJsaW5rZXIgMS42Ci0KLVRoaXMgYWxsb3dzIHRoZSBjdXN0b20gc2lnbmFsIGltcGxlbWVudGF0 aW9uIHRvIGJlIHJlbW92ZWQgYW5kIGZvcgotc3luYyBzaWduYWwgcmVjZWl2ZXJzIHRvIGJlIHN1 cHBvcnRlZCBpbiB0aGUgc2FtZSBtYW5uZXIgYXMgc3luYyByb3V0ZQotaGFuZGxlcnMuCi0tLS0K LSBweXByb2plY3QudG9tbCAgICAgICAgICB8ICAyICstCi0gc3JjL3F1YXJ0L2FwcC5weSAgICAg ICAgfCAzOCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQotIHNyYy9xdWFydC9hc2dp LnB5ICAgICAgIHwgIDQgKystLQotIHNyYy9xdWFydC9jdHgucHkgICAgICAgIHwgIDQgKystLQot IHNyYy9xdWFydC9oZWxwZXJzLnB5ICAgIHwgIDUgKysrLS0KLSBzcmMvcXVhcnQvc2lnbmFscy5w eSAgICB8IDQ4ICsrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gc3Jj L3F1YXJ0L3RlbXBsYXRpbmcucHkgfCAxNiArKysrKysrKysrLS0tLQotIHRlc3RzL3Rlc3Rfc2ln bmFscy5weSAgIHwgMzcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIDggZmlsZXMg Y2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKSwgMTA2IGRlbGV0aW9ucygtKQotIGRlbGV0ZSBtb2Rl IDEwMDY0NCB0ZXN0cy90ZXN0X3NpZ25hbHMucHkKLQotZGlmZiAtLWdpdCBhL3B5cHJvamVjdC50 b21sIGIvcHlwcm9qZWN0LnRvbWwKLWluZGV4IGRhMzVhNjQ3Li45ZDQ4NzZhMCAxMDA2NDQKLS0t LSBhL3B5cHJvamVjdC50b21sCi0rKysgYi9weXByb2plY3QudG9tbAotQEAgLTI3LDcgKzI3LDcg QEAKLSBbdG9vbC5wb2V0cnkuZGVwZW5kZW5jaWVzXQotIHB5dGhvbiA9ICI+PTMuNyIKLSBhaW9m aWxlcyA9ICIqIgotLWJsaW5rZXIgPSAiPDEuNiIKLStibGlua2VyID0gIj49MS42IgotIGNsaWNr ID0gIj49OC4wLjAiCi0gaHlwZXJjb3JuID0gIj49MC4xMS4yIgotIGltcG9ydGxpYl9tZXRhZGF0 YSA9IHsgdmVyc2lvbiA9ICIqIiwgcHl0aG9uID0gIjwzLjEwIiB9Ci1kaWZmIC0tZ2l0IGEvc3Jj L3F1YXJ0L2FwcC5weSBiL3NyYy9xdWFydC9hcHAucHkKLWluZGV4IDhlZTExMWE3Li5lM2QzY2Mw ZiAxMDA2NDQKLS0tLSBhL3NyYy9xdWFydC9hcHAucHkKLSsrKyBiL3NyYy9xdWFydC9hcHAucHkK LUBAIC0xMTEzLDcgKzExMTMsOSBAQAotICAgICAgICAgQnkgZGVmYXVsdCB0aGlzIHN3aXRjaGVz IHRoZSBlcnJvciByZXNwb25zZSB0byBhIDUwMCBpbnRlcm5hbAotICAgICAgICAgc2VydmVyIGVy cm9yLgotICAgICAgICAgIiIiCi0tICAgICAgICBhd2FpdCBnb3RfcmVxdWVzdF9leGNlcHRpb24u c2VuZChzZWxmLCBleGNlcHRpb249ZXJyb3IpCi0rICAgICAgICBhd2FpdCBnb3RfcmVxdWVzdF9l eGNlcHRpb24uc2VuZF9hc3luYygKLSsgICAgICAgICAgICBzZWxmLCBfc3luY193cmFwcGVyPXNl bGYuZW5zdXJlX2FzeW5jLCBleGNlcHRpb249ZXJyb3IKLSsgICAgICAgICkKLSAKLSAgICAgICAg IHNlbGYubG9nX2V4Y2VwdGlvbihzeXMuZXhjX2luZm8oKSkKLSAKLUBAIC0xMTM4LDcgKzExNDAs OSBAQAotIAotICAgICAgICAgQnkgZGVmYXVsdCB0aGlzIGxvZ3MgdGhlIGV4Y2VwdGlvbiBhbmQg dGhlbiByZS1yYWlzZXMgaXQuCi0gICAgICAgICAiIiIKLS0gICAgICAgIGF3YWl0IGdvdF93ZWJz b2NrZXRfZXhjZXB0aW9uLnNlbmQoc2VsZiwgZXhjZXB0aW9uPWVycm9yKQotKyAgICAgICAgYXdh aXQgZ290X3dlYnNvY2tldF9leGNlcHRpb24uc2VuZF9hc3luYygKLSsgICAgICAgICAgICBzZWxm LCBfc3luY193cmFwcGVyPXNlbGYuZW5zdXJlX2FzeW5jLCBleGNlcHRpb249ZXJyb3IKLSsgICAg ICAgICkKLSAKLSAgICAgICAgIHNlbGYubG9nX2V4Y2VwdGlvbihzeXMuZXhjX2luZm8oKSkKLSAK LUBAIC0xMjQ1LDcgKzEyNDksNyBAQAotICAgICAgICAgICAgIGZvciBmdW5jdGlvbiBpbiBzZWxm LnRlYXJkb3duX3JlcXVlc3RfZnVuY3NbbmFtZV06Ci0gICAgICAgICAgICAgICAgIGF3YWl0IHNl bGYuZW5zdXJlX2FzeW5jKGZ1bmN0aW9uKShleGMpCi0gCi0tICAgICAgICBhd2FpdCByZXF1ZXN0 X3RlYXJpbmdfZG93bi5zZW5kKHNlbGYsIGV4Yz1leGMpCi0rICAgICAgICBhd2FpdCByZXF1ZXN0 X3RlYXJpbmdfZG93bi5zZW5kX2FzeW5jKHNlbGYsIF9zeW5jX3dyYXBwZXI9c2VsZi5lbnN1cmVf YXN5bmMsIGV4Yz1leGMpCi0gCi0gICAgIGFzeW5jIGRlZiBkb190ZWFyZG93bl93ZWJzb2NrZXQo Ci0gICAgICAgICBzZWxmLCBleGM6IE9wdGlvbmFsW0Jhc2VFeGNlcHRpb25dLCB3ZWJzb2NrZXRf Y29udGV4dDogT3B0aW9uYWxbV2Vic29ja2V0Q29udGV4dF0gPSBOb25lCi1AQCAtMTI2MywxMyAr MTI2NywxMyBAQAotICAgICAgICAgICAgIGZvciBmdW5jdGlvbiBpbiBzZWxmLnRlYXJkb3duX3dl YnNvY2tldF9mdW5jc1tuYW1lXToKLSAgICAgICAgICAgICAgICAgYXdhaXQgc2VsZi5lbnN1cmVf YXN5bmMoZnVuY3Rpb24pKGV4YykKLSAKLS0gICAgICAgIGF3YWl0IHdlYnNvY2tldF90ZWFyaW5n X2Rvd24uc2VuZChzZWxmLCBleGM9ZXhjKQotKyAgICAgICAgYXdhaXQgd2Vic29ja2V0X3RlYXJp bmdfZG93bi5zZW5kX2FzeW5jKHNlbGYsIF9zeW5jX3dyYXBwZXI9c2VsZi5lbnN1cmVfYXN5bmMs IGV4Yz1leGMpCi0gCi0gICAgIGFzeW5jIGRlZiBkb190ZWFyZG93bl9hcHBjb250ZXh0KHNlbGYs IGV4YzogT3B0aW9uYWxbQmFzZUV4Y2VwdGlvbl0pIC0+IE5vbmU6Ci0gICAgICAgICAiIiJUZWFy ZG93biB0aGUgYXBwIChjb250ZXh0KSwgY2FsbGluZyB0aGUgdGVhcmRvd24gZnVuY3Rpb25zLiIi IgotICAgICAgICAgZm9yIGZ1bmN0aW9uIGluIHNlbGYudGVhcmRvd25fYXBwY29udGV4dF9mdW5j czoKLSAgICAgICAgICAgICBhd2FpdCBzZWxmLmVuc3VyZV9hc3luYyhmdW5jdGlvbikoZXhjKQot LSAgICAgICAgYXdhaXQgYXBwY29udGV4dF90ZWFyaW5nX2Rvd24uc2VuZChzZWxmLCBleGM9ZXhj KQotKyAgICAgICAgYXdhaXQgYXBwY29udGV4dF90ZWFyaW5nX2Rvd24uc2VuZF9hc3luYyhzZWxm LCBfc3luY193cmFwcGVyPXNlbGYuZW5zdXJlX2FzeW5jLCBleGM9ZXhjKQotIAotICAgICBkZWYg YXBwX2NvbnRleHQoc2VsZikgLT4gQXBwQ29udGV4dDoKLSAgICAgICAgICIiIkNyZWF0ZSBhbmQg cmV0dXJuIGFuIGFwcCBjb250ZXh0LgotQEAgLTE1NTgsNyArMTU2Miw5IEBACi0gICAgICAgICBz ZWxmLmJhY2tncm91bmRfdGFza3MuYWRkKHRhc2spCi0gCi0gICAgIGFzeW5jIGRlZiBoYW5kbGVf YmFja2dyb3VuZF9leGNlcHRpb24oc2VsZiwgZXJyb3I6IEV4Y2VwdGlvbikgLT4gTm9uZToKLS0g ICAgICAgIGF3YWl0IGdvdF9iYWNrZ3JvdW5kX2V4Y2VwdGlvbi5zZW5kKHNlbGYsIGV4Y2VwdGlv bj1lcnJvcikKLSsgICAgICAgIGF3YWl0IGdvdF9iYWNrZ3JvdW5kX2V4Y2VwdGlvbi5zZW5kX2Fz eW5jKAotKyAgICAgICAgICAgIHNlbGYsIF9zeW5jX3dyYXBwZXI9c2VsZi5lbnN1cmVfYXN5bmMs IGV4Y2VwdGlvbj1lcnJvcgotKyAgICAgICAgKQotIAotICAgICAgICAgc2VsZi5sb2dfZXhjZXB0 aW9uKHN5cy5leGNfaW5mbygpKQotIAotQEAgLTE2NjYsNyArMTY3Miw3IEBACi0gICAgICAgICAg ICAgICAgIG9taXRzIHRoaXMgYXJndW1lbnQuCi0gICAgICAgICAiIiIKLSAgICAgICAgIGF3YWl0 IHNlbGYudHJ5X3RyaWdnZXJfYmVmb3JlX2ZpcnN0X3JlcXVlc3RfZnVuY3Rpb25zKCkKLS0gICAg ICAgIGF3YWl0IHJlcXVlc3Rfc3RhcnRlZC5zZW5kKHNlbGYpCi0rICAgICAgICBhd2FpdCByZXF1 ZXN0X3N0YXJ0ZWQuc2VuZF9hc3luYyhzZWxmLCBfc3luY193cmFwcGVyPXNlbGYuZW5zdXJlX2Fz eW5jKQotICAgICAgICAgdHJ5OgotICAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IHNlbGYucHJl cHJvY2Vzc19yZXF1ZXN0KHJlcXVlc3RfY29udGV4dCkKLSAgICAgICAgICAgICBpZiByZXN1bHQg aXMgTm9uZToKLUBAIC0xNzMzLDcgKzE3MzksOSBAQAotICAgICAgICAgcmVzcG9uc2UgPSBhd2Fp dCBzZWxmLm1ha2VfcmVzcG9uc2UocmVzdWx0KQotICAgICAgICAgdHJ5OgotICAgICAgICAgICAg IHJlc3BvbnNlID0gYXdhaXQgc2VsZi5wcm9jZXNzX3Jlc3BvbnNlKHJlc3BvbnNlLCByZXF1ZXN0 X2NvbnRleHQpCi0tICAgICAgICAgICAgYXdhaXQgcmVxdWVzdF9maW5pc2hlZC5zZW5kKHNlbGYs IHJlc3BvbnNlPXJlc3BvbnNlKQotKyAgICAgICAgICAgIGF3YWl0IHJlcXVlc3RfZmluaXNoZWQu c2VuZF9hc3luYygKLSsgICAgICAgICAgICAgICAgc2VsZiwgX3N5bmNfd3JhcHBlcj1zZWxmLmVu c3VyZV9hc3luYywgcmVzcG9uc2U9cmVzcG9uc2UKLSsgICAgICAgICAgICApCi0gICAgICAgICBl eGNlcHQgRXhjZXB0aW9uOgotICAgICAgICAgICAgIGlmIG5vdCBmcm9tX2Vycm9yX2hhbmRsZXI6 Ci0gICAgICAgICAgICAgICAgIHJhaXNlCi1AQCAtMTc4Nyw3ICsxNzk1LDcgQEAKLSAgICAgICAg ICAgICAgICAgdGhlIEZsYXNrIGNvbnZlbnRpb24uCi0gICAgICAgICAiIiIKLSAgICAgICAgIGF3 YWl0IHNlbGYudHJ5X3RyaWdnZXJfYmVmb3JlX2ZpcnN0X3JlcXVlc3RfZnVuY3Rpb25zKCkKLS0g ICAgICAgIGF3YWl0IHdlYnNvY2tldF9zdGFydGVkLnNlbmQoc2VsZikKLSsgICAgICAgIGF3YWl0 IHdlYnNvY2tldF9zdGFydGVkLnNlbmRfYXN5bmMoc2VsZiwgX3N5bmNfd3JhcHBlcj1zZWxmLmVu c3VyZV9hc3luYykKLSAgICAgICAgIHRyeToKLSAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBz ZWxmLnByZXByb2Nlc3Nfd2Vic29ja2V0KHdlYnNvY2tldF9jb250ZXh0KQotICAgICAgICAgICAg IGlmIHJlc3VsdCBpcyBOb25lOgotQEAgLTE4NTcsNyArMTg2NSw5IEBACi0gICAgICAgICAgICAg cmVzcG9uc2UgPSBOb25lCi0gICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgcmVzcG9uc2UgPSBh d2FpdCBzZWxmLnBvc3Rwcm9jZXNzX3dlYnNvY2tldChyZXNwb25zZSwgd2Vic29ja2V0X2NvbnRl eHQpCi0tICAgICAgICAgICAgYXdhaXQgd2Vic29ja2V0X2ZpbmlzaGVkLnNlbmQoc2VsZiwgcmVz cG9uc2U9cmVzcG9uc2UpCi0rICAgICAgICAgICAgYXdhaXQgd2Vic29ja2V0X2ZpbmlzaGVkLnNl bmRfYXN5bmMoCi0rICAgICAgICAgICAgICAgIHNlbGYsIF9zeW5jX3dyYXBwZXI9c2VsZi5lbnN1 cmVfYXN5bmMsIHJlc3BvbnNlPXJlc3BvbnNlCi0rICAgICAgICAgICAgKQotICAgICAgICAgZXhj ZXB0IEV4Y2VwdGlvbjoKLSAgICAgICAgICAgICBpZiBub3QgZnJvbV9lcnJvcl9oYW5kbGVyOgot ICAgICAgICAgICAgICAgICByYWlzZQotQEAgLTE5MzcsNyArMTk0Nyw5IEBACi0gICAgICAgICAg ICAgICAgIGZvciBnZW4gaW4gc2VsZi53aGlsZV9zZXJ2aW5nX2dlbnM6Ci0gICAgICAgICAgICAg ICAgICAgICBhd2FpdCBnZW4uX19hbmV4dF9fKCkKLSAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24g YXMgZXJyb3I6Ci0tICAgICAgICAgICAgYXdhaXQgZ290X3NlcnZpbmdfZXhjZXB0aW9uLnNlbmQo c2VsZiwgZXhjZXB0aW9uPWVycm9yKQotKyAgICAgICAgICAgIGF3YWl0IGdvdF9zZXJ2aW5nX2V4 Y2VwdGlvbi5zZW5kX2FzeW5jKAotKyAgICAgICAgICAgICAgICBzZWxmLCBfc3luY193cmFwcGVy PXNlbGYuZW5zdXJlX2FzeW5jLCBleGNlcHRpb249ZXJyb3IKLSsgICAgICAgICAgICApCi0gICAg ICAgICAgICAgc2VsZi5sb2dfZXhjZXB0aW9uKHN5cy5leGNfaW5mbygpKQotICAgICAgICAgICAg IHJhaXNlCi0gCi1AQCAtMTk1NCw3ICsxOTY2LDkgQEAKLSAgICAgICAgICAgICAgICAgICAgIGVs c2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJXaGlsZSBz ZXJ2aW5nIGdlbmVyYXRvciBkaWRuJ3QgdGVybWluYXRlIikKLSAgICAgICAgIGV4Y2VwdCBFeGNl cHRpb24gYXMgZXJyb3I6Ci0tICAgICAgICAgICAgYXdhaXQgZ290X3NlcnZpbmdfZXhjZXB0aW9u LnNlbmQoc2VsZiwgZXhjZXB0aW9uPWVycm9yKQotKyAgICAgICAgICAgIGF3YWl0IGdvdF9zZXJ2 aW5nX2V4Y2VwdGlvbi5zZW5kX2FzeW5jKAotKyAgICAgICAgICAgICAgICBzZWxmLCBfc3luY193 cmFwcGVyPXNlbGYuZW5zdXJlX2FzeW5jLCBleGNlcHRpb249ZXJyb3IKLSsgICAgICAgICAgICAp Ci0gICAgICAgICAgICAgc2VsZi5sb2dfZXhjZXB0aW9uKHN5cy5leGNfaW5mbygpKQotICAgICAg ICAgICAgIHJhaXNlCi0gCi1kaWZmIC0tZ2l0IGEvc3JjL3F1YXJ0L2FzZ2kucHkgYi9zcmMvcXVh cnQvYXNnaS5weQotaW5kZXggYmEyNjZkYzMuLjI3MjVhZjhkIDEwMDY0NAotLS0tIGEvc3JjL3F1 YXJ0L2FzZ2kucHkKLSsrKyBiL3NyYy9xdWFydC9hc2dpLnB5Ci1AQCAtMTY5LDcgKzE2OSw3IEBA IGFzeW5jIGRlZiBoYW5kbGVfbWVzc2FnZXMoc2VsZiwgcmVjZWl2ZTogQVNHSVJlY2VpdmVDYWxs YWJsZSkgLT4gTm9uZToKLSAgICAgICAgICAgICBldmVudCA9IGF3YWl0IHJlY2VpdmUoKQotICAg ICAgICAgICAgIGlmIGV2ZW50WyJ0eXBlIl0gPT0gIndlYnNvY2tldC5yZWNlaXZlIjoKLSAgICAg ICAgICAgICAgICAgbWVzc2FnZSA9IGV2ZW50LmdldCgiYnl0ZXMiKSBvciBldmVudFsidGV4dCJd Ci0tICAgICAgICAgICAgICAgIGF3YWl0IHdlYnNvY2tldF9yZWNlaXZlZC5zZW5kKG1lc3NhZ2Up Ci0rICAgICAgICAgICAgICAgIGF3YWl0IHdlYnNvY2tldF9yZWNlaXZlZC5zZW5kX2FzeW5jKG1l c3NhZ2UpCi0gICAgICAgICAgICAgICAgIGF3YWl0IHNlbGYucXVldWUucHV0KG1lc3NhZ2UpCi0g ICAgICAgICAgICAgZWxpZiBldmVudFsidHlwZSJdID09ICJ3ZWJzb2NrZXQuZGlzY29ubmVjdCI6 Ci0gICAgICAgICAgICAgICAgIHJldHVybgotQEAgLTI2MSw3ICsyNjEsNyBAQCBhc3luYyBkZWYg c2VuZF9kYXRhKHNlbGYsIHNlbmQ6IEFTR0lTZW5kQ2FsbGFibGUsIGRhdGE6IEFueVN0cikgLT4g Tm9uZToKLSAgICAgICAgICAgICBhd2FpdCBzZW5kKHsidHlwZSI6ICJ3ZWJzb2NrZXQuc2VuZCIs ICJieXRlcyI6IE5vbmUsICJ0ZXh0IjogZGF0YX0pCi0gICAgICAgICBlbHNlOgotICAgICAgICAg ICAgIGF3YWl0IHNlbmQoeyJ0eXBlIjogIndlYnNvY2tldC5zZW5kIiwgImJ5dGVzIjogZGF0YSwg InRleHQiOiBOb25lfSkKLS0gICAgICAgIGF3YWl0IHdlYnNvY2tldF9zZW50LnNlbmQoZGF0YSkK LSsgICAgICAgIGF3YWl0IHdlYnNvY2tldF9zZW50LnNlbmRfYXN5bmMoZGF0YSkKLSAKLSAgICAg YXN5bmMgZGVmIGFjY2VwdF9jb25uZWN0aW9uKAotICAgICAgICAgc2VsZiwgc2VuZDogQVNHSVNl bmRDYWxsYWJsZSwgaGVhZGVyczogSGVhZGVycywgc3VicHJvdG9jb2w6IE9wdGlvbmFsW3N0cl0K LWRpZmYgLS1naXQgYS9zcmMvcXVhcnQvY3R4LnB5IGIvc3JjL3F1YXJ0L2N0eC5weQotaW5kZXgg ODA2YWZmNzQuLmM5MmJhOTJlIDEwMDY0NAotLS0tIGEvc3JjL3F1YXJ0L2N0eC5weQotKysrIGIv c3JjL3F1YXJ0L2N0eC5weQotQEAgLTI0MCw3ICsyNDAsNyBAQCBkZWYgY29weShzZWxmKSAtPiAi QXBwQ29udGV4dCI6Ci0gCi0gICAgIGFzeW5jIGRlZiBwdXNoKHNlbGYpIC0+IE5vbmU6Ci0gICAg ICAgICBzZWxmLl9jdl90b2tlbnMuYXBwZW5kKF9jdl9hcHAuc2V0KHNlbGYpKQotLSAgICAgICAg YXdhaXQgYXBwY29udGV4dF9wdXNoZWQuc2VuZChzZWxmLmFwcCkKLSsgICAgICAgIGF3YWl0IGFw cGNvbnRleHRfcHVzaGVkLnNlbmRfYXN5bmMoc2VsZi5hcHAsIF9zeW5jX3dyYXBwZXI9c2VsZi5h cHAuZW5zdXJlX2FzeW5jKQotIAotICAgICBhc3luYyBkZWYgcG9wKHNlbGYsIGV4YzogT3B0aW9u YWxbQmFzZUV4Y2VwdGlvbl0gPSBfc2VudGluZWwpIC0+IE5vbmU6ICAjIHR5cGU6IGlnbm9yZQot ICAgICAgICAgdHJ5OgotQEAgLTI1NSw3ICsyNTUsNyBAQCBhc3luYyBkZWYgcG9wKHNlbGYsIGV4 YzogT3B0aW9uYWxbQmFzZUV4Y2VwdGlvbl0gPSBfc2VudGluZWwpIC0+IE5vbmU6ICAjIHR5cGU6 Ci0gICAgICAgICAgICAgaWYgY3R4IGlzIG5vdCBzZWxmOgotICAgICAgICAgICAgICAgICByYWlz ZSBBc3NlcnRpb25FcnJvcihmIlBvcHBlZCB3cm9uZyBhcHAgY29udGV4dC4gKHtjdHghcn0gaW5z dGVhZCBvZiB7c2VsZiFyfSkiKQotIAotLSAgICAgICAgYXdhaXQgYXBwY29udGV4dF9wb3BwZWQu c2VuZChzZWxmLmFwcCkKLSsgICAgICAgIGF3YWl0IGFwcGNvbnRleHRfcG9wcGVkLnNlbmRfYXN5 bmMoc2VsZi5hcHAsIF9zeW5jX3dyYXBwZXI9c2VsZi5hcHAuZW5zdXJlX2FzeW5jKQotIAotICAg ICBhc3luYyBkZWYgX19hZW50ZXJfXyhzZWxmKSAtPiAiQXBwQ29udGV4dCI6Ci0gICAgICAgICBh d2FpdCBzZWxmLnB1c2goKQotZGlmZiAtLWdpdCBhL3NyYy9xdWFydC9oZWxwZXJzLnB5IGIvc3Jj L3F1YXJ0L2hlbHBlcnMucHkKLWluZGV4IGM4NDhhNzJmLi4wNDkxYWNmZSAxMDA2NDQKLS0tLSBh L3NyYy9xdWFydC9oZWxwZXJzLnB5Ci0rKysgYi9zcmMvcXVhcnQvaGVscGVycy5weQotQEAgLTEx Myw4ICsxMTMsOSBAQCBhc3luYyBkZWYgbG9naW4oKToKLSAgICAgZmxhc2hlcyA9IHNlc3Npb24u Z2V0KCJfZmxhc2hlcyIsIFtdKQotICAgICBmbGFzaGVzLmFwcGVuZCgoY2F0ZWdvcnksIG1lc3Nh Z2UpKQotICAgICBzZXNzaW9uWyJfZmxhc2hlcyJdID0gZmxhc2hlcwotLSAgICBhd2FpdCBtZXNz YWdlX2ZsYXNoZWQuc2VuZCgKLS0gICAgICAgIGN1cnJlbnRfYXBwLl9nZXRfY3VycmVudF9vYmpl Y3QoKSwgbWVzc2FnZT1tZXNzYWdlLCBjYXRlZ29yeT1jYXRlZ29yeSAgIyB0eXBlOiBpZ25vcmUK LSsgICAgYXBwID0gY3VycmVudF9hcHAuX2dldF9jdXJyZW50X29iamVjdCgpICAjIHR5cGU6IGln bm9yZQotKyAgICBhd2FpdCBtZXNzYWdlX2ZsYXNoZWQuc2VuZF9hc3luYygKLSsgICAgICAgIGFw cCwgX3N5bmNfd3JhcHBlcj1hcHAuZW5zdXJlX2FzeW5jLCBtZXNzYWdlPW1lc3NhZ2UsIGNhdGVn b3J5PWNhdGVnb3J5Ci0gICAgICkKLSAKLSAKLWRpZmYgLS1naXQgYS9zcmMvcXVhcnQvc2lnbmFs cy5weSBiL3NyYy9xdWFydC9zaWduYWxzLnB5Ci1pbmRleCBhMjNiOTAyZC4uZGU1ZTlmY2MgMTAw NjQ0Ci0tLS0gYS9zcmMvcXVhcnQvc2lnbmFscy5weQotKysrIGIvc3JjL3F1YXJ0L3NpZ25hbHMu cHkKLUBAIC0xLDU0ICsxLDEwIEBACi0gZnJvbSBfX2Z1dHVyZV9fIGltcG9ydCBhbm5vdGF0aW9u cwotIAotLWZyb20gZnVuY3Rvb2xzIGltcG9ydCB3cmFwcwotLWZyb20gdHlwaW5nIGltcG9ydCBB bnksIENhbGxhYmxlLCBMaXN0LCBPcHRpb25hbCwgVHVwbGUKLS0KLS1mcm9tIGJsaW5rZXIgaW1w b3J0IE5hbWVkU2lnbmFsLCBOYW1lc3BhY2UgICMgdHlwZTogaWdub3JlW2ltcG9ydF0KLS0KLS1m cm9tIC51dGlscyBpbXBvcnQgaXNfY29yb3V0aW5lX2Z1bmN0aW9uCi0rZnJvbSBibGlua2VyIGlt cG9ydCBOYW1lc3BhY2UKLSAKLSBzaWduYWxzX2F2YWlsYWJsZSA9IFRydWUKLSAKLS0KLS1jbGFz cyBBc3luY05hbWVkU2lnbmFsKE5hbWVkU2lnbmFsKTogICMgdHlwZTogaWdub3JlCi0tICAgIGRl ZiBfX2luaXRfXyhzZWxmLCBuYW1lOiBzdHIsIGRvYzogT3B0aW9uYWxbc3RyXSA9IE5vbmUpIC0+ IE5vbmU6Ci0tICAgICAgICBzdXBlcigpLl9faW5pdF9fKG5hbWUsIGRvYykKLS0KLS0gICAgYXN5 bmMgZGVmIHNlbmQoc2VsZiwgKnNlbmRlcjogQW55LCAqKmt3YXJnczogQW55KSAtPiBMaXN0W1R1 cGxlW0NhbGxhYmxlLCBBbnldXToKLS0gICAgICAgIGNvcm91dGluZXMgPSBzdXBlcigpLnNlbmQo KnNlbmRlciwgKiprd2FyZ3MpCi0tICAgICAgICByZXN1bHQ6IExpc3RbVHVwbGVbQ2FsbGFibGUs IEFueV1dID0gW10KLS0gICAgICAgIGZvciBoYW5kbGVyLCBjb3JvdXRpbmUgaW4gY29yb3V0aW5l czoKLS0gICAgICAgICAgICByZXN1bHQuYXBwZW5kKChoYW5kbGVyLCBhd2FpdCBjb3JvdXRpbmUp KQotLSAgICAgICAgcmV0dXJuIHJlc3VsdAotLQotLSAgICBkZWYgY29ubmVjdChzZWxmLCByZWNl aXZlcjogQ2FsbGFibGUsICphcmdzOiBBbnksICoqa3dhcmdzOiBBbnkpIC0+IENhbGxhYmxlOgot LSAgICAgICAgaWYgaXNfY29yb3V0aW5lX2Z1bmN0aW9uKHJlY2VpdmVyKToKLS0gICAgICAgICAg ICBoYW5kbGVyID0gcmVjZWl2ZXIKLS0gICAgICAgIGVsc2U6Ci0tCi0tICAgICAgICAgICAgQHdy YXBzKHJlY2VpdmVyKQotLSAgICAgICAgICAgIGFzeW5jIGRlZiBoYW5kbGVyKCphOiBBbnksICoq azogQW55KSAtPiBBbnk6Ci0tICAgICAgICAgICAgICAgIHJldHVybiByZWNlaXZlcigqYSwgKipr KQotLQotLSAgICAgICAgaWYgaGFuZGxlciBpcyBub3QgcmVjZWl2ZXIgYW5kIGt3YXJncy5nZXQo IndlYWsiLCBUcnVlKToKLS0gICAgICAgICAgICAjIEJsaW5rZXIgd2lsbCB0YWtlIGEgd2Vha3Jl ZiB0byBoYW5kbGVyLCB3aGljaCBnb2VzIG91dAotLSAgICAgICAgICAgICMgb2Ygc2NvcGUgd2l0 aCB0aGlzIG1ldGhvZCBhcyBpdCBpcyBhIHdyYXBwZXIgYXJvdW5kIHRoZQotLSAgICAgICAgICAg ICMgcmVjZWl2ZXIuIFdoZXJlYXMgd2UnZCB3YW50IGl0IHRvIGdvIG91dCBvZiBzY29wZSB3aGVu Ci0tICAgICAgICAgICAgIyByZWNlaXZlciBkb2VzLiBUaGVyZWZvcmUgd2UgY2FuIHBsYWNlIGl0 IG9uIHRoZSByZWNlaXZlcgotLSAgICAgICAgICAgICMgZnVuY3Rpb24uIChJZGVhbGx5IEknbGwg dGhpbmsgb2YgYSBiZXR0ZXIgd2F5KS4KLS0gICAgICAgICAgICByZWNlaXZlci5fcXVhcnRfd3Jh cHBlcl9mdW5jID0gaGFuZGxlciAgIyB0eXBlOiBpZ25vcmUKLS0gICAgICAgIHJldHVybiBzdXBl cigpLmNvbm5lY3QoaGFuZGxlciwgKmFyZ3MsICoqa3dhcmdzKQotLQotLQotLWNsYXNzIEFzeW5j TmFtZXNwYWNlKE5hbWVzcGFjZSk6ICAjIHR5cGU6IGlnbm9yZQotLSAgICBkZWYgc2lnbmFsKHNl bGYsIG5hbWU6IHN0ciwgZG9jOiBPcHRpb25hbFtzdHJdID0gTm9uZSkgLT4gQXN5bmNOYW1lZFNp Z25hbDoKLS0gICAgICAgIHRyeToKLS0gICAgICAgICAgICByZXR1cm4gc2VsZltuYW1lXQotLSAg ICAgICAgZXhjZXB0IEtleUVycm9yOgotLSAgICAgICAgICAgIHJldHVybiBzZWxmLnNldGRlZmF1 bHQobmFtZSwgQXN5bmNOYW1lZFNpZ25hbChuYW1lLCBkb2MpKQotLQotLQotLV9zaWduYWxzID0g QXN5bmNOYW1lc3BhY2UoKQotK19zaWduYWxzID0gTmFtZXNwYWNlKCkKLSAKLSAjOiBDYWxsZWQg YmVmb3JlIGEgdGVtcGxhdGUgaXMgcmVuZGVyZWQsIGNvbm5lY3Rpb24gZnVuY3Rpb25zCi0gIyBz aG91bGQgaGF2ZSBhIHNpZ25hdHVyZSBvZiBDYWxsYWJsZVtbUXVhcnQsIFRlbXBsYXRlLCBkaWN0 XSwgTm9uZV0KLWRpZmYgLS1naXQgYS9zcmMvcXVhcnQvdGVtcGxhdGluZy5weSBiL3NyYy9xdWFy dC90ZW1wbGF0aW5nLnB5Ci1pbmRleCA0MTZjMmVlZi4uNWMwN2QxMzIgMTAwNjQ0Ci0tLS0gYS9z cmMvcXVhcnQvdGVtcGxhdGluZy5weQotKysrIGIvc3JjL3F1YXJ0L3RlbXBsYXRpbmcucHkKLUBA IC0xMTYsOSArMTE2LDEzIEBAIGFzeW5jIGRlZiByZW5kZXJfdGVtcGxhdGVfc3RyaW5nKHNvdXJj ZTogc3RyLCAqKmNvbnRleHQ6IEFueSkgLT4gc3RyOgotIAotIAotIGFzeW5jIGRlZiBfcmVuZGVy KHRlbXBsYXRlOiBUZW1wbGF0ZSwgY29udGV4dDogZGljdCwgYXBwOiAiUXVhcnQiKSAtPiBzdHI6 Ci0tICAgIGF3YWl0IGJlZm9yZV9yZW5kZXJfdGVtcGxhdGUuc2VuZChhcHAsIHRlbXBsYXRlPXRl bXBsYXRlLCBjb250ZXh0PWNvbnRleHQpCi0rICAgIGF3YWl0IGJlZm9yZV9yZW5kZXJfdGVtcGxh dGUuc2VuZF9hc3luYygKLSsgICAgICAgIGFwcCwgX3N5bmNfd3JhcHBlcj1hcHAuZW5zdXJlX2Fz eW5jLCB0ZW1wbGF0ZT10ZW1wbGF0ZSwgY29udGV4dD1jb250ZXh0Ci0rICAgICkKLSAgICAgcmVu ZGVyZWRfdGVtcGxhdGUgPSBhd2FpdCB0ZW1wbGF0ZS5yZW5kZXJfYXN5bmMoY29udGV4dCkKLS0g ICAgYXdhaXQgdGVtcGxhdGVfcmVuZGVyZWQuc2VuZChhcHAsIHRlbXBsYXRlPXRlbXBsYXRlLCBj b250ZXh0PWNvbnRleHQpCi0rICAgIGF3YWl0IHRlbXBsYXRlX3JlbmRlcmVkLnNlbmRfYXN5bmMo Ci0rICAgICAgICBhcHAsIF9zeW5jX3dyYXBwZXI9YXBwLmVuc3VyZV9hc3luYywgdGVtcGxhdGU9 dGVtcGxhdGUsIGNvbnRleHQ9Y29udGV4dAotKyAgICApCi0gICAgIHJldHVybiByZW5kZXJlZF90 ZW1wbGF0ZQotIAotIAotQEAgLTE2NiwxMiArMTcwLDE2IEBAIGFzeW5jIGRlZiBzdHJlYW1fdGVt cGxhdGVfc3RyaW5nKHNvdXJjZTogc3RyLCAqKmNvbnRleHQ6IEFueSkgLT4gQXN5bmNJdGVyYXRv cltzCi0gCi0gCi0gYXN5bmMgZGVmIF9zdHJlYW0oYXBwOiAiUXVhcnQiLCB0ZW1wbGF0ZTogVGVt cGxhdGUsIGNvbnRleHQ6IERpY3Rbc3RyLCBBbnldKSAtPiBBc3luY0l0ZXJhdG9yW3N0cl06Ci0t ICAgIGF3YWl0IGJlZm9yZV9yZW5kZXJfdGVtcGxhdGUuc2VuZChhcHAsIHRlbXBsYXRlPXRlbXBs YXRlLCBjb250ZXh0PWNvbnRleHQpCi0rICAgIGF3YWl0IGJlZm9yZV9yZW5kZXJfdGVtcGxhdGUu c2VuZF9hc3luYygKLSsgICAgICAgIGFwcCwgX3N5bmNfd3JhcHBlcj1hcHAuZW5zdXJlX2FzeW5j LCB0ZW1wbGF0ZT10ZW1wbGF0ZSwgY29udGV4dD1jb250ZXh0Ci0rICAgICkKLSAKLSAgICAgYXN5 bmMgZGVmIGdlbmVyYXRlKCkgLT4gQXN5bmNJdGVyYXRvcltzdHJdOgotICAgICAgICAgYXN5bmMg Zm9yIGNodW5rIGluIHRlbXBsYXRlLmdlbmVyYXRlX2FzeW5jKGNvbnRleHQpOgotICAgICAgICAg ICAgIHlpZWxkIGNodW5rCi0tICAgICAgICBhd2FpdCB0ZW1wbGF0ZV9yZW5kZXJlZC5zZW5kKGFw cCwgdGVtcGxhdGU9dGVtcGxhdGUsIGNvbnRleHQ9Y29udGV4dCkKLSsgICAgICAgIGF3YWl0IHRl bXBsYXRlX3JlbmRlcmVkLnNlbmRfYXN5bmMoCi0rICAgICAgICAgICAgYXBwLCBfc3luY193cmFw cGVyPWFwcC5lbnN1cmVfYXN5bmMsIHRlbXBsYXRlPXRlbXBsYXRlLCBjb250ZXh0PWNvbnRleHQK LSsgICAgICAgICkKLSAKLSAgICAgIyBJZiBhIHJlcXVlc3QgY29udGV4dCBpcyBhY3RpdmUsIGtl ZXAgaXQgd2hpbGUgZ2VuZXJhdGluZy4KLSAgICAgaWYgaGFzX3JlcXVlc3RfY29udGV4dCgpOgot ZGlmZiAtLWdpdCBhL3Rlc3RzL3Rlc3Rfc2lnbmFscy5weSBiL3Rlc3RzL3Rlc3Rfc2lnbmFscy5w eQotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCA2NzFkNTk0Mi4uMDAwMDAwMDAKLS0t LSBhL3Rlc3RzL3Rlc3Rfc2lnbmFscy5weQotKysrIC9kZXYvbnVsbAotQEAgLTEsMzcgKzAsMCBA QAotLWZyb20gX19mdXR1cmVfXyBpbXBvcnQgYW5ub3RhdGlvbnMKLS0KLS1mcm9tIHR5cGluZyBp bXBvcnQgQW55Ci0tCi0taW1wb3J0IHB5dGVzdAotLQotLWZyb20gcXVhcnQuc2lnbmFscyBpbXBv cnQgQXN5bmNOYW1lZFNpZ25hbAotLQotLQotLUBweXRlc3QubWFyay5wYXJhbWV0cml6ZSgid2Vh ayIsIFtUcnVlLCBGYWxzZV0pCi0tYXN5bmMgZGVmIHRlc3Rfc3luY19zaWduYWwod2VhazogYm9v bCkgLT4gTm9uZToKLS0gICAgc2lnbmFsID0gQXN5bmNOYW1lZFNpZ25hbCgibmFtZSIpCi0tICAg IGZpcmVkID0gRmFsc2UKLS0KLS0gICAgZGVmIHN5bmNfZmlyZWQoKl86IEFueSkgLT4gTm9uZToK LS0gICAgICAgIG5vbmxvY2FsIGZpcmVkCi0tICAgICAgICBmaXJlZCA9IFRydWUKLS0KLS0gICAg c2lnbmFsLmNvbm5lY3Qoc3luY19maXJlZCwgd2Vhaz13ZWFrKQotLQotLSAgICBhd2FpdCBzaWdu YWwuc2VuZCgpCi0tICAgIGFzc2VydCBmaXJlZAotLQotLQotLUBweXRlc3QubWFyay5wYXJhbWV0 cml6ZSgid2VhayIsIFtUcnVlLCBGYWxzZV0pCi0tYXN5bmMgZGVmIHRlc3RfYXN5bmNfc2lnbmFs KHdlYWs6IGJvb2wpIC0+IE5vbmU6Ci0tICAgIHNpZ25hbCA9IEFzeW5jTmFtZWRTaWduYWwoIm5h bWUiKQotLSAgICBmaXJlZCA9IEZhbHNlCi0tCi0tICAgIGFzeW5jIGRlZiBhc3luY19maXJlZCgq XzogQW55KSAtPiBOb25lOgotLSAgICAgICAgbm9ubG9jYWwgZmlyZWQKLS0gICAgICAgIGZpcmVk ID0gVHJ1ZQotLQotLSAgICBzaWduYWwuY29ubmVjdChhc3luY19maXJlZCwgd2Vhaz13ZWFrKQot LQotLSAgICBhd2FpdCBzaWduYWwuc2VuZCgpCi0tICAgIGFzc2VydCBmaXJlZApkaWZmIC0tZ2l0 IGEvc3JjcGtncy9weXRob24zLXF1YXJ0L3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLXF1YXJ0 L3RlbXBsYXRlCmluZGV4IDg2ZTZhNGJjYzY0YjguLjkxMDlhYmE0NWU4YjIgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvcHl0aG9uMy1xdWFydC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMtcXVh cnQvdGVtcGxhdGUKQEAgLTEsMTkgKzEsMjAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhv bjMtcXVhcnQnCiBwa2duYW1lPXB5dGhvbjMtcXVhcnQKLXZlcnNpb249MC4xOC40Ci1yZXZpc2lv bj0zCit2ZXJzaW9uPTAuMTkuMworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1wZXA1 MTcKIGhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1wb2V0cnktY29yZSIKLWRlcGVuZHM9InB5dGhv bjMtYWlvZmlsZXMgcHl0aG9uMy1oeXBlcmNvcm4gcHl0aG9uMy1jbGljayBweXRob24zLU1hcmt1 cFNhZmUKLSBweXRob24zLWJsaW5rZXIgcHl0aG9uMy1pdHNkYW5nZXJvdXMgcHl0aG9uMy1KaW5q YTIgcHl0aG9uMy1XZXJremV1ZyIKLWNoZWNrZGVwZW5kcz0icHl0aG9uMy1weXRlc3QtYXN5bmNp byBweXRob24zLWh5cG90aGVzaXMgcHl0aG9uMy1tb2NrIHB5dGhvbjMtZG90ZW52ICRkZXBlbmRz IgorZGVwZW5kcz0icHl0aG9uMy1haW9maWxlcyBweXRob24zLWJsaW5rZXIgcHl0aG9uMy1jbGlj ayBweXRob24zLUZsYXNrCisgcHl0aG9uMy1oeXBlcmNvcm4gcHl0aG9uMy1pdHNkYW5nZXJvdXMg cHl0aG9uMy1KaW5qYTIgcHl0aG9uMy1NYXJrdXBTYWZlCisgcHl0aG9uMy1XZXJremV1ZyIKK2No ZWNrZGVwZW5kcz0icHl0aG9uMy1weXRlc3QtYXN5bmNpbyBweXRob24zLWh5cG90aGVzaXMgcHl0 aG9uMy1kb3RlbnYgJGRlcGVuZHMiCiBzaG9ydF9kZXNjPSJQeXRob24gYXN5bmNpbyBBU0dJIHdl YiBmcmFtZXdvcmsgd2l0aCBGbGFzayBBUEkiCiBtYWludGFpbmVyPSJBbmRyZXcgSi4gSGVzZm9y ZCA8YWpoQHNpZGViYW5kLm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cHM6Ly9x dWFydC5wYWxsZXRzcHJvamVjdHMuY29tL2VuL2xhdGVzdC8iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8v cmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9wYWxsZXRzL3F1YXJ0L21haW4vQ0hBTkdFUy5yc3Qi CiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9wYWxsZXRzL3F1YXJ0L2FyY2hpdmUvcmVm cy90YWdzLyR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09MGZjNWZlNWMzMmVjOTRhM2ExMjI2 MmFmYTU2YzFiZTE0MzU5OWMyYTRmYjAyYmRmNzEwOTQ1NmI2MWM4N2FjMgorY2hlY2tzdW09NWYx YTQzZTIyOTY5NjBjNzU1ZmVjM2FiNjE0NGI2Nzg2NjE0YmY0NjAyYzJmNTIwODRmNzVkNWNlMGQ4 YWQyNQogCiBwcmVfY2hlY2soKSB7CiAJdnNlZCAtZSAnL2FkZG9wdHMvZCcgLWkgcHlwcm9qZWN0 LnRvbWwK --===============0392352478428270267==--