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 autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 21390 invoked from network); 24 Aug 2023 11:41:09 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 24 Aug 2023 11:41:09 -0000 Content-Type: multipart/mixed; boundary="===============1989239196012061271==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_sagemath=3A_update_to_10=2E1=2E?= To: ml@inbox.vuxu.org From: tornaria Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Thu, 24 Aug 2023 13:41:08 +0200 List-Id: Message-ID: <20230824114108.2YRjBsWCZkS6lQ-jj1CAOW3AoiiZqGwqo0HUkwINlhA@z> GitHub notification mails are now in MIME to allow UTF8. --===============1989239196012061271== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgdG9ybmFyaWEgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL3Rv cm5hcmlhL3ZvaWQtcGFja2FnZXMgc2FnZW1hdGgKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGlu dXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ1NzA4CgpzYWdlbWF0aDogdXBkYXRlIHRvIDEwLjEuCjwh LS0gVW5jb21tZW50IHJlbGV2YW50IHNlY3Rpb25zIGFuZCBkZWxldGUgb3B0aW9ucyB3aGljaCBh cmUgbm90IGFwcGxpY2FibGUgLS0+DQoNCiMjIyMgVGVzdGluZyB0aGUgY2hhbmdlcw0KLSBJIHRl c3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKmJyaWVmbHkqKg0KDQpJIHdpbGwgaW5zdGFs bCBhbmQgdGVzdCBhIGxpdHRsZSBiaXQuIEknbSBwdXNoaW5nIG5vdyB0byBnZXQgYW4gaWRlYSBp ZiBDSSB3b3JrcyBvay4NCg0KQ0M6IEBka3dvIA0KDQo8IS0tDQojIyMjIE5ldyBwYWNrYWdlDQot IFRoaXMgbmV3IHBhY2thZ2UgY29uZm9ybXMgdG8gdGhlIFtwYWNrYWdlIHJlcXVpcmVtZW50c10o aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9D T05UUklCVVRJTkcubWQjcGFja2FnZS1yZXF1aXJlbWVudHMpOiAqKllFUyoqfCoqTk8qKg0KLS0+ DQoNCjwhLS0gTm90ZTogSWYgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byB0YWtlIG1vcmUgdGhhbiAy IGhvdXJzLCBwbGVhc2UgYWRkIGNpIHNraXAgdGFnIGFzIGRlc2NyaWJlZCBpbg0KaHR0cHM6Ly9n aXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05UUklCVVRJ TkcubWQjY29udGludW91cy1pbnRlZ3JhdGlvbg0KYW5kIHRlc3QgYXQgbGVhc3Qgb25lIG5hdGl2 ZSBidWlsZCBhbmQsIGlmIHN1cHBvcnRlZCwgYXQgbGVhc3Qgb25lIGNyb3NzIGJ1aWxkLg0KSWdu b3JlIHRoaXMgc2VjdGlvbiBpZiB0aGlzIFBSIGlzIG5vdCBza2lwcGluZyBDSS4NCi0tPg0KPCEt LQ0KIyMjIyBMb2NhbCBidWlsZCB0ZXN0aW5nDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZv ciBteSBuYXRpdmUgYXJjaGl0ZWN0dXJlLCAoQVJDSC1MSUJDKQ0KLSBJIGJ1aWx0IHRoaXMgUFIg bG9jYWxseSBmb3IgdGhlc2UgYXJjaGl0ZWN0dXJlcyAoaWYgc3VwcG9ydGVkLiBtYXJrIGNyb3Nz YnVpbGRzKToNCiAgLSBhYXJjaDY0LW11c2wNCiAgLSBhcm12N2wNCiAgLSBhcm12NmwtbXVzbA0K LS0+DQoKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3Zv aWQtcGFja2FnZXMvcHVsbC80NTcwOC5wYXRjaCBpcyBhdHRhY2hlZA== --===============1989239196012061271== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-sagemath-45708.patch" RnJvbSA3YmFmYmRkYTk0NzViZTU2MGNmNmNmODZhNTRiNmQ2NWFmMjA5MWQ2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8 dG9ybmFyaWFAY21hdC5lZHUudXk+CkRhdGU6IFdlZCwgMjMgQXVnIDIwMjMgMDk6NDY6MDIgLTAz MDAKU3ViamVjdDogW1BBVENIIDEvMl0gZ2lhYzogZml4IGAjaW5jbHVkZSA8Z2lhYy9naWFjLmg+ YCBpbiBtdXNsCgpBcyByZXBvcnRlZCBpbiAjNDU3MDgsIGluY2x1ZGluZyA8Z2lhYy9naWFjLmg+ IGZhaWxzIGluIG11c2wgYmVjYXVzZSB0aGUKSEFWRV9UR0FNTUFGIG1hY3JvIGZyb20gYXV0b3Rv b2xzIGlzIG5vdCBhdmFpbGFibGUgYXQgdGhpcyB0aW1lLgoKSGVyZSB3ZSBpbmNsdWRlIGEgcGF0 Y2ggYWRhcHRlZCBmcm9tCmh0dHBzOi8vZ2l0aHViLmNvbS9nZW9nZWJyYS9naWFjL2NvbW1pdC82 MThhNWRlMzM0OWY4ZGVmNWJkYjkwOWZlYTQyZmI0NDdiNmFhZDRhCndoaWNoIGlzIHRoZSBzb2x1 dGlvbiB1cHN0cmVhbSB3aWxsIGluY2x1ZGUgaW4gbmV4dCByZWxlYXNlIG9mIGdpYWMuCgpXZSBu ZWVkIHRvIGZpeCB0aGlzIG5vdyBzbyB3ZSBjYW4gYnVpbGQgc2FnZW1hdGggaW4gbXVzbCEKLS0t CiBzcmNwa2dzL2dpYWMvcGF0Y2hlcy9maXgtZmdhbW1hLnBhdGNoIHwgNDAgKysrKysrKysrKysr KysrKysrKysrKysrKysrCiBzcmNwa2dzL2dpYWMvdGVtcGxhdGUgICAgICAgICAgICAgICAgIHwg IDYgKysrLQogMiBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0p CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9naWFjL3BhdGNoZXMvZml4LWZnYW1tYS5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ2lhYy9wYXRjaGVzL2ZpeC1mZ2FtbWEucGF0Y2ggYi9z cmNwa2dzL2dpYWMvcGF0Y2hlcy9maXgtZmdhbW1hLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwMDAuLjA1MTAxZTMxMGQxYmUKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL2dpYWMvcGF0Y2hlcy9maXgtZmdhbW1hLnBhdGNoCkBAIC0wLDAgKzEsNDAgQEAKK0Fk YXB0ZWQgZnJvbQoraHR0cHM6Ly9naXRodWIuY29tL2dlb2dlYnJhL2dpYWMvY29tbWl0LzYxOGE1 ZGUzMzQ5ZjhkZWY1YmRiOTA5ZmVhNDJmYjQ0N2I2YWFkNGEKKworLS0tIGEvc3JjL3VzdWFsLmNj CisrKysgYi9zcmMvdXN1YWwuY2MKK0BAIC04MSw2ICs4MSwxNiBAQCB1c2luZyBuYW1lc3BhY2Ug c3RkOworICNkZWZpbmUgc3ByaW50ZjI1NiBzcHJpbnRmCisgI2VuZGlmCisgCisrI2lmIGRlZmlu ZWQgSEFWRV9UR0FNTUFGIHx8IGRlZmluZWQgX19BUFBMRV9fIHx8IGRlZmluZWQgRU1DQyB8fCBk ZWZpbmVkIEVNQ0MyIHx8IGRlZmluZWQgTk9fQlNEIAorK2lubGluZSBmbG9hdCBmZ2FtbWEoZmxv YXQgZjEpeyByZXR1cm4gdGdhbW1hZihmMSk7IH0KKysjZWxzZQorKyNpZiBkZWZpbmVkKF9fTUlO R1dfSCkgfHwgZGVmaW5lZChWSVNVQUxDKSB8fCBkZWZpbmVkKEZYQ0cpLy8gRklYTUUgZ2FtbWEs IG5vdCB1c2VkCisraW5saW5lIGZsb2F0IGZnYW1tYShmbG9hdCBmMSl7IHJldHVybiBmMTsgfQor KyNlbHNlCisraW5saW5lIGZsb2F0IGZnYW1tYShmbG9hdCBmMSl7IHJldHVybiBnYW1tYWYoZjEp OyB9IC8vIG9yIHRnYW1tYWYoZjEpIG9uIHNvbWUgdmVyc2lvbnMgb2YgZW1zY3JpcHRlbgorKyNl bmRpZgorKyNlbmRpZgorKworICNpZm5kZWYgTk9fTkFNRVNQQUNFX0dJQUMKKyBuYW1lc3BhY2Ug Z2lhYyB7CisgI2VuZGlmIC8vIG5kZWYgTk9fTkFNRVNQQUNFX0dJQUMKKy0tLSBhL3NyYy9maXJz dC5oCisrKysgYi9zcmMvZmlyc3QuaAorQEAgLTU3OCwxNSArNTc4LDYgQEAgaW5saW5lIGZsb2F0 IGZmbG9vcihmbG9hdCBmMSl7CisgI2VuZGlmCisgfQorIGlubGluZSBmbG9hdCBmaW52KGZsb2F0 IGYxKXsgcmV0dXJuIDEvZjE7IH0KKy0jaWYgZGVmaW5lZCBIQVZFX1RHQU1NQUYgfHwgZGVmaW5l ZCBfX0FQUExFX18gfHwgZGVmaW5lZCBFTUNDIHx8IGRlZmluZWQgRU1DQzIgfHwgZGVmaW5lZCBO T19CU0QgCistaW5saW5lIGZsb2F0IGZnYW1tYShmbG9hdCBmMSl7IHJldHVybiB0Z2FtbWFmKGYx KTsgfQorLSNlbHNlCistI2lmIGRlZmluZWQoX19NSU5HV19IKSB8fCBkZWZpbmVkKFZJU1VBTEMp IHx8IGRlZmluZWQoRlhDRykvLyBGSVhNRSBnYW1tYSwgbm90IHVzZWQKKy1pbmxpbmUgZmxvYXQg ZmdhbW1hKGZsb2F0IGYxKXsgcmV0dXJuIGYxOyB9CistI2Vsc2UKKy1pbmxpbmUgZmxvYXQgZmdh bW1hKGZsb2F0IGYxKXsgcmV0dXJuIGdhbW1hZihmMSk7IH0gLy8gb3IgdGdhbW1hZihmMSkgb24g c29tZSB2ZXJzaW9ucyBvZiBlbXNjcmlwdGVuCistI2VuZGlmCistI2VuZGlmCisgI2lmZGVmIEZY Q0cKKyBpbmxpbmUgZmxvYXQgYXRhbjJmKGZsb2F0IGYxLGZsb2F0IGYyLGludCByYWQpeyBpZiAo cmFkKSByZXR1cm4gc3RkOjphdGFuMihmMSxmMik7IGVsc2UgcmV0dXJuIHN0ZDo6YXRhbjIoZjEs ZjIpKjE4MC8zLjE0MTU5MjY1MzU4OTc5MzIzODQ2O30KKyAjZWxzZQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9naWFjL3RlbXBsYXRlIGIvc3JjcGtncy9naWFjL3RlbXBsYXRlCmluZGV4IDZiYTc1ZTYz NzJmZGMuLjJiZjI3MDQ1OGU1M2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ2lhYy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dpYWMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnaWFjJwogcGtnbmFtZT1naWFjCiB2ZXJzaW9uPTEuOS4wLjU3Ci1yZXZpc2lvbj0x CityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0i LS1kaXNhYmxlLW1pY3JvcHkgLS1kaXNhYmxlLXF1aWNranMiCiBob3N0bWFrZWRlcGVuZHM9ImF1 dG9tYWtlIGdldHRleHQtZGV2ZWwgbGlidG9vbCIKQEAgLTU2LDYgKzU2LDEwIEBAIHByZV9jb25m aWd1cmUoKSB7CiBwb3N0X2luc3RhbGwoKSB7CiAJIyByZW1vdmUgZHVwbGljYXRlcwogCXJtIC1y ICR7REVTVERJUn0vdXNyL3NoYXJlL2RvYworCisJZWNobyAiZ2lhYzogY2hlY2sgdGhhdCAnI2lu Y2x1ZGUgPGdpYWMvZ2lhYy5oPicgd29ya3MgKHNlZSAjNDU3MDgpIgorCWVjaG8gJyNpbmNsdWRl IDxnaWFjL2dpYWMuaD4nIHwKKwkJJHtDQ30gLWMgLWlzeXN0ZW0gIiR7REVTVERJUn0vdXNyL2lu Y2x1ZGUiIC14YysrIC0gLW8gL2Rldi9udWxsCiB9CiAKIGxpYmdpYWNfcGFja2FnZSgpIHsKCkZy b20gMjY4NzFhYTEyZjA4NDdiZGUwZmZmMjA1ZTYwY2NhZTA1MTQ5YTdjMCBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xP0dvbnphbG89MjBUb3JuYXI9QzM9QURhPz0gPHRv cm5hcmlhQGNtYXQuZWR1LnV5PgpEYXRlOiBTdW4sIDIwIEF1ZyAyMDIzIDIxOjM5OjAyIC0wMzAw ClN1YmplY3Q6IFtQQVRDSCAyLzJdIHNhZ2VtYXRoOiB1cGRhdGUgdG8gMTAuMS4KCi0tLQogLi4u L3NhZ2VtYXRoL3BhdGNoZXMvMzU1ODQtbmV0d29ya3hfMy4xLnBhdGNoIHwgIDkyIC0tCiAuLi4v c2FnZW1hdGgvcGF0Y2hlcy8zNTYxMi1saW5ib3hfMS43LjAucGF0Y2ggfCAgNjQgLS0KIC4uLi9w YXRjaGVzLzM1NjE5LW1heGltYV81LjQ2LjAucGF0Y2ggICAgICAgICB8IDU4NiAtLS0tLS0tLS0t LS0KIC4uLi9zYWdlbWF0aC9wYXRjaGVzLzM1NjM1LXN5bXB5XzEuMTIucGF0Y2ggICB8ICA1NCAt LQogLi4uL3BhdGNoZXMvMzU3MDctbWF4aW1hXzUuNDcuMC5wYXRjaCAgICAgICAgIHwgODc5IC0t LS0tLS0tLS0tLS0tLS0tLQogLi4uL3BhdGNoZXMvMzU4MjUtc2luZ3VsYXJfNC4zLjJwMi5wYXRj aCAgICAgIHwgIDI0IC0KIC4uLi9zYWdlbWF0aC9wYXRjaGVzLzM1ODI2LW51bXB5XzEuMjUuMC5w YXRjaCB8ICA4MyAtLQogLi4uL3BhdGNoZXMvMzU4MzEtc2V0dXB0b29sc182OC4wLjAucGF0Y2gg ICAgIHwgIDEzIC0KIC4uLi9wYXRjaGVzLzM1OTM0LXNpbmd1bGFyXzQuMy4ycDcucGF0Y2ggICAg ICB8IDIyMSArKysrKwogLi4uL3NhZ2VtYXRoL3BhdGNoZXMvMzYwMDYtZ21wXzYuMy4wLnBhdGNo ICAgIHwgIDM4ICsKIC4uLi9wYXRjaGVzLzM2MDQ2LWZpeF9tZW1vcnlfbGVhay5wYXRjaCAgICAg ICB8IDc0MCArKysrKysrKysrKysrKysKIHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy9nZXRfcGF0 Y2hlcyAgICAgICAgICB8ICAyMiArLQogc3JjcGtncy9zYWdlbWF0aC90ZW1wbGF0ZSAgICAgICAg ICAgICAgICAgICAgIHwgIDEzICstCiAxMyBmaWxlcyBjaGFuZ2VkLCAxMDExIGluc2VydGlvbnMo KyksIDE4MTggZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9zYWdlbWF0 aC9wYXRjaGVzLzM1NTg0LW5ldHdvcmt4XzMuMS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTYxMi1saW5ib3hfMS43LjAucGF0Y2gKIGRlbGV0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzU2MTktbWF4aW1hXzUuNDYuMC5w YXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTYzNS1z eW1weV8xLjEyLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9zYWdlbWF0aC9wYXRj aGVzLzM1NzA3LW1heGltYV81LjQ3LjAucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3NhZ2VtYXRoL3BhdGNoZXMvMzU4MjUtc2luZ3VsYXJfNC4zLjJwMi5wYXRjaAogZGVsZXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTgyNi1udW1weV8xLjI1LjAucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzU4MzEtc2V0 dXB0b29sc182OC4wLjAucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRo L3BhdGNoZXMvMzU5MzQtc2luZ3VsYXJfNC4zLjJwNy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNjAwNi1nbXBfNi4zLjAucGF0Y2gKIGNyZWF0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzYwNDYtZml4X21lbW9yeV9sZWFr LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1NTg0LW5ldHdv cmt4XzMuMS5wYXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTU4NC1uZXR3b3JreF8z LjEucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkzMzEyNTg5ODZkM2QuLjAw MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1NTg0LW5ldHdvcmt4 XzMuMS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDkyICswLDAgQEAKLWRpZmYgLS1naXQgYS9z cmMvc2FnZS9ncmFwaHMvZ3JhcGgucHkgYi9zcmMvc2FnZS9ncmFwaHMvZ3JhcGgucHkKLWluZGV4 IGMyZTQyYmNiZDM4Li4wZDEzZjA3MWRjNCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2dyYXBocy9n cmFwaC5weQotKysrIGIvc3JjL3NhZ2UvZ3JhcGhzL2dyYXBoLnB5Ci1AQCAtNjc4NiwxMyArNjc4 NiwyNiBAQCBkZWYgY2xpcXVlc19udW1iZXJfb2Yoc2VsZiwgdmVydGljZXM9Tm9uZSwgY2xpcXVl cz1Ob25lKToKLSAgICAgICAgICAgICB7KDAsIDApOiAyLCAoMCwgMSk6IDMsICgwLCAyKTogMiwg KDEsIDApOiAyLCAoMSwgMSk6IDMsICgxLCAyKTogMn0KLSAgICAgICAgICAgICBzYWdlOiBGLmNs aXF1ZXNfbnVtYmVyX29mKHZlcnRpY2VzPVsoMCwgMSksICgxLCAyKV0pCi0gICAgICAgICAgICAg eygwLCAxKTogMywgKDEsIDIpOiAyfQotKyAgICAgICAgICAgIHNhZ2U6IEYuY2xpcXVlc19udW1i ZXJfb2YodmVydGljZXM9KDAsIDEpKQotKyAgICAgICAgICAgIDMKLSAgICAgICAgICAgICBzYWdl OiBHID0gR3JhcGgoezA6WzEsMiwzXSwgMTpbMl0sIDM6WzAsMV19KQotICAgICAgICAgICAgIHNh Z2U6IEcuc2hvdyhmaWdzaXplPVsyLDJdKQotICAgICAgICAgICAgIHNhZ2U6IEcuY2xpcXVlc19u dW1iZXJfb2YoKQotICAgICAgICAgICAgIHswOiAyLCAxOiAyLCAyOiAxLCAzOiAxfQotICAgICAg ICAgIiIiCi0tICAgICAgICBpbXBvcnQgbmV0d29ya3gKLS0gICAgICAgIHJldHVybiBuZXR3b3Jr eC5udW1iZXJfb2ZfY2xpcXVlcyhzZWxmLm5ldHdvcmt4X2dyYXBoKCksIHZlcnRpY2VzLCBjbGlx dWVzKQotKyAgICAgICAgaWYgY2xpcXVlcyBpcyBOb25lOgotKyAgICAgICAgICAgIGNsaXF1ZXMg PSBzZWxmLmNsaXF1ZXNfbWF4aW1hbCgpCi0rCi0rICAgICAgICBpZiB2ZXJ0aWNlcyBpbiBzZWxm OiAgIyBzaW5nbGUgdmVydGV4Ci0rICAgICAgICAgICAgcmV0dXJuIHN1bSgxIGZvciBjIGluIGNs aXF1ZXMgaWYgdmVydGljZXMgaW4gYykKLSsKLSsgICAgICAgIGZyb20gY29sbGVjdGlvbnMgaW1w b3J0IENvdW50ZXIKLSsgICAgICAgIGNvdW50ID0gQ291bnRlcigpCi0rCi0rICAgICAgICBmb3Ig YyBpbiBjbGlxdWVzOgotKyAgICAgICAgICAgIGNvdW50LnVwZGF0ZShjKQotKwotKyAgICAgICAg cmV0dXJuIHt2IDogY291bnRbdl0gZm9yIHYgaW4gdmVydGljZXMgb3Igc2VsZn0KLSAKLSAgICAg QGRvY19pbmRleCgiQ2xpcXVlLXJlbGF0ZWQgbWV0aG9kcyIpCi0gICAgIGRlZiBjbGlxdWVzX2dl dF9tYXhfY2xpcXVlX2dyYXBoKHNlbGYpOgotQEAgLTc0OTMsMTcgKzc1MDYsMzIgQEAgZGVmIGNs aXF1ZXNfY29udGFpbmluZ192ZXJ0ZXgoc2VsZiwgdmVydGljZXM9Tm9uZSwgY2xpcXVlcz1Ob25l KToKLSAKLSAgICAgICAgICAgICBzYWdlOiBDID0gR3JhcGgoJ0RKeycpCi0gICAgICAgICAgICAg c2FnZTogQy5jbGlxdWVzX2NvbnRhaW5pbmdfdmVydGV4KCkKLS0gICAgICAgICAgICB7MDogW1s0 LCAwXV0sIDE6IFtbNCwgMSwgMiwgM11dLCAyOiBbWzQsIDEsIDIsIDNdXSwgMzogW1s0LCAxLCAy LCAzXV0sIDQ6IFtbNCwgMF0sIFs0LCAxLCAyLCAzXV19Ci0rICAgICAgICAgICAgezA6IFtbMCwg NF1dLAotKyAgICAgICAgICAgICAxOiBbWzEsIDIsIDMsIDRdXSwKLSsgICAgICAgICAgICAgMjog W1sxLCAyLCAzLCA0XV0sCi0rICAgICAgICAgICAgIDM6IFtbMSwgMiwgMywgNF1dLAotKyAgICAg ICAgICAgICA0OiBbWzAsIDRdLCBbMSwgMiwgMywgNF1dfQotKyAgICAgICAgICAgIHNhZ2U6IEMu Y2xpcXVlc19jb250YWluaW5nX3ZlcnRleCg0KQotKyAgICAgICAgICAgIFtbMCwgNF0sIFsxLCAy LCAzLCA0XV0KLSsgICAgICAgICAgICBzYWdlOiBDLmNsaXF1ZXNfY29udGFpbmluZ192ZXJ0ZXgo WzAsIDFdKQotKyAgICAgICAgICAgIHswOiBbWzAsIDRdXSwgMTogW1sxLCAyLCAzLCA0XV19Ci0g ICAgICAgICAgICAgc2FnZTogRSA9IEMuY2xpcXVlc19tYXhpbWFsKCkKLSAgICAgICAgICAgICBz YWdlOiBFCi0gICAgICAgICAgICAgW1swLCA0XSwgWzEsIDIsIDMsIDRdXQotICAgICAgICAgICAg IHNhZ2U6IEMuY2xpcXVlc19jb250YWluaW5nX3ZlcnRleChjbGlxdWVzPUUpCi0tICAgICAgICAg ICAgezA6IFtbMCwgNF1dLCAxOiBbWzEsIDIsIDMsIDRdXSwgMjogW1sxLCAyLCAzLCA0XV0sIDM6 IFtbMSwgMiwgMywgNF1dLCA0OiBbWzAsIDRdLCBbMSwgMiwgMywgNF1dfQotKyAgICAgICAgICAg IHswOiBbWzAsIDRdXSwKLSsgICAgICAgICAgICAgMTogW1sxLCAyLCAzLCA0XV0sCi0rICAgICAg ICAgICAgIDI6IFtbMSwgMiwgMywgNF1dLAotKyAgICAgICAgICAgICAzOiBbWzEsIDIsIDMsIDRd XSwKLSsgICAgICAgICAgICAgNDogW1swLCA0XSwgWzEsIDIsIDMsIDRdXX0KLSAKLSAgICAgICAg ICAgICBzYWdlOiBHID0gR3JhcGgoezA6WzEsMiwzXSwgMTpbMl0sIDM6WzAsMV19KQotICAgICAg ICAgICAgIHNhZ2U6IEcuc2hvdyhmaWdzaXplPVsyLDJdKQotICAgICAgICAgICAgIHNhZ2U6IEcu Y2xpcXVlc19jb250YWluaW5nX3ZlcnRleCgpCi0tICAgICAgICAgICAgezA6IFtbMCwgMSwgMl0s IFswLCAxLCAzXV0sIDE6IFtbMCwgMSwgMl0sIFswLCAxLCAzXV0sIDI6IFtbMCwgMSwgMl1dLCAz OiBbWzAsIDEsIDNdXX0KLSsgICAgICAgICAgICB7MDogW1swLCAxLCAyXSwgWzAsIDEsIDNdXSwK LSsgICAgICAgICAgICAgMTogW1swLCAxLCAyXSwgWzAsIDEsIDNdXSwKLSsgICAgICAgICAgICAg MjogW1swLCAxLCAyXV0sCi0rICAgICAgICAgICAgIDM6IFtbMCwgMSwgM11dfQotIAotICAgICAg ICAgU2luY2UgZWFjaCBjbGlxdWUgb2YgYSAyIGRpbWVuc2lvbmFsIGdyaWQgY29ycmVzcG9uZHMg dG8gYW4gZWRnZSwgdGhlCi0gICAgICAgICBudW1iZXIgb2YgY2xpcXVlcyBpbiB3aGljaCBhIHZl cnRleCBpcyBpbnZvbHZlZCBlcXVhbHMgaXRzIGRlZ3JlZTo6Ci1AQCAtNzUxOCw4ICs3NTQ2LDIw IEBAIGRlZiBjbGlxdWVzX2NvbnRhaW5pbmdfdmVydGV4KHNlbGYsIHZlcnRpY2VzPU5vbmUsIGNs aXF1ZXM9Tm9uZSk6Ci0gICAgICAgICAgICAgc2FnZTogc29ydGVkKHNvcnRlZCh4IGZvciB4IGlu IEwpIGZvciBMIGluIGRbKDAsIDEpXSkKLSAgICAgICAgICAgICBbWygwLCAwKSwgKDAsIDEpXSwg WygwLCAxKSwgKDAsIDIpXSwgWygwLCAxKSwgKDEsIDEpXV0KLSAgICAgICAgICIiIgotLSAgICAg ICAgaW1wb3J0IG5ldHdvcmt4Ci0tICAgICAgICByZXR1cm4gbmV0d29ya3guY2xpcXVlc19jb250 YWluaW5nX25vZGUoc2VsZi5uZXR3b3JreF9ncmFwaCgpLCB2ZXJ0aWNlcywgY2xpcXVlcykKLSsg ICAgICAgIGlmIGNsaXF1ZXMgaXMgTm9uZToKLSsgICAgICAgICAgICBjbGlxdWVzID0gc2VsZi5j bGlxdWVzX21heGltYWwoKQotKwotKyAgICAgICAgaWYgdmVydGljZXMgaW4gc2VsZjogICMgc2lu Z2xlIHZlcnRleAotKyAgICAgICAgICAgIHJldHVybiBbYyBmb3IgYyBpbiBjbGlxdWVzIGlmIHZl cnRpY2VzIGluIGNdCi0rCi0rICAgICAgICBmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBkZWZhdWx0 ZGljdAotKyAgICAgICAgZCA9IGRlZmF1bHRkaWN0KGxpc3QpCi0rCi0rICAgICAgICBmb3IgYyBp biBjbGlxdWVzOgotKyAgICAgICAgICAgIGZvciB2IGluIGM6Ci0rICAgICAgICAgICAgICAgIGRb dl0uYXBwZW5kKGMpCi0rCi0rICAgICAgICByZXR1cm4ge3YgOiBkW3ZdIGZvciB2IGluIHZlcnRp Y2VzIG9yIHNlbGZ9Ci0gCi0gICAgIEBkb2NfaW5kZXgoIkNsaXF1ZS1yZWxhdGVkIG1ldGhvZHMi KQotICAgICBkZWYgY2xpcXVlX2NvbXBsZXgoc2VsZik6CmRpZmYgLS1naXQgYS9zcmNwa2dzL3Nh Z2VtYXRoL3BhdGNoZXMvMzU2MTItbGluYm94XzEuNy4wLnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0 aC9wYXRjaGVzLzM1NjEyLWxpbmJveF8xLjcuMC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggNThkZGRmMzRhNjlkOC4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3NhZ2Vt YXRoL3BhdGNoZXMvMzU2MTItbGluYm94XzEuNy4wLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEs NjQgKzAsMCBAQAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2xpYnMvbGluYm94L2NvbnZlcnNpb24u cHhkIGIvc3JjL3NhZ2UvbGlicy9saW5ib3gvY29udmVyc2lvbi5weGQKLWluZGV4IDc3OTRjOWVk YzM5Li4xNzUzMjc3YjFmMSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2xpYnMvbGluYm94L2NvbnZl cnNpb24ucHhkCi0rKysgYi9zcmMvc2FnZS9saWJzL2xpbmJveC9jb252ZXJzaW9uLnB4ZAotQEAg LTE3Nyw5ICsxNzcsOCBAQCBjZGVmIGlubGluZSBWZWN0b3JfaW50ZWdlcl9kZW5zZSBuZXdfc2Fn ZV92ZWN0b3JfaW50ZWdlcl9kZW5zZShQLCBEZW5zZVZlY3Rvcl9pbgotICAgICAtIHYgLS0gbGlu Ym94IHZlY3RvcgotICAgICAiIiIKLSAgICAgY2RlZiBWZWN0b3JfaW50ZWdlcl9kZW5zZSByZXMg PSBQKCkKLS0gICAgY2RlZiBjcHB2ZWN0b3JbSW50ZWdlcl0gKiB2ZWMgPSAmdi5yZWZSZXAoKQot ICAgICBjZGVmIHNpemVfdCBpCi0gICAgIGZvciBpIGluIHJhbmdlKDxzaXplX3Q+IHJlcy5fZGVn cmVlKToKLS0gICAgICAgIG1wel9zZXQocmVzLl9lbnRyaWVzW2ldLCB2ZWNbMF1baV0uZ2V0X21w el9jb25zdCgpKQotKyAgICAgICAgbXB6X3NldChyZXMuX2VudHJpZXNbaV0sIHYuZ2V0RW50cnko aSkuZ2V0X21wel9jb25zdCgpKQotIAotICAgICByZXR1cm4gcmVzCi1kaWZmIC0tZ2l0IGEvc3Jj L3NhZ2UvbGlicy9saW5ib3gvbGluYm94LnB4ZCBiL3NyYy9zYWdlL2xpYnMvbGluYm94L2xpbmJv eC5weGQKLWluZGV4IDkxMTJkMTUxZjhiLi5iZmVkYTRiNjA0MiAxMDA2NDQKLS0tLSBhL3NyYy9z YWdlL2xpYnMvbGluYm94L2xpbmJveC5weGQKLSsrKyBiL3NyYy9zYWdlL2xpYnMvbGluYm94L2xp bmJveC5weGQKLUBAIC0zMiw3ICszMiw2IEBAIGNkZWYgZXh0ZXJuIGZyb20gImxpbmJveC9tYXRy aXgvZGVuc2UtbWF0cml4LmgiOgotICAgICAgICAgY3R5cGVkZWYgTW9kdWxhcl9kb3VibGUgRmll bGQKLSAgICAgICAgIGN0eXBlZGVmIGRvdWJsZSBFbGVtZW50Ci0gICAgICAgICBEZW5zZU1hdHJp eF9Nb2R1bGFyX2RvdWJsZShGaWVsZCBGLCBzaXplX3QgbSwgc2l6ZV90IG4pCi0tICAgICAgICBE ZW5zZU1hdHJpeF9Nb2R1bGFyX2RvdWJsZShGaWVsZCBGLCBFbGVtZW50Kiwgc2l6ZV90IG0sIHNp emVfdCBuKQotICAgICAgICAgdm9pZCBzZXRFbnRyeShzaXplX3QgaSwgc2l6ZV90IGosIEVsZW1l bnQmIGEpCi0gICAgICAgICBFbGVtZW50ICZnZXRFbnRyeShzaXplX3QgaSwgc2l6ZV90IGopCi0g Ci1AQCAtNDIsNyArNDEsNiBAQCBjZGVmIGV4dGVybiBmcm9tICJsaW5ib3gvbWF0cml4L2RlbnNl LW1hdHJpeC5oIjoKLSAgICAgICAgIGN0eXBlZGVmIE1vZHVsYXJfZmxvYXQgRmllbGQKLSAgICAg ICAgIGN0eXBlZGVmIGZsb2F0IEVsZW1lbnQKLSAgICAgICAgIERlbnNlTWF0cml4X01vZHVsYXJf ZmxvYXQoRmllbGQgRiwgc2l6ZV90IG0sIHNpemVfdCBuKQotLSAgICAgICAgRGVuc2VNYXRyaXhf TW9kdWxhcl9mbG9hdChGaWVsZCBGLCBFbGVtZW50Kiwgc2l6ZV90IG0sIHNpemVfdCBuKQotICAg ICAgICAgdm9pZCBzZXRFbnRyeShzaXplX3QgaSwgc2l6ZV90IGosIEVsZW1lbnQmIGEpCi0gICAg ICAgICBFbGVtZW50ICZnZXRFbnRyeShzaXplX3QgaSwgc2l6ZV90IGopCi0gCi1AQCAtMTAxLDcg Kzk5LDYgQEAgY2RlZiBleHRlcm4gZnJvbSAibGluYm94L3ZlY3Rvci92ZWN0b3IuaCI6Ci0gICAg ICAgICBEZW5zZVZlY3Rvcl9pbnRlZ2VyIChGaWVsZCAmRikKLSAgICAgICAgIERlbnNlVmVjdG9y X2ludGVnZXIgKEZpZWxkICZGLCBsb25nJiBtKQotICAgICAgICAgRGVuc2VWZWN0b3JfaW50ZWdl ciAoRmllbGQgJkYsIGNwcHZlY3RvcltJbnRlZ2VyXSYpCi0tICAgICAgICBjcHB2ZWN0b3JbRWxl bWVudF0mIHJlZlJlcCgpCi0gICAgICAgICBzaXplX3Qgc2l6ZSgpCi0gICAgICAgICB2b2lkIHJl c2l6ZShzaXplX3QpCi0gICAgICAgICB2b2lkIHJlc2l6ZShzaXplX3QgbiwgY29uc3QgRWxlbWVu dCYpCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbWF0cml4L21hdHJpeF9tb2RuX2RlbnNlX3RlbXBs YXRlLnB4aSBiL3NyYy9zYWdlL21hdHJpeC9tYXRyaXhfbW9kbl9kZW5zZV90ZW1wbGF0ZS5weGkK LWluZGV4IGFiZjI5YmFkY2U2Li42OGI4NjljZTMxNCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL21h dHJpeC9tYXRyaXhfbW9kbl9kZW5zZV90ZW1wbGF0ZS5weGkKLSsrKyBiL3NyYy9zYWdlL21hdHJp eC9tYXRyaXhfbW9kbl9kZW5zZV90ZW1wbGF0ZS5weGkKLUBAIC0yMjEsOSArMjIxLDE0IEBAIGNk ZWYgaW5saW5lIGxpbmJveF9lY2hlbG9uaXplX2VmZChjZWxlbWVudCBtb2R1bHVzLCBjZWxlbWVu dCogZW50cmllcywgUHlfc3NpemVfCi0gICAgICAgICByZXR1cm4gMCxbXQotIAotICAgICBjZGVm IE1vZEZpZWxkICpGID0gbmV3IE1vZEZpZWxkKDxsb25nPm1vZHVsdXMpCi0tICAgIGNkZWYgRGVu c2VNYXRyaXggKkEgPSBuZXcgRGVuc2VNYXRyaXgoRlswXSwgPE1vZEZpZWxkLkVsZW1lbnQqPmVu dHJpZXMsPFB5X3NzaXplX3Q+bnJvd3MsIDxQeV9zc2l6ZV90Pm5jb2xzKQotLSAgICBjZGVmIFB5 X3NzaXplX3QgciA9IHJlZHVjZWRSb3dFY2hlbG9uaXplKEFbMF0pCi0rICAgIGNkZWYgRGVuc2VN YXRyaXggKkEgPSBuZXcgRGVuc2VNYXRyaXgoRlswXSwgbnJvd3MsIG5jb2xzKQotKwotICAgICBj ZGVmIFB5X3NzaXplX3QgaSxqCi0rICAgIGZvciBpIGluIHJhbmdlKG5yb3dzKToKLSsgICAgICAg IGZvciBqIGluIHJhbmdlKG5jb2xzKToKLSsgICAgICAgICAgICBBLnNldEVudHJ5KGksIGosIGVu dHJpZXNbaSpuY29scytqXSkKLSsKLSsgICAgY2RlZiBQeV9zc2l6ZV90IHIgPSByZWR1Y2VkUm93 RWNoZWxvbml6ZShBWzBdKQotICAgICBmb3IgaSBpbiByYW5nZShucm93cyk6Ci0gICAgICAgICBm b3IgaiBpbiByYW5nZShuY29scyk6Ci0gICAgICAgICAgICAgZW50cmllc1tpKm5jb2xzK2pdID0g PGNlbGVtZW50PkEuZ2V0RW50cnkoaSxqKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdlbWF0aC9w YXRjaGVzLzM1NjE5LW1heGltYV81LjQ2LjAucGF0Y2ggYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNo ZXMvMzU2MTktbWF4aW1hXzUuNDYuMC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggOTcwZGU2ZTViZWI2Yy4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3NhZ2VtYXRoL3Bh dGNoZXMvMzU2MTktbWF4aW1hXzUuNDYuMC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDU4NiAr MCwwIEBACi1kaWZmIC0tZ2l0IGEvYnVpbGQvcGtncy9lY2wvZGVwZW5kZW5jaWVzIGIvYnVpbGQv cGtncy9lY2wvZGVwZW5kZW5jaWVzCi1pbmRleCBjZGE2MzE2YmY1YS4uNTFhOTUzNDAzZTkgMTAw NjQ0Ci0tLS0gYS9idWlsZC9wa2dzL2VjbC9kZXBlbmRlbmNpZXMKLSsrKyBiL2J1aWxkL3BrZ3Mv ZWNsL2RlcGVuZGVuY2llcwotQEAgLTEsNCArMSw0IEBACi0tJChNUF9MSUJSQVJZKSByZWFkbGlu ZSBnYyBsaWJmZmkKLSskKE1QX0xJQlJBUlkpIHJlYWRsaW5lIGdjIGxpYmZmaSBpbmZvCi0gCi0g LS0tLS0tLS0tLQotIEFsbCBsaW5lcyBvZiB0aGlzIGZpbGUgYXJlIGlnbm9yZWQgZXhjZXB0IHRo ZSBmaXJzdC4KLWRpZmYgLS1naXQgYS9idWlsZC9wa2dzL2VjbC9zcGtnLWNvbmZpZ3VyZS5tNCBi L2J1aWxkL3BrZ3MvZWNsL3Nwa2ctY29uZmlndXJlLm00Ci1pbmRleCBhZTFlMGFjNWUxYS4uN2Ri Y2ZhNjM3N2IgMTAwNjQ0Ci0tLS0gYS9idWlsZC9wa2dzL2VjbC9zcGtnLWNvbmZpZ3VyZS5tNAot KysrIGIvYnVpbGQvcGtncy9lY2wvc3BrZy1jb25maWd1cmUubTQKLUBAIC0zNSwxMCArMzUsNyBA QCBTQUdFX1NQS0dfQ09ORklHVVJFKFtlY2xdLCBbCi0gICAgIEFDX1NVQlNUKFNBR0VfRUNMX0NP TkZJRywgWyRFQ0xfQ09ORklHXSkKLSAgIGZpCi0gCi0tICAjIE1heGltYSBjYW5ub3QgeWV0IGJl IHByb3ZpZGVkIGJ5IHRoZSBzeXN0ZW0sIHNvIHdlIGFsd2F5cyB1c2UKLSsgICMgS2Vuem8gY2Fu bm90IHlldCBiZSBwcm92aWRlZCBieSB0aGUgc3lzdGVtLCBzbyB3ZSBhbHdheXMgdXNlCi0gICAj IHRoZSBTQUdFX0xPQ0FMIHBhdGggZm9yIG5vdy4KLS0gIEFDX1NVQlNUKFNBR0VfTUFYSU1BX0ZB UywgWycke3ByZWZpeH0nL2xpYi9lY2wvbWF4aW1hLmZhc10pCi0tCi0tICAjIExpa2V3aXNlIGZv ciB0aGUgb3B0aW9uYWwgS2Vuem8gU1BLRwotICAgQUNfU1VCU1QoU0FHRV9LRU5aT19GQVMsIFsn JHtwcmVmaXh9Jy9saWIvZWNsL2tlbnpvLmZhc10pCi0gXSkKLWRpZmYgLS1naXQgYS9idWlsZC9w a2dzL2VjbC9zcGtnLWluc3RhbGwuaW4gYi9idWlsZC9wa2dzL2VjbC9zcGtnLWluc3RhbGwuaW4K LWluZGV4IGVlMTY2N2FlYzE2Li43MjA4MzMzNzk0MiAxMDA2NDQKLS0tLSBhL2J1aWxkL3BrZ3Mv ZWNsL3Nwa2ctaW5zdGFsbC5pbgotKysrIGIvYnVpbGQvcGtncy9lY2wvc3BrZy1pbnN0YWxsLmlu Ci1AQCAtMzEsMTggKzMxLDYgQEAgY3AgIiRTQUdFX1JPT1QiL2NvbmZpZy9jb25maWcuKiBzcmMK LSAKLSBpZiBbIHgiJFNBR0VfU1BLR19JTlNUQUxMX0RPQ1MiICE9IHh5ZXMgXSA7IHRoZW4KLSAg ICAgRUNMX0NPTkZJR1VSRT0iJEVDTF9DT05GSUdVUkUgLS1lbmFibGUtbWFudWFsPW5vIgotLWVs c2UKLS0gICAgIyBFQ0wgMjAyMCBuZWVkcyBtb2Rlcm4gbWFrZWluZm8KLS0gICAgY29tbWFuZCAt diB0ZXhpMmFueSA+L2Rldi9udWxsIDI+JjEKLS0gICAgaWYgWyAkPyAtbmUgMCBdOyB0aGVuICMg dGV4aTJhbnkgbm90IGZvdW5kIC0+IG1ha2VpbmZvIHRvbyBvbGQsIGlmIHByZXNlbnQKLS0gICAg ICAgIEVDTF9DT05GSUdVUkU9IiRFQ0xfQ09ORklHVVJFIC0tZW5hYmxlLW1hbnVhbD1ubyIKLS0g ICAgZWxzZQotLSAgICAgICAgaWYgbWFrZWluZm8gLWMgZm9vIDI+JjEgfCBncmVwIC1xIGludmFs aWQ7IHRoZW4KLS0gICAgICAgICAgICAjIG1ha2VpbmZvIGZvdW5kIGJ1dCBkb2VzIG5vdCBzdXBw b3J0IGFsbCBvcHRpb25zIHRoYXQgZWNsCi0tICAgICAgICAgICAgIyBsaWtlcyB0byB1c2UKLS0g ICAgICAgICAgICBFQ0xfQ09ORklHVVJFPSIkRUNMX0NPTkZJR1VSRSAtLWVuYWJsZS1tYW51YWw9 bm8iCi0tICAgICAgICBmaQotLSAgICBmaQotIGZpCi0gCi0gc2RoX2NvbmZpZ3VyZSAkU0FHRV9D T05GSUdVUkVfR01QIFwKLWRpZmYgLS1naXQgYS9idWlsZC9wa2dzL2dpYWMvc3BrZy1jb25maWd1 cmUubTQgYi9idWlsZC9wa2dzL2dpYWMvc3BrZy1jb25maWd1cmUubTQKLWluZGV4IDU4NTllMzVm MTJlLi41M2UzYTgzMDFjZCAxMDA2NDQKLS0tLSBhL2J1aWxkL3BrZ3MvZ2lhYy9zcGtnLWNvbmZp Z3VyZS5tNAotKysrIGIvYnVpbGQvcGtncy9naWFjL3Nwa2ctY29uZmlndXJlLm00Ci1AQCAtNSw3 ICs1LDcgQEAgU0FHRV9TUEtHX0NPTkZJR1VSRShbZ2lhY10sIFsKLSAgICAgICAgbTRfcHVzaGRl ZihbR0lBQ19NQVhfVkVSU0lPTl0sIFsxLjkuOTk5XSkKLSAgICAgICAgQUNfQ0FDSEVfQ0hFQ0so W2ZvciBnaWFjID49IF1HSUFDX01JTl9WRVJTSU9OWywgPD0gXUdJQUNfTUFYX1ZFUlNJT04sIFth Y19jdl9wYXRoX0dJQUNdLCBbCi0gICAgICAgICAgQUNfUEFUSF9QUk9HU19GRUFUVVJFX0NIRUNL KFtHSUFDXSwgW2dpYWNdLCBbCi0tICAgICAgICAgICAgZ2lhY192ZXJzaW9uPSQoJGFjX3BhdGhf R0lBQyAtLXZlcnNpb24gMj4gL2Rldi9udWxsIHwgdGFpbCAtMSkKLSsgICAgICAgICAgICBnaWFj X3ZlcnNpb249JCgkYWNfcGF0aF9HSUFDIC0tdmVyc2lvbiAyPiAvZGV2L251bGwgfCB0YWlsIC1u IDEpCi0gICAgICAgICAgICAgQVNfSUYoW3Rlc3QgLW4gIiRnaWFjX3ZlcnNpb24iXSwgWwotICAg ICAgICAgICAgICAgICBBWF9DT01QQVJFX1ZFUlNJT04oWyRnaWFjX3ZlcnNpb25dLCBbZ2VdLCBH SUFDX01JTl9WRVJTSU9OLCBbCi0gICAgICAgICAgICAgICAgICAgICBBWF9DT01QQVJFX1ZFUlNJ T04oWyRnaWFjX3ZlcnNpb25dLCBbbGVdLCBHSUFDX01BWF9WRVJTSU9OLCBbCi1kaWZmIC0tZ2l0 IGEvYnVpbGQvcGtncy9pbmZvL2Rpc3Ryb3MvZmVkb3JhLnR4dCBiL2J1aWxkL3BrZ3MvaW5mby9k aXN0cm9zL2ZlZG9yYS50eHQKLWluZGV4IDI4M2FhNDYyZjc0Li5jMGQ4Zjc0ZTBhZCAxMDA2NDQK LS0tLSBhL2J1aWxkL3BrZ3MvaW5mby9kaXN0cm9zL2ZlZG9yYS50eHQKLSsrKyBiL2J1aWxkL3Br Z3MvaW5mby9kaXN0cm9zL2ZlZG9yYS50eHQKLUBAIC0xICsxIEBACi0tdGV4aW5mbwotK3RleGlu Zm8gaW5mbwotZGlmZiAtLWdpdCBhL2J1aWxkL3BrZ3MvaW5mby9zcGtnLWNvbmZpZ3VyZS5tNCBi L2J1aWxkL3BrZ3MvaW5mby9zcGtnLWNvbmZpZ3VyZS5tNAotaW5kZXggMDk4MGE0YjhlZjguLjg1 ZmUxZWE0NzMxIDEwMDY0NAotLS0tIGEvYnVpbGQvcGtncy9pbmZvL3Nwa2ctY29uZmlndXJlLm00 Ci0rKysgYi9idWlsZC9wa2dzL2luZm8vc3BrZy1jb25maWd1cmUubTQKLUBAIC0xLDQgKzEsMTQg QEAKLSBTQUdFX1NQS0dfQ09ORklHVVJFKFtpbmZvXSwgWwotICAgQUNfUEFUSF9QUk9HKElORk8s IGluZm8pCi0tICBBU19JRihbdGVzdCAteiAiJHtJTkZPfSJdLCBbc2FnZV9zcGtnX2luc3RhbGxf aW5mbz15ZXNdKQotKyAgQVNfSUYoW3Rlc3QgLXogIiR7SU5GT30iXSwgW3NhZ2Vfc3BrZ19pbnN0 YWxsX2luZm89eWVzCi0rICAgIF0sIFsKLSsgICAgIGRubCB2ZXJ5IG9sZCBtYWtlaW5mbyBhcmUg bm90IHRleGkyYW55LCBuZXdlciBhcmUgc3ltbGlua3MgdG8gdGV4aTJhbnkKLSsgICAgIEFDX1BB VEhfUFJPRyhURVhJMkFOWSwgdGV4aTJhbnkpCi0rICAgICBBU19JRihbdGVzdCAteiAiJHtURVhJ MkFOWX0iXSwgW3NhZ2Vfc3BrZ19pbnN0YWxsX2luZm89eWVzCi0rICAgICAgIF0sIFsKLSsgICAg ICAgIEFTX0lGKFttYWtlaW5mbyAtYyBmb28gMj4mMSB8IGdyZXAgLXEgaW52YWxpZF0sIFsKLSsg ICAgICAgICBkbmwgbWFrZWluZm8gZm91bmQsIGJ1dCB0b28gb2xkLCBhbmQgIGRvZXMgbm90IHN1 cHBvcnQgYWxsIG9wdGlvbnMgdGhhdCBlY2wgbGlrZXMgdG8gdXNlCi0rICAgICAgICAgc2FnZV9z cGtnX2luc3RhbGxfaW5mbz15ZXNdKQotKyAgICAgICBdKQotKyAgICBdKQotIF0pCi1kaWZmIC0t Z2l0IGEvYnVpbGQvcGtncy9pbmZvL3Nwa2ctaW5zdGFsbC5pbiBiL2J1aWxkL3BrZ3MvaW5mby9z cGtnLWluc3RhbGwuaW4KLWluZGV4IDgwODZlNGIyZWM4Li4zZWE4YzA1MzY2OSAxMDA2NDQKLS0t LSBhL2J1aWxkL3BrZ3MvaW5mby9zcGtnLWluc3RhbGwuaW4KLSsrKyBiL2J1aWxkL3BrZ3MvaW5m by9zcGtnLWluc3RhbGwuaW4KLUBAIC0xLDIgKzEsMiBAQAotLWNkIHNyYy9pbmZvCi0rY2Qgc3Jj Ci0gc2RoX21ha2VfaW5zdGFsbAotZGlmZiAtLWdpdCBhL2J1aWxkL3BrZ3MvaW5mby90eXBlIGIv YnVpbGQvcGtncy9pbmZvL3R5cGUKLWluZGV4IDEzNGQ5YmMzMmQ1Li5hNmE3YjljZDcyNiAxMDA2 NDQKLS0tLSBhL2J1aWxkL3BrZ3MvaW5mby90eXBlCi0rKysgYi9idWlsZC9wa2dzL2luZm8vdHlw ZQotQEAgLTEgKzEgQEAKLS1vcHRpb25hbAotK3N0YW5kYXJkCi1kaWZmIC0tZ2l0IGEvYnVpbGQv cGtncy9tYXhpbWEvY2hlY2tzdW1zLmluaSBiL2J1aWxkL3BrZ3MvbWF4aW1hL2NoZWNrc3Vtcy5p bmkKLWluZGV4IGE4MDRjN2I4MzFmLi4wZjU5NDM4OWZlNiAxMDA2NDQKLS0tLSBhL2J1aWxkL3Br Z3MvbWF4aW1hL2NoZWNrc3Vtcy5pbmkKLSsrKyBiL2J1aWxkL3BrZ3MvbWF4aW1hL2NoZWNrc3Vt cy5pbmkKLUBAIC0xLDUgKzEsNSBAQAotIHRhcmJhbGw9bWF4aW1hLVZFUlNJT04udGFyLmd6Ci0t c2hhMT1lZDE1ZDUyODU3OTQ0MTNiYTk0NDEyMDc5ZWNhM2QwZmE1NWE0N2JmCi0tbWQ1PTliOWFl MWRhY2U1NWIxMzg2NzM5ZGFiYWE5MTIyZTYwCi0tY2tzdW09MTc2NTQwOTc2NgotK3NoYTE9MTAx MDU5NGU2ZDYwODJiYmQ4ZWZhYWMxYjc3NTZlYzE3MjFhNGVkNQotK21kNT0zYzAxZjFkYWE2OTM2 ZTExZDg3MTNmZWY3NzUxZDNmZQotK2Nrc3VtPTI0MjAzOTMwOTYKLSB1cHN0cmVhbV91cmw9aHR0 cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvbWF4aW1hL2ZpbGVzL01heGltYS1zb3VyY2Uv VkVSU0lPTi1zb3VyY2UvbWF4aW1hLVZFUlNJT04udGFyLmd6L2Rvd25sb2FkCi1kaWZmIC0tZ2l0 IGEvYnVpbGQvcGtncy9tYXhpbWEvZGVwZW5kZW5jaWVzIGIvYnVpbGQvcGtncy9tYXhpbWEvZGVw ZW5kZW5jaWVzCi1pbmRleCBmZmZiODllMjA1MC4uNTVjN2UwZDhkMTQgMTAwNjQ0Ci0tLS0gYS9i dWlsZC9wa2dzL21heGltYS9kZXBlbmRlbmNpZXMKLSsrKyBiL2J1aWxkL3BrZ3MvbWF4aW1hL2Rl cGVuZGVuY2llcwotQEAgLTEsNCArMSw0IEBACi0tZWNsCi0rZWNsIGluZm8KLSAKLSAtLS0tLS0t LS0tCi0gQWxsIGxpbmVzIG9mIHRoaXMgZmlsZSBhcmUgaWdub3JlZCBleGNlcHQgdGhlIGZpcnN0 LgotZGlmZiAtLWdpdCBhL2J1aWxkL3BrZ3MvbWF4aW1hL2Rpc3Ryb3MvYXJjaC50eHQgYi9idWls ZC9wa2dzL21heGltYS9kaXN0cm9zL2FyY2gudHh0Ci1pbmRleCA2NDAwMjkwZjQ0ZC4uNmFjMDUy ZmE2MmIgMTAwNjQ0Ci0tLS0gYS9idWlsZC9wa2dzL21heGltYS9kaXN0cm9zL2FyY2gudHh0Ci0r KysgYi9idWlsZC9wa2dzL21heGltYS9kaXN0cm9zL2FyY2gudHh0Ci1AQCAtMSArMSBAQAotLW1h eGltYS1lY2wKLSttYXhpbWEtZmFzCi1kaWZmIC0tZ2l0IGEvYnVpbGQvcGtncy9tYXhpbWEvZGlz dHJvcy9jeWd3aW4udHh0IGIvYnVpbGQvcGtncy9tYXhpbWEvZGlzdHJvcy9jeWd3aW4udHh0Ci1u ZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAuLmY1ZmUzZmRjNmNiCi0tLS0g L2Rldi9udWxsCi0rKysgYi9idWlsZC9wa2dzL21heGltYS9kaXN0cm9zL2N5Z3dpbi50eHQKLUBA IC0wLDAgKzEgQEAKLSttYXhpbWEKLWRpZmYgLS1naXQgYS9idWlsZC9wa2dzL21heGltYS9kaXN0 cm9zL2ZyZWVic2QudHh0IGIvYnVpbGQvcGtncy9tYXhpbWEvZGlzdHJvcy9mcmVlYnNkLnR4dAot bmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwLi43NjZhNzFiNTA3NAotLS0t IC9kZXYvbnVsbAotKysrIGIvYnVpbGQvcGtncy9tYXhpbWEvZGlzdHJvcy9mcmVlYnNkLnR4dAot QEAgLTAsMCArMSBAQAotK21hdGgvbWF4aW1hCi1kaWZmIC0tZ2l0IGEvYnVpbGQvcGtncy9tYXhp bWEvZGlzdHJvcy9nZW50b28udHh0IGIvYnVpbGQvcGtncy9tYXhpbWEvZGlzdHJvcy9nZW50b28u dHh0Ci1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAuLjg1ZmIzM2YxNjEw Ci0tLS0gL2Rldi9udWxsCi0rKysgYi9idWlsZC9wa2dzL21heGltYS9kaXN0cm9zL2dlbnRvby50 eHQKLUBAIC0wLDAgKzEsMiBAQAotK3NjaS1tYXRoZW1hdGljcy9tYXhpbWFbZWNsc10KLSsKLWRp ZmYgLS1naXQgYS9idWlsZC9wa2dzL21heGltYS9wYWNrYWdlLXZlcnNpb24udHh0IGIvYnVpbGQv cGtncy9tYXhpbWEvcGFja2FnZS12ZXJzaW9uLnR4dAotaW5kZXggODM0NzY2MjRkYzAuLjU2ODEz NzVmM2JlIDEwMDY0NAotLS0tIGEvYnVpbGQvcGtncy9tYXhpbWEvcGFja2FnZS12ZXJzaW9uLnR4 dAotKysrIGIvYnVpbGQvcGtncy9tYXhpbWEvcGFja2FnZS12ZXJzaW9uLnR4dAotQEAgLTEgKzEg QEAKLS01LjQ1LjAucDAKLSs1LjQ2LjAKLWRpZmYgLS1naXQgYS9idWlsZC9wa2dzL21heGltYS9w YXRjaGVzL21hdHJpeGV4cC5wYXRjaCBiL2J1aWxkL3BrZ3MvbWF4aW1hL3BhdGNoZXMvbWF0cml4 ZXhwLnBhdGNoCi1kZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDVjODUyN2MzM2JmLi4w MDAwMDAwMDAwMAotLS0tIGEvYnVpbGQvcGtncy9tYXhpbWEvcGF0Y2hlcy9tYXRyaXhleHAucGF0 Y2gKLSsrKyAvZGV2L251bGwKLUBAIC0xLDE1ICswLDAgQEAKLS1kaWZmIC0tZ2l0IGEvc2hhcmUv bGluZWFyYWxnZWJyYS9tYXRyaXhleHAubGlzcCBiL3NoYXJlL2xpbmVhcmFsZ2VicmEvbWF0cml4 ZXhwLmxpc3AKLS1pbmRleCAyMThiZjM1Li5mMmZkNDY4IDEwMDY0NAotLS0tLSBhL3NoYXJlL2xp bmVhcmFsZ2VicmEvbWF0cml4ZXhwLmxpc3AKLS0rKysgYi9zaGFyZS9saW5lYXJhbGdlYnJhL21h dHJpeGV4cC5saXNwCi0tQEAgLTEzOCw4ICsxMzgsOCBAQAotLSAJICAgKHByaW50IGAocmF0dmFy cyA9ICwkcmF0dmFycyBnY2QgPSAnJGdjZCBhbGdlYnJhaWMgPSAsJGFsZ2VicmFpYykpCi0tIAkg ICAocHJpbnQgYChyYXRmYWMgPSAsJHJhdGZhYykpCi0tIAkgICAobWVycm9yICJVbmFibGUgdG8g ZmluZCB0aGUgc3BlY3RydW0iKSkpCi0tLSAgIAotLS0gICAgKHNldHEgcmVzICgkZnVsbHJhdHNp bXAgKG5jcG93ZXIgKHN1YiAobXVsdCB6ICgkaWRlbnQgbikpIG1hdCkgLTEpIHopKQotLSsKLS0r ICAgIChzZXRxIHJlcyAoJGZ1bGxyYXRzaW1wICgkaW52ZXJ0X2J5X2x1IChzdWIgKG11bHQgeiAo JGlkZW50IG4pKSBtYXQpICckY3JlcmluZykgeikpCi0tICAgICAoc2V0cSBtIChsZW5ndGggc3Ap KQotLSAgICAgKGRvdGltZXMgKGkgbSkKLS0gICAgICAgKHNldHEgemkgKG50aCBpIHNwKSkKLWRp ZmYgLS1naXQgYS9idWlsZC9wa2dzL21heGltYS9wYXRjaGVzL21heGltYS5zeXN0ZW0ucGF0Y2gg Yi9idWlsZC9wa2dzL21heGltYS9wYXRjaGVzL21heGltYS5zeXN0ZW0ucGF0Y2gKLWRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggNzRkYjYyZTdmOWYuLjAwMDAwMDAwMDAwCi0tLS0gYS9i dWlsZC9wa2dzL21heGltYS9wYXRjaGVzL21heGltYS5zeXN0ZW0ucGF0Y2gKLSsrKyAvZGV2L251 bGwKLUBAIC0xLDI1ICswLDAgQEAKLS1kaWZmIC0tZ2l0IGEvc3JjL21heGltYS5zeXN0ZW0gYi9z cmMvbWF4aW1hLnN5c3RlbQotLWluZGV4IDc2ZjI0NTIuLmNmMjVmNTEgMTAwNjQ0Ci0tLS0tIGEv c3JjL21heGltYS5zeXN0ZW0KLS0rKysgYi9zcmMvbWF4aW1hLnN5c3RlbQotLUBAIC0xLDUgKzEs OCBAQAotLSA7OzsgLSotIExpc3AgLSotCi0tIAotLSsocmVxdWlyZSA6Y21wKQotLSsoc2V0ZiBj OjoqY29tcGlsZS1pbi1jb25zdGFudHMqIHQpCi0tKwotLSAoaW4tcGFja2FnZSA6Y2wtdXNlcikK LS0gCi0tIChwdXNobmV3IDpjbCAqZmVhdHVyZXMqKQotLUBAIC03NSw2ICs3OCwxMSBAQAotLSAJ CQkgICAgIDs7IENvbnZlcnQgZGlyL2Zvby5mYXMgdG8gZGlyL2Zvby5vCi0tIAkJCSAgICAgKG1h a2UtcGF0aG5hbWUgOnR5cGUgIm8iIDpkZWZhdWx0cyBwKSkKLS0gCQkJIGZpbGVzKSkpCi0tKwko Yzo6YnVpbGQtZmFzbCAiYmluYXJ5LWVjbC9tYXhpbWEiIDpsaXNwLWZpbGVzIG9iagotLSsJCQkg IDpsZC1mbGFncwotLSsJCQkgIChsZXQgKCh4IChzeW1ib2wtdmFsdWUgKGZpbmQtc3ltYm9sICIq QVVUT0NPTkYtTEQtRkxBR1MqIgotLSsJCQkJCQkJICAgICAgKGZpbmQtcGFja2FnZSAiTUFYSU1B IikpKSkpCi0tKwkJCSAgICAoaWYgKGFuZCB4IChub3QgKHN0cmluZz0geCAiIikpKSAobGlzdCB4 KSkpKQotLSAJKGM6OmJ1aWxkLXByb2dyYW0gImJpbmFyeS1lY2wvbWF4aW1hIiA6bGlzcC1maWxl cyBvYmoKLS0gCQkJICA6bGQtZmxhZ3MKLS0gCQkJICAobGV0ICgoeCAoc3ltYm9sLXZhbHVlIChm aW5kLXN5bWJvbCAiKkFVVE9DT05GLUxELUZMQUdTKiIKLWRpZmYgLS1naXQgYS9idWlsZC9wa2dz L21heGltYS9zcGtnLWNvbmZpZ3VyZS5tNCBiL2J1aWxkL3BrZ3MvbWF4aW1hL3Nwa2ctY29uZmln dXJlLm00Ci1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAuLjg2ZGU4YzFk ZmMxCi0tLS0gL2Rldi9udWxsCi0rKysgYi9idWlsZC9wa2dzL21heGltYS9zcGtnLWNvbmZpZ3Vy ZS5tNAotQEAgLTAsMCArMSw0NiBAQAotK1NBR0VfU1BLR19DT05GSUdVUkUoW21heGltYV0sIFsK LSsgIG00X3B1c2hkZWYoW1NBR0VfTUFYSU1BX01JTlZFUl0sWyI1LjQ1LjAiXSlkbmwgdGhpcyB2 ZXJzaW9uIGFuZCBoaWdoZXIgYWxsb3dlZAotKyAgU0FHRV9TUEtHX0RFUENIRUNLKFtlY2xdLCBb Ci0rICAgIGRubCBGaXJzdCBjaGVjayBmb3IgdGhlICJtYXhpbWEiIGV4ZWN1dGFibGUgaW4gdGhl IHVzZXIncyBQQVRILCBiZWNhdXNlCi0rICAgIGRubCB3ZSBzdGlsbCB1c2UgcGV4cGVjdCB0byBj b21tdW5pY2F0ZSB3aXRoIGl0IGluIGEgZmV3IHBsYWNlcy4KLSsgICAgQUNfQ0FDSEVfQ0hFQ0so W2ZvciBNYXhpbWEgPj0gJFNBR0VfTUFYSU1BX01JTlZFUl0sIFthY19jdl9wYXRoX01BWElNQV0s IFsKLSsgICAgICAgIEFDX1BBVEhfUFJPR1NfRkVBVFVSRV9DSEVDSyhbTUFYSU1BXSwgW21heGlt YV0sIFsKLSsgICAgICAgICAgICBtYXhpbWFfdmVyc2lvbj1gJGFjX3BhdGhfTUFYSU1BIC0tdmVy c2lvbiAyPiYxIHwgdGFpbCAtbiAxXAotKyAgICAgICAgICAgICAgICB8ICRTRUQgLW4gLWUgJ3Mv TWF4aW1hICpcKFtbMC05XV0qXC5bWzAtOV1dKlwuW1swLTldXSpcKS9cMS9wJ2AKLSsgICAgICAg ICAgICBBU19JRihbdGVzdCAtbiAiJG1heGltYV92ZXJzaW9uIl0sIFsKLSsgICAgICAgICAgICAg ICAgQVhfQ09NUEFSRV9WRVJTSU9OKFskbWF4aW1hX3ZlcnNpb25dLCBbZ2VdLCBbU0FHRV9NQVhJ TUFfTUlOVkVSXSwgWwotKyAgICAgICAgICAgICAgICAgICAgYWNfY3ZfcGF0aF9NQVhJTUE9IiRh Y19wYXRoX01BWElNQSIKLSsgICAgICAgICAgICAgICAgICAgIGFjX3BhdGhfTUFYSU1BX2ZvdW5k PToKLSsgICAgICAgICAgICAgICAgXSkKLSsgICAgICAgICAgICBdKQotKyAgICAgICAgXSkKLSsg ICAgXSkKLSsgICAgU0FHRV9NQVhJTUE9IiRhY19jdl9wYXRoX01BWElNQSIKLSsgICAgQVNfSUYo W3Rlc3QgLXogIiR7U0FHRV9NQVhJTUF9Il0sIFsKLSsgICAgICBzYWdlX3Nwa2dfaW5zdGFsbF9t YXhpbWE9eWVzCi0rICAgIF0sWwotKyAgICAgIGRubCBJZiB3ZSBoYXZlIHRoZSBleGVjdXRhYmxl LCBjaGVjayBhbHNvIGZvciB0aGUgRUNMIGxpYnJhcnkuCi0rICAgICAgQUNfTVNHX0NIRUNLSU5H KFtpZiBFQ0wgY2FuICJyZXF1aXJlIiB0aGUgbWF4aW1hIG1vZHVsZV0pCi0rICAgICAgQVNfSUYo W2VjbCAtLWV2YWwgIihyZXF1aXJlICdtYXhpbWEpIiAtLWV2YWwgIihxdWl0KSIgXAotKyAgICAg ICAgICAgICAgID4mQVNfTUVTU0FHRV9MT0dfRkQgMj4mQVNfTUVTU0FHRV9MT0dfRkRdLCBbCi0r ICAgICAgICBBQ19NU0dfUkVTVUxUKHllcykKLSsgICAgICBdLCBbCi0rICAgICAgICBBQ19NU0df UkVTVUxUKG5vKQotKyAgICAgICAgc2FnZV9zcGtnX2luc3RhbGxfbWF4aW1hPXllcwotKyAgICAg IF0pCi0rICAgIF0pCi0rICBdKQotKyAgbTRfcG9wZGVmKFtTQUdFX01BWElNQV9NSU5WRVJdKQot K10sW10sW10sWwotKyAgIyBwb3N0LWNoZWNrCi0rICBBU19JRihbdGVzdCB4JHNhZ2Vfc3BrZ19p bnN0YWxsX21heGltYSA9IHh5ZXNdLCBbCi0rICAgIGRubCBMZWF2aW5nIHRoaXMgdmFyaWFibGUg ZW1wdHkgd2lsbCB0ZWxsIHNhZ2VsaWIgdG8gbG9hZAotKyAgICBkbmwgdGhlIG1heGltYSBsaWJy YXJ5ICh3aXRoaW4gRUNMKSBieSBuYW1lIGluc3RlYWQgb2YgYnkKLSsgICAgZG5sIGFic29sdXRl IHBhdGguCi0rICAgIFNBR0VfTUFYSU1BPScke3ByZWZpeH0nL2Jpbi9tYXhpbWEKLSsgICAgU0FH RV9NQVhJTUFfRkFTPScke3ByZWZpeH0nL2xpYi9lY2wvbWF4aW1hLmZhcwotKyAgXSkKLSsKLSsg IEFDX1NVQlNUKFNBR0VfTUFYSU1BLCAiJHtTQUdFX01BWElNQX0iKQotKyAgQUNfU1VCU1QoU0FH RV9NQVhJTUFfRkFTLCAiJHtTQUdFX01BWElNQV9GQVN9IikKLStdKQotZGlmZiAtLWdpdCBhL2J1 aWxkL3BrZ3MvbWF4aW1hL3Nwa2ctaW5zdGFsbC5pbiBiL2J1aWxkL3BrZ3MvbWF4aW1hL3Nwa2ct aW5zdGFsbC5pbgotaW5kZXggM2FlNjM4MmY5YmEuLmNkYjZmYmYyMDY5IDEwMDY0NAotLS0tIGEv YnVpbGQvcGtncy9tYXhpbWEvc3BrZy1pbnN0YWxsLmluCi0rKysgYi9idWlsZC9wa2dzL21heGlt YS9zcGtnLWluc3RhbGwuaW4KLUBAIC0yOCwyOCArMjgsNiBAQCBlY2hvCi0gZWNobyAiTm93IGNv bmZpZ3VyaW5nIE1heGltYS4uLiIKLSBzZGhfY29uZmlndXJlIC0tZW5hYmxlLWVjbCBnaXRfZm91 bmQ9ZmFsc2UKLSAKLS0jIE5vdGUgdGhlIGZvbGxvd2luZyBpcyByZWdyZXNzaW9uIGluIG1heGlt YSBidWlsZCBzeXN0ZW0KLS0jIHNlZSBodHRwczovL3NvdXJjZWZvcmdlLm5ldC9wL21heGltYS9i dWdzLzMyNzgvCi0tIyBhbmQgaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcC9tYXhpbWEvYnVncy8y ODc4LwotLSMgRm9yIHRoZSBwcmV2aW91cyB0aW1lIGl0IHdhcyBmaXhlZC4KLS0jLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0t IyBUb3VjaGluZyBodG1sIGFuZCBpbmZvIGZpbGUgdG8gYXZvaWQgdG8gcmVnZW5lcmF0ZSB0aGVt LgotLSMgVGhpcyBtdXN0IGJlIGRvbmUgYWZ0ZXIgY29uZmlndXJhdGlvbiBzaW5jZSB0aGUgdGlt ZXN0YW1wIG5lZWQKLS0jIHRvIGJlIGxhdGVyIHRoYW4gaW5jbHVkZS1tYXhpbWEudGV4aSB3aGlj aCBpcyBnZW5lcmF0ZWQgYXQKLS0jIGNvbmZpZ3VyYXRpb24gdGltZQotLWZvciBpIGluIGRvYy9p bmZvLyouaHRtbCA7IGRvCi0tICAgIHRvdWNoICIke2l9IgotLWRvbmUKLS10b3VjaCBkb2MvaW5m by9tYXhpbWEuaW5mbyoKLS0jIE1heGltYSA1LjQ0LjAgYnVpbGRfaHRtbC5zaCBpcyBub3QgY29t cGF0aWJsZSB3aXRoIG1ha2VpbmZvIDQuOAotLSMgKHdoaWNoIGlzIC91c3IvYmluL21ha2VpbmZv IG9uIG1hY09TKS4gICMzMDA2MwotLSMgRG8gbm90IGJ1aWxkIHRoZSBIVE1MIGRvY3MgdW5sZXNz IHRoZSB1c2VyIGFza3MgZm9yIGl0LAotLSMgaW4gd2hpY2ggY2FzZSBpdCBpcyB0aGVpciBwcm9i bGVtIHRvIGluc3RhbGwgYSBiZXR0ZXIKLS0jIG1ha2VpbmZvIHZlcnNpb24uCi0taWYgW1sgIiRT QUdFX1NQS0dfSU5TVEFMTF9ET0NTIiAhPSB5ZXMgXV0gOyB0aGVuCi0tdG91Y2ggZG9jL2luZm8v bWF4aW1hX3RvYy5odG1sIGludGVyZmFjZXMveG1heGltYS9kb2MveG1heGltYS5odG1sCi0tZmkK LS0KLSAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCi0gCi0gc2RoX21ha2UKLWRpZmYgLS1naXQgYS9idWlsZC9wa2dzL3RveC9z cGtnLWNvbmZpZ3VyZS5tNCBiL2J1aWxkL3BrZ3MvdG94L3Nwa2ctY29uZmlndXJlLm00Ci1pbmRl eCA3ZDhhZGU0YzE0Yi4uNWEyNjA0MzljZGQgMTAwNjQ0Ci0tLS0gYS9idWlsZC9wa2dzL3RveC9z cGtnLWNvbmZpZ3VyZS5tNAotKysrIGIvYnVpbGQvcGtncy90b3gvc3BrZy1jb25maWd1cmUubTQK LUBAIC01LDcgKzUsNyBAQCBTQUdFX1NQS0dfQ09ORklHVVJFKFt0b3hdLCBbCi0gICAgICAgIG00 X3B1c2hkZWYoW1RPWDRfTUlOX1ZFUlNJT05dLCBbNC4wLjE1XSkKLSAgICAgICAgQUNfQ0FDSEVf Q0hFQ0soW2ZvciB0b3ggMyA+PSBdVE9YM19NSU5fVkVSU0lPTlsgb3IgdG94IDQgPj0gXVRPWDRf TUlOX1ZFUlNJT04sIFthY19jdl9wYXRoX1RPWF0sIFsKLSAgICAgICAgICBBQ19QQVRIX1BST0dT X0ZFQVRVUkVfQ0hFQ0soW1RPWF0sIFt0b3hdLCBbCi0tICAgICAgICAgICAgdG94X3ZlcnNpb249 JCgkYWNfcGF0aF9UT1ggLS12ZXJzaW9uIDI+IC9kZXYvbnVsbCB8IHRhaWwgLTEpCi0rICAgICAg ICAgICAgdG94X3ZlcnNpb249JCgkYWNfcGF0aF9UT1ggLS12ZXJzaW9uIDI+IC9kZXYvbnVsbCB8 IHRhaWwgLW4gMSkKLSAgICAgICAgICAgICBBU19JRihbdGVzdCAtbiAiJHRveF92ZXJzaW9uIl0s IFsKLSAgICAgICAgICAgICAgICAgQVhfQ09NUEFSRV9WRVJTSU9OKFskdG94X3ZlcnNpb25dLCBb bHRdLCBbNF0sIFsKLSAgICAgICAgICAgICAgICAgICAgIEFYX0NPTVBBUkVfVkVSU0lPTihbJHRv eF92ZXJzaW9uXSwgW2dlXSwgVE9YM19NSU5fVkVSU0lPTiwgWwotZGlmZiAtLWdpdCBhL3BrZ3Mv c2FnZS1jb25mL19zYWdlX2NvbmYvX2NvbmYucHkuaW4gYi9wa2dzL3NhZ2UtY29uZi9fc2FnZV9j b25mL19jb25mLnB5LmluCi1pbmRleCBkNjZiZGIzZDI2NC4uZjJlMTk3YjQ1ZWQgMTAwNjQ0Ci0t LS0gYS9wa2dzL3NhZ2UtY29uZi9fc2FnZV9jb25mL19jb25mLnB5LmluCi0rKysgYi9wa2dzL3Nh Z2UtY29uZi9fc2FnZV9jb25mL19jb25mLnB5LmluCi1AQCAtOSw5ICs5LDExIEBAIFZFUlNJT04g PSAiQFBBQ0tBR0VfVkVSU0lPTkAiCi0gU0FHRV9MT0NBTCA9ICJAcHJlZml4QCIKLSBTQUdFX1JP T1QgPSAiQFNBR0VfUk9PVEAiCi0gCi0tTUFYSU1BID0gIkBwcmVmaXhAL2Jpbi9tYXhpbWEiCi0r IyBUaGUgcGF0aCB0byB0aGUgc3RhbmRhbG9uZSBtYXhpbWEgZXhlY3V0YWJsZS4KLStNQVhJTUEg PSAiQFNBR0VfTUFYSU1BQCIucmVwbGFjZSgnJHtwcmVmaXh9JywgU0FHRV9MT0NBTCkKLSAKLS0j IERlbGV0ZSB0aGlzIGxpbmUgaWYgeW91ciBFQ0wgY2FuIGxvYWQgbWF4aW1hIHdpdGhvdXQgZnVy dGhlciBwcm9kZGluZy4KLSsjIFNldCB0aGlzIHRvIHRoZSBlbXB0eSBzdHJpbmcgaWYgeW91ciBF Q0wgY2FuIGxvYWQgbWF4aW1hIHdpdGhvdXQKLSsjIGZ1cnRoZXIgcHJvZGRpbmcuCi0gTUFYSU1B X0ZBUyA9ICJAU0FHRV9NQVhJTUFfRkFTQCIucmVwbGFjZSgnJHtwcmVmaXh9JywgU0FHRV9MT0NB TCkKLSAKLSAjIERlbGV0ZSB0aGlzIGxpbmUgaWYgeW91ciBFQ0wgY2FuIGxvYWQgS2Vuem8gd2l0 aG91dCBmdXJ0aGVyIHByb2RkaW5nLgotZGlmZiAtLWdpdCBhL3NyYy9iaW4vc2FnZS1lbnYgYi9z cmMvYmluL3NhZ2UtZW52Ci1pbmRleCBhN2RhNjBkZjI4Zi4uMTNiNTRmYTdlOTIgMTAwNjQ0Ci0t LS0gYS9zcmMvYmluL3NhZ2UtZW52Ci0rKysgYi9zcmMvYmluL3NhZ2UtZW52Ci1AQCAtNDQwLDkg KzQ0MCw2IEBAIGlmIFsgLWQgIiRET1RfU0FHRSIgXSA7IHRoZW4KLSAgICAgZmkKLSBmaQotIAot LWlmIFsgLW4gIiRTQUdFX0xPQ0FMIiBdOyB0aGVuCi0tICAgIGV4cG9ydCBNQVhJTUFfUFJFRklY PSIkU0FHRV9MT0NBTCIKLS1maQotIGV4cG9ydCBNQVhJTUFfVVNFUkRJUj0iJERPVF9TQUdFL21h eGltYSIKLSAKLSBpZiBbIC1uICIkU0FHRV9MT0NBTCIgXTsgdGhlbgotZGlmZiAtLWdpdCBhL3Ny Yy9zYWdlL2NhbGN1bHVzL2NhbGN1bHVzLnB5IGIvc3JjL3NhZ2UvY2FsY3VsdXMvY2FsY3VsdXMu cHkKLWluZGV4IGRhZTM4MDE4MGFjLi5lZThmNjMyZTk0YyAxMDA2NDQKLS0tLSBhL3NyYy9zYWdl L2NhbGN1bHVzL2NhbGN1bHVzLnB5Ci0rKysgYi9zcmMvc2FnZS9jYWxjdWx1cy9jYWxjdWx1cy5w eQotQEAgLTEzNiwxMCArMTM2LDExIEBACi0gICAgIFsgICAgICAgICAgMS8yKihlXigyKnNxcnQo eCkpICsgMSkqZV4oeCAtIHNxcnQoeCkpIDEvMiooeCplXigyKnNxcnQoeCkpIC0geCkqc3FydCh4 KSplXih4IC0gc3FydCh4KSldCi0gICAgIFsgIDEvMiooZV4oMipzcXJ0KHgpKSAtIDEpKmVeKHgg LSBzcXJ0KHgpKS94XigzLzIpICAgICAgICAgICAxLzIqKGVeKDIqc3FydCh4KSkgKyAxKSplXih4 IC0gc3FydCh4KSldCi0gCi0tQW5kIGNvbXBsZXggZXhwb25lbnRpYXRpb24gd29ya3Mgbm93OjoK LStDb21wbGV4IGV4cG9uZW50aWF0aW9uIHdvcmtzLCBidXQgbWF5IHJlcXVpcmUgYSBwYXRjaGVk IHZlcnNpb24gb2YKLSttYXhpbWEgKDp0cmFjOmAzMjg5OGApIGZvciBub3c6OgotIAotICAgICBz YWdlOiBNID0gaSptYXRyaXgoW1twaV1dKQotLSAgICBzYWdlOiBlXk0KLSsgICAgc2FnZTogZV5N ICAjIG5vdCB0ZXN0ZWQsIHJlcXVpcmVzIHBhdGNoZWQgbWF4aW1hCi0gICAgIFstMV0KLSAgICAg c2FnZTogTSA9IGkqbWF0cml4KFtbcGksMF0sWzAsMipwaV1dKQotICAgICBzYWdlOiBlXk0KLUBA IC0xMTg2LDggKzExODcsMTggQEAgZGVmIGxpbWl0KGV4LCBkaXI9Tm9uZSwgdGF5bG9yPUZhbHNl LCBhbGdvcml0aG09J21heGltYScsICoqYXJndik6Ci0gICAgICAgICBlCi0gICAgICAgICBzYWdl OiBmLmxpbWl0KHg9NSkKLSAgICAgICAgIDc3NzYvMzEyNQotLSAgICAgICAgc2FnZTogZi5saW1p dCh4PTEuMikKLSsKLSsgICAgRG9tYWluIHRvIHJlYWwsIGEgcmVncmVzc2lvbiBpbiA1LjQ2LjAs IHNlZSBodHRwczovL3NmLm5ldC9wL21heGltYS9idWdzLzQxMzggOjoKLSsKLSsgICAgICAgIHNh Z2U6IG1heGltYV9jYWxjdWx1cy5ldmFsKCJkb21haW46cmVhbCIpCi0rICAgICAgICAuLi4KLSsg ICAgICAgIHNhZ2U6IGYubGltaXQoeD0xLjIpLm4oKQotICAgICAgICAgMi4wNjk2MTU3NTQ2Ny4u LgotKyAgICAgICAgc2FnZTogbWF4aW1hX2NhbGN1bHVzLmV2YWwoImRvbWFpbjpjb21wbGV4Iik7 Ci0rICAgICAgICAuLi4KLSsKLSsgICAgT3RoZXJ3aXNlLCBpdCB3b3JrcyA6OgotKwotICAgICAg ICAgc2FnZTogZi5saW1pdCh4PUksIHRheWxvcj1UcnVlKQotICAgICAgICAgKC1JICsgMSleSQot ICAgICAgICAgc2FnZTogZih4PTEuMikKLUBAIC0xMjE1LDcgKzEyMjYsNyBAQCBkZWYgbGltaXQo ZXgsIGRpcj1Ob25lLCB0YXlsb3I9RmFsc2UsIGFsZ29yaXRobT0nbWF4aW1hJywgKiphcmd2KToK LSAgICAgV2l0aCB0aGlzIGV4YW1wbGUsIE1heGltYSBpcyBsb29raW5nIGZvciBhIExPVCBvZiBp bmZvcm1hdGlvbjo6Ci0gCi0gICAgICAgICBzYWdlOiBhc3N1bWUoYT4wKQotLSAgICAgICAgc2Fn ZTogbGltaXQoeF5hLHg9MCkKLSsgICAgICAgIHNhZ2U6IGxpbWl0KHheYSx4PTApICAjIHJhbmRv bSAtIG1heGltYSA1LjQ2LjAgZG9lcyBub3QgbmVlZCBleHRyYSBhc3N1bXB0aW9uCi0gICAgICAg ICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci0gICAgICAgICAuLi4KLSAgICAg ICAgIFZhbHVlRXJyb3I6IENvbXB1dGF0aW9uIGZhaWxlZCBzaW5jZSBNYXhpbWEgcmVxdWVzdGVk IGFkZGl0aW9uYWwKLUBAIC0xMjI0LDcgKzEyMzUsNyBAQCBkZWYgbGltaXQoZXgsIGRpcj1Ob25l LCB0YXlsb3I9RmFsc2UsIGFsZ29yaXRobT0nbWF4aW1hJywgKiphcmd2KToKLSAgICAgICAgICBt b3JlIGRldGFpbHMpCi0gICAgICAgICBJcyBhIGFuIGludGVnZXI/Ci0gICAgICAgICBzYWdlOiBh c3N1bWUoYSwnaW50ZWdlcicpCi0tICAgICAgICBzYWdlOiBsaW1pdCh4XmEsIHg9MCkKLSsgICAg ICAgIHNhZ2U6IGxpbWl0KHheYSwgeD0wKSAgIyByYW5kb20gLSBtYXhpbWEgNS40Ni4wIGRvZXMg bm90IG5lZWQgZXh0cmEgYXNzdW1wdGlvbgotICAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2Vu dCBjYWxsIGxhc3QpOgotICAgICAgICAgLi4uCi0gICAgICAgICBWYWx1ZUVycm9yOiBDb21wdXRh dGlvbiBmYWlsZWQgc2luY2UgTWF4aW1hIHJlcXVlc3RlZCBhZGRpdGlvbmFsCi1AQCAtMjI1MSwx MCArMjI2MiwxMCBAQCBkZWYgc3ltYm9saWNfZXhwcmVzc2lvbl9mcm9tX21heGltYV9zdHJpbmco eCwgZXF1YWxzX3N1Yj1GYWxzZSwgbWF4aW1hPW1heGltYSk6Ci0gICAgICAgICBUcnVlCi0gICAg ICAgICBzYWdlOiBzZWZtcygieCAjIDMiKSA9PSBTUih4ICE9IDMpCi0gICAgICAgICBUcnVlCi0t ICAgICAgICBzYWdlOiBzb2x2ZShbeCAhPSA1XSwgeCkKLS0gICAgICAgIFtbeCAtIDUgIT0gMF1d Ci0rICAgICAgICBzYWdlOiBzb2x2ZShbeCAhPSA1XSwgeCkgaW4gW1tbeCAtIDUgIT0gMF1dLCBb W3ggPCA1XSwgWzUgPCB4XV1dCi0rICAgICAgICBUcnVlCi0gICAgICAgICBzYWdlOiBzb2x2ZShb Mip4PT0zLCB4ICE9IDVdLCB4KQotLSAgICAgICAgW1t4ID09ICgzLzIpLCAoLTcvMikgIT0gMF1d Ci0rICAgICAgICBbW3ggPT0gKDMvMikuLi4KLSAKLSAgICAgTWFrZSBzdXJlIHRoYXQgd2UgZG9u J3QgYWNjaWRlbnRhbGx5IHBpY2sgdXAgdmFyaWFibGVzIGluIHRoZSBtYXhpbWEgbmFtZXNwYWNl ICg6dHJhYzpgODczNGApOjoKLSAKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9mdW5jdGlvbnMvZXhw X2ludGVncmFsLnB5IGIvc3JjL3NhZ2UvZnVuY3Rpb25zL2V4cF9pbnRlZ3JhbC5weQotaW5kZXgg ZTZjODg4YzY0YjYuLmYzMTRlNTI1MTQ1IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvZnVuY3Rpb25z L2V4cF9pbnRlZ3JhbC5weQotKysrIGIvc3JjL3NhZ2UvZnVuY3Rpb25zL2V4cF9pbnRlZ3JhbC5w eQotQEAgLTYwMSw4ICs2MDEsOCBAQCBjbGFzcyBGdW5jdGlvbl9sb2dfaW50ZWdyYWxfb2Zmc2V0 KEJ1aWx0aW5GdW5jdGlvbik6Ci0gICAgICAgICAxL2xvZyh4KQotICAgICAgICAgc2FnZTogZi5p bnRlZ3JhdGUoeCkKLSAgICAgICAgIC14KmxvZ19pbnRlZ3JhbCgyKSArIHgqbG9nX2ludGVncmFs KHgpIC0gRWkoMipsb2coeCkpCi0tICAgICAgICBzYWdlOiBMaSh4KS5pbnRlZ3JhdGUoeCwyLjAs NC41KQotLSAgICAgICAgLTIuNSpsb2dfaW50ZWdyYWwoMikgKyA1Ljc5OTMyMTE0NzQxMTMzNAot KyAgICAgICAgc2FnZTogTGkoeCkuaW50ZWdyYXRlKHgsMi4wLDQuNSkubihkaWdpdHM9MTApCi0r ICAgICAgICAzLjE4NjQxMTY5NwotICAgICAgICAgc2FnZTogTihmLmludGVncmF0ZSh4LDIuMCwz LjApKSAgICMgYWJzIHRvbCAxZS0xNQotICAgICAgICAgMC42MDE2MjE3ODU4NjA1ODcKLSAKLWRp ZmYgLS1naXQgYS9zcmMvc2FnZS9pbnRlcmZhY2VzL2V4cGVjdC5weSBiL3NyYy9zYWdlL2ludGVy ZmFjZXMvZXhwZWN0LnB5Ci1pbmRleCA2OGFlNzE1ZTRjMy4uODRhZGYwMzQxYjUgMTAwNjQ0Ci0t LS0gYS9zcmMvc2FnZS9pbnRlcmZhY2VzL2V4cGVjdC5weQotKysrIGIvc3JjL3NhZ2UvaW50ZXJm YWNlcy9leHBlY3QucHkKLUBAIC02MjAsNyArNjIwLDcgQEAgZGVmIHF1aXQoc2VsZiwgdmVyYm9z ZT1GYWxzZSk6Ci0gCi0gICAgICAgICAgICAgc2FnZTogYSA9IG1heGltYSgneScpCi0gICAgICAg ICAgICAgc2FnZTogbWF4aW1hLnF1aXQodmVyYm9zZT1UcnVlKQotLSAgICAgICAgICAgIEV4aXRp bmcgTWF4aW1hIHdpdGggUElEIC4uLiBydW5uaW5nIC4uLi9iaW4vbWF4aW1hLi4uCi0rICAgICAg ICAgICAgRXhpdGluZyBNYXhpbWEgd2l0aCBQSUQgLi4uIHJ1bm5pbmcgLi4ubWF4aW1hLi4uCi0g ICAgICAgICAgICAgc2FnZTogYS5fY2hlY2tfdmFsaWQoKQotICAgICAgICAgICAgIFRyYWNlYmFj ayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICAgICAgICAgICAuLi4KLWRpZmYgLS1naXQg YS9zcmMvc2FnZS9pbnRlcmZhY2VzL21heGltYS5weSBiL3NyYy9zYWdlL2ludGVyZmFjZXMvbWF4 aW1hLnB5Ci1pbmRleCAyN2IxZTk4YTZhYy4uNDgyOTU2MGY5OGIgMTAwNjQ0Ci0tLS0gYS9zcmMv c2FnZS9pbnRlcmZhY2VzL21heGltYS5weQotKysrIGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9tYXhp bWEucHkKLUBAIC02MjIsMTEgKzYyMiw2IEBAIGRlZiBfc3RhcnQoc2VsZik6Ci0gICAgICAgICAg ICAgc2FnZTogbS5pc19ydW5uaW5nKCkKLSAgICAgICAgICAgICBUcnVlCi0gCi0tICAgICAgICBU ZXN0IHRoYXQgd2UgY2FuIHVzZSBtb3JlIHRoYW4gMjU2TUIgUkFNIChzZWUgOnRyYWM6YDY3NzJg KTo6Ci0tCi0tICAgICAgICAgICAgc2FnZTogYSA9IG1heGltYSgxMCleKDEwXjUpCi0tICAgICAg ICAgICAgc2FnZTogYiA9IGFeNjAwICAgICAgICAgICAgICAjIGxvbmcgdGltZSAtLSBhYm91dCAx MC0xNSBzZWNvbmRzCi0tCi0gICAgICAgICAiIiIKLSAgICAgICAgIEV4cGVjdC5fc3RhcnQoc2Vs ZikKLSAgICAgICAgIHNlbGYuX3NlbmRsaW5lKHIiOmxpc3AgKGRlZnVuIHRleC1kZXJpdmF0aXZl ICh4IGwgcikgKHRleCAoaWYgJGRlcml2YWJicmV2ICh0ZXgtZGFiYnJldiB4KSAodGV4LWQgeCAn XFxwYXJ0aWFsKSkgbCByIGxvcCByb3AgKSkiKQotQEAgLTYzNCw5ICs2MjksNiBAQCBkZWYgX3N0 YXJ0KHNlbGYpOgotICAgICAgICAgIyBEb24ndCB1c2UgISBmb3IgZmFjdG9yaWFscyAoIzExNTM5 KQotICAgICAgICAgc2VsZi5fc2VuZGxpbmUoIjpsaXNwIChyZW1wcm9wICdtZmFjdG9yaWFsICdn cmluZCkiKQotIAotLSAgICAgICAgIyBSZW1vdmUgbGltaXQgb24gdGhlIG1heCBoZWFwc2l6ZSAo c2luY2Ugb3RoZXJ3aXNlIGl0IGRlZmF1bHRzCi0tICAgICAgICAjIHRvIDI1Nk1CIHdpdGggRUNM KS4KLS0gICAgICAgIHNlbGYuX3NlbmRsaW5lKCI6bGlzcCAoZXh0OnNldC1saW1pdCAnZXh0Omhl YXAtc2l6ZSAwKSIpCi0gICAgICAgICBzZWxmLl9ldmFsX2xpbmUoJzA7JykKLSAKLSAgICAgICAg ICMgc2V0IHJhbmRvbSBzZWVkCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvaW50ZXJmYWNlcy9tYXhp bWFfbGliLnB5IGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9tYXhpbWFfbGliLnB5Ci1pbmRleCBjMjYz YWM2NWYwMi4uYmJhODUwNGFhOTIgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9pbnRlcmZhY2VzL21h eGltYV9saWIucHkKLSsrKyBiL3NyYy9zYWdlL2ludGVyZmFjZXMvbWF4aW1hX2xpYi5weQotQEAg LTkzNCw4ICs5MzQsMTUgQEAgZGVmIHNyX2xpbWl0KHNlbGYsIGV4cHIsIHYsIGEsIGRpcj1Ob25l KToKLSAgICAgICAgICAgICBlCi0gICAgICAgICAgICAgc2FnZTogbGltaXQoZix4ID0gNSkKLSAg ICAgICAgICAgICA3Nzc2LzMxMjUKLS0gICAgICAgICAgICBzYWdlOiBsaW1pdChmLHggPSAxLjIp Ci0rCi0rICAgICAgICBEb21haW4gdG8gcmVhbCwgYSByZWdyZXNzaW9uIGluIDUuNDYuMCwgc2Vl IGh0dHBzOi8vc2YubmV0L3AvbWF4aW1hL2J1Z3MvNDEzOCA6OgotKwotKyAgICAgICAgICAgIHNh Z2U6IG1heGltYV9jYWxjdWx1cy5ldmFsKCJkb21haW46cmVhbCIpCi0rICAgICAgICAgICAgLi4u Ci0rICAgICAgICAgICAgc2FnZTogbGltaXQoZix4ID0gMS4yKS5uKCkKLSAgICAgICAgICAgICAy LjA2OTYxNTc1NDY3Li4uCi0rICAgICAgICAgICAgc2FnZTogbWF4aW1hX2NhbGN1bHVzLmV2YWwo ImRvbWFpbjpjb21wbGV4Iik7Ci0rICAgICAgICAgICAgLi4uCi0gICAgICAgICAgICAgc2FnZTog dmFyKCdhJykKLSAgICAgICAgICAgICBhCi0gICAgICAgICAgICAgc2FnZTogbGltaXQoeF5hLHg9 MCkKLUBAIC05NDcsNyArOTU0LDcgQEAgZGVmIHNyX2xpbWl0KHNlbGYsIGV4cHIsIHYsIGEsIGRp cj1Ob25lKToKLSAgICAgICAgICAgICBmb3IgbW9yZSBkZXRhaWxzKQotICAgICAgICAgICAgIElz IGEgcG9zaXRpdmUsIG5lZ2F0aXZlIG9yIHplcm8/Ci0gICAgICAgICAgICAgc2FnZTogYXNzdW1l KGE+MCkKLS0gICAgICAgICAgICBzYWdlOiBsaW1pdCh4XmEseD0wKQotKyAgICAgICAgICAgIHNh Z2U6IGxpbWl0KHheYSx4PTApICAjIHJhbmRvbSAtIG5vdCBuZWVkZWQgZm9yIG1heGltYSA1LjQ2 LjAKLSAgICAgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci0gICAg ICAgICAgICAgLi4uCi0gICAgICAgICAgICAgVmFsdWVFcnJvcjogQ29tcHV0YXRpb24gZmFpbGVk IC4uLgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL21hdHJpeC9tYXRyaXgyLnB5eCBiL3NyYy9zYWdl L21hdHJpeC9tYXRyaXgyLnB5eAotaW5kZXggZTJlNjQ0OWRmYTkuLjE1OTE0YjBiZTNlIDEwMDY0 NAotLS0tIGEvc3JjL3NhZ2UvbWF0cml4L21hdHJpeDIucHl4Ci0rKysgYi9zcmMvc2FnZS9tYXRy aXgvbWF0cml4Mi5weXgKLUBAIC0xNTQyNSw5ICsxNTQyNSwxMCBAQCBjZGVmIGNsYXNzIE1hdHJp eChNYXRyaXgxKToKLSAKLSAgICAgICAgIFRFU1RTOgotIAotLSAgICAgICAgQ2hlY2sgdGhhdCBz cGFyc2UgbWF0cmljZXMgYXJlIGhhbmRsZWQgY29ycmVjdGx5ICg6dHJhYzpgMjg5MzVgKTo6Ci0r ICAgICAgICBTcGFyc2UgbWF0cmljZXMgYXJlIGhhbmRsZWQgY29ycmVjdGx5ICg6dHJhYzpgMjg5 MzVgKSwgYnV0IG1heQotKyAgICAgICAgcmVxdWlyZSBhIHBhdGNoZWQgdmVyc2lvbiBvZiBtYXhp bWEgKDp0cmFjOmAzMjg5OGApIGZvciBub3c6OgotIAotLSAgICAgICAgICAgIHNhZ2U6IG1hdHJp eC5kaWFnb25hbChbMF0sIHNwYXJzZT1UcnVlKS5leHAoKQotKyAgICAgICAgICAgIHNhZ2U6IG1h dHJpeC5kaWFnb25hbChbMF0sIHNwYXJzZT1UcnVlKS5leHAoKSAgIyBub3QgdGVzdGVkLCByZXF1 aXJlcyBwYXRjaGVkIG1heGltYQotICAgICAgICAgICAgIFsxXQotICAgICAgICAgICAgIHNhZ2U6 IG1hdHJpeC56ZXJvKENCRiwgMiwgc3BhcnNlPVRydWUpLmV4cCgpCi0gICAgICAgICAgICAgWzEu MDAwMDAwMDAwMDAwMDAwICAgICAgICAgICAgICAgICAwXQotZGlmZiAtLWdpdCBhL3NyYy9zYWdl L21hdHJpeC9tYXRyaXhfc3ltYm9saWNfZGVuc2UucHl4IGIvc3JjL3NhZ2UvbWF0cml4L21hdHJp eF9zeW1ib2xpY19kZW5zZS5weXgKLWluZGV4IDE5Y2E1Yzg1Y2IyLi41OGEyNWUwMDJmNiAxMDA2 NDQKLS0tLSBhL3NyYy9zYWdlL21hdHJpeC9tYXRyaXhfc3ltYm9saWNfZGVuc2UucHl4Ci0rKysg Yi9zcmMvc2FnZS9tYXRyaXgvbWF0cml4X3N5bWJvbGljX2RlbnNlLnB5eAotQEAgLTQwMiw3ICs0 MDIsOCBAQCBjZGVmIGNsYXNzIE1hdHJpeF9zeW1ib2xpY19kZW5zZShNYXRyaXhfZ2VuZXJpY19k ZW5zZSk6Ci0gICAgICAgICAgICAgWzEvMiooZV4oMip4KSArIDEpKmVeKC14KSAxLzIqKGVeKDIq eCkgLSAxKSplXigteCldCi0gICAgICAgICAgICAgWzEvMiooZV4oMip4KSAtIDEpKmVeKC14KSAx LzIqKGVeKDIqeCkgKyAxKSplXigteCldCi0gCi0tICAgICAgICBFeHAgd29ya3Mgb24gMHgwIGFu ZCAxeDEgbWF0cmljZXM6OgotKyAgICAgICAgRXhwb25lbnRpYXRpb24gd29ya3Mgb24gMHgwIGFu ZCAxeDEgbWF0cmljZXMsIGJ1dCB0aGUgMXgxIGV4YW1wbGUKLSsgICAgICAgIHJlcXVpcmVzIGEg cGF0Y2hlZCB2ZXJzaW9uIG9mIG1heGltYSAoOnRyYWM6YDMyODk4YCkgZm9yIG5vdzo6Ci0gCi0g ICAgICAgICAgICAgc2FnZTogbSA9IG1hdHJpeChTUiwwLFtdKTsgbQotICAgICAgICAgICAgIFtd Ci1AQCAtNDEwLDcgKzQxMSw3IEBAIGNkZWYgY2xhc3MgTWF0cml4X3N5bWJvbGljX2RlbnNlKE1h dHJpeF9nZW5lcmljX2RlbnNlKToKLSAgICAgICAgICAgICBbXQotICAgICAgICAgICAgIHNhZ2U6 IG0gPSBtYXRyaXgoU1IsMSxbMl0pOyBtCi0gICAgICAgICAgICAgWzJdCi0tICAgICAgICAgICAg c2FnZTogbS5leHAoKQotKyAgICAgICAgICAgIHNhZ2U6IG0uZXhwKCkgICMgbm90IHRlc3RlZCwg cmVxdWlyZXMgcGF0Y2hlZCBtYXhpbWEKLSAgICAgICAgICAgICBbZV4yXQotIAotICAgICAgICAg Q29tbXV0aW5nIG1hdHJpY2VzIGBtLCBuYCBoYXZlIHRoZSBwcm9wZXJ0eSB0aGF0Ci1AQCAtNDUx LDcgKzQ1Miw2IEBAIGNkZWYgY2xhc3MgTWF0cml4X3N5bWJvbGljX2RlbnNlKE1hdHJpeF9nZW5l cmljX2RlbnNlKToKLSAgICAgICAgICAgICBbICAgICAgICAgICAgICAgICAgICAgICAwIDEvMioo ZV4oMip4KSArIDEpKmVeKC14KSAxLzIqKGVeKDIqeCkgLSAxKSplXigteCkgICAgICAgICAgICAg ICAgICAgICAgICAwXQotICAgICAgICAgICAgIFsgICAgICAgICAgICAgICAgICAgICAgIDAgMS8y KihlXigyKngpIC0gMSkqZV4oLXgpIDEvMiooZV4oMip4KSArIDEpKmVeKC14KSAgICAgICAgICAg ICAgICAgICAgICAgIDBdCi0gICAgICAgICAgICAgWzEvMiooZV4oMip4KSAtIDEpKmVeKC14KSAg ICAgICAgICAgICAgICAgICAgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAwIDEvMiooZV4o Mip4KSArIDEpKmVeKC14KV0KLS0KLSAgICAgICAgICIiIgotICAgICAgICAgaWYgbm90IHNlbGYu aXNfc3F1YXJlKCk6Ci0gICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiZXhwIG9ubHkgZGVm aW5lZCBvbiBzcXVhcmUgbWF0cmljZXMiKQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3N5bWJvbGlj L2ludGVncmF0aW9uL2ludGVncmFsLnB5IGIvc3JjL3NhZ2Uvc3ltYm9saWMvaW50ZWdyYXRpb24v aW50ZWdyYWwucHkKLWluZGV4IGM4MmU5ZWQ3M2MzLi5lODRhZDM1N2VlMiAxMDA2NDQKLS0tLSBh L3NyYy9zYWdlL3N5bWJvbGljL2ludGVncmF0aW9uL2ludGVncmFsLnB5Ci0rKysgYi9zcmMvc2Fn ZS9zeW1ib2xpYy9pbnRlZ3JhdGlvbi9pbnRlZ3JhbC5weQotQEAgLTc0MSwxNCArNzQxLDE0IEBA IGRlZiBpbnRlZ3JhdGUoZXhwcmVzc2lvbiwgdj1Ob25lLCBhPU5vbmUsIGI9Tm9uZSwgYWxnb3Jp dGhtPU5vbmUsIGhvbGQ9RmFsc2UpOgotIAotICAgICAgICAgc2FnZTogXyA9IHZhcigneCx5JykK LSAgICAgICAgIHNhZ2U6IGYgPSBsb2coeF4yK3leMikKLS0gICAgICAgIHNhZ2U6IHJlcyA9IGlu dGVncmFsKGYseCwwLjAwMDE0MTQsIDEuKTsgcmVzCi0rICAgICAgICBzYWdlOiByZXMgPSBpbnRl Z3JhbChmLHgsMTQxNC8xMF43LCAxKTsgcmVzCi0gICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVj ZW50IGNhbGwgbGFzdCk6Ci0gICAgICAgICAuLi4KLS0gICAgICAgIFZhbHVlRXJyb3I6IENvbXB1 dGF0aW9uIGZhaWxlZCBzaW5jZSBNYXhpbWEgcmVxdWVzdGVkIGFkZGl0aW9uYWwgY29uc3RyYWlu dHM7IHVzaW5nIHRoZSAnYXNzdW1lJyBjb21tYW5kIGJlZm9yZSBldmFsdWF0aW9uICptYXkqIGhl bHAgKGV4YW1wbGUgb2YgbGVnYWwgc3ludGF4IGlzICdhc3N1bWUoNTAwMTUxMDQqeV4yLTUwMDE1 MTAzPjApJywgc2VlIGBhc3N1bWU/YCBmb3IgbW9yZSBkZXRhaWxzKQotLSAgICAgICAgSXMgNTAw MTUxMDQqeV4yLTUwMDE1MTAzIHBvc2l0aXZlLCBuZWdhdGl2ZSBvciB6ZXJvPwotKyAgICAgICAg VmFsdWVFcnJvcjogQ29tcHV0YXRpb24gZmFpbGVkIHNpbmNlIE1heGltYSByZXF1ZXN0ZWQgYWRk aXRpb25hbCBjb25zdHJhaW50czsgdXNpbmcgdGhlICdhc3N1bWUnIGNvbW1hbmQgYmVmb3JlIGV2 YWx1YXRpb24gKm1heSogaGVscCAuLi4KLSsgICAgICAgIElzIC4uLiBwb3NpdGl2ZSwgbmVnYXRp dmUgb3IgemVybz8KLSAgICAgICAgIHNhZ2U6IGFzc3VtZSh5PjEpCi0tICAgICAgICBzYWdlOiBy ZXMgPSBpbnRlZ3JhbChmLHgsMC4wMDAxNDE0LCAxLik7IHJlcwotLSAgICAgICAgMip5KmFyY3Rh bigxLjAveSkgLSAyKnkqYXJjdGFuKDAuMDAwMTQxNC95KSArIDEuMCpsb2coMS4wKnleMiArIDEu MCkgLSAwLjAwMDE0MTQqbG9nKDEuMCp5XjIgKyAxLjk5OTM5NTk5OTk5OTk5OTdlLTA4KSAtIDEu OTk5NzE3MgotKyAgICAgICAgc2FnZTogcmVzID0gaW50ZWdyYWwoZix4LDE0MTQvMTBeNywgMSk7 IHJlcwotKyAgICAgICAgLTIqeSphcmN0YW4oNzA3LzUwMDAwMDAveSkgKyAyKnkqYXJjdGFuKDEv eSkgKyBsb2coeV4yICsgMSkgLSA3MDcvNTAwMDAwMCpsb2coeV4yICsgNDk5ODQ5LzI1MDAwMDAw MDAwMDAwKSAtIDQ5OTkyOTMvMjUwMDAwMAotICAgICAgICAgc2FnZTogbnJlcyA9IG51bWVyaWNh bF9pbnRlZ3JhbChmLnN1YnMoeT0yKSwgMC4wMDAxNDE0LCAxLik7IG5yZXMKLSAgICAgICAgICgx LjQ2MzgzMjMyNjQxNDQuLi4sIDEuNjI1MTgwMzUyOTc1OS4uLmUtMTQpCi0gICAgICAgICBzYWdl OiByZXMuc3Vicyh5PTIpLm4oKQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3N5bWJvbGljL3JlbGF0 aW9uLnB5IGIvc3JjL3NhZ2Uvc3ltYm9saWMvcmVsYXRpb24ucHkKLWluZGV4IDk0ODEzMzE1MTgx Li5hNzJhYjU0N2M3NiAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3N5bWJvbGljL3JlbGF0aW9uLnB5 Ci0rKysgYi9zcmMvc2FnZS9zeW1ib2xpYy9yZWxhdGlvbi5weQotQEAgLTE3ODcsOCArMTc4Nyw4 IEBAIGRlZiBzb2x2ZV9pbmVxX2ZvdXJpZXIoaW5lcSwgdmFycz1Ob25lKToKLSAgICAgICAgIHNh Z2U6IHkgPSB2YXIoJ3knKQotICAgICAgICAgc2FnZTogc29sdmVfaW5lcV9mb3VyaWVyKFt4K3k8 OSx4LXk+NF0sW3gseV0pCi0gICAgICAgICBbW3kgKyA0IDwgeCwgeCA8IC15ICsgOSwgeSA8ICg1 LzIpXV0KLS0gICAgICAgIHNhZ2U6IHNvbHZlX2luZXFfZm91cmllcihbeCt5PDkseC15PjRdLFt5 LHhdKQotLSAgICAgICAgW1t5IDwgbWluKHggLSA0LCAteCArIDkpXV0KLSsgICAgICAgIHNhZ2U6 IHNvbHZlX2luZXFfZm91cmllcihbeCt5PDkseC15PjRdLFt5LHhdKVswXVswXSh4PTQyKQotKyAg ICAgICAgeSA8IC0zMwotIAotICAgICAgICAgc2FnZTogc29sdmVfaW5lcV9mb3VyaWVyKFt4XjI+ PTBdKQotICAgICAgICAgW1t4IDwgK0luZmluaXR5XV0KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2Fn ZW1hdGgvcGF0Y2hlcy8zNTYzNS1zeW1weV8xLjEyLnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0aC9w YXRjaGVzLzM1NjM1LXN5bXB5XzEuMTIucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDljZmM2OWMyYWRiNmYuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC9w YXRjaGVzLzM1NjM1LXN5bXB5XzEuMTIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCww IEBACi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY2FsY3VsdXMvY2FsY3VsdXMucHkgYi9zcmMvc2Fn ZS9jYWxjdWx1cy9jYWxjdWx1cy5weQotaW5kZXggZGFlMzgwMTgwYWMuLmNhM2M1OWU2M2QyIDEw MDY0NAotLS0tIGEvc3JjL3NhZ2UvY2FsY3VsdXMvY2FsY3VsdXMucHkKLSsrKyBiL3NyYy9zYWdl L2NhbGN1bHVzL2NhbGN1bHVzLnB5Ci1AQCAtMTY5MCw4ICsxNjkwLDExIEBAIGRlZiBsYXBsYWNl KGV4LCB0LCBzLCBhbGdvcml0aG09J21heGltYScpOgotIAotICAgICBUZXN0aW5nIFN5bVB5OjoK LSAKLS0gICAgICAgIHNhZ2U6IGxhcGxhY2UodF5uLCB0LCBzLCBhbGdvcml0aG09J3N5bXB5JykK LS0gICAgICAgIChnYW1tYShuICsgMSkvKHMqc15uKSwgMCwgcmUobikgPiAtMSkKLSsgICAgICAg IHNhZ2U6IEYsIGEsIGNvbmQgPSBsYXBsYWNlKHRebiwgdCwgcywgYWxnb3JpdGhtPSdzeW1weScp Ci0rICAgICAgICBzYWdlOiBhLCBjb25kCi0rICAgICAgICAoMCwgcmUobikgPiAtMSkKLSsgICAg ICAgIHNhZ2U6IEYuc2ltcGxpZnkoKQotKyAgICAgICAgc14oLW4gLSAxKSpnYW1tYShuICsgMSkK LSAKLSAgICAgVGVzdGluZyBNYXhpbWE6OgotIAotQEAgLTE3MDAsMTcgKzE3MDMsMTkgQEAgZGVm IGxhcGxhY2UoZXgsIHQsIHMsIGFsZ29yaXRobT0nbWF4aW1hJyk6Ci0gCi0gICAgIENoZWNrIHRo YXQgOnRyYWM6YDI0MjEyYCBpcyBmaXhlZDo6Ci0gCi0tICAgICAgICBzYWdlOiBsYXBsYWNlKGNv cyh0XjIpLCB0LCBzLCBhbGdvcml0aG09J3N5bXB5JykKLS0gICAgICAgICgtMS8yKnNxcnQocGkp KihzcXJ0KDIpKmNvcygxLzQqc14yKSpmcmVzbmVsX3NpbigxLzIqc3FydCgyKSpzL3NxcnQocGkp KSAtCi0tICAgICAgICBzcXJ0KDIpKmZyZXNuZWxfY29zKDEvMipzcXJ0KDIpKnMvc3FydChwaSkp KnNpbigxLzQqc14yKSAtIGNvcygxLzQqcGkgKyAxLzQqc14yKSksCi0tICAgICAgICAwLCBUcnVl KQotKyAgICAgICAgc2FnZTogRiwgYSwgY29uZCA9IGxhcGxhY2UoY29zKHReMiksIHQsIHMsIGFs Z29yaXRobT0nc3ltcHknKQotKyAgICAgICAgc2FnZTogYSwgY29uZAotKyAgICAgICAgKDAsIFRy dWUpCi0rICAgICAgICBzYWdlOiBGLl9zeW1weV8oKS5zaW1wbGlmeSgpCi0rICAgICAgICBzcXJ0 KHBpKSooc3FydCgyKSpzaW4ocyoqMi80KSpmcmVzbmVsYyhzcXJ0KDIpKnMvKDIqc3FydChwaSkp KSAtCi0rICAgICAgICBzcXJ0KDIpKmNvcyhzKioyLzQpKmZyZXNuZWxzKHNxcnQoMikqcy8oMipz cXJ0KHBpKSkpICsgY29zKHMqKjIvNCArIHBpLzQpKS8yCi0gCi0gICAgIFRlc3RpbmcgcmVzdWx0 IGZyb20gU3ltUHkgdGhhdCBTYWdlIGRvZXNuJ3Qga25vdyBob3cgdG8gaGFuZGxlOjoKLSAKLSAg ICAgICAgIHNhZ2U6IGxhcGxhY2UoY29zKC0xL3QpLCB0LCBzLCBhbGdvcml0aG09J3N5bXB5JykK LSAgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICAgICAgIC4u LgotLSAgICAgICAgQXR0cmlidXRlRXJyb3I6IFVuYWJsZSB0byBjb252ZXJ0IFN5bVB5IHJlc3Vs dCAoPW1laWplcmcoKCgpLCAoKSksICgoLTEvMiwgMCwgMS8yKSwgKDAsKSksIHMqKjIvMTYpLzQp IGludG8gU2FnZQotKyAgICAgICAgQXR0cmlidXRlRXJyb3I6IFVuYWJsZSB0byBjb252ZXJ0IFN5 bVB5IHJlc3VsdCAoPW1laWplcmcoKCgpLCAoKSksICgoLTEvMiwgMCwgMS8yKSwgKDAsKSksIC4u LikvNCkgaW50byBTYWdlCi0gICAgICIiIgotICAgICBpZiBub3QgaXNpbnN0YW5jZShleCwgKEV4 cHJlc3Npb24sIEZ1bmN0aW9uKSk6Ci0gICAgICAgICBleCA9IFNSKGV4KQotQEAgLTE4MTcsOCAr MTgyMiw4IEBAIGRlZiBpbnZlcnNlX2xhcGxhY2UoZXgsIHMsIHQsIGFsZ29yaXRobT0nbWF4aW1h Jyk6Ci0gCi0gICAgIFRyYW5zZm9ybSBhbiBleHByZXNzaW9uIGludm9sdmluZyBhIHRpbWUtc2hp ZnQsIHZpYSBTeW1QeTo6Ci0gCi0tICAgICAgICBzYWdlOiBpbnZlcnNlX2xhcGxhY2UoMS9zXjIq ZXhwKC1zKSwgcywgdCwgYWxnb3JpdGhtPSdzeW1weScpCi0tICAgICAgICAtKGxvZyhlXigtdCkp ICsgMSkqaGVhdmlzaWRlKHQgLSAxKQotKyAgICAgICAgc2FnZTogaW52ZXJzZV9sYXBsYWNlKDEv c14yKmV4cCgtcyksIHMsIHQsIGFsZ29yaXRobT0nc3ltcHknKS5zaW1wbGlmeSgpCi0rICAgICAg ICAodCAtIDEpKmhlYXZpc2lkZSh0IC0gMSkKLSAKLSAgICAgVGhlIHNhbWUgaW5zdGFuY2Ugd2l0 aCBHaWFjOjoKLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTcwNy1t YXhpbWFfNS40Ny4wLnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1NzA3LW1heGlt YV81LjQ3LjAucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRlMTBkZjhjYjcz YzkuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1NzA3LW1h eGltYV81LjQ3LjAucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw4NzkgKzAsMCBAQAotZGlmZiAt LWdpdCBhL3NyYy9kb2MvZGUvdHV0b3JpYWwvaW50ZXJmYWNlcy5yc3QgYi9zcmMvZG9jL2RlL3R1 dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1pbmRleCBlZGI0ZjM4MzM2My4uZDgzMjI1YjUzMTUgMTAw NjQ0Ci0tLS0gYS9zcmMvZG9jL2RlL3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci0rKysgYi9zcmMv ZG9jL2RlL3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1AQCAtMjcyLDggKzI3Miw4IEBAIGRlcmVu IDptYXRoOmBpLGpgIEVpbnRyYWcgZ2VyYWRlIDptYXRoOmBpL2pgIGlzdCwgZsO8ciA6bWF0aDpg aSxqPTEsXGxkb3RzLDRgLgotICAgICBtYXRyaXgoWzEsMS8yLDEvMywxLzRdLFswLDAsMCwwXSxb MCwwLDAsMF0sWzAsMCwwLDBdKQotICAgICBzYWdlOiBBLmVpZ2VudmFsdWVzKCkKLSAgICAgW1sw LDRdLFszLDFdXQotLSAgICBzYWdlOiBBLmVpZ2VudmVjdG9ycygpCi0tICAgIFtbWzAsNF0sWzMs MV1dLFtbWzEsMCwwLC00XSxbMCwxLDAsLTJdLFswLDAsMSwtNC8zXV0sW1sxLDIsMyw0XV1dXQot KyAgICBzYWdlOiBBLmVpZ2VudmVjdG9ycygpLnNhZ2UoKQotKyAgICBbW1swLCA0XSwgWzMsIDFd XSwgW1tbMSwgMCwgMCwgLTRdLCBbMCwgMSwgMCwgLTJdLCBbMCwgMCwgMSwgLTQvM11dLCBbWzEs IDIsIDMsIDRdXV1dCi0gCi0gSGllciBlaW4gYW5kZXJlcyBCZWlzcGllbDoKLSAKLUBAIC0zMzIs MTIgKzMzMiw5IEBAIFVuZCBkZXIgbGV0enRlIGlzdCBkaWUgYmVyw7xobXRlIEtsZWluc2NoZSBG bGFzY2hlOgotIAotIDo6Ci0gCi0tICAgIHNhZ2U6IG1heGltYSgiZXhwcl8xOiA1KmNvcyh4KSoo Y29zKHgvMikqY29zKHkpICsgc2luKHgvMikqc2luKDIqeSkrIDMuMCkgLSAxMC4wIikKLS0gICAg NSpjb3MoeCkqKHNpbih4LzIpKnNpbigyKnkpK2Nvcyh4LzIpKmNvcyh5KSszLjApLTEwLjAKLS0g ICAgc2FnZTogbWF4aW1hKCJleHByXzI6IC01KnNpbih4KSooY29zKHgvMikqY29zKHkpICsgc2lu KHgvMikqc2luKDIqeSkrIDMuMCkiKQotLSAgICAtNSpzaW4oeCkqKHNpbih4LzIpKnNpbigyKnkp K2Nvcyh4LzIpKmNvcyh5KSszLjApCi0tICAgIHNhZ2U6IG1heGltYSgiZXhwcl8zOiA1Kigtc2lu KHgvMikqY29zKHkpICsgY29zKHgvMikqc2luKDIqeSkpIikKLS0gICAgNSooY29zKHgvMikqc2lu KDIqeSktc2luKHgvMikqY29zKHkpKQotKyAgICBzYWdlOiBfID0gbWF4aW1hKCJleHByXzE6IDUq Y29zKHgpKihjb3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4oMip5KSsgMy4wKSAtIDEwLjAi KQotKyAgICBzYWdlOiBfID0gbWF4aW1hKCJleHByXzI6IC01KnNpbih4KSooY29zKHgvMikqY29z KHkpICsgc2luKHgvMikqc2luKDIqeSkrIDMuMCkiKQotKyAgICBzYWdlOiBfID0gbWF4aW1hKCJl eHByXzM6IDUqKC1zaW4oeC8yKSpjb3MoeSkgKyBjb3MoeC8yKSpzaW4oMip5KSkiKQotICAgICBz YWdlOiBtYXhpbWEucGxvdDNkICgiW2V4cHJfMSwgZXhwcl8yLCBleHByXzNdIiwgIlt4LCAtJXBp LCAlcGldIiwgIyBub3QgdGVzdGVkCi0gICAgIC4uLi46ICAgICAiW3ksIC0lcGksICVwaV0iLCAi WydncmlkLCA0MCwgNDBdIiwKLSAgICAgLi4uLjogICAgICdbcGxvdF9mb3JtYXQsIG9wZW5tYXRo XScpCi1kaWZmIC0tZ2l0IGEvc3JjL2RvYy9kZS90dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0IGIv c3JjL2RvYy9kZS90dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0Ci1pbmRleCBiYWJhMjU1M2EyNS4u NTllZWQ4ZjE4ODggMTAwNjQ0Ci0tLS0gYS9zcmMvZG9jL2RlL3R1dG9yaWFsL3RvdXJfYWxnZWJy YS5yc3QKLSsrKyBiL3NyYy9kb2MvZGUvdHV0b3JpYWwvdG91cl9hbGdlYnJhLnJzdAotQEAgLTIw OSw5ICsyMDksMTIgQEAgTMO2c3VuZzogQmVyZWNobmVuIFNpZSBkaWUgTGFwbGFjZS1UcmFuc2Zv cm1pZXJ0ZSBkZXIgZXJzdGVuIEdsZWljaHVuZwotIAotIDo6Ci0gCi0tICAgIHNhZ2U6IGRlMSA9 IG1heGltYSgiMipkaWZmKHgodCksdCwgMikgKyA2KngodCkgLSAyKnkodCkiKQotLSAgICBzYWdl OiBsZGUxID0gZGUxLmxhcGxhY2UoInQiLCJzIik7IGxkZTEKLS0gICAgMiooKC0lYXQoJ2RpZmYo eCh0KSx0LDEpLHQgPSAwKSkrc14yKidsYXBsYWNlKHgodCksdCxzKS14KDApKnMpIC0yKidsYXBs YWNlKHkodCksdCxzKSs2KidsYXBsYWNlKHgodCksdCxzKQotKyAgICBzYWdlOiB0LHMgPSBTUi52 YXIoJ3QscycpCi0rICAgIHNhZ2U6IHggPSBmdW5jdGlvbigneCcpCi0rICAgIHNhZ2U6IHkgPSBm dW5jdGlvbigneScpCi0rICAgIHNhZ2U6IGYgPSAyKngodCkuZGlmZih0LDIpICsgNip4KHQpIC0g Mip5KHQpCi0rICAgIHNhZ2U6IGYubGFwbGFjZSh0LHMpCi0rICAgIDIqc14yKmxhcGxhY2UoeCh0 KSwgdCwgcykgLSAyKnMqeCgwKSArIDYqbGFwbGFjZSh4KHQpLCB0LCBzKSAtIDIqbGFwbGFjZSh5 KHQpLCB0LCBzKSAtIDIqRFswXSh4KSgwKQotIAotIERhcyBpc3Qgc2Nod2llcmlnIHp1IGxlc2Vu LCBlcyBiZXNhZ3QgamVkb2NoLCBkYXNzCi0gCi1AQCAtMjI2LDggKzIyOSw4IEBAIExhcGxhY2Ut VHJhbnNmb3JtaWVydGUgZGVyIHp3ZWl0ZW4gR2xlaWNodW5nOgotIDo6Ci0gCi0gICAgIHNhZ2U6 IGRlMiA9IG1heGltYSgiZGlmZih5KHQpLHQsIDIpICsgMip5KHQpIC0gMip4KHQpIikKLS0gICAg c2FnZTogbGRlMiA9IGRlMi5sYXBsYWNlKCJ0IiwicyIpOyBsZGUyCi0tICAgICgtJWF0KCdkaWZm KHkodCksdCwxKSx0ID0gMCkpK3NeMionbGFwbGFjZSh5KHQpLHQscykgKzIqJ2xhcGxhY2UoeSh0 KSx0LHMpLTIqJ2xhcGxhY2UoeCh0KSx0LHMpIC15KDApKnMKLSsgICAgc2FnZTogbGRlMiA9IGRl Mi5sYXBsYWNlKCJ0IiwicyIpOyBsZGUyLnNhZ2UoKQotKyAgICBzXjIqbGFwbGFjZSh5KHQpLCB0 LCBzKSAtIHMqeSgwKSAtIDIqbGFwbGFjZSh4KHQpLCB0LCBzKSArIDIqbGFwbGFjZSh5KHQpLCB0 LCBzKSAtIERbMF0oeSkoMCkKLSAKLSBEaWVzIGJlc2FndAotIAotZGlmZiAtLWdpdCBhL3NyYy9k b2MvZW4vY29uc3RydWN0aW9ucy9saW5lYXJfYWxnZWJyYS5yc3QgYi9zcmMvZG9jL2VuL2NvbnN0 cnVjdGlvbnMvbGluZWFyX2FsZ2VicmEucnN0Ci1pbmRleCA4ODk0ZGU5YTVmZC4uNGU3NmM2NWFk MGEgMTAwNjQ0Ci0tLS0gYS9zcmMvZG9jL2VuL2NvbnN0cnVjdGlvbnMvbGluZWFyX2FsZ2VicmEu cnN0Ci0rKysgYi9zcmMvZG9jL2VuL2NvbnN0cnVjdGlvbnMvbGluZWFyX2FsZ2VicmEucnN0Ci1A QCAtMjc3LDggKzI3Nyw4IEBAIEFub3RoZXIgYXBwcm9hY2ggaXMgdG8gdXNlIHRoZSBpbnRlcmZh Y2Ugd2l0aCBNYXhpbWE6Ci0gCi0gICAgIHNhZ2U6IEEgPSBtYXhpbWEoIm1hdHJpeCAoWzEsIC00 XSwgWzEsIC0xXSkiKQotICAgICBzYWdlOiBlaWcgPSBBLmVpZ2VudmVjdG9ycygpCi0tICAgIHNh Z2U6IGVpZwotLSAgICBbW1stc3FydCgzKSolaSxzcXJ0KDMpKiVpXSxbMSwxXV0sIFtbWzEsKHNx cnQoMykqJWkrMSkvNF1dLFtbMSwtKHNxcnQoMykqJWktMSkvNF1dXV0KLSsgICAgc2FnZTogZWln LnNhZ2UoKQotKyAgICBbW1stSSpzcXJ0KDMpLCBJKnNxcnQoMyldLCBbMSwgMV1dLCBbW1sxLCAx LzQqSSpzcXJ0KDMpICsgMS80XV0sIFtbMSwgLTEvNCpJKnNxcnQoMykgKyAxLzRdXV1dCi0gCi0g VGhpcyB0ZWxscyB1cyB0aGF0IDptYXRoOmBcdmVje3Z9XzEgPSBbMSwoXHNxcnR7M31pICsgMSkv NF1gIGlzCi0gYW4gZWlnZW52ZWN0b3Igb2YgOm1hdGg6YFxsYW1iZGFfMSA9IC0gXHNxcnR7M31p YCAod2hpY2ggb2NjdXJzCi1kaWZmIC0tZ2l0IGEvc3JjL2RvYy9lbi90dXRvcmlhbC9pbnRlcmZh Y2VzLnJzdCBiL3NyYy9kb2MvZW4vdHV0b3JpYWwvaW50ZXJmYWNlcy5yc3QKLWluZGV4IGIwZTU1 MzQ1NjY5Li4xOWMyOGY2MzZkNCAxMDA2NDQKLS0tLSBhL3NyYy9kb2MvZW4vdHV0b3JpYWwvaW50 ZXJmYWNlcy5yc3QKLSsrKyBiL3NyYy9kb2MvZW4vdHV0b3JpYWwvaW50ZXJmYWNlcy5yc3QKLUBA IC0yNjcsOCArMjY3LDggQEAgd2hvc2UgOm1hdGg6YGksamAgZW50cnkgaXMgOm1hdGg6YGkvamAs IGZvcgotICAgICBtYXRyaXgoWzEsMS8yLDEvMywxLzRdLFswLDAsMCwwXSxbMCwwLDAsMF0sWzAs MCwwLDBdKQotICAgICBzYWdlOiBBLmVpZ2VudmFsdWVzKCkKLSAgICAgW1swLDRdLFszLDFdXQot LSAgICBzYWdlOiBBLmVpZ2VudmVjdG9ycygpCi0tICAgIFtbWzAsNF0sWzMsMV1dLFtbWzEsMCww LC00XSxbMCwxLDAsLTJdLFswLDAsMSwtNC8zXV0sW1sxLDIsMyw0XV1dXQotKyAgICBzYWdlOiBB LmVpZ2VudmVjdG9ycygpLnNhZ2UoKQotKyAgICBbW1swLCA0XSwgWzMsIDFdXSwgW1tbMSwgMCwg MCwgLTRdLCBbMCwgMSwgMCwgLTJdLCBbMCwgMCwgMSwgLTQvM11dLCBbWzEsIDIsIDMsIDRdXV1d Ci0gCi0gSGVyZSdzIGFub3RoZXIgZXhhbXBsZToKLSAKLUBAIC0zMjAsOCArMzIwLDggQEAgVGhl IG5leHQgcGxvdCBpcyB0aGUgZmFtb3VzIEtsZWluIGJvdHRsZSAoZG8gbm90IHR5cGUgdGhlIGBg Li4uLjpgYCk6OgotIAotICAgICBzYWdlOiBtYXhpbWEoImV4cHJfMTogNSpjb3MoeCkqKGNvcyh4 LzIpKmNvcyh5KSArIHNpbih4LzIpKnNpbigyKnkpKyAzLjApIC0gMTAuMCIpCi0gICAgIDUqY29z KHgpKihzaW4oeC8yKSpzaW4oMip5KStjb3MoeC8yKSpjb3MoeSkrMy4wKS0xMC4wCi0tICAgIHNh Z2U6IG1heGltYSgiZXhwcl8yOiAtNSpzaW4oeCkqKGNvcyh4LzIpKmNvcyh5KSArIHNpbih4LzIp KnNpbigyKnkpKyAzLjApIikKLS0gICAgLTUqc2luKHgpKihzaW4oeC8yKSpzaW4oMip5KStjb3Mo eC8yKSpjb3MoeSkrMy4wKQotKyAgICBzYWdlOiBtYXhpbWEoImV4cHJfMjogLTUqc2luKHgpKihj b3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4oMip5KSsgMy4wKSIpLnNhZ2UoKQotKyAgICAt NSooY29zKDEvMip4KSpjb3MoeSkgKyBzaW4oMS8yKngpKnNpbigyKnkpICsgMy4wKSpzaW4oeCkK LSAgICAgc2FnZTogbWF4aW1hKCJleHByXzM6IDUqKC1zaW4oeC8yKSpjb3MoeSkgKyBjb3MoeC8y KSpzaW4oMip5KSkiKQotICAgICA1Kihjb3MoeC8yKSpzaW4oMip5KS1zaW4oeC8yKSpjb3MoeSkp Ci0gICAgIHNhZ2U6IG1heGltYS5wbG90M2QgKCJbZXhwcl8xLCBleHByXzIsIGV4cHJfM10iLCAi W3gsIC0lcGksICVwaV0iLCAgIyBub3QgdGVzdGVkCi1kaWZmIC0tZ2l0IGEvc3JjL2RvYy9lbi90 dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0IGIvc3JjL2RvYy9lbi90dXRvcmlhbC90b3VyX2FsZ2Vi cmEucnN0Ci1pbmRleCAyZTg3MmNjOTA1OS4uMjI1NjA2YTcyOWYgMTAwNjQ0Ci0tLS0gYS9zcmMv ZG9jL2VuL3R1dG9yaWFsL3RvdXJfYWxnZWJyYS5yc3QKLSsrKyBiL3NyYy9kb2MvZW4vdHV0b3Jp YWwvdG91cl9hbGdlYnJhLnJzdAotQEAgLTIxNiw5ICsyMTYsMTIgQEAgdGhlIG5vdGF0aW9uIDpt YXRoOmB4PXhfezF9YCwgOm1hdGg6YHk9eF97Mn1gKToKLSAKLSA6OgotIAotLSAgICBzYWdlOiBk ZTEgPSBtYXhpbWEoIjIqZGlmZih4KHQpLHQsIDIpICsgNip4KHQpIC0gMip5KHQpIikKLS0gICAg c2FnZTogbGRlMSA9IGRlMS5sYXBsYWNlKCJ0IiwicyIpOyBsZGUxCi0tICAgIDIqKCgtJWF0KCdk aWZmKHgodCksdCwxKSx0ID0gMCkpK3NeMionbGFwbGFjZSh4KHQpLHQscykteCgwKSpzKSAtMion bGFwbGFjZSh5KHQpLHQscykrNionbGFwbGFjZSh4KHQpLHQscykKLSsgICAgc2FnZTogdCxzID0g U1IudmFyKCd0LHMnKQotKyAgICBzYWdlOiB4ID0gZnVuY3Rpb24oJ3gnKQotKyAgICBzYWdlOiB5 ID0gZnVuY3Rpb24oJ3knKQotKyAgICBzYWdlOiBmID0gMip4KHQpLmRpZmYodCwyKSArIDYqeCh0 KSAtIDIqeSh0KQotKyAgICBzYWdlOiBmLmxhcGxhY2UodCxzKQotKyAgICAyKnNeMipsYXBsYWNl KHgodCksIHQsIHMpIC0gMipzKngoMCkgKyA2KmxhcGxhY2UoeCh0KSwgdCwgcykgLSAyKmxhcGxh Y2UoeSh0KSwgdCwgcykgLSAyKkRbMF0oeCkoMCkKLSAKLSBUaGlzIGlzIGhhcmQgdG8gcmVhZCwg YnV0IGl0IHNheXMgdGhhdAotIAotQEAgLTIzMiw4ICsyMzUsOCBAQCBMYXBsYWNlIHRyYW5zZm9y bSBvZiB0aGUgc2Vjb25kIGVxdWF0aW9uOgotIDo6Ci0gCi0gICAgIHNhZ2U6IGRlMiA9IG1heGlt YSgiZGlmZih5KHQpLHQsIDIpICsgMip5KHQpIC0gMip4KHQpIikKLS0gICAgc2FnZTogbGRlMiA9 IGRlMi5sYXBsYWNlKCJ0IiwicyIpOyBsZGUyCi0tICAgICgtJWF0KCdkaWZmKHkodCksdCwxKSx0 ID0gMCkpK3NeMionbGFwbGFjZSh5KHQpLHQscykgKzIqJ2xhcGxhY2UoeSh0KSx0LHMpLTIqJ2xh cGxhY2UoeCh0KSx0LHMpIC15KDApKnMKLSsgICAgc2FnZTogbGRlMiA9IGRlMi5sYXBsYWNlKCJ0 IiwicyIpOyBsZGUyLnNhZ2UoKQotKyAgICBzXjIqbGFwbGFjZSh5KHQpLCB0LCBzKSAtIHMqeSgw KSAtIDIqbGFwbGFjZSh4KHQpLCB0LCBzKSArIDIqbGFwbGFjZSh5KHQpLCB0LCBzKSAtIERbMF0o eSkoMCkKLSAKLSBUaGlzIHNheXMKLSAKLWRpZmYgLS1naXQgYS9zcmMvZG9jL2VzL3R1dG9yaWFs L3RvdXJfYWxnZWJyYS5yc3QgYi9zcmMvZG9jL2VzL3R1dG9yaWFsL3RvdXJfYWxnZWJyYS5yc3QK LWluZGV4IGRjMWE3YTk2NzE5Li40MmM4MThmZThkNyAxMDA2NDQKLS0tLSBhL3NyYy9kb2MvZXMv dHV0b3JpYWwvdG91cl9hbGdlYnJhLnJzdAotKysrIGIvc3JjL2RvYy9lcy90dXRvcmlhbC90b3Vy X2FsZ2VicmEucnN0Ci1AQCAtMTk3LDggKzE5Nyw4IEBAIGxhIG5vdGFjacOzbiA6bWF0aDpgeD14 X3sxfWAsIDptYXRoOmB5PXhfezJ9YCk6Ci0gOjoKLSAKLSAgICAgc2FnZTogZGUxID0gbWF4aW1h KCIyKmRpZmYoeCh0KSx0LCAyKSArIDYqeCh0KSAtIDIqeSh0KSIpCi0tICAgIHNhZ2U6IGxkZTEg PSBkZTEubGFwbGFjZSgidCIsInMiKTsgbGRlMQotLSAgICAyKigoLSVhdCgnZGlmZih4KHQpLHQs MSksdCA9IDApKStzXjIqJ2xhcGxhY2UoeCh0KSx0LHMpLXgoMCkqcykgLTIqJ2xhcGxhY2UoeSh0 KSx0LHMpKzYqJ2xhcGxhY2UoeCh0KSx0LHMpCi0rICAgIHNhZ2U6IGxkZTEgPSBkZTEubGFwbGFj ZSgidCIsInMiKTsgbGRlMS5zYWdlKCkKLSsgICAgMipzXjIqbGFwbGFjZSh4KHQpLCB0LCBzKSAt IDIqcyp4KDApICsgNipsYXBsYWNlKHgodCksIHQsIHMpIC0gMipsYXBsYWNlKHkodCksIHQsIHMp IC0gMipEWzBdKHgpKDApCi0gCi0gRWwgcmVzdWx0YWRvIHB1ZWRlIHNlciBkaWbDrWNpbCBkZSBs ZWVyLCBwZXJvIHNpZ25pZmljYSBxdWUKLSAKLUBAIC0yMTEsOSArMjExLDEyIEBAIFRvbWEgbGEg dHJhbnNmb3JtYWRhIGRlIExhcGxhY2UgZGUgbGEgc2VndW5kYSBlY3VhY2nDs246Ci0gCi0gOjoK LSAKLS0gICAgc2FnZTogZGUyID0gbWF4aW1hKCJkaWZmKHkodCksdCwgMikgKyAyKnkodCkgLSAy KngodCkiKQotLSAgICBzYWdlOiBsZGUyID0gZGUyLmxhcGxhY2UoInQiLCJzIik7IGxkZTIKLS0g ICAgKC0lYXQoJ2RpZmYoeSh0KSx0LDEpLHQgPSAwKSkrc14yKidsYXBsYWNlKHkodCksdCxzKSAr MionbGFwbGFjZSh5KHQpLHQscyktMionbGFwbGFjZSh4KHQpLHQscykgLXkoMCkqcwotKyAgICBz YWdlOiB0LHMgPSBTUi52YXIoJ3QscycpCi0rICAgIHNhZ2U6IHggPSBmdW5jdGlvbigneCcpCi0r ICAgIHNhZ2U6IHkgPSBmdW5jdGlvbigneScpCi0rICAgIHNhZ2U6IGYgPSAyKngodCkuZGlmZih0 LDIpICsgNip4KHQpIC0gMip5KHQpCi0rICAgIHNhZ2U6IGYubGFwbGFjZSh0LHMpCi0rICAgIDIq c14yKmxhcGxhY2UoeCh0KSwgdCwgcykgLSAyKnMqeCgwKSArIDYqbGFwbGFjZSh4KHQpLCB0LCBz KSAtIDIqbGFwbGFjZSh5KHQpLCB0LCBzKSAtIDIqRFswXSh4KSgwKQotIAotIEVzdG8gZGljZQot IAotZGlmZiAtLWdpdCBhL3NyYy9kb2MvZnIvdHV0b3JpYWwvaW50ZXJmYWNlcy5yc3QgYi9zcmMv ZG9jL2ZyL3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1pbmRleCAxY2Q2NjJmMzA4My4uMmNiMTRl NzcyZWIgMTAwNjQ0Ci0tLS0gYS9zcmMvZG9jL2ZyL3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci0r KysgYi9zcmMvZG9jL2ZyL3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1AQCAtMjczLDggKzI3Myw4 IEBAIHBvdXIgOm1hdGg6YGksaj0xLFxsZG90cyw0YC4KLSAgICAgbWF0cml4KFsxLDEvMiwxLzMs MS80XSxbMCwwLDAsMF0sWzAsMCwwLDBdLFswLDAsMCwwXSkKLSAgICAgc2FnZTogQS5laWdlbnZh bHVlcygpCi0gICAgIFtbMCw0XSxbMywxXV0KLS0gICAgc2FnZTogQS5laWdlbnZlY3RvcnMoKQot LSAgICBbW1swLDRdLFszLDFdXSxbW1sxLDAsMCwtNF0sWzAsMSwwLC0yXSxbMCwwLDEsLTQvM11d LFtbMSwyLDMsNF1dXV0KLSsgICAgc2FnZTogQS5laWdlbnZlY3RvcnMoKS5zYWdlKCkKLSsgICAg W1tbMCwgNF0sIFszLCAxXV0sIFtbWzEsIDAsIDAsIC00XSwgWzAsIDEsIDAsIC0yXSwgWzAsIDAs IDEsIC00LzNdXSwgW1sxLCAyLCAzLCA0XV1dXQotIAotIFVuIGRldXhpw6htZSBleGVtcGxlIDoK LSAKLUBAIC0zMzQsMTIgKzMzNCw5IEBAIEV0IGxhIGZhbWV1c2UgYm91dGVpbGxlIGRlIEtsZWlu IChuJ2VudHJleiBwYXMgbGVzIGBgLi4uLjpgYCk6Ci0gCi0gOjoKLSAKLS0gICAgc2FnZTogbWF4 aW1hKCJleHByXzE6IDUqY29zKHgpKihjb3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4oMip5 KSsgMy4wKSAtIDEwLjAiKQotLSAgICA1KmNvcyh4KSooc2luKHgvMikqc2luKDIqeSkrY29zKHgv MikqY29zKHkpKzMuMCktMTAuMAotLSAgICBzYWdlOiBtYXhpbWEoImV4cHJfMjogLTUqc2luKHgp Kihjb3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4oMip5KSsgMy4wKSIpCi0tICAgIC01KnNp bih4KSooc2luKHgvMikqc2luKDIqeSkrY29zKHgvMikqY29zKHkpKzMuMCkKLS0gICAgc2FnZTog bWF4aW1hKCJleHByXzM6IDUqKC1zaW4oeC8yKSpjb3MoeSkgKyBjb3MoeC8yKSpzaW4oMip5KSki KQotLSAgICA1Kihjb3MoeC8yKSpzaW4oMip5KS1zaW4oeC8yKSpjb3MoeSkpCi0rICAgIHNhZ2U6 IF8gPSBtYXhpbWEoImV4cHJfMTogNSpjb3MoeCkqKGNvcyh4LzIpKmNvcyh5KSArIHNpbih4LzIp KnNpbigyKnkpKyAzLjApIC0gMTAuMCIpCi0rICAgIHNhZ2U6IF8gPSBtYXhpbWEoImV4cHJfMjog LTUqc2luKHgpKihjb3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4oMip5KSsgMy4wKSIpCi0r ICAgIHNhZ2U6IF8gPSBtYXhpbWEoImV4cHJfMzogNSooLXNpbih4LzIpKmNvcyh5KSArIGNvcyh4 LzIpKnNpbigyKnkpKSIpCi0gICAgIHNhZ2U6IG1heGltYS5wbG90M2QgKCJbZXhwcl8xLCBleHBy XzIsIGV4cHJfM10iLCAiW3gsIC0lcGksICVwaV0iLCAjIG5vdCB0ZXN0ZWQKLSAgICAgLi4uLjog ICAgICJbeSwgLSVwaSwgJXBpXSIsICJbJ2dyaWQsIDQwLCA0MF0iLAotICAgICAuLi4uOiAgICAg J1twbG90X2Zvcm1hdCwgb3Blbm1hdGhdJykKLWRpZmYgLS1naXQgYS9zcmMvZG9jL2ZyL3R1dG9y aWFsL3RvdXJfYWxnZWJyYS5yc3QgYi9zcmMvZG9jL2ZyL3R1dG9yaWFsL3RvdXJfYWxnZWJyYS5y c3QKLWluZGV4IDY1ODg5NGIyZThiLi4yNjdiZDFkZDRmOSAxMDA2NDQKLS0tLSBhL3NyYy9kb2Mv ZnIvdHV0b3JpYWwvdG91cl9hbGdlYnJhLnJzdAotKysrIGIvc3JjL2RvYy9mci90dXRvcmlhbC90 b3VyX2FsZ2VicmEucnN0Ci1AQCAtMTgyLDggKzE4Miw4IEBAIFNvbHV0aW9uIDogQ29uc2lkw6ly b25zIGxhIHRyYW5zZm9ybcOpZSBkZSBMYXBsYWNlIGRlIGxhIHByZW1pw6hyZSDDqXF1YXRpb24K LSA6OgotIAotICAgICBzYWdlOiBkZTEgPSBtYXhpbWEoIjIqZGlmZih4KHQpLHQsIDIpICsgNip4 KHQpIC0gMip5KHQpIikKLS0gICAgc2FnZTogbGRlMSA9IGRlMS5sYXBsYWNlKCJ0IiwicyIpOyBs ZGUxCi0tICAgIDIqKCgtJWF0KCdkaWZmKHgodCksdCwxKSx0ID0gMCkpK3NeMionbGFwbGFjZSh4 KHQpLHQscykteCgwKSpzKSAtMionbGFwbGFjZSh5KHQpLHQscykrNionbGFwbGFjZSh4KHQpLHQs cykKLSsgICAgc2FnZTogbGRlMSA9IGRlMS5sYXBsYWNlKCJ0IiwicyIpOyBsZGUxLnNhZ2UoKQot KyAgICAyKnNeMipsYXBsYWNlKHgodCksIHQsIHMpIC0gMipzKngoMCkgKyA2KmxhcGxhY2UoeCh0 KSwgdCwgcykgLSAyKmxhcGxhY2UoeSh0KSwgdCwgcykgLSAyKkRbMF0oeCkoMCkKLSAKLSBMYSBy w6lwb25zZSBuJ2VzdCBwYXMgdHLDqHMgbGlzaWJsZSwgbWFpcyBlbGxlIHNpZ25pZmllIHF1ZQot IAotQEAgLTE5Niw5ICsxOTYsMTIgQEAgbGEgc2Vjb25kZSDDqXF1YXRpb24gOgotIAotIDo6Ci0g Ci0tICAgIHNhZ2U6IGRlMiA9IG1heGltYSgiZGlmZih5KHQpLHQsIDIpICsgMip5KHQpIC0gMip4 KHQpIikKLS0gICAgc2FnZTogbGRlMiA9IGRlMi5sYXBsYWNlKCJ0IiwicyIpOyBsZGUyCi0tICAg ICgtJWF0KCdkaWZmKHkodCksdCwxKSx0ID0gMCkpK3NeMionbGFwbGFjZSh5KHQpLHQscykgKzIq J2xhcGxhY2UoeSh0KSx0LHMpLTIqJ2xhcGxhY2UoeCh0KSx0LHMpIC15KDApKnMKLSsgICAgc2Fn ZTogdCxzID0gU1IudmFyKCd0LHMnKQotKyAgICBzYWdlOiB4ID0gZnVuY3Rpb24oJ3gnKQotKyAg ICBzYWdlOiB5ID0gZnVuY3Rpb24oJ3knKQotKyAgICBzYWdlOiBmID0gMip4KHQpLmRpZmYodCwy KSArIDYqeCh0KSAtIDIqeSh0KQotKyAgICBzYWdlOiBmLmxhcGxhY2UodCxzKQotKyAgICAyKnNe MipsYXBsYWNlKHgodCksIHQsIHMpIC0gMipzKngoMCkgKyA2KmxhcGxhY2UoeCh0KSwgdCwgcykg LSAyKmxhcGxhY2UoeSh0KSwgdCwgcykgLSAyKkRbMF0oeCkoMCkKLSAKLSBDZWNpIHNpZ25pZmll Ci0gCi1kaWZmIC0tZ2l0IGEvc3JjL2RvYy9pdC90dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0IGIv c3JjL2RvYy9pdC90dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0Ci1pbmRleCA1YTUzMTFlOWIxYy4u Y2RlNDI3ZDMwOTAgMTAwNjQ0Ci0tLS0gYS9zcmMvZG9jL2l0L3R1dG9yaWFsL3RvdXJfYWxnZWJy YS5yc3QKLSsrKyBiL3NyYy9kb2MvaXQvdHV0b3JpYWwvdG91cl9hbGdlYnJhLnJzdAotQEAgLTE4 Myw4ICsxODMsOCBAQCBsYSBub3RhemlvbmUgOm1hdGg6YHg9eF97MX1gLCA6bWF0aDpgeT14X3sy fWA6Ci0gOjoKLSAKLSAgICAgc2FnZTogZGUxID0gbWF4aW1hKCIyKmRpZmYoeCh0KSx0LCAyKSAr IDYqeCh0KSAtIDIqeSh0KSIpCi0tICAgIHNhZ2U6IGxkZTEgPSBkZTEubGFwbGFjZSgidCIsInMi KTsgbGRlMQotLSAgICAyKigoLSVhdCgnZGlmZih4KHQpLHQsMSksdCA9IDApKStzXjIqJ2xhcGxh Y2UoeCh0KSx0LHMpLXgoMCkqcykgLTIqJ2xhcGxhY2UoeSh0KSx0LHMpKzYqJ2xhcGxhY2UoeCh0 KSx0LHMpCi0rICAgIHNhZ2U6IGxkZTEgPSBkZTEubGFwbGFjZSgidCIsInMiKTsgbGRlMS5zYWdl KCkKLSsgICAgMipzXjIqbGFwbGFjZSh4KHQpLCB0LCBzKSAtIDIqcyp4KDApICsgNipsYXBsYWNl KHgodCksIHQsIHMpIC0gMipsYXBsYWNlKHkodCksIHQsIHMpIC0gMipEWzBdKHgpKDApCi0gCi0g UXVlc3RvIMOoIGRpIGRpZmZpY2lsZSBsZXR0dXJhLCBtYSBkaWNlIGNoZQotIAotQEAgLTE5Nyw5 ICsxOTcsMTIgQEAgdHJhc2Zvcm1hdGEgZGkgTGFwbGFjZSBkZWxsYSBzZWNvbmRhIGVxdWF6aW9u ZToKLSAKLSA6OgotIAotLSAgICBzYWdlOiBkZTIgPSBtYXhpbWEoImRpZmYoeSh0KSx0LCAyKSAr IDIqeSh0KSAtIDIqeCh0KSIpCi0tICAgIHNhZ2U6IGxkZTIgPSBkZTIubGFwbGFjZSgidCIsInMi KTsgbGRlMgotLSAgICAoLSVhdCgnZGlmZih5KHQpLHQsMSksdCA9IDApKStzXjIqJ2xhcGxhY2Uo eSh0KSx0LHMpICsyKidsYXBsYWNlKHkodCksdCxzKS0yKidsYXBsYWNlKHgodCksdCxzKSAteSgw KSpzCi0rICAgIHNhZ2U6IHQscyA9IFNSLnZhcigndCxzJykKLSsgICAgc2FnZTogeCA9IGZ1bmN0 aW9uKCd4JykKLSsgICAgc2FnZTogeSA9IGZ1bmN0aW9uKCd5JykKLSsgICAgc2FnZTogZiA9IDIq eCh0KS5kaWZmKHQsMikgKyA2KngodCkgLSAyKnkodCkKLSsgICAgc2FnZTogZi5sYXBsYWNlKHQs cykKLSsgICAgMipzXjIqbGFwbGFjZSh4KHQpLCB0LCBzKSAtIDIqcyp4KDApICsgNipsYXBsYWNl KHgodCksIHQsIHMpIC0gMipsYXBsYWNlKHkodCksIHQsIHMpIC0gMipEWzBdKHgpKDApCi0gCi0g Y2hlIHNpZ25pZmljYQotIAotZGlmZiAtLWdpdCBhL3NyYy9kb2MvamEvdHV0b3JpYWwvaW50ZXJm YWNlcy5yc3QgYi9zcmMvZG9jL2phL3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1pbmRleCA5YzE2 YjJlYmEwOC4uODkyZmM2Zjg1MmYgMTAwNjQ0Ci0tLS0gYS9zcmMvZG9jL2phL3R1dG9yaWFsL2lu dGVyZmFjZXMucnN0Ci0rKysgYi9zcmMvZG9jL2phL3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1A QCAtMjM5LDggKzIzOSw4IEBAIFNhZ2UvTWF4aW1h44Kk44Oz44K/44O844OV44Kn44Kk44K544Gu 5L2/44GE5pa544KS5L6L56S644GZ44KL44Gf44KB77yM44GT44GT44GnCi0gICAgIG1hdHJpeChb MSwxLzIsMS8zLDEvNF0sWzAsMCwwLDBdLFswLDAsMCwwXSxbMCwwLDAsMF0pCi0gICAgIHNhZ2U6 IEEuZWlnZW52YWx1ZXMoKQotICAgICBbWzAsNF0sWzMsMV1dCi0tICAgIHNhZ2U6IEEuZWlnZW52 ZWN0b3JzKCkKLS0gICAgW1tbMCw0XSxbMywxXV0sW1tbMSwwLDAsLTRdLFswLDEsMCwtMl0sWzAs MCwxLC00LzNdXSxbWzEsMiwzLDRdXV1dCi0rICAgIHNhZ2U6IEEuZWlnZW52ZWN0b3JzKCkuc2Fn ZSgpCi0rICAgIFtbWzAsIDRdLCBbMywgMV1dLCBbW1sxLCAwLCAwLCAtNF0sIFswLCAxLCAwLCAt Ml0sIFswLCAwLCAxLCAtNC8zXV0sIFtbMSwgMiwgMywgNF1dXV0KLSAKLSAKLSDkvb/nlKjkvovj gpLjgoLjgYbkuIDjgaTnpLrjgZk6Ci1AQCAtMjk5LDExICsyOTksOCBAQCBTYWdlL01heGltYeOC pOODs+OCv+ODvOODleOCp+OCpOOCueOBruS9v+OBhOaWueOCkuS+i+ekuuOBmeOCi+OBn+OCge+8 jOOBk+OBk+OBpwotIAotIDo6Ci0gCi0tICAgIHNhZ2U6IG1heGltYSgiZXhwcl8xOiA1KmNvcyh4 KSooY29zKHgvMikqY29zKHkpICsgc2luKHgvMikqc2luKDIqeSkrIDMuMCkgLSAxMC4wIikKLS0g ICAgNSpjb3MoeCkqKHNpbih4LzIpKnNpbigyKnkpK2Nvcyh4LzIpKmNvcyh5KSszLjApLTEwLjAK LS0gICAgc2FnZTogbWF4aW1hKCJleHByXzI6IC01KnNpbih4KSooY29zKHgvMikqY29zKHkpICsg c2luKHgvMikqc2luKDIqeSkrIDMuMCkiKQotLSAgICAtNSpzaW4oeCkqKHNpbih4LzIpKnNpbigy KnkpK2Nvcyh4LzIpKmNvcyh5KSszLjApCi0tICAgIHNhZ2U6IG1heGltYSgiZXhwcl8zOiA1Kigt c2luKHgvMikqY29zKHkpICsgY29zKHgvMikqc2luKDIqeSkpIikKLS0gICAgNSooY29zKHgvMikq c2luKDIqeSktc2luKHgvMikqY29zKHkpKQotKyAgICBzYWdlOiBfID0gbWF4aW1hKCJleHByXzE6 IDUqY29zKHgpKihjb3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4oMip5KSsgMy4wKSAtIDEw LjAiKQotKyAgICBzYWdlOiBfID0gbWF4aW1hKCJleHByXzI6IC01KnNpbih4KSooY29zKHgvMikq Y29zKHkpICsgc2luKHgvMikqc2luKDIqeSkrIDMuMCkiKQotKyAgICBzYWdlOiBfID0gbWF4aW1h KCJleHByXzM6IDUqKC1zaW4oeC8yKSpjb3MoeSkgKyBjb3MoeC8yKSpzaW4oMip5KSkiKQotICAg ICBzYWdlOiBtYXhpbWEucGxvdDNkICgiW2V4cHJfMSwgZXhwcl8yLCBleHByXzNdIiwgIlt4LCAt JXBpLCAlcGldIiwgICMgbm90IHRlc3RlZAotICAgICAuLi4uOiAgICAgIlt5LCAtJXBpLCAlcGld IiwgIlsnZ3JpZCwgNDAsIDQwXSIsICdbcGxvdF9mb3JtYXQsIG9wZW5tYXRoXScpCi1kaWZmIC0t Z2l0IGEvc3JjL2RvYy9qYS90dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0IGIvc3JjL2RvYy9qYS90 dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0Ci1pbmRleCA3ODRmZDBkNWM0MC4uNzQ2Y2JiNDQ3NWMg MTAwNjQ0Ci0tLS0gYS9zcmMvZG9jL2phL3R1dG9yaWFsL3RvdXJfYWxnZWJyYS5yc3QKLSsrKyBi L3NyYy9kb2MvamEvdHV0b3JpYWwvdG91cl9hbGdlYnJhLnJzdAotQEAgLTIxMyw4ICsyMTMsOCBA QCBTYWdl44KS5L2/44Gj44Gm5bi45b6u5YiG5pa556iL5byP44KS56CU56m244GZ44KL44GT44Go 44KC44Gn44GN44KL77yOIDptYXRoOmB4JwotIDo6Ci0gCi0gICAgIHNhZ2U6IGRlMSA9IG1heGlt YSgiMipkaWZmKHgodCksdCwgMikgKyA2KngodCkgLSAyKnkodCkiKQotLSAgICBzYWdlOiBsZGUx ID0gZGUxLmxhcGxhY2UoInQiLCJzIik7IGxkZTEKLS0gICAgMiooKC0lYXQoJ2RpZmYoeCh0KSx0 LDEpLHQgPSAwKSkrc14yKidsYXBsYWNlKHgodCksdCxzKS14KDApKnMpIC0yKidsYXBsYWNlKHko dCksdCxzKSs2KidsYXBsYWNlKHgodCksdCxzKQotKyAgICBzYWdlOiBsZGUxID0gZGUxLmxhcGxh Y2UoInQiLCJzIik7IGxkZTEuc2FnZSgpCi0rICAgIDIqc14yKmxhcGxhY2UoeCh0KSwgdCwgcykg LSAyKnMqeCgwKSArIDYqbGFwbGFjZSh4KHQpLCB0LCBzKSAtIDIqbGFwbGFjZSh5KHQpLCB0LCBz KSAtIDIqRFswXSh4KSgwKQotIAotIOOBk+OBruWHuuWKm+OBr+iqreOBv+OBq+OBj+OBhOOBkeOC jOOBqeOCgu+8jOaEj+WRs+OBl+OBpuOBhOOCi+OBruOBrwotIAotQEAgLTIyNiw5ICsyMjYsMTIg QEAgU2FnZeOCkuS9v+OBo+OBpuW4uOW+ruWIhuaWueeoi+W8j+OCkueglOeptuOBmeOCi+OBk+OB qOOCguOBp+OBjeOCi++8jiA6bWF0aDpgeCcKLSAKLSA6OgotIAotLSAgICBzYWdlOiBkZTIgPSBt YXhpbWEoImRpZmYoeSh0KSx0LCAyKSArIDIqeSh0KSAtIDIqeCh0KSIpCi0tICAgIHNhZ2U6IGxk ZTIgPSBkZTIubGFwbGFjZSgidCIsInMiKTsgbGRlMgotLSAgICAoLSVhdCgnZGlmZih5KHQpLHQs MSksdCA9IDApKStzXjIqJ2xhcGxhY2UoeSh0KSx0LHMpICsyKidsYXBsYWNlKHkodCksdCxzKS0y KidsYXBsYWNlKHgodCksdCxzKSAteSgwKSpzCi0rICAgIHNhZ2U6IHQscyA9IFNSLnZhcigndCxz JykKLSsgICAgc2FnZTogeCA9IGZ1bmN0aW9uKCd4JykKLSsgICAgc2FnZTogeSA9IGZ1bmN0aW9u KCd5JykKLSsgICAgc2FnZTogZiA9IDIqeCh0KS5kaWZmKHQsMikgKyA2KngodCkgLSAyKnkodCkK LSsgICAgc2FnZTogZi5sYXBsYWNlKHQscykKLSsgICAgMipzXjIqbGFwbGFjZSh4KHQpLCB0LCBz KSAtIDIqcyp4KDApICsgNipsYXBsYWNlKHgodCksIHQsIHMpIC0gMipsYXBsYWNlKHkodCksIHQs IHMpIC0gMipEWzBdKHgpKDApCi0gCi0g5oSP5ZGz44GZ44KL44Go44GT44KN44GvCi0gCi1kaWZm IC0tZ2l0IGEvc3JjL2RvYy9wdC90dXRvcmlhbC9pbnRlcmZhY2VzLnJzdCBiL3NyYy9kb2MvcHQv dHV0b3JpYWwvaW50ZXJmYWNlcy5yc3QKLWluZGV4IDM4NmVmNjQ1NmU1Li41YmFkYjMxYWIzNSAx MDA2NDQKLS0tLSBhL3NyYy9kb2MvcHQvdHV0b3JpYWwvaW50ZXJmYWNlcy5yc3QKLSsrKyBiL3Ny Yy9kb2MvcHQvdHV0b3JpYWwvaW50ZXJmYWNlcy5yc3QKLUBAIC0yNjksOCArMjY5LDggQEAgZW50 cmFkYSA6bWF0aDpgaSxqYCDDqSA6bWF0aDpgaS9qYCwgcGFyYSA6bWF0aDpgaSxqPTEsXGxkb3Rz LDRgLgotICAgICBtYXRyaXgoWzEsMS8yLDEvMywxLzRdLFswLDAsMCwwXSxbMCwwLDAsMF0sWzAs MCwwLDBdKQotICAgICBzYWdlOiBBLmVpZ2VudmFsdWVzKCkKLSAgICAgW1swLDRdLFszLDFdXQot LSAgICBzYWdlOiBBLmVpZ2VudmVjdG9ycygpCi0tICAgIFtbWzAsNF0sWzMsMV1dLFtbWzEsMCww LC00XSxbMCwxLDAsLTJdLFswLDAsMSwtNC8zXV0sW1sxLDIsMyw0XV1dXQotKyAgICBzYWdlOiBB LmVpZ2VudmVjdG9ycygpLnNhZ2UoKQotKyAgICBbW1swLCA0XSwgWzMsIDFdXSwgW1tbMSwgMCwg MCwgLTRdLCBbMCwgMSwgMCwgLTJdLCBbMCwgMCwgMSwgLTQvM11dLCBbWzEsIDIsIDMsIDRdXV1d Ci0gCi0gQXF1aSB2YWkgb3V0cm8gZXhlbXBsbzoKLSAKLUBAIC0zMzAsMTMgKzMzMCwxMCBAQCBF IGFnb3JhIGEgZmFtb3NhIGdhcnJhZmEgZGUgS2xlaW46Ci0gCi0gOjoKLSAKLS0gICAgc2FnZTog bWF4aW1hKCJleHByXzE6IDUqY29zKHgpKihjb3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4o Mip5KSsgMy4wKSIKLSsgICAgc2FnZTogXyA9IG1heGltYSgiZXhwcl8xOiA1KmNvcyh4KSooY29z KHgvMikqY29zKHkpICsgc2luKHgvMikqc2luKDIqeSkrIDMuMCkiCi0gICAgIC4uLi46ICAgICAg ICAiLSAxMC4wIikKLS0gICAgNSpjb3MoeCkqKHNpbih4LzIpKnNpbigyKnkpK2Nvcyh4LzIpKmNv cyh5KSszLjApLTEwLjAKLS0gICAgc2FnZTogbWF4aW1hKCJleHByXzI6IC01KnNpbih4KSooY29z KHgvMikqY29zKHkpICsgc2luKHgvMikqc2luKDIqeSkrIDMuMCkiKQotLSAgICAtNSpzaW4oeCkq KHNpbih4LzIpKnNpbigyKnkpK2Nvcyh4LzIpKmNvcyh5KSszLjApCi0tICAgIHNhZ2U6IG1heGlt YSgiZXhwcl8zOiA1Kigtc2luKHgvMikqY29zKHkpICsgY29zKHgvMikqc2luKDIqeSkpIikKLS0g ICAgNSooY29zKHgvMikqc2luKDIqeSktc2luKHgvMikqY29zKHkpKQotKyAgICBzYWdlOiBfID0g bWF4aW1hKCJleHByXzI6IC01KnNpbih4KSooY29zKHgvMikqY29zKHkpICsgc2luKHgvMikqc2lu KDIqeSkrIDMuMCkiKQotKyAgICBzYWdlOiBfID0gbWF4aW1hKCJleHByXzM6IDUqKC1zaW4oeC8y KSpjb3MoeSkgKyBjb3MoeC8yKSpzaW4oMip5KSkiKQotICAgICBzYWdlOiBtYXhpbWEucGxvdDNk KCJbZXhwcl8xLCBleHByXzIsIGV4cHJfM10iLCAiW3gsIC0lcGksICVwaV0iLCAjIG5vdCB0ZXN0 ZWQKLSAgICAgLi4uLjogICAgICAgICAgICAgICAiW3ksIC0lcGksICVwaV0iLCAiWydncmlkLCA0 MCwgNDBdIiwKLSAgICAgLi4uLjogICAgICAgICAgICAgICAnW3Bsb3RfZm9ybWF0LCBvcGVubWF0 aF0nKQotZGlmZiAtLWdpdCBhL3NyYy9kb2MvcHQvdHV0b3JpYWwvdG91cl9hbGdlYnJhLnJzdCBi L3NyYy9kb2MvcHQvdHV0b3JpYWwvdG91cl9hbGdlYnJhLnJzdAotaW5kZXggYmFlYjM3YjFjNzEu LjE3MGUwZDhhMzY3IDEwMDY0NAotLS0tIGEvc3JjL2RvYy9wdC90dXRvcmlhbC90b3VyX2FsZ2Vi cmEucnN0Ci0rKysgYi9zcmMvZG9jL3B0L3R1dG9yaWFsL3RvdXJfYWxnZWJyYS5yc3QKLUBAIC0y MDUsOCArMjA1LDggQEAgZXF1YcOnw6NvICh1c2FuZG8gYSBub3Rhw6fDo28gOm1hdGg6YHg9eF97 MX1gLCA6bWF0aDpgeT14X3syfWApOgotIDo6Ci0gCi0gICAgIHNhZ2U6IGRlMSA9IG1heGltYSgi MipkaWZmKHgodCksdCwgMikgKyA2KngodCkgLSAyKnkodCkiKQotLSAgICBzYWdlOiBsZGUxID0g ZGUxLmxhcGxhY2UoInQiLCJzIik7IGxkZTEKLS0gICAgMiooKC0lYXQoJ2RpZmYoeCh0KSx0LDEp LHQgPSAwKSkrc14yKidsYXBsYWNlKHgodCksdCxzKS14KDApKnMpIC0yKidsYXBsYWNlKHkodCks dCxzKSs2KidsYXBsYWNlKHgodCksdCxzKQotKyAgICBzYWdlOiBsZGUxID0gZGUxLmxhcGxhY2Uo InQiLCJzIik7IGxkZTEuc2FnZSgpCi0rICAgIDIqc14yKmxhcGxhY2UoeCh0KSwgdCwgcykgLSAy KnMqeCgwKSArIDYqbGFwbGFjZSh4KHQpLCB0LCBzKSAtIDIqbGFwbGFjZSh5KHQpLCB0LCBzKSAt IDIqRFswXSh4KSgwKQotIAotIE8gcmVzdWx0YWRvIMOpIHVtIHBvdWNvIGRpZsOtY2lsIGRlIGxl ciwgbWFzIGRpeiBxdWUKLSAKLUBAIC0yMTksOSArMjE5LDEyIEBAIGNhbGN1bGUgYSB0cmFuc2Zv cm1hZGEgZGUgTGFwbGFjZSBkYSBzZWd1bmRhIGVxdWHDp8OjbzoKLSAKLSA6OgotIAotLSAgICBz YWdlOiBkZTIgPSBtYXhpbWEoImRpZmYoeSh0KSx0LCAyKSArIDIqeSh0KSAtIDIqeCh0KSIpCi0t ICAgIHNhZ2U6IGxkZTIgPSBkZTIubGFwbGFjZSgidCIsInMiKTsgbGRlMgotLSAgICAoLSVhdCgn ZGlmZih5KHQpLHQsMSksdCA9IDApKStzXjIqJ2xhcGxhY2UoeSh0KSx0LHMpICsyKidsYXBsYWNl KHkodCksdCxzKS0yKidsYXBsYWNlKHgodCksdCxzKSAteSgwKSpzCi0rICAgIHNhZ2U6IHQscyA9 IFNSLnZhcigndCxzJykKLSsgICAgc2FnZTogeCA9IGZ1bmN0aW9uKCd4JykKLSsgICAgc2FnZTog eSA9IGZ1bmN0aW9uKCd5JykKLSsgICAgc2FnZTogZiA9IDIqeCh0KS5kaWZmKHQsMikgKyA2Kngo dCkgLSAyKnkodCkKLSsgICAgc2FnZTogZi5sYXBsYWNlKHQscykKLSsgICAgMipzXjIqbGFwbGFj ZSh4KHQpLCB0LCBzKSAtIDIqcyp4KDApICsgNipsYXBsYWNlKHgodCksIHQsIHMpIC0gMipsYXBs YWNlKHkodCksIHQsIHMpIC0gMipEWzBdKHgpKDApCi0gCi0gTyByZXN1bHRhZG8gc2lnbmlmaWNh IHF1ZQotIAotZGlmZiAtLWdpdCBhL3NyYy9kb2MvcnUvdHV0b3JpYWwvaW50ZXJmYWNlcy5yc3Qg Yi9zcmMvZG9jL3J1L3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1pbmRleCBlYTg0NTI3ZjQ3OC4u MDYxODE4Y2E0YTUgMTAwNjQ0Ci0tLS0gYS9zcmMvZG9jL3J1L3R1dG9yaWFsL2ludGVyZmFjZXMu cnN0Ci0rKysgYi9zcmMvZG9jL3J1L3R1dG9yaWFsL2ludGVyZmFjZXMucnN0Ci1AQCAtMjY0LDgg KzI2NCw4IEBAIGdudXBsb3QsINC40LzQtdC10YIg0LzQtdGC0L7QtNGLINGA0LXRiNC10L3QuNGP INC4INC80LDQvdC40L/Rg9C70Y/RhtC40Lgg0LzQsNGCCi0gICAgIG1hdHJpeChbMSwxLzIsMS8z LDEvNF0sWzAsMCwwLDBdLFswLDAsMCwwXSxbMCwwLDAsMF0pCi0gICAgIHNhZ2U6IEEuZWlnZW52 YWx1ZXMoKQotICAgICBbWzAsNF0sWzMsMV1dCi0tICAgIHNhZ2U6IEEuZWlnZW52ZWN0b3JzKCkK LS0gICAgW1tbMCw0XSxbMywxXV0sW1tbMSwwLDAsLTRdLFswLDEsMCwtMl0sWzAsMCwxLC00LzNd XSxbWzEsMiwzLDRdXV1dCi0rICAgIHNhZ2U6IEEuZWlnZW52ZWN0b3JzKCkuc2FnZSgpCi0rICAg IFtbWzAsIDRdLCBbMywgMV1dLCBbW1sxLCAwLCAwLCAtNF0sIFswLCAxLCAwLCAtMl0sIFswLCAw LCAxLCAtNC8zXV0sIFtbMSwgMiwgMywgNF1dXV0KLSAKLSDQktC+0YIg0LTRgNGD0LPQvtC5INC/ 0YDQuNC80LXRgDoKLSAKLUBAIC0zMjMsMTIgKzMyMyw5IEBAIGdudXBsb3QsINC40LzQtdC10YIg 0LzQtdGC0L7QtNGLINGA0LXRiNC10L3QuNGPINC4INC80LDQvdC40L/Rg9C70Y/RhtC40Lgg0LzQ sNGCCi0gCi0gOjoKLSAKLS0gICAgc2FnZTogbWF4aW1hKCJleHByXzE6IDUqY29zKHgpKihjb3Mo eC8yKSpjb3MoeSkgKyBzaW4oeC8yKSpzaW4oMip5KSsgMy4wKSAtIDEwLjAiKQotLSAgICA1KmNv cyh4KSooc2luKHgvMikqc2luKDIqeSkrY29zKHgvMikqY29zKHkpKzMuMCktMTAuMAotLSAgICBz YWdlOiBtYXhpbWEoImV4cHJfMjogLTUqc2luKHgpKihjb3MoeC8yKSpjb3MoeSkgKyBzaW4oeC8y KSpzaW4oMip5KSsgMy4wKSIpCi0tICAgIC01KnNpbih4KSooc2luKHgvMikqc2luKDIqeSkrY29z KHgvMikqY29zKHkpKzMuMCkKLS0gICAgc2FnZTogbWF4aW1hKCJleHByXzM6IDUqKC1zaW4oeC8y KSpjb3MoeSkgKyBjb3MoeC8yKSpzaW4oMip5KSkiKQotLSAgICA1Kihjb3MoeC8yKSpzaW4oMip5 KS1zaW4oeC8yKSpjb3MoeSkpCi0rICAgIHNhZ2U6IF8gPSBtYXhpbWEoImV4cHJfMTogNSpjb3Mo eCkqKGNvcyh4LzIpKmNvcyh5KSArIHNpbih4LzIpKnNpbigyKnkpKyAzLjApIC0gMTAuMCIpCi0r ICAgIHNhZ2U6IF8gPSBtYXhpbWEoImV4cHJfMjogLTUqc2luKHgpKihjb3MoeC8yKSpjb3MoeSkg KyBzaW4oeC8yKSpzaW4oMip5KSsgMy4wKSIpCi0rICAgIHNhZ2U6IF8gPSBtYXhpbWEoImV4cHJf MzogNSooLXNpbih4LzIpKmNvcyh5KSArIGNvcyh4LzIpKnNpbigyKnkpKSIpCi0gICAgIHNhZ2U6 IG1heGltYS5wbG90M2QgKCJbZXhwcl8xLCBleHByXzIsIGV4cHJfM10iLCAiW3gsIC0lcGksICVw aV0iLCAjIG5vdCB0ZXN0ZWQKLSAgICAgLi4uLjogICAgICJbeSwgLSVwaSwgJXBpXSIsICJbJ2dy aWQsIDQwLCA0MF0iLAotICAgICAuLi4uOiAgICAgJ1twbG90X2Zvcm1hdCwgb3Blbm1hdGhdJykK LWRpZmYgLS1naXQgYS9zcmMvZG9jL3J1L3R1dG9yaWFsL3RvdXJfYWxnZWJyYS5yc3QgYi9zcmMv ZG9jL3J1L3R1dG9yaWFsL3RvdXJfYWxnZWJyYS5yc3QKLWluZGV4IDlmMDhjNDFkMTE4Li5iYzBk NDkyNmY4MyAxMDA2NDQKLS0tLSBhL3NyYy9kb2MvcnUvdHV0b3JpYWwvdG91cl9hbGdlYnJhLnJz dAotKysrIGIvc3JjL2RvYy9ydS90dXRvcmlhbC90b3VyX2FsZ2VicmEucnN0Ci1AQCAtMTk5LDgg KzE5OSw4IEBAIFNhZ2Ug0LzQvtC20LXRgiDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YzRgdGPINC0 0LvRjyDRgNC10YjQtdC90LjRjyDQtNC40YTRhNC10YAKLSA6OgotIAotICAgICBzYWdlOiBkZTEg PSBtYXhpbWEoIjIqZGlmZih4KHQpLHQsIDIpICsgNip4KHQpIC0gMip5KHQpIikKLS0gICAgc2Fn ZTogbGRlMSA9IGRlMS5sYXBsYWNlKCJ0IiwicyIpOyBsZGUxCi0tICAgIDIqKCgtJWF0KCdkaWZm KHgodCksdCwxKSx0ID0gMCkpK3NeMionbGFwbGFjZSh4KHQpLHQscykteCgwKSpzKSAtMionbGFw bGFjZSh5KHQpLHQscykrNionbGFwbGFjZSh4KHQpLHQscykKLSsgICAgc2FnZTogbGRlMSA9IGRl MS5sYXBsYWNlKCJ0IiwicyIpOyBsZGUxLnNhZ2UoKQotKyAgICAyKnNeMipsYXBsYWNlKHgodCks IHQsIHMpIC0gMipzKngoMCkgKyA2KmxhcGxhY2UoeCh0KSwgdCwgcykgLSAyKmxhcGxhY2UoeSh0 KSwgdCwgcykgLSAyKkRbMF0oeCkoMCkKLSAKLSDQlNCw0L3QvdGL0Lkg0YDQtdC30YPQu9GM0YLQ sNGCINGC0Y/QttC10LvQviDRh9C40YLQsNC10LwsINC+0LTQvdCw0LrQviDQtNC+0LvQttC10L0g 0LHRi9GC0Ywg0L/QvtC90Y/RgiDQutCw0LoKLSAKLUBAIC0yMTAsOSArMjEwLDEyIEBAIFNhZ2Ug 0LzQvtC20LXRgiDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YzRgdGPINC00LvRjyDRgNC10YjQtdC9 0LjRjyDQtNC40YTRhNC10YAKLSAKLSA6OgotIAotLSAgICBzYWdlOiBkZTIgPSBtYXhpbWEoImRp ZmYoeSh0KSx0LCAyKSArIDIqeSh0KSAtIDIqeCh0KSIpCi0tICAgIHNhZ2U6IGxkZTIgPSBkZTIu bGFwbGFjZSgidCIsInMiKTsgbGRlMgotLSAgICAoLSVhdCgnZGlmZih5KHQpLHQsMSksdCA9IDAp KStzXjIqJ2xhcGxhY2UoeSh0KSx0LHMpICsyKidsYXBsYWNlKHkodCksdCxzKS0yKidsYXBsYWNl KHgodCksdCxzKSAteSgwKSpzCi0rICAgIHNhZ2U6IHQscyA9IFNSLnZhcigndCxzJykKLSsgICAg c2FnZTogeCA9IGZ1bmN0aW9uKCd4JykKLSsgICAgc2FnZTogeSA9IGZ1bmN0aW9uKCd5JykKLSsg ICAgc2FnZTogZiA9IDIqeCh0KS5kaWZmKHQsMikgKyA2KngodCkgLSAyKnkodCkKLSsgICAgc2Fn ZTogZi5sYXBsYWNlKHQscykKLSsgICAgMipzXjIqbGFwbGFjZSh4KHQpLCB0LCBzKSAtIDIqcyp4 KDApICsgNipsYXBsYWNlKHgodCksIHQsIHMpIC0gMipsYXBsYWNlKHkodCksIHQsIHMpIC0gMipE WzBdKHgpKDApCi0gCi0g0KDQtdC30YPQu9GM0YLQsNGCOgotIAotZGlmZiAtLWdpdCBhL3NyYy9z YWdlL2NhbGN1bHVzL2NhbGN1bHVzLnB5IGIvc3JjL3NhZ2UvY2FsY3VsdXMvY2FsY3VsdXMucHkK LWluZGV4IGM3MDc1MzBiOWYxLi5mN2NlOGI5NTcyNyAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2Nh bGN1bHVzL2NhbGN1bHVzLnB5Ci0rKysgYi9zcmMvc2FnZS9jYWxjdWx1cy9jYWxjdWx1cy5weQot QEAgLTc4Myw3ICs3ODMsNyBAQCBkZWYgbmludGVncmFsKGV4LCB4LCBhLCBiLAotICAgICBOb3cg bnVtZXJpY2FsbHkgaW50ZWdyYXRpbmcsIHdlIHNlZSB3aHkgdGhlIGFuc3dlciBpcyB3cm9uZzo6 Ci0gCi0gICAgICAgICBzYWdlOiBmLm5pbnRlZ3JhdGUoeCwwLDEpCi0tICAgICAgICAoLTQ4MC4w MDAwMDAwMDAwMDAxLCA1LjMyOTA3MDUxODIwMDc1Li4uZS0xMiwgMjEsIDApCi0rICAgICAgICAo LTQ4MC4wMDAwMDAwMDAwMDAuLi4sIDUuMzI5MDcwNTE4MjAwNzUuLi5lLTEyLCAyMSwgMCkKLSAK LSAgICAgSXQgaXMganVzdCBiZWNhdXNlIGV2ZXJ5IGZsb2F0aW5nIHBvaW50IGV2YWx1YXRpb24g b2YgcmV0dXJuIC00ODAuMAotICAgICBpbiBmbG9hdGluZyBwb2ludC4KLUBAIC0xMzM2LDcgKzEz MzYsNyBAQCBkZWYgbGltaXQoZXgsIGRpcj1Ob25lLCB0YXlsb3I9RmFsc2UsIGFsZ29yaXRobT0n bWF4aW1hJywgKiphcmd2KToKLSAgICAgICAgIHNhZ2U6IGxpbWl0KGZsb29yKHgpLCB4PTAsIGRp cj0nKycpCi0gICAgICAgICAwCi0gICAgICAgICBzYWdlOiBsaW1pdChmbG9vcih4KSwgeD0wKQot LSAgICAgICAgdW5kCi0rICAgICAgICAuLi5uZAotIAotICAgICBNYXhpbWEgZ2l2ZXMgdGhlIHJp Z2h0IGFuc3dlciBoZXJlLCB0b28sIHNob3dpbmcKLSAgICAgdGhhdCA6dHJhYzpgNDE0MmAgaXMg Zml4ZWQ6OgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2NhbGN1bHVzL2Rlc29sdmVycy5weSBiL3Ny Yy9zYWdlL2NhbGN1bHVzL2Rlc29sdmVycy5weQotaW5kZXggZTBjMzE5MjVmNDQuLjZlOTFmN2Uy YmI0IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvY2FsY3VsdXMvZGVzb2x2ZXJzLnB5Ci0rKysgYi9z cmMvc2FnZS9jYWxjdWx1cy9kZXNvbHZlcnMucHkKLUBAIC0yOTUsNyArMjk1LDcgQEAgZGVmIGRl c29sdmUoZGUsIGR2YXIsIGljcz1Ob25lLCBpdmFyPU5vbmUsIHNob3dfbWV0aG9kPUZhbHNlLCBj b250cmliX29kZT1GYWxzZSwKLSAgICAgQ2xhaXJhdXQgZXF1YXRpb246IGdlbmVyYWwgYW5kIHNp bmd1bGFyIHNvbHV0aW9uczo6Ci0gCi0gICAgICAgICBzYWdlOiBkZXNvbHZlKGRpZmYoeSx4KV4y K3gqZGlmZih5LHgpLXk9PTAseSxjb250cmliX29kZT1UcnVlLHNob3dfbWV0aG9kPVRydWUpCi0t ICAgICAgICBbW3koeCkgPT0gX0NeMiArIF9DKngsIHkoeCkgPT0gLTEvNCp4XjJdLCAnY2xhaXJh dWx0J10KLSsgICAgICAgIFtbeSh4KSA9PSBfQ14yICsgX0MqeCwgeSh4KSA9PSAtMS80KnheMl0s ICdjbGFpcmF1Li4uJ10KLSAKLSAgICAgRm9yIGVxdWF0aW9ucyBpbnZvbHZpbmcgbW9yZSB2YXJp YWJsZXMgd2Ugc3BlY2lmeSBhbiBpbmRlcGVuZGVudCB2YXJpYWJsZTo6Ci0gCi1AQCAtMTMyNSw3 ICsxMzI1LDcgQEAgZGVmIGRlc29sdmVfcms0KGRlLCBkdmFyLCBpY3M9Tm9uZSwgaXZhcj1Ob25l LCBlbmRfcG9pbnRzPU5vbmUsIHN0ZXA9MC4xLCBvdXRwdXQKLSAKLSAgICAgICAgIHNhZ2U6IHgs eSA9IHZhcigneCx5JykKLSAgICAgICAgIHNhZ2U6IGRlc29sdmVfcms0KHgqeSooMi15KSx5LGlj cz1bMCwxXSxlbmRfcG9pbnRzPTEsc3RlcD0wLjUpCi0tICAgICAgICBbWzAsIDFdLCBbMC41LCAx LjEyNDE5MTI3NDI0NTU4XSwgWzEuMCwgMS40NjE1OTAxNjIyODg4MjVdXQotKyAgICAgICAgW1sw LCAxXSwgWzAuNSwgMS4xMjQxOTEyNzQyNDU1OF0sIFsxLjAsIDEuNDYxNTkwMTYyMjg4ODIuLi5d XQotIAotICAgICBWYXJpYW50IDEgZm9yIGlucHV0IC0gd2UgY2FuIHBhc3MgT0RFIGluIHRoZSBm b3JtIHVzZWQgYnkKLSAgICAgZGVzb2x2ZSBmdW5jdGlvbiBJbiB0aGlzIGV4YW1wbGUgd2UgaW50 ZWdyYXRlIGJhY2t3YXJkcywgc2luY2UKLUBAIC0xMzMzLDcgKzEzMzMsNyBAQCBkZWYgZGVzb2x2 ZV9yazQoZGUsIGR2YXIsIGljcz1Ob25lLCBpdmFyPU5vbmUsIGVuZF9wb2ludHM9Tm9uZSwgc3Rl cD0wLjEsIG91dHB1dAotIAotICAgICAgICAgc2FnZTogeSA9IGZ1bmN0aW9uKCd5JykoeCkKLSAg ICAgICAgIHNhZ2U6IGRlc29sdmVfcms0KGRpZmYoeSx4KSt5Kih5LTEpID09IHgtMix5LGljcz1b MSwxXSxzdGVwPTAuNSwgZW5kX3BvaW50cz0wKQotLSAgICAgICAgW1swLjAsIDguOTA0MjU3MTA4 OTYyMTEyXSwgWzAuNSwgMS45MDkzMjc5NDUzNjE1MzVdLCBbMSwgMV1dCi0rICAgICAgICBbWzAu MCwgOC45MDQyNTcxMDg5NjIxMTJdLCBbMC41LCAxLjkwOTMyNzk0NTM2MTUzLi4uXSwgWzEsIDFd XQotIAotICAgICBIZXJlIHdlIHNob3cgaG93IHRvIHBsb3Qgc2ltcGxlIHBpY3R1cmVzLiBGb3Ig bW9yZSBhZHZhbmNlZAotICAgICBhcHBsaWNhdGlvbnMgdXNlIGxpc3RfcGxvdCBpbnN0ZWFkLiBU byBzZWUgdGhlIHJlc3VsdGluZyBwaWN0dXJlCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvZnVuY3Rp b25zL2Jlc3NlbC5weSBiL3NyYy9zYWdlL2Z1bmN0aW9ucy9iZXNzZWwucHkKLWluZGV4IDk1NDA1 YzNkNzJmLi40ODYwN2M0OWY1NiAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2Z1bmN0aW9ucy9iZXNz ZWwucHkKLSsrKyBiL3NyYy9zYWdlL2Z1bmN0aW9ucy9iZXNzZWwucHkKLUBAIC0yOTMsOSArMjkz LDYgQEAgY2xhc3MgRnVuY3Rpb25fQmVzc2VsX0ooQnVpbHRpbkZ1bmN0aW9uKToKLSAgICAgICAg IHNhZ2U6IGYgPSBiZXNzZWxfSigyLCB4KQotICAgICAgICAgc2FnZTogZi5pbnRlZ3JhdGUoeCkK LSAgICAgICAgIDEvMjQqeF4zKmh5cGVyZ2VvbWV0cmljKCgzLzIsKSwgKDUvMiwgMyksIC0xLzQq eF4yKQotLSAgICAgICAgc2FnZTogbSA9IG1heGltYShiZXNzZWxfSigyLCB4KSkKLS0gICAgICAg IHNhZ2U6IG0uaW50ZWdyYXRlKHgpCi0tICAgICAgICAoaHlwZXJnZW9tZXRyaWMoWzMvMl0sWzUv MiwzXSwtX1NBR0VfVkFSX3heMi80KSpfU0FHRV9WQVJfeF4zKS8yNAotIAotICAgICBWaXN1YWxp emF0aW9uIChzZXQgcGxvdF9wb2ludHMgdG8gYSBoaWdoZXIgdmFsdWUgdG8gZ2V0IG1vcmUgZGV0 YWlsKTo6Ci0gCi1AQCAtMTExOCwxMSArMTExNSwxMSBAQCBkZWYgQmVzc2VsKCphcmdzLCAqKmt3 ZHMpOgotICAgICBDb252ZXJzaW9uIHRvIG90aGVyIHN5c3RlbXM6OgotIAotICAgICAgICAgc2Fn ZTogeCx5ID0gdmFyKCd4LHknKQotLSAgICAgICAgc2FnZTogZiA9IG1heGltYShCZXNzZWwodHlw PSdLJykoeCx5KSkKLS0gICAgICAgIHNhZ2U6IGYuZGVyaXZhdGl2ZSgnX1NBR0VfVkFSX3gnKQot LSAgICAgICAgKCVwaSpjc2MoJXBpKl9TQUdFX1ZBUl94KSAqKCdkaWZmKGJlc3NlbF9pKC1fU0FH RV9WQVJfeCxfU0FHRV9WQVJfeSksX1NBR0VfVkFSX3gsMSkgLSdkaWZmKGJlc3NlbF9pKF9TQUdF X1ZBUl94LF9TQUdFX1ZBUl95KSxfU0FHRV9WQVJfeCwxKSkpIC8yIC0lcGkqYmVzc2VsX2soX1NB R0VfVkFSX3gsX1NBR0VfVkFSX3kpKmNvdCglcGkqX1NBR0VfVkFSX3gpCi0tICAgICAgICBzYWdl OiBmLmRlcml2YXRpdmUoJ19TQUdFX1ZBUl95JykKLS0gICAgICAgIC0oYmVzc2VsX2soX1NBR0Vf VkFSX3grMSxfU0FHRV9WQVJfeSkrYmVzc2VsX2soX1NBR0VfVkFSX3gtMSwgX1NBR0VfVkFSX3kp KS8yCi0rICAgICAgICBzYWdlOiBmID0gQmVzc2VsKHR5cD0nSycpKHgseSkKLSsgICAgICAgIHNh Z2U6IGV4cGVjdGVkID0gZi5kZXJpdmF0aXZlKHkpCi0rICAgICAgICBzYWdlOiBhY3R1YWwgPSBt YXhpbWEoZikuZGVyaXZhdGl2ZSgnX1NBR0VfVkFSX3knKS5zYWdlKCkKLSsgICAgICAgIHNhZ2U6 IGJvb2woYWN0dWFsID09IGV4cGVjdGVkKQotKyAgICAgICAgVHJ1ZQotIAotICAgICBDb21wdXRl IHRoZSBwYXJ0aWN1bGFyIHNvbHV0aW9uIHRvIEJlc3NlbCdzIERpZmZlcmVudGlhbCBFcXVhdGlv biB0aGF0Ci0gICAgIHNhdGlzZmllcyBgeSgxKSA9IDFgIGFuZCBgeScoMSkgPSAxYCwgdGhlbiB2 ZXJpZnkgdGhlIGluaXRpYWwgY29uZGl0aW9ucwotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2Z1bmN0 aW9ucy9oeXBlcmdlb21ldHJpYy5weSBiL3NyYy9zYWdlL2Z1bmN0aW9ucy9oeXBlcmdlb21ldHJp Yy5weQotaW5kZXggNzUyYjg0MjJmYzYuLmZjMmZiNTg3NWNlIDEwMDY0NAotLS0tIGEvc3JjL3Nh Z2UvZnVuY3Rpb25zL2h5cGVyZ2VvbWV0cmljLnB5Ci0rKysgYi9zcmMvc2FnZS9mdW5jdGlvbnMv aHlwZXJnZW9tZXRyaWMucHkKLUBAIC0xOSw4ICsxOSwxMSBAQAotICAgICBzYWdlOiBzdW0oKCgy KkkpXngvKHheMyArIDEpKigxLzQpXngpLCB4LCAwLCBvbykKLSAgICAgaHlwZXJnZW9tZXRyaWMo KDEsIDEsIC0xLzIqSSpzcXJ0KDMpIC0gMS8yLCAxLzIqSSpzcXJ0KDMpIC0gMS8yKSwuLi4KLSAg ICAgKDIsIC0xLzIqSSpzcXJ0KDMpICsgMS8yLCAxLzIqSSpzcXJ0KDMpICsgMS8yKSwgMS8yKkkp Ci0tICAgIHNhZ2U6IHN1bSgoLTEpXngvKCgyKnggKyAxKSpmYWN0b3JpYWwoMip4ICsgMSkpLCB4 LCAwLCBvbykKLSsgICAgc2FnZTogcmVzID0gc3VtKCgtMSleeC8oKDIqeCArIDEpKmZhY3Rvcmlh bCgyKnggKyAxKSksIHgsIDAsIG9vKQotKyAgICBzYWdlOiByZXMgICMgbm90IHRlc3RlZCAtIGRl cGVuZHMgb24gbWF4aW1hIHZlcnNpb24KLSAgICAgaHlwZXJnZW9tZXRyaWMoKDEvMiwpLCAoMy8y LCAzLzIpLCAtMS80KQotKyAgICBzYWdlOiByZXMgaW4gW2h5cGVyZ2VvbWV0cmljKCgxLzIsKSwg KDMvMiwgMy8yKSwgLTEvNCksIHNpbl9pbnRlZ3JhbCgxKV0KLSsgICAgVHJ1ZQotIAotIFNpbXBs aWZpY2F0aW9uIChub3RlIHRoYXQgYGBzaW1wbGlmeV9mdWxsYGAgZG9lcyBub3QgeWV0IGNhbGwK LSBgYHNpbXBsaWZ5X2h5cGVyZ2VvbWV0cmljYGApOjoKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9m dW5jdGlvbnMvb3J0aG9nb25hbF9wb2x5cy5weSBiL3NyYy9zYWdlL2Z1bmN0aW9ucy9vcnRob2dv bmFsX3BvbHlzLnB5Ci1pbmRleCA3Mzk4Yzc2Mzk3MS4uNjEyN2Y1ZDk0OTAgMTAwNjQ0Ci0tLS0g YS9zcmMvc2FnZS9mdW5jdGlvbnMvb3J0aG9nb25hbF9wb2x5cy5weQotKysrIGIvc3JjL3NhZ2Uv ZnVuY3Rpb25zL29ydGhvZ29uYWxfcG9seXMucHkKLUBAIC05NzQsNyArOTc0LDcgQEAgZGVmIF9f aW5pdF9fKHNlbGYpOgotICAgICAgICAgICAgIHNhZ2U6IGNoZWJ5c2hldl9VKHgsIHgpLl9zeW1w eV8oKQotICAgICAgICAgICAgIGNoZWJ5c2hldnUoeCwgeCkKLSAgICAgICAgICAgICBzYWdlOiBt YXhpbWEoY2hlYnlzaGV2X1UoMix4LCBob2xkPVRydWUpKQotLSAgICAgICAgICAgIDMqKCgtKDgq KDEtX1NBR0VfVkFSX3gpKS8zKSsoNCooMS1fU0FHRV9WQVJfeCleMikvMysxKQotKyAgICAgICAg ICAgIDMqKC4uLi0uLi4oOCooMS1fU0FHRV9WQVJfeCkpLzMpKyg0KigxLV9TQUdFX1ZBUl94KV4y KS8zKzEpCi0gICAgICAgICAgICAgc2FnZTogbWF4aW1hKGNoZWJ5c2hldl9VKG4seCwgaG9sZD1U cnVlKSkKLSAgICAgICAgICAgICBjaGVieXNoZXZfdShfU0FHRV9WQVJfbixfU0FHRV9WQVJfeCkK LSAgICAgICAgICIiIgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2Z1bmN0aW9ucy9vdGhlci5weSBi L3NyYy9zYWdlL2Z1bmN0aW9ucy9vdGhlci5weQotaW5kZXggM2UyNTcwZTg4OWUuLjVhMGYwNmEy N2Y4IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvZnVuY3Rpb25zL290aGVyLnB5Ci0rKysgYi9zcmMv c2FnZS9mdW5jdGlvbnMvb3RoZXIucHkKLUBAIC00OTgsMTAgKzQ5OCwxMCBAQCBkZWYgX19pbml0 X18oc2VsZik6Ci0gICAgICAgICAgICAgPGNsYXNzICdzYWdlLnJpbmdzLmludGVnZXIuSW50ZWdl cic+Ci0gICAgICAgICAgICAgc2FnZTogdmFyKCd4JykKLSAgICAgICAgICAgICB4Ci0tICAgICAg ICAgICAgc2FnZTogYSA9IGZsb29yKDUuNCArIHgpOyBhCi0tICAgICAgICAgICAgZmxvb3IoeCAr IDUuNDAwMDAwMDAwMDAwMDApCi0rICAgICAgICAgICAgc2FnZTogYSA9IGZsb29yKDUuMjUgKyB4 KTsgYQotKyAgICAgICAgICAgIGZsb29yKHggKyA1LjI1MDAwMDAwMDAwMDAwKQotICAgICAgICAg ICAgIHNhZ2U6IGEuc2ltcGxpZnkoKQotLSAgICAgICAgICAgIGZsb29yKHggKyAwLjQwMDAwMDAw MDAwMDAwMDQpICsgNQotKyAgICAgICAgICAgIGZsb29yKHggKyAwLjI1KSArIDUKLSAgICAgICAg ICAgICBzYWdlOiBhKHg9MikKLSAgICAgICAgICAgICA3Ci0gCi1kaWZmIC0tZ2l0IGEvc3JjL3Nh Z2UvZnVuY3Rpb25zL3NwZWNpYWwucHkgYi9zcmMvc2FnZS9mdW5jdGlvbnMvc3BlY2lhbC5weQot aW5kZXggZmFhNmE3M2NjN2UuLmQ3MmU3ODA4MzZhIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvZnVu Y3Rpb25zL3NwZWNpYWwucHkKLSsrKyBiL3NyYy9zYWdlL2Z1bmN0aW9ucy9zcGVjaWFsLnB5Ci1A QCAtNDU1LDkgKzQ1NSw4IEBAIGNsYXNzIEVsbGlwdGljRShCdWlsdGluRnVuY3Rpb24pOgotICAg ICAgICAgc2FnZTogeiA9IHZhcigieiIpCi0gICAgICAgICBzYWdlOiBlbGxpcHRpY19lKHosIDEp Ci0gICAgICAgICBlbGxpcHRpY19lKHosIDEpCi0tICAgICAgICBzYWdlOiAjIHRoaXMgaXMgc3Rp bGwgd3Jvbmc6IG11c3QgYmUgYWJzKHNpbih6KSkgKyAyKnJvdW5kKHovcGkpCi0tICAgICAgICBz YWdlOiBlbGxpcHRpY19lKHosIDEpLnNpbXBsaWZ5KCkKLS0gICAgICAgIDIqcm91bmQoei9waSkg KyBzaW4oeikKLSsgICAgICAgIHNhZ2U6IGVsbGlwdGljX2UoeiwgMSkuc2ltcGxpZnkoKSAjIG5v dCB0ZXN0ZWQgLSBnaXZlcyB3cm9uZyBhbnN3ZXIgd2l0aCBtYXhpbWEgPCA1LjQ3Ci0rICAgICAg ICAyKnJvdW5kKHovcGkpIC0gc2luKHBpKnJvdW5kKHovcGkpIC0geikKLSAgICAgICAgIHNhZ2U6 IGVsbGlwdGljX2UoeiwgMCkKLSAgICAgICAgIHoKLSAgICAgICAgIHNhZ2U6IGVsbGlwdGljX2Uo MC41LCAwLjEpICAjIGFicyB0b2wgMmUtMTUKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9pbnRlcmZh Y2VzL2ludGVyZmFjZS5weSBiL3NyYy9zYWdlL2ludGVyZmFjZXMvaW50ZXJmYWNlLnB5Ci1pbmRl eCA2YmFhNGViNTk3Yy4uZjgyMzdkM2FkOTQgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9pbnRlcmZh Y2VzL2ludGVyZmFjZS5weQotKysrIGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9pbnRlcmZhY2UucHkK LUBAIC0xNTc5LDIwICsxNTc5LDIwIEBAIGRlZiBfbXVsXyhzZWxmLCByaWdodCk6Ci0gICAgICAg ICA6OgotIAotICAgICAgICAgICAgIHNhZ2U6IGYgPSBtYXhpbWEuZnVuY3Rpb24oJ3gnLCdzaW4o eCknKQotLSAgICAgICAgICAgIHNhZ2U6IGcgPSBtYXhpbWEoJy1jb3MoeCknKSAjIG5vdCBhIGZ1 bmN0aW9uIQotKyAgICAgICAgICAgIHNhZ2U6IGcgPSBtYXhpbWEoJ2Nvcyh4KScpICMgbm90IGEg ZnVuY3Rpb24hCi0gICAgICAgICAgICAgc2FnZTogZipnCi0tICAgICAgICAgICAgLWNvcyh4KSpz aW4oeCkKLSsgICAgICAgICAgICBjb3MoeCkqc2luKHgpCi0gICAgICAgICAgICAgc2FnZTogXygy KQotLSAgICAgICAgICAgIC1jb3MoMikqc2luKDIpCi0rICAgICAgICAgICAgY29zKDIpKnNpbigy KQotIAotICAgICAgICAgOjoKLSAKLSAgICAgICAgICAgICBzYWdlOiBmID0gbWF4aW1hLmZ1bmN0 aW9uKCd4Jywnc2luKHgpJykKLS0gICAgICAgICAgICBzYWdlOiBnID0gbWF4aW1hKCctY29zKHgp JykKLSsgICAgICAgICAgICBzYWdlOiBnID0gbWF4aW1hKCdjb3MoeCknKQotICAgICAgICAgICAg IHNhZ2U6IGcqZgotLSAgICAgICAgICAgIC1jb3MoeCkqc2luKHgpCi0rICAgICAgICAgICAgY29z KHgpKnNpbih4KQotICAgICAgICAgICAgIHNhZ2U6IF8oMikKLS0gICAgICAgICAgICAtY29zKDIp KnNpbigyKQotKyAgICAgICAgICAgIGNvcygyKSpzaW4oMikKLSAgICAgICAgICAgICBzYWdlOiAy KmYKLSAgICAgICAgICAgICAyKnNpbih4KQotICAgICAgICAgIiIiCi1AQCAtMTYxMiwyMCArMTYx MiwyMCBAQCBkZWYgX2Rpdl8oc2VsZiwgcmlnaHQpOgotICAgICAgICAgOjoKLSAKLSAgICAgICAg ICAgICBzYWdlOiBmID0gbWF4aW1hLmZ1bmN0aW9uKCd4Jywnc2luKHgpJykKLS0gICAgICAgICAg ICBzYWdlOiBnID0gbWF4aW1hKCctY29zKHgpJykKLSsgICAgICAgICAgICBzYWdlOiBnID0gbWF4 aW1hKCdjb3MoeCknKQotICAgICAgICAgICAgIHNhZ2U6IGYvZwotLSAgICAgICAgICAgIC1zaW4o eCkvY29zKHgpCi0rICAgICAgICAgICAgc2luKHgpL2Nvcyh4KQotICAgICAgICAgICAgIHNhZ2U6 IF8oMikKLS0gICAgICAgICAgICAtc2luKDIpL2NvcygyKQotKyAgICAgICAgICAgIHNpbigyKS9j b3MoMikKLSAKLSAgICAgICAgIDo6Ci0gCi0gICAgICAgICAgICAgc2FnZTogZiA9IG1heGltYS5m dW5jdGlvbigneCcsJ3Npbih4KScpCi0tICAgICAgICAgICAgc2FnZTogZyA9IG1heGltYSgnLWNv cyh4KScpCi0rICAgICAgICAgICAgc2FnZTogZyA9IG1heGltYSgnY29zKHgpJykKLSAgICAgICAg ICAgICBzYWdlOiBnL2YKLS0gICAgICAgICAgICAtY29zKHgpL3Npbih4KQotKyAgICAgICAgICAg IGNvcyh4KS9zaW4oeCkKLSAgICAgICAgICAgICBzYWdlOiBfKDIpCi0tICAgICAgICAgICAgLWNv cygyKS9zaW4oMikKLSsgICAgICAgICAgICBjb3MoMikvc2luKDIpCi0gICAgICAgICAgICAgc2Fn ZTogMi9mCi0gICAgICAgICAgICAgMi9zaW4oeCkKLSAgICAgICAgICIiIgotZGlmZiAtLWdpdCBh L3NyYy9zYWdlL2ludGVyZmFjZXMvbWF4aW1hLnB5IGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9tYXhp bWEucHkKLWluZGV4IDQ4Mjk1NjBmOThiLi45NTllNzU0NTlhMiAxMDA2NDQKLS0tLSBhL3NyYy9z YWdlL2ludGVyZmFjZXMvbWF4aW1hLnB5Ci0rKysgYi9zcmMvc2FnZS9pbnRlcmZhY2VzL21heGlt YS5weQotQEAgLTQ5LDkgKzQ5LDE0IEBACi0gCi0gOjoKLSAKLSsgICAgc2FnZTogeCx5ID0gU1Iu dmFyKCd4LHknKQotICAgICBzYWdlOiBGID0gbWF4aW1hLmZhY3RvcigneF41IC0geV41JykKLS0g ICAgc2FnZTogRgotLSAgICAtKHkteCkqKHleNCt4KnleMyt4XjIqeV4yK3heMyp5K3heNCkKLSsg ICAgc2FnZTogRiAjIG5vdCB0ZXN0ZWQgLSBkZXBlbmRzIG9uIG1heGltYSB2ZXJzaW9uCi0rICAg IC0oKHkteCkqKHleNCt4KnleMyt4XjIqeV4yK3heMyp5K3heNCkpCi0rICAgIHNhZ2U6IGFjdHVh bCA9IEYuc2FnZSgpCi0rICAgIHNhZ2U6IGV4cGVjdGVkID0gLSh5LXgpKih5XjQreCp5XjMreF4y KnleMit4XjMqeSt4XjQpCi0rICAgIHNhZ2U6IGJvb2woYWN0dWFsID09IGV4cGVjdGVkKQotKyAg ICBUcnVlCi0gICAgIHNhZ2U6IHR5cGUoRikKLSAgICAgPGNsYXNzICdzYWdlLmludGVyZmFjZXMu bWF4aW1hLk1heGltYUVsZW1lbnQnPgotIAotQEAgLTcxLDE4ICs3NiwxOSBAQAotIAotIDo6Ci0g Ci0rICAgIHNhZ2U6IEYgPSBtYXhpbWEoJ3ggKiB5JykKLSAgICAgc2FnZTogcmVwcihGKQotLSAg ICAnLSh5LXgpKih5XjQreCp5XjMreF4yKnleMit4XjMqeSt4XjQpJwotKyAgICAneCp5JwotICAg ICBzYWdlOiBGLnN0cigpCi0tICAgICctKHkteCkqKHleNCt4KnleMyt4XjIqeV4yK3heMyp5K3he NCknCi0rICAgICd4KnknCi0gCi0gVGhlIGBgbWF4aW1hLmV2YWxgYCBjb21tYW5kIGV2YWx1YXRl cyBhbiBleHByZXNzaW9uIGluCi0gbWF4aW1hIGFuZCByZXR1cm5zIHRoZSByZXN1bHQgYXMgYSAq c3RyaW5nKiBub3QgYSBtYXhpbWEgb2JqZWN0LgotIAotIDo6Ci0gCi0tICAgIHNhZ2U6IHByaW50 KG1heGltYS5ldmFsKCdmYWN0b3IoeF41IC0geV41KScpKQotLSAgICAtKHkteCkqKHleNCt4Knle Myt4XjIqeV4yK3heMyp5K3heNCkKLSsgICAgc2FnZTogcHJpbnQobWF4aW1hLmV2YWwoJ2ZhY3Rv cih4XjUgLSAxKScpKQotKyAgICAoeC0xKSooeF40K3heMyt4XjIreCsxKQotIAotIFdlIGNhbiBj cmVhdGUgdGhlIHBvbHlub21pYWwgYGZgIGFzIGEgTWF4aW1hIHBvbHlub21pYWwsCi0gdGhlbiBj YWxsIHRoZSBmYWN0b3IgbWV0aG9kIG9uIGl0LiBOb3RpY2UgdGhhdCB0aGUgbm90YXRpb24KLUBA IC05MSwxMSArOTcsMTEgQEAKLSAKLSA6OgotIAotLSAgICBzYWdlOiBmID0gbWF4aW1hKCd4XjUg LSB5XjUnKQotKyAgICBzYWdlOiBmID0gbWF4aW1hKCd4XjUgKyB5XjUnKQotICAgICBzYWdlOiBm XjIKLS0gICAgKHheNS15XjUpXjIKLSsgICAgKHleNSt4XjUpXjIKLSAgICAgc2FnZTogZi5mYWN0 b3IoKQotLSAgICAtKHkteCkqKHleNCt4KnleMyt4XjIqeV4yK3heMyp5K3heNCkKLSsgICAgKHkr eCkqKHleNC14KnleMyt4XjIqeV4yLXheMyp5K3heNCkKLSAKLSBDb250cm9sLUMgaW50ZXJydXB0 aW9uIHdvcmtzIHdlbGwgd2l0aCB0aGUgbWF4aW1hIGludGVyZmFjZSwKLSBiZWNhdXNlIG9mIHRo ZSBleGNlbGxlbnQgaW1wbGVtZW50YXRpb24gb2YgbWF4aW1hLiBGb3IgZXhhbXBsZSwgdHJ5Ci1A QCAtMTYxLDIwICsxNjcsMjAgQEAKLSAKLSAgICAgc2FnZTogZXFuID0gbWF4aW1hKFsnYStiKmM9 MScsICdiLWEqYz0wJywgJ2ErYj01J10pCi0gICAgIHNhZ2U6IHMgPSBlcW4uc29sdmUoJ1thLGIs Y10nKTsgcwotLSAgICBbW2EgPSAtKHNxcnQoNzkpKiVpLTExKS80LGIgPSAoc3FydCg3OSkqJWkr OSkvNCwgYyA9IChzcXJ0KDc5KSolaSsxKS8xMF0sIFthID0gKHNxcnQoNzkpKiVpKzExKS80LGIg PSAtKHNxcnQoNzkpKiVpLTkpLzQsIGMgPSAtKHNxcnQoNzkpKiVpLTEpLzEwXV0KLSsgICAgW1th ID0gLS4uLihzcXJ0KDc5KSolaS0xMSkvNC4uLixiID0gKHNxcnQoNzkpKiVpKzkpLzQsIGMgPSAo c3FydCg3OSkqJWkrMSkvMTBdLCBbYSA9IChzcXJ0KDc5KSolaSsxMSkvNCxiID0gLS4uLihzcXJ0 KDc5KSolaS05KS80Li4uLCBjID0gLS4uLihzcXJ0KDc5KSolaS0xKS8xMC4uLl1dCi0gCi0gSGVy ZSBpcyBhbiBleGFtcGxlIG9mIHNvbHZpbmcgYW4gYWxnZWJyYWljIGVxdWF0aW9uOjoKLSAKLSAg ICAgc2FnZTogbWF4aW1hKCd4XjIreV4yPTEnKS5zb2x2ZSgneScpCi0gICAgIFt5ID0gLXNxcnQo MS14XjIpLHkgPSBzcXJ0KDEteF4yKV0KLSAgICAgc2FnZTogbWF4aW1hKCd4XjIgKyB5XjIgPSAo eF4yIC0geV4yKS9zcXJ0KHheMiArIHleMiknKS5zb2x2ZSgneScpCi0tICAgIFt5ID0gLXNxcnQo KCgteV4yKS14XjIpKnNxcnQoeV4yK3heMikreF4yKSwgeSA9IHNxcnQoKCgteV4yKS14XjIpKnNx cnQoeV4yK3heMikreF4yKV0KLSsgICAgW3kgPSAtc3FydCgoLi4uLXleMi4uLi14XjIpKnNxcnQo eV4yK3heMikreF4yKSwgeSA9IHNxcnQoKC4uLi15XjIuLi4teF4yKSpzcXJ0KHleMit4XjIpK3he MildCi0gCi0gCi0gWW91IGNhbiBldmVuIG5pY2VseSB0eXBlc2V0IHRoZSBzb2x1dGlvbiBpbiBs YXRleDo6Ci0gCi0gICAgIHNhZ2U6IGxhdGV4KHMpCi0tICAgIFxsZWZ0WyBcbGVmdFsgYT0te3tc c3FydHs3OX1cLGktMTF9XG92ZXJ7NH19ICwgYj17e1xzcXJ0ezc5fVwsaSs5ICB9XG92ZXJ7NH19 ICwgYz17e1xzcXJ0ezc5fVwsaSsxfVxvdmVyezEwfX0gXHJpZ2h0XSAgLCBcbGVmdFsgYT17eyAg XHNxcnR7Nzl9XCxpKzExfVxvdmVyezR9fSAsIGI9LXt7XHNxcnR7Nzl9XCxpLTl9XG92ZXJ7NH19 ICwgYz0te3sgIFxzcXJ0ezc5fVwsaS0xfVxvdmVyezEwfX0gXHJpZ2h0XSAgXHJpZ2h0XQotKyAg ICBcbGVmdFsgXGxlZnRbIGE9LS4uLnt7XHNxcnR7Nzl9XCxpLTExfVxvdmVyezR9fS4uLiAsIGI9 e3suLi5cc3FydHs3OX1cLGkrOS4uLn1cb3Zlcns0fX0gLCBjPXt7XHNxcnR7Nzl9XCxpKzF9XG92 ZXJ7MTB9fSBccmlnaHRdICAsIFxsZWZ0WyBhPXt7Li4uXHNxcnR7Nzl9XCxpKzExfVxvdmVyezR9 fSAsIGI9LS4uLnt7XHNxcnR7Nzl9XCxpLTkuLi59XG92ZXJ7NH19Li4uICwgYz0tLi4ue3suLi5c c3FydHs3OX1cLGktMX1cb3ZlcnsxMH19Li4uIFxyaWdodF0gIFxyaWdodF0KLSAKLSBUbyBoYXZl IHRoZSBhYm92ZSBhcHBlYXIgb25zY3JlZW4gdmlhIGBgeGR2aWBgLCB0eXBlCi0gYGB2aWV3KHMp YGAuIChUT0RPOiBGb3IgT1MgWCBzaG91bGQgY3JlYXRlIHBkZiBvdXRwdXQKLUBAIC0yMDAsNyAr MjA2LDcgQEAKLSAgICAgc2FnZTogZi5kaWZmKCd4JykKLSAgICAgayp4XjMqJWVeKGsqeCkqc2lu KHcqeCkrMyp4XjIqJWVeKGsqeCkqc2luKHcqeCkrdyp4XjMqJWVeKGsqeCkgKmNvcyh3KngpCi0g ICAgIHNhZ2U6IGYuaW50ZWdyYXRlKCd4JykKLS0gICAgKCgoayp3XjYrMyprXjMqd140KzMqa141 KndeMitrXjcpKnheMyArKDMqd142KzMqa14yKndeNC0zKmteNCp3XjItMyprXjYpKnheMisoKC0x OCprKndeNCktMTIqa14zKndeMis2KmteNSkqeC02KndeNCArMzYqa14yKndeMi02KmteNCkgKiVl XihrKngpKnNpbih3KngpICsoKCgtd143KS0zKmteMip3XjUtMyprXjQqd14zLWteNip3KSp4XjMg Kyg2Kmsqd141KzEyKmteMyp3XjMrNiprXjUqdykqeF4yKyg2KndeNS0xMiprXjIqd14zLTE4Kmte NCp3KSp4LTI0Kmsqd14zICsyNCprXjMqdykgKiVlXihrKngpKmNvcyh3KngpKSAvKHdeOCs0Kmte Mip3XjYrNiprXjQqd140KzQqa142KndeMitrXjgpCi0rICAgICgoKGsqd142KzMqa14zKndeNCsz KmteNSp3XjIra143KSp4XjMgKygzKndeNiszKmteMip3XjQtMyprXjQqd14yLTMqa142KSp4XjIr KC4uLi0uLi4xOCprKndeNCktMTIqa14zKndeMis2KmteNSkqeC02KndeNCArMzYqa14yKndeMi02 KmteNCkgKiVlXihrKngpKnNpbih3KngpICsoKC4uLi13XjcuLi4tMyprXjIqd141LTMqa140Knde My1rXjYqdykqeF4zLi4uKyg2Kmsqd141KzEyKmteMyp3XjMrNiprXjUqdykqeF4yLi4uKyg2Knde NS0xMiprXjIqd14zLTE4KmteNCp3KSp4LTI0Kmsqd14zICsyNCprXjMqdykgKiVlXihrKngpKmNv cyh3KngpKSAvKHdeOCs0KmteMip3XjYrNiprXjQqd140KzQqa142KndeMitrXjgpCi0gCi0gOjoK LSAKLUBAIC0yMzQsNyArMjQwLDcgQEAKLSAgICAgc2FnZTogQS5laWdlbnZhbHVlcygpCi0gICAg IFtbMCw0XSxbMywxXV0KLSAgICAgc2FnZTogQS5laWdlbnZlY3RvcnMoKQotLSAgICBbW1swLDRd LFszLDFdXSxbW1sxLDAsMCwtNF0sWzAsMSwwLC0yXSxbMCwwLDEsLTQvM11dLFtbMSwyLDMsNF1d XV0KLSsgICAgW1tbMCw0XSxbMywxXV0sW1tbMSwwLDAsLTRdLFswLDEsMCwtMl0sWzAsMCwxLC0u Li40LzMuLi5dXSxbWzEsMiwzLDRdXV1dCi0gCi0gV2UgY2FuIGFsc28gY29tcHV0ZSB0aGUgZWNo ZWxvbiBmb3JtIGluIFNhZ2U6OgotIAotQEAgLTI4NywxMiArMjkzLDEyIEBACi0gOjoKLSAKLSAg ICAgc2FnZTogbWF4aW1hKCJsYXBsYWNlKGRpZmYoeCh0KSx0LDIpLHQscykiKQotLSAgICAoLSVh dCgnZGlmZih4KHQpLHQsMSksdCA9IDApKStzXjIqJ2xhcGxhY2UoeCh0KSx0LHMpLXgoMCkqcwot KyAgICAuLi4tLi4uJWF0KCdkaWZmKHgodCksdCwxKSx0ID0gMCkpK3NeMionbGFwbGFjZSh4KHQp LHQscykteCgwKSpzCi0gCi0gSXQgaXMgZGlmZmljdWx0IHRvIHJlYWQgc29tZSBvZiB0aGVzZSB3 aXRob3V0IHRoZSAyZAotIHJlcHJlc2VudGF0aW9uOjoKLSAKLS0gICAgc2FnZTogcHJpbnQobWF4 aW1hKCJsYXBsYWNlKGRpZmYoeCh0KSx0LDIpLHQscykiKSkKLSsgICAgc2FnZTogcHJpbnQobWF4 aW1hKCJsYXBsYWNlKGRpZmYoeCh0KSx0LDIpLHQscykiKSkgIyBub3QgdGVzdGVkIC0gZGVwZW5k cyBvbiBtYXhpbWEgdmVyc2lvbgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIQotICAg ICAgICAgICAgICAgICAgICAgZCAgICAgICAgISAgICAgICAgICAyCi0gICAgICAgICAgICAgICAg ICAoLSAtLSAoeCh0KSkhICAgICApICsgcyAgbGFwbGFjZSh4KHQpLCB0LCBzKSAtIHgoMCkgcwot QEAgLTM5Niw3ICs0MDIsNyBAQAotIAotICAgICBzYWdlOiBnID0gbWF4aW1hKCdleHAoMyolaSp4 KS8oNiolaSkgKyBleHAoJWkqeCkvKDIqJWkpICsgYycpCi0gICAgIHNhZ2U6IGxhdGV4KGcpCi0t ICAgIC17e2lcLGVeezNcLGlcLHh9fVxvdmVyezZ9fS17e2lcLGVee2lcLHh9fVxvdmVyezJ9fStj Ci0rICAgIC0uLi57e2lcLGVeezNcLGlcLHh9fVxvdmVyezZ9fS4uLi17e2lcLGVee2lcLHh9fVxv dmVyezJ9fStjCi0gCi0gTG9uZyBJbnB1dAotIC0tLS0tLS0tLS0KLUBAIC02ODQsNyArNjkwLDcg QEAgZGVmIF9leHBlY3RfZXhwcihzZWxmLCBleHByPU5vbmUsIHRpbWVvdXQ9Tm9uZSk6Ci0gICAg ICAgICAgICAgc2FnZTogbWF4aW1hLmFzc3VtZSgnYT4wJykKLSAgICAgICAgICAgICBbYSA+IDBd Ci0gICAgICAgICAgICAgc2FnZTogbWF4aW1hKCdpbnRlZ3JhdGUoMS8oeF4zKihhK2IqeCleKDEv MykpLHgpJykKLS0gICAgICAgICAgICAoLShiXjIqbG9nKChiKngrYSleKDIvMykrYV4oMS8zKSoo Yip4K2EpXigxLzMpK2FeKDIvMykpKS8oOSphXig3LzMpKSkgKygyKmJeMiphdGFuKCgyKihiKngr YSleKDEvMykrYV4oMS8zKSkvKHNxcnQoMykqYV4oMS8zKSkpKS8oM14oMy8yKSphXig3LzMpKSAr KDIqYl4yKmxvZygoYip4K2EpXigxLzMpLWFeKDEvMykpKS8oOSphXig3LzMpKSArKDQqYl4yKihi KngrYSleKDUvMyktNyphKmJeMiooYip4K2EpXigyLzMpKSAvKDYqYV4yKihiKngrYSleMi0xMiph XjMqKGIqeCthKSs2KmFeNCkKLSsgICAgICAgICAgICAuLi4tLi4uKGJeMipsb2coKGIqeCthKV4o Mi8zKSthXigxLzMpKihiKngrYSleKDEvMykrYV4oMi8zKSkpLyg5KmFeKDcvMykpKSArKDIqYl4y KmF0YW4oKDIqKGIqeCthKV4oMS8zKSthXigxLzMpKS8oc3FydCgzKSphXigxLzMpKSkpLygzXigz LzIpKmFeKDcvMykpICsoMipiXjIqbG9nKChiKngrYSleKDEvMyktYV4oMS8zKSkpLyg5KmFeKDcv MykpICsoNCpiXjIqKGIqeCthKV4oNS8zKS03KmEqYl4yKihiKngrYSleKDIvMykpIC8oNiphXjIq KGIqeCthKV4yLTEyKmFeMyooYip4K2EpKzYqYV40KQotICAgICAgICAgICAgIHNhZ2U6IG1heGlt YSgnaW50ZWdyYXRlKHhebix4KScpCi0gICAgICAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2Vu dCBjYWxsIGxhc3QpOgotICAgICAgICAgICAgIC4uLgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2lu dGVyZmFjZXMvbWF4aW1hX2Fic3RyYWN0LnB5IGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9tYXhpbWFf YWJzdHJhY3QucHkKLWluZGV4IDRmNjMwNmJhNGZjLi5hZWNmY2JhNWUyMyAxMDA2NDQKLS0tLSBh L3NyYy9zYWdlL2ludGVyZmFjZXMvbWF4aW1hX2Fic3RyYWN0LnB5Ci0rKysgYi9zcmMvc2FnZS9p bnRlcmZhY2VzL21heGltYV9hYnN0cmFjdC5weQotQEAgLTg1Niw5ICs4NTYsOSBAQCBkZWYgZGVf c29sdmUoc2VsZiwgZGUsIHZhcnMsIGljcz1Ob25lKToKLSAgICAgICAgICAgICBzYWdlOiBtYXhp bWEuZGVfc29sdmUoJ2RpZmYoeSx4LDIpICsgMyp4ID0geScsIFsneCcsJ3knXSkKLSAgICAgICAg ICAgICB5ID0gJWsxKiVlXngrJWsyKiVlXi14KzMqeAotICAgICAgICAgICAgIHNhZ2U6IG1heGlt YS5kZV9zb2x2ZSgnZGlmZih5LHgpICsgMyp4ID0geScsIFsneCcsJ3knXSkKLS0gICAgICAgICAg ICB5ID0gKCVjLTMqKCgteCktMSkqJWVeLXgpKiVlXngKLSsgICAgICAgICAgICB5ID0gKCVjLTMq KC4uLi14Li4uLTEpKiVlXi14KSolZV54Ci0gICAgICAgICAgICAgc2FnZTogbWF4aW1hLmRlX3Nv bHZlKCdkaWZmKHkseCkgKyAzKnggPSB5JywgWyd4JywneSddLFsxLDFdKQotLSAgICAgICAgICAg IHkgPSAtJWVeLTEqKDUqJWVeeC0zKiVlKngtMyolZSkKLSsgICAgICAgICAgICB5ID0gLS4uLiVl Xi0xKig1KiVlXngtMyolZSp4LTMqJWUpLi4uCi0gICAgICAgICAiIiIKLSAgICAgICAgIGlmIG5v dCBpc2luc3RhbmNlKHZhcnMsIHN0cik6Ci0gICAgICAgICAgICAgc3RyX3ZhcnMgPSAnJXMsICVz JyUodmFyc1sxXSwgdmFyc1swXSkKLUBAIC0xNTcyLDggKzE1NzIsOSBAQCBkZWYgaW50ZWdyYWwo c2VsZiwgdmFyPSd4JywgbWluPU5vbmUsIG1heD1Ob25lKToKLSAKLSAgICAgICAgIDo6Ci0gCi0t ICAgICAgICAgICAgc2FnZTogZiA9IG1heGltYSgnZXhwKHheMiknKS5pbnRlZ3JhbCgneCcsMCwx KTsgZgotLSAgICAgICAgICAgIC0oc3FydCglcGkpKiVpKmVyZiglaSkpLzIKLSsgICAgICAgICAg ICBzYWdlOiBmID0gbWF4aW1hKCdleHAoeF4yKScpLmludGVncmFsKCd4JywwLDEpCi0rICAgICAg ICAgICAgc2FnZTogZi5zYWdlKCkKLSsgICAgICAgICAgICAtMS8yKkkqc3FydChwaSkqZXJmKEkp Ci0gICAgICAgICAgICAgc2FnZTogZi5udW1lcigpCi0gICAgICAgICAgICAgMS40NjI2NTE3NDU5 MDcxOC4uLgotICAgICAgICAgIiIiCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvaW50ZXJmYWNlcy9t YXhpbWFfbGliLnB5IGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9tYXhpbWFfbGliLnB5Ci1pbmRleCBi YmE4NTA0YWE5Mi4uY2QxYmU4OTE4NzIgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9pbnRlcmZhY2Vz L21heGltYV9saWIucHkKLSsrKyBiL3NyYy9zYWdlL2ludGVyZmFjZXMvbWF4aW1hX2xpYi5weQot QEAgLTEzNCwxMCArMTM0LDExIEBACi0gZWxzZToKLSAgICAgZWNsX2V2YWwoIihyZXF1aXJlICdt YXhpbWEpIikKLSBlY2xfZXZhbCgiKGluLXBhY2thZ2UgOm1heGltYSkiKQotLWVjbF9ldmFsKCIo c2V0cSAkbm9sYWJlbHMgdCkpIikKLS1lY2xfZXZhbCgiKGRlZnZhciAqTUFYSU1BLUxBTkctU1VC RElSKiBOSUwpIikKLSBlY2xfZXZhbCgiKHNldC1sb2NhbGUtc3ViZGlyKSIpCi0gCi0rIyBUaGlz IHdvcmthcm91bmQgaGFzIHRvIGhhcHBlbiBiZWZvcmUgYW55IGNhbGwgdG8gKHNldC1wYXRobmFt ZXMpLgotKyMgVG8gYmUgc2FmZSBwbGVhc2UgZG8gbm90IGNhbGwgYW55dGhpbmcgb3RoZXIgdGhh bgotKyMgKHNldC1sb2NhbGUtc3ViZGlyKSBiZWZvcmUgdGhpcyBibG9jay4KLSB0cnk6Ci0gICAg IGVjbF9ldmFsKCIoc2V0LXBhdGhuYW1lcykiKQotIGV4Y2VwdCBSdW50aW1lRXJyb3I6Ci1AQCAt MTU0LDYgKzE1NSw4IEBACi0gICAgICMgQ2FsbCBgKHNldC1wYXRobmFtZXMpYCBhZ2FpbiB0byBj b21wbGV0ZSBpdHMgam9iLgotICAgICBlY2xfZXZhbCgiKHNldC1wYXRobmFtZXMpIikKLSAKLStl Y2xfZXZhbCgiKGluaXRpYWxpemUtcnVudGltZS1nbG9iYWxzKSIpCi0rZWNsX2V2YWwoIihzZXRx ICRub2xhYmVscyB0KSkiKQotIGVjbF9ldmFsKCIoZGVmdW4gYWRkLWxpbmVpbmZvICh4KSB4KSIp Ci0gZWNsX2V2YWwoJyhkZWZ1biBwcmluY2lwYWwgbmlsIChjb25kICgkbm9wcmluY2lwYWwgKGRp dmVyZykpICgobm90IHBjcHJudGQpIChtZXJyb3IgIkRpdmVyZ2VudCBJbnRlZ3JhbCIpKSkpJykK LSBlY2xfZXZhbCgiKHJlbXByb3AgJ21mYWN0b3JpYWwgJ2dyaW5kKSIpICAjIGRvbid0IHVzZSAh IGZvciBmYWN0b3JpYWxzICgjMTE1MzkpCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbWF0cml4L21h dHJpeDEucHl4IGIvc3JjL3NhZ2UvbWF0cml4L21hdHJpeDEucHl4Ci1pbmRleCBmMzhjNDI5ZDk5 NC4uNDdkZjlmYzgwYTUgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9tYXRyaXgvbWF0cml4MS5weXgK LSsrKyBiL3NyYy9zYWdlL21hdHJpeC9tYXRyaXgxLnB5eAotQEAgLTI0OCw3ICsyNDgsNyBAQCBj ZGVmIGNsYXNzIE1hdHJpeChNYXRyaXgwKToKLSAgICAgICAgICAgICBzYWdlOiBhID0gbWF4aW1h KG0pOyBhCi0gICAgICAgICAgICAgbWF0cml4KFswLDEsMl0sWzMsNCw1XSxbNiw3LDhdKQotICAg ICAgICAgICAgIHNhZ2U6IGEuY2hhcnBvbHkoJ3gnKS5leHBhbmQoKQotLSAgICAgICAgICAgICgt eF4zKSsxMip4XjIrMTgqeAotKyAgICAgICAgICAgIC4uLi14XjMuLi4rMTIqeF4yKzE4KngKLSAg ICAgICAgICAgICBzYWdlOiBtLmNoYXJwb2x5KCkKLSAgICAgICAgICAgICB4XjMgLSAxMip4XjIg LSAxOCp4Ci0gICAgICAgICAiIiIKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9tb2R1bGVzL2ZyZWVf bW9kdWxlX2VsZW1lbnQucHl4IGIvc3JjL3NhZ2UvbW9kdWxlcy9mcmVlX21vZHVsZV9lbGVtZW50 LnB5eAotaW5kZXggMDUzMmVhMGM5YmQuLjZlYTJiZDQ0NzNkIDEwMDY0NAotLS0tIGEvc3JjL3Nh Z2UvbW9kdWxlcy9mcmVlX21vZHVsZV9lbGVtZW50LnB5eAotKysrIGIvc3JjL3NhZ2UvbW9kdWxl cy9mcmVlX21vZHVsZV9lbGVtZW50LnB5eAotQEAgLTQwNTMsNyArNDA1Myw3IEBAIGNkZWYgY2xh c3MgRnJlZU1vZHVsZUVsZW1lbnQoVmVjdG9yKTogICAjIGFic3RyYWN0IGJhc2UgY2xhc3MKLSAg ICAgICAgICAgICBzYWdlOiB0PXZhcigndCcpCi0gICAgICAgICAgICAgc2FnZTogcj12ZWN0b3Io W3QsdF4yLHNpbih0KV0pCi0gICAgICAgICAgICAgc2FnZTogdmVjLGFuc3dlcnM9ci5uaW50ZWdy YWwodCwwLDEpCi0tICAgICAgICAgICAgc2FnZTogdmVjCi0rICAgICAgICAgICAgc2FnZTogdmVj ICMgYWJzIHRvbCAxZS0xNQotICAgICAgICAgICAgICgwLjUsIDAuMzMzMzMzMzMzMzMzMzMzNCwg MC40NTk2OTc2OTQxMzE4NjAyKQotICAgICAgICAgICAgIHNhZ2U6IHR5cGUodmVjKQotICAgICAg ICAgICAgIDxjbGFzcyAnc2FnZS5tb2R1bGVzLnZlY3Rvcl9yZWFsX2RvdWJsZV9kZW5zZS5WZWN0 b3JfcmVhbF9kb3VibGVfZGVuc2UnPgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3N5bWJvbGljL3Jl bGF0aW9uLnB5IGIvc3JjL3NhZ2Uvc3ltYm9saWMvcmVsYXRpb24ucHkKLWluZGV4IGE3MmFiNTQ3 Yzc2Li41MWRjYWY4ZDg0NyAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3N5bWJvbGljL3JlbGF0aW9u LnB5Ci0rKysgYi9zcmMvc2FnZS9zeW1ib2xpYy9yZWxhdGlvbi5weQotQEAgLTY1Nyw3ICs2NTcs NyBAQCBkZWYgc29sdmUoZiwgKmFyZ3MsICoqa3dkcyk6Ci0gICAgIGVxdWF0aW9ucywgYXQgdGlt ZXMgYXBwcm94aW1hdGlvbnMgd2lsbCBiZSBnaXZlbiBieSBNYXhpbWEsIGR1ZSB0byB0aGUKLSAg ICAgdW5kZXJseWluZyBhbGdvcml0aG06OgotIAotLSAgICAgICAgc2FnZTogc29scyA9IHNvbHZl KFt4XjM9PXkseV4yPT14XSwgW3gseV0pOyBzb2xzWy0xXSwgc29sc1swXQotKyAgICAgICAgc2Fn ZTogc29scyA9IHNvbHZlKFt4XjM9PXkseV4yPT14XSwgW3gseV0pOyBzb2xzWy0xXSwgc29sc1sw XSAjIGFicyB0b2wgMWUtMTUKLSAgICAgICAgIChbeCA9PSAwLCB5ID09IDBdLAotICAgICAgICAg IFt4ID09ICgwLjMwOTAxNjk5NDM3NDk0NzUgKyAwLjk1MTA1NjUxNjI5NTE1MzUqSSksCi0gICAg ICAgICAgIHkgPT0gKC0wLjgwOTAxNjk5NDM3NDk0NzUgLSAwLjU4Nzc4NTI1MjI5MjQ3MzEqSSld KQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1ODI1LXNpbmd1bGFyXzQu My4ycDIucGF0Y2ggYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzU4MjUtc2luZ3VsYXJfNC4z LjJwMi5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGQwMWVlYWJlZTZjOS4u MDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzU4MjUtc2luZ3Vs YXJfNC4zLjJwMi5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI0ICswLDAgQEAKLWRpZmYgLS1n aXQgYS9zcmMvc2FnZS9yaW5ncy9hc3ltcHRvdGljL2FzeW1wdG90aWNzX211bHRpdmFyaWF0ZV9n ZW5lcmF0aW5nX2Z1bmN0aW9ucy5weSBiL3NyYy9zYWdlL3JpbmdzL2FzeW1wdG90aWMvYXN5bXB0 b3RpY3NfbXVsdGl2YXJpYXRlX2dlbmVyYXRpbmdfZnVuY3Rpb25zLnB5Ci1pbmRleCBlYTAyN2U4 YTcxNi4uYTFmZTAzNjkxN2UgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9yaW5ncy9hc3ltcHRvdGlj L2FzeW1wdG90aWNzX211bHRpdmFyaWF0ZV9nZW5lcmF0aW5nX2Z1bmN0aW9ucy5weQotKysrIGIv c3JjL3NhZ2UvcmluZ3MvYXN5bXB0b3RpYy9hc3ltcHRvdGljc19tdWx0aXZhcmlhdGVfZ2VuZXJh dGluZ19mdW5jdGlvbnMucHkKLUBAIC0xMjUxLDcgKzEyNTEsNyBAQCBkZWYgbGVpbmFydGFzX2Rl Y29tcG9zaXRpb24oc2VsZik6Ci0gICAgICAgICAgICAgc2FnZTogSCA9IFIoZi5kZW5vbWluYXRv cigpKQotICAgICAgICAgICAgIHNhZ2U6IGZmID0gRkZQRChHLCBILmZhY3RvcigpKQotICAgICAg ICAgICAgIHNhZ2U6IGRlY29tcCA9IGZmLmxlaW5hcnRhc19kZWNvbXBvc2l0aW9uKCkKLS0gICAg ICAgICAgICBzYWdlOiBkZWNvbXAKLSsgICAgICAgICAgICBzYWdlOiBkZWNvbXAgICMgcmFuZG9t IC0gbm9uIGNhbm9uaWNhbCBkZXBlbmRzIG9uIHNpbmd1bGFyIHZlcnNpb24KLSAgICAgICAgICAg ICAoMCwgW10pICsKLSAgICAgICAgICAgICAoLSh4KnleMipzaW4oeCkgKyB4XjIqeSArIHgqeSAr IHkqc2luKHgpICsgeCkqeSwgWyh5LCAxKV0pICsKLSAgICAgICAgICAgICAoKHgqeV4yKnNpbih4 KSArIHheMip5ICsgeCp5ICsgeSpzaW4oeCkgKyB4KSp4KnksIFsoeCp5ICsgMSwgMSldKSArCi1A QCAtMTYxMSw5ICsxNjExLDcgQEAgZGVmIGFzeW1wdG90aWNzKHNlbGYsIHAsIGFscGhhLCBOLCBh c3lfdmFyPU5vbmUsIG51bWVyaWNhbD0wLAotICAgICAgICAgICAgICgtMTYsIFsoeCArIDIqeSAr IHogLSA0LCAxKSwgKDIqeCArIHkgKyB6IC0gNCwgMildKQotICAgICAgICAgICAgIHNhZ2U6IGFs cGhhID0gWzMsIDMsIDJdCi0gICAgICAgICAgICAgc2FnZTogZGVjb21wID0gRi5hc3ltcHRvdGlj X2RlY29tcG9zaXRpb24oYWxwaGEpOyBkZWNvbXAKLS0gICAgICAgICAgICAoMCwgW10pICsKLS0g ICAgICAgICAgICAoMTYqciooMy94IC0gMi96KSArIDE2L3ggLSAxNi96LAotLSAgICAgICAgICAg ICBbKHggKyAyKnkgKyB6IC0gNCwgMSksICgyKnggKyB5ICsgeiAtIDQsIDEpXSkKLSsgICAgICAg ICAgICAoMCwgW10pICsgKC4uLiwgWyh4ICsgMip5ICsgeiAtIDQsIDEpLCAoMip4ICsgeSArIHog LSA0LCAxKV0pCi0gICAgICAgICAgICAgc2FnZTogRjEgPSBkZWNvbXBbMV0KLSAgICAgICAgICAg ICBzYWdlOiBwID0ge3g6IDEsIHk6IDEsIHo6IDF9Ci0gICAgICAgICAgICAgc2FnZTogYXN5ID0g RjEuYXN5bXB0b3RpY3MocCwgYWxwaGEsIDIsIHZlcmJvc2U9VHJ1ZSkgIyBsb25nIHRpbWUKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTgyNi1udW1weV8xLjI1LjAucGF0 Y2ggYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzU4MjYtbnVtcHlfMS4yNS4wLnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MjZmODQxZWJiYWI2Li4wMDAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTgyNi1udW1weV8xLjI1LjAucGF0Y2gK KysrIC9kZXYvbnVsbApAQCAtMSw4MyArMCwwIEBACi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY2Fs Y3VsdXMvZGVzb2x2ZXJzLnB5IGIvc3JjL3NhZ2UvY2FsY3VsdXMvZGVzb2x2ZXJzLnB5Ci1pbmRl eCA1NWVkM2EwZmUxMC4uNGNmYTIyYTk3ZTQgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9jYWxjdWx1 cy9kZXNvbHZlcnMucHkKLSsrKyBiL3NyYy9zYWdlL2NhbGN1bHVzL2Rlc29sdmVycy5weQotQEAg LTE1OTgsNyArMTU5OCw3IEBAIGRlZiBkZXNvbHZlX29kZWludChkZXMsIGljcywgdGltZXMsIGR2 YXJzLCBpdmFyPU5vbmUsIGNvbXB1dGVfamFjPUZhbHNlLCBhcmdzPSgpCi0gICAgICAgICBzYWdl OiBpYz1lcHNpbG9uCi0gICAgICAgICBzYWdlOiB0PXNyYW5nZSgwLDIvZXBzaWxvbiwxKQotICAg ICAgICAgc2FnZTogc29sPWRlc29sdmVfb2RlaW50KGYsaWMsdCx5LHJ0b2w9MWUtOSxhdG9sPTFl LTEwLGNvbXB1dGVfamFjPVRydWUpCi0tICAgICAgICBzYWdlOiBwPXBvaW50cyh6aXAodCxzb2wp KQotKyAgICAgICAgc2FnZTogcD1wb2ludHMoemlwKHQsc29sWzosMF0pKQotICAgICAgICAgc2Fn ZTogcC5zaG93KCkKLSAKLSAgICAgQW5vdGhlciBzdGlmZiBzeXN0ZW0gd2l0aCBzb21lIG9wdGlv bmFsIHBhcmFtZXRlcnMgd2l0aCBubwotQEAgLTE2MzcsNyArMTYzNyw3IEBAIGRlZiBkZXNvbHZl X29kZWludF9pbm5lcihpdmFyKToKLSAgICAgICAgICAgICAgICAgSiA9IGZhc3RfZmxvYXQoSiwg ZHZhciwgaXZhcikKLSAKLSAgICAgICAgICAgICAgICAgZGVmIERmdW4oeSwgdCk6Ci0tICAgICAg ICAgICAgICAgICAgICByZXR1cm4gW0ooeSwgdCldCi0rICAgICAgICAgICAgICAgICAgICByZXR1 cm4gW0ooeS5pdGVtKCksIHQpXQotIAotICAgICAgICAgIyBuLWRpbWVuc2lvbmFsIHN5c3RlbXM6 Ci0gICAgICAgICBlbHNlOgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL21hdHJpeC9tYXRyaXgyLnB5 eCBiL3NyYy9zYWdlL21hdHJpeC9tYXRyaXgyLnB5eAotaW5kZXggZDU0MDJkNWMzYjAuLmEwMDkx Mjk1MWM1IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvbWF0cml4L21hdHJpeDIucHl4Ci0rKysgYi9z cmMvc2FnZS9tYXRyaXgvbWF0cml4Mi5weXgKLUBAIC00MzAsMTIgKzQzMCwxMiBAQCBjZGVmIGNs YXNzIE1hdHJpeChNYXRyaXgxKToKLSAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAg IHJldHVybiBzZWxmLnRyYW5zcG9zZSgpLnNvbHZlX3JpZ2h0KEIsIGNoZWNrPWNoZWNrKQotICAg ICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGU6Ci0tICAgICAgICAgICAgICAgIHJhaXNl IFZhbHVlRXJyb3Ioc3RyKGUpLnJlcGxhY2UoJ3JvdycsICdjb2x1bW4nKSkKLSsgICAgICAgICAg ICAgICAgcmFpc2UgZS5fX2NsYXNzX18oc3RyKGUpLnJlcGxhY2UoJ3JvdycsICdjb2x1bW4nKSkK LSAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICByZXR1 cm4gc2VsZi50cmFuc3Bvc2UoKS5zb2x2ZV9yaWdodChCLnRyYW5zcG9zZSgpLCBjaGVjaz1jaGVj aykudHJhbnNwb3NlKCkKLSAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBlOgotLSAg ICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKHN0cihlKS5yZXBsYWNlKCdyb3cnLCAnY29s dW1uJykpCi0rICAgICAgICAgICAgICAgIHJhaXNlIGUuX19jbGFzc19fKHN0cihlKS5yZXBsYWNl KCdyb3cnLCAnY29sdW1uJykpCi0gCi0gICAgIGRlZiBzb2x2ZV9yaWdodChzZWxmLCBCLCBjaGVj az1UcnVlKToKLSAgICAgICAgIHIiIiIKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9tYXRyaXgvbWF0 cml4X251bXB5X2RlbnNlLnB5eCBiL3NyYy9zYWdlL21hdHJpeC9tYXRyaXhfbnVtcHlfZGVuc2Uu cHl4Ci1pbmRleCA1Yjc1ZWQxMzNmZi4uMTc4NjdmOWE2NWMgMTAwNjQ0Ci0tLS0gYS9zcmMvc2Fn ZS9tYXRyaXgvbWF0cml4X251bXB5X2RlbnNlLnB5eAotKysrIGIvc3JjL3NhZ2UvbWF0cml4L21h dHJpeF9udW1weV9kZW5zZS5weXgKLUBAIC0zODIsOCArMzgyLDkgQEAgY2RlZiBjbGFzcyBNYXRy aXhfbnVtcHlfZGVuc2UoTWF0cml4X2RlbnNlKToKLSAgICAgICAgICAgICBzYWdlOiBtID0gbWF0 cml4KFJERixbWzEsMl0sWzMsNF1dKQotICAgICAgICAgICAgIHNhZ2U6IG4gPSBtLm51bXB5KCkK LSAgICAgICAgICAgICBzYWdlOiBpbXBvcnQgbnVtcHkKLS0gICAgICAgICAgICBzYWdlOiBudW1w eS5saW5hbGcuZWlnKG4pCi0tICAgICAgICAgICAgKGFycmF5KFstMC4zNzIyODEzMiwgIDUuMzcy MjgxMzJdKSwgYXJyYXkoW1stMC44MjQ1NjQ4NCwgLTAuNDE1OTczNTZdLAotKyAgICAgICAgICAg IHNhZ2U6IHR1cGxlKG51bXB5LmxpbmFsZy5laWcobikpCi0rICAgICAgICAgICAgKGFycmF5KFst MC4zNzIyODEzMiwgIDUuMzcyMjgxMzJdKSwKLSsgICAgICAgICAgICAgYXJyYXkoW1stMC44MjQ1 NjQ4NCwgLTAuNDE1OTczNTZdLAotICAgICAgICAgICAgICAgICAgICBbIDAuNTY1NzY3NDYsIC0w LjkwOTM3NjcxXV0pKQotICAgICAgICAgICAgIHNhZ2U6IG0gPSBtYXRyaXgoUkRGLCAyLCByYW5n ZSg2KSk7IG0KLSAgICAgICAgICAgICBbMC4wIDEuMCAyLjBdCi1kaWZmIC0tZ2l0IGEvc3JjL3Nh Z2UvcGxvdC9wbG90M2QvbGlzdF9wbG90M2QucHkgYi9zcmMvc2FnZS9wbG90L3Bsb3QzZC9saXN0 X3Bsb3QzZC5weQotaW5kZXggZDY0Yjc2NjAwMWUuLjAxNThmODU2ZGJiIDEwMDY0NAotLS0tIGEv c3JjL3NhZ2UvcGxvdC9wbG90M2QvbGlzdF9wbG90M2QucHkKLSsrKyBiL3NyYy9zYWdlL3Bsb3Qv cGxvdDNkL2xpc3RfcGxvdDNkLnB5Ci1AQCAtNjAyLDcgKzYwMiw3IEBAIGRlZiBnKHgsIHkpOgot ICAgICAgICAgZnJvbSAucGFyYW1ldHJpY19zdXJmYWNlIGltcG9ydCBQYXJhbWV0cmljU3VyZmFj ZQotIAotICAgICAgICAgZGVmIGcoeCwgeSk6Ci0tICAgICAgICAgICAgeiA9IGYoW3gsIHldKQot KyAgICAgICAgICAgIHogPSBmKFt4LCB5XSkuaXRlbSgpCi0gICAgICAgICAgICAgcmV0dXJuICh4 LCB5LCB6KQotICAgICAgICAgRyA9IFBhcmFtZXRyaWNTdXJmYWNlKGcsIChsaXN0KG51bXB5LnJf W3htaW46eG1heDpudW1fcG9pbnRzICogal0pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBsaXN0KG51bXB5LnJfW3ltaW46eW1heDpudW1fcG9pbnRzICogal0pKSwKLWRpZmYg LS1naXQgYS9zcmMvc2FnZS9wbG90L3Bsb3QzZC9wbG90M2QucHkgYi9zcmMvc2FnZS9wbG90L3Bs b3QzZC9wbG90M2QucHkKLWluZGV4IGU5YmJmYWE4MzcwLi45YmE4OTU5NWQ3MCAxMDA2NDQKLS0t LSBhL3NyYy9zYWdlL3Bsb3QvcGxvdDNkL3Bsb3QzZC5weQotKysrIGIvc3JjL3NhZ2UvcGxvdC9w bG90M2QvcGxvdDNkLnB5Ci1AQCAtMzc4LDcgKzM3OCw3IEBAIGRlZiB0b19jYXJ0ZXNpYW4oc2Vs ZiwgZnVuYywgcGFyYW1zPU5vbmUpOgotICAgICAgICAgICAgIC4uLi46IFsgMC4xNjc2MzM1Niwg IDAuMTk5OTM3MDgsICAwLjMxNDAzNTY4LCAgMC40NzM1OTY5NiwgMC41NTI4MjQyMl0sCi0gICAg ICAgICAgICAgLi4uLjogWyAwLjE2NzYzMzU2LCAgMC4yNTY4MzIyMywgIDAuMTY2NDkyOTcsICAw LjEwNTk0MzM5LCAwLjU1MjgyNDIyXV0pCi0gICAgICAgICAgICAgc2FnZTogaW1wb3J0IHNjaXB5 LmludGVycG9sYXRlCi0tICAgICAgICAgICAgc2FnZTogZj1zY2lweS5pbnRlcnBvbGF0ZS5SZWN0 Qml2YXJpYXRlU3BsaW5lKHZfcGhpLHZfdGhldGEsbV9yKQotKyAgICAgICAgICAgIHNhZ2U6IGY9 c2NpcHkuaW50ZXJwb2xhdGUuUmVjdEJpdmFyaWF0ZVNwbGluZSh2X3BoaSx2X3RoZXRhLG1fciku ZXYKLSAgICAgICAgICAgICBzYWdlOiBzcGhlcmljYWxfcGxvdDNkKGYsKDAsMipwaSksKDAscGkp KQotICAgICAgICAgICAgIEdyYXBoaWNzM2QgT2JqZWN0Ci0gCmRpZmYgLS1naXQgYS9zcmNwa2dz L3NhZ2VtYXRoL3BhdGNoZXMvMzU4MzEtc2V0dXB0b29sc182OC4wLjAucGF0Y2ggYi9zcmNwa2dz L3NhZ2VtYXRoL3BhdGNoZXMvMzU4MzEtc2V0dXB0b29sc182OC4wLjAucGF0Y2gKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRlYzc4NTFlMDI3ZDEuLjAwMDAwMDAwMDAwMDAKLS0tIGEv c3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1ODMxLXNldHVwdG9vbHNfNjguMC4wLnBhdGNoCisr KyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2FsbF9f c2FnZW1hdGhfcmVwbC5weSBiL3NyYy9zYWdlL2FsbF9fc2FnZW1hdGhfcmVwbC5weQotaW5kZXgg NjgwMGViOWEyN2IuLjhkMGI0MzY3OWNhIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvYWxsX19zYWdl bWF0aF9yZXBsLnB5Ci0rKysgYi9zcmMvc2FnZS9hbGxfX3NhZ2VtYXRoX3JlcGwucHkKLUBAIC00 NCw3ICs0NCw3IEBACi0gd2FybmluZ3MuZmlsdGVyd2FybmluZ3MoJ2lnbm9yZScsIGNhdGVnb3J5 PURlcHJlY2F0aW9uV2FybmluZywKLSAgICAgbWVzc2FnZT0ncGtnX3Jlc291cmNlcyBpcyBkZXBy ZWNhdGVkIGFzIGFuIEFQSXwnCi0gICAgICAgICAgICAgJ0RlcHJlY2F0ZWQgY2FsbCB0byBgcGtn X3Jlc291cmNlcy5kZWNsYXJlX25hbWVzcGFjZSguKilgJywKLS0gICAgbW9kdWxlPSdwa2dfcmVz b3VyY2VzJykKLSsgICAgbW9kdWxlPSdwa2dfcmVzb3VyY2VzfHNldHVwdG9vbHMuc2FuZGJveCcp Ci0gd2FybmluZ3MuZmlsdGVyd2FybmluZ3MoJ2lnbm9yZScsIGNhdGVnb3J5PURlcHJlY2F0aW9u V2FybmluZywKLSAgICAgbWVzc2FnZT0nbXN2Y2NvbXBpbGVyIGlzIGRlcHJlY2F0ZWQgYW5kIHNs YXRlZCB0byBiZSByZW1vdmVkJywKLSAgICAgbW9kdWxlPSdkaXN0dXRpbHMubXN2Y2NvbXBpbGVy JykKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTkzNC1zaW5ndWxhcl80 LjMuMnA3LnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1OTM0LXNpbmd1bGFyXzQu My4ycDcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uN2M1 NWJjZTZlOWJiNAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8z NTkzNC1zaW5ndWxhcl80LjMuMnA3LnBhdGNoCkBAIC0wLDAgKzEsMjIxIEBACitkaWZmIC0tZ2l0 IGEvYnVpbGQvcGtncy9zaW5ndWxhci9jaGVja3N1bXMuaW5pIGIvYnVpbGQvcGtncy9zaW5ndWxh ci9jaGVja3N1bXMuaW5pCitpbmRleCAzMTM0NjNkMmZlYS4uMTEwMWZjNTU3MDAgMTAwNjQ0Cist LS0gYS9idWlsZC9wa2dzL3Npbmd1bGFyL2NoZWNrc3Vtcy5pbmkKKysrKyBiL2J1aWxkL3BrZ3Mv c2luZ3VsYXIvY2hlY2tzdW1zLmluaQorQEAgLTEsNSArMSw1IEBACisgdGFyYmFsbD1zaW5ndWxh ci1WRVJTSU9OLnRhci5negorLXNoYTE9MjhiYjNlZTk3ZWY0OGQwNGRmYTk2ZGUxODJmZDkzZWVi ZTA4NDI2YworLW1kNT1mYzBhNGY1NzIwZGFkYmE0NWE1MmVlOTQzMjRjZTAwYworLWNrc3VtPTE1 NzM4NTE3MzcKKy11cHN0cmVhbV91cmw9ZnRwOi8vamltLm1hdGhlbWF0aWsudW5pLWtsLmRlL3B1 Yi9NYXRoL1Npbmd1bGFyL1NPVVJDRVMvNC0zLTEvc2luZ3VsYXItVkVSU0lPTi50YXIuZ3oKKytz aGExPWRmMTk5N2Y0MTI1ODBmMjA3MzI5NWFiYTU2OWJiOTU1YWQyMjczMTcKKyttZDU9NTAzNDky MTNlMjA2YTE4Y2RhYTFiYzQxMGRkZTdlYTQKKytja3N1bT0zNzY4NTQ3MDcKKyt1cHN0cmVhbV91 cmw9ZnRwOi8vamltLm1hdGhlbWF0aWsudW5pLWtsLmRlL3B1Yi9NYXRoL1Npbmd1bGFyL1NPVVJD RVMvNC0zLTIvc2luZ3VsYXItVkVSU0lPTi50YXIuZ3oKK2RpZmYgLS1naXQgYS9idWlsZC9wa2dz L3Npbmd1bGFyL3BhY2thZ2UtdmVyc2lvbi50eHQgYi9idWlsZC9wa2dzL3Npbmd1bGFyL3BhY2th Z2UtdmVyc2lvbi50eHQKK2luZGV4IDY2ZTJiZWRlNTNhLi45ZjFiZjAwODIxNyAxMDA2NDQKKy0t LSBhL2J1aWxkL3BrZ3Mvc2luZ3VsYXIvcGFja2FnZS12ZXJzaW9uLnR4dAorKysrIGIvYnVpbGQv cGtncy9zaW5ndWxhci9wYWNrYWdlLXZlcnNpb24udHh0CitAQCAtMSArMSBAQAorLTQuMy4xcDMK Kys0LjMuMnA3CitkaWZmIC0tZ2l0IGEvYnVpbGQvcGtncy9zaW5ndWxhci9zcGtnLWNvbmZpZ3Vy ZS5tNCBiL2J1aWxkL3BrZ3Mvc2luZ3VsYXIvc3BrZy1jb25maWd1cmUubTQKK2luZGV4IDZhODU2 MzFmNjI0Li5mNzYyMWVjNWZhMSAxMDA2NDQKKy0tLSBhL2J1aWxkL3BrZ3Mvc2luZ3VsYXIvc3Br Zy1jb25maWd1cmUubTQKKysrKyBiL2J1aWxkL3BrZ3Mvc2luZ3VsYXIvc3BrZy1jb25maWd1cmUu bTQKK0BAIC02LDE0ICs2LDI3IEBAIFNBR0VfU1BLR19DT05GSUdVUkUoW3Npbmd1bGFyXSwgWwor ICAgICBBU19JRihbdGVzdCAteiAiJHtTSU5HVUxBUl9CSU59Il0sIFtzYWdlX3Nwa2dfaW5zdGFs bF9zaW5ndWxhcj15ZXNdLCBbCisgICAgICAgZG5sIFVzZSBwa2ctY29uZmlnIHRvIGVuc3VyZSB0 aGF0IFNpbmd1bGFyIGlzIG5ldyBlbm91Z2guCisgICAgICAgUEtHX0NIRUNLX01PRFVMRVMoW1NJ TkdVTEFSXSwgW1Npbmd1bGFyID49IDQuMi4xXSwgWworLSAgICAgICBBQ19NU0dfQ0hFQ0tJTkco W3RoYXQgU2luZ3VsYXIncyBoZWxwIGlzIHdvcmtpbmddKQorLSAgICAgICBBU19JRihbdGVzdCB4 YHByaW50ZiAic3lzdGVtKFwiLS1icm93c2VyXCIsIFwiYnVpbHRpblwiKTsgXG4gaGVscDsiIHwg U2luZ3VsYXIgMj4mMSB8IGdyZXAgImVycm9yIG9jY3VycmVkImAgPSB4XSwgWworLSAgICAgICAg QUNfTVNHX1JFU1VMVCh5ZXMpCistICAgICAgIF0sIFsKKy0gICAgICAgQUNfTVNHX1JFU1VMVChu bykKKy0gICAgICAgc2FnZV9zcGtnX2luc3RhbGxfc2luZ3VsYXI9eWVzCistICAgICAgIF0KKy0g ICAgICApXSwgWworKyAgICAgICAgQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIFNpbmd1bGFyIGlz IGJ1aWx0IHdpdGggRkxJTlRdKQorKyAgICAgICAgQUNfQ09NUElMRV9JRkVMU0UoWworKyAgICAg ICAgICBBQ19MQU5HX1BST0dSQU0oWworKyAgICAgICAgICAgICNpbmNsdWRlIDxzaW5ndWxhci9z aW5ndWxhcmNvbmZpZy5oPgorKyAgICAgICAgICAgICNpZiAhZGVmaW5lZChIQVZFX0ZMSU5UKQor KyAgICAgICAgICAgICMgIGVycm9yICJOZWVkIFNpbmd1bGFyIGNvbXBpbGVkIHdpdGggRkxJTlQi CisrICAgICAgICAgIF0sIFtdKQorKyAgICAgICAgXSwgWworKyAgICAgICAgICBBQ19NU0dfUkVT VUxUKFt5ZXNdKQorKyAgICAgICAgICBBQ19NU0dfQ0hFQ0tJTkcoW3RoYXQgU2luZ3VsYXIncyBo ZWxwIGlzIHdvcmtpbmddKQorKyAgICAgICAgICBBU19JRihbdGVzdCB4YHByaW50ZiAic3lzdGVt KFwiLS1icm93c2VyXCIsIFwiYnVpbHRpblwiKTsgXG4gaGVscDsiIHwgU2luZ3VsYXIgMj4mMSB8 IGdyZXAgImVycm9yIG9jY3VycmVkImAgPSB4XSwgWworKyAgICAgICAgICAgIEFDX01TR19SRVNV TFQoeWVzKQorKyAgICAgICAgICBdLCBbCisrICAgICAgICAgICAgQUNfTVNHX1JFU1VMVChubykK KysgICAgICAgICAgICBzYWdlX3Nwa2dfaW5zdGFsbF9zaW5ndWxhcj15ZXMKKysgICAgICAgICAg XSkKKysgICAgICAgIF0sIFsKKysgICAgICAgICAgQUNfTVNHX1JFU1VMVChbbm9dKQorKyAgICAg ICAgICBzYWdlX3Nwa2dfaW5zdGFsbF9zaW5ndWxhcj15ZXMKKysgICAgICAgIF0pCisrICAgICAg XSwgWworICAgICAgIGRubCBwa2ctY29uZmlnIHZlcnNpb24gY2hlY2sgZmFpbGVkCisgICAgICAg c2FnZV9zcGtnX2luc3RhbGxfc2luZ3VsYXI9eWVzCisgICAgICAgXSkKK2RpZmYgLS1naXQgYS9z cmMvc2FnZS9pbnRlcmZhY2VzL3Npbmd1bGFyLnB5IGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9zaW5n dWxhci5weQoraW5kZXggYjE1Y2MxYzYwMmMuLjRiNWM3NmUyYmZhIDEwMDY0NAorLS0tIGEvc3Jj L3NhZ2UvaW50ZXJmYWNlcy9zaW5ndWxhci5weQorKysrIGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9z aW5ndWxhci5weQorQEAgLTYwNCw4ICs2MDQsNyBAQCBkZWYgZXZhbChzZWxmLCB4LCBhbGxvd19z ZW1pY29sb249VHJ1ZSwgc3RyaXA9VHJ1ZSwgKiprd2RzKToKKyAgICAgICAgICAgICBzYWdlOiBp ID0gc2luZ3VsYXIuaWRlYWwoWyd4XjInLCd5XjInLCd6XjInXSkKKyAgICAgICAgICAgICBzYWdl OiBzID0gaS5zdGQoKQorICAgICAgICAgICAgIHNhZ2U6IHNpbmd1bGFyLmV2YWwoJ2hpbGIoJXMp JyUocy5uYW1lKCkpKQorLSAgICAgICAgICAgICcvLyAxIHReMFxuLy8gLTMgdF4yXG4vLyAzIHRe NFxuLy8gLTEgdF42XG5cbi8vIDEgdF4wXG4vLworLSAgICAgICAgICAgIDMgdF4xXG4vLyAzIHRe MlxuLy8gMSB0XjNcbi8vIGRpbWVuc2lvbiAoYWZmaW5lKSA9IDBcbi8vCisrICAgICAgICAgICAg Jy4uLi8vIGRpbWVuc2lvbiAoYWZmaW5lKSA9IDBcbi8vCisgICAgICAgICAgICAgZGVncmVlIChh ZmZpbmUpID0gOCcKKyAKKyAgICAgICAgIDo6CitAQCAtNjEzLDE1ICs2MTIsNyBAQCBkZWYgZXZh bChzZWxmLCB4LCBhbGxvd19zZW1pY29sb249VHJ1ZSwgc3RyaXA9VHJ1ZSwgKiprd2RzKToKKyAg ICAgICAgICAgICBzYWdlOiBmcm9tIHNhZ2UubWlzYy52ZXJib3NlIGltcG9ydCBzZXRfdmVyYm9z ZQorICAgICAgICAgICAgIHNhZ2U6IHNldF92ZXJib3NlKDEpCisgICAgICAgICAgICAgc2FnZTog byA9IHNpbmd1bGFyLmV2YWwoJ2hpbGIoJXMpJyUocy5uYW1lKCkpKQorLSAgICAgICAgICAgIC8v ICAgICAgICAgMSB0XjAKKy0gICAgICAgICAgICAvLyAgICAgICAgLTMgdF4yCistICAgICAgICAg ICAgLy8gICAgICAgICAzIHReNAorLSAgICAgICAgICAgIC8vICAgICAgICAtMSB0XjYKKy0gICAg ICAgICAgICAvLyAgICAgICAgIDEgdF4wCistICAgICAgICAgICAgLy8gICAgICAgICAzIHReMQor LSAgICAgICAgICAgIC8vICAgICAgICAgMyB0XjIKKy0gICAgICAgICAgICAvLyAgICAgICAgIDEg dF4zCistICAgICAgICAgICAgLy8gZGltZW5zaW9uIChhZmZpbmUpID0gMAorKyAgICAgICAgICAg IC4uLi8vIGRpbWVuc2lvbiAoYWZmaW5lKSA9IDAKKyAgICAgICAgICAgICAvLyBkZWdyZWUgKGFm ZmluZSkgID0gOAorIAorICAgICAgICAgVGhpcyBpcyBtYWlubHkgdXNlZnVsIGlmIHRoaXMgbWV0 aG9kIGlzIGNhbGxlZCBpbXBsaWNpdGx5LiBCZWNhdXNlCitAQCAtNjMxLDE1ICs2MjIsNyBAQCBk ZWYgZXZhbChzZWxmLCB4LCBhbGxvd19zZW1pY29sb249VHJ1ZSwgc3RyaXA9VHJ1ZSwgKiprd2Rz KToKKyAgICAgICAgIDo6CisgCisgICAgICAgICAgICAgc2FnZTogbyA9IHMuaGlsYigpCistICAg ICAgICAgICAgLy8gICAgICAgICAxIHReMAorLSAgICAgICAgICAgIC8vICAgICAgICAtMyB0XjIK Ky0gICAgICAgICAgICAvLyAgICAgICAgIDMgdF40CistICAgICAgICAgICAgLy8gICAgICAgIC0x IHReNgorLSAgICAgICAgICAgIC8vICAgICAgICAgMSB0XjAKKy0gICAgICAgICAgICAvLyAgICAg ICAgIDMgdF4xCistICAgICAgICAgICAgLy8gICAgICAgICAzIHReMgorLSAgICAgICAgICAgIC8v ICAgICAgICAgMSB0XjMKKy0gICAgICAgICAgICAvLyBkaW1lbnNpb24gKGFmZmluZSkgPSAwCisr ICAgICAgICAgICAgLi4uLy8gZGltZW5zaW9uIChhZmZpbmUpID0gMAorICAgICAgICAgICAgIC8v IGRlZ3JlZSAoYWZmaW5lKSAgPSA4CisgICAgICAgICAgICAgLy8gKiogcmlnaHQgc2lkZSBpcyBu b3QgYSBkYXR1bSwgYXNzaWdubWVudCBpZ25vcmVkCisgICAgICAgICAgICAgLi4uCitkaWZmIC0t Z2l0IGEvc3JjL3NhZ2UvbGlicy9zaW5ndWxhci9mdW5jdGlvbi5weXggYi9zcmMvc2FnZS9saWJz L3Npbmd1bGFyL2Z1bmN0aW9uLnB5eAoraW5kZXggZjQwMzQ2ZDFmZDAuLmM1OTdjNjNhYWZlIDEw MDY0NAorLS0tIGEvc3JjL3NhZ2UvbGlicy9zaW5ndWxhci9mdW5jdGlvbi5weXgKKysrKyBiL3Ny Yy9zYWdlL2xpYnMvc2luZ3VsYXIvZnVuY3Rpb24ucHl4CitAQCAtMTI0MSwzMiArMTI0MSwyMiBA QCBjZGVmIGNsYXNzIFNpbmd1bGFyRnVuY3Rpb24oU2FnZU9iamVjdCk6CisgICAgICAgICAgICAg c2FnZTogSSA9IElkZWFsKFt4XjMqeV4yICsgMyp4XjIqeV4yKnogKyB5XjMqel4yICsgel41XSkK KyAgICAgICAgICAgICBzYWdlOiBJID0gSWRlYWwoSS5ncm9lYm5lcl9iYXNpcygpKQorICAgICAg ICAgICAgIHNhZ2U6IGhpbGIgPSBzYWdlLmxpYnMuc2luZ3VsYXIuZnVuY3Rpb25fZmFjdG9yeS5m Zi5oaWxiCistICAgICAgICAgICAgc2FnZTogaGlsYihJKSAjIFNpbmd1bGFyIHdpbGwgcHJpbnQg Ly8gKiogXyBpcyBubyBzdGFuZGFyZCBiYXNpcworLSAgICAgICAgICAgIC8vICoqIF8gaXMgbm8g c3RhbmRhcmQgYmFzaXMKKy0gICAgICAgICAgICAvLyAgICAgICAgIDEgdF4wCistICAgICAgICAg ICAgLy8gICAgICAgIC0xIHReNQorLSAgICAgICAgICAgIDxCTEFOS0xJTkU+CistICAgICAgICAg ICAgLy8gICAgICAgICAxIHReMAorLSAgICAgICAgICAgIC8vICAgICAgICAgMSB0XjEKKy0gICAg ICAgICAgICAvLyAgICAgICAgIDEgdF4yCistICAgICAgICAgICAgLy8gICAgICAgICAxIHReMwor LSAgICAgICAgICAgIC8vICAgICAgICAgMSB0XjQKKy0gICAgICAgICAgICAvLyBkaW1lbnNpb24g KHByb2ouKSAgPSAxCistICAgICAgICAgICAgLy8gZGVncmVlIChwcm9qLikgICA9IDUKKysgICAg ICAgICAgICBzYWdlOiBmcm9tIHNhZ2UubWlzYy5zYWdlX29zdG9vbHMgaW1wb3J0IHJlZGlyZWN0 aW9uCisrICAgICAgICAgICAgc2FnZTogb3V0ID0gdG1wX2ZpbGVuYW1lKCkKKysgICAgICAgICAg ICBzYWdlOiB3aXRoIHJlZGlyZWN0aW9uKHN5cy5zdGRvdXQsICBvcGVuKG91dCwgJ3cnKSk6Cisr ICAgICAgICAgICAgLi4uLjogICAgIGhpbGIoSSkgIyBTaW5ndWxhciB3aWxsIHByaW50IC8vICoq IF8gaXMgbm8gc3RhbmRhcmQgYmFzaXMKKysgICAgICAgICAgICBzYWdlOiB3aXRoIG9wZW4ob3V0 KSBhcyBmOgorKyAgICAgICAgICAgIC4uLi46ICAgICAnaXMgbm8gc3RhbmRhcmQgYmFzaXMnIGlu IGYucmVhZCgpCisrICAgICAgICAgICAgVHJ1ZQorIAorICAgICAgICAgU28gd2UgdGVsbCBTaW5n dWxhciB0aGF0IGBgSWBgIGlzIGluZGVlZCBhIEdyb2VibmVyIGJhc2lzOjoKKyAKKy0gICAgICAg ICAgICBzYWdlOiBoaWxiKEksYXR0cmlidXRlcz17STp7J2lzU0InOjF9fSkgIyBubyBjb21wbGFp bnQgZnJvbSBTaW5ndWxhcgorLSAgICAgICAgICAgIC8vICAgICAgICAgMSB0XjAKKy0gICAgICAg ICAgICAvLyAgICAgICAgLTEgdF41CistICAgICAgICAgICAgPEJMQU5LTElORT4KKy0gICAgICAg ICAgICAvLyAgICAgICAgIDEgdF4wCistICAgICAgICAgICAgLy8gICAgICAgICAxIHReMQorLSAg ICAgICAgICAgIC8vICAgICAgICAgMSB0XjIKKy0gICAgICAgICAgICAvLyAgICAgICAgIDEgdF4z CistICAgICAgICAgICAgLy8gICAgICAgICAxIHReNAorLSAgICAgICAgICAgIC8vIGRpbWVuc2lv biAocHJvai4pICA9IDEKKy0gICAgICAgICAgICAvLyBkZWdyZWUgKHByb2ouKSAgID0gNQorKyAg ICAgICAgICAgIHNhZ2U6IG91dCA9IHRtcF9maWxlbmFtZSgpCisrICAgICAgICAgICAgc2FnZTog d2l0aCByZWRpcmVjdGlvbihzeXMuc3Rkb3V0LCAgb3BlbihvdXQsICd3JykpOgorKyAgICAgICAg ICAgIC4uLi46ICAgICBoaWxiKEksYXR0cmlidXRlcz17STp7J2lzU0InOjF9fSkgIyBubyBjb21w bGFpbnQgZnJvbSBTaW5ndWxhcgorKyAgICAgICAgICAgIHNhZ2U6IHdpdGggb3BlbihvdXQpIGFz IGY6CisrICAgICAgICAgICAgLi4uLjogICAgICdpcyBubyBzdGFuZGFyZCBiYXNpcycgaW4gZi5y ZWFkKCkKKysgICAgICAgICAgICBGYWxzZQorIAorIAorICAgICAgICAgVEVTVFM6CitkaWZmIC0t Z2l0IGEvc3JjL3NhZ2UvcmluZ3MvcG9seW5vbWlhbC9tdWx0aV9wb2x5bm9taWFsX2lkZWFsLnB5 IGIvc3JjL3NhZ2UvcmluZ3MvcG9seW5vbWlhbC9tdWx0aV9wb2x5bm9taWFsX2lkZWFsLnB5Citp bmRleCAyMmFkYTZkZTk0Ny4uODAzNTI3MDA4NzIgMTAwNjQ0CistLS0gYS9zcmMvc2FnZS9yaW5n cy9wb2x5bm9taWFsL211bHRpX3BvbHlub21pYWxfaWRlYWwucHkKKysrKyBiL3NyYy9zYWdlL3Jp bmdzL3BvbHlub21pYWwvbXVsdGlfcG9seW5vbWlhbF9pZGVhbC5weQorQEAgLTMxMzIsMTMgKzMx MzIsMTYgQEAgZGVmIGhpbGJlcnRfbnVtZXJhdG9yKHNlbGYsIGdyYWRpbmc9Tm9uZSwgYWxnb3Jp dGhtPSdzYWdlJyk6CisgICAgICAgICAgICAgc2FnZTogSS5oaWxiZXJ0X251bWVyYXRvcigpICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgbmVlZHMgc2Fn ZS5yaW5ncy5udW1iZXJfZmllbGQKKyAgICAgICAgICAgICAtdF41ICsgMQorIAorLSAgICAgICAg VGhpcyBleGFtcGxlIHJldHVybnMgYSB3cm9uZyBhbnN3ZXIgZHVlIHRvIGFuIGludGVnZXIgb3Zl cmZsb3cgaW4gU2luZ3VsYXI6OgorKyAgICAgICAgVGhpcyBleGFtcGxlIHJldHVybnMgYSB3cm9u ZyBhbnN3ZXIgaW4gc2luZ3VsYXIgPCA0LjMuMnA0IGR1ZSB0byBhbiBpbnRlZ2VyIG92ZXJmbG93 OjoKKyAKKyAgICAgICAgICAgICBzYWdlOiBuPTQ7IG09MTE7IFAgPSBQb2x5bm9taWFsUmluZyhR USwgbiptLCAieCIpOyB4ID0gUC5nZW5zKCk7IE0gPSBNYXRyaXgobiwgeCkKKyAgICAgICAgICAg ICBzYWdlOiBJID0gUC5pZGVhbChNLm1pbm9ycygyKSkKKyAgICAgICAgICAgICBzYWdlOiBKID0g UCAqIFttLmxtKCkgZm9yIG0gaW4gSS5ncm9lYm5lcl9iYXNpcygpXQorLSAgICAgICAgICAgIHNh Z2U6IEouaGlsYmVydF9udW1lcmF0b3IoYWxnb3JpdGhtPSdzaW5ndWxhcicpCistICAgICAgICAg ICAgLi4uMTIwKnReMzMgLSAzNDY1KnReMzIgKyA0ODE4MCp0XjMxIC0gLi4uCisrICAgICAgICAg ICAgc2FnZTogSi5oaWxiZXJ0X251bWVyYXRvcihhbGdvcml0aG09J3Npbmd1bGFyJykgIyBrbm93 biBidWcKKysgICAgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Cisr ICAgICAgICAgICAgLi4uLgorKyAgICAgICAgICAgIFJ1bnRpbWVFcnJvcjogZXJyb3IgaW4gU2lu Z3VsYXIgZnVuY3Rpb24gY2FsbCAnaGlsYic6CisrICAgICAgICAgICAgb3ZlcmZsb3cgYXQgdF4y MgorIAorICAgICAgICAgT3VyIHR3byBhbGdvcml0aG1zIHNob3VsZCBhbHdheXMgYWdyZWU7IG5v dCB0ZXN0ZWQgdW50aWwKKyAgICAgICAgIDp0cmFjOmAzMzE3OGAgaXMgZml4ZWQ6OgorZGlmZiAt LWdpdCBhL3NyYy9zYWdlL3NhbmRwaWxlcy9zYW5kcGlsZS5weSBiL3NyYy9zYWdlL3NhbmRwaWxl cy9zYW5kcGlsZS5weQoraW5kZXggMDJkMjAyMWIyZmIuLmM4ZTE1ZTA2ZjA1IDEwMDY0NAorLS0t IGEvc3JjL3NhZ2Uvc2FuZHBpbGVzL3NhbmRwaWxlLnB5CisrKysgYi9zcmMvc2FnZS9zYW5kcGls ZXMvc2FuZHBpbGUucHkKK0BAIC0yNDkzLDkgKzI0OTMsMTUgQEAgZGVmIF9zZXRfaWRlYWwoc2Vs Zik6CisgICAgICAgICAgICAgc2FnZTogJ19pZGVhbCcgaW4gUy5fX2RpY3RfXworICAgICAgICAg ICAgIFRydWUKKyAgICAgICAgICIiIgorKyAgICAgICAgZnJvbSBzYWdlLmxpYnMuc2luZ3VsYXIu ZnVuY3Rpb25fZmFjdG9yeSBpbXBvcnQgZmYKKysgICAgICAgIHRyeToKKysgICAgICAgICAgICBz YXQgPSBmZi5lbGltX19saWIuc2F0X3dpdGhfZXhwCisrICAgICAgICBleGNlcHQgTmFtZUVycm9y OgorKyAgICAgICAgICAgIHNhdCA9IGZmLmVsaW1fX2xpYi5zYXQKKyAgICAgICAgIFIgPSBzZWxm LnJpbmcoKQorLSAgICAgICAgSSA9IHNlbGYuX3Vuc2F0dXJhdGVkX2lkZWFsLl9zaW5ndWxhcl8o KQorLSAgICAgICAgc2VsZi5faWRlYWwgPSBSLmlkZWFsKEkuc2F0KHByb2QoUi5nZW5zKCkpLl9z aW5ndWxhcl8oKSlbMV0pCisrICAgICAgICBJID0gc2VsZi5fdW5zYXR1cmF0ZWRfaWRlYWwKKysg ICAgICAgIElfc2F0X2dlbnMgPSBzYXQoSSwgcHJvZChSLmdlbnMoKSkpWzBdCisrICAgICAgICBz ZWxmLl9pZGVhbCA9IFIuaWRlYWwoSV9zYXRfZ2VucykKKyAKKyAgICAgZGVmIHVuc2F0dXJhdGVk X2lkZWFsKHNlbGYpOgorICAgICAgICAgciIiIgorZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3NjaGVt ZXMvcHJvamVjdGl2ZS9wcm9qZWN0aXZlX3N1YnNjaGVtZS5weSBiL3NyYy9zYWdlL3NjaGVtZXMv cHJvamVjdGl2ZS9wcm9qZWN0aXZlX3N1YnNjaGVtZS5weQoraW5kZXggZTZjYWYxOWJhNzQuLmFm ZDY0ODRkNzc5IDEwMDY0NAorLS0tIGEvc3JjL3NhZ2Uvc2NoZW1lcy9wcm9qZWN0aXZlL3Byb2pl Y3RpdmVfc3Vic2NoZW1lLnB5CisrKysgYi9zcmMvc2FnZS9zY2hlbWVzL3Byb2plY3RpdmUvcHJv amVjdGl2ZV9zdWJzY2hlbWUucHkKK0BAIC0xMDAxLDcgKzEwMDEsMTAgQEAgZGVmIGR1YWwoc2Vs Zik6CisgICAgICAgICBmb3IgaSBpbiByYW5nZShuICsgMSk6CisgICAgICAgICAgICAgSiA9IEog KyBTLmlkZWFsKHpbLTFdICogZl9TLmRlcml2YXRpdmUoeltpXSkgLSB6W2kgKyBuICsgMV0pCisg CistICAgICAgICBzYXQgPSBmZi5lbGltX19saWIuc2F0CisrICAgICAgICB0cnk6CisrICAgICAg ICAgICAgc2F0ID0gZmYuZWxpbV9fbGliLnNhdF93aXRoX2V4cAorKyAgICAgICAgZXhjZXB0IE5h bWVFcnJvcjoKKysgICAgICAgICAgICBzYXQgPSBmZi5lbGltX19saWIuc2F0CisgCisgICAgICAg ICBtYXhfaWRlYWwgPSBTLmlkZWFsKHpbbiArIDE6IDIgKiBuICsgMl0pCisgICAgICAgICBKX3Nh dF9nZW5zID0gc2F0KEosIG1heF9pZGVhbClbMF0KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1h dGgvcGF0Y2hlcy8zNjAwNi1nbXBfNi4zLjAucGF0Y2ggYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNo ZXMvMzYwMDYtZ21wXzYuMy4wLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAuLmRkMDU0NjAyZmY2MDgKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NhZ2Vt YXRoL3BhdGNoZXMvMzYwMDYtZ21wXzYuMy4wLnBhdGNoCkBAIC0wLDAgKzEsMzggQEAKK2RpZmYg LS1naXQgYS9zcmMvc2FnZS9leHQvbWVtb3J5LnB5eCBiL3NyYy9zYWdlL2V4dC9tZW1vcnkucHl4 CitpbmRleCAxZGU2ZGVkYWI4Mi4uYzViMTYxNjhkMDQgMTAwNjQ0CistLS0gYS9zcmMvc2FnZS9l eHQvbWVtb3J5LnB5eAorKysrIGIvc3JjL3NhZ2UvZXh0L21lbW9yeS5weXgKK0BAIC0zLDE0ICsz LDE0IEBAIExvdy1sZXZlbCBtZW1vcnkgYWxsb2NhdGlvbiBmdW5jdGlvbnMKKyAKKyBURVNUUzoK KyAKKy1DaGVjayB0aGF0IGEgYGBNZW1vcnlFcnJvcmBgIGlzIHJhaXNlZCBpZiB3ZSB0cnkgdG8g YWxsb2NhdGUgYQorK0NoZWNrIHRoYXQgYW4gZXJyb3IgaXMgcmFpc2VkIGlmIHdlIHRyeSB0byBh bGxvY2F0ZSBhCisgcmlkaWN1bG91c2x5IGxhcmdlIGludGVnZXIsIHNlZSA6dHJhYzpgMTUzNjNg OjoKKyAKKy0gICAgc2FnZTogMl4oMl42My0zKQorLSAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50 IGNhbGwgbGFzdCk6CistICAgIC4uLgorLSAgICBPdmVyZmxvd0Vycm9yOiBleHBvbmVudCBtdXN0 IGJlIGF0IG1vc3QgMjE0NzQ4MzY0NyAgICAgICAgICMgMzItYml0CistICAgIFJ1bnRpbWVFcnJv cjogQWJvcnRlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyA2NC1iaXQK KysgICAgc2FnZTogdHJ5OgorKyAgICAuLi4uOiAgICAgMl4oMl42My0zKQorKyAgICAuLi4uOiBl eGNlcHQgKE92ZXJmbG93RXJyb3IsIFJ1bnRpbWVFcnJvciwgRmxvYXRpbmdQb2ludEVycm9yKToK KysgICAgLi4uLjogICAgIHByaW50ICgnT3ZlcmZsb3cgZXJyb3InKQorKyAgICBPdmVyZmxvdyBl cnJvcgorIAorIEFVVEhPUlM6CisgCitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcmluZ3MvaW50ZWdl ci5weXggYi9zcmMvc2FnZS9yaW5ncy9pbnRlZ2VyLnB5eAoraW5kZXggMmNkMDgwZGRhZmEuLjA5 MGFiNTljYjI4IDEwMDY0NAorLS0tIGEvc3JjL3NhZ2UvcmluZ3MvaW50ZWdlci5weXgKKysrKyBi L3NyYy9zYWdlL3JpbmdzL2ludGVnZXIucHl4CitAQCAtNjY1NCw3ICs2NjU0LDcgQEAgY2RlZiBj bGFzcyBJbnRlZ2VyKHNhZ2Uuc3RydWN0dXJlLmVsZW1lbnQuRXVjbGlkZWFuRG9tYWluRWxlbWVu dCk6CisgICAgICAgICAgICAgc2FnZTogdHJ5OgorICAgICAgICAgICAgIC4uLi46ICAgICBwcmlu dCgnUG9zc2libGUgZXJyb3Igb3V0cHV0IGZyb20gZ21wJywgZmx1c2g9VHJ1ZSkKKyAgICAgICAg ICAgICAuLi4uOiAgICAgMSA8PCAoMl42MCkKKy0gICAgICAgICAgICAuLi4uOiBleGNlcHQgKE1l bW9yeUVycm9yLCBPdmVyZmxvd0Vycm9yLCBSdW50aW1lRXJyb3IpOgorKyAgICAgICAgICAgIC4u Li46IGV4Y2VwdCAoTWVtb3J5RXJyb3IsIE92ZXJmbG93RXJyb3IsIFJ1bnRpbWVFcnJvciwgRmxv YXRpbmdQb2ludEVycm9yKToKKyAgICAgICAgICAgICAuLi4uOiAgICAgcGFzcworICAgICAgICAg ICAgIC4uLi46IGVsc2U6CisgICAgICAgICAgICAgLi4uLjogICAgIHByaW50KCJGYWlsZWQgdG8g cmFpc2UgZXhjZXB0aW9uIikKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8z NjA0Ni1maXhfbWVtb3J5X2xlYWsucGF0Y2ggYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzYw NDYtZml4X21lbW9yeV9sZWFrLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAuLjNkMmE0YmQ5Y2Q5NmYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NhZ2Vt YXRoL3BhdGNoZXMvMzYwNDYtZml4X21lbW9yeV9sZWFrLnBhdGNoCkBAIC0wLDAgKzEsNzQwIEBA CitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvZXh0X2RhdGEvdmFsZ3JpbmQvdmFsZ3JpbmQtcHl0aG9u LnN1cHAgYi9zcmMvc2FnZS9leHRfZGF0YS92YWxncmluZC92YWxncmluZC1weXRob24uc3VwcAor bmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAwLi4xNmFhMjg1ODQ4NAorLS0t IC9kZXYvbnVsbAorKysrIGIvc3JjL3NhZ2UvZXh0X2RhdGEvdmFsZ3JpbmQvdmFsZ3JpbmQtcHl0 aG9uLnN1cHAKK0BAIC0wLDAgKzEsNDgwIEBACisrIyBGcm9tIHRoZSBDUHl0aG9uIHJlcG9zaXRv cnkgd2l0aCB0aGUgc3VwcHJlc3Npb25zIGZvciBfUHlPYmplY3RfRnJlZQorKyMgYW5kIF9QeU9i amVjdF9SZWFsbG9jIGVuYWJsZWQuIFNlZSB0aGUgdXBzdHJlYW0gc3VwcHJlc3Npb24gZmlsZSBm b3IKKysjIGRldGFpbHM6CisrIworKyMgaHR0cHM6Ly9naXRodWIuY29tL3B5dGhvbi9jcHl0aG9u L2Jsb2IvbWFpbi9NaXNjL3ZhbGdyaW5kLXB5dGhvbi5zdXBwCisrCisrIyBhbGwgdG9vbCBuYW1l czogQWRkcmNoZWNrLE1lbWNoZWNrLGNhY2hlZ3JpbmQsaGVsZ3JpbmQsbWFzc2lmCisreworKyAg IEFERFJFU1NfSU5fUkFOR0UvSW52YWxpZCByZWFkIG9mIHNpemUgNAorKyAgIE1lbWNoZWNrOkFk ZHI0CisrICAgZnVuOmFkZHJlc3NfaW5fcmFuZ2UKKyt9CisrCisreworKyAgIEFERFJFU1NfSU5f UkFOR0UvSW52YWxpZCByZWFkIG9mIHNpemUgNAorKyAgIE1lbWNoZWNrOlZhbHVlNAorKyAgIGZ1 bjphZGRyZXNzX2luX3JhbmdlCisrfQorKworK3sKKysgICBBRERSRVNTX0lOX1JBTkdFL0ludmFs aWQgcmVhZCBvZiBzaXplIDggKHg4Nl82NCBha2EgYW1kNjQpCisrICAgTWVtY2hlY2s6VmFsdWU4 CisrICAgZnVuOmFkZHJlc3NfaW5fcmFuZ2UKKyt9CisrCisreworKyAgIEFERFJFU1NfSU5fUkFO R0UvQ29uZGl0aW9uYWwganVtcCBvciBtb3ZlIGRlcGVuZHMgb24gdW5pbml0aWFsaXNlZCB2YWx1 ZQorKyAgIE1lbWNoZWNrOkNvbmQKKysgICBmdW46YWRkcmVzc19pbl9yYW5nZQorK30KKysKKysj CisrIyBMZWFrcyAoaW5jbHVkaW5nIHBvc3NpYmxlIGxlYWtzKQorKyMgICAgSG1tbSwgSSB3b25k ZXIgaWYgdGhpcyBtYXNrcyBzb21lIHJlYWwgbGVha3MuICBJIHRoaW5rIGl0IGRvZXMuCisrIyAg ICBXaWxsIG5lZWQgdG8gZml4IHRoYXQuCisrIworKworK3sKKysgICBTdXBwcmVzcyBsZWFraW5n IHRoZSBHSUwgYWZ0ZXIgYSBmb3JrLgorKyAgIE1lbWNoZWNrOkxlYWsKKysgICBmdW46bWFsbG9j CisrICAgZnVuOlB5VGhyZWFkX2FsbG9jYXRlX2xvY2sKKysgICBmdW46UHlFdmFsX1JlSW5pdFRo cmVhZHMKKyt9CisrCisreworKyAgIFN1cHByZXNzIGxlYWtpbmcgdGhlIGF1dG9UTFNrZXkuICBU aGlzIGxvb2tzIGxpa2UgaXQgc2hvdWxkbid0IGxlYWsgdGhvdWdoLgorKyAgIE1lbWNoZWNrOkxl YWsKKysgICBmdW46bWFsbG9jCisrICAgZnVuOlB5VGhyZWFkX2NyZWF0ZV9rZXkKKysgICBmdW46 X1B5R0lMU3RhdGVfSW5pdAorKyAgIGZ1bjpQeV9Jbml0aWFsaXplRXgKKysgICBmdW46UHlfTWFp bgorK30KKysKKyt7CisrICAgSG1tbSwgaXMgdGhpcyBhIHJlYWwgbGVhayBvciBsaWtlIHRoZSBH SUw/CisrICAgTWVtY2hlY2s6TGVhaworKyAgIGZ1bjptYWxsb2MKKysgICBmdW46UHlUaHJlYWRf UmVJbml0VExTCisrfQorKworK3sKKysgICBIYW5kbGUgUHlNYWxsb2MgY29uZnVzaW5nIHZhbGdy aW5kIChwb3NzaWJseSBsZWFrZWQpCisrICAgTWVtY2hlY2s6TGVhaworKyAgIGZ1bjpyZWFsbG9j CisrICAgZnVuOl9QeU9iamVjdF9HQ19SZXNpemUKKysgICBmdW46Q09NTUVOVF9USElTX0xJTkVf VE9fRElTQUJMRV9MRUFLX1dBUk5JTkcKKyt9CisrCisreworKyAgIEhhbmRsZSBQeU1hbGxvYyBj b25mdXNpbmcgdmFsZ3JpbmQgKHBvc3NpYmx5IGxlYWtlZCkKKysgICBNZW1jaGVjazpMZWFrCisr ICAgZnVuOm1hbGxvYworKyAgIGZ1bjpfUHlPYmplY3RfR0NfTmV3CisrICAgZnVuOkNPTU1FTlRf VEhJU19MSU5FX1RPX0RJU0FCTEVfTEVBS19XQVJOSU5HCisrfQorKworK3sKKysgICBIYW5kbGUg UHlNYWxsb2MgY29uZnVzaW5nIHZhbGdyaW5kIChwb3NzaWJseSBsZWFrZWQpCisrICAgTWVtY2hl Y2s6TGVhaworKyAgIGZ1bjptYWxsb2MKKysgICBmdW46X1B5T2JqZWN0X0dDX05ld1ZhcgorKyAg IGZ1bjpDT01NRU5UX1RISVNfTElORV9UT19ESVNBQkxFX0xFQUtfV0FSTklORworK30KKysKKysj CisrIyBOb24tcHl0aG9uIHNwZWNpZmljIGxlYWtzCisrIworKworK3sKKysgICBIYW5kbGUgcHRo cmVhZCBpc3N1ZSAocG9zc2libHkgbGVha2VkKQorKyAgIE1lbWNoZWNrOkxlYWsKKysgICBmdW46 Y2FsbG9jCisrICAgZnVuOmFsbG9jYXRlX2R0dgorKyAgIGZ1bjpfZGxfYWxsb2NhdGVfdGxzX3N0 b3JhZ2UKKysgICBmdW46X2RsX2FsbG9jYXRlX3RscworK30KKysKKyt7CisrICAgSGFuZGxlIHB0 aHJlYWQgaXNzdWUgKHBvc3NpYmx5IGxlYWtlZCkKKysgICBNZW1jaGVjazpMZWFrCisrICAgZnVu Om1lbWFsaWduCisrICAgZnVuOl9kbF9hbGxvY2F0ZV90bHNfc3RvcmFnZQorKyAgIGZ1bjpfZGxf YWxsb2NhdGVfdGxzCisrfQorKworK3sKKysgICBBRERSRVNTX0lOX1JBTkdFL0ludmFsaWQgcmVh ZCBvZiBzaXplIDQKKysgICBNZW1jaGVjazpBZGRyNAorKyAgIGZ1bjpfUHlPYmplY3RfRnJlZQor K30KKysKKyt7CisrICAgQUREUkVTU19JTl9SQU5HRS9JbnZhbGlkIHJlYWQgb2Ygc2l6ZSA0Cisr ICAgTWVtY2hlY2s6VmFsdWU0CisrICAgZnVuOl9QeU9iamVjdF9GcmVlCisrfQorKworK3sKKysg ICBBRERSRVNTX0lOX1JBTkdFL1VzZSBvZiB1bmluaXRpYWxpc2VkIHZhbHVlIG9mIHNpemUgOAor KyAgIE1lbWNoZWNrOkFkZHI4CisrICAgZnVuOl9QeU9iamVjdF9GcmVlCisrfQorKworK3sKKysg ICBBRERSRVNTX0lOX1JBTkdFL1VzZSBvZiB1bmluaXRpYWxpc2VkIHZhbHVlIG9mIHNpemUgOAor KyAgIE1lbWNoZWNrOlZhbHVlOAorKyAgIGZ1bjpfUHlPYmplY3RfRnJlZQorK30KKysKKyt7Cisr ICAgQUREUkVTU19JTl9SQU5HRS9Db25kaXRpb25hbCBqdW1wIG9yIG1vdmUgZGVwZW5kcyBvbiB1 bmluaXRpYWxpc2VkIHZhbHVlCisrICAgTWVtY2hlY2s6Q29uZAorKyAgIGZ1bjpfUHlPYmplY3Rf RnJlZQorK30KKysKKyt7CisrICAgQUREUkVTU19JTl9SQU5HRS9JbnZhbGlkIHJlYWQgb2Ygc2l6 ZSA0CisrICAgTWVtY2hlY2s6QWRkcjQKKysgICBmdW46X1B5T2JqZWN0X1JlYWxsb2MKKyt9Cisr CisreworKyAgIEFERFJFU1NfSU5fUkFOR0UvSW52YWxpZCByZWFkIG9mIHNpemUgNAorKyAgIE1l bWNoZWNrOlZhbHVlNAorKyAgIGZ1bjpfUHlPYmplY3RfUmVhbGxvYworK30KKysKKyt7CisrICAg QUREUkVTU19JTl9SQU5HRS9Vc2Ugb2YgdW5pbml0aWFsaXNlZCB2YWx1ZSBvZiBzaXplIDgKKysg ICBNZW1jaGVjazpBZGRyOAorKyAgIGZ1bjpfUHlPYmplY3RfUmVhbGxvYworK30KKysKKyt7Cisr ICAgQUREUkVTU19JTl9SQU5HRS9Vc2Ugb2YgdW5pbml0aWFsaXNlZCB2YWx1ZSBvZiBzaXplIDgK KysgICBNZW1jaGVjazpWYWx1ZTgKKysgICBmdW46X1B5T2JqZWN0X1JlYWxsb2MKKyt9CisrCisr eworKyAgIEFERFJFU1NfSU5fUkFOR0UvQ29uZGl0aW9uYWwganVtcCBvciBtb3ZlIGRlcGVuZHMg b24gdW5pbml0aWFsaXNlZCB2YWx1ZQorKyAgIE1lbWNoZWNrOkNvbmQKKysgICBmdW46X1B5T2Jq ZWN0X1JlYWxsb2MKKyt9CisrCisrIyMjCisrIyMjIEFsbCB0aGUgc3VwcHJlc3Npb25zIGJlbG93 IGFyZSBmb3IgZXJyb3JzIHRoYXQgb2NjdXIgd2l0aGluIGxpYnJhcmllcworKyMjIyB0aGF0IFB5 dGhvbiB1c2VzLiAgVGhlIHByb2JsZW1zIHRvIG5vdCBhcHBlYXIgdG8gYmUgcmVsYXRlZCB0byBQ eXRob24ncworKyMjIyB1c2Ugb2YgdGhlIGxpYnJhcmllcy4KKysjIyMKKysKKyt7CisrICAgR2Vu ZXJpYyB1YnVudHUgbGQgcHJvYmxlbXMKKysgICBNZW1jaGVjazpBZGRyOAorKyAgIG9iajovbGli L2xkLTIuNC5zbworKyAgIG9iajovbGliL2xkLTIuNC5zbworKyAgIG9iajovbGliL2xkLTIuNC5z bworKyAgIG9iajovbGliL2xkLTIuNC5zbworK30KKysKKyt7CisrICAgR2VuZXJpYyBnZW50b28g bGQgcHJvYmxlbXMKKysgICBNZW1jaGVjazpDb25kCisrICAgb2JqOi9saWIvbGQtMi4zLjQuc28K KysgICBvYmo6L2xpYi9sZC0yLjMuNC5zbworKyAgIG9iajovbGliL2xkLTIuMy40LnNvCisrICAg b2JqOi9saWIvbGQtMi4zLjQuc28KKyt9CisrCisreworKyAgIERCTSBwcm9ibGVtcywgc2VlIHRl c3RfZGJtCisrICAgTWVtY2hlY2s6UGFyYW0KKysgICB3cml0ZShidWYpCisrICAgZnVuOndyaXRl CisrICAgb2JqOi91c3IvbGliL2xpYmRiMS5zby4yCisrICAgb2JqOi91c3IvbGliL2xpYmRiMS5z by4yCisrICAgb2JqOi91c3IvbGliL2xpYmRiMS5zby4yCisrICAgb2JqOi91c3IvbGliL2xpYmRi MS5zby4yCisrICAgZnVuOmRibV9jbG9zZQorK30KKysKKyt7CisrICAgREJNIHByb2JsZW1zLCBz ZWUgdGVzdF9kYm0KKysgICBNZW1jaGVjazpWYWx1ZTgKKysgICBmdW46bWVtbW92ZQorKyAgIG9i ajovdXNyL2xpYi9saWJkYjEuc28uMgorKyAgIG9iajovdXNyL2xpYi9saWJkYjEuc28uMgorKyAg IG9iajovdXNyL2xpYi9saWJkYjEuc28uMgorKyAgIG9iajovdXNyL2xpYi9saWJkYjEuc28uMgor KyAgIGZ1bjpkYm1fc3RvcmUKKysgICBmdW46ZGJtX2Fzc19zdWIKKyt9CisrCisreworKyAgIERC TSBwcm9ibGVtcywgc2VlIHRlc3RfZGJtCisrICAgTWVtY2hlY2s6Q29uZAorKyAgIG9iajovdXNy L2xpYi9saWJkYjEuc28uMgorKyAgIG9iajovdXNyL2xpYi9saWJkYjEuc28uMgorKyAgIG9iajov dXNyL2xpYi9saWJkYjEuc28uMgorKyAgIGZ1bjpkYm1fc3RvcmUKKysgICBmdW46ZGJtX2Fzc19z dWIKKyt9CisrCisreworKyAgIERCTSBwcm9ibGVtcywgc2VlIHRlc3RfZGJtCisrICAgTWVtY2hl Y2s6Q29uZAorKyAgIGZ1bjptZW1tb3ZlCisrICAgb2JqOi91c3IvbGliL2xpYmRiMS5zby4yCisr ICAgb2JqOi91c3IvbGliL2xpYmRiMS5zby4yCisrICAgb2JqOi91c3IvbGliL2xpYmRiMS5zby4y CisrICAgb2JqOi91c3IvbGliL2xpYmRiMS5zby4yCisrICAgZnVuOmRibV9zdG9yZQorKyAgIGZ1 bjpkYm1fYXNzX3N1YgorK30KKysKKyt7CisrICAgR0RCTSBwcm9ibGVtcywgc2VlIHRlc3RfZ2Ri bQorKyAgIE1lbWNoZWNrOlBhcmFtCisrICAgd3JpdGUoYnVmKQorKyAgIGZ1bjp3cml0ZQorKyAg IGZ1bjpnZGJtX29wZW4KKysKKyt9CisrCisreworKyAgIFVuaW5pdGlhbGlzZWQgYnl0ZShzKSBm YWxzZSBhbGFybSwgc2VlIGJwby0zNTU2MQorKyAgIE1lbWNoZWNrOlBhcmFtCisrICAgZXBvbGxf Y3RsKGV2ZW50KQorKyAgIGZ1bjplcG9sbF9jdGwKKysgICBmdW46cHllcG9sbF9pbnRlcm5hbF9j dGwKKyt9CisrCisreworKyAgIFpMSUIgcHJvYmxlbXMsIHNlZSB0ZXN0X2d6aXAKKysgICBNZW1j aGVjazpDb25kCisrICAgb2JqOi9saWIvbGliei5zby4xLjIuMworKyAgIG9iajovbGliL2xpYnou c28uMS4yLjMKKysgICBmdW46ZGVmbGF0ZQorK30KKysKKyt7CisrICAgQXZvaWQgcHJvYmxlbXMg dy9yZWFkbGluZSBkb2luZyBhIHB1dGVudiBhbmQgbGVha2luZyBvbiBleGl0CisrICAgTWVtY2hl Y2s6TGVhaworKyAgIGZ1bjptYWxsb2MKKysgICBmdW46eG1hbGxvYworKyAgIGZ1bjpzaF9zZXRf bGluZXNfYW5kX2NvbHVtbnMKKysgICBmdW46X3JsX2dldF9zY3JlZW5fc2l6ZQorKyAgIGZ1bjpf cmxfaW5pdF90ZXJtaW5hbF9pbworKyAgIG9iajovbGliL2xpYnJlYWRsaW5lLnNvLjQuMworKyAg IGZ1bjpybF9pbml0aWFsaXplCisrfQorKworKyMgVmFsZ3JpbmQgZW1pdHMgIkNvbmRpdGlvbmFs IGp1bXAgb3IgbW92ZSBkZXBlbmRzIG9uIHVuaW5pdGlhbGlzZWQgdmFsdWUocykiCisrIyBmYWxz ZSBhbGFybXMgb24gR0NDIGJ1aWx0aW4gc3RyY21wKCkgZnVuY3Rpb24uIFRoZSBHQ0MgY29kZSBp cyBjb3JyZWN0LgorKyMKKysjIFZhbGdyaW5kIGJ1ZzogaHR0cHM6Ly9idWdzLmtkZS5vcmcvc2hv d19idWcuY2dpP2lkPTI2NDkzNgorK3sKKysgICBicG8tMzgxMTg6IFZhbGdyaW5kIGVtaXRzIGZh bHNlIGFsYXJtIG9uIEdDQyBidWlsdGluIHN0cmNtcCgpCisrICAgTWVtY2hlY2s6Q29uZAorKyAg IGZ1bjpQeVVuaWNvZGVfRGVjb2RlCisrfQorKworKworKyMjIworKyMjIyBUaGVzZSBvY2N1ciBm cm9tIHNvbWV3aGVyZSB3aXRoaW4gdGhlIFNTTCwgd2hlbiBydW5uaW5nCisrIyMjICB0ZXN0X3Nv Y2tldF9zbGwuICBUaGV5IGFyZSB0b28gZ2VuZXJhbCB0byBsZWF2ZSBvbiBieSBkZWZhdWx0Lgor KyMjIworKyMjI3sKKysjIyMgICBzb21ld2hlcmUgaW4gU1NMIHN0dWZmCisrIyMjICAgTWVtY2hl Y2s6Q29uZAorKyMjIyAgIGZ1bjptZW1zZXQKKysjIyN9CisrIyMjeworKyMjIyAgIHNvbWV3aGVy ZSBpbiBTU0wgc3R1ZmYKKysjIyMgICBNZW1jaGVjazpWYWx1ZTQKKysjIyMgICBmdW46bWVtc2V0 CisrIyMjfQorKyMjIworKyMjI3sKKysjIyMgICBzb21ld2hlcmUgaW4gU1NMIHN0dWZmCisrIyMj ICAgTWVtY2hlY2s6Q29uZAorKyMjIyAgIGZ1bjpNRDVfVXBkYXRlCisrIyMjfQorKyMjIworKyMj I3sKKysjIyMgICBzb21ld2hlcmUgaW4gU1NMIHN0dWZmCisrIyMjICAgTWVtY2hlY2s6VmFsdWU0 CisrIyMjICAgZnVuOk1ENV9VcGRhdGUKKysjIyN9CisrCisrIyBGZWRvcmEncyBwYWNrYWdlICJv cGVuc3NsLTEuMC4xLTAuMS5iZXRhMi5mYzE3Lng4Nl82NCIgb24geDg2XzY0CisrIyBTZWUgaHR0 cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTE0MTcxCisreworKyAgIG9wZW5zc2wgMS4wLjEgcHJu ZyAxCisrICAgTWVtY2hlY2s6Q29uZAorKyAgIGZ1bjpiY21wCisrICAgZnVuOmZpcHNfZ2V0X2Vu dHJvcHkKKysgICBmdW46RklQU19kcmJnX2luc3RhbnRpYXRlCisrICAgZnVuOlJBTkRfaW5pdF9m aXBzCisrICAgZnVuOk9QRU5TU0xfaW5pdF9saWJyYXJ5CisrICAgZnVuOlNTTF9saWJyYXJ5X2lu aXQKKysgICBmdW46aW5pdF9oYXNobGliCisrfQorKworK3sKKysgICBvcGVuc3NsIDEuMC4xIHBy bmcgMgorKyAgIE1lbWNoZWNrOkNvbmQKKysgICBmdW46Zmlwc19nZXRfZW50cm9weQorKyAgIGZ1 bjpGSVBTX2RyYmdfaW5zdGFudGlhdGUKKysgICBmdW46UkFORF9pbml0X2ZpcHMKKysgICBmdW46 T1BFTlNTTF9pbml0X2xpYnJhcnkKKysgICBmdW46U1NMX2xpYnJhcnlfaW5pdAorKyAgIGZ1bjpp bml0X2hhc2hsaWIKKyt9CisrCisreworKyAgIG9wZW5zc2wgMS4wLjEgcHJuZyAzCisrICAgTWVt Y2hlY2s6VmFsdWU4CisrICAgZnVuOl94ODZfNjRfQUVTX2VuY3J5cHRfY29tcGFjdAorKyAgIGZ1 bjpBRVNfZW5jcnlwdAorK30KKysKKysjCisrIyBBbGwgb2YgdGhlc2UgcHJvYmxlbXMgY29tZSBm cm9tIHVzaW5nIHRlc3Rfc29ja2V0X3NzbAorKyMKKyt7CisrICAgZnJvbSB0ZXN0X3NvY2tldF9z c2wKKysgICBNZW1jaGVjazpDb25kCisrICAgZnVuOkJOX2JpbjJibgorK30KKysKKyt7CisrICAg ZnJvbSB0ZXN0X3NvY2tldF9zc2wKKysgICBNZW1jaGVjazpDb25kCisrICAgZnVuOkJOX251bV9i aXRzX3dvcmQKKyt9CisrCisreworKyAgIGZyb20gdGVzdF9zb2NrZXRfc3NsCisrICAgTWVtY2hl Y2s6VmFsdWU0CisrICAgZnVuOkJOX251bV9iaXRzX3dvcmQKKyt9CisrCisreworKyAgIGZyb20g dGVzdF9zb2NrZXRfc3NsCisrICAgTWVtY2hlY2s6Q29uZAorKyAgIGZ1bjpCTl9tb2RfZXhwX21v bnRfd29yZAorK30KKysKKyt7CisrICAgZnJvbSB0ZXN0X3NvY2tldF9zc2wKKysgICBNZW1jaGVj azpDb25kCisrICAgZnVuOkJOX21vZF9leHBfbW9udAorK30KKysKKyt7CisrICAgZnJvbSB0ZXN0 X3NvY2tldF9zc2wKKysgICBNZW1jaGVjazpQYXJhbQorKyAgIHdyaXRlKGJ1ZikKKysgICBmdW46 d3JpdGUKKysgICBvYmo6L3Vzci9saWIvbGliY3J5cHRvLnNvLjAuOS43CisrfQorKworK3sKKysg ICBmcm9tIHRlc3Rfc29ja2V0X3NzbAorKyAgIE1lbWNoZWNrOkNvbmQKKysgICBmdW46UlNBX3Zl cmlmeQorK30KKysKKyt7CisrICAgZnJvbSB0ZXN0X3NvY2tldF9zc2wKKysgICBNZW1jaGVjazpW YWx1ZTQKKysgICBmdW46UlNBX3ZlcmlmeQorK30KKysKKyt7CisrICAgZnJvbSB0ZXN0X3NvY2tl dF9zc2wKKysgICBNZW1jaGVjazpWYWx1ZTQKKysgICBmdW46REVTX3NldF9rZXlfdW5jaGVja2Vk CisrfQorKworK3sKKysgICBmcm9tIHRlc3Rfc29ja2V0X3NzbAorKyAgIE1lbWNoZWNrOlZhbHVl NAorKyAgIGZ1bjpERVNfZW5jcnlwdDIKKyt9CisrCisreworKyAgIGZyb20gdGVzdF9zb2NrZXRf c3NsCisrICAgTWVtY2hlY2s6Q29uZAorKyAgIG9iajovdXNyL2xpYi9saWJzc2wuc28uMC45LjcK Kyt9CisrCisreworKyAgIGZyb20gdGVzdF9zb2NrZXRfc3NsCisrICAgTWVtY2hlY2s6VmFsdWU0 CisrICAgb2JqOi91c3IvbGliL2xpYnNzbC5zby4wLjkuNworK30KKysKKyt7CisrICAgZnJvbSB0 ZXN0X3NvY2tldF9zc2wKKysgICBNZW1jaGVjazpDb25kCisrICAgZnVuOkJVRl9NRU1fZ3Jvd19j bGVhbgorK30KKysKKyt7CisrICAgZnJvbSB0ZXN0X3NvY2tldF9zc2wKKysgICBNZW1jaGVjazpD b25kCisrICAgZnVuOm1lbWNweQorKyAgIGZ1bjpzc2wzX3JlYWRfYnl0ZXMKKyt9CisrCisrewor KyAgIGZyb20gdGVzdF9zb2NrZXRfc3NsCisrICAgTWVtY2hlY2s6Q29uZAorKyAgIGZ1bjpTSEEx X1VwZGF0ZQorK30KKysKKyt7CisrICAgZnJvbSB0ZXN0X3NvY2tldF9zc2wKKysgICBNZW1jaGVj azpWYWx1ZTQKKysgICBmdW46U0hBMV9VcGRhdGUKKyt9CisrCisreworKyAgIHRlc3RfYnVmZmVy X25vbl9kZWJ1ZworKyAgIE1lbWNoZWNrOkFkZHI0CisrICAgZnVuOlB5VW5pY29kZVVDUzJfRlND b252ZXJ0ZXIKKyt9CisrCisreworKyAgIHRlc3RfYnVmZmVyX25vbl9kZWJ1ZworKyAgIE1lbWNo ZWNrOkFkZHI0CisrICAgZnVuOlB5VW5pY29kZV9GU0NvbnZlcnRlcgorK30KKysKKyt7CisrICAg d2NzY21wX2ZhbHNlX3Bvc2l0aXZlCisrICAgTWVtY2hlY2s6QWRkcjgKKysgICBmdW46d2NzY21w CisrICAgZnVuOl9QeU9TX0dldE9wdAorKyAgIGZ1bjpQeV9NYWluCisrICAgZnVuOm1haW4KKyt9 CisrCisrIyBBZGRpdGlvbmFsIHN1cHByZXNzaW9ucyBmb3IgdGhlIHVuaWZpZWQgZGVjaW1hbCB0 ZXN0czoKKyt7CisrICAgdGVzdF9kZWNpbWFsCisrICAgTWVtY2hlY2s6QWRkcjQKKysgICBmdW46 UHlVbmljb2RlVUNTMl9GU0NvbnZlcnRlcgorK30KKysKKyt7CisrICAgdGVzdF9kZWNpbWFsMgor KyAgIE1lbWNoZWNrOkFkZHI0CisrICAgZnVuOlB5VW5pY29kZV9GU0NvbnZlcnRlcgorK30KKysK K2RpZmYgLS1naXQgYS9zcmMvc2FnZS9zeW1ib2xpYy9naW5hYy9udW1lcmljLmNwcCBiL3NyYy9z YWdlL3N5bWJvbGljL2dpbmFjL251bWVyaWMuY3BwCitpbmRleCBiNDBlZDY0ZWRiNS4uOGM1NTg2 MWMxNDcgMTAwNjQ0CistLS0gYS9zcmMvc2FnZS9zeW1ib2xpYy9naW5hYy9udW1lcmljLmNwcAor KysrIGIvc3JjL3NhZ2Uvc3ltYm9saWMvZ2luYWMvbnVtZXJpYy5jcHAKK0BAIC0xNTc2LDYgKzE1 NzYsNjIgQEAgY29uc3QgbnVtZXJpYyBudW1lcmljOjpkaXYoY29uc3QgbnVtZXJpYyAmb3RoZXIp IGNvbnN0IHsKKyAgICAgICAgIH0KKyB9CisgCisrCisrLy8gQ29tcHV0ZSBgYV5iYCBhcyBhbiBp bnRlZ2VyLCB3aGVyZSBhIGlzIGFuIGludGVnZXIuIEFzc2lnbiB0byBgYHJlc2BgYCBpZiBpdCBp cyBpbnRlZ3JhbCwgb3IgcmV0dXJuIGBgZmFsc2VgYC4KKysvLyBUaGUgbm9ubmVnYXRpdmUgcmVh bCByb290IGlzIHRha2VuIGZvciBldmVuIGRlbm9taW5hdG9ycy4gVG8gYmUgdXNlZCBpbnNpZGUg bnVtZXJpYzo6aW50ZWdlcl9yYXRpb25hbF9wb3dlciwKKysvLyB0byBoYW5kbGUgdGhlIHNwZWNp YWwgY2FzZSBvZiBpbnRlZ3JhbCBgYGFgYC4KKytib29sIGludGVnZXJfcmF0aW9uYWxfcG93ZXJf b2ZfbXB6KAorKyAgICAgICAgbnVtZXJpYyYgcmVzLAorKyAgICAgICAgY29uc3QgbnVtZXJpYyYg YSwKKysgICAgICAgIGNvbnN0IG51bWVyaWMmIGIKKyspIHsKKysgICAgICAgIGlmIChhLnQgIT0g TVBaKQorKyAgICAgICAgICAgICAgICB0aHJvdyBzdGQ6OnJ1bnRpbWVfZXJyb3IoImludGVnZXJf cmF0aW9uYWxfcG93ZXJfb2ZfbXB6OiBiYWQgaW5wdXQiKTsKKysgICAgICAgIG1wel90IHo7Cisr ICAgICAgICBtcHpfaW5pdCh6KTsKKysgICAgICAgIG1wel9zZXRfdWkoeiwgMCk7CisrICAgICAg ICBpbnQgc2duID0gbXB6X3NnbihhLnYuX2JpZ2ludCk7CisrICAgICAgICBpZiAobXB6X2NtcF91 aShhLnYuX2JpZ2ludCwgMSkgPT0gMAorKyAgICAgICAgICAgIG9yIG1wel9jbXBfdWkobXBxX251 bXJlZihiLnYuX2JpZ3JhdCksIDApID09IDApCisrICAgICAgICAgICAgICAgIG1wel9zZXRfdWko eiwgMSk7CisrICAgICAgICBlbHNlIGlmIChzZ24gPT0gMCkgeworKyAgICAgICAgICAgICAgICBy ZXMgPSAqX251bTBfcDsKKysgICAgICAgICAgICAgICAgbXB6X2NsZWFyKHopOworKyAgICAgICAg ICAgICAgICByZXR1cm4gdHJ1ZTsKKysgICAgICAgIH0KKysgICAgICAgIGVsc2UgaWYgKHNnbiA8 IDAgYW5kIG1wel9jbXBfdWkobXBxX2RlbnJlZihiLnYuX2JpZ3JhdCksIDEpKSB7CisrICAgICAg ICAgICAgICAgIG1wel9jbGVhcih6KTsKKysgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwor KyAgICAgICAgfSBlbHNlIHsKKysgICAgICAgICAgICAgICAgaWYgKG5vdCBtcHpfZml0c191bG9u Z19wKG1wcV9udW1yZWYoYi52Ll9iaWdyYXQpKQorKyAgICAgICAgICAgICAgICAgICAgb3Igbm90 IG1wel9maXRzX3Vsb25nX3AobXBxX2RlbnJlZihiLnYuX2JpZ3JhdCkpKSB7CisrICAgICAgICAg ICAgICAgICAgICAgICAgLy8gdG9vIGJpZyB0byB0YWtlIHJvb3RzL3Bvd2VycworKyAgICAgICAg ICAgICAgICAgICAgICAgIG1wel9jbGVhcih6KTsKKysgICAgICAgICAgICAgICAgICAgICAgICBy ZXR1cm4gZmFsc2U7CisrICAgICAgICAgICAgICAgIH0KKysgICAgICAgICAgICAgICAgaWYgKG1w el9jbXBfdWkobXBxX2RlbnJlZihiLnYuX2JpZ3JhdCksIDIpID09IDApIHsKKysgICAgICAgICAg ICAgICAgICAgICAgICBpZiAobXB6X3BlcmZlY3Rfc3F1YXJlX3AoYS52Ll9iaWdpbnQpKSB7Cisr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtcHpfc3FydCh6LCBhLnYuX2JpZ2ludCk7 CisrICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIG1wel9jbGVhcih6KTsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHJldHVybiBmYWxzZTsKKysgICAgICAgICAgICAgICAgICAgICAgICB9CisrICAgICAgICAg ICAgICAgIH0KKysgICAgICAgICAgICAgICAgZWxzZSB7CisrICAgICAgICAgICAgICAgICAgICAg ICAgYm9vbCBleGFjdCA9IG1wel9yb290KHosIGEudi5fYmlnaW50LAorKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtcHpfZ2V0X3VpKG1wcV9kZW5yZWYoYi52 Ll9iaWdyYXQpKSk7CisrICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5vdCBleGFjdCkgewor KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXB6X2NsZWFyKHopOworKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworKyAgICAgICAgICAgICAgICAg ICAgICAgIH0KKysgICAgICAgICAgICAgICAgfQorKyAgICAgICAgICAgICAgICBtcHpfcG93X3Vp KHosIHosIG1wel9nZXRfdWkobXBxX251bXJlZihiLnYuX2JpZ3JhdCkpKTsKKysgICAgICAgIH0K KysgICAgICAgIHJlcyA9IG51bWVyaWMoeik7ICAgLy8gdHJhbnNmZXJzIG93bmVyc2hpcCwgbm8g bXB6X2NsZWFyCisrICAgICAgICByZXR1cm4gdHJ1ZTsKKyt9CisrCisrCisgLy8gQ29tcHV0ZSBg YV5iYCBhcyBhbiBpbnRlZ2VyLCBpZiBpdCBpcyBpbnRlZ3JhbCwgb3IgcmV0dXJuIGBgZmFsc2Vg YC4KKyAvLyBUaGUgbm9ubmVnYXRpdmUgcmVhbCByb290IGlzIHRha2VuIGZvciBldmVuIGRlbm9t aW5hdG9ycy4KKyBib29sIG51bWVyaWM6OmludGVnZXJfcmF0aW9uYWxfcG93ZXIobnVtZXJpYyYg cmVzLAorQEAgLTE1OTgsMTMgKzE2NTQsMTIgQEAgYm9vbCBudW1lcmljOjppbnRlZ2VyX3JhdGlv bmFsX3Bvd2VyKG51bWVyaWMmIHJlcywKKyAgICAgICAgICAgICAgICAgaWYgKGEudi5fbG9uZyA8 IDAKKyAgICAgICAgICAgICAgICAgICAgIGFuZCBtcHpfY21wX3VpKG1wcV9kZW5yZWYoYi52Ll9i aWdyYXQpLCAxKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CistICAg ICAgICAgICAgICAgIGxvbmcgejsKKyAgICAgICAgICAgICAgICAgaWYgKG5vdCBtcHpfZml0c191 bG9uZ19wKG1wcV9udW1yZWYoYi52Ll9iaWdyYXQpKQorICAgICAgICAgICAgICAgICAgICAgb3Ig bm90IG1wel9maXRzX3Vsb25nX3AobXBxX2RlbnJlZihiLnYuX2JpZ3JhdCkpKQorICAgICAgICAg ICAgICAgICAvLyB0b28gYmlnIHRvIHRha2Ugcm9vdHMvcG93ZXJzCisgICAgICAgICAgICAgICAg ICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgICAgICBpZiAoYi5pc19lcXVhbCgq X251bTFfMl9wKSkgeworLSAgICAgICAgICAgICAgICAgICAgICAgIHogPSBzdGQ6Omxyb3VuZChz dGQ6OnNxcnQoYS52Ll9sb25nKSk7CisrICAgICAgICAgICAgICAgICAgICAgICAgbG9uZyB6ID0g c3RkOjpscm91bmQoc3RkOjpzcXJ0KGEudi5fbG9uZykpOworICAgICAgICAgICAgICAgICAgICAg ICAgIGlmIChhLnYuX2xvbmcgPT0geip6KSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICByZXMgPSBudW1lcmljKHopOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cmV0dXJuIHRydWU7CitAQCAtMTYxMyw0NCArMTY2OCwxMSBAQCBib29sIG51bWVyaWM6OmludGVn ZXJfcmF0aW9uYWxfcG93ZXIobnVtZXJpYyYgcmVzLAorICAgICAgICAgICAgICAgICB9CisgICAg ICAgICAgICAgICAgIHJldHVybiBpbnRlZ2VyX3JhdGlvbmFsX3Bvd2VyKHJlcywgYS50b19iaWdp bnQoKSwgYik7CisgICAgICAgICB9CistICAgICAgICBpZiAoYS50ICE9IE1QWikKKy0gICAgICAg ICAgICAgICAgdGhyb3cgc3RkOjpydW50aW1lX2Vycm9yKCJpbnRlZ2VyX3JhdGlvbmFsX3Bvd2Vy OiBiYWQgaW5wdXQiKTsKKy0gICAgICAgIGludCBzZ24gPSBtcHpfc2duKGEudi5fYmlnaW50KTsK Ky0gICAgICAgIG1wel90IHo7CistICAgICAgICBtcHpfaW5pdCh6KTsKKy0gICAgICAgIG1wel9z ZXRfdWkoeiwgMCk7CistICAgICAgICBpZiAobXB6X2NtcF91aShhLnYuX2JpZ2ludCwgMSkgPT0g MAorLSAgICAgICAgICAgIG9yIG1wel9jbXBfdWkobXBxX251bXJlZihiLnYuX2JpZ3JhdCksIDAp ID09IDApCistICAgICAgICAgICAgICAgIG1wel9zZXRfdWkoeiwgMSk7CistICAgICAgICBlbHNl IGlmIChzZ24gPT0gMCkgeworLSAgICAgICAgICAgICAgICByZXMgPSAqX251bTBfcDsKKy0gICAg ICAgICAgICAgICAgcmV0dXJuIHRydWU7CistICAgICAgICB9CistICAgICAgICBlbHNlIGlmIChz Z24gPCAwIGFuZCBtcHpfY21wX3VpKG1wcV9kZW5yZWYoYi52Ll9iaWdyYXQpLCAxKSkKKy0gICAg ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworLSAgICAgICAgZWxzZSB7CistICAgICAgICAgICAg ICAgIGlmIChub3QgbXB6X2ZpdHNfdWxvbmdfcChtcHFfbnVtcmVmKGIudi5fYmlncmF0KSkKKy0g ICAgICAgICAgICAgICAgICAgIG9yIG5vdCBtcHpfZml0c191bG9uZ19wKG1wcV9kZW5yZWYoYi52 Ll9iaWdyYXQpKSkKKy0gICAgICAgICAgICAgICAgLy8gdG9vIGJpZyB0byB0YWtlIHJvb3RzL3Bv d2VycworLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKy0gICAgICAgICAg ICAgICAgaWYgKG1wel9jbXBfdWkobXBxX2RlbnJlZihiLnYuX2JpZ3JhdCksIDIpID09IDApIHsK Ky0gICAgICAgICAgICAgICAgICAgICAgICBpZiAobXB6X3BlcmZlY3Rfc3F1YXJlX3AoYS52Ll9i aWdpbnQpKQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXB6X3NxcnQoeiwgYS52 Ll9iaWdpbnQpOworLSAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKy0gICAgICAgICAgICAgICAgfQorLSAg ICAgICAgICAgICAgICBlbHNlIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICBib29sIGV4YWN0 ID0gbXB6X3Jvb3QoeiwgYS52Ll9iaWdpbnQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIG1wel9nZXRfdWkobXBxX2RlbnJlZihiLnYuX2JpZ3JhdCkpKTsKKy0gICAg ICAgICAgICAgICAgICAgICAgICBpZiAobm90IGV4YWN0KQorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworLSAgICAgICAgICAgICAgICB9CistICAgICAgICAg ICAgICAgIG1wel9wb3dfdWkoeiwgeiwgbXB6X2dldF91aShtcHFfbnVtcmVmKGIudi5fYmlncmF0 KSkpOworLSAgICAgICAgfQorLSAgICAgICAgcmVzID0gbnVtZXJpYyh6KTsKKy0gICAgICAgIHJl dHVybiB0cnVlOworKyAgICAgICAgLy8gb3RoZXJ3aXNlOiBhIGlzIGludGVnZXIKKysgICAgICAg IHJldHVybiBpbnRlZ2VyX3JhdGlvbmFsX3Bvd2VyX29mX21weihyZXMsIGEsIGIpOworIH0KKyAK KysKKyAvLyBmb3IgYV5iIHJldHVybiBjLGQgc3VjaCB0aGF0IGFeYiA9IGMqZF5iCisgLy8gb25s eSBmb3IgTVBaL01QUSBiYXNlIGFuZCBNUFEgZXhwb25lbnQKKyB2b2lkIHJhdGlvbmFsX3Bvd2Vy X3BhcnRzKGNvbnN0IG51bWVyaWMmIGFfb3JpZywgY29uc3QgbnVtZXJpYyYgYl9vcmlnLAorZGlm ZiAtLWdpdCBhL3NyYy9zYWdlL3Rlc3RzL21lbWNoZWNrL19faW5pdF9fLnB5IGIvc3JjL3NhZ2Uv dGVzdHMvbWVtY2hlY2svX19pbml0X18ucHkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAw MDAwMDAwMDAwMC4uZTY5ZGUyOWJiMmQKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS90ZXN0cy9tZW1j aGVjay9ydW5fdGVzdHMucHkgYi9zcmMvc2FnZS90ZXN0cy9tZW1jaGVjay9ydW5fdGVzdHMucHkK K25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMDAwMC4uNmZmNDUwM2E4MWIKKy0t LSAvZGV2L251bGwKKysrKyBiL3NyYy9zYWdlL3Rlc3RzL21lbWNoZWNrL3J1bl90ZXN0cy5weQor QEAgLTAsMCArMSwyNCBAQAorK2ltcG9ydCB0eXBlcworKworKworK2RlZiBydW5fdGVzdHMoKSAt PiBOb25lOgorKyAgICAiIiIKKysgICAgUnVuIGFsbCBtZW1jaGVjayB0ZXN0cworKyAgICAiIiIK KysgICAgZnJvbSBzYWdlLnRlc3RzLm1lbWNoZWNrIGltcG9ydCBzeW1ib2xpY19leHByZXNzaW9u CisrICAgIHJ1bl90ZXN0c19pbl9tb2R1bGUoc3ltYm9saWNfZXhwcmVzc2lvbikKKysKKysKKytk ZWYgcnVuX3Rlc3RzX2luX21vZHVsZShtb2Q6IHR5cGVzLk1vZHVsZVR5cGUpIC0+IE5vbmU6Cisr ICAgICIiIgorKyAgICBSdW4gYWxsIG1lbWNoZWNrIHRlc3RzIGluIHRoZSBnaXZlbiBtb2R1bGUK KysgICAgIiIiCisrICAgIGZvciBlbnRyeSBpbiBkaXIobW9kKToKKysgICAgICAgIGlmIG5vdCBl bnRyeS5zdGFydHN3aXRoKCd0ZXN0XycpOgorKyAgICAgICAgICAgIGNvbnRpbnVlCisrICAgICAg ICB0ZXN0X2Z1bmMgPSBnZXRhdHRyKG1vZCwgZW50cnkpCisrICAgICAgICB0ZXN0X2Z1bmMoKQor KworKworK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisrICAgIHJ1bl90ZXN0cygpCitkaWZm IC0tZ2l0IGEvc3JjL3NhZ2UvdGVzdHMvbWVtY2hlY2svcnVuX3Rlc3RzX2luX3ZhbGdyaW5kLnB5 IGIvc3JjL3NhZ2UvdGVzdHMvbWVtY2hlY2svcnVuX3Rlc3RzX2luX3ZhbGdyaW5kLnB5CituZXcg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMDAuLmRmNWFkMGU5MmIyCistLS0gL2Rl di9udWxsCisrKysgYi9zcmMvc2FnZS90ZXN0cy9tZW1jaGVjay9ydW5fdGVzdHNfaW5fdmFsZ3Jp bmQucHkKK0BAIC0wLDAgKzEsMzUgQEAKKysiIiIKKytMYXVuY2ggdmFsZ3JpbmQgYW5kIHJ1biB0 aGUgbWVtb3J5IGxlYWsgdGVzdHMKKysKKysKKytGcm9tIHRoZSBjb21tYW5kbGluZSwgcnVuCisr CisrICAgIHNhZ2UgLXB5dGhvbiAtbSBzYWdlLnRlc3RzLm1lbWNoZWNrLnJ1bl90ZXN0c19pbl92 YWxncmluZAorKworK3RvIGxhdW5jaCB2YWxncmluZCBhbmQgZXhlY3V0ZSB0aGUgbWVtb3J5IGxl YWsgdGVzdHMuIFJlcXVpcmVzIHZhbGdyaW5kCisrdG8gYmUgaW5zdGFsbGVkLiBBbHRlcm5hdGl2 ZWx5LCBydW4gYXMgYSB1bml0IHRlc3Q6CisrCisrICAgIHNhZ2U6IGZyb20gc2FnZS50ZXN0cy5t ZW1jaGVjay5ydW5fdGVzdHNfaW5fdmFsZ3JpbmQgaW1wb3J0IHJ1bl90ZXN0c19pbl92YWxncmlu ZAorKyAgICBzYWdlOiBydW5fdGVzdHNfaW5fdmFsZ3JpbmQoKSAgICAjIG9wdGlvbmFsIC0gdmFs Z3JpbmQKKysiIiIKKysKKytpbXBvcnQgc3VicHJvY2VzcworKworKworK2RlZiBydW5fdGVzdHNf aW5fdmFsZ3JpbmQoKSAtPiBOb25lOgorKyAgICAiIiIKKysgICAgUnVuIHRoZSBzYWdlLnRlc3Rz Lm1lbWNoZWNrLnJ1bl90ZXN0cyBtb2R1bGUgaW5zaWRlIHZhbGdyaW5kCisrICAgICIiIgorKyAg ICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWworKyAgICAgICAgJ3ZhbGdyaW5kJywKKysgICAgICAg ICctLXN1cHByZXNzaW9ucz1zcmMvc2FnZS9leHRfZGF0YS92YWxncmluZC92YWxncmluZC1weXRo b24uc3VwcCcsCisrICAgICAgICAnLS1zaG93LXBvc3NpYmx5LWxvc3Q9bm8nLAorKyAgICAgICAg Jy0tc2hvdy1yZWFjaGFibGU9bm8nLAorKyAgICAgICAgJy4vdmVudi9iaW4vcHl0aG9uJywKKysg ICAgICAgICctbScsCisrICAgICAgICAnc2FnZS50ZXN0cy5tZW1jaGVjay5ydW5fdGVzdHMnCisr ICAgIF0pCisrCisrCisraWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKysgICAgcnVuX3Rlc3Rz X2luX3ZhbGdyaW5kKCkKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS90ZXN0cy9tZW1jaGVjay9zeW1i b2xpY19leHByZXNzaW9uLnB5IGIvc3JjL3NhZ2UvdGVzdHMvbWVtY2hlY2svc3ltYm9saWNfZXhw cmVzc2lvbi5weQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAwLi41MjE4 MmZiZTYyZAorLS0tIC9kZXYvbnVsbAorKysrIGIvc3JjL3NhZ2UvdGVzdHMvbWVtY2hlY2svc3lt Ym9saWNfZXhwcmVzc2lvbi5weQorQEAgLTAsMCArMSwxMSBAQAorK2Zyb20gc2FnZS50ZXN0cy5t ZW1jaGVjay52ZXJpZnlfbm9fbGVhayBpbXBvcnQgdmVyaWZ5X25vX2xlYWsKKysKKysKKytkZWYg dGVzdF9zcXJ0X3NxcnRfMigpIC0+IE5vbmU6CisrICAgIGZyb20gc2FnZS5taXNjLmZ1bmN0aW9u YWwgaW1wb3J0IHNxcnQKKysgICAgVDIgPSBzcXJ0KDIpCisrCisrICAgIGRlZiBzcXJ0X1QyKCkg LT4gTm9uZToKKysgICAgICAgIHNxcnQoVDIpCisrCisrICAgIHZlcmlmeV9ub19sZWFrKHNxcnRf VDIpCitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvdGVzdHMvbWVtY2hlY2svdmVyaWZ5X25vX2xlYWsu cHkgYi9zcmMvc2FnZS90ZXN0cy9tZW1jaGVjay92ZXJpZnlfbm9fbGVhay5weQorbmV3IGZpbGUg bW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAwLi44OWNhOTBjZjg5YworLS0tIC9kZXYvbnVs bAorKysrIGIvc3JjL3NhZ2UvdGVzdHMvbWVtY2hlY2svdmVyaWZ5X25vX2xlYWsucHkKK0BAIC0w LDAgKzEsMjcgQEAKKytmcm9tIHR5cGluZyBpbXBvcnQgVHVwbGUsIFNlcXVlbmNlLCBMaXN0LCBD YWxsYWJsZSwgQW55CisraW1wb3J0IHZhbGdyaW5kCisrCisrCisrZGVmIHZlcmlmeV9ub19sZWFr KGNhbGxiYWNrOiBDYWxsYWJsZVtbXSwgQW55XSwKKysgICAgICAgICAgICAgICAgICAgcmVwZWF0 OiBpbnQgPSAxMDAwMCwKKysgICAgICAgICAgICAgICAgICAgZnV6enk6IGludCA9IDEwLAorKyAg ICAgICAgICAgICAgICAgICApIC0+IE5vbmU6CisrICAgICIiIgorKyAgICBWZXJpZnkgdGhhdCB0 aGUgY2FsbGJhY2sgZG9lcyBub3QgZ2VuZXJhdGUgbmV3IGRlZmluaXRlbHkgbG9zdCBibG9ja3MK KysKKysgICAgUmFpc2VzIGFuIGFzc2VydGlvbiBpZiB0aGUgY2FsbGJhY2sgbGVha3MgbWVtb3J5 CisrICAgICIiIgorKyAgICBjYWxsYmFjaygpICAgIyB3YXJtX3VwCisrICAgIGluaXRpYWxfYmxv Y2tzID0gKDAsIDAsIDAsIDApCisrICAgIHZhbGdyaW5kLm1lbWNoZWNrX2RvX2xlYWtfY2hlY2so KQorKyAgICBpbml0aWFsX2Jsb2NrcyA9IHZhbGdyaW5kLm1lbWNoZWNrX2NvdW50X2xlYWtfYmxv Y2tzKCkKKysgICAgZm9yIF8gaW4gcmFuZ2UocmVwZWF0KToKKysgICAgICAgIGNhbGxiYWNrKCkK KysgICAgdmFsZ3JpbmQubWVtY2hlY2tfZG9fbGVha19jaGVjaygpCisrICAgIGxlYWtfYmxvY2tz ID0gdmFsZ3JpbmQubWVtY2hlY2tfY291bnRfbGVha19ibG9ja3MoKQorKyAgICBsZWFrID0gbGVh a19ibG9ja3NbMF0gLSBpbml0aWFsX2Jsb2Nrc1swXQorKyAgICBpZiBsZWFrIDwgcmVwZWF0IC0g ZnV6enk6CisrICAgICAgICByZXR1cm4gICMgY2FsbGJhY2sgZGlkIG5vdCBsZWFrIGF0IGxlYXN0 IG9uY2UgcGVyIGNhbGwKKysgICAgYmxvY2tzID0gcm91bmQobGVhayAvIHJlcGVhdCwgMikKKysg ICAgbWVzc2FnZSA9IGYne2NhbGxiYWNrfSBsZWFrZWQge2Jsb2Nrc30gYmxvY2sgb24gYXZlcmFn ZSAoe3JlcGVhdH0gaXRlcmF0aW9ucyknCisrICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKG1lc3Nh Z2UpCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvZ2V0X3BhdGNoZXMgYi9z cmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvZ2V0X3BhdGNoZXMKaW5kZXggODg4YzY2Zjc3OWUwOS4u NmU2N2NkYjRmYjExOCAxMDA3NTUKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL2dldF9w YXRjaGVzCisrKyBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy9nZXRfcGF0Y2hlcwpAQCAtMSw3 ICsxLDkgQEAKICMhIC9iaW4vc2gKIAordmVyc2lvbj0xMC4xCisKIFVSTF9CQVNFX1BSPSJodHRw czovL2dpdGh1Yi5jb20vc2FnZW1hdGgvc2FnZS9wdWxsLyIKLVVSTF9CQVNFX0NPTVBBUkU9Imh0 dHBzOi8vZ2l0aHViLmNvbS9zYWdlbWF0aC9zYWdlL2NvbXBhcmUvMTAuMC4uLiIKK1VSTF9CQVNF X0NPTVBBUkU9Imh0dHBzOi8vZ2l0aHViLmNvbS9zYWdlbWF0aC9zYWdlL2NvbXBhcmUvJHt2ZXJz aW9ufS4uLiIKIAogY2FzZSAiJDEiIGluCiAJLW4pICBETz1lY2hvIDs7CkBAIC0xOCwxOCArMjAs OCBAQCBnZXRfcHIoKSB7CiAjIHJ1biBmcm9tIHBhdGNoZXMgZGlyCiBjZCAkKGRpcm5hbWUgIiQw IikKIAotIyBtZXJnZWQgaW4gMTAuMC5iZXRhMAotZ2V0X3ByIDM1NTg0ICJuZXR3b3JreCAzLjEi Ci0KLSMgbWVyZ2VkIGluIDEwLjAuYmV0YTEKLWdldF9wciAzNTYxMiAibGluYm94IDEuNy4wIgot Z2V0X3ByIDM1NjM1ICJzeW1weSAxLjEyIgotZ2V0X3ByIDM1NjE5ICJtYXhpbWEgNS40Ni4wIgot CiAjIHBvc2l0aXZlIHJldmlldwotZ2V0X3ByIDM1NzA3ICJtYXhpbWEgNS40Ny4wIgotZ2V0X3By IDM1ODMxICJzZXR1cHRvb2xzIDY4LjAuMCIKLQotIyBuZWVkcyByZXZpZXcKLWdldF9wciAzNTgy NSAic2luZ3VsYXIgNC4zLjJwMiIKLWdldF9wciAzNTgyNiAibnVtcHkgMS4yNS4wIgorI2dldF9w ciAzNjAxOCAic2luZ3VsYXIgNC4zLjJwNyIKK2dldF9wciAzNTkzNCAic2luZ3VsYXIgNC4zLjJw NyIgICMgaW5jbHVkZXMgIzM2MDE4CitnZXRfcHIgMzYwMDYgImdtcCA2LjMuMCIKK2dldF9wciAz NjA0NiAiZml4IG1lbW9yeSBsZWFrIgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdlbWF0aC90ZW1w bGF0ZSBiL3NyY3BrZ3Mvc2FnZW1hdGgvdGVtcGxhdGUKaW5kZXggMjQ5MWQ3N2RiYzhkOS4uYWUw NmU4ZWYzNjQ3MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL3NhZ2VtYXRoL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnc2FnZW1hdGgnCiBwa2duYW1lPXNhZ2VtYXRoCi12ZXJzaW9uPTEwLjAKLXJldmlzaW9u PTIKK3ZlcnNpb249MTAuMQorcmV2aXNpb249MQogYnVpbGRfd3Jrc3JjPXBrZ3Mvc2FnZW1hdGgt c3RhbmRhcmQKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBfYmluZGlyPS91c3IvbGliL3Nh Z2VtYXRoLyR2ZXJzaW9uL2JpbgpAQCAtMzMsMTUgKzMzLDEyIEBAIGxpY2Vuc2U9IkdQTC0yLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cDovL3NhZ2VtYXRoLm9yZy8iCiBjaGFuZ2Vsb2c9Imh0 dHBzOi8vZ2l0aHViLmNvbS9zYWdlbWF0aC9zYWdlL3JlbGVhc2VzIgogZGlzdGZpbGVzPSJodHRw czovL2dpdGh1Yi5jb20vc2FnZW1hdGgvc2FnZS9hcmNoaXZlL3JlZnMvdGFncy8kdmVyc2lvbi50 YXIuZ3oiCi1jaGVja3N1bT02MDg1OGVmZDBkMWYyNTI2NDg2NzQwOTYyYmY3MmM5OWY5MTQxYTU2 Y2FmODM5NWYzMjkxZmRlZDI3NmZhZjU1CitjaGVja3N1bT1hNjU4NjEyYjFiMjM3NmRkYWYyMDdj YzhlZDBlZjQ1OGQ0YzI4ODBjMTZlMTkxMzliZWRiZThiYWE0MmFkNjJmCiBub2Nyb3NzPSJkdWUg dG8gbnRsIChmbGludGxpYiksIGZmbGFzLWZmcGFjaywgZ2l2YXJvLCBsaW5ib3gsIGN5c2lnbmFs cywgc3ltcG93LCBtYXhpbWEiCiAKLWRvX2NvbmZpZ3VyZSgpIHsKK3Bvc3RfcGF0Y2goKSB7CiAJ IyBnaXQgdHJlZSBuZWVkcyBib290c3RyYXBwaW5nCi0JKCBjZCAkd3Jrc3JjL2J1aWxkL3BrZ3Mv c2FnZWxpYiAmJgotCSAgUEFUSD0uLi8uLi9iaW46JFBBVEggXAotCSAgQk9PVFNUUkFQX1FVSUVU PW5vIFwKLQkgIC4vYm9vdHN0cmFwICkKKwkkd3Jrc3JjL2Jvb3RzdHJhcCBzYWdlbGliCiB9CiAK IHByZV9idWlsZCgpIHsK --===============1989239196012061271==--