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=-1.0 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 1563 invoked from network); 22 Dec 2023 22:38:10 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 22 Dec 2023 22:38:10 -0000 Content-Type: multipart/mixed; boundary="===============5671987051275448595==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_Update_ipython_to_8=2E19=2E0=2C_ipython=5Fkipykernel_to_6=2E27=2E1=2C_and_some_dependencies=2E?= To: ml@inbox.vuxu.org From: tornaria Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Fri, 22 Dec 2023 23:38:10 +0100 List-Id: Message-ID: <20231222223810.R-gnJkYZs0IHFCiQGN_cHET2rKghpveMDMMl2k-5nLg@z> GitHub notification mails are now in MIME to allow UTF8. --===============5671987051275448595== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgdG9ybmFyaWEgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL3Rv cm5hcmlhL3ZvaWQtcGFja2FnZXMgaXB5dGhvbgpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvNDc4NzUKClVwZGF0ZSBpcHl0aG9uIHRvIDguMTkuMCwgaXB5 dGhvbl9raXB5a2VybmVsIHRvIDYuMjcuMSwgYW5kIHNvbWUgZGVwZW5kZW5jaWVzLgo8IS0tIFVu Y29tbWVudCByZWxldmFudCBzZWN0aW9ucyBhbmQgZGVsZXRlIG9wdGlvbnMgd2hpY2ggYXJlIG5v dCBhcHBsaWNhYmxlIC0tPg0KDQojIyMjIFRlc3RpbmcgdGhlIGNoYW5nZXMNCi0gSSB0ZXN0ZWQg dGhlIGNoYW5nZXMgaW4gdGhpcyBQUjogKipZRVMqKg0KDQpJIHRlc3RlZCBpdCB3aXRoIHNhZ2Vt YXRoIG9uIHg4Nl82NCAoZnVsbCBjaGVjaywgd2l0aCAtSzsgZnRyLCB0aGVyZSBpcyBvbmUgdW5y ZWxhdGVkIGFuZCB1bmltcG9ydGFudCB0ZXN0IGZhaWx1cmUgaW4gc2FnZS9jYWxjdWx1cy9jYWxj dWx1cy5weSkuDQoNCkZ1bGwgY2hhbmdlbG9nOg0KLSBweXRob24zLXBleHBlY3Q6IHVwZGF0ZSB0 byA0LjkuMCwgYWRvcHQuDQotIHB5dGhvbjMtdHJhaXRsZXRzOiB1cGRhdGUgdG8gNS4xNC4wLg0K LSBweXRob24zLWlweXRob246IHVwZGF0ZSB0byA4LjE5LjAuDQotIHB5dGhvbjMtbmVzdF9hc3lu Y2lvOiB1cGRhdGUgdG8gMS41LjguDQotIHB5dGhvbjMtcHN1dGlsOiB1cGRhdGUgdG8gNS45Ljcs IGFkZCBjaGVjay4NCi0gcHl0aG9uMy10b3JuYWRvOiB1cGRhdGUgdG8gNi40LCBhZG9wdC4NCi0g cHl0aG9uMy1pcHl0aG9uX2lweWtlcm5lbDogdXBkYXRlIHRvIDYuMjcuMS4NCg0KDQpAYWhlc2Zv cmQgDQoNCjwhLS0NCiMjIyMgTmV3IHBhY2thZ2UNCi0gVGhpcyBuZXcgcGFja2FnZSBjb25mb3Jt cyB0byB0aGUgW3BhY2thZ2UgcmVxdWlyZW1lbnRzXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL2Jsb2IvbWFzdGVyL0NPTlRSSUJVVElORy5tZCNwYWNrYWdlLXJl cXVpcmVtZW50cyk6ICoqWUVTKip8KipOTyoqDQotLT4NCg0KPCEtLSBOb3RlOiBJZiB0aGUgYnVp bGQgaXMgbGlrZWx5IHRvIHRha2UgbW9yZSB0aGFuIDIgaG91cnMsIHBsZWFzZSBhZGQgY2kgc2tp cCB0YWcgYXMgZGVzY3JpYmVkIGluDQpodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL2Jsb2IvbWFzdGVyL0NPTlRSSUJVVElORy5tZCNjb250aW51b3VzLWludGVncmF0 aW9uDQphbmQgdGVzdCBhdCBsZWFzdCBvbmUgbmF0aXZlIGJ1aWxkIGFuZCwgaWYgc3VwcG9ydGVk LCBhdCBsZWFzdCBvbmUgY3Jvc3MgYnVpbGQuDQpJZ25vcmUgdGhpcyBzZWN0aW9uIGlmIHRoaXMg UFIgaXMgbm90IHNraXBwaW5nIENJLg0KLS0+DQo8IS0tDQojIyMjIExvY2FsIGJ1aWxkIHRlc3Rp bmcNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9yIG15IG5hdGl2ZSBhcmNoaXRlY3R1cmUs IChBUkNILUxJQkMpDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciB0aGVzZSBhcmNoaXRl Y3R1cmVzIChpZiBzdXBwb3J0ZWQuIG1hcmsgY3Jvc3NidWlsZHMpOg0KICAtIGFhcmNoNjQtbXVz bA0KICAtIGFybXY3bA0KICAtIGFybXY2bC1tdXNsDQotLT4NCgoKQSBwYXRjaCBmaWxlIGZyb20g aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ3ODc1LnBh dGNoIGlzIGF0dGFjaGVk --===============5671987051275448595== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-ipython-47875.patch" RnJvbSA0YzYxZWE2ODU3ZDBkY2UwNTNiOWRmZWU0NDA4Y2M0ZTY0MDU5NWU4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8 dG9ybmFyaWFAY21hdC5lZHUudXk+CkRhdGU6IEZyaSwgMjIgRGVjIDIwMjMgMTA6MTg6MzcgLTAz MDAKU3ViamVjdDogW1BBVENIIDEvN10gcHl0aG9uMy1wZXhwZWN0OiB1cGRhdGUgdG8gNC45LjAs IGFkb3B0LgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtcGV4cGVjdC90ZW1wbGF0ZSB8IDIyICsrKysr KystLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDE1IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1wZXhwZWN0L3RlbXBsYXRl IGIvc3JjcGtncy9weXRob24zLXBleHBlY3QvdGVtcGxhdGUKaW5kZXggOWZmMzM3MTBjY2Y1My4u Y2I3N2JjNThhMzY2YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24zLXBleHBlY3QvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9weXRob24zLXBleHBlY3QvdGVtcGxhdGUKQEAgLTEsMjcgKzEsMTkg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtcGV4cGVjdCcKIHBrZ25hbWU9cHl0aG9u My1wZXhwZWN0Ci12ZXJzaW9uPTQuOC4wCi1yZXZpc2lvbj00Cit2ZXJzaW9uPTQuOS4wCityZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1weXRob24zLW1vZHVsZQogaG9zdG1ha2VkZXBlbmRzPSJweXRo b24zLXNldHVwdG9vbHMiCiBkZXBlbmRzPSJweXRob24zLXB0eXByb2Nlc3MiCi1jaGVja2RlcGVu ZHM9InB5dGhvbjMtcHl0ZXN0IHB5dGhvbjMtcHR5cHJvY2VzcyBtZG9jbWwiCi1zaG9ydF9kZXNj PSJQeXRob24zIG1vZHVsZSBmb3Igc3Bhd25pbmcgY2hpbGQgYXBwbGljYXRpb25zIGFuZCBjb250 cm9sbGluZyB0aGVtIgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3Jn PiIKK2NoZWNrZGVwZW5kcz0iJGRlcGVuZHMgcHl0aG9uMy1weXRlc3QgbWRvY21sIHpzaCIKK3No b3J0X2Rlc2M9IlNwYXduIGNoaWxkIGFwcGxpY2F0aW9ucyBhbmQgY29udHJvbCB0aGVtIgorbWFp bnRhaW5lcj0iR29uemFsbyBUb3JuYXLDrWEgPHRvcm5hcmlhQGNtYXQuZWR1LnV5PiIKIGxpY2Vu c2U9IklTQyIKIGhvbWVwYWdlPSJodHRwczovL3BleHBlY3QucmVhZHRoZWRvY3MuaW8vIgorY2hh bmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vcGV4cGVjdC9wZXhwZWN0 L21hc3Rlci9kb2MvaGlzdG9yeS5yc3QiCiBkaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS9wL3BleHBl Y3QvcGV4cGVjdC0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWZjNjVhNDM5NTlkMTUzZDAx MTRhZmUxMzk5N2Q0MzljMjI4MjNhMjdjZWZjZWI1ZmYzNWMyMTc4YzY3ODRjMGMKLQotZG9fY2hl Y2soKSB7Ci0JIyB0aGUgbWRjb2NtbCBpcyBmb3IgdGVzdAotCSMgUkVQTFdyYXBUZXN0Q2FzZS50 ZXN0X3BhZ2VyX2FzX2NhdAotCXB5dGhvbjMgLW0gcHl0ZXN0Ci19CitjaGVja3N1bT1lZTdkNDEx MjNmM2M5OTExMDUwZWEyYzJkYWMxMDc1NjhkYzQzYjJkM2IwYzc1NTdhMzMyMTJjMzk4ZWFkMzBm CiAKIHBvc3RfaW5zdGFsbCgpIHsKLQkjIGRyb3AgYXN5bmNpbyBzdHVmZiBmcm9tIHB5dGhvbjIK LQkjIGh0dHBzOi8vZ2l0aHViLmNvbS9wZXhwZWN0L3BleHBlY3QvaXNzdWVzLzI5MAotCXJtIC1m ICR7REVTVERJUn0vdXNyL2xpYi9weXRob24kcHkzX3Zlci9zaXRlLXBhY2thZ2VzL3BleHBlY3Qv X2FzeW5jLnB5CiAJdmxpY2Vuc2UgTElDRU5TRQogfQoKRnJvbSAxZDQyODBiM2QyMTFhNzk0YjMx NTI0NGQ5MTUyMDI0ZDY1MjllNzE5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VU Ri04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+CkRh dGU6IFNhdCwgMiBEZWMgMjAyMyAxMToyNjowNCAtMDMwMApTdWJqZWN0OiBbUEFUQ0ggMi83XSBw eXRob24zLXRyYWl0bGV0czogdXBkYXRlIHRvIDUuMTQuMC4KCi0tLQogc3JjcGtncy9weXRob24z LXRyYWl0bGV0cy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtdHJhaXRs ZXRzL3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLXRyYWl0bGV0cy90ZW1wbGF0ZQppbmRleCAz ZjQxODI5OWNjZjJmLi42MDY5YmRlNzA1NWNhIDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbjMt dHJhaXRsZXRzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy10cmFpdGxldHMvdGVtcGxh dGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24zLXRyYWl0bGV0 cycKIHBrZ25hbWU9cHl0aG9uMy10cmFpdGxldHMKLXZlcnNpb249NS4xMy4wCit2ZXJzaW9uPTUu MTQuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1wZXA1MTcKICMgbmVlZHMgcHl0 aG9uMy1weXRlc3QtbXlweQpAQCAtMTQsNyArMTQsNyBAQCBsaWNlbnNlPSJCU0QtMy1DbGF1c2Ui CiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2lweXRob24vdHJhaXRsZXRzIgogY2hhbmdl bG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vaXB5dGhvbi90cmFpdGxldHMv bWFpbi9DSEFOR0VMT0cubWQiCiBkaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS90L3RyYWl0bGV0cy90 cmFpdGxldHMtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT05YjIzMmI5NDMwYzhmNTcyODhj MTAyNGIzNGE4ZjAyNTFkZGNjNDcyNjg5MjczNjdhMGRkM2VlYWNhNDBkZWI1CitjaGVja3N1bT1m Y2RhYThhYzQ5YzA0ZGZhMGVkM2VlMzM4NGVmNmRmZGI1ZDZmMzc0MTUwMmJlMjQ3Mjc5NDA3Njc5 Mjk2NzcyCiAKIHBvc3RfaW5zdGFsbCgpIHsKIAl2bGljZW5zZSBMSUNFTlNFCgpGcm9tIGMyY2Qx MWVjMzY5NzA2ZmQ3NTYwYTMxNDk4ZGEzZTNmYTA2ZGY4MTAgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206ID0/VVRGLTg/cT9Hb256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBj bWF0LmVkdS51eT4KRGF0ZTogU2F0LCAyIERlYyAyMDIzIDExOjI2OjEyIC0wMzAwClN1YmplY3Q6 IFtQQVRDSCAzLzddIHB5dGhvbjMtaXB5dGhvbjogdXBkYXRlIHRvIDguMTkuMC4KCi0tLQogc3Jj cGtncy9weXRob24zLWlweXRob24vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRo b24zLWlweXRob24vdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtaXB5dGhvbi90ZW1wbGF0ZQpp bmRleCBjNzRiYzRlMjgzNDFjLi4wMzgxMjg1MzZkNWViIDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5 dGhvbjMtaXB5dGhvbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMtaXB5dGhvbi90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtaXB5dGhv bicKIHBrZ25hbWU9cHl0aG9uMy1pcHl0aG9uCi12ZXJzaW9uPTguMTguMAordmVyc2lvbj04LjE5 LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtcGVwNTE3CiBob3N0bWFrZWRlcGVu ZHM9InB5dGhvbjMtc2V0dXB0b29scyBweXRob24zLXdoZWVsIgpAQCAtMTYsNyArMTYsNyBAQCBs aWNlbnNlPSJCU0QtMy1DbGF1c2UiCiBob21lcGFnZT0iaHR0cHM6Ly9pcHl0aG9uLm9yZy8iCiBj aGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0aHViLmNvbS9pcHl0aG9uL2lweXRob24vcmF3L21haW4vZG9j cy9zb3VyY2Uvd2hhdHNuZXcvdmVyc2lvbjgucnN0IgogZGlzdGZpbGVzPSIke1BZUElfU0lURX0v aS9pcHl0aG9uL2lweXRob24tJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT00ZmViNjEyMTAx NjBmNzVlMjI5Y2U5MzJkYmY4YjcxOWJmZjM3YWYxMjNjMGI5ODVmZDAzOGIxNDIzM2RhYTE2Citj aGVja3N1bT1hYzRkYTRlY2YwMDQyZmI0ZTBjZTU3YzYwNDMwYzJkYjNjNzE5ZmE4YmRmOTJmODYz MWQ2YmQ4YTU3ODVkMWYwCiBjb25mbGljdHM9InB5dGhvbi1pcHl0aG9uPD01LjguMF8yIgogbWFr ZV9jaGVja19wcmU9ImVudiBQWVRIT05QQVRIPS4iCiAKCkZyb20gZTYzYzVjMzVhNzJlMjUwNjQz YzMyYzEwMDBiNDQxMzc5ZmUzZjg5NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9V VEYtOD9xP0dvbnphbG89MjBUb3JuYXI9QzM9QURhPz0gPHRvcm5hcmlhQGNtYXQuZWR1LnV5PgpE YXRlOiBTdW4sIDE3IERlYyAyMDIzIDA4OjM4OjMyIC0wMzAwClN1YmplY3Q6IFtQQVRDSCA0Lzdd IHB5dGhvbjMtbmVzdF9hc3luY2lvOiB1cGRhdGUgdG8gMS41LjguCgotLS0KIHNyY3BrZ3MvcHl0 aG9uMy1uZXN0X2FzeW5jaW8vdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMg aW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhv bjMtbmVzdF9hc3luY2lvL3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24zLW5lc3RfYXN5bmNpby90 ZW1wbGF0ZQppbmRleCBjMjczZGRlOThlZDBkLi5hMjcxMTRhYjdlMjcxIDEwMDY0NAotLS0gYS9z cmNwa2dzL3B5dGhvbjMtbmVzdF9hc3luY2lvL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9u My1uZXN0X2FzeW5jaW8vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdweXRob24zLW5lc3RfYXN5bmNpbycKIHBrZ25hbWU9cHl0aG9uMy1uZXN0X2FzeW5jaW8K LXZlcnNpb249MS41LjYKLXJldmlzaW9uPTIKK3ZlcnNpb249MS41LjgKK3JldmlzaW9uPTEKIGJ1 aWxkX3N0eWxlPXB5dGhvbjMtcGVwNTE3CiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0 b29sc19zY20gcHl0aG9uMy13aGVlbCIKIGRlcGVuZHM9InB5dGhvbjMiCkBAIC0xMSw3ICsxMSw3 IEBAIG1haW50YWluZXI9ImRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4iCiBsaWNl bnNlPSJCU0QtMi1DbGF1c2UiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2VyZGV3aXQv bmVzdF9hc3luY2lvIgogZGlzdGZpbGVzPSIke1BZUElfU0lURX0vbi9uZXN0X2FzeW5jaW8vbmVz dF9hc3luY2lvLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09ZDI2N2NjMWZmNzk0NDAzZjdk ZjY5Mjk2NGQxZDJhM2ZhOTQxOGZmZWEyYTNmNjg1OWE0MzlmZjQ4MmZlZjI5MAorY2hlY2tzdW09 MjVhYTJjYTBkMmE1YjU1MzE5NTZiOWUyNzNiNDVjZjY2NGNhZTJiMTQ1MTAxZDczYjg2YjE5OTk3 OGQ0OGZkYgogCiBwb3N0X2luc3RhbGwoKSB7CiAJdmxpY2Vuc2UgTElDRU5TRQoKRnJvbSBkNzhj OTgzOWE2NGNlYjdkNzM0ZDJiYzRmYmViOTQ4MDZmZTBmOTYzIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8dG9ybmFyaWFA Y21hdC5lZHUudXk+CkRhdGU6IEZyaSwgMjIgRGVjIDIwMjMgMTM6MzM6NDQgLTAzMDAKU3ViamVj dDogW1BBVENIIDUvN10gcHl0aG9uMy1wc3V0aWw6IHVwZGF0ZSB0byA1LjkuNywgYWRkIGNoZWNr LgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtcHN1dGlsL3RlbXBsYXRlIHwgNTAgKysrKysrKysrKysr KysrKysrKysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwg NiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHN1dGlsL3RlbXBs YXRlIGIvc3JjcGtncy9weXRob24zLXBzdXRpbC90ZW1wbGF0ZQppbmRleCA5MzZmMWI5OWZiOTcy Li5iMmI2ZDczYzNiMzIwIDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtcHN1dGlsL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1wc3V0aWwvdGVtcGxhdGUKQEAgLTEsMjAgKzEsNTgg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtcHN1dGlsJwogcGtnbmFtZT1weXRob24z LXBzdXRpbAotdmVyc2lvbj01LjkuNgordmVyc2lvbj01LjkuNwogcmV2aXNpb249MQotYnVpbGRf c3R5bGU9cHl0aG9uMy1tb2R1bGUKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xz IgorYnVpbGRfc3R5bGU9cHl0aG9uMy1wZXA1MTcKKyMgRmFpbGluZyB0ZXN0czogc2VlIGh0dHBz Oi8vZ2l0aHViLmNvbS9naWFtcGFvbG8vcHN1dGlsL2lzc3Vlcy8yMDQzCittYWtlX2NoZWNrX2Fy Z3M9Ii0taW1wb3J0LW1vZGU9aW1wb3J0bGliCisgLS1kZXNlbGVjdCBwc3V0aWwvdGVzdHMvdGVz dF9jb250cmFjdHMucHk6OlRlc3RGZXRjaEFsbFByb2Nlc3Nlczo6dGVzdF9hbGwKKyAtLWRlc2Vs ZWN0IHBzdXRpbC90ZXN0cy90ZXN0X2xpbnV4LnB5OjpUZXN0UHJvY2Vzczo6dGVzdF9leGVfbW9j a2VkCisgLS1kZXNlbGVjdCBwc3V0aWwvdGVzdHMvdGVzdF9saW51eC5weTo6VGVzdFJvb3RGc0Rl dmljZUZpbmRlcjo6dGVzdF9hZ2FpbnN0X2ZpbmRtbnQKKyAtLWRlc2VsZWN0IHBzdXRpbC90ZXN0 cy90ZXN0X2xpbnV4LnB5OjpUZXN0U3lzdGVtVmlydHVhbE1lbW9yeUFnYWluc3RGcmVlOjp0ZXN0 X3VzZWQKKyAtLWRlc2VsZWN0IHBzdXRpbC90ZXN0cy90ZXN0X2xpbnV4LnB5OjpUZXN0U3lzdGVt VmlydHVhbE1lbW9yeUFnYWluc3RWbXN0YXQ6OnRlc3RfdXNlZAorIC0tZGVzZWxlY3QgcHN1dGls L3Rlc3RzL3Rlc3RfbWlzYy5weTo6VGVzdENvbW1vbk1vZHVsZTo6dGVzdF9kZWJ1ZworIC0tZGVz ZWxlY3QgcHN1dGlsL3Rlc3RzL3Rlc3RfcHJvY2Vzcy5weTo6VGVzdFByb2Nlc3M6OnRlc3RfdGVy bWluYWwKKyAtLWRlc2VsZWN0IHBzdXRpbC90ZXN0cy90ZXN0X3N5c3RlbS5weTo6VGVzdERpc2tB UElzOjp0ZXN0X2Rpc2tfcGFydGl0aW9ucworIC0tZGVzZWxlY3QgcHN1dGlsL3Rlc3RzL3Rlc3Rf c3lzdGVtLnB5OjpUZXN0TWlzY0FQSXM6OnRlc3RfdXNlcnMiCitob3N0bWFrZWRlcGVuZHM9InB5 dGhvbjMtc2V0dXB0b29scyBweXRob24zLXdoZWVsIgogbWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2 ZWwiCiBkZXBlbmRzPSJweXRob24zIgorIyB0d28gdGVzdHMgdXNlIGB1dGlsLWxpbnV4YCAoZmlu ZG1udCksIGJ1dCBpdCBjb25mbGljdHMgYGNocm9vdC11dGlsLWxpbnV4YAorY2hlY2tkZXBlbmRz PSJweXRob24zLXB5dGVzdCBwcm9jcHMtbmcgaW5ldHV0aWxzLWlmY29uZmlnIgogc2hvcnRfZGVz Yz0iQ3Jvc3MtcGxhdGZvcm0gcHJvY2VzcyBhbmQgc3lzdGVtIHV0aWxpdGllcyBtb2R1bGUgZm9y IFB5dGhvbjMiCiBtYWludGFpbmVyPSJza21weiA8ZGVtLnByb2NvcGlvdUBnbWFpbC5jb20+Igog bGljZW5zZT0iQlNELTMtQ2xhdXNlIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9naWFt cGFvbG8vcHN1dGlsIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5j b20vZ2lhbXBhb2xvL3BzdXRpbC9tYXN0ZXIvSElTVE9SWS5yc3QiCiBkaXN0ZmlsZXM9IiR7UFlQ SV9TSVRFfS9wL3BzdXRpbC9wc3V0aWwtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1lNGI5 MmRkY2Q3ZGQ0Y2RkM2Y5MDAxODBlYTFlMTA0OTMyYzdiY2UyMzRmYjg4OTc2ZTJhM2IyOTY0NDEy MjVhCi0jIFRlc3RzIHNlZW0gdG8gYXNzdW1lIHBhY2thZ2UgaXMgaW5zdGFsbGVkCi1tYWtlX2No ZWNrPW5vCitjaGVja3N1bT0zZjAyMTM0ZTgyY2ZiNWQwODlmZGRmMjBiYjJlMDNmZDVjZDUyMzk1 MzIxZDFjODQ1OGE5ZTU4NTAwZmY0MTdjCisKK2lmIFsgIiRYQlBTX1RBUkdFVF9MSUJDIiA9ICJt dXNsIiBdOyB0aGVuCisJIyBUaGlzIHRlc3QgZmFpbHMgYmVjYXVzZSBSTElNSVRfUlRUSU1FIGlz IG4vYSBpbiBtdXNsIDEuMQorCW1ha2VfY2hlY2tfYXJncys9IiAtLWRlc2VsZWN0CisJcHN1dGls L3Rlc3RzL3Rlc3RfY29udHJhY3RzLnB5OjpUZXN0QXZhaWxDb25zdGFudHNBUElzOjp0ZXN0X3Js aW1pdCIKK2ZpCisKK2lmIFsgIiRYQlBTX0JVSUxEX0VOVklST05NRU5UIiA9IHZvaWQtcGFja2Fn ZXMtY2kgXTsgdGhlbgorCSMgVGVzdHMgdGhhdCBmYWlsIG9uIENJOyB0aGUgZmlyc3Qgb25lIGFj dHVhbGx5IGhhbmdzIQorCW1ha2VfY2hlY2tfYXJncys9IgorCS0tZGVzZWxlY3QgcHN1dGlsL3Rl c3RzL3Rlc3RfcHJvY2Vzcy5weTo6VGVzdFByb2Nlc3M6OnRlc3Rfd2FpdF9ub25fY2hpbGRyZW4K KwktLWRlc2VsZWN0IHBzdXRpbC90ZXN0cy90ZXN0X2xpbnV4LnB5OjpUZXN0Um9vdEZzRGV2aWNl RmluZGVyOjp0ZXN0X2NvbXBhcmlzb25zCisJLS1kZXNlbGVjdCBwc3V0aWwvdGVzdHMvdGVzdF9s aW51eC5weTo6VGVzdFJvb3RGc0RldmljZUZpbmRlcjo6dGVzdF9kaXNrX3BhcnRpdGlvbnNfbW9j a2VkCisJLS1kZXNlbGVjdCBwc3V0aWwvdGVzdHMvdGVzdF9wcm9jZXNzLnB5OjpUZXN0UHJvY2Vz czo6dGVzdF9jaGlsZHJlbl9yZWN1cnNpdmUKKwktLWRlc2VsZWN0IHBzdXRpbC90ZXN0cy90ZXN0 X3Byb2Nlc3MucHk6OlRlc3RQcm9jZXNzOjp0ZXN0X29uZXNob3RfY2FjaGUKKwktLWRlc2VsZWN0 IHBzdXRpbC90ZXN0cy90ZXN0X3Byb2Nlc3MucHk6OlRlc3RQcm9jZXNzOjp0ZXN0X3BhcmVudF9t dWx0aQorCS0tZGVzZWxlY3QgcHN1dGlsL3Rlc3RzL3Rlc3RfcHJvY2Vzcy5weTo6VGVzdFByb2Nl c3M6OnRlc3RfcGFyZW50cworCS0tZGVzZWxlY3QgcHN1dGlsL3Rlc3RzL3Rlc3RfcHJvY2Vzcy5w eTo6VGVzdFByb2Nlc3M6OnRlc3RfcGFyZW50c19hbmRfY2hpbGRyZW4KKwktLWRlc2VsZWN0IHBz dXRpbC90ZXN0cy90ZXN0X3Byb2Nlc3MucHk6OlRlc3RQcm9jZXNzOjp0ZXN0X3pvbWJpZV9wcm9j ZXNzCisJLS1kZXNlbGVjdCBwc3V0aWwvdGVzdHMvdGVzdF90ZXN0dXRpbHMucHk6OlRlc3RQcm9j ZXNzVXRpbHM6OnRlc3RfcmVhcF9jaGlsZHJlbgorCS0tZGVzZWxlY3QgcHN1dGlsL3Rlc3RzL3Rl c3RfdGVzdHV0aWxzLnB5OjpUZXN0UHJvY2Vzc1V0aWxzOjp0ZXN0X3NwYXduX2NoaWxkcmVuX3Bh aXIKKwktLWRlc2VsZWN0IHBzdXRpbC90ZXN0cy90ZXN0X3Rlc3R1dGlscy5weTo6VGVzdFByb2Nl c3NVdGlsczo6dGVzdF9zcGF3bl96b21iaWUKKwktLWRlc2VsZWN0IHBzdXRpbC90ZXN0cy90ZXN0 X3Rlc3R1dGlscy5weTo6VGVzdFByb2Nlc3NVdGlsczo6dGVzdF90ZXJtaW5hdGUKKwktLWRlc2Vs ZWN0IHBzdXRpbC90ZXN0cy90ZXN0X3Rlc3R1dGlscy5weTo6VGVzdE1lbUxlYWtDbGFzczo6dGVz dF9sZWFrX21lbQorCS0tZGVzZWxlY3QgcHN1dGlsL3Rlc3RzL3Rlc3RfcHJvY2Vzcy5weTo6VGVz dFBvcGVuOjp0ZXN0X21pc2MKKwkiCitmaQogCiBwb3N0X2luc3RhbGwoKSB7CiAJcm0gLXIgJHtE RVNURElSfS8ke3B5M19zaXRlbGlifS9wc3V0aWwvdGVzdHMvCgpGcm9tIDkyOTQwMmY0ZjQ1MTFm NWMxNjNmOGYxNTk1MmYyZWE5ODA5ODgxNGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 ID0/VVRGLTg/cT9Hb256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0LmVkdS51 eT4KRGF0ZTogVHVlLCA1IERlYyAyMDIzIDIxOjEzOjAwIC0wMzAwClN1YmplY3Q6IFtQQVRDSCA2 LzddIHB5dGhvbjMtdG9ybmFkbzogdXBkYXRlIHRvIDYuNCwgYWRvcHQuCgotLS0KIC4uLi9wYXRj aGVzLzMyODgtdXRjbm93LWRlcHJlY2F0aW9uLnBhdGNoICAgICB8IDM3OCAtLS0tLS0tLS0tLS0t LS0tLS0KIC4uLi9wYXRjaGVzLzMzMzUtdXRjbm93LWRlcHJlY2F0aW9uLnBhdGNoICAgICB8ICA4 MSAtLS0tCiBzcmNwa2dzL3B5dGhvbjMtdG9ybmFkby90ZW1wbGF0ZSAgICAgICAgICAgICAgfCAg IDYgKy0KIDMgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA0NjIgZGVsZXRpb25zKC0p CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9weXRob24zLXRvcm5hZG8vcGF0Y2hlcy8zMjg4 LXV0Y25vdy1kZXByZWNhdGlvbi5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0 aG9uMy10b3JuYWRvL3BhdGNoZXMvMzMzNS11dGNub3ctZGVwcmVjYXRpb24ucGF0Y2gKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtdG9ybmFkby9wYXRjaGVzLzMyODgtdXRjbm93LWRlcHJl Y2F0aW9uLnBhdGNoIGIvc3JjcGtncy9weXRob24zLXRvcm5hZG8vcGF0Y2hlcy8zMjg4LXV0Y25v dy1kZXByZWNhdGlvbi5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTllN2Zm OTcxNGU1ZC4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtdG9ybmFkby9wYXRj aGVzLzMyODgtdXRjbm93LWRlcHJlY2F0aW9uLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzc4 ICswLDAgQEAKLVRha2VuIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3Rvcm5hZG93ZWIvdG9ybmFk by9wdWxsLzMyODgKLQotRnJvbSA0ZDRkODBjMWQwNzZkY2I0ZTA1MWM5NjlhZTRiNjY1NTdkMzg1 NmI4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogQmVuIERhcm5lbGwgPGJlbkBiZW5k YXJuZWxsLmNvbT4KLURhdGU6IFRodSwgOCBKdW4gMjAyMyAyMjo1MjoxOSAtMDQwMAotU3ViamVj dDogW1BBVENIXSAqOiBBZGFwdCB0byBkZXByZWNhdGlvbiBvZiBkYXRldGltZSB1dGMgbWV0aG9k cwotCi1QeXRob24gMy4xMiBkZXByZWNhdGVzIHRoZSB1dGNub3cgYW5kIHV0Y2Zyb210aW1lc3Rh bXAgbWV0aG9kcyBhbmQKLWRpc2NvdXJhZ2VzIHRoZSB1c2Ugb2YgbmFpdmUgZGF0ZXRpbWVzIHRv IHJlcHJlc2VudCBVVEMuIFRoaXMgd2FzCi1wcmV2aW91c2x5IHRoZSBtYWluIHdheSB0aGF0IFRv cm5hZG8gdXNlZCBkYXRldGltZXMgKHNpbmNlIGl0IHdhcwotdGhlIG9ubHkgb3B0aW9uIGF2YWls YWJsZSBpbiBQeXRob24gMiBiZWZvcmUgdGhlIGludHJvZHVjdGlvbgotb2YgZGF0ZXRpbWUudGlt ZXpvbmUudXRjIGluIFB5dGhvbiAzLjIpLgotCi0tIGh0dHBjbGllbnRfdGVzdDogVGVzdC1vbmx5 IGNoYW5nZSB0byB0ZXN0IHRoYXQgYm90aCBraW5kcyBvZiBkYXRldGltZXMKLSAgYXJlIHN1cHBv cnRlZCBpbiBJZi1Nb2RpZmllZC1TaW5jZSAodGhpcyBqdXN0IGNhbGxzCi0gIGh0dHB1dGlsLmZv cm1hdF90aW1lc3RhbXApCi0tIGh0dHB1dGlsOiBObyBmdW5jdGlvbmFsIGNoYW5nZXMsIGJ1dCBm b3JtYXRfdGltZXN0YW1wJ3MKLSAgc3VwcG9ydCBmb3IgYm90aCBuYWl2ZSBhbmQgYXdhcmUgZGF0 ZXRpbWVzIGlzIG5vdyB0ZXN0ZWQuCi0tIGxvY2FsZTogZm9ybWF0X3RpbWVzdGFtcCBub3cgc3Vw cG9ydHMgYXdhcmUgZGF0ZXRpbWVzIChpbgotICBhZGRpdGlvbiB0byB0aGUgZXhpc3Rpbmcgc3Vw cG9ydCBmb3IgbmFpdmUgZGF0ZXRpbWVzKS4KLS0gd2ViOiBDb29raWUgZXhwaXJhdGlvbnMgaW50 ZXJuYWxseSB1c2UgYXdhcmUgZGF0ZXRpbWVzLgotICBTdGF0aWNGaWxlSGFuZGxlci5nZXRfbW9k aWZpZWRfdGltZSBub3cgc3VwcG9ydHMgYm90aCBhbmQgdGhlCi0gIHN0YW5kYXJkIGltcGxlbWVu dGF0aW9uIHJldHVybnMgYXdhcmUuCi0KLUl0IGZlZWxzIGZyYWdpbGUgdGhhdCAibmFpdmUiIGFu ZCAiYXdhcmUiIGRhdGV0aW1lcyBhcmUgbm90IGRpc3RpbmN0Ci10eXBlcyBidXQgc3ViamVjdCB0 byBkYXRhLWRlcGVuZGVudCBiZWhhdmlvci4gVGhpcyBjaGFuZ2UgdXNlcwotImF3YXJlIiBkYXRl dGltZXMgdGhyb3VnaG91dCBUb3JuYWRvLCBidXQgc29tZSBvcGVyYXRpb25zIChjb21wYXJpc29u cwotYW5kIHN1YnRyYWN0aW9uKSBmYWlsIHdpdGggbWl4ZWQgZGF0ZXRpbWUgdHlwZXMgYW5kIGlm IEkgbWlzc2VkIGFueQotaW4gdGhpcyBjaGFuZ2UgbWF5IGNhdXNlIGVycm9ycyBpZiBuYWl2ZSBk YXRldGltZXMgd2VyZSB1c2VkICh3aGVyZQotcHJldmlvdXNseSBuYWl2ZSBkYXRldGltZXMgd291 bGQgaGF2ZSBiZWVuIHJlcXVpcmVkKS4gQnV0IHRoYXQncwotYXBwYXJlbnRseSB0aGUgQVBJIHdl IGhhdmUgdG8gd29yayB3aXRoLgotLS0tCi0gdG9ybmFkby9odHRwdXRpbC5weSAgICAgICAgICAg ICB8ICAzICstCi0gdG9ybmFkby9sb2NhbGUucHkgICAgICAgICAgICAgICB8IDEyICsrKy0tCi0g dG9ybmFkby90ZXN0L2h0dHBjbGllbnRfdGVzdC5weSB8IDEyICsrKystCi0gdG9ybmFkby90ZXN0 L2h0dHB1dGlsX3Rlc3QucHkgICB8IDI2ICsrKysrKysrKy0KLSB0b3JuYWRvL3Rlc3QvbG9jYWxl X3Rlc3QucHkgICAgIHwgODggKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCi0gdG9y bmFkby90ZXN0L3dlYl90ZXN0LnB5ICAgICAgICB8IDI1ICsrKysrLS0tLS0KLSB0b3JuYWRvL3dl Yi5weSAgICAgICAgICAgICAgICAgIHwgMjggKysrKysrKy0tLS0KLSA3IGZpbGVzIGNoYW5nZWQs IDEyNiBpbnNlcnRpb25zKCspLCA2OCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3Rvcm5h ZG8vaHR0cHV0aWwucHkgYi90b3JuYWRvL2h0dHB1dGlsLnB5Ci1pbmRleCA5YzM0MWQ0N2NjLi5i MjFkODA0NmM0IDEwMDY0NAotLS0tIGEvdG9ybmFkby9odHRwdXRpbC5weQotKysrIGIvdG9ybmFk by9odHRwdXRpbC5weQotQEAgLTg1Niw3ICs4NTYsOCBAQCBkZWYgZm9ybWF0X3RpbWVzdGFtcCgK LSAKLSAgICAgVGhlIGFyZ3VtZW50IG1heSBiZSBhIG51bWVyaWMgdGltZXN0YW1wIGFzIHJldHVy bmVkIGJ5IGB0aW1lLnRpbWVgLAotICAgICBhIHRpbWUgdHVwbGUgYXMgcmV0dXJuZWQgYnkgYHRp bWUuZ210aW1lYCwgb3IgYSBgZGF0ZXRpbWUuZGF0ZXRpbWVgCi0tICAgIG9iamVjdC4KLSsgICAg b2JqZWN0LiBOYWl2ZSBgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHMgYXJlIGFzc3VtZWQgdG8g cmVwcmVzZW50Ci0rICAgIFVUQzsgYXdhcmUgb2JqZWN0cyBhcmUgY29udmVydGVkIHRvIFVUQyBi ZWZvcmUgZm9ybWF0dGluZy4KLSAKLSAgICAgPj4+IGZvcm1hdF90aW1lc3RhbXAoMTM1OTMxMjIw MCkKLSAgICAgJ1N1biwgMjcgSmFuIDIwMTMgMTg6NDM6MjAgR01UJwotZGlmZiAtLWdpdCBhL3Rv cm5hZG8vbG9jYWxlLnB5IGIvdG9ybmFkby9sb2NhbGUucHkKLWluZGV4IDU1MDcyYWYyOGQuLmM1 NTI2NzAzYjEgMTAwNjQ0Ci0tLS0gYS90b3JuYWRvL2xvY2FsZS5weQotKysrIGIvdG9ybmFkby9s b2NhbGUucHkKLUBAIC0zMzMsNyArMzMzLDcgQEAgZGVmIGZvcm1hdF9kYXRlKAotICAgICAgICAg c2hvcnRlcjogYm9vbCA9IEZhbHNlLAotICAgICAgICAgZnVsbF9mb3JtYXQ6IGJvb2wgPSBGYWxz ZSwKLSAgICAgKSAtPiBzdHI6Ci0tICAgICAgICAiIiJGb3JtYXRzIHRoZSBnaXZlbiBkYXRlICh3 aGljaCBzaG91bGQgYmUgR01UKS4KLSsgICAgICAgICIiIkZvcm1hdHMgdGhlIGdpdmVuIGRhdGUu Ci0gCi0gICAgICAgICBCeSBkZWZhdWx0LCB3ZSByZXR1cm4gYSByZWxhdGl2ZSB0aW1lIChlLmcu LCAiMiBtaW51dGVzIGFnbyIpLiBZb3UKLSAgICAgICAgIGNhbiByZXR1cm4gYW4gYWJzb2x1dGUg ZGF0ZSBzdHJpbmcgd2l0aCBgYHJlbGF0aXZlPUZhbHNlYGAuCi1AQCAtMzQzLDEwICszNDMsMTYg QEAgZGVmIGZvcm1hdF9kYXRlKAotIAotICAgICAgICAgVGhpcyBtZXRob2QgaXMgcHJpbWFyaWx5 IGludGVuZGVkIGZvciBkYXRlcyBpbiB0aGUgcGFzdC4KLSAgICAgICAgIEZvciBkYXRlcyBpbiB0 aGUgZnV0dXJlLCB3ZSBmYWxsIGJhY2sgdG8gZnVsbCBmb3JtYXQuCi0rCi0rICAgICAgICAuLiB2 ZXJzaW9uY2hhbmdlZDo6IDYuNAotKyAgICAgICAgICAgQXdhcmUgYGRhdGV0aW1lLmRhdGV0aW1l YCBvYmplY3RzIGFyZSBub3cgc3VwcG9ydGVkIChuYWl2ZQotKyAgICAgICAgICAgZGF0ZXRpbWVz IGFyZSBzdGlsbCBhc3N1bWVkIHRvIGJlIFVUQykuCi0gICAgICAgICAiIiIKLSAgICAgICAgIGlm IGlzaW5zdGFuY2UoZGF0ZSwgKGludCwgZmxvYXQpKToKLS0gICAgICAgICAgICBkYXRlID0gZGF0 ZXRpbWUuZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFtcChkYXRlKQotLSAgICAgICAgbm93ID0gZGF0 ZXRpbWUuZGF0ZXRpbWUudXRjbm93KCkKLSsgICAgICAgICAgICBkYXRlID0gZGF0ZXRpbWUuZGF0 ZXRpbWUuZnJvbXRpbWVzdGFtcChkYXRlLCBkYXRldGltZS50aW1lem9uZS51dGMpCi0rICAgICAg ICBpZiBkYXRlLnR6aW5mbyBpcyBOb25lOgotKyAgICAgICAgICAgIGRhdGUgPSBkYXRlLnJlcGxh Y2UodHppbmZvPWRhdGV0aW1lLnRpbWV6b25lLnV0YykKLSsgICAgICAgIG5vdyA9IGRhdGV0aW1l LmRhdGV0aW1lLm5vdyhkYXRldGltZS50aW1lem9uZS51dGMpCi0gICAgICAgICBpZiBkYXRlID4g bm93OgotICAgICAgICAgICAgIGlmIHJlbGF0aXZlIGFuZCAoZGF0ZSAtIG5vdykuc2Vjb25kcyA8 IDYwOgotICAgICAgICAgICAgICAgICAjIER1ZSB0byBjbGljayBza2V3LCB0aGluZ3MgYXJlIHNv bWUgdGhpbmdzIHNsaWdodGx5Ci1kaWZmIC0tZ2l0IGEvdG9ybmFkby90ZXN0L2h0dHBjbGllbnRf dGVzdC5weSBiL3Rvcm5hZG8vdGVzdC9odHRwY2xpZW50X3Rlc3QucHkKLWluZGV4IGE3MWVjMGFm YjYuLmE0MTA0MGU2NGEgMTAwNjQ0Ci0tLS0gYS90b3JuYWRvL3Rlc3QvaHR0cGNsaWVudF90ZXN0 LnB5Ci0rKysgYi90b3JuYWRvL3Rlc3QvaHR0cGNsaWVudF90ZXN0LnB5Ci1AQCAtMjgsNyArMjgs NyBAQAotIGZyb20gdG9ybmFkby5sb2cgaW1wb3J0IGdlbl9sb2csIGFwcF9sb2cKLSBmcm9tIHRv cm5hZG8gaW1wb3J0IG5ldHV0aWwKLSBmcm9tIHRvcm5hZG8udGVzdGluZyBpbXBvcnQgQXN5bmNI VFRQVGVzdENhc2UsIGJpbmRfdW51c2VkX3BvcnQsIGdlbl90ZXN0LCBFeHBlY3RMb2cKLS1mcm9t IHRvcm5hZG8udGVzdC51dGlsIGltcG9ydCBza2lwT25UcmF2aXMKLStmcm9tIHRvcm5hZG8udGVz dC51dGlsIGltcG9ydCBza2lwT25UcmF2aXMsIGlnbm9yZV9kZXByZWNhdGlvbgotIGZyb20gdG9y bmFkby53ZWIgaW1wb3J0IEFwcGxpY2F0aW9uLCBSZXF1ZXN0SGFuZGxlciwgdXJsCi0gZnJvbSB0 b3JuYWRvLmh0dHB1dGlsIGltcG9ydCBmb3JtYXRfdGltZXN0YW1wLCBIVFRQSGVhZGVycwotIAot QEAgLTg4Nyw3ICs4ODcsMTUgQEAgZGVmIHRlc3RfYm9keV9zZXR0ZXIoc2VsZik6Ci0gICAgICAg ICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3QuYm9keSwgdXRmOCgiZm9vIikpCi0gCi0gICAgIGRl ZiB0ZXN0X2lmX21vZGlmaWVkX3NpbmNlKHNlbGYpOgotLSAgICAgICAgaHR0cF9kYXRlID0gZGF0 ZXRpbWUuZGF0ZXRpbWUudXRjbm93KCkKLSsgICAgICAgIGh0dHBfZGF0ZSA9IGRhdGV0aW1lLmRh dGV0aW1lLm5vdyhkYXRldGltZS50aW1lem9uZS51dGMpCi0rICAgICAgICByZXF1ZXN0ID0gSFRU UFJlcXVlc3QoImh0dHA6Ly9leGFtcGxlLmNvbSIsIGlmX21vZGlmaWVkX3NpbmNlPWh0dHBfZGF0 ZSkKLSsgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0rICAgICAgICAgICAgcmVxdWVzdC5oZWFk ZXJzLCB7IklmLU1vZGlmaWVkLVNpbmNlIjogZm9ybWF0X3RpbWVzdGFtcChodHRwX2RhdGUpfQot KyAgICAgICAgKQotKwotKyAgICBkZWYgdGVzdF9pZl9tb2RpZmllZF9zaW5jZV9uYWl2ZV9kZXBy ZWNhdGVkKHNlbGYpOgotKyAgICAgICAgd2l0aCBpZ25vcmVfZGVwcmVjYXRpb24oKToKLSsgICAg ICAgICAgICBodHRwX2RhdGUgPSBkYXRldGltZS5kYXRldGltZS51dGNub3coKQotICAgICAgICAg cmVxdWVzdCA9IEhUVFBSZXF1ZXN0KCJodHRwOi8vZXhhbXBsZS5jb20iLCBpZl9tb2RpZmllZF9z aW5jZT1odHRwX2RhdGUpCi0gICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAg IHJlcXVlc3QuaGVhZGVycywgeyJJZi1Nb2RpZmllZC1TaW5jZSI6IGZvcm1hdF90aW1lc3RhbXAo aHR0cF9kYXRlKX0KLWRpZmYgLS1naXQgYS90b3JuYWRvL3Rlc3QvaHR0cHV0aWxfdGVzdC5weSBi L3Rvcm5hZG8vdGVzdC9odHRwdXRpbF90ZXN0LnB5Ci1pbmRleCA4NDI0NDkxZDg3Li5hYTliNmVl MjUzIDEwMDY0NAotLS0tIGEvdG9ybmFkby90ZXN0L2h0dHB1dGlsX3Rlc3QucHkKLSsrKyBiL3Rv cm5hZG8vdGVzdC9odHRwdXRpbF90ZXN0LnB5Ci1AQCAtMTMsNiArMTMsNyBAQAotIGZyb20gdG9y bmFkby5lc2NhcGUgaW1wb3J0IHV0ZjgsIG5hdGl2ZV9zdHIKLSBmcm9tIHRvcm5hZG8ubG9nIGlt cG9ydCBnZW5fbG9nCi0gZnJvbSB0b3JuYWRvLnRlc3RpbmcgaW1wb3J0IEV4cGVjdExvZwotK2Zy b20gdG9ybmFkby50ZXN0LnV0aWwgaW1wb3J0IGlnbm9yZV9kZXByZWNhdGlvbgotIAotIGltcG9y dCBjb3B5Ci0gaW1wb3J0IGRhdGV0aW1lCi1AQCAtNDEyLDggKzQxMywyOSBAQCBkZWYgdGVzdF90 aW1lX3R1cGxlKHNlbGYpOgotICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg5LCBsZW4odHVwKSkK LSAgICAgICAgIHNlbGYuY2hlY2sodHVwKQotIAotLSAgICBkZWYgdGVzdF9kYXRldGltZShzZWxm KToKLS0gICAgICAgIHNlbGYuY2hlY2soZGF0ZXRpbWUuZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFt cChzZWxmLlRJTUVTVEFNUCkpCi0rICAgIGRlZiB0ZXN0X3V0Y19uYWl2ZV9kYXRldGltZShzZWxm KToKLSsgICAgICAgIHNlbGYuY2hlY2soCi0rICAgICAgICAgICAgZGF0ZXRpbWUuZGF0ZXRpbWUu ZnJvbXRpbWVzdGFtcCgKLSsgICAgICAgICAgICAgICAgc2VsZi5USU1FU1RBTVAsIGRhdGV0aW1l LnRpbWV6b25lLnV0YwotKyAgICAgICAgICAgICkucmVwbGFjZSh0emluZm89Tm9uZSkKLSsgICAg ICAgICkKLSsKLSsgICAgZGVmIHRlc3RfdXRjX25haXZlX2RhdGV0aW1lX2RlcHJlY2F0ZWQoc2Vs Zik6Ci0rICAgICAgICB3aXRoIGlnbm9yZV9kZXByZWNhdGlvbigpOgotKyAgICAgICAgICAgIHNl bGYuY2hlY2soZGF0ZXRpbWUuZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFtcChzZWxmLlRJTUVTVEFN UCkpCi0rCi0rICAgIGRlZiB0ZXN0X3V0Y19hd2FyZV9kYXRldGltZShzZWxmKToKLSsgICAgICAg IHNlbGYuY2hlY2soCi0rICAgICAgICAgICAgZGF0ZXRpbWUuZGF0ZXRpbWUuZnJvbXRpbWVzdGFt cChzZWxmLlRJTUVTVEFNUCwgZGF0ZXRpbWUudGltZXpvbmUudXRjKQotKyAgICAgICAgKQotKwot KyAgICBkZWYgdGVzdF9vdGhlcl9hd2FyZV9kYXRldGltZShzZWxmKToKLSsgICAgICAgICMgT3Ro ZXIgdGltZXpvbmVzIGFyZSBpZ25vcmVkOyB0aGUgdGltZXpvbmUgaXMgYWx3YXlzIHByaW50ZWQg YXMgR01UCi0rICAgICAgICBzZWxmLmNoZWNrKAotKyAgICAgICAgICAgIGRhdGV0aW1lLmRhdGV0 aW1lLmZyb210aW1lc3RhbXAoCi0rICAgICAgICAgICAgICAgIHNlbGYuVElNRVNUQU1QLCBkYXRl dGltZS50aW1lem9uZShkYXRldGltZS50aW1lZGVsdGEoaG91cnM9LTQpKQotKyAgICAgICAgICAg ICkKLSsgICAgICAgICkKLSAKLSAKLSAjIEhUVFBTZXJ2ZXJSZXF1ZXN0IGlzIG1haW5seSB0ZXN0 ZWQgaW5jaWRlbnRhbGx5IHRvIHRoZSBzZXJ2ZXIgaXRzZWxmLAotZGlmZiAtLWdpdCBhL3Rvcm5h ZG8vdGVzdC9sb2NhbGVfdGVzdC5weSBiL3Rvcm5hZG8vdGVzdC9sb2NhbGVfdGVzdC5weQotaW5k ZXggZWU3NGNiMDVlOC4uYTJlMDg3MmI4ZiAxMDA2NDQKLS0tLSBhL3Rvcm5hZG8vdGVzdC9sb2Nh bGVfdGVzdC5weQotKysrIGIvdG9ybmFkby90ZXN0L2xvY2FsZV90ZXN0LnB5Ci1AQCAtOTEsNDUg KzkxLDU1IEBAIGRlZiB0ZXN0X2Zvcm1hdF9kYXRlKHNlbGYpOgotICAgICAgICAgICAgIGxvY2Fs ZS5mb3JtYXRfZGF0ZShkYXRlLCBmdWxsX2Zvcm1hdD1UcnVlKSwgIkFwcmlsIDI4LCAyMDEzIGF0 IDY6MzUgcG0iCi0gICAgICAgICApCi0gCi0tICAgICAgICBub3cgPSBkYXRldGltZS5kYXRldGlt ZS51dGNub3coKQotLQotLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKLS0gICAgICAgICAgICBs b2NhbGUuZm9ybWF0X2RhdGUobm93IC0gZGF0ZXRpbWUudGltZWRlbHRhKHNlY29uZHM9MiksIGZ1 bGxfZm9ybWF0PUZhbHNlKSwKLS0gICAgICAgICAgICAiMiBzZWNvbmRzIGFnbyIsCi0tICAgICAg ICApCi0tICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotLSAgICAgICAgICAgIGxvY2FsZS5mb3Jt YXRfZGF0ZShub3cgLSBkYXRldGltZS50aW1lZGVsdGEobWludXRlcz0yKSwgZnVsbF9mb3JtYXQ9 RmFsc2UpLAotLSAgICAgICAgICAgICIyIG1pbnV0ZXMgYWdvIiwKLS0gICAgICAgICkKLS0gICAg ICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0tICAgICAgICAgICAgbG9jYWxlLmZvcm1hdF9kYXRlKG5v dyAtIGRhdGV0aW1lLnRpbWVkZWx0YShob3Vycz0yKSwgZnVsbF9mb3JtYXQ9RmFsc2UpLAotLSAg ICAgICAgICAgICIyIGhvdXJzIGFnbyIsCi0tICAgICAgICApCi0tCi0tICAgICAgICBzZWxmLmFz c2VydEVxdWFsKAotLSAgICAgICAgICAgIGxvY2FsZS5mb3JtYXRfZGF0ZSgKLS0gICAgICAgICAg ICAgICAgbm93IC0gZGF0ZXRpbWUudGltZWRlbHRhKGRheXM9MSksIGZ1bGxfZm9ybWF0PUZhbHNl LCBzaG9ydGVyPVRydWUKLS0gICAgICAgICAgICApLAotLSAgICAgICAgICAgICJ5ZXN0ZXJkYXki LAotLSAgICAgICAgKQotLQotLSAgICAgICAgZGF0ZSA9IG5vdyAtIGRhdGV0aW1lLnRpbWVkZWx0 YShkYXlzPTIpCi0tICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotLSAgICAgICAgICAgIGxvY2Fs ZS5mb3JtYXRfZGF0ZShkYXRlLCBmdWxsX2Zvcm1hdD1GYWxzZSwgc2hvcnRlcj1UcnVlKSwKLS0g ICAgICAgICAgICBsb2NhbGUuX3dlZWtkYXlzW2RhdGUud2Vla2RheSgpXSwKLS0gICAgICAgICkK LS0KLS0gICAgICAgIGRhdGUgPSBub3cgLSBkYXRldGltZS50aW1lZGVsdGEoZGF5cz0zMDApCi0t ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotLSAgICAgICAgICAgIGxvY2FsZS5mb3JtYXRfZGF0 ZShkYXRlLCBmdWxsX2Zvcm1hdD1GYWxzZSwgc2hvcnRlcj1UcnVlKSwKLS0gICAgICAgICAgICAi JXMgJWQiICUgKGxvY2FsZS5fbW9udGhzW2RhdGUubW9udGggLSAxXSwgZGF0ZS5kYXkpLAotLSAg ICAgICAgKQotLQotLSAgICAgICAgZGF0ZSA9IG5vdyAtIGRhdGV0aW1lLnRpbWVkZWx0YShkYXlz PTUwMCkKLS0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0tICAgICAgICAgICAgbG9jYWxlLmZv cm1hdF9kYXRlKGRhdGUsIGZ1bGxfZm9ybWF0PUZhbHNlLCBzaG9ydGVyPVRydWUpLAotLSAgICAg ICAgICAgICIlcyAlZCwgJWQiICUgKGxvY2FsZS5fbW9udGhzW2RhdGUubW9udGggLSAxXSwgZGF0 ZS5kYXksIGRhdGUueWVhciksCi0tICAgICAgICApCi0rICAgICAgICBhd2FyZV9kdCA9IGRhdGV0 aW1lLmRhdGV0aW1lLm5vdyhkYXRldGltZS50aW1lem9uZS51dGMpCi0rICAgICAgICBuYWl2ZV9k dCA9IGF3YXJlX2R0LnJlcGxhY2UodHppbmZvPU5vbmUpCi0rICAgICAgICBmb3IgbmFtZSwgbm93 IGluIHsiYXdhcmUiOiBhd2FyZV9kdCwgIm5haXZlIjogbmFpdmVfZHR9Lml0ZW1zKCk6Ci0rICAg ICAgICAgICAgd2l0aCBzZWxmLnN1YlRlc3QoZHQ9bmFtZSk6Ci0rICAgICAgICAgICAgICAgIHNl bGYuYXNzZXJ0RXF1YWwoCi0rICAgICAgICAgICAgICAgICAgICBsb2NhbGUuZm9ybWF0X2RhdGUo Ci0rICAgICAgICAgICAgICAgICAgICAgICAgbm93IC0gZGF0ZXRpbWUudGltZWRlbHRhKHNlY29u ZHM9MiksIGZ1bGxfZm9ybWF0PUZhbHNlCi0rICAgICAgICAgICAgICAgICAgICApLAotKyAgICAg ICAgICAgICAgICAgICAgIjIgc2Vjb25kcyBhZ28iLAotKyAgICAgICAgICAgICAgICApCi0rICAg ICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0rICAgICAgICAgICAgICAgICAgICBsb2Nh bGUuZm9ybWF0X2RhdGUoCi0rICAgICAgICAgICAgICAgICAgICAgICAgbm93IC0gZGF0ZXRpbWUu dGltZWRlbHRhKG1pbnV0ZXM9MiksIGZ1bGxfZm9ybWF0PUZhbHNlCi0rICAgICAgICAgICAgICAg ICAgICApLAotKyAgICAgICAgICAgICAgICAgICAgIjIgbWludXRlcyBhZ28iLAotKyAgICAgICAg ICAgICAgICApCi0rICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0rICAgICAgICAg ICAgICAgICAgICBsb2NhbGUuZm9ybWF0X2RhdGUoCi0rICAgICAgICAgICAgICAgICAgICAgICAg bm93IC0gZGF0ZXRpbWUudGltZWRlbHRhKGhvdXJzPTIpLCBmdWxsX2Zvcm1hdD1GYWxzZQotKyAg ICAgICAgICAgICAgICAgICAgKSwKLSsgICAgICAgICAgICAgICAgICAgICIyIGhvdXJzIGFnbyIs Ci0rICAgICAgICAgICAgICAgICkKLSsKLSsgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVh bCgKLSsgICAgICAgICAgICAgICAgICAgIGxvY2FsZS5mb3JtYXRfZGF0ZSgKLSsgICAgICAgICAg ICAgICAgICAgICAgICBub3cgLSBkYXRldGltZS50aW1lZGVsdGEoZGF5cz0xKSwKLSsgICAgICAg ICAgICAgICAgICAgICAgICBmdWxsX2Zvcm1hdD1GYWxzZSwKLSsgICAgICAgICAgICAgICAgICAg ICAgICBzaG9ydGVyPVRydWUsCi0rICAgICAgICAgICAgICAgICAgICApLAotKyAgICAgICAgICAg ICAgICAgICAgInllc3RlcmRheSIsCi0rICAgICAgICAgICAgICAgICkKLSsKLSsgICAgICAgICAg ICAgICAgZGF0ZSA9IG5vdyAtIGRhdGV0aW1lLnRpbWVkZWx0YShkYXlzPTIpCi0rICAgICAgICAg ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0rICAgICAgICAgICAgICAgICAgICBsb2NhbGUuZm9y bWF0X2RhdGUoZGF0ZSwgZnVsbF9mb3JtYXQ9RmFsc2UsIHNob3J0ZXI9VHJ1ZSksCi0rICAgICAg ICAgICAgICAgICAgICBsb2NhbGUuX3dlZWtkYXlzW2RhdGUud2Vla2RheSgpXSwKLSsgICAgICAg ICAgICAgICAgKQotKwotKyAgICAgICAgICAgICAgICBkYXRlID0gbm93IC0gZGF0ZXRpbWUudGlt ZWRlbHRhKGRheXM9MzAwKQotKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotKyAg ICAgICAgICAgICAgICAgICAgbG9jYWxlLmZvcm1hdF9kYXRlKGRhdGUsIGZ1bGxfZm9ybWF0PUZh bHNlLCBzaG9ydGVyPVRydWUpLAotKyAgICAgICAgICAgICAgICAgICAgIiVzICVkIiAlIChsb2Nh bGUuX21vbnRoc1tkYXRlLm1vbnRoIC0gMV0sIGRhdGUuZGF5KSwKLSsgICAgICAgICAgICAgICAg KQotKwotKyAgICAgICAgICAgICAgICBkYXRlID0gbm93IC0gZGF0ZXRpbWUudGltZWRlbHRhKGRh eXM9NTAwKQotKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotKyAgICAgICAgICAg ICAgICAgICAgbG9jYWxlLmZvcm1hdF9kYXRlKGRhdGUsIGZ1bGxfZm9ybWF0PUZhbHNlLCBzaG9y dGVyPVRydWUpLAotKyAgICAgICAgICAgICAgICAgICAgIiVzICVkLCAlZCIgJSAobG9jYWxlLl9t b250aHNbZGF0ZS5tb250aCAtIDFdLCBkYXRlLmRheSwgZGF0ZS55ZWFyKSwKLSsgICAgICAgICAg ICAgICAgKQotIAotICAgICBkZWYgdGVzdF9mcmllbmRseV9udW1iZXIoc2VsZik6Ci0gICAgICAg ICBsb2NhbGUgPSB0b3JuYWRvLmxvY2FsZS5nZXQoImVuX1VTIikKLWRpZmYgLS1naXQgYS90b3Ju YWRvL3Rlc3Qvd2ViX3Rlc3QucHkgYi90b3JuYWRvL3Rlc3Qvd2ViX3Rlc3QucHkKLWluZGV4IDU2 OTAwZDlhMDAuLmZiOWMzNDE3YjkgMTAwNjQ0Ci0tLS0gYS90b3JuYWRvL3Rlc3Qvd2ViX3Rlc3Qu cHkKLSsrKyBiL3Rvcm5hZG8vdGVzdC93ZWJfdGVzdC5weQotQEAgLTQwNCwxMCArNDA0LDEwIEBA IGRlZiB0ZXN0X3NldF9jb29raWVfZXhwaXJlc19kYXlzKHNlbGYpOgotICAgICAgICAgbWF0Y2gg PSByZS5tYXRjaCgiZm9vPWJhcjsgZXhwaXJlcz0oP1A8ZXhwaXJlcz4uKyk7IFBhdGg9LyIsIGhl YWRlcikKLSAgICAgICAgIGFzc2VydCBtYXRjaCBpcyBub3QgTm9uZQotIAotLSAgICAgICAgZXhw aXJlcyA9IGRhdGV0aW1lLmRhdGV0aW1lLnV0Y25vdygpICsgZGF0ZXRpbWUudGltZWRlbHRhKGRh eXM9MTApCi0tICAgICAgICBwYXJzZWQgPSBlbWFpbC51dGlscy5wYXJzZWRhdGUobWF0Y2guZ3Jv dXBkaWN0KClbImV4cGlyZXMiXSkKLS0gICAgICAgIGFzc2VydCBwYXJzZWQgaXMgbm90IE5vbmUK LS0gICAgICAgIGhlYWRlcl9leHBpcmVzID0gZGF0ZXRpbWUuZGF0ZXRpbWUoKnBhcnNlZFs6Nl0p Ci0rICAgICAgICBleHBpcmVzID0gZGF0ZXRpbWUuZGF0ZXRpbWUubm93KGRhdGV0aW1lLnRpbWV6 b25lLnV0YykgKyBkYXRldGltZS50aW1lZGVsdGEoCi0rICAgICAgICAgICAgZGF5cz0xMAotKyAg ICAgICAgKQotKyAgICAgICAgaGVhZGVyX2V4cGlyZXMgPSBlbWFpbC51dGlscy5wYXJzZWRhdGVf dG9fZGF0ZXRpbWUobWF0Y2guZ3JvdXBkaWN0KClbImV4cGlyZXMiXSkKLSAgICAgICAgIHNlbGYu YXNzZXJ0VHJ1ZShhYnMoKGV4cGlyZXMgLSBoZWFkZXJfZXhwaXJlcykudG90YWxfc2Vjb25kcygp KSA8IDEwKQotIAotICAgICBkZWYgdGVzdF9zZXRfY29va2llX2ZhbHNlX2ZsYWdzKHNlbGYpOgot QEAgLTE2OTcsMTEgKzE2OTcsMTAgQEAgZGVmIGdldChzZWxmKToKLSAKLSAgICAgZGVmIHRlc3Rf ZGF0ZV9oZWFkZXIoc2VsZik6Ci0gICAgICAgICByZXNwb25zZSA9IHNlbGYuZmV0Y2goIi8iKQot LSAgICAgICAgcGFyc2VkID0gZW1haWwudXRpbHMucGFyc2VkYXRlKHJlc3BvbnNlLmhlYWRlcnNb IkRhdGUiXSkKLS0gICAgICAgIGFzc2VydCBwYXJzZWQgaXMgbm90IE5vbmUKLS0gICAgICAgIGhl YWRlcl9kYXRlID0gZGF0ZXRpbWUuZGF0ZXRpbWUoKnBhcnNlZFs6Nl0pCi0rICAgICAgICBoZWFk ZXJfZGF0ZSA9IGVtYWlsLnV0aWxzLnBhcnNlZGF0ZV90b19kYXRldGltZShyZXNwb25zZS5oZWFk ZXJzWyJEYXRlIl0pCi0gICAgICAgICBzZWxmLmFzc2VydFRydWUoCi0tICAgICAgICAgICAgaGVh ZGVyX2RhdGUgLSBkYXRldGltZS5kYXRldGltZS51dGNub3coKSA8IGRhdGV0aW1lLnRpbWVkZWx0 YShzZWNvbmRzPTIpCi0rICAgICAgICAgICAgaGVhZGVyX2RhdGUgLSBkYXRldGltZS5kYXRldGlt ZS5ub3coZGF0ZXRpbWUudGltZXpvbmUudXRjKQotKyAgICAgICAgICAgIDwgZGF0ZXRpbWUudGlt ZWRlbHRhKHNlY29uZHM9MikKLSAgICAgICAgICkKLSAKLSAKLUBAIC0zMDEwLDEwICszMDA5LDEy IEBAIGRlZiB0ZXN0X3hzcmZfaHR0cG9ubHkoc2VsZik6Ci0gICAgICAgICBtYXRjaCA9IHJlLm1h dGNoKCIuKjsgZXhwaXJlcz0oP1A8ZXhwaXJlcz4uKyk7LioiLCBoZWFkZXIpCi0gICAgICAgICBh c3NlcnQgbWF0Y2ggaXMgbm90IE5vbmUKLSAKLS0gICAgICAgIGV4cGlyZXMgPSBkYXRldGltZS5k YXRldGltZS51dGNub3coKSArIGRhdGV0aW1lLnRpbWVkZWx0YShkYXlzPTIpCi0tICAgICAgICBw YXJzZWQgPSBlbWFpbC51dGlscy5wYXJzZWRhdGUobWF0Y2guZ3JvdXBkaWN0KClbImV4cGlyZXMi XSkKLS0gICAgICAgIGFzc2VydCBwYXJzZWQgaXMgbm90IE5vbmUKLS0gICAgICAgIGhlYWRlcl9l eHBpcmVzID0gZGF0ZXRpbWUuZGF0ZXRpbWUoKnBhcnNlZFs6Nl0pCi0rICAgICAgICBleHBpcmVz ID0gZGF0ZXRpbWUuZGF0ZXRpbWUubm93KGRhdGV0aW1lLnRpbWV6b25lLnV0YykgKyBkYXRldGlt ZS50aW1lZGVsdGEoCi0rICAgICAgICAgICAgZGF5cz0yCi0rICAgICAgICApCi0rICAgICAgICBo ZWFkZXJfZXhwaXJlcyA9IGVtYWlsLnV0aWxzLnBhcnNlZGF0ZV90b19kYXRldGltZShtYXRjaC5n cm91cGRpY3QoKVsiZXhwaXJlcyJdKQotKyAgICAgICAgaWYgaGVhZGVyX2V4cGlyZXMudHppbmZv IGlzIE5vbmU6Ci0rICAgICAgICAgICAgaGVhZGVyX2V4cGlyZXMgPSBoZWFkZXJfZXhwaXJlcy5y ZXBsYWNlKHR6aW5mbz1kYXRldGltZS50aW1lem9uZS51dGMpCi0gICAgICAgICBzZWxmLmFzc2Vy dFRydWUoYWJzKChleHBpcmVzIC0gaGVhZGVyX2V4cGlyZXMpLnRvdGFsX3NlY29uZHMoKSkgPCAx MCkKLSAKLSAKLWRpZmYgLS1naXQgYS90b3JuYWRvL3dlYi5weSBiL3Rvcm5hZG8vd2ViLnB5Ci1p bmRleCA1NjUxNDA0OTNlLi40MzllMDJjNDdiIDEwMDY0NAotLS0tIGEvdG9ybmFkby93ZWIucHkK LSsrKyBiL3Rvcm5hZG8vd2ViLnB5Ci1AQCAtNjQ3LDcgKzY0Nyw5IEBAIGRlZiBzZXRfY29va2ll KAotICAgICAgICAgaWYgZG9tYWluOgotICAgICAgICAgICAgIG1vcnNlbFsiZG9tYWluIl0gPSBk b21haW4KLSAgICAgICAgIGlmIGV4cGlyZXNfZGF5cyBpcyBub3QgTm9uZSBhbmQgbm90IGV4cGly ZXM6Ci0tICAgICAgICAgICAgZXhwaXJlcyA9IGRhdGV0aW1lLmRhdGV0aW1lLnV0Y25vdygpICsg ZGF0ZXRpbWUudGltZWRlbHRhKGRheXM9ZXhwaXJlc19kYXlzKQotKyAgICAgICAgICAgIGV4cGly ZXMgPSBkYXRldGltZS5kYXRldGltZS5ub3coZGF0ZXRpbWUudGltZXpvbmUudXRjKSArIGRhdGV0 aW1lLnRpbWVkZWx0YSgKLSsgICAgICAgICAgICAgICAgZGF5cz1leHBpcmVzX2RheXMKLSsgICAg ICAgICAgICApCi0gICAgICAgICBpZiBleHBpcmVzOgotICAgICAgICAgICAgIG1vcnNlbFsiZXhw aXJlcyJdID0gaHR0cHV0aWwuZm9ybWF0X3RpbWVzdGFtcChleHBpcmVzKQotICAgICAgICAgaWYg cGF0aDoKLUBAIC02OTgsNyArNzAwLDkgQEAgZGVmIGNsZWFyX2Nvb2tpZShzZWxmLCBuYW1lOiBz dHIsICoqa3dhcmdzOiBBbnkpIC0+IE5vbmU6Ci0gICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVF cnJvcigKLSAgICAgICAgICAgICAgICAgICAgIGYiY2xlYXJfY29va2llKCkgZ290IGFuIHVuZXhw ZWN0ZWQga2V5d29yZCBhcmd1bWVudCAne2V4Y2x1ZGVkX2FyZ30nIgotICAgICAgICAgICAgICAg ICApCi0tICAgICAgICBleHBpcmVzID0gZGF0ZXRpbWUuZGF0ZXRpbWUudXRjbm93KCkgLSBkYXRl dGltZS50aW1lZGVsdGEoZGF5cz0zNjUpCi0rICAgICAgICBleHBpcmVzID0gZGF0ZXRpbWUuZGF0 ZXRpbWUubm93KGRhdGV0aW1lLnRpbWV6b25lLnV0YykgLSBkYXRldGltZS50aW1lZGVsdGEoCi0r ICAgICAgICAgICAgZGF5cz0zNjUKLSsgICAgICAgICkKLSAgICAgICAgIHNlbGYuc2V0X2Nvb2tp ZShuYW1lLCB2YWx1ZT0iIiwgZXhwaXJlcz1leHBpcmVzLCAqKmt3YXJncykKLSAKLSAgICAgZGVm IGNsZWFyX2FsbF9jb29raWVzKHNlbGYsICoqa3dhcmdzOiBBbnkpIC0+IE5vbmU6Ci1AQCAtMjgx MiwxMiArMjgxNiwxMiBAQCBkZWYgc2hvdWxkX3JldHVybl8zMDQoc2VsZikgLT4gYm9vbDoKLSAg ICAgICAgICMgY29udGVudCBoYXMgbm90IGJlZW4gbW9kaWZpZWQKLSAgICAgICAgIGltc192YWx1 ZSA9IHNlbGYucmVxdWVzdC5oZWFkZXJzLmdldCgiSWYtTW9kaWZpZWQtU2luY2UiKQotICAgICAg ICAgaWYgaW1zX3ZhbHVlIGlzIG5vdCBOb25lOgotLSAgICAgICAgICAgIGRhdGVfdHVwbGUgPSBl bWFpbC51dGlscy5wYXJzZWRhdGUoaW1zX3ZhbHVlKQotLSAgICAgICAgICAgIGlmIGRhdGVfdHVw bGUgaXMgbm90IE5vbmU6Ci0tICAgICAgICAgICAgICAgIGlmX3NpbmNlID0gZGF0ZXRpbWUuZGF0 ZXRpbWUoKmRhdGVfdHVwbGVbOjZdKQotLSAgICAgICAgICAgICAgICBhc3NlcnQgc2VsZi5tb2Rp ZmllZCBpcyBub3QgTm9uZQotLSAgICAgICAgICAgICAgICBpZiBpZl9zaW5jZSA+PSBzZWxmLm1v ZGlmaWVkOgotLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKLSsgICAgICAgICAgICBp Zl9zaW5jZSA9IGVtYWlsLnV0aWxzLnBhcnNlZGF0ZV90b19kYXRldGltZShpbXNfdmFsdWUpCi0r ICAgICAgICAgICAgaWYgaWZfc2luY2UudHppbmZvIGlzIE5vbmU6Ci0rICAgICAgICAgICAgICAg IGlmX3NpbmNlID0gaWZfc2luY2UucmVwbGFjZSh0emluZm89ZGF0ZXRpbWUudGltZXpvbmUudXRj KQotKyAgICAgICAgICAgIGFzc2VydCBzZWxmLm1vZGlmaWVkIGlzIG5vdCBOb25lCi0rICAgICAg ICAgICAgaWYgaWZfc2luY2UgPj0gc2VsZi5tb2RpZmllZDoKLSsgICAgICAgICAgICAgICAgcmV0 dXJuIFRydWUKLSAKLSAgICAgICAgIHJldHVybiBGYWxzZQotIAotQEAgLTI5ODEsNiArMjk4NSwx MCBAQCBkZWYgZ2V0X21vZGlmaWVkX3RpbWUoc2VsZikgLT4gT3B0aW9uYWxbZGF0ZXRpbWUuZGF0 ZXRpbWVdOgotICAgICAgICAgb2JqZWN0IG9yIE5vbmUuCi0gCi0gICAgICAgICAuLiB2ZXJzaW9u YWRkZWQ6OiAzLjEKLSsKLSsgICAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogNi40Ci0rICAgICAg ICAgICBOb3cgcmV0dXJucyBhbiBhd2FyZSBkYXRldGltZSBvYmplY3QgaW5zdGVhZCBvZiBhIG5h aXZlIG9uZS4KLSsgICAgICAgICAgIFN1YmNsYXNzZXMgdGhhdCBvdmVycmlkZSB0aGlzIG1ldGhv ZCBtYXkgcmV0dXJuIGVpdGhlciBraW5kLgotICAgICAgICAgIiIiCi0gICAgICAgICBzdGF0X3Jl c3VsdCA9IHNlbGYuX3N0YXQoKQotICAgICAgICAgIyBOT1RFOiBIaXN0b3JpY2FsbHksIHRoaXMg dXNlZCBzdGF0X3Jlc3VsdFtzdGF0LlNUX01USU1FXSwKLUBAIC0yOTkxLDcgKzI5OTksOSBAQCBk ZWYgZ2V0X21vZGlmaWVkX3RpbWUoc2VsZikgLT4gT3B0aW9uYWxbZGF0ZXRpbWUuZGF0ZXRpbWVd OgotICAgICAgICAgIyBjb25zaXN0ZW5jeSB3aXRoIHRoZSBwYXN0IChhbmQgYmVjYXVzZSB3ZSBo YXZlIGEgdW5pdCB0ZXN0Ci0gICAgICAgICAjIHRoYXQgcmVsaWVzIG9uIHRoaXMpLCB3ZSB0cnVu Y2F0ZSB0aGUgZmxvYXQgaGVyZSwgYWx0aG91Z2gKLSAgICAgICAgICMgSSdtIG5vdCBzdXJlIHRo YXQncyB0aGUgcmlnaHQgdGhpbmcgdG8gZG8uCi0tICAgICAgICBtb2RpZmllZCA9IGRhdGV0aW1l LmRhdGV0aW1lLnV0Y2Zyb210aW1lc3RhbXAoaW50KHN0YXRfcmVzdWx0LnN0X210aW1lKSkKLSsg ICAgICAgIG1vZGlmaWVkID0gZGF0ZXRpbWUuZGF0ZXRpbWUuZnJvbXRpbWVzdGFtcCgKLSsgICAg ICAgICAgICBpbnQoc3RhdF9yZXN1bHQuc3RfbXRpbWUpLCBkYXRldGltZS50aW1lem9uZS51dGMK LSsgICAgICAgICkKLSAgICAgICAgIHJldHVybiBtb2RpZmllZAotIAotICAgICBkZWYgZ2V0X2Nv bnRlbnRfdHlwZShzZWxmKSAtPiBzdHI6CmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtdG9y bmFkby9wYXRjaGVzLzMzMzUtdXRjbm93LWRlcHJlY2F0aW9uLnBhdGNoIGIvc3JjcGtncy9weXRo b24zLXRvcm5hZG8vcGF0Y2hlcy8zMzM1LXV0Y25vdy1kZXByZWNhdGlvbi5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjNjMjEwZDEyZjY4OS4uMDAwMDAwMDAwMDAwMAotLS0g YS9zcmNwa2dzL3B5dGhvbjMtdG9ybmFkby9wYXRjaGVzLzMzMzUtdXRjbm93LWRlcHJlY2F0aW9u LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsODEgKzAsMCBAQAotVGFrZW4gZnJvbSBodHRwczov L2dpdGh1Yi5jb20vdG9ybmFkb3dlYi90b3JuYWRvL3B1bGwvMzMzNQotCi1Gcm9tIDBiZmNhM2Yy ZDcyYTBjNmU1ZDNiYTE3Y2FhYzg4YTc5ZTdiNGUwZGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx Ci1Gcm9tOiBUaG9tYXMgR3JhaW5nZXIgPHRhZ3JhaW5AZ21haWwuY29tPgotRGF0ZTogVHVlLCAz IE9jdCAyMDIzIDE1OjA4OjA4ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIHJlbW92ZSBjYWxscyB0 byB1dGNub3cgYW5kIHV0Y2Zyb210aW1lc3RhbXAKLQotLS0tCi0gZGVtb3MvYmxvZy90ZW1wbGF0 ZXMvZmVlZC54bWwgfCAgMiArLQotIGRlbW9zL3Mzc2VydmVyL3Mzc2VydmVyLnB5ICAgIHwgMTYg KysrKysrKysrKystLS0tLQotIHRvcm5hZG8vd2ViLnB5ICAgICAgICAgICAgICAgIHwgIDMgKyst Ci0gMyBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQotCi1k aWZmIC0tZ2l0IGEvZGVtb3MvYmxvZy90ZW1wbGF0ZXMvZmVlZC54bWwgYi9kZW1vcy9ibG9nL3Rl bXBsYXRlcy9mZWVkLnhtbAotaW5kZXggYTk4ODI2YzhkMy4uNGE0YTI1MmY2MCAxMDA2NDQKLS0t LSBhL2RlbW9zL2Jsb2cvdGVtcGxhdGVzL2ZlZWQueG1sCi0rKysgYi9kZW1vcy9ibG9nL3RlbXBs YXRlcy9mZWVkLnhtbAotQEAgLTUsNyArNSw3IEBACi0gICB7JSBpZiBsZW4oZW50cmllcykgPiAw ICV9Ci0gICAgIDx1cGRhdGVkPnt7IG1heChlLnVwZGF0ZWQgZm9yIGUgaW4gZW50cmllcykuc3Ry ZnRpbWUoZGF0ZV9mb3JtYXQpIH19PC91cGRhdGVkPgotICAgeyUgZWxzZSAlfQotLSAgICA8dXBk YXRlZD57eyBkYXRldGltZS5kYXRldGltZS51dGNub3coKS5zdHJmdGltZShkYXRlX2Zvcm1hdCkg fX08L3VwZGF0ZWQ+Ci0rICAgIDx1cGRhdGVkPnt7IGRhdGV0aW1lLmRhdGV0aW1lLm5vdyhkYXRl dGltZS50aW1lem9uZS51dGMpLnJlcGxhY2UodHppbmZvPU5vbmUpLnN0cmZ0aW1lKGRhdGVfZm9y bWF0KSB9fTwvdXBkYXRlZD4KLSAgIHslIGVuZCAlfQotICAgPGlkPmh0dHA6Ly97eyByZXF1ZXN0 Lmhvc3QgfX0vPC9pZD4KLSAgIDxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmPSJodHRwOi8ve3sg cmVxdWVzdC5ob3N0IH19LyIgdGl0bGU9Int7IGhhbmRsZXIuc2V0dGluZ3NbImJsb2dfdGl0bGUi XSB9fSIgdHlwZT0idGV4dC9odG1sIi8+Ci1kaWZmIC0tZ2l0IGEvZGVtb3MvczNzZXJ2ZXIvczNz ZXJ2ZXIucHkgYi9kZW1vcy9zM3NlcnZlci9zM3NlcnZlci5weQotaW5kZXggNWM1ZTZhZjJiYS4u MTA0YTdjOGY4MSAxMDA2NDQKLS0tLSBhL2RlbW9zL3Mzc2VydmVyL3Mzc2VydmVyLnB5Ci0rKysg Yi9kZW1vcy9zM3NlcnZlci9zM3NlcnZlci5weQotQEAgLTEzOCw3ICsxMzgsOSBAQCBkZWYgZ2V0 KHNlbGYpOgotICAgICAgICAgICAgIGJ1Y2tldHMuYXBwZW5kKAotICAgICAgICAgICAgICAgICB7 Ci0gICAgICAgICAgICAgICAgICAgICAiTmFtZSI6IG5hbWUsCi0tICAgICAgICAgICAgICAgICAg ICAiQ3JlYXRpb25EYXRlIjogZGF0ZXRpbWUuZGF0ZXRpbWUudXRjZnJvbXRpbWVzdGFtcChpbmZv LnN0X2N0aW1lKSwKLSsgICAgICAgICAgICAgICAgICAgICJDcmVhdGlvbkRhdGUiOiBkYXRldGlt ZS5kYXRldGltZS5mcm9tdGltZXN0YW1wKAotKyAgICAgICAgICAgICAgICAgICAgICAgIGluZm8u c3RfY3RpbWUsIGRhdGV0aW1lLnRpbWV6b25lLnV0YwotKyAgICAgICAgICAgICAgICAgICAgKS5y ZXBsYWNlKHR6aW5mbz1Ob25lKSwKLSAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICkK LSAgICAgICAgIHNlbGYucmVuZGVyX3htbCh7Ikxpc3RBbGxNeUJ1Y2tldHNSZXN1bHQiOiB7IkJ1 Y2tldHMiOiB7IkJ1Y2tldCI6IGJ1Y2tldHN9fX0pCi1AQCAtMTgzLDkgKzE4NSwxMCBAQCBkZWYg Z2V0KHNlbGYsIGJ1Y2tldF9uYW1lKToKLSAgICAgICAgICAgICAgICAgaW5mbyA9IG9zLnN0YXQo b2JqZWN0X3BhdGgpCi0gICAgICAgICAgICAgICAgIGMudXBkYXRlKAotICAgICAgICAgICAgICAg ICAgICAgewotLSAgICAgICAgICAgICAgICAgICAgICAgICJMYXN0TW9kaWZpZWQiOiBkYXRldGlt ZS5kYXRldGltZS51dGNmcm9tdGltZXN0YW1wKAotLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpbmZvLnN0X210aW1lCi0tICAgICAgICAgICAgICAgICAgICAgICAgKSwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAiTGFzdE1vZGlmaWVkIjogZGF0ZXRpbWUuZGF0ZXRpbWUuZnJvbXRpbWVz dGFtcCgKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5mby5zdF9tdGltZSwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZGF0ZXRpbWUudGltZXpvbmUudXRjLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICkucmVwbGFjZSh0emluZm89Tm9uZSksCi0gICAgICAgICAgICAgICAg ICAgICAgICAgIlNpemUiOiBpbmZvLnN0X3NpemUsCi0gICAgICAgICAgICAgICAgICAgICB9Ci0g ICAgICAgICAgICAgICAgICkKLUBAIC0yMzEsNyArMjM0LDEwIEBAIGRlZiBnZXQoc2VsZiwgYnVj a2V0LCBvYmplY3RfbmFtZSk6Ci0gICAgICAgICBpbmZvID0gb3Muc3RhdChwYXRoKQotICAgICAg ICAgc2VsZi5zZXRfaGVhZGVyKCJDb250ZW50LVR5cGUiLCAiYXBwbGljYXRpb24vdW5rbm93biIp Ci0gICAgICAgICBzZWxmLnNldF9oZWFkZXIoCi0tICAgICAgICAgICAgIkxhc3QtTW9kaWZpZWQi LCBkYXRldGltZS5kYXRldGltZS51dGNmcm9tdGltZXN0YW1wKGluZm8uc3RfbXRpbWUpCi0rICAg ICAgICAgICAgIkxhc3QtTW9kaWZpZWQiLAotKyAgICAgICAgICAgIGRhdGV0aW1lLmRhdGV0aW1l LmZyb210aW1lc3RhbXAoCi0rICAgICAgICAgICAgICAgIGluZm8uc3RfbXRpbWUsIGRhdGV0aW1l LnRpbWV6b25lLnV0YwotKyAgICAgICAgICAgICkucmVwbGFjZSh0emluZm89Tm9uZSksCi0gICAg ICAgICApCi0gICAgICAgICB3aXRoIG9wZW4ocGF0aCwgInJiIikgYXMgb2JqZWN0X2ZpbGU6Ci0g ICAgICAgICAgICAgc2VsZi5maW5pc2gob2JqZWN0X2ZpbGUucmVhZCgpKQotZGlmZiAtLWdpdCBh L3Rvcm5hZG8vd2ViLnB5IGIvdG9ybmFkby93ZWIucHkKLWluZGV4IDMzM2Y3MzY4MDguLjQ0MTZl MjAxM2UgMTAwNjQ0Ci0tLS0gYS90b3JuYWRvL3dlYi5weQotKysrIGIvdG9ybmFkby93ZWIucHkK LUBAIC0yNzk3LDcgKzI3OTcsOCBAQCBkZWYgc2V0X2hlYWRlcnMoc2VsZikgLT4gTm9uZToKLSAg ICAgICAgIGlmIGNhY2hlX3RpbWUgPiAwOgotICAgICAgICAgICAgIHNlbGYuc2V0X2hlYWRlcigK LSAgICAgICAgICAgICAgICAgIkV4cGlyZXMiLAotLSAgICAgICAgICAgICAgICBkYXRldGltZS5k YXRldGltZS51dGNub3coKSArIGRhdGV0aW1lLnRpbWVkZWx0YShzZWNvbmRzPWNhY2hlX3RpbWUp LAotKyAgICAgICAgICAgICAgICBkYXRldGltZS5kYXRldGltZS5ub3coZGF0ZXRpbWUudGltZXpv bmUudXRjKS5yZXBsYWNlKHR6aW5mbz1Ob25lKQotKyAgICAgICAgICAgICAgICArIGRhdGV0aW1l LnRpbWVkZWx0YShzZWNvbmRzPWNhY2hlX3RpbWUpLAotICAgICAgICAgICAgICkKLSAgICAgICAg ICAgICBzZWxmLnNldF9oZWFkZXIoIkNhY2hlLUNvbnRyb2wiLCAibWF4LWFnZT0iICsgc3RyKGNh Y2hlX3RpbWUpKQotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLXRvcm5hZG8vdGVtcGxh dGUgYi9zcmNwa2dzL3B5dGhvbjMtdG9ybmFkby90ZW1wbGF0ZQppbmRleCA2NWJjMGU1NWFjODNl Li5kY2IzY2UwNmQ3ZGJjIDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbjMtdG9ybmFkby90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbjMtdG9ybmFkby90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3B5dGhvbjMtdG9ybmFkbycKIHBrZ25hbWU9cHl0aG9u My10b3JuYWRvCi12ZXJzaW9uPTYuMy4zCit2ZXJzaW9uPTYuNAogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9cHl0aG9uMy1wZXA1MTcKIGhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xz IHB5dGhvbjMtd2hlZWwiCkBAIC04LDEyICs4LDEyIEBAIG1ha2VkZXBlbmRzPSJweXRob24zLWRl dmVsIgogZGVwZW5kcz0icHl0aG9uMyBjYS1jZXJ0aWZpY2F0ZXMiCiBjaGVja2RlcGVuZHM9InB5 dGhvbjMtY3VybCBweXRob24zLXB5Y2FyZXMgcHl0aG9uMy1Ud2lzdGVkIgogc2hvcnRfZGVzYz0i UHl0aG9uMyB3ZWIgZnJhbWV3b3JrIGFuZCBhc3luY2hyb25vdXMgbmV0d29ya2luZyBsaWJyYXJ5 IgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKK21haW50YWlu ZXI9IkdvbnphbG8gVG9ybmFyw61hIDx0b3JuYXJpYUBjbWF0LmVkdS51eT4iCiBsaWNlbnNlPSJB cGFjaGUtMi4wIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cudG9ybmFkb3dlYi5vcmcvIgogY2hhbmdl bG9nPSJodHRwczovL3d3dy50b3JuYWRvd2ViLm9yZy9lbi9zdGFibGUvcmVsZWFzZXMuaHRtbCIK IGRpc3RmaWxlcz0iJHtQWVBJX1NJVEV9L3QvdG9ybmFkby90b3JuYWRvLSR7dmVyc2lvbn0udGFy Lmd6IgotY2hlY2tzdW09ZTdkOGRiNDFjMDE4MWM4MGQ3NmM5ODJhYWNjNDQyYzA3ODNhMmM1NGQ2 NDAwZmUwMjg5NTQyMDFhMmUwMzJmZQorY2hlY2tzdW09NzIyOTFmYTZlNmJjODRlNjI2NTg5ZjFj MjlkOTBhNWE2ZDU5M2VmNWFlNjgwNTJlZTJlZjAwMGRmZDI3M2RlZQogCiBkb19jaGVjaygpIHsK IAkjIFRoZXJlIGlzIG9uZSBpbnN0YW5jZSBvZiB0ZXN0X2JpbmRfc291cmNlX2lwICh0aGUgb25l IGZvcgoKRnJvbSBhMDY1MDEzNjBiODgyZWUwM2E0Y2UyMjZjODA5OTlhZTI5ZGVhNWZhIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1B RGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+CkRhdGU6IFNhdCwgMiBEZWMgMjAyMyAxMToyNjox MyAtMDMwMApTdWJqZWN0OiBbUEFUQ0ggNy83XSBweXRob24zLWlweXRob25faXB5a2VybmVsOiB1 cGRhdGUgdG8gNi4yNy4xLgoKLS0tCiBzcmNwa2dzL3B5dGhvbjMtaXB5dGhvbl9pcHlrZXJuZWwv dGVtcGxhdGUgfCA5ICsrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtaXB5dGhvbl9pcHlr ZXJuZWwvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtaXB5dGhvbl9pcHlrZXJuZWwvdGVtcGxh dGUKaW5kZXggMzQwMDgyYjk1MThmZS4uZGI0ZjY4YzdmZmMxMiAxMDA2NDQKLS0tIGEvc3JjcGtn cy9weXRob24zLWlweXRob25faXB5a2VybmVsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9u My1pcHl0aG9uX2lweWtlcm5lbC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ3B5dGhvbjMtaXB5dGhvbl9pcHlrZXJuZWwnCiBwa2duYW1lPXB5dGhvbjMtaXB5 dGhvbl9pcHlrZXJuZWwKLXZlcnNpb249Ni4yNy4wCit2ZXJzaW9uPTYuMjcuMQogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9cHl0aG9uMy1wZXA1MTcKICMgdGhlc2UgdGVzdHMgZmFpbCBpbiA2LjI2 LjAKQEAgLTIwLDcgKzIwLDcgQEAgbGljZW5zZT0iQlNELTMtQ2xhdXNlIgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0aHViLmNvbS9pcHl0aG9uL2lweWtlcm5lbCIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9y YXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2lweXRob24vaXB5a2VybmVsL21haW4vQ0hBTkdFTE9H Lm1kIgogZGlzdGZpbGVzPSIke1BZUElfU0lURX0vaS9pcHlrZXJuZWwvaXB5a2VybmVsLSR7dmVy c2lvbn0udGFyLmd6IgotY2hlY2tzdW09N2Y0OTg2ZjYwNjU4MWJlNzNiZmIzMmRjN2ExYWM5ZmEw ZTgwNGM5YmU1MGRkZjFjN2ExMTk0MTNlOTgyNjkzZgorY2hlY2tzdW09N2Q1ZDU5NGI2NjkwNjU0 YjRkMjk5ZWRiYTVlODcyZGMxN2JiNzM5NmE4ZDA2MDljOTdjYjdiOGExYzYwNWRlNgogCiBpZiBb ICIkWEJQU19DSEVDS19QS0dTIiA9IGZ1bGwgXTsgdGhlbgogCSMgdGhpcyB3b3VsZCBjYXVzZSBh IGJ1aWxkLXRpbWUgY2lyY3VsYXIgZGVwZW5kZW5jeQpAQCAtMzMsNiArMzMsMTEgQEAgZWxzZQog CSAiCiBmaQogCitpZiBbICIkWEJQU19UQVJHRVRfTElCQyIgPSAibXVzbCIgXTsgdGhlbgorCSMg QWxzbyBmYWlscyAib24gV2luZG93cyBhbmQgTWFjT1MgUHl0aG9uIDMuOCsiIHNvIGp1c3QgZGlz YWJsZSBpdAorCW1ha2VfY2hlY2tfYXJncys9IiAtLWRlc2VsZWN0IHRlc3RzL3Rlc3Rfa2VybmVs LnB5Ojp0ZXN0X3N1YnByb2Nlc3NfcHJpbnQiCitmaQorCiBwb3N0X2luc3RhbGwoKSB7CiAJdmxp Y2Vuc2UgTElDRU5TRQogfQo= --===============5671987051275448595==--