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 29757 invoked from network); 14 Feb 2023 00:11:32 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 14 Feb 2023 00:11:32 -0000 Content-Type: multipart/mixed; boundary="===============4865266104863625898==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_sagemath=3A_rebuild_for_dep_updates_and_fixes?= To: ml@inbox.vuxu.org From: tornaria Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 14 Feb 2023 01:11:32 +0100 List-Id: Message-ID: <20230214001132.wRGbnuZ8yk0YkBQbRqSYv7xToO_FEcKmIv85jBirJdU@z> GitHub notification mails are now in MIME to allow UTF8. --===============4865266104863625898== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgdG9ybmFyaWEgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL3Rv cm5hcmlhL3ZvaWQtcGFja2FnZXMgc2FnZW1hdGgKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGlu dXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQyMDQ4CgpzYWdlbWF0aDogcmVidWlsZCBmb3IgZGVwIHVw ZGF0ZXMgYW5kIGZpeGVzCjwhLS0gVW5jb21tZW50IHJlbGV2YW50IHNlY3Rpb25zIGFuZCBkZWxl dGUgb3B0aW9ucyB3aGljaCBhcmUgbm90IGFwcGxpY2FibGUgLS0+DQoNCi0gcmVidWlsZCBmb3Ig Ym9vc3QgdXBkYXRlIGluIHN5bmMgd2l0aCBicmlhbCAoc2FtZSBQUikNCi0gZml4ZXMgZm9yIG51 bXB5IDEuMjQgKGFscmVhZHkgdXBkYXRlZCBpbiB2b2lkKQ0KLSBmaXhlcyB0byBzdXBwb3J0IHVw ZGF0aW5nIGdpYWMgdG8gMS45LjAuMzcNCi0gZml4ZXMgdG8gc3VwcG9ydCB1cGRhdGluZyB0YWNo eW9uIHRvIDAuOTkuNQ0KLSBmaXhlcyB0byBkb2N0ZXN0IGZhaWx1cmVzIGluIDMyIGJpdCBhZnRl ciB1cGdyYWRlIG9mIHBhcmkgdG8gMi4xNS4yDQotIGZpeCBhbiBlZGdlIGNhc2Ugb2YgcHl0aG9u IDMuMTEgaW50ZWdlciBjb252ZXJzaW9uIG9uIDMyIGJpdA0KLSBmaXggc2luZ3VsYXIgaW50ZXJm YWNlIGJ1ZyB0aGF0IHRyaWdnZXJzIHVuZGVyIHZlcnkgaGVhdnkgbG9hZCAoZS5nLiBvbiBDSSkN Ci0gdGFyYmFsbCB3YXMgbW92ZWQ7IHNoYTI1NiBjaGFuZ2VkIG9ubHkgYi9jIG9mIG1haW4gZGly bmFtZSBjaGFuZ2UNCg0KIyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQotIEkgdGVzdGVkIHRoZSBj aGFuZ2VzIGluIHRoaXMgUFI6ICoqWUVTKioNCg0KPCEtLQ0KIyMjIyBOZXcgcGFja2FnZQ0KLSBU aGlzIG5ldyBwYWNrYWdlIGNvbmZvcm1zIHRvIHRoZSBbcGFja2FnZSByZXF1aXJlbWVudHNdKGh0 dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvQ09O VFJJQlVUSU5HLm1kI3BhY2thZ2UtcmVxdWlyZW1lbnRzKTogKipZRVMqKnwqKk5PKioNCi0tPg0K DQo8IS0tIE5vdGU6IElmIHRoZSBidWlsZCBpcyBsaWtlbHkgdG8gdGFrZSBtb3JlIHRoYW4gMiBo b3VycywgcGxlYXNlIGFkZCBjaSBza2lwIHRhZyBhcyBkZXNjcmliZWQgaW4NCmh0dHBzOi8vZ2l0 aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvQ09OVFJJQlVUSU5H Lm1kI2NvbnRpbnVvdXMtaW50ZWdyYXRpb24NCmFuZCB0ZXN0IGF0IGxlYXN0IG9uZSBuYXRpdmUg YnVpbGQgYW5kLCBpZiBzdXBwb3J0ZWQsIGF0IGxlYXN0IG9uZSBjcm9zcyBidWlsZC4NCklnbm9y ZSB0aGlzIHNlY3Rpb24gaWYgdGhpcyBQUiBpcyBub3Qgc2tpcHBpbmcgQ0kuDQotLT4NCjwhLS0N CiMjIyMgTG9jYWwgYnVpbGQgdGVzdGluZw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3Ig bXkgbmF0aXZlIGFyY2hpdGVjdHVyZSwgKEFSQ0gtTElCQykNCi0gSSBidWlsdCB0aGlzIFBSIGxv Y2FsbHkgZm9yIHRoZXNlIGFyY2hpdGVjdHVyZXMgKGlmIHN1cHBvcnRlZC4gbWFyayBjcm9zc2J1 aWxkcyk6DQogIC0gYWFyY2g2NC1tdXNsDQogIC0gYXJtdjdsDQogIC0gYXJtdjZsLW11c2wNCi0t Pg0KCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvNDIwNDgucGF0Y2ggaXMgYXR0YWNoZWQ= --===============4865266104863625898== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-sagemath-42048.patch" RnJvbSBmYTU3MWY0ZWViODM5MWU5MzQ1MjZhZDIwNDViMjkzZWUxMTljNGE4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8 dG9ybmFyaWFAY21hdC5lZHUudXk+CkRhdGU6IFRodSwgMiBGZWIgMjAyMyAyMzoxMTowNCAtMDMw MApTdWJqZWN0OiBbUEFUQ0ggMS8zXSBzaW5ndWxhcjogdXBkYXRlIHRvIDQuMy4xcDMuCgotLS0K IHNyY3BrZ3Mvc2luZ3VsYXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zaW5ndWxh ci90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc2luZ3VsYXIvdGVtcGxhdGUKaW5kZXggMmRjMzhhZjgyNmJl Li5jNzNhMDIwZGNmMTUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2luZ3VsYXIvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9zaW5ndWxhci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ3Npbmd1bGFyJwogcGtnbmFtZT1zaW5ndWxhcgotdmVyc2lvbj00LjMuMXAyCit2 ZXJzaW9uPTQuMy4xcDMKIHJldmlzaW9uPTEKIF9tYWp2ZXI9JHt2ZXJzaW9uJXAqfQogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMjAsNyArMjAsNyBAQCBtYWludGFpbmVyPSJka3dvIDxu cGlhenphQGRpc3Jvb3Qub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93d3cuc2luZ3VsYXIudW5pLWtsLmRlIgogZGlzdGZpbGVzPSJodHRwczovL3d3 dy5zaW5ndWxhci51bmkta2wuZGUvZnRwL3B1Yi9NYXRoL1Npbmd1bGFyL1NPVVJDRVMvJHtfbWFq dmVyLy8uLy19L3Npbmd1bGFyLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09OTU4MTRiYmEw ZjBiZDAyOTBjZDk3OTllYzFkMmVjYzZmNGM4YTRlNjQyOWQ5YTAyZWI3ZjljNGU1NjQ5NjgyYQor Y2hlY2tzdW09NjZjZmFlZWU3YWI5MDkyNzJmZDgxMDUwYTA5Y2FlM2VjMTE1NjUyYTAxYWRkZTAx NGE1MTI4YTU0Yjk3Mzk3YQogCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAltYWtl ZGVwZW5kcys9IiBudGwtZGV2ZWwiCgpGcm9tIGZmMzI1YzcxZmFlZjllZjI2NmZhMmU3NDk2NmQ3 MjM2ZWQxNDJkYjcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT9Hb256 YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0LmVkdS51eT4KRGF0ZTogTW9uLCAz MCBKYW4gMjAyMyAxMTowNDo0NiAtMDMwMApTdWJqZWN0OiBbUEFUQ0ggMi8zXSBicmlhbDogdXBk YXRlIHRvIDEuMi4xMi4KCi0tLQogc3JjcGtncy9icmlhbC90ZW1wbGF0ZSB8IDUgKysrLS0KIDEg ZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9icmlhbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvYnJpYWwvdGVtcGxhdGUKaW5kZXgg OGY5ODhjMTI5NmM2Li4yZjhlMTk1YTg4MDQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYnJpYWwvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9icmlhbC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2JyaWFsJwogcGtnbmFtZT1icmlhbAotdmVyc2lvbj0xLjIuMTEKK3Zl cnNpb249MS4yLjEyCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0 bWFrZWRlcGVuZHM9InBrZy1jb25maWciCkBAIC05LDggKzksOSBAQCBzaG9ydF9kZXNjPSJCUmlB bCAoQm9vbGVhbiBSaW5nIEFsZ2VicmEpIGlzIHRoZSBzdWNjZXNzb3IgdG8gUG9seUJvUmkiCiBt YWludGFpbmVyPSJHb256YWxvIFRvcm5hcsOtYSA8dG9ybmFyaWFAY21hdC5lZHUudXk+IgogbGlj ZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vQlJp QWwvQlJpQWwiCitjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0aHViLmNvbS9CUmlBbC9CUmlBbC9yZWxl YXNlcyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL0JSaUFsL0JSaUFsL3JlbGVhc2Vz L2Rvd25sb2FkLyR2ZXJzaW9uL2JyaWFsLSR2ZXJzaW9uLnRhci5iejIiCi1jaGVja3N1bT02YzBm NjIyMDA5ZGNkOTkyODI5NWQ3NDgyMjZiYWE5Y2RjMWE4N2MzMjU1MmUxMzc3MmZkZGY5NWJiYjZm MDJjCitjaGVja3N1bT1jYTAwOWUzNzIyZGQzZjBhNjBkMTU1MDFjYWVkMTQxMzE0NmM4MGFiY2Vk NTc0MjNlMzJhZTAxMTZmNDA3NDk0CiAKIGlmIFsgLW4gIiRDUk9TU19CVUlMRCIgXTsgdGhlbgog CWNvbmZpZ3VyZV9hcmdzKz0iIC0td2l0aC1ib29zdC11bml0LXRlc3QtZnJhbWV3b3JrPW5vIgoK RnJvbSA3ZWQ5ZGM3MmQzY2ExOWFiOWRkNDIxMzI4ZTdiMmQxNDgzZmYwNDMzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8 dG9ybmFyaWFAY21hdC5lZHUudXk+CkRhdGU6IFRodSwgMiBGZWIgMjAyMyAxOTowMzozNCAtMDMw MApTdWJqZWN0OiBbUEFUQ0ggMy8zXSBzYWdlbWF0aDogdXBkYXRlIHRvIDkuOC4KCkFsc286CiAt IGZpeCBlZGdlIGNhc2Ugb2YgcHl0aG9uIDMuMTEgaW50ZWdlciBjb252ZXJzaW9uIG9uIDMyIGJp dAogLSBzdXBwb3J0IHRhY2h5b24gMC45OS41CiAtIHN1cHBvcnQgc2luZ3VsYXIgNC4zLjFwMwog LSBmaXggdGVzdHMgZm9yIGdpYWMgMS45LjAuMzUKIC0gZml4IHRlc3RzIGZvciBudW1weSAxLjI0 CiAtIHNraXAgdW5zdGFibGUgdGVzdHMgaW4ga2x5YWNoa28ucHkKIC0gcmVtb3ZlIHpuX3BvbHkg ZGVwZW5kZW5jeQotLS0KIHNyY3BrZ3Mvc2FnZW1hdGgvZmlsZXMvc2FnZV9jb25mLnB5ICAgICAg ICAgICB8ICAgIDMgKy0KIC4uLi9wYXRjaGVzLzA5LWRvY3Rlc3RfbnVtZXJpY2FsX2ZpeC5wYXRj aCAgICB8ICAgMTQgLQogLi4uLzM0OTgwLWF2b2lkX2ZhY3RvcmluZ19pbl9pc19wcmltZS5wYXRj aCAgIHwgICA0NyArCiAuLi4vcGF0Y2hlcy8zNDk5NC1maXhfdGVzdHNfbnVtcHlfMS4yNC5wYXRj aCAgfCAgIDU4ICsKIC4uLi8zNDk5NS1zdXBwb3J0X3RhY2h5b25fMC45OS4yLnBhdGNoICAgICAg ICB8ICAgNTcgKwogLi4uMzQ5OTctZml4X2VkZ2VfY2FzZV9vZl9pbnRlZ2VyX2NoZWNrLnBhdGNo IHwgICAzNiArCiAuLi4vMzUwNTgtc2tpcF91bnN0YWJsZV90ZXN0c19rbHlhY2hrby5wYXRjaCAg fCAgIDIyICsKIC4uLi8zNTA2OC1maXhfdGVzdHNfZ2lhY18xLjkuMC4zNS5wYXRjaCAgICAgICB8 ICAgNjIgKwogLi4uL3BhdGNoZXMvMzUwOTQtc3VwcG9ydF9nYXBfNC4xMi5wYXRjaCAgICAgIHwg MTMwMyArKysrKysrKysrKysKIHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy9nZXRfcGF0Y2hlcyAg ICAgICAgICB8ICAgNDAgKwogLi4uY2VlMWE2OTIyOWIyZjVkOGFjNGEwOWE3M2Q4MTUyZjVlMTRk LnBhdGNoIHwgICA1MyAtCiAuLi5mYzRlYzhiODY4N2JjY2QyMmQyZTMxNjFjODZjZjU1NTNlMDYu cGF0Y2ggfCAgNDI3IC0tLS0KIC4uLnJhYy0zMzg0Mi0wMS1weXRob25fMy4xMS1kZTM4YmFjMjFl Mi5wYXRjaCB8ICAgNjYgLQogLi4uLXB5dGhvbl8zLjExLWFyZ3NwZWMtZml4LTllYjA4ZjNhZmRl LnBhdGNoIHwgIDE2OCAtLQogLi4uMy1weXRob24zLjExLWZpbmFsX2ZpeGVzLTdiNmZhNTY1ZjQy LnBhdGNoIHwgMTI3OSAtLS0tLS0tLS0tLS0KIC4uLi90cmFjLTMzODQyLTA0LXB5dGhvbjMuMTFf Zml4XzMyX2JpdC5wYXRjaCB8ICAyMTIgLS0KIC4uLmQ0ZTU2MjQzYzYwOWY0NGFmYzFmMjFjMTEy YjAyNmY5ZTFmZS5wYXRjaCB8ICAgNDIgLQogLi4uOTNkNjdjZmNkZjhmYmE3YmM2YWE3ODk5ZTIw ODZkNDJjYzdlLnBhdGNoIHwgIDUyNiAtLS0tLQogLi4uMTMxOGYwMzJjYWY4ZGMxYzBkZTk0ODkz NDZkODk0NDA5MDkxLnBhdGNoIHwgICAxOSAtCiAuLi4vdHJhYy0zNDUzNy1zYWdlbWF0aC1wYXJp LTIuMTUucGF0Y2ggICAgICAgfCAxNzUwIC0tLS0tLS0tLS0tLS0tLS0tCiAuLi4vdHJhYy0zNDUz Ny1zYWdlbWF0aC1wYXJpLTIuMTViLnBhdGNoICAgICAgfCAgIDI5IC0KIC4uLmUwZGUwZGNhMWNm ZjAzNTUzMjZkZDQyYmQ4YzdlNTc0OTU2OC5wYXRjaCB8ICAgNzIgLQogLi4uLXN1cHBvcnRfc2lu Z3VsYXJfNC4zLjEucDMtNWU1NzM3YTBjLnBhdGNoIHwgIDIwNSArKwogc3JjcGtncy9zYWdlbWF0 aC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgICAgOCArLQogc3JjcGtncy9zYWdlbWF0 aC91cGRhdGUgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiAyNSBmaWxlcyBjaGFuZ2Vk LCAxODM4IGluc2VydGlvbnMoKyksIDQ2NjIgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzA5LWRvY3Rlc3RfbnVtZXJpY2FsX2ZpeC5wYXRj aAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNDk4MC1hdm9p ZF9mYWN0b3JpbmdfaW5faXNfcHJpbWUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3NhZ2VtYXRoL3BhdGNoZXMvMzQ5OTQtZml4X3Rlc3RzX251bXB5XzEuMjQucGF0Y2gKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzQ5OTUtc3VwcG9ydF90YWNo eW9uXzAuOTkuMi5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0 Y2hlcy8zNDk5Ny1maXhfZWRnZV9jYXNlX29mX2ludGVnZXJfY2hlY2sucGF0Y2gKIGNyZWF0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzUwNTgtc2tpcF91bnN0YWJsZV90 ZXN0c19rbHlhY2hrby5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgv cGF0Y2hlcy8zNTA2OC1maXhfdGVzdHNfZ2lhY18xLjkuMC4zNS5wYXRjaAogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTA5NC1zdXBwb3J0X2dhcF80LjEyLnBh dGNoCiBjcmVhdGUgbW9kZSAxMDA3NTUgc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL2dldF9wYXRj aGVzCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzMz NjAtYXZvaWRfZmFjdG9yaW5nX2luX2lzX3ByaW1lLTYzMzBjZWUxYTY5MjI5YjJmNWQ4YWM0YTA5 YTczZDgxNTJmNWUxNGQucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRo L3BhdGNoZXMvdHJhYy0zMzQ0Ni1tYWtlX0dBUF9TT191bm5lY2Vzc2FyeS0zMWUzZmM0ZWM4Yjg2 ODdiY2NkMjJkMmUzMTYxYzg2Y2Y1NTUzZTA2LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzM4NDItMDEtcHl0aG9uXzMuMTEtZGUzOGJhYzIx ZTIucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvdHJh Yy0zMzg0Mi0wMi1weXRob25fMy4xMS1hcmdzcGVjLWZpeC05ZWIwOGYzYWZkZS5wYXRjaAogZGVs ZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTMzODQyLTAzLXB5 dGhvbjMuMTEtZmluYWxfZml4ZXMtN2I2ZmE1NjVmNDIucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvdHJhYy0zMzg0Mi0wNC1weXRob24zLjExX2ZpeF8z Ml9iaXQucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMv dHJhYy0zNDExOC11cGRhdGVfc3ltcHlfdG9fMS4xMS4xLTVkYjVkNGU1NjI0M2M2MDlmNDRhZmMx ZjIxYzExMmIwMjZmOWUxZmUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NhZ2Vt YXRoL3BhdGNoZXMvdHJhYy0zNDM5MS11cGdyYWRlX2dhcF80LjEyLWE2YzI5M2Q2N2NmY2RmOGZi YTdiYzZhYTc4OTllMjA4NmQ0MmNjN2UucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3NhZ2VtYXRoL3BhdGNoZXMvdHJhYy0zNDQ2NS1maXhfaW52YWxpZF9lc2NhcGVfc2VxdWVuY2Ut MDQ5NzEzMThmMDMyY2FmOGRjMWMwZGU5NDg5MzQ2ZDg5NDQwOTA5MS5wYXRjaAogZGVsZXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0NTM3LXNhZ2VtYXRoLXBh cmktMi4xNS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hl cy90cmFjLTM0NTM3LXNhZ2VtYXRoLXBhcmktMi4xNWIucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvdHJhYy0zNDY2OC1tYXRwbG90bGliXzMuNi01NTAx ZTBkZTBkY2ExY2ZmMDM1NTMyNmRkNDJiZDhjN2U1NzQ5NTY4LnBhdGNoCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzQ4NTEtc3VwcG9ydF9zaW5ndWxh cl80LjMuMS5wMy01ZTU3MzdhMGMucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Nh Z2VtYXRoL3VwZGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvZmlsZXMvc2FnZV9j b25mLnB5IGIvc3JjcGtncy9zYWdlbWF0aC9maWxlcy9zYWdlX2NvbmYucHkKaW5kZXggODVlYzM3 ZGZiNTBlLi4wMGRlNDBmMWVlNGYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2FnZW1hdGgvZmlsZXMv c2FnZV9jb25mLnB5CisrKyBiL3NyY3BrZ3Mvc2FnZW1hdGgvZmlsZXMvc2FnZV9jb25mLnB5CkBA IC0xLDMgKzEsNCBAQAogIyBjb25maWd1cmF0aW9uIGZvciBzYWdlIG9uIHZvaWQgbGludXgKIFNB R0VfU0hBUkUgPSAiL3Vzci9zaGFyZS9zYWdlbWF0aCIKLUdBUF9ST09UX0RJUiA9ICIvdXNyL3No YXJlL2dhcCIKK0dBUF9TSEFSRV9ESVIgPSAiL3Vzci9zaGFyZS9nYXAiCitHQVBfTElCX0RJUiA9 ICIvdXNyL2xpYi9nYXAiCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMDkt ZG9jdGVzdF9udW1lcmljYWxfZml4LnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzA5 LWRvY3Rlc3RfbnVtZXJpY2FsX2ZpeC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggODc4MGM4YTk3ZWZhLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC9wYXRj aGVzLzA5LWRvY3Rlc3RfbnVtZXJpY2FsX2ZpeC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE0 ICswLDAgQEAKLSAtIFRoaXMgZml4ZXMgYSBkb2N0ZXN0IGZhaWx1cmUgZHVlIHRvIGEgc21hbGwg bnVtZXJpY2FsIGlzc3VlIHdoZW4gcnVubmluZwotICAgbWF4aW1hLXNiY2wgb24gMzIgYml0Ci0K LS0tLSBhL3NyYy9zYWdlL2ludGVyZmFjZXMvbWF4aW1hX2Fic3RyYWN0LnB5Ci0rKysgYi9zcmMv c2FnZS9pbnRlcmZhY2VzL21heGltYV9hYnN0cmFjdC5weQotQEAgLTE1MjUsNyArMTUyNSw3IEBA IGNsYXNzIE1heGltYUFic3RyYWN0RWxlbWVudChFeHRyYVRhYkNvbXBsZXRpb24sIEludGVyZmFj ZUVsZW1lbnQpOgotICAgICAgICAgRVhBTVBMRVM6OgotIAotICAgICAgICAgICAgIHNhZ2U6IG1h eGltYSgnZXhwKC1zcXJ0KHgpKScpLm5pbnRlZ3JhbCgneCcsMCwxKQotLSAgICAgICAgICAgICgw LjUyODQ4MjIzNTMxNDIzMDYsIDQuMTYzMzE0MTM3ODgzOC4uLmUtMTEsIDIzMSwgMCkKLSsgICAg ICAgICAgICAoMC41Mjg0ODIyMzUzMTQyMzA2LCA0LjE2My4uLmUtMTEsIDIzMSwgMCkKLSAKLSAg ICAgICAgIE5vdGUgdGhhdCBHUCBhbHNvIGRvZXMgbnVtZXJpY2FsIGludGVncmF0aW9uLCBhbmQg Y2FuIGRvIHNvIHRvIHZlcnkKLSAgICAgICAgIGhpZ2ggcHJlY2lzaW9uIHZlcnkgcXVpY2tseTo6 CmRpZmYgLS1naXQgYS9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzQ5ODAtYXZvaWRfZmFjdG9y aW5nX2luX2lzX3ByaW1lLnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM0OTgwLWF2 b2lkX2ZhY3RvcmluZ19pbl9pc19wcmltZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMDAuLmIxY2YwZWFjNDFhZQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv c2FnZW1hdGgvcGF0Y2hlcy8zNDk4MC1hdm9pZF9mYWN0b3JpbmdfaW5faXNfcHJpbWUucGF0Y2gK QEAgLTAsMCArMSw0NyBAQAorZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVs ZC9udW1iZXJfZmllbGRfaWRlYWwucHkgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvbnVt YmVyX2ZpZWxkX2lkZWFsLnB5CitpbmRleCAzMzQ4MWZlYWQwNi4uYWZlYTg1MmJkNTYgMTAwNjQ0 CistLS0gYS9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvbnVtYmVyX2ZpZWxkX2lkZWFsLnB5 CisrKysgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvbnVtYmVyX2ZpZWxkX2lkZWFsLnB5 CitAQCAtOTk1LDE2ICs5OTUsMzYgQEAgZGVmIGlzX3ByaW1lKHNlbGYpOgorICAgICAgICAgICAg IEZhbHNlCisgICAgICAgICAgICAgc2FnZTogSy5pZGVhbCgxNykuaXNfcHJpbWUoKSAgIyByYW1p ZmllZAorICAgICAgICAgICAgIEZhbHNlCisrCisrICAgICAgICBURVNUUzoKKysKKysgICAgICAg IENoZWNrIHRoYXQgd2UgZG8gbm90IGZhY3RvciB0aGUgbm9ybSBvZiB0aGUgaWRlYWwsIHRoaXMg dXNlZAorKyAgICAgICAgdG8gdGFrZSBoYWxmIGFuIGhvdXIsIHNlZSA6dHJhYzpgMzMzNjBgOjoK KysKKysgICAgICAgICAgICBzYWdlOiBLLjxhLGIsYz4gPSBOdW1iZXJGaWVsZChbeF4yLTIseF4y LTMseF4yLTVdKQorKyAgICAgICAgICAgIHNhZ2U6IHQgPSAoKCgtMjYxMTk0MCpjICsgMTkyNTI5 MC83NjUzKSpiIC0gMTUzNzEzMC83NjUzKmMKKysgICAgICAgICAgICAuLi4uOiAgICAgICArIDEw MTMwOTUwKSphICsgKDEzNDMwMTQvNzY1MypjIC0gODM0OTc3MCkqYgorKyAgICAgICAgICAgIC4u Li46ICAgICAgICsgNjQ3NzA1OCpjIC0gMjgwMTQ0OTk5MC80MDAyNTE5KQorKyAgICAgICAgICAg IHNhZ2U6IHQuaXNfcHJpbWUoKQorKyAgICAgICAgICAgIEZhbHNlCisgICAgICAgICAiIiIKKyAg ICAgICAgIHRyeToKKyAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcGFyaV9wcmltZSBpcyBub3Qg Tm9uZQorICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorLSAgICAgICAgICAgIEYgPSBz ZWxmLmZhY3RvcigpICAjIGZhY3Rvcml6YXRpb24gd2l0aCBjYWNoaW5nCistICAgICAgICAgICAg aWYgbGVuKEYpICE9IDEgb3IgRlswXVsxXSAhPSAxOgorLSAgICAgICAgICAgICAgICBzZWxmLl9w YXJpX3ByaW1lID0gTm9uZQorLSAgICAgICAgICAgIGVsc2U6CistICAgICAgICAgICAgICAgIHNl bGYuX3BhcmlfcHJpbWUgPSBGWzBdWzBdLl9wYXJpX3ByaW1lCistICAgICAgICAgICAgcmV0dXJu IHNlbGYuX3BhcmlfcHJpbWUgaXMgbm90IE5vbmUKKysgICAgICAgICAgICBwYXNzCisrCisrICAg ICAgICBLID0gc2VsZi5udW1iZXJfZmllbGQoKS5wYXJpX25mKCkKKysgICAgICAgIEkgPSBzZWxm LnBhcmlfaG5mKCkKKysKKysgICAgICAgIHNlbGYuX3BhcmlfcHJpbWUgPSBLLmlkZWFsaXNtYXhp bWFsKEkpIG9yIE5vbmUKKysKKysgICAgICAgICMgUEFSSSB1c2VzIHByb2JhYmlsaXN0aWMgcHJp bWFsaXR5IHRlc3RpbmcgaW5zaWRlIGlkZWFsaXNtYXhpbWFsKCkuCisrICAgICAgICBpZiBzZWxm Ll9wYXJpX3ByaW1lIFwKKysgICAgICAgICAgICAgICAgYW5kIGdldF9mbGFnKE5vbmUsICdhcml0 aG1ldGljJykgXAorKyAgICAgICAgICAgICAgICBhbmQgbm90IHNlbGYuX3BhcmlfcHJpbWVbMF0u aXNwcmltZSgpOgorKyAgICAgICAgICAgIHNlbGYuX3BhcmlfcHJpbWUgPSBOb25lCisrCisrICAg ICAgICByZXR1cm4gc2VsZi5fcGFyaV9wcmltZSBpcyBub3QgTm9uZQorIAorICAgICBkZWYgcGFy aV9wcmltZShzZWxmKToKKyAgICAgICAgIHIiIiIKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1h dGgvcGF0Y2hlcy8zNDk5NC1maXhfdGVzdHNfbnVtcHlfMS4yNC5wYXRjaCBiL3NyY3BrZ3Mvc2Fn ZW1hdGgvcGF0Y2hlcy8zNDk5NC1maXhfdGVzdHNfbnVtcHlfMS4yNC5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjkxZjA2ZmQ0ZDE3MwotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNDk5NC1maXhfdGVzdHNfbnVtcHlfMS4y NC5wYXRjaApAQCAtMCwwICsxLDU4IEBACitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbWlzYy9wZXJz aXN0LnB5eCBiL3NyYy9zYWdlL21pc2MvcGVyc2lzdC5weXgKK2luZGV4IDNhYzVmMWNjMmIwLi5j YjFmMzI3YzE5OSAxMDA2NDQKKy0tLSBhL3NyYy9zYWdlL21pc2MvcGVyc2lzdC5weXgKKysrKyBi L3NyYy9zYWdlL21pc2MvcGVyc2lzdC5weXgKK0BAIC0xNTcsNyArMTU3LDcgQEAgZGVmIGxvYWQo KmZpbGVuYW1lLCBjb21wcmVzcz1UcnVlLCB2ZXJib3NlPVRydWUsICoqa3dhcmdzKToKKyAgICAg ICAgIC4uLi46ICAgICBfID0gZi53cml0ZShjb2RlKQorICAgICAgICAgc2FnZTogbG9hZCh0KQor ICAgICAgICAgc2FnZTogaGVsbG8KKy0gICAgICAgIDxmb3J0cmFuIG9iamVjdD4KKysgICAgICAg IDxmb3J0cmFuIC4uLj4KKyAgICAgIiIiCisgICAgIGltcG9ydCBzYWdlLnJlcGwubG9hZAorICAg ICBpZiBsZW4oZmlsZW5hbWUpICE9IDE6CitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcGxvdC9jb21w bGV4X3Bsb3QucHl4IGIvc3JjL3NhZ2UvcGxvdC9jb21wbGV4X3Bsb3QucHl4CitpbmRleCA2ZjBh ZWFiODdhZS4uYjc3YzY5YjJmNzcgMTAwNjQ0CistLS0gYS9zcmMvc2FnZS9wbG90L2NvbXBsZXhf cGxvdC5weXgKKysrKyBiL3NyYy9zYWdlL3Bsb3QvY29tcGxleF9wbG90LnB5eAorQEAgLTQ2MSw2 ICs0NjEsOCBAQCBkZWYgY29tcGxleF90b19yZ2Ioel92YWx1ZXMsIGNvbnRvdXJlZD1GYWxzZSwg dGlsZWQ9RmFsc2UsCisgICAgICAgICAgICAgcmdiW2ksIGosIDJdID0gYgorIAorICAgICBzaWdf b2ZmKCkKKysgICAgbmFuX2luZGljZXMgPSBucC5pc25hbihyZ2IpLmFueSgtMSkgICAgICMgTWFz ayBmb3IgdW5kZWZpbmVkIHBvaW50cworKyAgICByZ2JbbmFuX2luZGljZXNdID0gMSAgICAgICAg ICAgICAgICAgICAgIyBNYWtlIG5hbl9pbmRpY2VzIHdoaXRlCisgICAgIHJldHVybiByZ2IKKyAK KyAKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9wbG90L2hpc3RvZ3JhbS5weSBiL3NyYy9zYWdlL3Bs b3QvaGlzdG9ncmFtLnB5CitpbmRleCAzYmMyYjc2YjU4ZS4uMzg4YzJkMTM5MWQgMTAwNjQ0Cist LS0gYS9zcmMvc2FnZS9wbG90L2hpc3RvZ3JhbS5weQorKysrIGIvc3JjL3NhZ2UvcGxvdC9oaXN0 b2dyYW0ucHkKK0BAIC04NywxMyArODcsOCBAQCBkZWYgZ2V0X21pbm1heF9kYXRhKHNlbGYpOgor IAorICAgICAgICAgVEVTVFM6OgorIAorLSAgICAgICAgICAgIHNhZ2U6IGggPSBoaXN0b2dyYW0o WzEwLDMsNV0sIG5vcm1lZD1UcnVlKVswXQorLSAgICAgICAgICAgIGRvY3Rlc3Q6d2FybmluZy4u LjoKKy0gICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmc6IHRoZSAnbm9ybWVkJyBvcHRpb24g aXMgZGVwcmVjYXRlZC4gVXNlICdkZW5zaXR5JyBpbnN0ZWFkLgorLSAgICAgICAgICAgIFNlZSBo dHRwczovL3RyYWMuc2FnZW1hdGgub3JnLzI1MjYwIGZvciBkZXRhaWxzLgorKyAgICAgICAgICAg IHNhZ2U6IGggPSBoaXN0b2dyYW0oWzEwLDMsNV0sIGRlbnNpdHk9VHJ1ZSlbMF0KKyAgICAgICAg ICAgICBzYWdlOiBoLmdldF9taW5tYXhfZGF0YSgpCistICAgICAgICAgICAgZG9jdGVzdDp3YXJu aW5nIC4uLgorLSAgICAgICAgICAgIC4uLlZpc2libGVEZXByZWNhdGlvbldhcm5pbmc6IFBhc3Np bmcgYG5vcm1lZD1UcnVlYCBvbiBub24tdW5pZm9ybSBiaW5zIGhhcyBhbHdheXMgYmVlbiBicm9r ZW4sIGFuZCBjb21wdXRlcyBuZWl0aGVyIHRoZSBwcm9iYWJpbGl0eSBkZW5zaXR5IGZ1bmN0aW9u IG5vciB0aGUgcHJvYmFiaWxpdHkgbWFzcyBmdW5jdGlvbi4gVGhlIHJlc3VsdCBpcyBvbmx5IGNv cnJlY3QgaWYgdGhlIGJpbnMgYXJlIHVuaWZvcm0sIHdoZW4gZGVuc2l0eT1UcnVlIHdpbGwgcHJv ZHVjZSB0aGUgc2FtZSByZXN1bHQgYW55d2F5LiBUaGUgYXJndW1lbnQgd2lsbCBiZSByZW1vdmVk IGluIGEgZnV0dXJlIHZlcnNpb24gb2YgbnVtcHkuCisgICAgICAgICAgICAgeyd4bWF4JzogMTAu MCwgJ3htaW4nOiAzLjAsICd5bWF4JzogMC40NzYxOTA0NzYxOTAuLi4sICd5bWluJzogMH0KKyAg ICAgICAgICIiIgorICAgICAgICAgaW1wb3J0IG51bXB5CitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2Uv cmVwbC9pcHl0aG9uX2V4dGVuc2lvbi5weSBiL3NyYy9zYWdlL3JlcGwvaXB5dGhvbl9leHRlbnNp b24ucHkKK2luZGV4IDc5ODY3MWFhYjQyLi5jYWQ2YTQ3Y2E4YiAxMDA2NDQKKy0tLSBhL3NyYy9z YWdlL3JlcGwvaXB5dGhvbl9leHRlbnNpb24ucHkKKysrKyBiL3NyYy9zYWdlL3JlcGwvaXB5dGhv bl9leHRlbnNpb24ucHkKK0BAIC00MDUsNyArNDA1LDcgQEAgZGVmIGZvcnRyYW4oc2VsZiwgbGlu ZSwgY2VsbCk6CisgICAgICAgICAgICAgLi4uLjogQyBFTkQgRklMRSBGSUIxLkYKKyAgICAgICAg ICAgICAuLi4uOiAnJycpCisgICAgICAgICAgICAgc2FnZTogZmliCistICAgICAgICAgICAgPGZv cnRyYW4gb2JqZWN0PgorKyAgICAgICAgICAgIDxmb3J0cmFuIC4uLj4KKyAgICAgICAgICAgICBz YWdlOiBmcm9tIG51bXB5IGltcG9ydCBhcnJheQorICAgICAgICAgICAgIHNhZ2U6IGEgPSBhcnJh eShyYW5nZSgxMCksIGR0eXBlPWZsb2F0KQorICAgICAgICAgICAgIHNhZ2U6IGZpYihhLCAxMCkK ZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNDk5NS1zdXBwb3J0X3RhY2h5 b25fMC45OS4yLnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM0OTk1LXN1cHBvcnRf dGFjaHlvbl8wLjk5LjIucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwLi4yNzY5ZTg3ZjZhNGIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NhZ2VtYXRoL3Bh dGNoZXMvMzQ5OTUtc3VwcG9ydF90YWNoeW9uXzAuOTkuMi5wYXRjaApAQCAtMCwwICsxLDU3IEBA CitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvaW50ZXJmYWNlcy90YWNoeW9uLnB5IGIvc3JjL3NhZ2Uv aW50ZXJmYWNlcy90YWNoeW9uLnB5CitpbmRleCAyMzY3MWU1MDg5Mi4uY2UxZDUwZjcxYmMgMTAw NjQ0CistLS0gYS9zcmMvc2FnZS9pbnRlcmZhY2VzL3RhY2h5b24ucHkKKysrKyBiL3NyYy9zYWdl L2ludGVyZmFjZXMvdGFjaHlvbi5weQorQEAgLTY4MywxMiArNjgzLDE0IEBACisgIyoqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqCisgCisgaW1wb3J0IG9zCisraW1wb3J0IHJlCisgCisgZnJvbSBzYWdlLmNw eXRob24uc3RyaW5nIGltcG9ydCBieXRlc190b19zdHIKKyBmcm9tIHNhZ2UubWlzYy5wYWdlciBp bXBvcnQgcGFnZXIKKyBmcm9tIHNhZ2UubWlzYy5zdXBlcnNlZGVkIGltcG9ydCBkZXByZWNhdGlv bgorIGZyb20gc2FnZS5taXNjLnRlbXBvcmFyeV9maWxlIGltcG9ydCB0bXBfZmlsZW5hbWUKKyBm cm9tIHNhZ2Uuc3RydWN0dXJlLnNhZ2Vfb2JqZWN0IGltcG9ydCBTYWdlT2JqZWN0CisrZnJvbSBz YWdlLm1pc2MuY2FjaGVmdW5jIGltcG9ydCBjYWNoZWRfbWV0aG9kCisgCisgCisgY2xhc3MgVGFj aHlvblJUKFNhZ2VPYmplY3QpOgorQEAgLTc5OSw2ICs4MDEsMTEgQEAgZGVmIF9fY2FsbF9fKHNl bGYsIG1vZGVsLCBvdXRmaWxlPSdzYWdlLnBuZycsIHZlcmJvc2U9MSwgZXh0cmFfb3B0cz0nJyk6 CisgICAgICAgICAgICAgUGFyc2VyIGZhaWxlZCBkdWUgdG8gYW4gaW5wdXQgZmlsZSBzeW50YXgg ZXJyb3IuCisgICAgICAgICAgICAgQWJvcnRpbmcgcmVuZGVyLgorICAgICAgICAgIiIiCisrICAg ICAgICBpZiBzZWxmLnZlcnNpb24oKSA+PSAnMC45OS4yJzoKKysgICAgICAgICAgICAjIHRoaXMg a2V5d29yZCB3YXMgY2hhbmdlZCBpbiAwLjk5LjIKKysgICAgICAgICAgICBtb2RlbCA9IG1vZGVs LnJlcGxhY2UoCisrICAgICAgICAgICAgICAgICAgICAiICAgICAgICAgICAgICBmb2NhbGxlbmd0 aCAiLAorKyAgICAgICAgICAgICAgICAgICAgIiAgICAgICAgICAgICAgZm9jYWxkaXN0ICIpCisg ICAgICAgICBtb2RlbGZpbGUgPSB0bXBfZmlsZW5hbWUoZXh0PScuZGF0JykKKyAgICAgICAgIHdp dGggb3Blbihtb2RlbGZpbGUsICd3JykgYXMgZmlsZToKKyAgICAgICAgICAgICBmaWxlLndyaXRl KG1vZGVsKQorQEAgLTg1MSw2ICs4NTgsMjUgQEAgZGVmIHVzYWdlKHNlbGYsIHVzZV9wYWdlcj1U cnVlKToKKyAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgcHJpbnQocikKKyAKKysgICAgQGNh Y2hlZF9tZXRob2QKKysgICAgZGVmIHZlcnNpb24oc2VsZik6CisrICAgICAgICAiIiIKKysgICAg ICAgIFJldHVybnMgdGhlIHZlcnNpb24gb2YgdGhlIFRhY2h5b24gcmF5dHJhY2VyIGJlaW5nIHVz ZWQuCisrCisrICAgICAgICBURVNUUzo6CisrCisrICAgICAgICAgICAgc2FnZTogdGFjaHlvbl9y dC52ZXJzaW9uKCkgICMgcmFuZG9tCisrICAgICAgICAgICAgMC45OC45CisrICAgICAgICAgICAg c2FnZTogdGFjaHlvbl9ydC52ZXJzaW9uKCkgPj0gJzAuOTguOScKKysgICAgICAgICAgICBUcnVl CisrICAgICAgICAiIiIKKysgICAgICAgIHdpdGggb3MucG9wZW4oJ3RhY2h5b24nKSBhcyBmOgor KyAgICAgICAgICAgIHIgPSBmLnJlYWRsaW5lKCkKKysgICAgICAgIHJlcyA9IHJlLnNlYXJjaChy IlZlcnNpb24gKFtcZC5dKikiLCByKQorKyAgICAgICAgIyBkZWJpYW4gcGF0Y2hlcyB0YWNoeW9u IHNvIGl0IHdvbid0IHJlcG9ydCB0aGUgdmVyc2lvbgorKyAgICAgICAgIyB3ZSBoYXJkY29kZSAn MC45OScgc2luY2UgdGhhdCdzIGluZGVlZCB0aGUgdmVyc2lvbiB0aGV5IHNoaXAKKysgICAgICAg IHJldHVybiByZXNbMV0gaWYgcmVzIGVsc2UgJzAuOTknCisrCisgICAgIGRlZiBoZWxwKHNlbGYs IHVzZV9wYWdlcj1UcnVlKToKKyAgICAgICAgICIiIgorICAgICAgICAgRGVwcmVjYXRlZDogdHlw ZSAnc2FnZS5pbnRlcmZhY2VzLnRhY2h5b24/JyBmb3IgaGVscApkaWZmIC0tZ2l0IGEvc3JjcGtn cy9zYWdlbWF0aC9wYXRjaGVzLzM0OTk3LWZpeF9lZGdlX2Nhc2Vfb2ZfaW50ZWdlcl9jaGVjay5w YXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNDk5Ny1maXhfZWRnZV9jYXNlX29mX2lu dGVnZXJfY2hlY2sucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw Li4xMWViMjBkNGY3MzUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNo ZXMvMzQ5OTctZml4X2VkZ2VfY2FzZV9vZl9pbnRlZ2VyX2NoZWNrLnBhdGNoCkBAIC0wLDAgKzEs MzYgQEAKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9hcml0aC9sb25nLnB4ZCBiL3NyYy9zYWdlL2Fy aXRoL2xvbmcucHhkCitpbmRleCAxYzlhNTMzODdhMC4uZDk2Yjk4ZjI0N2MgMTAwNjQ0CistLS0g YS9zcmMvc2FnZS9hcml0aC9sb25nLnB4ZAorKysrIGIvc3JjL3NhZ2UvYXJpdGgvbG9uZy5weGQK K0BAIC0yNzAsNiArMjcwLDE3IEBAIGNkZWYgaW5saW5lIGJpbnQgaW50ZWdlcl9jaGVja19sb25n X3B5KHgsIGxvbmcqIHZhbHVlLCBpbnQqIGVycik6CisgICAgICAgICBzYWdlOiBMICs9IFsteCBm b3IgeCBpbiBMXSArIFswLCBsb25nX21pbigpXQorICAgICAgICAgc2FnZTogZm9yIHYgaW4gTDoK KyAgICAgICAgIC4uLi46ICAgICBhc3NlcnQgY2hlY2tfbG9uZ19weShpbnQodikpID09IHYKKysg ICAgICAgIHNhZ2U6IGNoZWNrX2xvbmdfcHkoaW50KDJeNjApKQorKyAgICAgICAgMTE1MjkyMTUw NDYwNjg0Njk3NiAgICAgICAgICAgICAgICAgIyA2NC1iaXQKKysgICAgICAgICdPdmVyZmxvdyAo Li4uKScgICAgICAgICAgICAgICAgICAgICMgMzItYml0CisrICAgICAgICBzYWdlOiBjaGVja19s b25nX3B5KGludCgyXjYxKSkKKysgICAgICAgIDIzMDU4NDMwMDkyMTM2OTM5NTIgICAgICAgICAg ICAgICAgICMgNjQtYml0CisrICAgICAgICAnT3ZlcmZsb3cgKC4uLiknICAgICAgICAgICAgICAg ICAgICAjIDMyLWJpdAorKyAgICAgICAgc2FnZTogY2hlY2tfbG9uZ19weShpbnQoMl42MikpCisr ICAgICAgICA0NjExNjg2MDE4NDI3Mzg3OTA0ICAgICAgICAgICAgICAgICAjIDY0LWJpdAorKyAg ICAgICAgJ092ZXJmbG93ICguLi4pJyAgICAgICAgICAgICAgICAgICAgIyAzMi1iaXQKKysgICAg ICAgIHNhZ2U6IGNoZWNrX2xvbmdfcHkoaW50KDJeNjMpKQorKyAgICAgICAgJ092ZXJmbG93ICgu Li4pJworICAgICAgICAgc2FnZTogY2hlY2tfbG9uZ19weShpbnQoMl4xMDApKQorICAgICAgICAg J092ZXJmbG93ICguLi4pJworICAgICAgICAgc2FnZTogY2hlY2tfbG9uZ19weShpbnQobG9uZ19t YXgoKSArIDEpKQorQEAgLTMwOSw3ICszMjAsMTIgQEAgY2RlZiBpbmxpbmUgYmludCBpbnRlZ2Vy X2NoZWNrX2xvbmdfcHkoeCwgbG9uZyogdmFsdWUsIGludCogZXJyKToKKyAKKyAgICAgY2RlZiBs b25nIGxlYWQKKyAgICAgY2RlZiBsb25nIGxlYWRfMl9vdmVyZmxvdyA9ICg8bG9uZz4xKSA8PCAo QklUU19JTl9MT05HIC0gUHlMb25nX1NISUZUKQorLSAgICBjZGVmIGxvbmcgbGVhZF8zX292ZXJm bG93ID0gKDxsb25nPjEpIDw8IChCSVRTX0lOX0xPTkcgLSAyICogUHlMb25nX1NISUZUKQorKyAg ICBjZGVmIGxvbmcgbGVhZF8zX292ZXJmbG93CisrICAgIGlmIEJJVFNfSU5fTE9ORyA8IDIgKiBQ eUxvbmdfU0hJRlQ6CisrICAgICAgICAjIGluIHRoaXMgY2FzZSAzIGRpZ2l0IGlzIGFsd2F5cyBv dmVyZmxvdworKyAgICAgICAgbGVhZF8zX292ZXJmbG93ID0gMAorKyAgICBlbHNlOgorKyAgICAg ICAgbGVhZF8zX292ZXJmbG93ID0gKDxsb25nPjEpIDw8IChCSVRTX0lOX0xPTkcgLSAyICogUHlM b25nX1NISUZUKQorICAgICBpZiBzaXplID09IDA6CisgICAgICAgICB2YWx1ZVswXSA9IDAKKyAg ICAgICAgIGVyclswXSA9IDAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8z NTA1OC1za2lwX3Vuc3RhYmxlX3Rlc3RzX2tseWFjaGtvLnBhdGNoIGIvc3JjcGtncy9zYWdlbWF0 aC9wYXRjaGVzLzM1MDU4LXNraXBfdW5zdGFibGVfdGVzdHNfa2x5YWNoa28ucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5jNGQ3ZDVjNzc5ZDEKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzUwNTgtc2tpcF91bnN0YWJsZV90 ZXN0c19rbHlhY2hrby5wYXRjaApAQCAtMCwwICsxLDIyIEBACitkaWZmIC0tZ2l0IGEvc3JjL3Nh Z2Uvc2NoZW1lcy90b3JpYy9zaGVhZi9rbHlhY2hrby5weSBiL3NyYy9zYWdlL3NjaGVtZXMvdG9y aWMvc2hlYWYva2x5YWNoa28ucHkKK2luZGV4IGIxMzA0YTE2OTEzLi43N2ZhZTRiNzU0NSAxMDA2 NDQKKy0tLSBhL3NyYy9zYWdlL3NjaGVtZXMvdG9yaWMvc2hlYWYva2x5YWNoa28ucHkKKysrKyBi L3NyYy9zYWdlL3NjaGVtZXMvdG9yaWMvc2hlYWYva2x5YWNoa28ucHkKK0BAIC0yNiw3ICsyNiw3 IEBACisgICAgICgwLCAwLCAxOCwgMTYsIDEpCisgICAgIHNhZ2U6IEd0aWxkZSA9IEdfc3VtLnJh bmRvbV9kZWZvcm1hdGlvbigpCisgICAgIHNhZ2U6IFYgPSBHdGlsZGUud2VkZ2UoMikgKiBLICAg ICAgICAgICAgICAgICAgICAgIyBsb25nIHRpbWUKKy0gICAgc2FnZTogVi5jb2hvbW9sb2d5KGRp bT1UcnVlLCB3ZWlnaHQ9KDAsMCwwLDApKSAgICAjIGxvbmcgdGltZQorKyAgICBzYWdlOiBWLmNv aG9tb2xvZ3koZGltPVRydWUsIHdlaWdodD0oMCwwLDAsMCkpICAgICMgbG9uZyB0aW1lICAjIHJh bmRvbSBmYWlsdXJlIChzZWUgIzMyNzczKQorICAgICAoMCwgMCwgMywgMCwgMCkKKyAKKyBSRUZF UkVOQ0VTOgorQEAgLTk0OCw3ICs5NDgsNyBAQCBkZWYgcmFuZG9tX2RlZm9ybWF0aW9uKHNlbGYs IGVwc2lsb249Tm9uZSk6CisgICAgICAgICAgICBzYWdlOiBWLmNvaG9tb2xvZ3koZGltPVRydWUs IHdlaWdodD0oMCwpKQorICAgICAgICAgICAgKDEsIDApCisgICAgICAgICAgICBzYWdlOiBWdGls ZGUgPSBWLnJhbmRvbV9kZWZvcm1hdGlvbigpCistICAgICAgICAgICBzYWdlOiBWdGlsZGUuY29o b21vbG9neShkaW09VHJ1ZSwgd2VpZ2h0PSgwLCkpCisrICAgICAgICAgICBzYWdlOiBWdGlsZGUu Y29ob21vbG9neShkaW09VHJ1ZSwgd2VpZ2h0PSgwLCkpICAjIHJhbmRvbSBmYWlsdXJlIChzZWUg IzMyNzczKQorICAgICAgICAgICAgKDEsIDApCisgICAgICAgICAiIiIKKyAgICAgICAgIGZpbHQg PSBzZWxmLl9maWx0LnJhbmRvbV9kZWZvcm1hdGlvbihlcHNpbG9uKQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1MDY4LWZpeF90ZXN0c19naWFjXzEuOS4wLjM1LnBhdGNo IGIvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1MDY4LWZpeF90ZXN0c19naWFjXzEuOS4wLjM1 LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uZDlhOTgzNWM2 OTZiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1MDY4LWZp eF90ZXN0c19naWFjXzEuOS4wLjM1LnBhdGNoCkBAIC0wLDAgKzEsNjIgQEAKK0Zyb20gOWFjNzg0 MDEzNDA1NDE1NTU0NWUyNGZhM2U2NjQwMmQ0MmI5MWMwZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKK0Zyb206IEFudG9uaW8gUm9qYXMgPGFyb2phc0BhcmNobGludXgub3JnPgorRGF0ZTogRnJp LCAyMCBKYW4gMjAyMyAyMTozNjoyNyArMDEwMAorU3ViamVjdDogW1BBVENIXSBGaXggdGVzdHMg d2l0aCBnaWFjIDEuOS4wLjM1CisKKy0tLQorIHNyYy9zYWdlL2xpYnMvZ2lhYy9naWFjLnB5eCAg IHwgIDMgKy0tCisgc3JjL3NhZ2Uvc3ltYm9saWMvcmVsYXRpb24ucHkgfCAxNSArKysrKy0tLS0t LS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0p CisKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9saWJzL2dpYWMvZ2lhYy5weXggYi9zcmMvc2FnZS9s aWJzL2dpYWMvZ2lhYy5weXgKK2luZGV4IDRlNDUxZGJhNWU3Li5jY2FkNTE2OTgzNiAxMDA2NDQK Ky0tLSBhL3NyYy9zYWdlL2xpYnMvZ2lhYy9naWFjLnB5eAorKysrIGIvc3JjL3NhZ2UvbGlicy9n aWFjL2dpYWMucHl4CitAQCAtMzc0LDggKzM3NCw3IEBAIGRlZiBfZ2lhYyhzKToKKyAKKyAgICAg ICAgIHNhZ2U6IHggPSBsaWJnaWFjKCd4JykKKyAgICAgICAgIHNhZ2U6ICgxKzIqc2luKDMqeCkp LnNvbHZlKHgpLnNpbXBsaWZ5KCkKKy0gICAgICAgIFdhcm5pbmcsIGFyZ3VtZW50IGlzIG5vdCBh biBlcXVhdGlvbiwgc29sdmluZyAxKzIqc2luKDMqeCk9MAorLSAgICAgICAgbGlzdFstcGkvMTgs NypwaS8xOF0KKysgICAgICAgIC4uLmxpc3RbLXBpLzE4LDcqcGkvMThdCisgCisgICAgICAgICBz YWdlOiBsaWJnaWFjLnNvbHZlKCdzaW4oMyp4KT4yKnNpbih4KScseCkKKyAgICAgICAgIFRyYWNl YmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9zeW1i b2xpYy9yZWxhdGlvbi5weSBiL3NyYy9zYWdlL3N5bWJvbGljL3JlbGF0aW9uLnB5CitpbmRleCBl OWRiYzBmZWEzMC4uYjg4OTZhOTRiZTkgMTAwNjQ0CistLS0gYS9zcmMvc2FnZS9zeW1ib2xpYy9y ZWxhdGlvbi5weQorKysrIGIvc3JjL3NhZ2Uvc3ltYm9saWMvcmVsYXRpb24ucHkKK0BAIC05MzUs OCArOTM1LDcgQEAgZGVmIHNvbHZlKGYsICphcmdzLCAqKmt3ZHMpOgorIAorICAgICAgICAgc2Fn ZTogZiA9IChzaW4oeCkgLSA4KmNvcyh4KSpzaW4oeCkpKihzaW4oeCleMiArIGNvcyh4KSkgLSAo Mipjb3MoeCkqc2luKHgpIC0gc2luKHgpKSooLTIqc2luKHgpXjIgKyAyKmNvcyh4KV4yIC0gY29z KHgpKQorICAgICAgICAgc2FnZTogc29sdmUoZiwgeCwgYWxnb3JpdGhtPSdnaWFjJykKKy0gICAg ICAgIC4uLgorLSAgICAgICAgWy0yKmFyY3RhbihzcXJ0KDIpKSwgMCwgMiphcmN0YW4oc3FydCgy KSksIHBpXQorKyAgICAgICAgLi4uWy0yKmFyY3RhbihzcXJ0KDIpKSwgMCwgMiphcmN0YW4oc3Fy dCgyKSksIHBpXQorIAorICAgICAgICAgc2FnZTogeCwgeSA9IFNSLnZhcigneCx5JykKKyAgICAg ICAgIHNhZ2U6IHNvbHZlKFt4K3ktNCx4KnktM10sW3gseV0sYWxnb3JpdGhtPSdnaWFjJykKK0BA IC0xNDQwLDE5ICsxNDM5LDE1IEBAIGRlZiBfZ2lhY19zb2x2ZXIoZiwgeCwgc29sdXRpb25fZGlj dD1GYWxzZSk6CisgICAgIEVYQU1QTEVTOjoKKyAKKyAgICAgICAgIHNhZ2U6IHNvbHZlKFsoMi8z KV54LTJdLCBbeF0sIGFsZ29yaXRobT0nZ2lhYycpCistICAgICAgICAuLi4KKy0gICAgICAgIFtb LWxvZygyKS8obG9nKDMpIC0gbG9nKDIpKV1dCisrICAgICAgICAuLi5bWy1sb2coMikvKGxvZygz KSAtIGxvZygyKSldXQorICAgICAgICAgc2FnZTogc29sdmUoWygyLzMpXngtMl0sIFt4XSwgYWxn b3JpdGhtPSdnaWFjJywgc29sdXRpb25fZGljdD1UcnVlKQorLSAgICAgICAgLi4uCistICAgICAg ICBbe3g6IC1sb2coMikvKGxvZygzKSAtIGxvZygyKSl9XQorKyAgICAgICAgLi4uW3t4OiAtbG9n KDIpLyhsb2coMykgLSBsb2coMikpfV0KKyAKKyAgICAgICAgIHNhZ2U6IGYgPSAoc2luKHgpIC0g OCpjb3MoeCkqc2luKHgpKSooc2luKHgpXjIgKyBjb3MoeCkpIC0gKDIqY29zKHgpKnNpbih4KSAt IHNpbih4KSkqKC0yKnNpbih4KV4yICsgMipjb3MoeCleMiAtIGNvcyh4KSkKKyAgICAgICAgIHNh Z2U6IHNvbHZlKGYsIHgsIGFsZ29yaXRobT0nZ2lhYycpCistICAgICAgICAuLi4KKy0gICAgICAg IFstMiphcmN0YW4oc3FydCgyKSksIDAsIDIqYXJjdGFuKHNxcnQoMikpLCBwaV0KKysgICAgICAg IC4uLlstMiphcmN0YW4oc3FydCgyKSksIDAsIDIqYXJjdGFuKHNxcnQoMikpLCBwaV0KKyAgICAg ICAgIHNhZ2U6IHNvbHZlKGYsIHgsIGFsZ29yaXRobT0nZ2lhYycsIHNvbHV0aW9uX2RpY3Q9VHJ1 ZSkKKy0gICAgICAgIC4uLgorLSAgICAgICAgW3t4OiAtMiphcmN0YW4oc3FydCgyKSl9LCB7eDog MH0sIHt4OiAyKmFyY3RhbihzcXJ0KDIpKX0sIHt4OiBwaX1dCisrICAgICAgICAuLi5be3g6IC0y KmFyY3RhbihzcXJ0KDIpKX0sIHt4OiAwfSwge3g6IDIqYXJjdGFuKHNxcnQoMikpfSwge3g6IHBp fV0KKyAKKyAgICAgICAgIHNhZ2U6IHgsIHkgPSBTUi52YXIoJ3gseScpCisgICAgICAgICBzYWdl OiBzb2x2ZShbeCt5LTcseCp5LTEwXSxbeCx5XSxhbGdvcml0aG09J2dpYWMnKQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzLzM1MDk0LXN1cHBvcnRfZ2FwXzQuMTIucGF0Y2gg Yi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvMzUwOTQtc3VwcG9ydF9nYXBfNC4xMi5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjQ5OWUwYzcxZTI1NgotLS0g L2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy8zNTA5NC1zdXBwb3J0X2dh cF80LjEyLnBhdGNoCkBAIC0wLDAgKzEsMTMwMyBAQAorZGlmZiAtLWdpdCBhL2J1aWxkL3BrZ3Mv Z2FwL2NoZWNrc3Vtcy5pbmkgYi9idWlsZC9wa2dzL2dhcC9jaGVja3N1bXMuaW5pCitpbmRleCAw NjZlOTQzMzA4YS4uYjBlYThiYTg4MTggMTAwNjQ0CistLS0gYS9idWlsZC9wa2dzL2dhcC9jaGVj a3N1bXMuaW5pCisrKysgYi9idWlsZC9wa2dzL2dhcC9jaGVja3N1bXMuaW5pCitAQCAtMSw1ICsx LDUgQEAKKyB0YXJiYWxsPWdhcC1WRVJTSU9OLnRhci5negorLXNoYTE9NGVjZGQyODFiOGY0MzAy ODJmYjliMTI2OTBiMDZlMGEyNmFiZGUxMAorLW1kNT04NWRjOWU0NTlkNWI2YzY2ZmNhZDlmNDY4 YWZkM2UzZQorLWNrc3VtPTEzNTE4NDMxNTgKKytzaGExPWE2ZTM2ZjNmODc0YTJjNDZmNTE1NjE0 MDI2MzQ0OTdlYWI3MDVjY2EKKyttZDU9YzVjZDlmMjcyZjI3MDNkN2EzNjQ5YWQ3MTkzYjJkOTAK Kytja3N1bT0yNzYwNDc3Mjg0CisgdXBzdHJlYW1fdXJsPWh0dHBzOi8vZ2l0aHViLmNvbS9nYXAt c3lzdGVtL2dhcC9yZWxlYXNlcy9kb3dubG9hZC92VkVSU0lPTi9nYXAtVkVSU0lPTi50YXIuZ3oK K2RpZmYgLS1naXQgYS9idWlsZC9wa2dzL2dhcC9wYWNrYWdlLXZlcnNpb24udHh0IGIvYnVpbGQv cGtncy9nYXAvcGFja2FnZS12ZXJzaW9uLnR4dAoraW5kZXggZDc4MmZjYThmNjQuLmYxY2Q3ZGUx ZGU1IDEwMDY0NAorLS0tIGEvYnVpbGQvcGtncy9nYXAvcGFja2FnZS12ZXJzaW9uLnR4dAorKysr IGIvYnVpbGQvcGtncy9nYXAvcGFja2FnZS12ZXJzaW9uLnR4dAorQEAgLTEgKzEgQEAKKy00LjEx LjEKKys0LjEyLjIKK2RpZmYgLS1naXQgYS9idWlsZC9wa2dzL2dhcC9zcGtnLWNoZWNrLmluIGIv YnVpbGQvcGtncy9nYXAvc3BrZy1jaGVjay5pbgoraW5kZXggZDk3OTFkMzMyOTMuLmQyZmNjZGE2 ZTA0IDEwMDY0NAorLS0tIGEvYnVpbGQvcGtncy9nYXAvc3BrZy1jaGVjay5pbgorKysrIGIvYnVp bGQvcGtncy9nYXAvc3BrZy1jaGVjay5pbgorQEAgLTMsNiArMywxMyBAQCBjZCBzcmMKKyAjICMy ODcyODogRml4IHRlc3QgZmFpbHVyZSBpbiB0c3QvdGVzdGluc3RhbGwvc3RyaW5ncy50c3QKKyBl eHBvcnQgTENfQ1RZUEU9ZW5fVVMuVVRGLTgKKyAKKysjICMzNDM5MTogaW4gR0FQIDQuMTIgc29t ZSBwYWNrYWdlcyBuZWVkIEdBUCBwYWNrYWdlIGlvCisrIyAgICAgICAgIHRvIGxldCB0ZXN0cyBy dW4sIG90aGVyd2lzZSB0aGlzIGhhbmdzLiBUaHVzIHdlIGluc3RhbGwgaW8gaGVyZS4KKytjZCBw a2cvaW8KKysuL2NvbmZpZ3VyZSAtLXdpdGgtZ2Fwcm9vdD0uLi8uLgorK21ha2UKKytjZCAuLi8u LgorKworIG1ha2UgdGVzdGluc3RhbGwKKyBpZiBbWyAkPyAtbmUgMCBdXTsgdGhlbgorICAgICBl eGl0IDEKK2RpZmYgLS1naXQgYS9idWlsZC9wa2dzL2dhcC9zcGtnLWluc3RhbGwuaW4gYi9idWls ZC9wa2dzL2dhcC9zcGtnLWluc3RhbGwuaW4KK2luZGV4IDJjZWFkZjk5ZGI0Li5lMmM4YjRkY2E1 NCAxMDA2NDQKKy0tLSBhL2J1aWxkL3BrZ3MvZ2FwL3Nwa2ctaW5zdGFsbC5pbgorKysrIGIvYnVp bGQvcGtncy9nYXAvc3BrZy1pbnN0YWxsLmluCitAQCAtOCw4ICs4LDcgQEAgZXhwb3J0IENGTEFH Uz0kQ0ZMQUdTX05PTl9OQVRJVkUKKyBleHBvcnQgQ1hYRkxBR1M9JENYWEZMQUdTX05PTl9OQVRJ VkUKKyAKKyBHQVBfQlVJTERfUk9PVD0iJChwd2QpIgorLUdBUF9ST09UPSIkU0FHRV9MT0NBTC9z aGFyZS9nYXAiCistREVTVERJUl9HQVBfUk9PVD0iJFNBR0VfREVTVERJUiRHQVBfUk9PVCIKKytH QVBfUk9PVD0iJFNBR0VfTE9DQUwvbGliL2dhcCIKKyAKKyAjIEVuYWJsZSBkZWJ1ZyBpbmZvIGlm IHJlcXVlc3RlZC4KKyAjIE5vdGUgdGhhdCAtZzMgYWxsb3dzIHlvdSB0byB1c2UgcHJlcHJvY2Vz c29yIG1hY3JvcyBpbiBnZGIgd2hpY2ggYXJlIHdpZGVseSB1c2VkCitAQCAtMTcsMzcgKzE2LDE3 IEBAIGlmIFsgIiRTQUdFX0RFQlVHIiA9IHllcyBdIDsgdGhlbgorICAgICBleHBvcnQgQ0ZMQUdT PSItTzAgLWczIC1EREVCVUdfTUFTVEVSUE9JTlRFUlMgLURERUJVR19HTE9CQUxfQkFHUyAtRERF QlVHX0ZVTkNUSU9OU19CQUdTICRDRkxBR1MiCisgZmkKKyAKKy1zZGhfY29uZmlndXJlICRTQUdF X0NPTkZJR1VSRV9HTVAKKy1zZGhfbWFrZSAtajEKKysjIExERkxBR1MgaGFjayBiZWxvdyBuZWVk ZWQgYnkgU2VtaWdyb3VwcyBwYWNrYWdlCisrc2RoX2NvbmZpZ3VyZSAkU0FHRV9DT05GSUdVUkVf R01QIExERkxBR1M9Ii1wdGhyZWFkIiAtLXByZWZpeD0kU0FHRV9MT0NBTAorK3NkaF9tYWtlCisg CistIyBHQVAncyAibWFrZSBpbnN0YWxsIiBpcyB3b3JrIGluIHByb2dyZXNzOyB3ZSB1c2UgYml0 cyBhbmQgcGllY2VzIG9mIGl0CistIyBidXQgd2UgaW5zdGFsbCBtYW55IHRoaW5ncyBtYW51YWxs eS4KKy1zZGhfbWFrZSBpbnN0YWxsLWhlYWRlcnMgaW5zdGFsbC1saWJnYXAKKy0KKy0jIEluc3Rh bGwgY29uZmlnLmgsIHdoaWNoIGlzIG5vdCBjdXJyZW50bHkgaGFuZGxlZCBieSBgbWFrZSBpbnN0 YWxsLWhlYWRlcnNgCistc2RoX2luc3RhbGwgZ2VuL2NvbmZpZy5oICIkU0FHRV9MT0NBTC9pbmNs dWRlL2dhcCIKKy0KKy0jIE5vdyBpbnN0YWxsIHRoZSBnYXAgZXhlY3V0YWJsZSBhcyAiZ2FwLWJp biI7IGl0IHdpbGwgYmUgY2FsbGVkIG5vcm1hbGx5CistIyB0aHJvdWdoIG91ciB3cmFwcGVyIHNj cmlwdCB0aGF0IHNldHMgdGhlIGFwcHJvcHJpYXRlIEdBUF9ST09UCistU0FHRV9CSU49IiRTQUdF X0xPQ0FML2JpbiIKKy1ta2RpciAtcCAiJFNBR0VfREVTVERJUiRTQUdFX0JJTiIgfHwgc2RoX2Rp ZSAiRmFpbGVkIHRvIGNyZWF0ZSB0aGUgZGlyZWN0b3J5ICRTQUdFX0JJTiIKKy0KKy0uL2xpYnRv b2wgLS1tb2RlPWluc3RhbGwgaW5zdGFsbCBnYXAgIiRTQUdFX0RFU1RESVIkU0FHRV9CSU4vZ2Fw LWJpbiIgfHwgXAorLSAgICBzZGhfZGllICJGYWlsZWQgdG8gaW5zdGFsbCBnYXAtYmluIHRvICRT QUdFX0JJTiIKKy0KKy0uL2xpYnRvb2wgLS1tb2RlPWluc3RhbGwgaW5zdGFsbCBnYWMgIiRTQUdF X0RFU1RESVIkU0FHRV9CSU4vZ2FjIiB8fCBcCistICAgIHNkaF9kaWUgIkZhaWxlZCB0byBpbnN0 YWxsIGdhYyB0byAkU0FHRV9CSU4iCistCistIyBOb3cgY29weSBhZGRpdGlvbmFsIGZpbGVzIEdB UCBuZWVkcyB0byBydW4gKGFuZCBhIGZldyBvcHRpb25hbCBiaXRzKSBpbnRvCistIyBHQVBfUk9P VDsgd2UgZG9uJ3QgbmVlZCBldmVyeXRoaW5nIGZyb20gdGhlIHNvdXJjZSB0cmVlCistc2RoX2lu c3RhbGwgYmluIGRvYyBnZW4gZ3JwIGxpYiBzcmMgdHN0IHN5c2luZm8uZ2FwICIkR0FQX1JPT1Qi CistCistIyBHQVAncyBjb3B5IG9mIGxpYnRvb2wgaXMgYWxzbyB1c2VkIGJ5IHRoZSB0b29sY2hh aW4gZm9yIGJ1aWxkIEdBUCBwYWNrYWdlcworLSMgKGkuZS4gYnkgZ2FjKQorLXNkaF9pbnN0YWxs IGxpYnRvb2wgIiRHQVBfUk9PVCIKKytzZGhfbWFrZV9pbnN0YWxsCisrIyBzZGhfbWFrZSBpbnN0 YWxsLWhlYWRlcnMgaW5zdGFsbC1saWJnYXAKKysjIFRoZSAncGFja2FnZW1hbmFnZXInIHBhY2th Z2UgZXhwZWN0cyB0aGlzIGh0dHBzOi8vZ2l0aHViLmNvbS9nYXAtcGFja2FnZXMvUGFja2FnZU1h bmFnZXIvaXNzdWVzLzEwNQorK21rZGlyIC1wICIkU0FHRV9MT0NBTC9saWIvZ2FwL2JpbiIKKyAK KyAjIEluc3RhbGwgb25seSB0aGUgbWluaW1hbCBwYWNrYWdlcyBHQVAgbmVlZHMgdG8gcnVuCist c2RoX2luc3RhbGwgcGtnL0dBUERvYy0qIHBrZy9wcmltZ3JwLSogcGtnL1NtYWxsR3JwLSogcGtn L3RyYW5zZ3JwICIkR0FQX1JPT1QiL3BrZworK3NkaF9pbnN0YWxsIHBrZy9nYXBkb2MgcGtnL3By aW1ncnAgcGtnL3NtYWxsZ3JwIHBrZy90cmFuc2dycCAiJEdBUF9ST09UIi9wa2cKKyAKKyAjIElu c3RhbGwgYWRkaXRpb25hbCBwYWNrYWdlcyB0aGF0IGFyZSBub3Qgc3RyaWN0bHkgcmVxdWlyZWQs IGJ1dCB0aGF0IGFyZQorICMgdHlwaWNhbGx5ICJleHBlY3RlZCIgdG8gYmUgbG9hZGVkOiBUaGVz ZSBhcmUgdGhlIGRlZmF1bHQgcGFja2FnZXMgdGhhdCBhcmUKK0BAIC01OCw1MCArMzcsMjUgQEAg c2RoX2luc3RhbGwgcGtnL0dBUERvYy0qIHBrZy9wcmltZ3JwLSogcGtnL1NtYWxsR3JwLSogcGtn L3RyYW5zZ3JwICIkR0FQX1JPT1QiL3AKKyAjIEFsc28gaW5jbHVkZSBhdGxhc3JlcCB3aGljaCBp cyBhIGRlcGVuZGVuY3kgb2YgdG9tbGliCisgc2RoX2luc3RhbGwgXAorICAgICBwa2cvYXRsYXNy ZXAgXAorLSAgICBwa2cvYXV0cGdycC0qIFwKKy0gICAgcGtnL2FsbnV0aC0qIFwKKy0gICAgcGtn L2NyaXNwLSogXAorLSAgICBwa2cvY3RibGxpYi0qIFwKKy0gICAgcGtnL0ZhY3RJbnQtKiBcCisr ICAgIHBrZy9hdXRvZG9jIFwKKysgICAgcGtnL2F1dHBncnAgXAorKyAgICBwa2cvYWxudXRoIFwK KysgICAgcGtnL2NyaXNwIFwKKysgICAgcGtnL2N0YmxsaWIgXAorKyAgICBwa2cvZmFjdGludCBc CisgICAgIHBrZy9mZ2EgXAorLSAgICBwa2cvaXJyZWRzb2wtKiBcCistICAgIHBrZy9sYWd1bmEt KiBcCistICAgIHBrZy9QYWNrYWdlTWFuYWdlci0qIFwKKy0gICAgcGtnL3BvbGVudGEtKiBcCist ICAgIHBrZy9wb2x5Y3ljbGljLSogXAorLSAgICBwa2cvcmVzY2xhc3Nlcy0qIFwKKy0gICAgcGtn L3NvcGh1cy0qIFwKKy0gICAgcGtnL3RvbWxpYi0qIFwKKysgICAgcGtnL2lycmVkc29sIFwKKysg ICAgcGtnL2xhZ3VuYSBcCisrICAgIHBrZy9wYWNrYWdlbWFuYWdlciBcCisrICAgIHBrZy9wb2xl bnRhIFwKKysgICAgcGtnL3BvbHljeWNsaWMgXAorKyAgICBwa2cvcmFkaXJvb3QgXAorKyAgICBw a2cvcmVzY2xhc3NlcyBcCisrICAgIHBrZy9zb3BodXMgXAorKyAgICBwa2cvdG9tbGliIFwKKysg ICAgcGtnL3V0aWxzIFwKKyAgICAgIiRHQVBfUk9PVCIvcGtnCisgCistIyBJbnN0YWxsIHRoZSBH QVAgc3RhcnR1cCBzY3JpcHQ7IGVuc3VyZSBpdCBpcyBleGVjdXRhYmxlCistc2RoX2luc3RhbGwg LVQgLi4vZ2FwICIkU0FHRV9CSU4vZ2FwIgorLWNobW9kICt4ICIkU0FHRV9ERVNURElSJFNBR0Vf QklOL2dhcCIKKy0KKy0jIENyZWF0ZSBzeW1saW5rcyB1bmRlciAkR0FQX1JPT1QgZm9yIHRoZXNl IGV4ZWN1dGFibGVzLCBhcyB0aGV5IGFyZSBleHBlY3RlZAorLSMgKGVzcGVjaWFsbHkgd2hlbiBi dWlsZGluZyBrZXJuZWwgcGFja2FnZXMpIHRvIGV4aXN0CistbG4gLXNmICIuLi8uLi9iaW4vZ2Fw LWJpbiIgIiRERVNURElSX0dBUF9ST09UL2dhcCIKKy1sbiAtc2YgIi4uLy4uL2Jpbi9nYWMiICIk REVTVERJUl9HQVBfUk9PVC9nYWMiCistCistIyBGaXggdGhlICRHQVBfUk9PVC9iaW4vPGFyY2g+ L3NyYyBzeW1saW5rIHRvIGJlIHJlbGF0aXZlIChvdGhlcndpc2UgaXQgbGlua3MKKy0jIHRvIHRo ZSBhY3R1YWwgcGF0aCBvZiB0aGUgc291cmNlcyBHQVAgd2FzIGNvbXBpbGVkIGZyb20pCistZm9y IHNyY2xpbmsgaW4gIiRERVNURElSX0dBUF9ST09UIi9iaW4vKi9zcmM7IGRvCistICAgIHJtIC1m ICIkc3JjbGluayIKKy0gICAgbG4gLXMgIi4uLy4uL3NyYyIgIiRzcmNsaW5rIgorLWRvbmUKKy0K Ky0jIEFkZGl0aW9uYWwgZml4dXBzIGZvciBzb21lIGZpbGVzIGFmdGVyIHRoZXkgaGF2ZSBiZWVu IGNvcGllZCBpbnRvIHRoZWlyCistIyBkZXN0aW5hdGlvbiBkaXJlY3RvcnkuICBnYWMgYW5kIHN5 c2luZm8uZ2FwIGFyZSBnZW5lcmF0ZWQgZmlsZXMgdGhhdCBjb250YWluCistIyBpbiB0aGVtIGhh cmQtY29kZWQgcmVmZXJlbmNlcyB0byB0aGUgR0FQIGJ1aWxkIGRpcmVjdG9yeSwgd2hpY2ggd2ls bCBzb29uCistIyBiZSBnb2luZyBhd2F5LiAgVGhpcyBicmVha3MgdGhlIGJ1aWxkIHRvb2xjaGFp biBmb3Igc29tZSBjb21waWxlZCBHQVAKKy0jIHBhY2thZ2VzLiAgV2UgbmVlZCB0byByZXBsYWNl IHRoZXNlIHBhdGhzIHdpdGggdGhlIGZpbmFsIEdBUF9ST09UIHBhdGguICBUaGUKKy0jIGJlbG93 IHdpbGwgd29yayBzbyBsb25nIGFzIG5laXRoZXIgb2YgdGhlc2UgcGF0aHMgY29udGFpbiAnfCcs IGFuZCBpZiB0aGV5IGRvCistIyB0aGVuIGdvZCBoZWxwIHlvdS4gIGh0dHBzOi8vdHJhYy5zYWdl bWF0aC5vcmcvdGlja2V0LzI3MjE4Cistc2VkIC1pIC1lICJzfCRHQVBfQlVJTERfUk9PVHwkR0FQ X1JPT1R8ZyIgXAorLSAgICAiJFNBR0VfREVTVERJUiRTQUdFX0JJTi9nYWMiICIkREVTVERJUl9H QVBfUk9PVC9zeXNpbmZvLmdhcCIgXAorLSAgICAiJERFU1RESVJfR0FQX1JPT1QvYmluL2dhcC5z aCIgIiRERVNURElSX0dBUF9ST09UL2RvYy9tYWtlX2RvYyIgfHwgXAorLSAgICBzZGhfZGllICJG YWlsZWQgdG8gZml4IHVwIGhhcmQtY29kZWQgcGF0aHMgaW4gR0FQIGJ1aWxkIHRvb2xzLiIKKy0K KyAjIFRPRE86IFRoaXMgc2VlbXMgdW5uZWNlc3NhcnktLXdlIGFyZSBhbHJlYWR5IGluc3RhbGxp bmcgYWxsIG9mIGRvYy8gdG8KKyAjIEdBUF9ST09ULCB3aGljaCBpcyBuZWNlc3NhcnkgZm9yIHNv bWUgZnVuY3Rpb25hbGl0eSBpbiBHQVAgdG8gd29yay4gIERvCisgIyB3ZSBuZWVkIHRoaXM/ICBN YXliZSBkb2MvZ2FwIGNvdWxkIGp1c3QgYmUgYSBzeW1saW5rIHRvIGdhcC9kb2M/PworZGlmZiAt LWdpdCBhL2J1aWxkL3BrZ3MvZ2FwL3Nwa2ctbGVnYWN5LXVuaW5zdGFsbCBiL2J1aWxkL3BrZ3Mv Z2FwL3Nwa2ctbGVnYWN5LXVuaW5zdGFsbAoraW5kZXggZDE3ZWI5MzllYjcuLmE4ZTVjNTllMWZi IDEwMDc1NQorLS0tIGEvYnVpbGQvcGtncy9nYXAvc3BrZy1sZWdhY3ktdW5pbnN0YWxsCisrKysg Yi9idWlsZC9wa2dzL2dhcC9zcGtnLWxlZ2FjeS11bmluc3RhbGwKK0BAIC00LDYgKzQsOCBAQCBy bSAtcmYgIiRTQUdFX0xPQ0FML2dhcC9nYXAtNC4iKgorIHJtIC1yZiAiJFNBR0VfU0hBUkUvZ2Fw IgorIHJtIC1mICIkU0FHRV9MT0NBTC9nYXAvbGF0ZXN0IgorIHJtIC1mICIkU0FHRV9MT0NBTC9i aW4vZ2FwIgorK3JtIC1mICIkU0FHRV9MT0NBTC9iaW4vZ2FjIgorIAorLSMgUmVtb3ZlIG9sZCBs aWJnYXAgaGVhZGVycworKyMgUmVtb3ZlIG9sZCBsaWJnYXAgaGVhZGVycyBhbmQgbGlicmFyeQor IHJtIC1yZiAiJFNBR0VfTE9DQUwvaW5jbHVkZS9nYXAiCisrcm0gLXJmICIkU0FHRV9MT0NBTC9s aWIvZ2FwIgorZGlmZiAtLWdpdCBhL2J1aWxkL3BrZ3MvZ2FwL3Nwa2ctcHJlcm0uaW4gYi9idWls ZC9wa2dzL2dhcC9zcGtnLXByZXJtLmluCitkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4 IDY2MWQ5MjYyMWZhLi4wMDAwMDAwMDAwMAorLS0tIGEvYnVpbGQvcGtncy9nYXAvc3BrZy1wcmVy bS5pbgorKysrIC9kZXYvbnVsbAorQEAgLTEsNiArMCwwIEBACistIyBUaGVzZSBnZW5lcmF0ZWQg ZmlsZXMgYXJlIHBsYWNlZCBpbiBkaXJlY3RvcnkgcHJvdmlkZWQgYnkgdGhlIFNQS0csIHNvCist IyBkZWxldGUgdGhlIGdlbmVyYXRlZCBmaWxlcyBmaXJzdCBzbyB0aGF0IHRoZWlyIHBhcmVudCBk aXJlY3RvcmllcyBjYW4gYmUKKy0jIHJlbW92ZWQgZHVyaW5nIGluc3RhbGxhdGlvbgorLUdBUF9S T09UPSIkU0FHRV9MT0NBTC9zaGFyZS9nYXAiCistcm0gLWYgIiRHQVBfUk9PVC9wa2cvYXRsYXNy ZXAvZGF0YWdlbnMvIiouKgorLXJtIC1mICIkR0FQX1JPT1QvcGtnL2F0bGFzcmVwL2RhdGF3b3Jk LyIqLioKK2RpZmYgLS1naXQgYS9idWlsZC9wa2dzL2dhcF9wYWNrYWdlcy9wYXRjaGVzL2NvaG9t b2xvLWdjYzEwLnBhdGNoIGIvYnVpbGQvcGtncy9nYXBfcGFja2FnZXMvcGF0Y2hlcy9jb2hvbW9s by1nY2MxMC5wYXRjaAorZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCBlNDVmZTdkOWM2 Zi4uMDAwMDAwMDAwMDAKKy0tLSBhL2J1aWxkL3BrZ3MvZ2FwX3BhY2thZ2VzL3BhdGNoZXMvY29o b21vbG8tZ2NjMTAucGF0Y2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDE1MCArMCwwIEBACistZGlm ZiAtLWdpdCBhL3BrZy9jb2hvbW9sby0xLjYuOC9zdGFuZGFsb25lL3Byb2dzLmQvY3JwMS5jIGIv cGtnL2NvaG9tb2xvLTEuNi44L3N0YW5kYWxvbmUvcHJvZ3MuZC9jcnAxLmMKKy1pbmRleCAzYmJk YzQ1Li43ZGY2OTlmIDEwMDY0NAorLS0tLSBhL3BrZy9jb2hvbW9sby0xLjYuOC9zdGFuZGFsb25l L3Byb2dzLmQvY3JwMS5jCistKysrIGIvcGtnL2NvaG9tb2xvLTEuNi44L3N0YW5kYWxvbmUvcHJv Z3MuZC9jcnAxLmMKKy1AQCAtOCw5ICs4LDggQEAgZXh0ZXJuIHNob3J0IHNwW10sKiptYXRbXSwq cHNwW10sKippbWNvc1tdLCoqY3Bjb1tdLGxvcmJbXSwKKy0gc2hvcnQgKmNzdCwqKmNwc3QsKioq Y2Rwc3QsKipzdnB0ciwqY3AsKnJlbDsKKy0gc2hvcnQgKnNwc3QsKipwc3BzdCwqKnBwdHIsKipj cHB0cixucHQsbmIsbnBoLG5waDIsbnBnLG5wZzIsCistICAgICAgIHJubyxvcm5vLGNvaF9pbmRl eCwqaW52ZzsKKy0tRklMRSAgKmlwLCpvcDsKKy0gCistLXZvaWQgc2Vla25sbiAodm9pZCkgeyB3 aGlsZSAoZ2V0YyhpcCkhPSdcbicpOyB9CistK3ZvaWQgc2Vla25sbiAoRklMRSAqaXApIHsgd2hp bGUgKGdldGMoaXApIT0nXG4nKTsgfQorLSAKKy0gLyogVGhpcyBwcm9ncmFtIGRpZmZlcnMgZnJv bSBtb3N0IG90aGVyIHBlcm11dGF0aW9uIHByb2dyYW1zIGluIHRoYXQgcGVybXMgYXJlCistICAg IGFsbCBzdG9yZWQgaW4gdGhlIHNpbmdsZSBhcnJheSBzcC4gU2NocmVpZXIgdmVjdG9ycyBhcmUg c3RvcmVkIGluIHRoZSBzaG9ydAorLUBAIC0yMywxMyArMjIsMTQgQEAgdm9pZCBzZWVrbmxuICh2 b2lkKSB7IHdoaWxlIChnZXRjKGlwKSE9J1xuJyk7IH0KKy0gaW50IAorLSBjcnByb2cxICh2b2lk KQorLSB7IHNob3J0ICpwYywqcWMsZXgsbmVnOyBpbnQgeDsKKy0rICBGSUxFICAqaXAsKm9wOwor LSAgIHNob3J0IGksaixrLGwsbSxuLGNsLHJsLCpwLG9jbCxpbSxwdCxwdDEscG4saXB0OworLSAg IGlmICgoaXA9Zm9wZW4oaW5mMiwiciIpKT09IDApCistICAgeyBmcHJpbnRmKHN0ZGVyciwiQ2Fu bm90IG9wZW4gJXMuXG4iLGluZjIpOyByZXR1cm4oLTEpO30KKy0gICBmc2NhbmYoaXAsIiVoZCVo ZCVoZCVoZCIsJm5wdCwmbnBoLCZuYiwmayk7CistICAgaWYgKG5iPj1tYikge2ZwcmludGYoc3Rk ZXJyLCJuYiB0b28gYmlnLiBJbmNyZWFzZSBNQi5cbiIpOyByZXR1cm4oLTEpO30KKy0gICBpZiAo azw9Mikge2ZwcmludGYoc3RkZXJyLCJpbmYyIGhhcyBpbGxlZ2FsIGZvcm1hdC5cbiIpOyByZXR1 cm4oLTEpOyB9CistLSAgc2Vla25sbigpOyBzZWVrbmxuKCk7CistKyAgc2Vla25sbihpcCk7IHNl ZWtubG4oaXApOworLSAgIGZvciAoaT0xO2k8PW5iO2krKykgZnNjYW5mKGlwLCIlaGQiLGxvcmIr aSk7CistICAgcHB0cj1wc3AtMTsgcHNwc3Q9cHNwK25waDsgc3ZwdHI9Y3BzcC0xOyAgY3BzdD1j cHNwK25iOworLSAgIGludmc9c3A7IG5waDI9MipucGg7IHNwc3Q9c3ArbnBoMjsKKy1AQCAtMzcs NyArMzcsNyBAQCBjcnByb2cxICh2b2lkKQorLSAgIHsgcHB0cltpXT1zcHN0KyhpLTEpKm5wdC0x OyBwPXBwdHJbaV07CistICAgICBmb3IgKGo9MTtqPD1ucHQ7aisrKSB7ZnNjYW5mKGlwLCIlaGQi LCZrKTsgcFtrXT1qOyB9CistICAgICBpbnZnWzIqaS0yXT0yKmktMTsgaW52Z1syKmktMV09Mipp LTI7CistLSAgICBzZWVrbmxuKCk7CistKyAgICBzZWVrbmxuKGlwKTsKKy0gICB9CistICAgc3Bz dCs9KG5wdCpucGgpOworLSAgIGZvciAoaT0xO2k8PW5iO2krKykKKy1AQCAtNzUsNyArNzUsNyBA QCBjcnByb2cxICh2b2lkKQorLSAgIHN0cmNweShpbmYxLGluZjApOyBzdHJjYXQoaW5mMSwiLnJl bCIpOworLSAgIGlmICgoaXA9Zm9wZW4oaW5mMSwiciIpKT09MCkKKy0gICB7IGZwcmludGYoc3Rk ZXJyLCJDYW5ub3Qgb3BlbiAlcy5cbiIsaW5mMSk7IHJldHVybigtMSk7fQorLS0gIGZzY2FuZihp cCwiJWhkJWhkIiwmaywmcm5vKTsgc2Vla25sbigpOworLSsgIGZzY2FuZihpcCwiJWhkJWhkIiwm aywmcm5vKTsgc2Vla25sbihpcCk7CistICAgb3A9Zm9wZW4ob3V0ZnQsInciKTsKKy0gLyogTm93 IHdlIGhhdmUgcmVhZCBldmVyeXRoaW5nIGluLCBhbmQgdGhlIGNvbXB1dGF0aW9uIGNhbiBzdGFy dCAqLworLSAgIG9ybm89MDsKKy1kaWZmIC0tZ2l0IGEvcGtnL2NvaG9tb2xvLTEuNi44L3N0YW5k YWxvbmUvcHJvZ3MuZC9ucStjaGZucy5jIGIvcGtnL2NvaG9tb2xvLTEuNi44L3N0YW5kYWxvbmUv cHJvZ3MuZC9ucStjaGZucy5jCistaW5kZXggYTczOTZiMi4uNjU4NDk2ZiAxMDA2NDQKKy0tLS0g YS9wa2cvY29ob21vbG8tMS42Ljgvc3RhbmRhbG9uZS9wcm9ncy5kL25xK2NoZm5zLmMKKy0rKysg Yi9wa2cvY29ob21vbG8tMS42Ljgvc3RhbmRhbG9uZS9wcm9ncy5kL25xK2NoZm5zLmMKKy1AQCAt MjAsOCArMjAsNiBAQCBzaG9ydCAgbWV4cD1NRVhQLG1jbD1NQ0wsbm8scmVsW1JTUF0sd3RbTUVY UF0sZXhwLCpycGYsKnJwYiwKKy0gZXh0ZXJuIHNob3J0ICBwcmltZSxkaW0sKnNwdiwqKnNwbSxt c3BhY2VbXSwqdmVjW10sKiptYXRbXSxjcFtdLHBpbnZbXSxvcG1hdHMsCistICAgICAgICAgbW0s bXY7CistIGV4dGVybiBpbnQgbXNwOworLS1GSUxFICppcCwqb3A7CistLQorLSAKKy0gaW50IAor LSBjYWxjbWF0cyAodm9pZCkKKy1AQCAtNTksNyArNTcsNyBAQCBjYWxjbWF0cyAodm9pZCkKKy0g ICB9CistICAgZm9yIChpPTE7aTw9ZXhwO2krKykgdHJhbnMobWF0W2krZXhwXSxtYXRbaV0pOwor LSAgIGlmIChvcG1hdHMpCistLSAgeyBvcD1mb3BlbihvdXRmLCJ3Iik7CistKyAgeyBGSUxFICpv cD1mb3BlbihvdXRmLCJ3Iik7CistICAgICBmcHJpbnRmKG9wLCIlNGQlNGQlNGRcbiIscHJpbWUs ZGltLGV4cCk7CistICAgICBmb3IgKGk9MTtpPD1leHA7aSsrKSBwcmludG1hdChtYXRbaV0pOyAK Ky0gICAgIGZjbG9zZShvcCk7CistQEAgLTcxLDYgKzY5LDcgQEAgaW50CistIHJkbWF0cyAodm9p ZCkKKy0gLyogcmVhZHMgbWF0cmljZXMgb2YgZ2VuZXJhdG9ycyBvZiBQICovCistIHsgc2hvcnQg aTsgaW50IHF1b3Q7CistKyAgRklMRSAqaXA7CistICAgaXA9Zm9wZW4oaW5mNCwiciIpOworLSAg IGlmIChpcD09MCkKKy0gICB7IGZwcmludGYoc3RkZXJyLCJDYW5ub3Qgb3BlbiAlc1xuICIsaW5m NCk7IHJldHVybigtMSk7IH0KKy1AQCAtOTAsMTIgKzg5LDEyIEBAIHJkbWF0cyAodm9pZCkKKy0g ICBmY2xvc2UoaXApOworLSAgIHJldHVybigwKTsKKy0gfQorLS1GSUxFICppcDsKKy0gCistIGlu dCAKKy0gaW5ncCAoaW50IGlucCkKKy0gLyogUmVhZCBpbiBvdXRwdXQgb2YgcmVzcGNydW4gLXMg Ki8KKy0geyBzaG9ydCBpLGosayxsLG0sKm9ycGYsKipwY3A7CistKyAgRklMRSAqaXA7CistICAg aXA9Zm9wZW4oaW5mMywiciIpOworLSAgIGlmIChpcD09MCkgeyBmcHJpbnRmKHN0ZGVyciwiQ2Fu bm90IG9wZW4gJXNcbiIsaW5mMyk7IHJldHVybigtMSk7IH0KKy0gICBmc2NhbmYoaXAsIiVoZCVo ZCVoZCVoZCVoZCVoZCIsJnByaW1lLCZleHAsJmksJm5vLCZqLCZtKTsKKy1kaWZmIC0tZ2l0IGEv cGtnL2NvaG9tb2xvLTEuNi44L3N0YW5kYWxvbmUvcHJvZ3MuZC9ucW1mbnMuYyBiL3BrZy9jb2hv bW9sby0xLjYuOC9zdGFuZGFsb25lL3Byb2dzLmQvbnFtZm5zLmMKKy1pbmRleCAwODk2NTUxLi42 ODQxYmM4IDEwMDY0NAorLS0tLSBhL3BrZy9jb2hvbW9sby0xLjYuOC9zdGFuZGFsb25lL3Byb2dz LmQvbnFtZm5zLmMKKy0rKysgYi9wa2cvY29ob21vbG8tMS42Ljgvc3RhbmRhbG9uZS9wcm9ncy5k L25xbWZucy5jCistQEAgLTksNyArOSw2IEBAIGV4dGVybiBzaG9ydCAgaW50ZXhwLG1leHAsbW5n LHdrc3AsCistICAgICAgICBzcHVnZW5bXSwqdGxpbnRnW107CistIGV4dGVybiBpbnQgcHRyc3As cnNwOworLSBzaG9ydCAgZmFjOworLS1GSUxFICppcCwqb3A7CistIAorLSBpbnQgCistIGluZ3Ag KHZvaWQpCistQEAgLTE4LDYgKzE3LDcgQEAgaW5ncCAodm9pZCkKKy0gICAgb2YgbnFydW4sIGFu ZCB0YWlscyBhcmUgYWxzbyByZWFkIGluLgorLSAqLworLSB7IHNob3J0IGksaixrLGwsbSx4LHks bm8sKm9ycGYsKm9ycGIsKipwY3A7ICBjaGFyIHRhaWxzOworLSsgIEZJTEUgKmlwOworLSAgIGlm ICgoaXA9Zm9wZW4oaW5mMSwiciIpKT09MCkKKy0gICB7IGZwcmludGYoc3RkZXJyLCJDYW5ub3Qg b3BlbiAlcy5cbiIsaW5mMSk7IHJldHVybigtMSk7IH0KKy0gICBmc2NhbmYoaXAsIiVoZCVoZCVo ZCVoZCVoZCVoZCIsJnByaW1lLCZleHAsJm5uZywmbm8sJmNsYXNzLCZtKTsKKy1AQCAtODksNiAr ODksNyBAQCBpbnQKKy0gb3V0Z3AgKHZvaWQpCistIC8qIFRoZSBQQ1AgaXMgb3V0cHV0LCB0b2dl dGhlciB3aXRoIHRhaWxzICovCistIHsgc2hvcnQgaSxrLGwsKipwY3AsKmIsKmUsKmM7CistKyAg RklMRSAqb3A7CistICAgb3A9Zm9wZW4ob3V0ZiwidyIpOworLSAgIGZwcmludGYob3AsIiU0ZCU0 ZCU0ZCU0ZCU0ZCU0ZFxuIixwcmltZSxleHAsbm5nLGV4cCxjbGFzcywxKTsKKy0gICBmb3IgKGk9 MTtpPD1leHA7aSsrKSBmcHJpbnRmKG9wLCIlNGQiLHd0W2ldKTsgZnByaW50ZihvcCwiXG4iKTsK Ky1AQCAtMzc5LDcgKzM4MCw3IEBAIHJlc3RhcnQ6CistICAgICBubmctLTsgbW5uZy0tOyBlbmV4 cG50LS07CistICAgICBpZiAobm5nPT0wKQorLSAgICAgeyBpZiAoZ2FwKQorLS0gICAgICB7IG9w PWZvcGVuKG91dGZtLCJ3Iik7IGZwcmludGYob3AsIkNPSE9NT0xPLk11bHRpcGxpZXI6PVtdO1xu Iik7CistKyAgICAgIHsgRklMRSAqb3A9Zm9wZW4ob3V0Zm0sInciKTsgZnByaW50ZihvcCwiQ09I T01PTE8uTXVsdGlwbGllcjo9W107XG4iKTsKKy0gICAgICAgICBmY2xvc2Uob3ApOworLSAgICAg ICAgIHByaW50ZigiQWxsIG5ldyBnZW5lcmF0b3JzIGVsaW1pbmF0ZWQuIE11bHRpcGxpZXIgaXMg dHJpdmlhbC5cbiIpOworLSAgICAgICB9CistZGlmZiAtLWdpdCBhL3BrZy9jb2hvbW9sby0xLjYu OC9zdGFuZGFsb25lL3Byb2dzLmQvbnFtcC5jIGIvcGtnL2NvaG9tb2xvLTEuNi44L3N0YW5kYWxv bmUvcHJvZ3MuZC9ucW1wLmMKKy1pbmRleCAwMWNmOTE0Li4wMTQ0ODgzIDEwMDY0NAorLS0tLSBh L3BrZy9jb2hvbW9sby0xLjYuOC9zdGFuZGFsb25lL3Byb2dzLmQvbnFtcC5jCistKysrIGIvcGtn L2NvaG9tb2xvLTEuNi44L3N0YW5kYWxvbmUvcHJvZ3MuZC9ucW1wLmMKKy1AQCAtOSw3ICs5LDYg QEAgZXh0ZXJuIHNob3J0ICBpbnRleHAsbW5nLG1leHAsd2tzcCwKKy0gICAgICAgIHNwdWdlbltd LCppbnRnW10sKmltaW50Z1tdLCp0bGludGdbXTsKKy0gZXh0ZXJuIGludCBwdHJzcCxyc3A7Cist IHNob3J0ICAqd2YsKndjOyBjaGFyIG5vcm07CistLUZJTEUgKmlwLCpvcDsKKy0gCistIC8qIFRo ZSBkYXRhIHN0cnVjdHVyZXMgZm9yIHRoaXMgcHJvZ3JhbSBhbmQgZm9yIG5xcnVuIGFyZSBzaW1p bGFyLgorLSAgICBkMSBhbmQgZDIgY29udGFpbiBkZWZpbml0aW9ucyBvZiBnZW5lcmF0b3JzLiAo RGVmLiBjb21lcyBmcm9tIGNvbW11dGF0b3IKKy1AQCAtMzUsNiArMzQsNyBAQCBucW1wcm9nICh2 b2lkKQorLSB7IHNob3J0IGksaixrLGwsbSxkLCpnaSwqZ2osKnRpLCp0aixjbCxkZWYsKnBzLCpw ZiwqKmRwLCpucnBiLCpwLCpvcnBmLCpvcnBiLAorLSAgICAgICAgIG5iLG5wLGsxLCpybm8sKmNv dnJlbCwqKnBnZW4sdGRlZixzZ247CistICAgY2hhciBudDsKKy0rICBGSUxFICppcCwqb3A7Cist ICAgaWYgKGluZ3AoKSA9PSAtMSkge2ZwcmludGYoc3RkZXJyLCJJbnB1dCBlcnJvci5cbiIpOyBy ZXR1cm4oLTEpOyB9CistICAgZWV4cG50PWV4cG50K2V4cDsgZW5leHBudD1uZXhwbnQrbm5nOwor LSAKK2RpZmYgLS1naXQgYS9idWlsZC9wa2dzL2dhcF9wYWNrYWdlcy9wYXRjaGVzL2d1YXZhX2xl b25faW5jbHVkZXMucGF0Y2ggYi9idWlsZC9wa2dzL2dhcF9wYWNrYWdlcy9wYXRjaGVzL2d1YXZh X2xlb25faW5jbHVkZXMucGF0Y2gKK2RlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggY2Rj ZDE5Y2MzZTguLjAwMDAwMDAwMDAwCistLS0gYS9idWlsZC9wa2dzL2dhcF9wYWNrYWdlcy9wYXRj aGVzL2d1YXZhX2xlb25faW5jbHVkZXMucGF0Y2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDEzICsw LDAgQEAKKy0tLS0gYS9wa2cvZ3VhdmEtMy4xNS9zcmMvbGVvbi9zcmMvZ2VuZXJhdGUuYwlTYXQg RmViIDI5IDA5OjAyOjEwIDIwMjAKKy0tLS0gYi9wa2cvZ3VhdmEtMy4xNS9zcmMvbGVvbi9zcmMv Z2VuZXJhdGUuYwlUaHUgU2VwIDI0IDEzOjU4OjM2IDIwMjAKKy0qKioqKioqKioqKioqKioKKy0q KiogMTE1LDEyMCAqKioqCistLS0tIDExNSwxMjIgLS0tLQorLSAgI2luY2x1ZGUgImdyb3VwaW8u aCIKKy0gICNpbmNsdWRlICJlbnVtLmgiCistICAjaW5jbHVkZSAic3RvcmFnZS5oIgorLSsgI2lu Y2x1ZGUgImNoYmFzZS5oIgorLSsgI2luY2x1ZGUgImluZm9ybS5oIgorLSAgCistICAjaWZkZWYg QUxUX1RJTUVfSEVBREVSCistICAjaW5jbHVkZSAiY3B1dGltZS5oIgorZGlmZiAtLWdpdCBhL2J1 aWxkL3BrZ3MvZ2FwX3BhY2thZ2VzL3Nwa2ctaW5zdGFsbC5pbiBiL2J1aWxkL3BrZ3MvZ2FwX3Bh Y2thZ2VzL3Nwa2ctaW5zdGFsbC5pbgoraW5kZXggMTY4ZTZiMTE1MzIuLjZkZmYxODJhNDhmIDEw MDY0NAorLS0tIGEvYnVpbGQvcGtncy9nYXBfcGFja2FnZXMvc3BrZy1pbnN0YWxsLmluCisrKysg Yi9idWlsZC9wa2dzL2dhcF9wYWNrYWdlcy9zcGtnLWluc3RhbGwuaW4KK0BAIC0xLDQgKzEsNCBA QAorLUdBUF9ST09UPSIkU0FHRV9MT0NBTC9zaGFyZS9nYXAiCisrR0FQX1JPT1Q9IiRTQUdFX0xP Q0FML2xpYi9nYXAiCisgUEtHX0RJUj0iJEdBUF9ST09UL3BrZyIKKyAKKyBQS0dfU1JDX0RJUj0i JChwd2QpL3NyYy9wa2ciCitAQCAtMTEsMzMgKzExLDMxIEBAIGNkICIkUEtHX1NSQ19ESVIiCisg IyAgICAoR0FQIDQuOC42IHN0aWxsIGhhZCBpdCwgYnV0IHRoaXMgaXMgZ29uZSBpbiA0LjEwKQor IAorIHNkaF9pbnN0YWxsIFwKKy0gICAgYWNsaWItKiBcCistICAgIEF1dG9Eb2MtKiBcCistICAg IGNvcmVsZy0qIFwKKy0gICAgY3JpbWUtKiBcCisrICAgIGFjbGliIFwKKysgICAgY29yZWxnIFwK KysgICAgY3JpbWUgXAorICAgICBjcnlzdCBcCisgICAgIGNyeXN0Y2F0IFwKKy0gICAgZGVzaWdu LSogXAorKyAgICBkZXNpZ24gXAorICAgICBnYm5wIFwKKy0gICAgZ2Vuc3MtKiBcCistICAgIGhh cC0qIFwKKy0gICAgaGFwY3J5c3QtKiBcCistICAgIGhlY2tlLSogXAorLSAgICBpbWFnZXMtKiBc CistICAgIGxpZWFsZ2RiLSogXAorLSAgICBsaWVwcmluZy0qIFwKKy0gICAgbGllcmluZy0qIFwK Ky0gICAgbG9vcHMtKiBcCistICAgIE1hcENsYXNzLSogXAorLSAgICBwb2x5bWFraW5nLSogXAor LSAgICBxcGEtKiBcCistICAgIHF1YWdyb3VwLSogXAorLSAgICByYWRpcm9vdC0qIFwKKy0gICAg cmVwc24tKiBcCistICAgIHNsYS0qIFwKKy0gICAgc29uYXRhLSogXAorLSAgICBUb3JpYy0qIFwK Ky0gICAgdXRpbHMtKiBcCisrICAgIGdlbnNzIFwKKysgICAgaGFwIFwKKysgICAgaGFwY3J5c3Qg XAorKyAgICBoZWNrZSBcCisrICAgIGltYWdlcyBcCisrICAgIGxpZWFsZ2RiIFwKKysgICAgbGll cHJpbmcgXAorKyAgICBsaWVyaW5nIFwKKysgICAgbG9vcHMgXAorKyAgICBtYXBjbGFzcyBcCisr ICAgIHBvbHltYWtpbmcgXAorKyAgICBxcGEgXAorKyAgICBxdWFncm91cCBcCisrICAgIHJlcHNu IFwKKysgICAgc2luZ3VsYXIgXAorKyAgICBzbGEgXAorKyAgICBzb25hdGEgXAorKyAgICB0b3Jp YyBcCisgICAgICIkUEtHX0RJUiIKKyAKKyBpbnN0YWxsX2NvbXBpbGVkX3BrZygpCitAQCAtNDUs MjcgKzQzLDIzIEBAIGluc3RhbGxfY29tcGlsZWRfcGtnKCkKKyAgICAgbG9jYWwgcGtnPSIkMSIK KyAgICAgIyBJbnN0YWxsIHRoZSBiaW4vIGRpciAod2hlcmUgY29tcGlsZWQgbW9kdWxlcyBzaG91 bGQgZW5kIHVwKQorICAgICAjIHVuZGVyIDxwcmVmaXg+L2xpYi9nYXA7IHdlIHRoZW4gc3ltbGlu ayB0byBpdCBsYXRlcgorLSAgICBzZGhfaW5zdGFsbCBiaW4gIiRTQUdFX0xPQ0FML2xpYi9nYXAv cGtnLyRwa2ciCisrICAgIHNkaF9pbnN0YWxsICogIiRTQUdFX0xPQ0FML2xpYi9nYXAvcGtnLyRw a2ciCisgCisrICAgICMgVE9ETzoKKyAgICAgIyBDbGVhbiB1cCBhbnkgYnVpbGQgYXJ0aWZpY3Rz IGJlZm9yZSBpbnN0YWxsaW5nIHRoZSByZXN0IG9mIHRoZSBwYWNrYWdlCisgICAgICMgQWxzbyBy ZW1vdmUgY29uZmlndXJlL01ha2VmaWxlcworICAgICAjIE5vdGU6IE5vbmUsIGlmIGFueSBvZiB0 aGUgcGFja2FnZXMgcmVhbGx5IGhhdmUgYSBwcm9wZXIgaW5zdGFsbCB0YXJnZXQKKy0gICAgbWFr ZSBjbGVhbiAgIyBXb3JrcyBmb3Igc29tZSBwYWNrYWdlcyBidXQgbm90IGFsbAorLSAgICBybSAt cmYgYmluLworLSAgICBybSAtcmYgY29uZmlndXJlIGNvbmZpZ3VyZS4qIGNvbmZpZy4qIGF1dG9n ZW4uc2ggKi5tNCBNYWtlZmlsZSogbTQvCisrICAgICNtYWtlIGNsZWFuICAjIFdvcmtzIGZvciBz b21lIHBhY2thZ2VzIGJ1dCBub3QgYWxsCisrICAgICNybSAtcmYgYmluLworKyAgICAjcm0gLXJm IGNvbmZpZ3VyZSBjb25maWd1cmUuKiBjb25maWcuKiBhdXRvZ2VuLnNoICoubTQgTWFrZWZpbGUq IG00LworIAorLSAgICAjIENyZWF0ZSB0aGUgYmluLyBzeW1saW5rCistICAgIGxuIC1zICIkU0FH RV9MT0NBTC9saWIvZ2FwL3BrZy8kcGtnL2JpbiIgYmluCistCistICAgICMgSW5zdGFsbCB0aGUg cmVzdCBvZiB0aGUgcGFja2FnZSBmaWxlcworLSAgICBzZGhfaW5zdGFsbCAqICIkUEtHX0RJUi8k cGtnIgorIH0KKyAKKyAjIEJ1aWxkIGFuZCBpbnN0YWxsIGNvbXBpbGVkIHBhY2thZ2VzOgorICMK KyAjIFRoZXNlIHBhY2thZ2VzIGhhdmUgYW4gb2xkIC4vY29uZmlndXJlIHRoYXQgdGFrZSB0aGUg R0FQX1JPT1QgYXMgYSBwb3NpdGlvbmFsCisgIyBhcmd1bWVudAorLWZvciBwa2cgaW4gY29ob21v bG8tKiBjcnlwdGluZy0qIGdyYXBlLSogZ3VhdmEtKiBvcmItKiBkYXRhc3RydWN0dXJlcy0qCisr Zm9yIHBrZyBpbiBjb2hvbW9sbyBjcnlwdGluZyBncmFwZSBndWF2YSBvcmIgZGF0YXN0cnVjdHVy ZXMKKyBkbworICAgICBlY2hvICJCdWlsZGluZyBHQVAgcGFja2FnZSAkcGtnIgorICAgICBDRkxB R1M9IiRDRkxBR1MgLVduby1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbiIKK0BAIC05MSw3 ICs4NSw3IEBAIHBhcmFycj0oICIgIiAiICIgIi0td2l0aC1leHRlcm5hbC1wbGFuYXJpdHkiICIt LXdpdGgtZXh0ZXJuYWwtbGlic2VtaWdyb3VwcyIgKQorICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwor IAorIHBhcmluZD0wCistZm9yIHBrZyBpbiBucS0qIGlvLSogZGlncmFwaHMtKiBzZW1pZ3JvdXBz LSoKKytmb3IgcGtnIGluIG5xIGlvIGRpZ3JhcGhzIHNlbWlncm91cHMKKyBkbworICAgICBlY2hv ICJCdWlsZGluZyBHQVAgcGFja2FnZSAkcGtnIgorICAgICBjZCAiJFBLR19TUkNfRElSLyRwa2ci CitkaWZmIC0tZ2l0IGEvYnVpbGQvcGtncy9saWJzZW1pZ3JvdXBzL2NoZWNrc3Vtcy5pbmkgYi9i dWlsZC9wa2dzL2xpYnNlbWlncm91cHMvY2hlY2tzdW1zLmluaQoraW5kZXggNjJjNDI2ODUxNWYu LjRlMTNhMzZjYjM1IDEwMDY0NAorLS0tIGEvYnVpbGQvcGtncy9saWJzZW1pZ3JvdXBzL2NoZWNr c3Vtcy5pbmkKKysrKyBiL2J1aWxkL3BrZ3MvbGlic2VtaWdyb3Vwcy9jaGVja3N1bXMuaW5pCitA QCAtMSw1ICsxLDUgQEAKKyB0YXJiYWxsPWxpYnNlbWlncm91cHMtVkVSU0lPTi50YXIuZ3oKKy1z aGExPTJiMTZjMDk1Y2M1ZmZkM2Y3N2E3MWRmYmY0OGNjZTE4OGUwNTRjMDMKKy1tZDU9NzA4MmNh ZGNmN2ExOTVjY2I5MzE3NWNkNzJiNmRiOTUKKy1ja3N1bT0xNTAxMDIyMzU4Cisrc2hhMT04NjM3 NTgyNGI0N2NlNGIwZTIzNTcwMTIyZTg3M2Y2NzEzNmQwYzBhCisrbWQ1PWZmNzlhZDVmYmM4YmZl YjY0ZDQ4ZmFhZjI0MTA2Yjk4CisrY2tzdW09Mjg0NTA0NTQ1NQorIHVwc3RyZWFtX3VybD1odHRw czovL2dpdGh1Yi5jb20vbGlic2VtaWdyb3Vwcy9saWJzZW1pZ3JvdXBzL3JlbGVhc2VzL2Rvd25s b2FkL3ZWRVJTSU9OL2xpYnNlbWlncm91cHMtVkVSU0lPTi50YXIuZ3oKK2RpZmYgLS1naXQgYS9i dWlsZC9wa2dzL2xpYnNlbWlncm91cHMvcGFja2FnZS12ZXJzaW9uLnR4dCBiL2J1aWxkL3BrZ3Mv bGlic2VtaWdyb3Vwcy9wYWNrYWdlLXZlcnNpb24udHh0CitpbmRleCA5MDg0ZmEyZjcxNi4uZjkw YjFhZmMwODIgMTAwNjQ0CistLS0gYS9idWlsZC9wa2dzL2xpYnNlbWlncm91cHMvcGFja2FnZS12 ZXJzaW9uLnR4dAorKysrIGIvYnVpbGQvcGtncy9saWJzZW1pZ3JvdXBzL3BhY2thZ2UtdmVyc2lv bi50eHQKK0BAIC0xICsxIEBACistMS4xLjAKKysyLjMuMgorZGlmZiAtLWdpdCBhL2J1aWxkL3Br Z3MvbGlic2VtaWdyb3Vwcy9zcGtnLWluc3RhbGwuaW4gYi9idWlsZC9wa2dzL2xpYnNlbWlncm91 cHMvc3BrZy1pbnN0YWxsLmluCitpbmRleCAyYWFmMGU5OTA0My4uMTI4YjU0ZDJmOTkgMTAwNjQ0 CistLS0gYS9idWlsZC9wa2dzL2xpYnNlbWlncm91cHMvc3BrZy1pbnN0YWxsLmluCisrKysgYi9i dWlsZC9wa2dzL2xpYnNlbWlncm91cHMvc3BrZy1pbnN0YWxsLmluCitAQCAtMSw0ICsxLDQgQEAK KyBjZCBzcmMKKy1zZGhfY29uZmlndXJlCisrc2RoX2NvbmZpZ3VyZSAtLWRpc2FibGUtZWlnZW4K KyBzZGhfbWFrZQorIHNkaF9tYWtlX2luc3RhbGwKK2RpZmYgLS1naXQgYS9idWlsZC9wa2dzL3Np bmd1bGFyL3Nwa2ctY29uZmlndXJlLm00IGIvYnVpbGQvcGtncy9zaW5ndWxhci9zcGtnLWNvbmZp Z3VyZS5tNAoraW5kZXggZDRkMTQ1ZGVmZTMuLjZhODU2MzFmNjI0IDEwMDY0NAorLS0tIGEvYnVp bGQvcGtncy9zaW5ndWxhci9zcGtnLWNvbmZpZ3VyZS5tNAorKysrIGIvYnVpbGQvcGtncy9zaW5n dWxhci9zcGtnLWNvbmZpZ3VyZS5tNAorQEAgLTksNTIgKzksNyBAQCBTQUdFX1NQS0dfQ09ORklH VVJFKFtzaW5ndWxhcl0sIFsKKyAgICAgICAgQUNfTVNHX0NIRUNLSU5HKFt0aGF0IFNpbmd1bGFy J3MgaGVscCBpcyB3b3JraW5nXSkKKyAgICAgICAgQVNfSUYoW3Rlc3QgeGBwcmludGYgInN5c3Rl bShcIi0tYnJvd3NlclwiLCBcImJ1aWx0aW5cIik7IFxuIGhlbHA7IiB8IFNpbmd1bGFyIDI+JjEg fCBncmVwICJlcnJvciBvY2N1cnJlZCJgID0geF0sIFsKKyAgICAgICAgIEFDX01TR19SRVNVTFQo eWVzKQorLSAgICAgICAgZG5sIFdlIGhhdmUgU2luZ3VsYXIuIE5vdyBkZXRlcm1pbmUgdGhlIHNo YXJlZCBsaWJyYXJ5IHBhdGggb24KKy0gICAgICAgIGRubCBwbGF0Zm9ybXMgb24gd2hpY2ggc2Fn ZS5saWJzLnNpbmd1bGFyIG5lZWRzIHRvIHJlbG9hZCB0aGUgbGlicmFyeSB3aXRoIFJUTERfR0xP QkFMLgorLSAgICAgICAgQVNfQ0FTRShbJGhvc3Rfb3NdLAorLSAgICAgICAgICBbY3lnd2luKl0s IFtkbmwgTm90aGluZyB0byBkbworLSAgICAgICAgICAgICAgICAgICAgIF0sCistICAgICAgICAg ICAgICAgICAgICAgW2RubCBVc2UgcGtnLWNvbmZpZyB0byBnZXQgc2luZ3VsYXIncyBsaWJkaXIg d2hpbGUgd2UncmUgYXQgaXQuIEFzIGEKKy0gICAgICAgICAgICAgICAgICAgICAgZG5sIG1vcmFs IGNvbXByb21pc2UgZm9yIHVzaW5nIHBrZy1jb25maWcsIHRoaXMgdWx0aW1hdGVseSBhbGxvd3Mg dXMKKy0gICAgICAgICAgICAgICAgICAgICAgZG5sIHRvIHBhc3MgYW4gYWJzb2x1dGUgcGF0aCB0 byBkbG9wZW4oKSwgd2hpY2ggaXMgdGhlIG9ubHkgYXBwcm9hY2gKKy0gICAgICAgICAgICAgICAg ICAgICAgZG5sIHRoYXQgUE9TSVggZ3VhcmFudGVlcyB3aWxsIHdvcmsuCistICAgICAgICAgICAg ICAgICAgICAgIFBLR19DSEVDS19WQVIoW1NJTkdVTEFSX0xJQl9ESVJdLCBbU2luZ3VsYXJdLCBb bGliZGlyXSkKKy0gICAgICAgICAgICAgICAgICAgICAgZG5sIFRoZSBhY2xfc2hsaWJleHQgdmFy aWFibGUgaXMgc2V0IGluIHRoZSB0b3AtbGV2ZWwgY29uZmlndXJlLmFjLgorLSAgICAgICAgICAg ICAgICAgICAgICBBQ19MQU5HX1BVU0goQykKKy0gICAgICAgICAgICAgICAgICAgICAgT1JJR19M SUJTPSIke0xJQlN9IgorLSAgICAgICAgICAgICAgICAgICAgICBMSUJTPSIke0xJQlN9IC1sZGwi CistICAgICAgICAgICAgICAgICAgICAgIEFDX01TR19DSEVDS0lORyhbaWYgd2UgY2FuIGRsb3Bl bigkTElCU0lOR1VMQVJfUEFUSCldKQorLSAgICAgICAgICAgICAgICAgICAgICBMSUJTSU5HVUxB Ul9QQVRIPSIke1NJTkdVTEFSX0xJQl9ESVJ9L2xpYlNpbmd1bGFyLiR7YWNsX3NobGliZXh0fSIK Ky0KKy0gICAgICAgICAgICAgICAgICAgICAgZG5sIGlmIHdlIGNhbiBkbG9wZW4oKSBpdCwgc3Vi c3RpdHV0ZSB0aGUgbmFtZSBmb3Igc2FnZV9jb25mOworLSAgICAgICAgICAgICAgICAgICAgICBk bmwgb3RoZXJ3aXNlLCBmYWxsIGJhY2sgdG8gdXNpbmcgdGhlIFNQS0cuCistICAgICAgICAgICAg ICAgICAgICAgIEFDX1JVTl9JRkVMU0UoCistICAgICAgICAgICAgICAgICAgICAgICAgW0FDX0xB TkdfUFJPR1JBTSgKKy0gICAgICAgICAgICAgICAgICAgICAgICAgIFtbI2luY2x1ZGUgPGRsZmNu Lmg+XV0sCistICAgICAgICAgICAgICAgICAgICAgICAgICBbW3ZvaWQqIGggPSBkbG9wZW4oIiR7 TElCU0lOR1VMQVJfUEFUSH0iLCBSVExEX0xBWlkgfCBSVExEX0dMT0JBTCk7CistICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGlmIChoID09IDApIHsgcmV0dXJuIDE7IH0gZWxzZSB7IHJldHVy biBkbGNsb3NlKGgpOyB9XV0KKy0gICAgICAgICAgICAgICAgICAgICAgICApXSwgWworLSAgICAg ICAgICAgICAgICAgICAgICAgICAgQUNfTVNHX1JFU1VMVCh5ZXMpCistICAgICAgICAgICAgICAg ICAgICAgICAgXSwgWworLSAgICAgICAgICAgICAgICAgICAgICAgICAgZG5sIHRyeSBEZWJpYW4t c3BlY2lmaWMgbmFtZQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgTElCU0lOR1VMQVJfUEFU SD0iJHtTSU5HVUxBUl9MSUJfRElSfS9saWJzaW5ndWxhci1TaW5ndWxhci4ke2FjbF9zaGxpYmV4 dH0iCistICAgICAgICAgICAgICAgICAgICAgICAgICBBQ19SVU5fSUZFTFNFKAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgIFtBQ19MQU5HX1BST0dSQU0oCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBbWyNpbmNsdWRlIDxkbGZjbi5oPl1dLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgW1t2b2lkKiBoID0gZGxvcGVuKCIke0xJQlNJTkdVTEFSX1BBVEh9IiwgUlRMRF9M QVpZIHwgUlRMRF9HTE9CQUwpOworLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAo aCA9PSAwKSB7IHJldHVybiAxOyB9IGVsc2UgeyByZXR1cm4gZGxjbG9zZShoKTsgfV1dCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgKV0sIFsKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEFDX01TR19SRVNVTFQoeWVzKQorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sIFsK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgQUNfTVNHX1JFU1VMVChubykKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2FnZV9zcGtnX2luc3RhbGxfc2luZ3VsYXI9eWVzCistICAg ICAgICAgICAgICAgICAgICAgICAgICBdLCBbQUNfTVNHX1JFU1VMVCh5ZXMpXSkKKy0gICAgICAg ICAgICAgICAgICAgICAgICBdLCBbQUNfTVNHX1JFU1VMVCh5ZXMpXSkKKy0KKy0gICAgICAgICAg ICAgICAgICAgICAgQUNfTEFOR19QT1AoKQorLSAgICAgICAgICAgICAgICAgICAgICBMSUJTPSIk e09SSUdfTElCU30iCistICAgICAgICAgICAgICAgICAgICAgXQorLSAgICAgICApXSwgWworKyAg ICAgICBdLCBbCisgICAgICAgIEFDX01TR19SRVNVTFQobm8pCisgICAgICAgIHNhZ2Vfc3BrZ19p bnN0YWxsX3Npbmd1bGFyPXllcworICAgICAgICBdCitAQCAtNjQsMjAgKzE5LDQgQEAgU0FHRV9T UEtHX0NPTkZJR1VSRShbc2luZ3VsYXJdLCBbCisgICAgICAgXSkKKyAgICAgXSkKKyAgIF0pCist XSxbXSxbXSxbCistICBkbmwgUG9zdC1jaGVjayBwaGFzZQorLSAgZG5sIFdlIG1ha2UgdGhlIHNh Z2VfY29uZiBzdWJzdGl0dXRpb25zIGhlcmUsIGJlY2F1c2UgdGhlICJkZWZhdWx0IgorLSAgZG5s IHN1YnN0aXR1dGlvbiBuZWVkcyB0byBiZSBtYWRlIGV2ZW4gaWYgd2Ugc2tpcHBlZCB0aGUgc3lz dGVtLVNpbmd1bGFyCistICBkbmwgY2hlY2tzIHRoZW1zZWx2ZXMuCistICBBU19JRihbdGVzdCAi eCR7c2FnZV9zcGtnX2luc3RhbGxfc2luZ3VsYXJ9IiA9ICJ4eWVzIl0sIFsKKy0gICAgQVNfQ0FT RShbJGhvc3Rfb3NdLAorLSAgICAgIFtjeWd3aW4qXSwgW2RubCBOb3RoaW5nIHRvIGRvCistICAg ICAgICAgICAgICAgICBdLAorLSAgICAgICAgICAgICAgICAgW2RubCBTZXQgc2hhcmVkIGxpYnJh cnkgcGF0aCwgbmVlZGVkIGZvciByZWxvYWRpbmcgdGhlIGxpYnJhcnkgd2l0aCBSVExEX0dMT0JB TAorLSAgICAgICAgICAgICAgICAgIExJQlNJTkdVTEFSX1BBVEg9IlwkU0FHRV9MT0NBTC9saWIv bGliU2luZ3VsYXIuJHthY2xfc2hsaWJleHR9IgorLSAgICAgICAgICAgICAgICAgXQorLSAgICAp CistICBdKQorLQorLSAgQUNfU1VCU1QoTElCU0lOR1VMQVJfUEFUSCwgIiR7TElCU0lOR1VMQVJf UEFUSH0iKQorIF0pCitkaWZmIC0tZ2l0IGEvcGtncy9zYWdlLWNvbmYvX3NhZ2VfY29uZi9fY29u Zi5weS5pbiBiL3BrZ3Mvc2FnZS1jb25mL19zYWdlX2NvbmYvX2NvbmYucHkuaW4KK2luZGV4IDZj ZDI4ZjU1OGE4Li5kNjZiZGIzZDI2NCAxMDA2NDQKKy0tLSBhL3BrZ3Mvc2FnZS1jb25mL19zYWdl X2NvbmYvX2NvbmYucHkuaW4KKysrKyBiL3BrZ3Mvc2FnZS1jb25mL19zYWdlX2NvbmYvX2NvbmYu cHkuaW4KK0BAIC01NSw5ICs1NSw2IEBAIFRIUkVFSlNfRElSID0gU0FHRV9MT0NBTCArICIvc2hh cmUvdGhyZWVqcy1zYWdlIgorIE9QRU5NUF9DRkxBR1MgPSAiQE9QRU5NUF9DRkxBR1NAIgorIE9Q RU5NUF9DWFhGTEFHUyA9ICJAT1BFTk1QX0NYWEZMQUdTQCIKKyAKKy0jIFRoZSBmdWxsIGFic29s dXRlIHBhdGggdG8gdGhlIG1haW4gU2luZ3VsYXIgbGlicmFyeS4KKy1MSUJTSU5HVUxBUl9QQVRI ID0gIkBMSUJTSU5HVUxBUl9QQVRIQCIucmVwbGFjZSgnJFNBR0VfTE9DQUwnLCBTQUdFX0xPQ0FM KQorLQorICMgSW5zdGFsbGF0aW9uIGxvY2F0aW9uIG9mIHdoZWVscy4gVGhpcyBpcyBkZXRlcm1p bmVkIGF0IGNvbmZpZ3VyYXRpb24gdGltZQorICMgYW5kIGRvZXMgbm90IGRlcGVuZCBvbiB0aGUg aW5zdGFsbGF0aW9uIGxvY2F0aW9uIG9mIHNhZ2UtY29uZi4KKyBTQUdFX1NQS0dfV0hFRUxTID0g IkBTQUdFX1ZFTlZAIi5yZXBsYWNlKCcke1NBR0VfTE9DQUx9JywgU0FHRV9MT0NBTCkgKyAiL3Zh ci9saWIvc2FnZS93aGVlbHMiCitkaWZmIC0tZ2l0IGEvc3JjL2RvYy9lbi90aGVtYXRpY190dXRv cmlhbHMvbGllL3dleWxfZ3JvdXBzLnJzdCBiL3NyYy9kb2MvZW4vdGhlbWF0aWNfdHV0b3JpYWxz L2xpZS93ZXlsX2dyb3Vwcy5yc3QKK2luZGV4IGM5MTczMzhlNDQ0Li4xODJlNzRhYWQyMCAxMDA2 NDQKKy0tLSBhL3NyYy9kb2MvZW4vdGhlbWF0aWNfdHV0b3JpYWxzL2xpZS93ZXlsX2dyb3Vwcy5y c3QKKysrKyBiL3NyYy9kb2MvZW4vdGhlbWF0aWNfdHV0b3JpYWxzL2xpZS93ZXlsX2dyb3Vwcy5y c3QKK0BAIC0xMzksMTIgKzEzOSwxMiBAQCBzdHJpbmcsIHdoaWNoIHlvdSBjYW4gcHJpbnQ6Ogor ICAgICBYLjEgICAgICAxICAxICAxICAxICAxICAxICAxICAxICAxICAxICAxICAxICAxCisgICAg IFguMiAgICAgIDEgLTEgIDEgIDEgLTEgIDEgIDEgLTEgLTEgLTEgIDEgIDEgIDEKKyAgICAgWC4z ICAgICAgMiAgLiAgMiAtMSAgLiAgMiAgMiAgLiAgLiAgLiAtMSAgMiAgMgorLSAgICBYLjQgICAg ICAzIC0xIC0xICAuICAxIC0xICAzIC0xICAxIC0xICAuIC0xICAzCistICAgIFguNSAgICAgIDMg LTEgLTEgIC4gIDEgIDMgLTEgLTEgLTEgIDEgIC4gLTEgIDMKKy0gICAgWC42ICAgICAgMyAgMSAt MSAgLiAtMSAtMSAgMyAgMSAtMSAgMSAgLiAtMSAgMworLSAgICBYLjcgICAgICAzICAxIC0xICAu IC0xICAzIC0xICAxICAxIC0xICAuIC0xICAzCistICAgIFguOCAgICAgIDMgLTEgIDMgIC4gLTEg LTEgLTEgLTEgIDEgIDEgIC4gLTEgIDMKKy0gICAgWC45ICAgICAgMyAgMSAgMyAgLiAgMSAtMSAt MSAgMSAtMSAtMSAgLiAtMSAgMworKyAgICBYLjQgICAgICAzIC0xIC0xICAuICAxICAzIC0xIC0x IC0xICAxICAuIC0xICAzCisrICAgIFguNSAgICAgIDMgIDEgLTEgIC4gLTEgIDMgLTEgIDEgIDEg LTEgIC4gLTEgIDMKKysgICAgWC42ICAgICAgMyAtMSAgMyAgLiAtMSAtMSAtMSAtMSAgMSAgMSAg LiAtMSAgMworKyAgICBYLjcgICAgICAzIC0xIC0xICAuICAxIC0xICAzIC0xICAxIC0xICAuIC0x ICAzCisrICAgIFguOCAgICAgIDMgIDEgIDMgIC4gIDEgLTEgLTEgIDEgLTEgLTEgIC4gLTEgIDMK KysgICAgWC45ICAgICAgMyAgMSAtMSAgLiAtMSAtMSAgMyAgMSAtMSAgMSAgLiAtMSAgMworICAg ICBYLjEwICAgICA0IC0yICAuIC0xICAuICAuICAuICAyICAuICAuICAxICAuIC00CisgICAgIFgu MTEgICAgIDQgIDIgIC4gLTEgIC4gIC4gIC4gLTIgIC4gIC4gIDEgIC4gLTQKKyAgICAgWC4xMiAg ICAgNiAgLiAtMiAgLiAgLiAtMiAtMiAgLiAgLiAgLiAgLiAgMiAgNgorZGlmZiAtLWdpdCBhL3Ny Yy9zYWdlL2NvZGluZy9jb2RlY2FuL2F1dGdyb3VwX2Nhbl9sYWJlbC5weXggYi9zcmMvc2FnZS9j b2RpbmcvY29kZWNhbi9hdXRncm91cF9jYW5fbGFiZWwucHl4CitpbmRleCBkZTVkYjk4NWUwYi4u YzgzYjkyNjRlNDQgMTAwNjQ0CistLS0gYS9zcmMvc2FnZS9jb2RpbmcvY29kZWNhbi9hdXRncm91 cF9jYW5fbGFiZWwucHl4CisrKysgYi9zcmMvc2FnZS9jb2RpbmcvY29kZWNhbi9hdXRncm91cF9j YW5fbGFiZWwucHl4CitAQCAtNzYsNyArNzYsNyBAQCBjb2x1bW5zIGRvIHNoYXJlIHRoZSBzYW1l IGNvbG9yaW5nOjoKKyAgICAgKCgxLCksCisgICAgICAoMiwpLAorICAgICAgKDMsIDUsIDQpLAor LSAgICAgKDYsIDE5LCAxNiwgOSwgMjEsIDEwLCA4LCAxNSwgMTQsIDExLCAyMCwgMTMsIDEyLCA3 LCAxNywgMTgpKQorKyAgICAgKDYsIDE5LCAxNiwgMjEsIDksIDEwLCAxNSwgOCwgMjAsIDExLCAx NCwgMTMsIDcsIDEyLCAxOCwgMTcpKQorIAorIFdlIGNhbiBhbHNvIHJlc3RyaWN0IHRoZSBncm91 cCBhY3Rpb24gdG8gbGluZWFyIGlzb21ldHJpZXM6OgorIAorZGlmZiAtLWdpdCBhL3NyYy9zYWdl L2NvZGluZy9saW5lYXJfY29kZS5weSBiL3NyYy9zYWdlL2NvZGluZy9saW5lYXJfY29kZS5weQor aW5kZXggYTNhYzNjYTE1NDcuLmJmYjlmODY5NmU4IDEwMDY0NAorLS0tIGEvc3JjL3NhZ2UvY29k aW5nL2xpbmVhcl9jb2RlLnB5CisrKysgYi9zcmMvc2FnZS9jb2RpbmcvbGluZWFyX2NvZGUucHkK K0BAIC00NjUsMjcgKzQ2NSwyNyBAQCBkZWYgYXV0b21vcnBoaXNtX2dyb3VwX2dlbnMoc2VsZiwg ZXF1aXZhbGVuY2U9InNlbWlsaW5lYXIiKToKKyAgICAgICAgICAgICAwCisgICAgICAgICAgICAg c2FnZTogQyA9IGNvZGVzLkhhbW1pbmdDb2RlKEdGKDQsICd6JyksIDMpCisgICAgICAgICAgICAg c2FnZTogQy5hdXRvbW9ycGhpc21fZ3JvdXBfZ2VucygpCistICAgICAgICAgICAgKFsoKDEsIDEs IDEsIDEsIDEsIHogKyAxLCB6LCB6ICsgMSwgeiwgeiwgeiwgMSwgMSwgeiArIDEsIHogKyAxLCB6 LCB6ICsgMSwgeiwgeiArIDEsIHogKyAxLCB6ICsgMSk7ICgxLDE0LDYsNyw0LDEwLDExLDE5KSgy LDgsMTYsMTMsMywxNywyMSwxNSkoOSwxMiwxOCwyMCksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZp bml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisrICAgICAgICAgICAgKFsoKDEsIDEsIDEsIHos IHogKyAxLCAxLCAxLCAxLCAxLCB6ICsgMSwgeiwgeiwgeiArIDEsIHogKyAxLCB6ICsgMSwgMSwg eiArIDEsIHosIHosIDEsIHopOyAoMSwxMywxNCwyMCkoMiwyMSw4LDE4LDcsMTYsMTksMTUpKDMs MTAsNSwxMiwxNyw5LDYsNCksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6 IG9mIHNpemUgMl4yCisrICAgICAgICAgICAgICAgIERlZm46IHogfC0tPiB6ICsgMSksCisrICAg ICAgICAgICAgICAoKHosIDEsIHosIHosIHosIHogKyAxLCB6LCB6LCB6LCB6LCB6LCB6LCB6ICsg MSwgeiwgeiwgeiwgeiwgeiArIDEsIHosIHosIHopOyAoMSwxMSw1LDEyLDMsMTkpKDIsOCkoNiwx OCwxMykoNywxNywxNSkoOSwxMCwxNCwxNiwyMCwyMSksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZp bml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisgICAgICAgICAgICAgICAgIERlZm46IHogfC0t PiB6ICsgMSksCistICAgICAgICAgICAgICAoKHogKyAxLCAxLCAxLCB6LCB6ICsgMSwgeiwgeiwg eiArIDEsIHogKyAxLCB6ICsgMSwgMSwgeiArIDEsIHosIHosIDEsIHogKyAxLCAxLCB6LCB6ICsg MSwgeiArIDEsIHopOyAoMSwxOCw2LDE5LDIsOSwxNywxMCwxMywxNCwyMSwxMSw0LDUsMTIpKDMs MjAsNywxNiw4KSwgUmluZyBlbmRvbW9ycGhpc20gb2YgRmluaXRlIEZpZWxkIGluIHogb2Ygc2l6 ZSAyXjIKKy0gICAgICAgICAgICAgICAgRGVmbjogeiB8LS0+IHopLAorICAgICAgICAgICAgICAg KCh6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6 LCB6LCB6KTsgKCksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNp emUgMl4yCisgICAgICAgICAgICAgICAgIERlZm46IHogfC0tPiB6KV0sCisgICAgICAgICAgICAg IDM2Mjg4MCkKKyAgICAgICAgICAgICBzYWdlOiBDLmF1dG9tb3JwaGlzbV9ncm91cF9nZW5zKGVx dWl2YWxlbmNlPSJsaW5lYXIiKQorLSAgICAgICAgICAgIChbKCh6ICsgMSwgMSwgeiArIDEsIHog KyAxLCB6ICsgMSwgeiwgMSwgeiwgMSwgMSwgMSwgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiwg eiwgMSwgeiwgeiwgeik7ICgxLDE1LDIsOCwxNiwxOCwzKSg0LDksMTIsMTMsMjAsMTAsMTEpKDUs MjEsMTQsNiw3LDE5LDE3KSwgUmluZyBlbmRvbW9ycGhpc20gb2YgRmluaXRlIEZpZWxkIGluIHog b2Ygc2l6ZSAyXjIKKysgICAgICAgICAgICAoWygoeiwgMSwgeiArIDEsIHogKyAxLCAxLCB6ICsg MSwgeiwgMSwgeiArIDEsIHogKyAxLCAxLCB6LCAxLCB6ICsgMSwgeiwgMSwgeiwgMSwgeiArIDEs IDEsIDEpOyAoMSwxMiwxMSwxMCw2LDgsOSwyMCwxMywyMSw1LDE0LDMsMTYsMTcsMTksNyw0LDIs MTUsMTgpLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJe MgorICAgICAgICAgICAgICAgICBEZWZuOiB6IHwtLT4geiksCistICAgICAgICAgICAgICAoKHog KyAxLCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgMSwgeiwgMSwgeiwgeiwgeiwgMSwgeiwg MSwgMSwgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgMSwgeik7ICgxLDE1LDIxLDgsOSkoMiwxOCw1 LDMsMTEsMTYsNywxMCwxOSwxMywxMiw0LDE3LDYsMjApLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBG aW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgorKyAgICAgICAgICAgICAgKCh6ICsgMSwgeiAr IDEsIHogKyAxLCB6LCAxLCAxLCB6LCB6LCAxLCB6ICsgMSwgeiwgMSwgMSwgeiwgMSwgeiArIDEs IHosIHogKyAxLCB6ICsgMSwgMSwgeik7ICgxLDMsMTgsMiwxNyw2LDE5KSg0LDE1LDEzLDIwLDcs MTQsMTYpKDUsMTEsOCwyMSwxMiw5LDEwKSwgUmluZyBlbmRvbW9ycGhpc20gb2YgRmluaXRlIEZp ZWxkIGluIHogb2Ygc2l6ZSAyXjIKKyAgICAgICAgICAgICAgICAgRGVmbjogeiB8LS0+IHopLAor ICAgICAgICAgICAgICAgKCh6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAx LCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEs IHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAxKTsgKCksIFJp bmcgZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisgICAgICAg ICAgICAgICAgIERlZm46IHogfC0tPiB6KV0sCisgICAgICAgICAgICAgIDE4MTQ0MCkKKyAgICAg ICAgICAgICBzYWdlOiBDLmF1dG9tb3JwaGlzbV9ncm91cF9nZW5zKGVxdWl2YWxlbmNlPSJwZXJt dXRhdGlvbmFsIikKKy0gICAgICAgICAgICAoWygoMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwg MSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSk7ICgxLDE5KSgzLDE3KSg0LDIxKSg1 LDIwKSg3LDE0KSg5LDEyKSgxMCwxNikoMTEsMTUpLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5p dGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgorKyAgICAgICAgICAgIChbKCgxLCAxLCAxLCAxLCAx LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxKTsgKDEsMTEp KDMsMTApKDQsOSkoNSw3KSgxMiwyMSkoMTQsMjApKDE1LDE5KSgxNiwxNyksIFJpbmcgZW5kb21v cnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisgICAgICAgICAgICAgICAg IERlZm46IHogfC0tPiB6KSwKKy0gICAgICAgICAgICAgICgoMSwgMSwgMSwgMSwgMSwgMSwgMSwg MSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSk7ICgxLDExKSgzLDEwKSg0 LDkpKDUsNykoMTIsMjEpKDE0LDIwKSgxNSwxOSkoMTYsMTcpLCBSaW5nIGVuZG9tb3JwaGlzbSBv ZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgorKyAgICAgICAgICAgICAgKCgxLCAxLCAx LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxKTsg KDIsMTgpKDMsMTkpKDQsMTApKDUsMTYpKDgsMTMpKDksMTQpKDExLDIxKSgxNSwyMCksIFJpbmcg ZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisgICAgICAgICAg ICAgICAgIERlZm46IHogfC0tPiB6KSwKKy0gICAgICAgICAgICAgICgoMSwgMSwgMSwgMSwgMSwg MSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSk7ICgxLDE3KSgy LDgpKDMsMTQpKDQsMTApKDcsMTIpKDksMTkpKDEzLDE4KSgxNSwyMCksIFJpbmcgZW5kb21vcnBo aXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisrICAgICAgICAgICAgICAoKDEs IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEs IDEpOyAoMSwxOSkoMywxNykoNCwyMSkoNSwyMCkoNywxNCkoOSwxMikoMTAsMTYpKDExLDE1KSwg UmluZyBlbmRvbW9ycGhpc20gb2YgRmluaXRlIEZpZWxkIGluIHogb2Ygc2l6ZSAyXjIKKyAgICAg ICAgICAgICAgICAgRGVmbjogeiB8LS0+IHopLAorICAgICAgICAgICAgICAgKCgxLCAxLCAxLCAx LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxKTsgKDIs MTMpKDMsMTQpKDQsMjApKDUsMTEpKDgsMTgpKDksMTkpKDEwLDE1KSgxNiwyMSksIFJpbmcgZW5k b21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisgICAgICAgICAgICAg ICAgIERlZm46IHogfC0tPiB6KV0sCitAQCAtNjkxLDEwICs2OTEsMTAgQEAgZGVmIF9jYW5vbml6 ZShzZWxmLCBlcXVpdmFsZW5jZSk6CisgICAgICAgICAgICAgc2FnZTogQ19pc28gPT0gYXV0X2dy b3VwX2Nhbl9sYWJlbC5nZXRfY2Fub25pY2FsX2Zvcm0oKQorICAgICAgICAgICAgIFRydWUKKyAg ICAgICAgICAgICBzYWdlOiBhdXRfZ3JvdXBfY2FuX2xhYmVsLmdldF9hdXRvbV9nZW5zKCkKKy0g ICAgICAgICAgICBbKCgxLCAxLCAxLCAxLCAxLCB6ICsgMSwgeiwgeiArIDEsIHosIHosIHosIDEs IDEsIHogKyAxLCB6ICsgMSwgeiwgeiArIDEsIHosIHogKyAxLCB6ICsgMSwgeiArIDEpOyAoMSwx NCw2LDcsNCwxMCwxMSwxOSkoMiw4LDE2LDEzLDMsMTcsMjEsMTUpKDksMTIsMTgsMjApLCBSaW5n IGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgorKyAgICAgICAg ICAgIFsoKDEsIDEsIDEsIHosIHogKyAxLCAxLCAxLCAxLCAxLCB6ICsgMSwgeiwgeiwgeiArIDEs IHogKyAxLCB6ICsgMSwgMSwgeiArIDEsIHosIHosIDEsIHopOyAoMSwxMywxNCwyMCkoMiwyMSw4 LDE4LDcsMTYsMTksMTUpKDMsMTAsNSwxMiwxNyw5LDYsNCksIFJpbmcgZW5kb21vcnBoaXNtIG9m IEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCisrICAgICAgICAgICAgICAgRGVmbjogeiB8 LS0+IHogKyAxKSwKKysgICAgICAgICAgICAgKCh6LCAxLCB6LCB6LCB6LCB6ICsgMSwgeiwgeiwg eiwgeiwgeiwgeiwgeiArIDEsIHosIHosIHosIHosIHogKyAxLCB6LCB6LCB6KTsgKDEsMTEsNSwx MiwzLDE5KSgyLDgpKDYsMTgsMTMpKDcsMTcsMTUpKDksMTAsMTQsMTYsMjAsMjEpLCBSaW5nIGVu ZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgorICAgICAgICAgICAg ICAgIERlZm46IHogfC0tPiB6ICsgMSksCistICAgICAgICAgICAgICgoeiArIDEsIDEsIDEsIHos IHogKyAxLCB6LCB6LCB6ICsgMSwgeiArIDEsIHogKyAxLCAxLCB6ICsgMSwgeiwgeiwgMSwgeiAr IDEsIDEsIHosIHogKyAxLCB6ICsgMSwgeik7ICgxLDE4LDYsMTksMiw5LDE3LDEwLDEzLDE0LDIx LDExLDQsNSwxMikoMywyMCw3LDE2LDgpLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmll bGQgaW4geiBvZiBzaXplIDJeMgorLSAgICAgICAgICAgICAgIERlZm46IHogfC0tPiB6KSwKKyAg ICAgICAgICAgICAgKCh6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6 LCB6LCB6LCB6LCB6LCB6LCB6KTsgKCksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVs ZCBpbiB6IG9mIHNpemUgMl4yCisgICAgICAgICAgICAgICAgRGVmbjogeiB8LS0+IHopXQorICAg ICAgICAgIiIiCitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY29tYmluYXQvcG9zZXRzL3Bvc2V0cy5w eSBiL3NyYy9zYWdlL2NvbWJpbmF0L3Bvc2V0cy9wb3NldHMucHkKK2luZGV4IDI4MzZkNTlkOTYw Li44Yzg4MmQ1YWMzYiAxMDA2NDQKKy0tLSBhL3NyYy9zYWdlL2NvbWJpbmF0L3Bvc2V0cy9wb3Nl dHMucHkKKysrKyBiL3NyYy9zYWdlL2NvbWJpbmF0L3Bvc2V0cy9wb3NldHMucHkKK0BAIC04ODEz LDcgKzg4MTMsNyBAQCBkZWYgX2xpYmdhcF8oc2VsZik6CisgICAgICAgICAgICAgc2FnZTogbGli Z2FwKFApICAjIG9wdGlvbmFsIC0gZ2FwX3BhY2thZ2VzCisgICAgICAgICAgICAgPEEgcG9zZXQg b24gNSBwb2ludHM+CisgICAgICAgICAgICAgc2FnZTogQSA9IGxpYmdhcChHRigyKSkuUG9zZXRB bGdlYnJhKFApOyBBICAjIG9wdGlvbmFsIC0gZ2FwX3BhY2thZ2VzCistICAgICAgICAgICAgPEdG KDIpWzxxdWl2ZXIgd2l0aCA1IHZlcnRpY2VzIGFuZCA1IGFycm93cz5dLzx0d28tc2lkZWQgaWRl YWwgaW4gPEdGKDIpWzxxdWl2ZXIgd2l0aCA1IHZlcnRpY2VzIGFuZCA1IGFycm93cz5dPiwgKDEg Z2VuZXJhdG9ycyk+PgorKyAgICAgICAgICAgIDxHRigyKVs8cXVpdmVyIHdpdGggNSB2ZXJ0aWNl cyBhbmQgNSBhcnJvd3M+XS88dHdvLXNpZGVkIGlkZWFsIGluIDxHRigyKVs8cXVpdmVyIHdpdGgg NSB2ZXJ0aWNlcyBhbmQgNSBhcnJvd3M+XT4sICgxIGdlbmVyYXRvcik+PgorICAgICAgICAgICAg IHNhZ2U6IEEuRGltZW5zaW9uKCkgICMgb3B0aW9uYWwgLSBnYXBfcGFja2FnZXMKKyAgICAgICAg ICAgICAxMworICAgICAgICAgIiIiCitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY29tYmluYXQvcm9v dF9zeXN0ZW0vaGVja2VfYWxnZWJyYV9yZXByZXNlbnRhdGlvbi5weSBiL3NyYy9zYWdlL2NvbWJp bmF0L3Jvb3Rfc3lzdGVtL2hlY2tlX2FsZ2VicmFfcmVwcmVzZW50YXRpb24ucHkKK2luZGV4IDZi NzU2YmFmYzMwLi44YWM5OTMxOWJlYyAxMDA2NDQKKy0tLSBhL3NyYy9zYWdlL2NvbWJpbmF0L3Jv b3Rfc3lzdGVtL2hlY2tlX2FsZ2VicmFfcmVwcmVzZW50YXRpb24ucHkKKysrKyBiL3NyYy9zYWdl L2NvbWJpbmF0L3Jvb3Rfc3lzdGVtL2hlY2tlX2FsZ2VicmFfcmVwcmVzZW50YXRpb24ucHkKK0BA IC0zNTcsNyArMzU3LDcgQEAgZGVmIFR3KHNlbGYsIHdvcmQsIHNpZ25zPU5vbmUsIHNjYWxhcj1O b25lKToKKyAgICAgICAgICAgICBzYWdlOiBxMSwgcTIgPSBLLmdlbnMoKQorICAgICAgICAgICAg IHNhZ2U6IEtXID0gVy5hbGdlYnJhKEspCisgICAgICAgICAgICAgc2FnZTogeCA9IEtXLmFuX2Vs ZW1lbnQoKTsgeAorLSAgICAgICAgICAgIDEyMyArIDMqMzIgKyAyKjMgKyBlCisrICAgICAgICAg ICAgMTIzICsgMyoyMzEyICsgMiozMSArIGUKKyAKKyAgICAgICAgICAgICBzYWdlOiBUID0gS1cu ZGVtYXp1cmVfbHVzenRpZ19vcGVyYXRvcnMocTEscTIpCisgICAgICAgICAgICAgc2FnZTogVDEy ID0gVC5UdyggKDEsMikgKQorZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2NvbWJpbmF0L3N5bW1ldHJp Y19ncm91cF9hbGdlYnJhLnB5IGIvc3JjL3NhZ2UvY29tYmluYXQvc3ltbWV0cmljX2dyb3VwX2Fs Z2VicmEucHkKK2luZGV4IGI4YTBiZWJhYjQ0Li45YmNjYmExMjRjOCAxMDA2NDQKKy0tLSBhL3Ny Yy9zYWdlL2NvbWJpbmF0L3N5bW1ldHJpY19ncm91cF9hbGdlYnJhLnB5CisrKysgYi9zcmMvc2Fn ZS9jb21iaW5hdC9zeW1tZXRyaWNfZ3JvdXBfYWxnZWJyYS5weQorQEAgLTEwMSw3ICsxMDEsNyBA QCBkZWYgU3ltbWV0cmljR3JvdXBBbGdlYnJhKFIsIFcsIGNhdGVnb3J5PU5vbmUpOgorICAgICAg ICAgc2FnZTogU0dBLmdyb3VwKCkKKyAgICAgICAgIFdleWwgR3JvdXAgb2YgdHlwZSBbJ0EnLCAz XSAoYXMgYSBtYXRyaXggZ3JvdXAgYWN0aW5nIG9uIHRoZSBhbWJpZW50IHNwYWNlKQorICAgICAg ICAgc2FnZTogU0dBLmFuX2VsZW1lbnQoKQorLSAgICAgICAgczEqczIqczMgKyAzKnMzKnMyICsg MipzMyArIDEKKysgICAgICAgIHMxKnMyKnMzICsgMypzMipzMypzMSpzMiArIDIqczMqczEgKyAx CisgCisgICAgIFRoZSBwcmVmZXJyZWQgd2F5IHRvIGNvbnN0cnVjdCB0aGUgc3ltbWV0cmljIGdy b3VwIGFsZ2VicmEgaXMgdG8KKyAgICAgZ28gdGhyb3VnaCB0aGUgdXN1YWwgYGBhbGdlYnJhYGAg bWV0aG9kOjoKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9lbnYucHkgYi9zcmMvc2FnZS9lbnYucHkK K2luZGV4IDkxMWYzNGIxYmM2Li41ZjdhY2E4NTk5YyAxMDA2NDQKKy0tLSBhL3NyYy9zYWdlL2Vu di5weQorKysrIGIvc3JjL3NhZ2UvZW52LnB5CitAQCAtMTk3LDcgKzE5Nyw4IEBAIGRlZiB2YXIo a2V5OiBzdHIsICpmYWxsYmFja3M6IE9wdGlvbmFsW3N0cl0sIGZvcmNlOiBib29sID0gRmFsc2Up IC0+IE9wdGlvbmFsW3N0CisgR1JBUEhTX0RBVEFfRElSID0gdmFyKCJHUkFQSFNfREFUQV9ESVIi LCBqb2luKFNBR0VfU0hBUkUsICJncmFwaHMiKSkKKyBFTExDVVJWRV9EQVRBX0RJUiA9IHZhcigi RUxMQ1VSVkVfREFUQV9ESVIiLCBqb2luKFNBR0VfU0hBUkUsICJlbGxjdXJ2ZXMiKSkKKyBQT0xZ VE9QRV9EQVRBX0RJUiA9IHZhcigiUE9MWVRPUEVfREFUQV9ESVIiLCBqb2luKFNBR0VfU0hBUkUs ICJyZWZsZXhpdmVfcG9seXRvcGVzIikpCistR0FQX1JPT1RfRElSID0gdmFyKCJHQVBfUk9PVF9E SVIiLCBqb2luKFNBR0VfU0hBUkUsICJnYXAiKSkKKytHQVBfTElCX0RJUiA9IHZhcigiR0FQX0xJ Ql9ESVIiLCBqb2luKFNBR0VfTE9DQUwsICJsaWIiLCAiZ2FwIikpCisrR0FQX1NIQVJFX0RJUiA9 IHZhcigiR0FQX1NIQVJFX0RJUiIsIGpvaW4oU0FHRV9TSEFSRSwgImdhcCIpKQorIFRIRUJFX0RJ UiA9IHZhcigiVEhFQkVfRElSIiwgam9pbihTQUdFX1NIQVJFLCAidGhlYmUiKSkKKyBDT01CSU5B VE9SSUFMX0RFU0lHTl9EQVRBX0RJUiA9IHZhcigiQ09NQklOQVRPUklBTF9ERVNJR05fREFUQV9E SVIiLCBqb2luKFNBR0VfU0hBUkUsICJjb21iaW5hdG9yaWFsX2Rlc2lnbnMiKSkKKyBDUkVNT05B X01JTklfREFUQV9ESVIgPSB2YXIoIkNSRU1PTkFfTUlOSV9EQVRBX0RJUiIsIGpvaW4oU0FHRV9T SEFSRSwgImNyZW1vbmEiKSkKK0BAIC0yMjksMTIgKzIzMCw2IEBAIGRlZiB2YXIoa2V5OiBzdHIs ICpmYWxsYmFja3M6IE9wdGlvbmFsW3N0cl0sIGZvcmNlOiBib29sID0gRmFsc2UpIC0+IE9wdGlv bmFsW3N0CisgTElFX0lORk9fRElSID0gdmFyKCJMSUVfSU5GT19ESVIiLCBqb2luKFNBR0VfTE9D QUwsICJsaWIiLCAiTGlFIikpCisgU0lOR1VMQVJfQklOID0gdmFyKCJTSU5HVUxBUl9CSU4iKSBv ciAiU2luZ3VsYXIiCisgCistIyBUaGUgcGF0aCB0byBsaWJTaW5ndWxhciwgdG8gYmUgcGFzc2Vk IHRvIGRsb3BlbigpLiBUaGlzIHdpbGwKKy0jIHR5cGljYWxseSBiZSBzZXQgdG8gYW4gYWJzb2x1 dGUgcGF0aCBpbiBzYWdlX2NvbmYsIGJ1dCB0aGUgcmVsYXRpdmUKKy0jIGZhbGxiYWNrIHBhdGgg aGVyZSB3b3JrcyBvbiBzeXN0ZW1zIHdoZXJlIGRsb3BlbigpIHNlYXJjaGVzIHRoZQorLSMgc3lz dGVtJ3MgbGlicmFyeSBsb2NhdGlvbnMuCistTElCU0lOR1VMQVJfUEFUSCA9IHZhcigiTElCU0lO R1VMQVJfUEFUSCIsICJsaWJTaW5ndWxhci5zbyIpCistCisgIyBPcGVuTVAKKyBPUEVOTVBfQ0ZM QUdTID0gdmFyKCJPUEVOTVBfQ0ZMQUdTIiwgIiIpCisgT1BFTk1QX0NYWEZMQUdTID0gdmFyKCJP UEVOTVBfQ1hYRkxBR1MiLCAiIikKK0BAIC0yNTUsODEgKzI1MCw2IEBAIGRlZiB2YXIoa2V5OiBz dHIsICpmYWxsYmFja3M6IE9wdGlvbmFsW3N0cl0sIGZvcmNlOiBib29sID0gRmFsc2UpIC0+IE9w dGlvbmFsW3N0CisgU0FHRV9HQVBfQ09NTUFORCA9IHZhcignU0FHRV9HQVBfQ09NTUFORCcsIF9n YXBfY21kKQorIAorIAorLWRlZiBfZ2V0X3NoYXJlZF9saWJfcGF0aCgqbGlibmFtZXM6IHN0cikg LT4gT3B0aW9uYWxbc3RyXToKKy0gICAgIiIiCistICAgIFJldHVybiB0aGUgZnVsbCBwYXRoIHRv IGEgc2hhcmVkIGxpYnJhcnkgZmlsZSBpbnN0YWxsZWQgaW4KKy0gICAgYGAkU0FHRV9MT0NBTC9s aWJgYCBvciB0aGUgZGlyZWN0b3JpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZQorLSAgICBQeXRob24g c3lzY29uZmlnLgorLQorLSAgICBUaGlzIGNhbiBhbHNvIGJlIHBhc3NlZCBtb3JlIHRoYW4gb25l IGxpYnJhcnkgbmFtZSAoZS5nLiBmb3IgY2FzZXMgd2hlcmUKKy0gICAgc29tZSBsaWJyYXJ5IG1h eSBoYXZlIG11bHRpcGxlIG5hbWVzIGRlcGVuZGluZyBvbiB0aGUgcGxhdGZvcm0pIGluIHdoaWNo CistICAgIGNhc2UgdGhlIGZpcnN0IG9uZSBmb3VuZCBpcyByZXR1cm5lZC4KKy0KKy0gICAgVGhp cyBzdXBwb3J0cyBtb3N0ICpOSVggdmFyaWFudHMgKGluIHdoaWNoIGBgbGliPGxpYm5hbWU+LnNv YGAgaXMgZm91bmQKKy0gICAgdW5kZXIgYGAkU0FHRV9MT0NBTC9saWJgYCksIG1hY09TIChzYW1l LCBidXQgd2l0aCB0aGUgYGAuZHlsaWJgYAorLSAgICBleHRlbnNpb24pLCBhbmQgQ3lnd2luICh1 bmRlciBgYCRTQUdFX0xPQ0FML2Jpbi9jeWc8bGlibmFtZT4uZGxsYGAsCistICAgIG9yIGBgJFNB R0VfTE9DQUwvYmluL2N5ZzxsaWJuYW1lPi0qLmRsbGBgIGZvciB2ZXJzaW9uZWQgRExMcykuCist CistICAgIEZvciBkaXN0cmlidXRpb25zIGxpa2UgRGViaWFuIHRoYXQgdXNlIGEgbXVsdGlhcmNo IGxheW91dCwgd2UgYWxzbyB0cnkgdGhlCistICAgIG11bHRpYXJjaCBsaWIgcGF0aHMgKGkuZS4g YGAvdXNyL2xpYi88YXJjaD4vYGApLgorLQorLSAgICBUaGlzIHJldHVybnMgYGBOb25lYGAgaWYg bm8gbWF0Y2hpbmcgbGlicmFyeSBmaWxlIGNvdWxkIGJlIGZvdW5kLgorLQorLSAgICBFWEFNUExF Uzo6CistCistICAgICAgICBzYWdlOiBmcm9tIHNhZ2UuZW52IGltcG9ydCBfZ2V0X3NoYXJlZF9s aWJfcGF0aAorLSAgICAgICAgc2FnZTogImdhcCIgaW4gX2dldF9zaGFyZWRfbGliX3BhdGgoImdh cCIpCistICAgICAgICBUcnVlCistICAgICAgICBzYWdlOiBfZ2V0X3NoYXJlZF9saWJfcGF0aCgi YW5fYWJzdXJkX2xpYiIpIGlzIE5vbmUKKy0gICAgICAgIFRydWUKKy0KKy0gICAgIiIiCistCist ICAgIGZvciBsaWJuYW1lIGluIGxpYm5hbWVzOgorLSAgICAgICAgc2VhcmNoX2RpcmVjdG9yaWVz OiBMaXN0W1BhdGhdID0gW10KKy0gICAgICAgIHBhdHRlcm5zOiBMaXN0W3N0cl0gPSBbXQorLSAg ICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICdjeWd3aW4nOgorLSAgICAgICAgICAgICMgTGF0ZXIg ZG93biB3ZSB0YWtlIHRoZSBmaXJzdCBtYXRjaGluZyBETEwgZm91bmQsIHNvIHNlYXJjaAorLSAg ICAgICAgICAgICMgU0FHRV9MT0NBTCBmaXJzdCBzbyB0aGF0IGl0IHRha2VzIHByZWNlZGVuY2UK Ky0gICAgICAgICAgICBpZiBTQUdFX0xPQ0FMOgorLSAgICAgICAgICAgICAgICBzZWFyY2hfZGly ZWN0b3JpZXMuYXBwZW5kKFBhdGgoU0FHRV9MT0NBTCkgLyAnYmluJykKKy0gICAgICAgICAgICBz ZWFyY2hfZGlyZWN0b3JpZXMuYXBwZW5kKFBhdGgoc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdC SU5ESVInKSkpCistICAgICAgICAgICAgIyBOb3RlOiBUaGUgZm9sbG93aW5nIGlzIG5vdCB2ZXJ5 IHJvYnVzdCwgc2luY2UgaWYgdGhlcmUgYXJlIG11bHRpYmxlCistICAgICAgICAgICAgIyB2ZXJz aW9ucyBmb3IgdGhlIHNhbWUgbGlicmFyeSB0aGlzIGp1c3Qgc2VsZWN0cyBvbmUgbW9yZSBvciBs ZXNzCistICAgICAgICAgICAgIyBhdCBhcmJpdHJhcnkuIEhvd2V2ZXIsIHByYWN0aWNhbGx5IHNw ZWFraW5nLCBvbiBDeWd3aW4sIHRoZXJlCistICAgICAgICAgICAgIyB3aWxsIG9ubHkgZXZlciBi ZSBvbmUgdmVyc2lvbgorLSAgICAgICAgICAgIHBhdHRlcm5zID0gW2YnY3lne2xpYm5hbWV9LmRs bCcsIGYnY3lne2xpYm5hbWV9LSouZGxsJ10KKy0gICAgICAgIGVsc2U6CistICAgICAgICAgICAg aWYgc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nOgorLSAgICAgICAgICAgICAgICBleHQgPSAnZHls aWInCistICAgICAgICAgICAgZWxzZToKKy0gICAgICAgICAgICAgICAgZXh0ID0gJ3NvJworLQor LSAgICAgICAgICAgIGlmIFNBR0VfTE9DQUw6CistICAgICAgICAgICAgICAgIHNlYXJjaF9kaXJl Y3Rvcmllcy5hcHBlbmQoUGF0aChTQUdFX0xPQ0FMKSAvICdsaWInKQorLSAgICAgICAgICAgIGxp YmRpciA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignTElCRElSJykKKy0gICAgICAgICAgICBp ZiBsaWJkaXIgaXMgbm90IE5vbmU6CistICAgICAgICAgICAgICAgIGxpYmRpciA9IFBhdGgobGli ZGlyKQorLSAgICAgICAgICAgICAgICBzZWFyY2hfZGlyZWN0b3JpZXMuYXBwZW5kKGxpYmRpcikK Ky0KKy0gICAgICAgICAgICAgICAgbXVsdGlhcmNobGliID0gc3lzY29uZmlnLmdldF9jb25maWdf dmFyKCdNVUxUSUFSQ0gnKQorLSAgICAgICAgICAgICAgICBpZiBtdWx0aWFyY2hsaWIgaXMgbm90 IE5vbmU6CistICAgICAgICAgICAgICAgICAgICBzZWFyY2hfZGlyZWN0b3JpZXMuYXBwZW5kKGxp YmRpciAvIG11bHRpYXJjaGxpYiksCistCistICAgICAgICAgICAgcGF0dGVybnMgPSBbZidsaWJ7 bGlibmFtZX0ue2V4dH0nXQorLQorLSAgICAgICAgZm9yIGRpcmVjdG9yeSBpbiBzZWFyY2hfZGly ZWN0b3JpZXM6CistICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CistICAgICAg ICAgICAgICAgIHBhdGggPSBuZXh0KGRpcmVjdG9yeS5nbG9iKHBhdHRlcm4pLCBOb25lKQorLSAg ICAgICAgICAgICAgICBpZiBwYXRoIGlzIG5vdCBOb25lOgorLSAgICAgICAgICAgICAgICAgICAg cmV0dXJuIHN0cihwYXRoLnJlc29sdmUoKSkKKy0KKy0gICAgIyBKdXN0IHJldHVybiBOb25lIGlm IG5vIGZpbGVzIHdlcmUgZm91bmQKKy0gICAgcmV0dXJuIE5vbmUKKy0KKy0jIGxvY2F0ZSBsaWJn YXAgc2hhcmVkIG9iamVjdAorLUdBUF9TTyA9IHZhcigiR0FQX1NPIiwgX2dldF9zaGFyZWRfbGli X3BhdGgoImdhcCIsICIiKSkKKy0KKyAjIHBvc3QgcHJvY2VzcworIGlmIERPVF9TQUdFIGlzIG5v dCBOb25lIGFuZCAnICcgaW4gRE9UX1NBR0U6CisgICAgIGlmIFVOQU1FWzo2XSA9PSAnQ1lHV0lO JzoKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvYWJlbGlhbl9ncHMvYWJlbGlhbl9ncm91 cF9nYXAucHkgYi9zcmMvc2FnZS9ncm91cHMvYWJlbGlhbl9ncHMvYWJlbGlhbl9ncm91cF9nYXAu cHkKK2luZGV4IGE0YjA0NzExM2M1Li44NjA5MGI0MzUzNSAxMDA2NDQKKy0tLSBhL3NyYy9zYWdl L2dyb3Vwcy9hYmVsaWFuX2dwcy9hYmVsaWFuX2dyb3VwX2dhcC5weQorKysrIGIvc3JjL3NhZ2Uv Z3JvdXBzL2FiZWxpYW5fZ3BzL2FiZWxpYW5fZ3JvdXBfZ2FwLnB5CitAQCAtMzM4LDcgKzMzOCw3 IEBAIGRlZiBfZWxlbWVudF9jb25zdHJ1Y3Rvcl8oc2VsZiwgeCwgY2hlY2s9VHJ1ZSk6CisgICAg ICAgICBpZiBpc2luc3RhbmNlKHgsIEFiZWxpYW5Hcm91cEVsZW1lbnRfZ2FwKToKKyAgICAgICAg ICAgICB0cnk6CisgICAgICAgICAgICAgICAgIGlmIHggaW4gc2VsZi5fY292ZXI6CistICAgICAg ICAgICAgICAgICAgICB4ID0gc2VsZi5nYXAoKS5OYXR1cmFsSG9tb21vcnBoaXNtKCkuSW1hZ2Uo eC5nYXAoKSkKKysgICAgICAgICAgICAgICAgICAgIHggPSBzZWxmLl9jb3Zlci5nYXAoKS5OYXR1 cmFsSG9tb21vcnBoaXNtQnlOb3JtYWxTdWJncm91cChzZWxmLl9yZWxhdGlvbnMpLkltYWdlKHgu Z2FwKCkpCisgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICB4ID0g eC5nYXAoKQorICAgICAgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKK0BAIC0xMDQzLDcg KzEwNDMsNyBAQCBkZWYgbmF0dXJhbF9ob21vbW9ycGhpc20oc2VsZik6CisgICAgICAgICAgICAg RnJvbTogQWJlbGlhbiBncm91cCB3aXRoIGdhcCwgZ2VuZXJhdG9yIG9yZGVycyAoNCwpCisgICAg ICAgICAgICAgVG86ICAgUXVvdGllbnQgYWJlbGlhbiBncm91cCB3aXRoIGdlbmVyYXRvciBvcmRl cnMgKDIsKQorICAgICAgICAgIiIiCistICAgICAgICBwaGkgPSBzZWxmLmdhcCgpLk5hdHVyYWxI b21vbW9ycGhpc20oKQorKyAgICAgICAgcGhpID0gc2VsZi5fY292ZXIuZ2FwKCkuTmF0dXJhbEhv bW9tb3JwaGlzbUJ5Tm9ybWFsU3ViZ3JvdXAoc2VsZi5fcmVsYXRpb25zKQorICAgICAgICAgSG9t ID0gc2VsZi5fY292ZXIuSG9tKHNlbGYpCisgICAgICAgICByZXR1cm4gSG9tKHBoaSkKKyAKK2Rp ZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvZmluaXRlbHlfcHJlc2VudGVkLnB5IGIvc3JjL3Nh Z2UvZ3JvdXBzL2Zpbml0ZWx5X3ByZXNlbnRlZC5weQoraW5kZXggOGQ2ZTQ0MzY4M2MuLjFiZWIw MWFmODdmIDEwMDY0NAorLS0tIGEvc3JjL3NhZ2UvZ3JvdXBzL2Zpbml0ZWx5X3ByZXNlbnRlZC5w eQorKysrIGIvc3JjL3NhZ2UvZ3JvdXBzL2Zpbml0ZWx5X3ByZXNlbnRlZC5weQorQEAgLTU5Niw5 ICs1OTYsOSBAQCBkZWYgZ2FwKHNlbGYpOgorICAgICAgICAgICAgIHNhZ2U6IGsgPSBHLnJld3Jp dGluZ19zeXN0ZW0oKQorICAgICAgICAgICAgIHNhZ2U6IGsuZ2FwKCkKKyAgICAgICAgICAgICBL bnV0aCBCZW5kaXggUmV3cml0aW5nIFN5c3RlbSBmb3IgTW9ub2lkKCBbIGEsIEEsIGIsIEIgXSAp IHdpdGggcnVsZXMKKy0gICAgICAgICAgICBbIFsgYV4yLCA8aWRlbnRpdHkgLi4uPiBdLCBbIGEq QSwgPGlkZW50aXR5IC4uLj4gXSwKKy0gICAgICAgICAgICAgIFsgQSphLCA8aWRlbnRpdHkgLi4u PiBdLCBbIGJeMiwgPGlkZW50aXR5IC4uLj4gXSwKKy0gICAgICAgICAgICAgIFsgYipCLCA8aWRl bnRpdHkgLi4uPiBdLCBbIEIqYiwgPGlkZW50aXR5IC4uLj4gXSBdCisrICAgICAgICAgICAgWyBb IGEqQSwgPGlkZW50aXR5IC4uLj4gXSwgWyBBKmEsIDxpZGVudGl0eSAuLi4+IF0sCisrICAgICAg ICAgICAgICBbIGIqQiwgPGlkZW50aXR5IC4uLj4gXSwgWyBCKmIsIDxpZGVudGl0eSAuLi4+IF0s CisrICAgICAgICAgICAgICBbIGFeMiwgPGlkZW50aXR5IC4uLj4gXSwgWyBiXjIsIDxpZGVudGl0 eSAuLi4+IF0gXQorICAgICAgICAgIiIiCisgICAgICAgICByZXR1cm4gc2VsZi5fZ2FwCisgCitk aWZmIC0tZ2l0IGEvc3JjL3NhZ2UvZ3JvdXBzL2ZxZl9vcnRob2dvbmFsLnB5IGIvc3JjL3NhZ2Uv Z3JvdXBzL2ZxZl9vcnRob2dvbmFsLnB5CitpbmRleCA3ZmM0ZGJlNzU0OC4uZTVlY2NkNDU5NDIg MTAwNjQ0CistLS0gYS9zcmMvc2FnZS9ncm91cHMvZnFmX29ydGhvZ29uYWwucHkKKysrKyBiL3Ny Yy9zYWdlL2dyb3Vwcy9mcWZfb3J0aG9nb25hbC5weQorQEAgLTE0Myw3ICsxNDMsNyBAQCBjbGFz cyBGcWZPcnRob2dvbmFsR3JvdXAoQWJlbGlhbkdyb3VwQXV0b21vcnBoaXNtR3JvdXBfc3ViZ3Jv dXApOgorICAgICAgICAgWzIvMyAgIDAgICAwXQorICAgICAgICAgWyAgMCAyLzMgICAwXQorICAg ICAgICAgWyAgMCAgIDAgNC8zXQorLSAgICAgICAgZ2VuZXJhdGVkIGJ5IDIgZWxlbWVudHMKKysg ICAgICAgIGdlbmVyYXRlZCBieSAzIGVsZW1lbnRzCisgICAgICAgICBzYWdlOiBxID0gbWF0cml4 LmRpYWdvbmFsKFFRLCBbMy8yLCAxLzQsIDEvNF0pCisgICAgICAgICBzYWdlOiBUID0gVG9yc2lv blF1YWRyYXRpY0Zvcm0ocSkKKyAgICAgICAgIHNhZ2U6IFQub3J0aG9nb25hbF9ncm91cCgpLm9y ZGVyKCkKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvbGliZ2FwX3dyYXBwZXIucHl4IGIv c3JjL3NhZ2UvZ3JvdXBzL2xpYmdhcF93cmFwcGVyLnB5eAoraW5kZXggZDI1MTIxYWE3OTIuLmRj ODFiNzE2MzViIDEwMDY0NAorLS0tIGEvc3JjL3NhZ2UvZ3JvdXBzL2xpYmdhcF93cmFwcGVyLnB5 eAorKysrIGIvc3JjL3NhZ2UvZ3JvdXBzL2xpYmdhcF93cmFwcGVyLnB5eAorQEAgLTI1LDcgKzI1 LDcgQEAgTm90ZSBob3cgd2UgY2FsbCB0aGUgY29uc3RydWN0b3Igb2YgYm90aCBzdXBlcmNsYXNz ZXMgdG8gaW5pdGlhbGl6ZQorIGl0cyBvdXRwdXQgdmlhIExpYkdBUDo6CisgCisgICAgIHNhZ2U6 IEZvb0dyb3VwKCkKKy0gICAgPHBjIGdyb3VwIG9mIHNpemUgMyB3aXRoIDEgZ2VuZXJhdG9ycz4K KysgICAgPHBjIGdyb3VwIG9mIHNpemUgMyB3aXRoIDEgZ2VuZXJhdG9yPgorICAgICBzYWdlOiB0 eXBlKEZvb0dyb3VwKCkuZ2FwKCkpCisgICAgIDxjbGFzcyAnc2FnZS5saWJzLmdhcC5lbGVtZW50 LkdhcEVsZW1lbnQnPgorIAorQEAgLTEwNiw3ICsxMDYsNyBAQCBjbGFzcyBQYXJlbnRMaWJHQVAo U2FnZU9iamVjdCk6CisgICAgICAgICAuLi4uOiAgICAgICAgIFBhcmVudExpYkdBUC5fX2luaXRf XyhzZWxmLCBsZykKKyAgICAgICAgIC4uLi46ICAgICAgICAgR3JvdXAuX19pbml0X18oc2VsZikK KyAgICAgICAgIHNhZ2U6IEZvb0dyb3VwKCkKKy0gICAgICAgIDxwYyBncm91cCBvZiBzaXplIDMg d2l0aCAxIGdlbmVyYXRvcnM+CisrICAgICAgICA8cGMgZ3JvdXAgb2Ygc2l6ZSAzIHdpdGggMSBn ZW5lcmF0b3I+CisgICAgICIiIgorIAorICAgICBkZWYgX19pbml0X18oc2VsZiwgbGliZ2FwX3Bh cmVudCwgYW1iaWVudD1Ob25lKToKK0BAIC00NjEsNyArNDYxLDcgQEAgY2RlZiBjbGFzcyBFbGVt ZW50TGliR0FQKE11bHRpcGxpY2F0aXZlR3JvdXBFbGVtZW50KToKKyAgICAgICAgIC4uLi46ICAg ICAgICAgUGFyZW50TGliR0FQLl9faW5pdF9fKHNlbGYsIGxnKQorICAgICAgICAgLi4uLjogICAg ICAgICBHcm91cC5fX2luaXRfXyhzZWxmKQorICAgICAgICAgc2FnZTogRm9vR3JvdXAoKQorLSAg ICAgICAgPHBjIGdyb3VwIG9mIHNpemUgMyB3aXRoIDEgZ2VuZXJhdG9ycz4KKysgICAgICAgIDxw YyBncm91cCBvZiBzaXplIDMgd2l0aCAxIGdlbmVyYXRvcj4KKyAgICAgICAgIHNhZ2U6IEZvb0dy b3VwKCkuZ2VucygpCisgICAgICAgICAoZjEsKQorICAgICAiIiIKK2RpZmYgLS1naXQgYS9zcmMv c2FnZS9ncm91cHMvbWF0cml4X2dwcy9maW5pdGVseV9nZW5lcmF0ZWQucHkgYi9zcmMvc2FnZS9n cm91cHMvbWF0cml4X2dwcy9maW5pdGVseV9nZW5lcmF0ZWQucHkKK2luZGV4IGE2ZDNkYzAyNTEz Li42Mzk1NmFkNWYxMCAxMDA2NDQKKy0tLSBhL3NyYy9zYWdlL2dyb3Vwcy9tYXRyaXhfZ3BzL2Zp bml0ZWx5X2dlbmVyYXRlZC5weQorKysrIGIvc3JjL3NhZ2UvZ3JvdXBzL21hdHJpeF9ncHMvZmlu aXRlbHlfZ2VuZXJhdGVkLnB5CitAQCAtNTYzLDkgKzU2Myw2IEBAIGRlZiBhc19wZXJtdXRhdGlv bl9ncm91cChzZWxmLCBhbGdvcml0aG09Tm9uZSwgc2VlZD1Ob25lKToKKyAgICAgICAgICAgICAy MTQ5OTA4NDgwMAorICAgICAgICAgICAgIHNhZ2U6IFAgPSBHLmFzX3Blcm11dGF0aW9uX2dyb3Vw KCkKKyAgICAgICAgICAgICBzYWdlOiBQc21hbGxlciA9IEcuYXNfcGVybXV0YXRpb25fZ3JvdXAo YWxnb3JpdGhtPSJzbWFsbGVyIiwgc2VlZD02KQorLSAgICAgICAgICAgIHNhZ2U6IFAgPT0gUHNt YWxsZXIgICMgc2VlIHRoZSBub3RlIGJlbG93CistICAgICAgICAgICAgVHJ1ZQorLSAgICAgICAg ICAgIHNhZ2U6IFBzbWFsbGVyID0gRy5hc19wZXJtdXRhdGlvbl9ncm91cChhbGdvcml0aG09InNt YWxsZXIiKQorICAgICAgICAgICAgIHNhZ2U6IFAgPT0gUHNtYWxsZXIKKyAgICAgICAgICAgICBG YWxzZQorICAgICAgICAgICAgIHNhZ2U6IFAuY2FyZGluYWxpdHkoKQorZGlmZiAtLWdpdCBhL3Ny Yy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wYXJ0bl9yZWYyL3JlZmluZW1lbnRfZ2VuZXJpYy5weXgg Yi9zcmMvc2FnZS9ncm91cHMvcGVybV9ncHMvcGFydG5fcmVmMi9yZWZpbmVtZW50X2dlbmVyaWMu cHl4CitpbmRleCBmMmNjY2EwNDJhYy4uNDdkNjg2MjMzM2MgMTAwNjQ0CistLS0gYS9zcmMvc2Fn ZS9ncm91cHMvcGVybV9ncHMvcGFydG5fcmVmMi9yZWZpbmVtZW50X2dlbmVyaWMucHl4CisrKysg Yi9zcmMvc2FnZS9ncm91cHMvcGVybV9ncHMvcGFydG5fcmVmMi9yZWZpbmVtZW50X2dlbmVyaWMu cHl4CitAQCAtNDI3LDcgKzQyNyw3IEBAIGNkZWYgY2xhc3MgTGFiZWxsZWRCcmFuY2hpbmc6Cisg ICAgICAgICAgICAgc2FnZTogZnJvbSBzYWdlLmdyb3Vwcy5wZXJtX2dwcy5wYXJ0bl9yZWYyLnJl ZmluZW1lbnRfZ2VuZXJpYyBpbXBvcnQgTGFiZWxsZWRCcmFuY2hpbmcKKyAgICAgICAgICAgICBz YWdlOiBMID0gTGFiZWxsZWRCcmFuY2hpbmcoMykKKyAgICAgICAgICAgICBzYWdlOiBMLnNtYWxs X2dlbmVyYXRpbmdfc2V0KCkKKy0gICAgICAgICAgICBbXQorKyAgICAgICAgICAgIFsoKV0KKyAg ICAgICAgICAgICBzYWdlOiBMLmFkZF9nZW4obGliZ2FwLmV2YWwoJygxLDIsMyknKSkKKyAgICAg ICAgICAgICBzYWdlOiBMLnNtYWxsX2dlbmVyYXRpbmdfc2V0KCkKKyAgICAgICAgICAgICBbKDEs MiwzKV0KK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvcGVybV9ncHMvcGVybWdyb3VwLnB5 IGIvc3JjL3NhZ2UvZ3JvdXBzL3Blcm1fZ3BzL3Blcm1ncm91cC5weQoraW5kZXggZWJkZjdjNGM2 ZWIuLmZiMTQwMDhjOGUwIDEwMDY0NAorLS0tIGEvc3JjL3NhZ2UvZ3JvdXBzL3Blcm1fZ3BzL3Bl cm1ncm91cC5weQorKysrIGIvc3JjL3NhZ2UvZ3JvdXBzL3Blcm1fZ3BzL3Blcm1ncm91cC5weQor QEAgLTkyNiw3ICs5MjYsNyBAQCBkZWYgX2NvZXJjZV9tYXBfZnJvbV8oc2VsZiwgRyk6CisgICAg ICAgICAgICBzYWdlOiBmID0gUEcuX2NvZXJjZV9tYXBfZnJvbV8oTUcpCisgICAgICAgICAgICBz YWdlOiBtZyA9IE1HLmFuX2VsZW1lbnQoKQorICAgICAgICAgICAgc2FnZTogcCA9IGYobWcpOyBw CistICAgICAgICAgICAoMiwzMywzMiwyMywzMSw1NSkoMyw0OSwzOCw0NCw0MCwyOCkoNCwxNyw1 OSw2Miw1OCw0NikoNSwyMSw0NywyMCw0Myw4KSg2LDUzLDUwKSg3LDM3LDEyLDU3LDE0LDI5KSg5 LDQxLDU2LDM0LDY0LDEwKSgxMSwyNSwxOSkoMTMsNjEsMjYsNTEsMjIsMTUpKDE2LDQ1LDM2KSgx OCwyNywzNSw0OCw1Miw1NCkoMjQsNjMsNDIpKDMwLDM5LDYwKQorKyAgICAgICAgICAgKDEsMiw2 LDE5LDM1LDMzKSgzLDksMjYsMTQsMzEsMjMpKDQsMTMsNSkoNywyMiwxNykoOCwyNCwxMikoMTAs MTYsMzIsMjcsMjAsMjgpKDExLDMwLDE4KSgxNSwyNSwzNiwzNCwyOSwyMSkKKyAgICAgICAgICAg IHNhZ2U6IFBHKHAuX2dhcF8oKSkgPT0gcAorICAgICAgICAgICAgVHJ1ZQorIAorQEAgLTk3Miwx MiArOTcyLDEyIEBAIGRlZiBfY29lcmNlX21hcF9mcm9tXyhzZWxmLCBHKToKKyAgICAgICAgICAg ICBzYWdlOiBQID0gRy5hc19wZXJtdXRhdGlvbl9ncm91cChhbGdvcml0aG09J3NtYWxsZXInLCBz ZWVkPTUpCisgICAgICAgICAgICAgc2FnZTogUDEgPSBHLmFzX3Blcm11dGF0aW9uX2dyb3VwKCkK KyAgICAgICAgICAgICBzYWdlOiBQID09IFAxCistICAgICAgICAgICAgRmFsc2UKKysgICAgICAg ICAgICBUcnVlCisgICAgICAgICAgICAgc2FnZTogZzEsIGcyLCBnMyA9IEcuZ2VucygpCisgICAg ICAgICAgICAgc2FnZTogUChnMSpnMikKKy0gICAgICAgICAgICAoMSwzLDcsMTIpKDIsNCw4LDEw KSg1LDExKSg2LDkpCisrICAgICAgICAgICAgKDEsNCwxMywxMSkoMiw1LDE0LDE4KSgzLDE1LDgs MTYpKDYsNykoOSwyMCwxOSwxMikoMTAsMTcpCisgICAgICAgICAgICAgc2FnZTogUDEoZzEqZzIp CistICAgICAgICAgICAgKDIsMjksMjUsNjgpKDMsNTcsMTMsNTQpKDQsMTEsNzIsMzcpKDUsMzks NjAsMjMpKDYsNjQsNzUsNjMpKDcsMjEsNTAsNzMpKDgsNDYsMzgsMzIpKDksNzQsMzUsMTgpKDEw LDQ0LDQ5LDQ4KSgxMiwxNiwzNCw3MSkoMTQsNzksMjcsNDApKDE1LDI2KSgxNyw2Miw1OSw3Niko MTksNzgsNzAsNjUpKDIwLDIyLDU4LDUxKSgyNCwzMywzNiw0MykoMjgsODEsODAsNTIpKDMwLDUz LDU2LDY5KSgzMSw2MSkoNDEsNDIsNjcsNTUpKDQ1LDc3KSg0Nyw2NikKKysgICAgICAgICAgICAo MSw0LDEzLDExKSgyLDUsMTQsMTgpKDMsMTUsOCwxNikoNiw3KSg5LDIwLDE5LDEyKSgxMCwxNykK KyAKKyAgICAgICAgIEFub3RoZXIgY2hlY2sgZm9yIDp0cmFjOmA1NTgzYDo6CisgCitAQCAtMTMw Miw3ICsxMzAyLDcgQEAgZGVmIGdlbnNfc21hbGwoc2VsZik6CisgICAgICAgICAgICAgc2FnZTog Ry5nZW5zX3NtYWxsKCkgIyByYW5kb20KKyAgICAgICAgICAgICBbKCdiJywnYycpLCAoJ2EnLCdj JywnYicpXSAjIyAob24gNjQtYml0IExpbnV4KQorICAgICAgICAgICAgIFsoJ2EnLCdiJyksICgn YScsJ2MnLCdiJyldICMjIChvbiBTb2xhcmlzKQorLSAgICAgICAgICAgIHNhZ2U6IGxlbihHLmdl bnNfc21hbGwoKSkgPT0gMgorKyAgICAgICAgICAgIHNhZ2U6IGxlbihHLmdlbnNfc21hbGwoKSkg PT0gMiAjIHJhbmRvbQorICAgICAgICAgICAgIFRydWUKKyAgICAgICAgICIiIgorICAgICAgICAg Z2VucyA9IHNlbGYuX2xpYmdhcF8oKS5TbWFsbEdlbmVyYXRpbmdTZXQoKQorQEAgLTQzNzAsMTcg KzQzNzAsMjMgQEAgZGVmIGlzX3RyYW5zaXRpdmUoc2VsZiwgZG9tYWluPU5vbmUpOgorIAorICAg ICAgICAgOjoKKyAKKy0gICAgICAgICAgICBzYWdlOiBHID0gUGVybXV0YXRpb25Hcm91cChbWygx LDIsMyw0LDUpXSxbKDEsMildXSkgI1NfNSBvbiBbMS4uNV0KKy0gICAgICAgICAgICBzYWdlOiBH LmlzX3RyYW5zaXRpdmUoWzEsNCw1XSkKKysgICAgICAgICAgICBzYWdlOiBHID0gUGVybXV0YXRp b25Hcm91cChbWygxLDIsMyw0LDUpXSxbKDEsMildLFsoNiw3KV1dKQorKyAgICAgICAgICAgIHNh Z2U6IEcuaXNfdHJhbnNpdGl2ZShbMSwyLDMsNCw1XSkKKyAgICAgICAgICAgICBUcnVlCistICAg ICAgICAgICAgc2FnZTogRy5pc190cmFuc2l0aXZlKFsyLi42XSkKKysgICAgICAgICAgICBzYWdl OiBHLmlzX3RyYW5zaXRpdmUoWzEuLjddKQorICAgICAgICAgICAgIEZhbHNlCisgICAgICAgICAg ICAgc2FnZTogRy5pc190cmFuc2l0aXZlKEcubm9uX2ZpeGVkX3BvaW50cygpKQorLSAgICAgICAg ICAgIFRydWUKKysgICAgICAgICAgICBGYWxzZQorICAgICAgICAgICAgIHNhZ2U6IEggPSBQZXJt dXRhdGlvbkdyb3VwKFtbKDEsMiwzKV0sWyg0LDUsNildXSkKKyAgICAgICAgICAgICBzYWdlOiBI LmlzX3RyYW5zaXRpdmUoSC5ub25fZml4ZWRfcG9pbnRzKCkpCisgICAgICAgICAgICAgRmFsc2UK KyAKKysgICAgICAgIElmIGBHYCBkb2VzIG5vdCBhY3Qgb24gdGhlIGRvbWFpbiwgaXQgYWx3YXlz IHJldHVybnMgYGBGYWxzZWBgOjoKKysKKysgICAgICAgICAgICBzYWdlOiBHID0gUGVybXV0YXRp b25Hcm91cChbWygxLDIsMyw0LDUpXSxbKDEsMildXSkgI1NfNSBvbiBbMS4uNV0KKysgICAgICAg ICAgICBzYWdlOiBHLmlzX3RyYW5zaXRpdmUoWzEsNCw1XSkKKysgICAgICAgICAgICBGYWxzZQor KworICAgICAgICAgTm90ZSB0aGF0IHRoaXMgZGlmZmVycyBmcm9tIHRoZSBkZWZpbml0aW9uIGlu IEdBUCwgd2hlcmUKKyAgICAgICAgIGBgSXNUcmFuc2l0aXZlYGAgcmV0dXJucyB3aGV0aGVyIHRo ZSBncm91cCBpcyB0cmFuc2l0aXZlIG9uIHRoZQorICAgICAgICAgc2V0IG9mIHBvaW50cyBtb3Zl ZCBieSB0aGUgZ3JvdXAuCitAQCAtNDQzNiwxMiArNDQ0MiwxNiBAQCBkZWYgaXNfcHJpbWl0aXZl KHNlbGYsIGRvbWFpbj1Ob25lKToKKyAgICAgICAgICAgICBzYWdlOiBHID0gUGVybXV0YXRpb25H cm91cChbWygxLDIsMyw0KV0sWygyLDQpXV0pCisgICAgICAgICAgICAgc2FnZTogRy5pc19wcmlt aXRpdmUoWzEuLjRdKQorICAgICAgICAgICAgIEZhbHNlCistICAgICAgICAgICAgc2FnZTogRy5p c19wcmltaXRpdmUoWzEsMiwzXSkKKy0gICAgICAgICAgICBUcnVlCisgICAgICAgICAgICAgc2Fn ZTogRyA9IFBlcm11dGF0aW9uR3JvdXAoW1soMyw0LDUsNildLFsoMyw0KV1dKSAjU180IG9uIFsz Li42XQorICAgICAgICAgICAgIHNhZ2U6IEcuaXNfcHJpbWl0aXZlKEcubm9uX2ZpeGVkX3BvaW50 cygpKQorICAgICAgICAgICAgIFRydWUKKyAKKysgICAgICAgIElmIGBHYCBkb2VzIG5vdCBhY3Qg b24gdGhlIGRvbWFpbiwgaXQgYWx3YXlzIHJldHVybnMgYGBGYWxzZWBgOjoKKysKKysgICAgICAg ICAgICBzYWdlOiBHID0gUGVybXV0YXRpb25Hcm91cChbWygxLDIsMyw0KV0sWygyLDQpXV0pCisr ICAgICAgICAgICAgc2FnZTogRy5pc19wcmltaXRpdmUoWzEsMiwzXSkKKysgICAgICAgICAgICBG YWxzZQorKworICAgICAgICAgIiIiCisgICAgICAgICAjSWYgdGhlIGRvbWFpbiBpcyBub3QgYSBz dWJzZXQgb2Ygc2VsZi5kb21haW4oKSwgdGhlbiB0aGUKKyAgICAgICAgICNhY3Rpb24gaXNuJ3Qg cHJpbWl0aXZlLgorZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2ludGVyZmFjZXMvZ2FwLnB5IGIvc3Jj L3NhZ2UvaW50ZXJmYWNlcy9nYXAucHkKK2luZGV4IDdhZTE3OTJlOWRlLi5lY2FhOWZkMjM0MSAx MDA2NDQKKy0tLSBhL3NyYy9zYWdlL2ludGVyZmFjZXMvZ2FwLnB5CisrKysgYi9zcmMvc2FnZS9p bnRlcmZhY2VzL2dhcC5weQorQEAgLTE1MTIsNiArMTUxMiw4IEBAIGRlZiBnYXBfcmVzZXRfd29y a3NwYWNlKG1heF93b3Jrc3BhY2Vfc2l6ZT1Ob25lLCB2ZXJib3NlPUZhbHNlKToKKyAgICAgIiIi CisgICAgICMgQ3JlYXRlIG5ldyB3b3Jrc3BhY2Ugd2l0aCBmaWxlbmFtZSBXT1JLU1BBQ0UKKyAg ICAgZyA9IEdhcCh1c2Vfd29ya3NwYWNlX2NhY2hlPUZhbHNlLCBtYXhfd29ya3NwYWNlX3NpemU9 Tm9uZSkKKysgICAgZy5ldmFsKCdDb2xvclByb21wdChmYWxzZSknKQorKyAgICBnLmV2YWwoJ1Nl dFVzZXJQcmVmZXJlbmNlKCJVc2VDb2xvclByb21wdCIsIGZhbHNlKScpCisgICAgIGcuZXZhbCgn U2V0VXNlclByZWZlcmVuY2UoIkhpc3RvcnlNYXhMaW5lcyIsIDMwKScpCisgICAgIGZyb20gc2Fn ZS50ZXN0cy5nYXBfcGFja2FnZXMgaW1wb3J0IGFsbF9pbnN0YWxsZWRfcGFja2FnZXMKKyAgICAg Zm9yIHBrZyBpbiBhbGxfaW5zdGFsbGVkX3BhY2thZ2VzKGdhcD1nKToKK2RpZmYgLS1naXQgYS9z cmMvc2FnZS9pbnRlcmZhY2VzL2dhcF93b3Jrc3BhY2UucHkgYi9zcmMvc2FnZS9pbnRlcmZhY2Vz L2dhcF93b3Jrc3BhY2UucHkKK2luZGV4IDMzYTg3ZGQ1MDc2Li4wM2I0MGJlNjg1NiAxMDA2NDQK Ky0tLSBhL3NyYy9zYWdlL2ludGVyZmFjZXMvZ2FwX3dvcmtzcGFjZS5weQorKysrIGIvc3JjL3Nh Z2UvaW50ZXJmYWNlcy9nYXBfd29ya3NwYWNlLnB5CitAQCAtMTYsNyArMTYsOCBAQAorIGltcG9y dCBvcworIGltcG9ydCB0aW1lCisgaW1wb3J0IGhhc2hsaWIKKy1mcm9tIHNhZ2UuZW52IGltcG9y dCBET1RfU0FHRSwgR0FQX1NPCisraW1wb3J0IHN1YnByb2Nlc3MKKytmcm9tIHNhZ2UuZW52IGlt cG9ydCBET1RfU0FHRSwgSE9TVE5BTUUsIEdBUF9MSUJfRElSLCBHQVBfU0hBUkVfRElSCisgCisg CisgZGVmIGdhcF93b3Jrc3BhY2VfZmlsZShzeXN0ZW09ImdhcCIsIG5hbWU9IndvcmtzcGFjZSIs IGRpcj1Ob25lKToKK0BAIC01OSwxMSArNjAsMTMgQEAgZGVmIGdhcF93b3Jrc3BhY2VfZmlsZShz eXN0ZW09ImdhcCIsIG5hbWU9IndvcmtzcGFjZSIsIGRpcj1Ob25lKToKKyAgICAgaWYgZGlyIGlz IE5vbmU6CisgICAgICAgICBkaXIgPSBvcy5wYXRoLmpvaW4oRE9UX1NBR0UsICdnYXAnKQorIAor LSAgICBpZiBHQVBfU086CistICAgICAgICBoID0gaGFzaGxpYi5zaGExKEdBUF9TTy5lbmNvZGUo J3V0Zi04JykpLmhleGRpZ2VzdCgpCistICAgIGVsc2U6CistICAgICAgICBoID0gJ3Vua25vd24n CistICAgIHJldHVybiBvcy5wYXRoLmpvaW4oZGlyLCAnJXMtJXMtJXMnICUgKHN5c3RlbSwgbmFt ZSwgaCkpCisrICAgIGRhdGEgPSBmJ3tHQVBfTElCX0RJUn06e0dBUF9TSEFSRV9ESVJ9JworKyAg ICBmb3IgcGF0aCBpbiBHQVBfTElCX0RJUiwgR0FQX1NIQVJFX0RJUjoKKysgICAgICAgIHN5c2lu Zm8gPSBvcy5wYXRoLmpvaW4ocGF0aCwgInN5c2luZm8uZ2FwIikKKysgICAgICAgIGlmIG9zLnBh dGguZXhpc3RzKHN5c2luZm8pOgorKyAgICAgICAgICAgIGRhdGEgKz0gc3VicHJvY2Vzcy5nZXRv dXRwdXQoZicuICJ7c3lzaW5mb30iICYmIGVjaG8gIjokR0FQX1ZFUlNJT046JEdBUGFyY2giJykK KysgICAgaCA9IGhhc2hsaWIuc2hhMShkYXRhLmVuY29kZSgndXRmLTgnKSkuaGV4ZGlnZXN0KCkK KysgICAgcmV0dXJuIG9zLnBhdGguam9pbihkaXIsIGYne3N5c3RlbX0te25hbWV9LXtIT1NUTkFN RX0te2h9JykKKyAKKyAKKyBkZWYgcHJlcGFyZV93b3Jrc3BhY2VfZGlyKGRpcj1Ob25lKToKK2Rp ZmYgLS1naXQgYS9zcmMvc2FnZS9saWJzL2dhcC9lbGVtZW50LnB5eCBiL3NyYy9zYWdlL2xpYnMv Z2FwL2VsZW1lbnQucHl4CitpbmRleCBjNTU1ZWEwMzMzYy4uZTNkYjM5MzRiYWYgMTAwNjQ0Cist LS0gYS9zcmMvc2FnZS9saWJzL2dhcC9lbGVtZW50LnB5eAorKysrIGIvc3JjL3NhZ2UvbGlicy9n YXAvZWxlbWVudC5weXgKK0BAIC0xMzAsNiArMTMwLDcgQEAgY2RlZiBjaGFyICpjYXB0dXJlX3N0 ZG91dChPYmogZnVuYywgT2JqIG9iaik6CisgICAgICIiIgorICAgICBjZGVmIE9iaiBzLCBzdHJl YW0sIG91dHB1dF90ZXh0X3N0cmluZworICAgICBjZGVmIFVJbnQgcmVzCisrICAgIGNkZWYgVHlw T3V0cHV0RmlsZSBvdXRwdXQKKyAgICAgIyBUaGUgb25seSB3YXkgdG8gZ2V0IGEgc3RyaW5nIHJl cHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdCB0aGF0IGlzIHRydWx5CisgICAgICMgY29uc2lzdGVu dCB3aXRoIGhvdyBpdCB3b3VsZCBiZSByZXByZXNlbnRlZCBhdCB0aGUgR0FQIFJFUEwgaXMgdG8g Y2FsbAorICAgICAjIFZpZXdPYmogb24gaXQuICBVbmZvcnR1bmF0ZWx5LCBWaWV3T2JqICpwcmlu dHMqIHRvIHRoZSBvdXRwdXQgc3RyZWFtLAorQEAgLTE0NSwxMiArMTQ2LDEyIEBAIGNkZWYgY2hh ciAqY2FwdHVyZV9zdGRvdXQoT2JqIGZ1bmMsIE9iaiBvYmopOgorICAgICAgICAgb3V0cHV0X3Rl eHRfc3RyaW5nID0gR0FQX1ZhbHVlR2xvYmFsVmFyaWFibGUoIk91dHB1dFRleHRTdHJpbmciKQor ICAgICAgICAgc3RyZWFtID0gQ0FMTF8yQVJHUyhvdXRwdXRfdGV4dF9zdHJpbmcsIHMsIEdBUF9U cnVlKQorIAorLSAgICAgICAgaWYgbm90IE9wZW5PdXRwdXRTdHJlYW0oc3RyZWFtKToKKysgICAg ICAgIGlmIG5vdCBPcGVuT3V0cHV0U3RyZWFtKCZvdXRwdXQsIHN0cmVhbSk6CisgICAgICAgICAg ICAgcmFpc2UgR0FQRXJyb3IoImZhaWxlZCB0byBvcGVuIG91dHB1dCBjYXB0dXJlIHN0cmVhbSBm b3IgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZXByZXNlbnRpbmcgR0FQIG9iamVj dCIpCisgCisgICAgICAgICBDQUxMXzFBUkdTKGZ1bmMsIG9iaikKKy0gICAgICAgIENsb3NlT3V0 cHV0KCkKKysgICAgICAgIENsb3NlT3V0cHV0KCZvdXRwdXQpCisgICAgICAgICByZXR1cm4gQ1NU Ul9TVFJJTkcocykKKyAgICAgZmluYWxseToKKyAgICAgICAgIEdBUF9MZWF2ZSgpCitkaWZmIC0t Z2l0IGEvc3JjL3NhZ2UvbGlicy9nYXAvZ2FwX2luY2x1ZGVzLnB4ZCBiL3NyYy9zYWdlL2xpYnMv Z2FwL2dhcF9pbmNsdWRlcy5weGQKK2luZGV4IDZkMjJlMzI1NDBiLi42MTExZDE4YTVjNyAxMDA2 NDQKKy0tLSBhL3NyYy9zYWdlL2xpYnMvZ2FwL2dhcF9pbmNsdWRlcy5weGQKKysrKyBiL3NyYy9z YWdlL2xpYnMvZ2FwL2dhcF9pbmNsdWRlcy5weGQKK0BAIC03Niw4ICs3NiwxMCBAQCBjZGVmIGV4 dGVybiBmcm9tICJnYXAvaW50b2JqLmgiIG5vZ2lsOgorIAorIAorIGNkZWYgZXh0ZXJuIGZyb20g ImdhcC9pby5oIiBub2dpbDoKKy0gICAgVUludCBPcGVuT3V0cHV0U3RyZWFtKE9iaiBzdHJlYW0p CistICAgIFVJbnQgQ2xvc2VPdXRwdXQoKQorKyAgICBjdHlwZWRlZiBzdHJ1Y3QgVHlwT3V0cHV0 RmlsZToKKysgICAgICAgIHBhc3MKKysgICAgVUludCBPcGVuT3V0cHV0U3RyZWFtKFR5cE91dHB1 dEZpbGUqIG91dHB1dCwgT2JqIHN0cmVhbSkKKysgICAgVUludCBDbG9zZU91dHB1dChUeXBPdXRw dXRGaWxlKiBvdXRwdXQpCisgCisgCisgY2RlZiBleHRlcm4gZnJvbSAiZ2FwL2xpYmdhcC1hcGku aCIgbm9naWw6CitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbGlicy9nYXAvbGliZ2FwLnB5eCBiL3Ny Yy9zYWdlL2xpYnMvZ2FwL2xpYmdhcC5weXgKK2luZGV4IGIxYTY0ZTU3OTM5Li42YTM2NjEzYWE4 YyAxMDA2NDQKKy0tLSBhL3NyYy9zYWdlL2xpYnMvZ2FwL2xpYmdhcC5weXgKKysrKyBiL3NyYy9z YWdlL2xpYnMvZ2FwL2xpYmdhcC5weXgKK0BAIC02OTUsNyArNjk1LDcgQEAgY2xhc3MgR2FwKFBh cmVudCk6CisgICAgICAgICAgICAgc2FnZTogbGliZ2FwLkxpc3QKKyAgICAgICAgICAgICA8R2Fw IGZ1bmN0aW9uICJMaXN0Ij4KKyAgICAgICAgICAgICBzYWdlOiBsaWJnYXAuR2xvYmFsUmFuZG9t U291cmNlCistICAgICAgICAgICAgPFJhbmRvbVNvdXJjZSBpbiBJc0dsb2JhbFJhbmRvbVNvdXJj ZT4KKysgICAgICAgICAgICA8UmFuZG9tU291cmNlIGluIElzR0FQUmFuZG9tU291cmNlPgorICAg ICAgICAgIiIiCisgICAgICAgICBpZiBuYW1lIGluIGRpcihzZWxmLl9fY2xhc3NfXyk6CisgICAg ICAgICAgICAgcmV0dXJuIGdldGF0dHIoc2VsZi5fX2NsYXNzX18sIG5hbWUpCitkaWZmIC0tZ2l0 IGEvc3JjL3NhZ2UvbGlicy9nYXAvc2F2ZWRfd29ya3NwYWNlLnB5IGIvc3JjL3NhZ2UvbGlicy9n YXAvc2F2ZWRfd29ya3NwYWNlLnB5CitpbmRleCBhZDVhZGVjMzZkMC4uNzYzNjcwN2Y1NTcgMTAw NjQ0CistLS0gYS9zcmMvc2FnZS9saWJzL2dhcC9zYXZlZF93b3Jrc3BhY2UucHkKKysrKyBiL3Ny Yy9zYWdlL2xpYnMvZ2FwL3NhdmVkX3dvcmtzcGFjZS5weQorQEAgLTgsNyArOCw3IEBACisgCisg aW1wb3J0IG9zCisgaW1wb3J0IGdsb2IKKy1mcm9tIHNhZ2UuZW52IGltcG9ydCBHQVBfUk9PVF9E SVIKKytmcm9tIHNhZ2UuZW52IGltcG9ydCBHQVBfTElCX0RJUgorIGZyb20gc2FnZS5pbnRlcmZh Y2VzLmdhcF93b3Jrc3BhY2UgaW1wb3J0IGdhcF93b3Jrc3BhY2VfZmlsZQorIAorIAorQEAgLTMx LDcgKzMxLDcgQEAgZGVmIHRpbWVzdGFtcCgpOgorICAgICAiIiIKKyAgICAgbGliZ2FwX2RpciA9 IG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykKKyAgICAgbGliZ2FwX2ZpbGVzID0gZ2xvYi5nbG9i KG9zLnBhdGguam9pbihsaWJnYXBfZGlyLCAnKicpKQorLSAgICBnYXBfcGFja2FnZXMgPSBnbG9i Lmdsb2Iob3MucGF0aC5qb2luKEdBUF9ST09UX0RJUiwgJ3BrZycsICcqJykpCisrICAgIGdhcF9w YWNrYWdlcyA9IGdsb2IuZ2xvYihvcy5wYXRoLmpvaW4oR0FQX0xJQl9ESVIsICdwa2cnLCAnKicp KQorICAgICBmaWxlcyA9IGxpYmdhcF9maWxlcyArIGdhcF9wYWNrYWdlcworICAgICBpZiBsZW4o ZmlsZXMpID09IDA6CisgICAgICAgICBwcmludCgnVW5hYmxlIHRvIGZpbmQgTGliR0FQIGZpbGVz LicpCitkaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbGlicy9nYXAvdXRpbC5weXggYi9zcmMvc2FnZS9s aWJzL2dhcC91dGlsLnB5eAoraW5kZXggMzQ0YWI4OGM0MmEuLmVhYTY1OWQ2NGM3IDEwMDY0NAor LS0tIGEvc3JjL3NhZ2UvbGlicy9nYXAvdXRpbC5weXgKKysrKyBiL3NyYy9zYWdlL2xpYnMvZ2Fw L3V0aWwucHl4CitAQCAtMTMsNyArMTMsNyBAQCBVdGlsaXR5IGZ1bmN0aW9ucyBmb3IgR0FQCisg IyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqCisgCisgZnJvbSBsaWJjLnNpZ25hbCBjaW1wb3J0IHNpZ25h bCwgU0lHQ0hMRCwgU0lHX0RGTAorLWZyb20gcG9zaXguZGxmY24gY2ltcG9ydCBkbG9wZW4sIGRs Y2xvc2UsIFJUTERfTk9XLCBSVExEX0dMT0JBTAorK2Zyb20gcG9zaXguZGxmY24gY2ltcG9ydCBk bG9wZW4sIGRsY2xvc2UsIGRsZXJyb3IsIFJUTERfTEFaWSwgUlRMRF9HTE9CQUwKKyAKKyBmcm9t IGNweXRob24uZXhjIGNpbXBvcnQgUHlFcnJfRmV0Y2gsIFB5RXJyX1Jlc3RvcmUKKyBmcm9tIGNw eXRob24ub2JqZWN0IGNpbXBvcnQgUHlfTFQsIFB5X0xFLCBQeV9FUSwgUHlfTkUsIFB5X0dULCBQ eV9HRQorQEAgLTE2NCwzMyArMTY0LDYgQEAgY2RlZiB2b2lkIGdhc21hbl9jYWxsYmFjaygpIHdp dGggZ2lsOgorICMjIyBJbml0aWFsaXphdGlvbiBvZiBHQVAgIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgCist ZGVmIGdhcF9yb290KCk6CistICAgICIiIgorLSAgICBGaW5kIHRoZSBsb2NhdGlvbiBvZiB0aGUg R0FQIHJvb3QgaW5zdGFsbCB3aGljaCBpcyBzdG9yZWQgaW4gdGhlIGdhcAorLSAgICBzdGFydHVw IHNjcmlwdC4KKy0KKy0gICAgRVhBTVBMRVM6OgorLQorLSAgICAgICAgc2FnZTogZnJvbSBzYWdl LmxpYnMuZ2FwLnV0aWwgaW1wb3J0IGdhcF9yb290CistICAgICAgICBzYWdlOiBnYXBfcm9vdCgp ICAgIyByYW5kb20gb3V0cHV0CistICAgICAgICAnL2hvbWUvdmJyYXVuL29wdC9zYWdlLTUuMy5y YzAvbG9jYWwvZ2FwL2xhdGVzdCcKKy0gICAgIiIiCistICAgIGlmIG9zLnBhdGguZXhpc3RzKHNh Z2UuZW52LkdBUF9ST09UX0RJUik6CistICAgICAgICByZXR1cm4gc2FnZS5lbnYuR0FQX1JPT1Rf RElSCistCistICAgICMgQXR0ZW1wdCB0byBmaWd1cmUgb3V0IHRoZSBhcHByb3ByaWF0ZSBHQVBf Uk9PVCBieSByZWFkaW5nIHRoZQorLSAgICAjIGxvY2FsL2Jpbi9nYXAgc2hlbGwgc2NyaXB0OyB0 aGlzIGlzIGFuIHVnbHkgaGFjayB0aGF0IGV4aXN0cyBmb3IKKy0gICAgIyBoaXN0b3JpY2FsIHJl YXNvbnM7IHRoZSBiZXN0IGFwcHJvYWNoIHRvIHNldHRpbmcgd2hlcmUgU2FnZSBsb29rcyBmb3IK Ky0gICAgIyB0aGUgYXBwcm9wcmlhdGUgR0FQX1JPT1QgaXMgdG8gc2V0IHRoZSBHQVBfUk9PVF9E SVIgdmFyaWFibGUKKy0gICAgU0FHRV9MT0NBTCA9IHNhZ2UuZW52LlNBR0VfTE9DQUwKKy0gICAg d2l0aCBvcGVuKG9zLnBhdGguam9pbihTQUdFX0xPQ0FMLCAnYmluJywgJ2dhcCcpKSBhcyBmOgor LSAgICAgICAgZ2FwX3NoID0gZi5yZWFkKCkuc3BsaXRsaW5lcygpCistICAgIGdhcGRpciA9IG5l eHQoeCBmb3IgeCBpbiBnYXBfc2ggaWYgeC5zdHJpcCgpLnN0YXJ0c3dpdGgoJ0dBUF9ST09UJykp CistICAgIGdhcGRpciA9IGdhcGRpci5zcGxpdCgnIicpWzFdCistICAgIGdhcGRpciA9IGdhcGRp ci5yZXBsYWNlKCckU0FHRV9MT0NBTCcsIFNBR0VfTE9DQUwpCistICAgIHJldHVybiBnYXBkaXIK Ky0KKy0KKyAjIFRvIGVuc3VyZSB0aGF0IHdlIGNhbGwgaW5pdGlhbGl6ZV9saWJnYXAgb25seSBv bmNlLgorIGNkZWYgYmludCBfZ2FwX2lzX2luaXRpYWxpemVkID0gRmFsc2UKKyAKK0BAIC0yMzIs MTIgKzIwNSwxMiBAQCBjZGVmIGluaXRpYWxpemUoKToKKyAgICAgIyB0aGlzIGlzbid0IHBvcnRh YmxlCisgCisgICAgIGNkZWYgdm9pZCogaGFuZGxlCistICAgIGxpYmdhcG5hbWUgPSBzdHJfdG9f Ynl0ZXMoc2FnZS5lbnYuR0FQX1NPKQorLSAgICBoYW5kbGUgPSBkbG9wZW4obGliZ2FwbmFtZSwg UlRMRF9OT1cgfCBSVExEX0dMT0JBTCkKKysgICAgIyByZWxvYWQgdGhlIGN1cnJlbnQgbW9kdWxl IHRvIGZvcmNlIHJlbG9hZCBvZiBsaWJnYXAgKHNlZSAjMzM0NDYpCisrICAgIGxpYiA9IHN0cl90 b19ieXRlcyhfX2xvYWRlcl9fLnBhdGgsIEZTX0VOQ09ESU5HLCAic3Vycm9nYXRlZXNjYXBlIikK KysgICAgaGFuZGxlID0gZGxvcGVuKGxpYiwgUlRMRF9HTE9CQUx8UlRMRF9MQVpZKQorICAgICBp ZiBoYW5kbGUgaXMgTlVMTDoKKy0gICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigKKy0gICAgICAg ICAgICAgICAgIkNvdWxkIG5vdCBkbG9wZW4oKSBsaWJnYXAgZXZlbiB0aG91Z2ggaXQgc2hvdWxk IGFscmVhZHkgIgorLSAgICAgICAgICAgICAgICAiYmUgbG9hZGVkISIpCisrICAgICAgICBlcnIg PSBkbGVycm9yKCkKKysgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcihmIkNvdWxkIG5vdCByZWxv YWQgZ2FwIGxpYnJhcnkgd2l0aCBSVExEX0dMT0JBTCAoe2Vycn0pIikKKyAgICAgZGxjbG9zZSho YW5kbGUpCisgCisgICAgICMgRGVmaW5lIGFyZ3YgdmFyaWFibGUsIHdoaWNoIHdlIHdpbGwgcGFz cyBpbiB0bworQEAgLTI0NSw3ICsyMTgsNyBAQCBjZGVmIGluaXRpYWxpemUoKToKKyAgICAgY2Rl ZiBjaGFyKiBhcmd2WzE2XQorICAgICBhcmd2WzBdID0gInNhZ2UiCisgICAgIGFyZ3ZbMV0gPSAi LWwiCistICAgIHMgPSBzdHJfdG9fYnl0ZXMoZ2FwX3Jvb3QoKSwgRlNfRU5DT0RJTkcsICJzdXJy b2dhdGVlc2NhcGUiKQorKyAgICBzID0gc3RyX3RvX2J5dGVzKHNhZ2UuZW52LkdBUF9MSUJfRElS ICsgIjsiICsgc2FnZS5lbnYuR0FQX1NIQVJFX0RJUiwgRlNfRU5DT0RJTkcsICJzdXJyb2dhdGVl c2NhcGUiKQorICAgICBhcmd2WzJdID0gcworIAorICAgICBhcmd2WzNdID0gIi1tIgorQEAgLTM2 MiwxNSArMzM1LDkgQEAgY2RlZiBPYmogZ2FwX2V2YWwoc3RyIGdhcF9zdHJpbmcpIGV4Y2VwdD8g TlVMTDoKKyAgICAgICAgIEdBUEVycm9yOiBFcnJvciwgVmFyaWFibGU6ICdDb21wbGV4JyBtdXN0 IGhhdmUgYSB2YWx1ZQorICAgICAgICAgU3ludGF4IGVycm9yOiA7IGV4cGVjdGVkIGluIHN0cmVh bToxCisgICAgICAgICBDb21wbGV4IEZpZWxkIHdpdGggNTMgYml0cyBvZiBwcmVjaXNpb247Owor LSAgICAgICAgIF5eXl5eXl5eXl5eXgorKyAgICAgICAgICAgICAgICBeXl5eXgorICAgICAgICAg RXJyb3IsIFZhcmlhYmxlOiAnd2l0aCcgbXVzdCBoYXZlIGEgdmFsdWUKKy0gICAgICAgIFN5bnRh eCBlcnJvcjogOyBleHBlY3RlZCBpbiBzdHJlYW06MQorLSAgICAgICAgQ29tcGxleCBGaWVsZCB3 aXRoIDUzIGJpdHMgb2YgcHJlY2lzaW9uOzsKKy0gICAgICAgICBeXl5eXl5eXl5eXl5eXl5eXl5e XgorICAgICAgICAgRXJyb3IsIFZhcmlhYmxlOiAnYml0cycgbXVzdCBoYXZlIGEgdmFsdWUKKy0g ICAgICAgIFN5bnRheCBlcnJvcjogOyBleHBlY3RlZCBpbiBzdHJlYW06MQorLSAgICAgICAgQ29t cGxleCBGaWVsZCB3aXRoIDUzIGJpdHMgb2YgcHJlY2lzaW9uOzsKKy0gICAgICAgICBeXl5eXl5e Xl5eXl5eXl5eXl5eXl5eXl5eXl5eCisgICAgICAgICBFcnJvciwgVmFyaWFibGU6ICdwcmVjaXNp b24nIG11c3QgaGF2ZSBhIHZhbHVlCisgCisgICAgIFRlc3QgdGhhdCBvbiBhIHN1YnNlcXVlbnQg YXR0ZW1wdCB3ZSBnZXQgdGhlIHNhbWUgbWVzc2FnZSAobm8gZ2FyYmFnZSB3YXMKK2RpZmYgLS1n aXQgYS9zcmMvc2FnZS9saWJzL3Npbmd1bGFyL3Npbmd1bGFyLnB5eCBiL3NyYy9zYWdlL2xpYnMv c2luZ3VsYXIvc2luZ3VsYXIucHl4CitpbmRleCBkOGVhN2IwN2YzYy4uNGJlYjE3NzRkZjkgMTAw NjQ0CistLS0gYS9zcmMvc2FnZS9saWJzL3Npbmd1bGFyL3Npbmd1bGFyLnB5eAorKysrIGIvc3Jj L3NhZ2UvbGlicy9zaW5ndWxhci9zaW5ndWxhci5weXgKK0BAIC0xNzA1LDE0ICsxNzA1LDcgQEAg Y2RlZiBvYmplY3Qgc2kyc2FfaW50dmVjKGludHZlYyAqdik6CisgY2RlZiBleHRlcm4gZnJvbSAq OiAjIGhhY2sgdG8gZ2V0IGF0IGN5dGhvbiBtYWNybworICAgICBpbnQgdW5saWtlbHkoaW50KQor IAorLWNkZWYgZXh0ZXJuIGZyb20gImRsZmNuLmgiOgorLSAgICB2b2lkICpkbG9wZW4oY2hhciAq LCBsb25nKQorLSAgICBjaGFyICpkbGVycm9yKCkKKy0gICAgdm9pZCBkbGNsb3NlKHZvaWQgKmhh bmRsZSkKKy0KKy1jZGVmIGV4dGVybiBmcm9tICJkbGZjbi5oIjoKKy0gICAgY2RlZiBsb25nIFJU TERfTEFaWQorLSAgICBjZGVmIGxvbmcgUlRMRF9HTE9CQUwKKytmcm9tIHBvc2l4LmRsZmNuIGNp bXBvcnQgZGxvcGVuLCBkbGNsb3NlLCBkbGVycm9yLCBSVExEX0xBWlksIFJUTERfR0xPQkFMCisg CisgY2RlZiBpbnQgb3ZlcmZsb3dfY2hlY2sodW5zaWduZWQgbG9uZyBlLCByaW5nICpfcmluZykg ZXhjZXB0IC0xOgorICAgICAiIiIKK0BAIC0xNzYyLDggKzE3NTUsNiBAQCBjZGVmIGluaXRfbGli c2luZ3VsYXIoKToKKyAKKyAgICAgY2RlZiB2b2lkICpoYW5kbGUgPSBOVUxMCisgCistICAgIGZy b20gc2FnZS5lbnYgaW1wb3J0IExJQlNJTkdVTEFSX1BBVEgKKy0gICAgbGliID0gc3RyX3RvX2J5 dGVzKExJQlNJTkdVTEFSX1BBVEgsIEZTX0VOQ09ESU5HLCAic3Vycm9nYXRlZXNjYXBlIikKKyAK KyAgICAgIyBUaGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL1Npbmd1 bGFyL1Npbmd1bGFyL2lzc3Vlcy8xMTEzCisgICAgICMgYW5kIGNhbiBiZSByZW1vdmVkIG9uY2Ug dGhhdCBmaXggbWFrZXMgaXQgaW50byByZWxlYXNlIG9mIFNpbmd1bGFyIHRoYXQKK0BAIC0xNzgw LDEwICsxNzcxLDEyIEBAIGNkZWYgaW5pdF9saWJzaW5ndWxhcigpOgorIAorICAgICBpbXBvcnQg cGxhdGZvcm0KKyAgICAgaWYgbm90IHBsYXRmb3JtLnN5c3RlbSgpLnN0YXJ0c3dpdGgoIkNZR1dJ TiIpOgorKyAgICAgICAgIyByZWxvYWQgdGhlIGN1cnJlbnQgbW9kdWxlIHRvIGZvcmNlIHJlbG9h ZCBvZiBsaWJTaW5ndWxhciAoc2VlICMzMzQ0NikKKysgICAgICAgIGxpYiA9IHN0cl90b19ieXRl cyhfX2xvYWRlcl9fLnBhdGgsIEZTX0VOQ09ESU5HLCAic3Vycm9nYXRlZXNjYXBlIikKKyAgICAg ICAgIGhhbmRsZSA9IGRsb3BlbihsaWIsIFJUTERfR0xPQkFMfFJUTERfTEFaWSkKKyAgICAgICAg IGlmIG5vdCBoYW5kbGU6CisgICAgICAgICAgICAgZXJyID0gZGxlcnJvcigpCistICAgICAgICAg ICAgcmFpc2UgSW1wb3J0RXJyb3IoZiJjYW5ub3QgbG9hZCBTaW5ndWxhciBsaWJyYXJ5IGZyb20g e0xJQlNJTkdVTEFSX1BBVEh9ICh7ZXJyfSkiKQorKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVF cnJvcihmIkNvdWxkIG5vdCByZWxvYWQgU2luZ3VsYXIgbGlicmFyeSB3aXRoIFJUTERfR0xPQkFM ICh7ZXJyfSkiKQorIAorICAgICAjIGxvYWQgU0lOR1VMQVIKKyAgICAgc2lJbml0KGxpYikKK2Rp ZmYgLS1naXQgYS9zcmMvc2FnZS90ZXN0cy9nYXBfcGFja2FnZXMucHkgYi9zcmMvc2FnZS90ZXN0 cy9nYXBfcGFja2FnZXMucHkKK2luZGV4IDJlNDUxOGNhMjI2Li5jMzAyYjE2OWI4YSAxMDA2NDQK Ky0tLSBhL3NyYy9zYWdlL3Rlc3RzL2dhcF9wYWNrYWdlcy5weQorKysrIGIvc3JjL3NhZ2UvdGVz dHMvZ2FwX3BhY2thZ2VzLnB5CitAQCAtMTAzLDcgKzEwMyw3IEBAIGRlZiBhbGxfaW5zdGFsbGVk X3BhY2thZ2VzKGlnbm9yZV9kb3RfZ2FwPUZhbHNlLCBnYXA9Tm9uZSk6CisgCisgICAgICAgICBz YWdlOiBmcm9tIHNhZ2UudGVzdHMuZ2FwX3BhY2thZ2VzIGltcG9ydCBhbGxfaW5zdGFsbGVkX3Bh Y2thZ2VzCisgICAgICAgICBzYWdlOiBhbGxfaW5zdGFsbGVkX3BhY2thZ2VzKCkKKy0gICAgICAg ICguLi4nR0FQRG9jJy4uLikKKysgICAgICAgICguLi4nZ2FwZG9jJy4uLikKKyAgICAgICAgIHNh Z2U6IGFsbF9pbnN0YWxsZWRfcGFja2FnZXMoaWdub3JlX2RvdF9nYXA9VHJ1ZSkgPT0gYWxsX2lu c3RhbGxlZF9wYWNrYWdlcyhnYXA9Z2FwLCBpZ25vcmVfZG90X2dhcD1UcnVlKQorICAgICAgICAg VHJ1ZQorICAgICAiIiIKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy9nZXRf cGF0Y2hlcyBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy9nZXRfcGF0Y2hlcwpuZXcgZmlsZSBt b2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAuLjZjYjcxN2Y3MmQ4ZQotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy9nZXRfcGF0Y2hlcwpAQCAtMCwwICsxLDQw IEBACisjISAvYmluL3NoCisKK1VSTF9CQVNFX1BSPSJodHRwczovL2dpdGh1Yi5jb20vc2FnZW1h dGgvc2FnZS9wdWxsLyIKK1VSTF9CQVNFX0NPTVBBUkU9Imh0dHBzOi8vZ2l0aHViLmNvbS9zYWdl bWF0aC9zYWdlL2NvbXBhcmUvOS44Li4uIgorCitjYXNlICIkMSIgaW4KKwktbikgIERPPWVjaG8g OzsKK2VzYWMKKworIyBnZXRfcHIgPFBSIG51bWJlcj4gPGRlc2NyaXB0aW9uPiBbZXh0XQorZ2V0 X3ByKCkgeworCXByPSQxCisJZGVzYz0kKGVjaG8gIiQyIiB8IHNlZCAtZSAncy8gL18vZycpCisJ ZXh0PSR7My1kaWZmfQorCSRETyB3Z2V0ICIkVVJMX0JBU0VfUFIkcHIuJGV4dCIgLU8gIiRwci0k ZGVzYy5wYXRjaCIKK30KKworZ2V0X3RyYWMoKSB7CisJdGlja2V0PSQxCisJZGVzYz0kKGVjaG8g IiQyIiB8IHNlZCAtZSAncy8gL18vZycpCisJY29tbWl0PSQzCisJJERPIHdnZXQgIiRVUkxfQkFT RV9DT01QQVJFJGNvbW1pdC5kaWZmIiAtTyAidHJhYy0kdGlja2V0LSRkZXNjLSRjb21taXQucGF0 Y2giCit9CisKKyMgcnVuIGZyb20gcGF0Y2hlcyBkaXIKK2NkICQoZGlybmFtZSAiJDAiKQorCisj IG1lcmdlZCBpbiAxMC4wLmJldGEwCitnZXRfdHJhYyAzNDg1MSAic3VwcG9ydCBzaW5ndWxhciA0 LjMuMS5wMyIgNWU1NzM3YTBjCitnZXRfcHIgMzUwNjggImZpeCB0ZXN0cyBnaWFjIDEuOS4wLjM1 IiBwYXRjaAorCisjIHBvc2l0aXZlIHJldmlldworZ2V0X3ByIDM0OTk0ICJmaXggdGVzdHMgbnVt cHkgMS4yNCIKK2dldF9wciAzNDk5NyAiZml4IGVkZ2UgY2FzZSBvZiBpbnRlZ2VyX2NoZWNrIgor Z2V0X3ByIDM1MDU4ICJza2lwIHVuc3RhYmxlIHRlc3RzIGtseWFjaGtvIgorZ2V0X3ByIDM1MDk0 ICJzdXBwb3J0IGdhcCA0LjEyIgkJCQkJIyBpbmNsdWRlcyBQUiAzNTA5MworCisjIG5lZWRzIHJl dmlldyAKK2dldF9wciAzNDk5NSAic3VwcG9ydCB0YWNoeW9uIDAuOTkuMiIKK2dldF9wciAzNDk4 MCAiYXZvaWQgZmFjdG9yaW5nIGluIGlzX3ByaW1lIgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdl bWF0aC9wYXRjaGVzL3RyYWMtMzMzNjAtYXZvaWRfZmFjdG9yaW5nX2luX2lzX3ByaW1lLTYzMzBj ZWUxYTY5MjI5YjJmNWQ4YWM0YTA5YTczZDgxNTJmNWUxNGQucGF0Y2ggYi9zcmNwa2dzL3NhZ2Vt YXRoL3BhdGNoZXMvdHJhYy0zMzM2MC1hdm9pZF9mYWN0b3JpbmdfaW5faXNfcHJpbWUtNjMzMGNl ZTFhNjkyMjliMmY1ZDhhYzRhMDlhNzNkODE1MmY1ZTE0ZC5wYXRjaApkZWxldGVkIGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggZTA1MmUzMDZlN2ExLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9z YWdlbWF0aC9wYXRjaGVzL3RyYWMtMzMzNjAtYXZvaWRfZmFjdG9yaW5nX2luX2lzX3ByaW1lLTYz MzBjZWUxYTY5MjI5YjJmNWQ4YWM0YTA5YTczZDgxNTJmNWUxNGQucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw1MyArMCwwIEBACi1Gcm9tIDYzMzBjZWUxYTY5MjI5YjJmNWQ4YWM0YTA5YTczZDgx NTJmNWUxNGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/R29uemFs bz0yMFRvcm5hcj1DMz1BRGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+Ci1EYXRlOiBNb24sIDI4 IEZlYiAyMDIyIDIzOjE1OjE2IC0wMzAwCi1TdWJqZWN0OiB0cmFjIDMzMzYwOiBhdm9pZCBmYWN0 b3JpbmcgaW4gaXNfcHJpbWUoKQotCi1JbiB0aGUgYWRkZWQgVEVTVCwgdGhlIGlkZWFsIG5vcm0g aXMgcHJvZHVjdCBvZiB0d28gcHJpbWVzIGJ1dCBmYWN0b3JpbmcKLXRoaXMgcHJvZHVjdCB0YWtl cyBhYm91dCBoYWxmIGFuIGhvdXIsIHNvIGZhY3RvcmluZyB0aGUgaWRlYWwgaXMgc2xvdy4KLQot VG8gZml4IHRoZSBpc3N1ZSwgd2Ugb25seSBmYWN0b3IgdGhlIGlkZWFsIGlmIHRoZSBub3JtIGlz IGEgcHJpbWUgcG93ZXIuCi0tLS0KLSBzcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvbnVtYmVy X2ZpZWxkX2lkZWFsLnB5IHwgMjIgKysrKysrKysrKysrKysrKysrKysrKwotIDEgZmlsZSBjaGFu Z2VkLCAyMiBpbnNlcnRpb25zKCspCi0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9yaW5ncy9udW1i ZXJfZmllbGQvbnVtYmVyX2ZpZWxkX2lkZWFsLnB5IGIvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2Zp ZWxkL251bWJlcl9maWVsZF9pZGVhbC5weQotaW5kZXggZjc4NWYyMi4uMTBkMWY4OCAxMDA2NDQK LS0tLSBhL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9udW1iZXJfZmllbGRfaWRlYWwucHkK LSsrKyBiL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9udW1iZXJfZmllbGRfaWRlYWwucHkK LUBAIC05OTUsMTAgKzk5NSwzMiBAQCBjbGFzcyBOdW1iZXJGaWVsZElkZWFsKElkZWFsX2dlbmVy aWMpOgotICAgICAgICAgICAgIEZhbHNlCi0gICAgICAgICAgICAgc2FnZTogSy5pZGVhbCgxNyku aXNfcHJpbWUoKSAgIyByYW1pZmllZAotICAgICAgICAgICAgIEZhbHNlCi0rCi0rICAgICAgICBU RVNUUzo6Ci0rCi0rICAgICAgICBDaGVjayB0aGF0IHdlIGRvIG5vdCBmYWN0b3IgdGhlIG5vcm0g b2YgdGhlIGlkZWFsLCB0aGlzIHVzZWQKLSsgICAgICAgIHRvIHRha2UgaGFsZiBhbiBob3VyLCBz ZWUgOnRyYWM6YDMzMzYwYAotKwotKyAgICAgICAgICAgc2FnZTogSy48YSxiLGM+ID0gTnVtYmVy RmllbGQoW3heMi0yLHheMi0zLHheMi01XSkKLSsgICAgICAgICAgIHNhZ2U6IHQgPSAoKCgtMjYx MTk0MCpjICsgMTkyNTI5MC83NjUzKSpiIC0gMTUzNzEzMC83NjUzKmMKLSsgICAgICAgICAgIC4u Li46ICAgICAgICsgMTAxMzA5NTApKmEgKyAoMTM0MzAxNC83NjUzKmMgLSA4MzQ5NzcwKSpiCi0r ICAgICAgICAgICAuLi4uOiAgICAgICArIDY0NzcwNTgqYyAtIDI4MDE0NDk5OTAvNDAwMjUxOSkK LSsgICAgICAgICAgIHNhZ2U6IHQuaXNfcHJpbWUoKQotKyAgICAgICAgICAgRmFsc2UKLSsKLSAg ICAgICAgICIiIgotICAgICAgICAgdHJ5OgotICAgICAgICAgICAgIHJldHVybiBzZWxmLl9wYXJp X3ByaW1lIGlzIG5vdCBOb25lCi0gICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6Ci0rICAg ICAgICAgICAgSyA9IHNlbGYubnVtYmVyX2ZpZWxkKCkucGFyaV9uZigpCi0rICAgICAgICAgICAg SSA9IHNlbGYucGFyaV9obmYoKQotKyAgICAgICAgICAgICMgVGhpcyB3b3VsZCBiZSBiZXR0ZXIs IGJ1dCBpdCBpcyBicm9rZW4gaW4gcGFyaSAyLjEzLjMuCi0rICAgICAgICAgICAgIyAgIHNlbGYu X3BhcmlfcHJpbWUgPSBLLmlkZWFsaXNtYXhpbWFsKEkpIG9yIE5vbmUKLSsgICAgICAgICAgICAj IEluc3RlYWQgd2UgZmFjdG9yIEksIGJ1dCBvbmx5IGlmIHRoZSBub3JtIGlzIGEgcHJpbWUgcG93 ZXIKLSsgICAgICAgICAgICBuID0gSy5pZGVhbG5vcm0oSSkKLSsgICAgICAgICAgICBpZiBuLmRl bm9taW5hdG9yKCkgPiAxIG9yIG5vdCBuLmlzcHJpbWVwb3dlcigpOgotKyAgICAgICAgICAgICAg ICBzZWxmLl9wYXJpX3ByaW1lID0gTm9uZQotKyAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UK LSAgICAgICAgICAgICBGID0gc2VsZi5mYWN0b3IoKSAgIyBmYWN0b3JpemF0aW9uIHdpdGggY2Fj aGluZwotICAgICAgICAgICAgIGlmIGxlbihGKSAhPSAxIG9yIEZbMF1bMV0gIT0gMToKLSAgICAg ICAgICAgICAgICAgc2VsZi5fcGFyaV9wcmltZSA9IE5vbmUKLS0tIAotY2dpdCB2MS4wLTEtZ2Q4 OGUKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzM0NDYtbWFr ZV9HQVBfU09fdW5uZWNlc3NhcnktMzFlM2ZjNGVjOGI4Njg3YmNjZDIyZDJlMzE2MWM4NmNmNTU1 M2UwNi5wYXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTMzNDQ2LW1ha2VfR0FQ X1NPX3VubmVjZXNzYXJ5LTMxZTNmYzRlYzhiODY4N2JjY2QyMmQyZTMxNjFjODZjZjU1NTNlMDYu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZiOWUwZjVhODA3MS4uMDAwMDAw MDAwMDAwCi0tLSBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTMzNDQ2LW1ha2VfR0FQ X1NPX3VubmVjZXNzYXJ5LTMxZTNmYzRlYzhiODY4N2JjY2QyMmQyZTMxNjFjODZjZjU1NTNlMDYu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0MjcgKzAsMCBAQAotRnJvbSA5ZmVlYzI4MmQwMzlj YTI1YmJlZmE1MDcxMGY4MjE3Yjc3NWNlMTExIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJv bTogPT9VVEYtOD9xP0dvbnphbG89MjBUb3JuYXI9QzM9QURhPz0gPHRvcm5hcmlhQGNtYXQuZWR1 LnV5PgotRGF0ZTogVGh1LCAzIE1hciAyMDIyIDE0OjQ3OjAwIC0wMzAwCi1TdWJqZWN0OiBnYXA6 IGRvIG5vdCBkaXJlY3RseSBkbG9wZW4oKSB0aGUgZ2FwIGxpYnJhcnkKLQotVGhpcyBuZWVkcyB0 aGUgc29uYW1lIChhcyBpbiBzYWdlLmVudi5HQVBfU08pIHdoaWNoIGhhcyBpc3N1ZXMgZm9yCi1z eXN0ZW0gZ2FwIGFzIGV4cGxhaW5lZCBpbiAjMzM0NDYuCi0KLUluc3RlYWQgd2UgZGxvcGVuKCkg dGhlIGV4dGVuc2lvbiBtb2R1bGUgc2FnZS5saWJzLmdhcC51dGlsIHdoaWNoLAotaGF2aW5nIGEg bGluayB0aW1lIGRlcGVuZGVuY3kgdG8gbGliZ2FwLCB3aWxsIGluZGlyZWN0bHkgZGxvcGVuKCkg aXQuCi0KLUZvciB0aGUgcmVjb3JkOiBieSB0aGUgdGltZSB3ZSBydW4gZGxvcGVuKCkgdGhlIGxp YmdhcCBzaG91bGQgYmUgYWxyZWFkeQotbG9hZGVkLiBUaGUgcHVycG9zZSBvZiBkb2luZyBpdCBp cyB0byBjaGFuZ2UgbW9kZSB0byBSVExEX0dMT0JBTCBzbyB0aGF0Ci1zeW1ib2xzIGluIGxpYmdh cCBhcmUgcGxhY2VkIGluIHRoZSBnbG9iYWwgc3ltYm9sIHRhYmxlLiBUaGlzIGlzCi1yZXF1aXJl ZCB0byBjb21waWxlZCBsb2FkIGdhcCBwYWNrYWdlcy4KLQotQW4gZWFzeSB0ZXN0IHRoYXQgdGhp cyBpcyB3b3JraW5nIG9rIGlzOgotCi0gICAgc2FnZTogbGliZ2FwLkxvYWRQYWNrYWdlKCJpbyIp Ci0gICAgdHJ1ZQotCi1UaGlzIHJlcXVpcmVzIG9wdGlvbmFsIHNwa2cgYGdhcF9wYWNrYWdlc2Ag dG8gYmUgaW5zdGFsbGVkLgotLS0tCi0gc3JjL3NhZ2UvbGlicy9nYXAvdXRpbC5weXggfCAxMiAr KysrKystLS0tLS0KLSAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9u cygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbGlicy9nYXAvdXRpbC5weXggYi9zcmMvc2Fn ZS9saWJzL2dhcC91dGlsLnB5eAotaW5kZXggMzQ0YWI4OC4uYWZmNjA0YiAxMDA2NDQKLS0tLSBh L3NyYy9zYWdlL2xpYnMvZ2FwL3V0aWwucHl4Ci0rKysgYi9zcmMvc2FnZS9saWJzL2dhcC91dGls LnB5eAotQEAgLTEzLDcgKzEzLDcgQEAgVXRpbGl0eSBmdW5jdGlvbnMgZm9yIEdBUAotICMqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKgotIAotIGZyb20gbGliYy5zaWduYWwgY2ltcG9ydCBzaWduYWwsIFNJ R0NITEQsIFNJR19ERkwKLS1mcm9tIHBvc2l4LmRsZmNuIGNpbXBvcnQgZGxvcGVuLCBkbGNsb3Nl LCBSVExEX05PVywgUlRMRF9HTE9CQUwKLStmcm9tIHBvc2l4LmRsZmNuIGNpbXBvcnQgZGxvcGVu LCBkbGNsb3NlLCBkbGVycm9yLCBSVExEX0xBWlksIFJUTERfR0xPQkFMCi0gCi0gZnJvbSBjcHl0 aG9uLmV4YyBjaW1wb3J0IFB5RXJyX0ZldGNoLCBQeUVycl9SZXN0b3JlCi0gZnJvbSBjcHl0aG9u Lm9iamVjdCBjaW1wb3J0IFB5X0xULCBQeV9MRSwgUHlfRVEsIFB5X05FLCBQeV9HVCwgUHlfR0UK LUBAIC0yMzIsMTIgKzIzMiwxMiBAQCBjZGVmIGluaXRpYWxpemUoKToKLSAgICAgIyB0aGlzIGlz bid0IHBvcnRhYmxlCi0gCi0gICAgIGNkZWYgdm9pZCogaGFuZGxlCi0tICAgIGxpYmdhcG5hbWUg PSBzdHJfdG9fYnl0ZXMoc2FnZS5lbnYuR0FQX1NPKQotLSAgICBoYW5kbGUgPSBkbG9wZW4obGli Z2FwbmFtZSwgUlRMRF9OT1cgfCBSVExEX0dMT0JBTCkKLSsgICAgIyByZWxvYWQgdGhlIGN1cnJl bnQgbW9kdWxlIHRvIGZvcmNlIHJlbG9hZCBvZiBsaWJnYXAgKHNlZSAjMzM0NDYpCi0rICAgIGxp YiA9IHN0cl90b19ieXRlcyhfX2xvYWRlcl9fLnBhdGgsIEZTX0VOQ09ESU5HLCAic3Vycm9nYXRl ZXNjYXBlIikKLSsgICAgaGFuZGxlID0gZGxvcGVuKGxpYiwgUlRMRF9HTE9CQUx8UlRMRF9MQVpZ KQotICAgICBpZiBoYW5kbGUgaXMgTlVMTDoKLS0gICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigK LS0gICAgICAgICAgICAgICAgIkNvdWxkIG5vdCBkbG9wZW4oKSBsaWJnYXAgZXZlbiB0aG91Z2gg aXQgc2hvdWxkIGFscmVhZHkgIgotLSAgICAgICAgICAgICAgICAiYmUgbG9hZGVkISIpCi0rICAg ICAgICBlcnIgPSBkbGVycm9yKCkKLSsgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcihmIkNvdWxk IG5vdCByZWxvYWQgZ2FwIGxpYnJhcnkgd2l0aCBSVExEX0dMT0JBTCAoe2Vycn0pIikKLSAgICAg ZGxjbG9zZShoYW5kbGUpCi0gCi0gICAgICMgRGVmaW5lIGFyZ3YgdmFyaWFibGUsIHdoaWNoIHdl IHdpbGwgcGFzcyBpbiB0bwotLS0gCi1jZ2l0IHYxLjAtMS1nZDg4ZQotCi0KLUZyb20gNzA0YTc5 NTNiOTdhYjcyNmUyYWY2MTA3MjQ3MjZhYTU2MmJjOGJmOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKLUZyb206ID0/VVRGLTg/cT9Hb256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBj bWF0LmVkdS51eT4KLURhdGU6IFRodSwgMyBNYXIgMjAyMiAyMzowMDowNyAtMDMwMAotU3ViamVj dDogc2luZ3VsYXI6IGRvIG5vdCBkaXJlY3RseSBkbG9wZW4oKSB0aGUgc2luZ3VsYXIgbGlicmFy eQotCi1TYW1lIGFzIGZvciBnYXAgaW4gdGhlIHByZXZpb3VzIGNvbW1pdC4gSW5zdGVhZCBvZiBy ZXF1aXJpbmcgdGhlIHNvbmFtZQotKGFzIGluIHNhZ2UuZW52LkxJQlNJTkdVTEFSX1BBVEgpIHdl IGRsb3BlbigpIHRoZSBleHRlbnNpb24gbW9kdWxlCi1zYWdlLmxpYnMuc2luZ3VsYXIuc2luZ3Vs YXIgd2hpY2ggd2lsbCBpbmRpcmVjdGx5IGRsb3BlbigpIGxpYlNpbmd1bGFyLgotLS0tCi0gc3Jj L3NhZ2UvbGlicy9zaW5ndWxhci9zaW5ndWxhci5weXggfCAxNSArKysrLS0tLS0tLS0tLS0KLSAx IGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKLQotZGlmZiAt LWdpdCBhL3NyYy9zYWdlL2xpYnMvc2luZ3VsYXIvc2luZ3VsYXIucHl4IGIvc3JjL3NhZ2UvbGli cy9zaW5ndWxhci9zaW5ndWxhci5weXgKLWluZGV4IGQ4ZWE3YjAuLjRiZWIxNzcgMTAwNjQ0Ci0t LS0gYS9zcmMvc2FnZS9saWJzL3Npbmd1bGFyL3Npbmd1bGFyLnB5eAotKysrIGIvc3JjL3NhZ2Uv bGlicy9zaW5ndWxhci9zaW5ndWxhci5weXgKLUBAIC0xNzA1LDE0ICsxNzA1LDcgQEAgY2RlZiBv YmplY3Qgc2kyc2FfaW50dmVjKGludHZlYyAqdik6Ci0gY2RlZiBleHRlcm4gZnJvbSAqOiAjIGhh Y2sgdG8gZ2V0IGF0IGN5dGhvbiBtYWNybwotICAgICBpbnQgdW5saWtlbHkoaW50KQotIAotLWNk ZWYgZXh0ZXJuIGZyb20gImRsZmNuLmgiOgotLSAgICB2b2lkICpkbG9wZW4oY2hhciAqLCBsb25n KQotLSAgICBjaGFyICpkbGVycm9yKCkKLS0gICAgdm9pZCBkbGNsb3NlKHZvaWQgKmhhbmRsZSkK LS0KLS1jZGVmIGV4dGVybiBmcm9tICJkbGZjbi5oIjoKLS0gICAgY2RlZiBsb25nIFJUTERfTEFa WQotLSAgICBjZGVmIGxvbmcgUlRMRF9HTE9CQUwKLStmcm9tIHBvc2l4LmRsZmNuIGNpbXBvcnQg ZGxvcGVuLCBkbGNsb3NlLCBkbGVycm9yLCBSVExEX0xBWlksIFJUTERfR0xPQkFMCi0gCi0gY2Rl ZiBpbnQgb3ZlcmZsb3dfY2hlY2sodW5zaWduZWQgbG9uZyBlLCByaW5nICpfcmluZykgZXhjZXB0 IC0xOgotICAgICAiIiIKLUBAIC0xNzYyLDggKzE3NTUsNiBAQCBjZGVmIGluaXRfbGlic2luZ3Vs YXIoKToKLSAKLSAgICAgY2RlZiB2b2lkICpoYW5kbGUgPSBOVUxMCi0gCi0tICAgIGZyb20gc2Fn ZS5lbnYgaW1wb3J0IExJQlNJTkdVTEFSX1BBVEgKLS0gICAgbGliID0gc3RyX3RvX2J5dGVzKExJ QlNJTkdVTEFSX1BBVEgsIEZTX0VOQ09ESU5HLCAic3Vycm9nYXRlZXNjYXBlIikKLSAKLSAgICAg IyBUaGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL1Npbmd1bGFyL1Np bmd1bGFyL2lzc3Vlcy8xMTEzCi0gICAgICMgYW5kIGNhbiBiZSByZW1vdmVkIG9uY2UgdGhhdCBm aXggbWFrZXMgaXQgaW50byByZWxlYXNlIG9mIFNpbmd1bGFyIHRoYXQKLUBAIC0xNzgwLDEwICsx NzcxLDEyIEBAIGNkZWYgaW5pdF9saWJzaW5ndWxhcigpOgotIAotICAgICBpbXBvcnQgcGxhdGZv cm0KLSAgICAgaWYgbm90IHBsYXRmb3JtLnN5c3RlbSgpLnN0YXJ0c3dpdGgoIkNZR1dJTiIpOgot KyAgICAgICAgIyByZWxvYWQgdGhlIGN1cnJlbnQgbW9kdWxlIHRvIGZvcmNlIHJlbG9hZCBvZiBs aWJTaW5ndWxhciAoc2VlICMzMzQ0NikKLSsgICAgICAgIGxpYiA9IHN0cl90b19ieXRlcyhfX2xv YWRlcl9fLnBhdGgsIEZTX0VOQ09ESU5HLCAic3Vycm9nYXRlZXNjYXBlIikKLSAgICAgICAgIGhh bmRsZSA9IGRsb3BlbihsaWIsIFJUTERfR0xPQkFMfFJUTERfTEFaWSkKLSAgICAgICAgIGlmIG5v dCBoYW5kbGU6Ci0gICAgICAgICAgICAgZXJyID0gZGxlcnJvcigpCi0tICAgICAgICAgICAgcmFp c2UgSW1wb3J0RXJyb3IoZiJjYW5ub3QgbG9hZCBTaW5ndWxhciBsaWJyYXJ5IGZyb20ge0xJQlNJ TkdVTEFSX1BBVEh9ICh7ZXJyfSkiKQotKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcihm IkNvdWxkIG5vdCByZWxvYWQgU2luZ3VsYXIgbGlicmFyeSB3aXRoIFJUTERfR0xPQkFMICh7ZXJy fSkiKQotIAotICAgICAjIGxvYWQgU0lOR1VMQVIKLSAgICAgc2lJbml0KGxpYikKLS0tIAotY2dp dCB2MS4wLTEtZ2Q4OGUKLQotCi1Gcm9tIGQ3MTQ1YzE0ZWY1OGFjZmJlMDBkOGY5NDFkMjgwMmU5 NmFkNGJhMTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/R29uemFs bz0yMFRvcm5hcj1DMz1BRGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+Ci1EYXRlOiBGcmksIDQg TWFyIDIwMjIgMTY6Mzc6MzQgLTAzMDAKLVN1YmplY3Q6IHNpbmd1bGFyOiByZW1vdmUgTElCU0lO R1VMQVJfUEFUSCwgbm8gbG9uZ2VyIG5lZWRlZAotCi0tLS0KLSBidWlsZC9wa2dzL3Npbmd1bGFy L3Nwa2ctY29uZmlndXJlLm00IHwgNjMgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KLSBwa2dzL3NhZ2UtY29uZi9fc2FnZV9jb25mL19jb25mLnB5LmluIHwgIDMgLS0KLSBzcmMv c2FnZS9lbnYucHkgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgLS0tLQotIDMgZmlsZXMgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDcxIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvYnVp bGQvcGtncy9zaW5ndWxhci9zcGtnLWNvbmZpZ3VyZS5tNCBiL2J1aWxkL3BrZ3Mvc2luZ3VsYXIv c3BrZy1jb25maWd1cmUubTQKLWluZGV4IGFmMmViODUuLjZkM2QzZGEgMTAwNjQ0Ci0tLS0gYS9i dWlsZC9wa2dzL3Npbmd1bGFyL3Nwa2ctY29uZmlndXJlLm00Ci0rKysgYi9idWlsZC9wa2dzL3Np bmd1bGFyL3Nwa2ctY29uZmlndXJlLm00Ci1AQCAtOSw1MiArOSw3IEBAIFNBR0VfU1BLR19DT05G SUdVUkUoW3Npbmd1bGFyXSwgWwotICAgICAgICBBQ19NU0dfQ0hFQ0tJTkcoW3RoYXQgU2luZ3Vs YXIncyBoZWxwIGlzIHdvcmtpbmddKQotICAgICAgICBBU19JRihbdGVzdCB4YHByaW50ZiAic3lz dGVtKFwiLS1icm93c2VyXCIsIFwiYnVpbHRpblwiKTsgXG4gaGVscDsiIHwgU2luZ3VsYXIgMj4m MSB8IGdyZXAgImVycm9yXCBvY2N1cnJlZCJgID0geF0sIFsKLSAgICAgICAgIEFDX01TR19SRVNV TFQoeWVzKQotLSAgICAgICAgZG5sIFdlIGhhdmUgU2luZ3VsYXIuIE5vdyBkZXRlcm1pbmUgdGhl IHNoYXJlZCBsaWJyYXJ5IHBhdGggb24KLS0gICAgICAgIGRubCBwbGF0Zm9ybXMgb24gd2hpY2gg c2FnZS5saWJzLnNpbmd1bGFyIG5lZWRzIHRvIHJlbG9hZCB0aGUgbGlicmFyeSB3aXRoIFJUTERf R0xPQkFMLgotLSAgICAgICAgQVNfQ0FTRShbJGhvc3Rfb3NdLAotLSAgICAgICAgICBbY3lnd2lu Kl0sIFtkbmwgTm90aGluZyB0byBkbwotLSAgICAgICAgICAgICAgICAgICAgIF0sCi0tICAgICAg ICAgICAgICAgICAgICAgW2RubCBVc2UgcGtnLWNvbmZpZyB0byBnZXQgc2luZ3VsYXIncyBsaWJk aXIgd2hpbGUgd2UncmUgYXQgaXQuIEFzIGEKLS0gICAgICAgICAgICAgICAgICAgICAgZG5sIG1v cmFsIGNvbXByb21pc2UgZm9yIHVzaW5nIHBrZy1jb25maWcsIHRoaXMgdWx0aW1hdGVseSBhbGxv d3MgdXMKLS0gICAgICAgICAgICAgICAgICAgICAgZG5sIHRvIHBhc3MgYW4gYWJzb2x1dGUgcGF0 aCB0byBkbG9wZW4oKSwgd2hpY2ggaXMgdGhlIG9ubHkgYXBwcm9hY2gKLS0gICAgICAgICAgICAg ICAgICAgICAgZG5sIHRoYXQgUE9TSVggZ3VhcmFudGVlcyB3aWxsIHdvcmsuCi0tICAgICAgICAg ICAgICAgICAgICAgIFBLR19DSEVDS19WQVIoW1NJTkdVTEFSX0xJQl9ESVJdLCBbU2luZ3VsYXJd LCBbbGliZGlyXSkKLS0gICAgICAgICAgICAgICAgICAgICAgZG5sIFRoZSBhY2xfc2hsaWJleHQg dmFyaWFibGUgaXMgc2V0IGluIHRoZSB0b3AtbGV2ZWwgY29uZmlndXJlLmFjLgotLSAgICAgICAg ICAgICAgICAgICAgICBBQ19MQU5HX1BVU0goQykKLS0gICAgICAgICAgICAgICAgICAgICAgT1JJ R19MSUJTPSIke0xJQlN9IgotLSAgICAgICAgICAgICAgICAgICAgICBMSUJTPSIke0xJQlN9IC1s ZGwiCi0tICAgICAgICAgICAgICAgICAgICAgIEFDX01TR19DSEVDS0lORyhbaWYgd2UgY2FuIGRs b3BlbigkTElCU0lOR1VMQVJfUEFUSCldKQotLSAgICAgICAgICAgICAgICAgICAgICBMSUJTSU5H VUxBUl9QQVRIPSIke1NJTkdVTEFSX0xJQl9ESVJ9L2xpYlNpbmd1bGFyLiR7YWNsX3NobGliZXh0 fSIKLS0KLS0gICAgICAgICAgICAgICAgICAgICAgZG5sIGlmIHdlIGNhbiBkbG9wZW4oKSBpdCwg c3Vic3RpdHV0ZSB0aGUgbmFtZSBmb3Igc2FnZV9jb25mOwotLSAgICAgICAgICAgICAgICAgICAg ICBkbmwgb3RoZXJ3aXNlLCBmYWxsIGJhY2sgdG8gdXNpbmcgdGhlIFNQS0cuCi0tICAgICAgICAg ICAgICAgICAgICAgIEFDX1JVTl9JRkVMU0UoCi0tICAgICAgICAgICAgICAgICAgICAgICAgW0FD X0xBTkdfUFJPR1JBTSgKLS0gICAgICAgICAgICAgICAgICAgICAgICAgIFtbI2luY2x1ZGUgPGRs ZmNuLmg+XV0sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBbW3ZvaWQqIGggPSBkbG9wZW4o IiR7TElCU0lOR1VMQVJfUEFUSH0iLCBSVExEX0xBWlkgfCBSVExEX0dMT0JBTCk7Ci0tICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGlmIChoID09IDApIHsgcmV0dXJuIDE7IH0gZWxzZSB7IHJl dHVybiBkbGNsb3NlKGgpOyB9XV0KLS0gICAgICAgICAgICAgICAgICAgICAgICApXSwgWwotLSAg ICAgICAgICAgICAgICAgICAgICAgICAgQUNfTVNHX1JFU1VMVCh5ZXMpCi0tICAgICAgICAgICAg ICAgICAgICAgICAgXSwgWwotLSAgICAgICAgICAgICAgICAgICAgICAgICAgZG5sIHRyeSBEZWJp YW4tc3BlY2lmaWMgbmFtZQotLSAgICAgICAgICAgICAgICAgICAgICAgICAgTElCU0lOR1VMQVJf UEFUSD0iJHtTSU5HVUxBUl9MSUJfRElSfS9saWJzaW5ndWxhci1TaW5ndWxhci4ke2FjbF9zaGxp YmV4dH0iCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBBQ19SVU5fSUZFTFNFKAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgIFtBQ19MQU5HX1BST0dSQU0oCi0tICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBbWyNpbmNsdWRlIDxkbGZjbi5oPl1dLAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgW1t2b2lkKiBoID0gZGxvcGVuKCIke0xJQlNJTkdVTEFSX1BBVEh9IiwgUlRM RF9MQVpZIHwgUlRMRF9HTE9CQUwpOwotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp ZiAoaCA9PSAwKSB7IHJldHVybiAxOyB9IGVsc2UgeyByZXR1cm4gZGxjbG9zZShoKTsgfV1dCi0t ICAgICAgICAgICAgICAgICAgICAgICAgICAgKV0sIFsKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEFDX01TR19SRVNVTFQoeWVzKQotLSAgICAgICAgICAgICAgICAgICAgICAgICAgIF0s IFsKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgQUNfTVNHX1JFU1VMVChubykKLS0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2FnZV9zcGtnX2luc3RhbGxfc2luZ3VsYXI9eWVzCi0t ICAgICAgICAgICAgICAgICAgICAgICAgICBdLCBbQUNfTVNHX1JFU1VMVCh5ZXMpXSkKLS0gICAg ICAgICAgICAgICAgICAgICAgICBdLCBbQUNfTVNHX1JFU1VMVCh5ZXMpXSkKLS0KLS0gICAgICAg ICAgICAgICAgICAgICAgQUNfTEFOR19QT1AoKQotLSAgICAgICAgICAgICAgICAgICAgICBMSUJT PSIke09SSUdfTElCU30iCi0tICAgICAgICAgICAgICAgICAgICAgXQotLSAgICAgICApXSwgWwot KyAgICAgICBdLCBbCi0gICAgICAgIEFDX01TR19SRVNVTFQobm8pCi0gICAgICAgIHNhZ2Vfc3Br Z19pbnN0YWxsX3Npbmd1bGFyPXllcwotICAgICAgICBdCi1AQCAtNjQsMjAgKzE5LDQgQEAgU0FH RV9TUEtHX0NPTkZJR1VSRShbc2luZ3VsYXJdLCBbCi0gICAgICAgXSkKLSAgICAgXSkKLSAgIF0p Ci0tXSxbXSxbXSxbCi0tICBkbmwgUG9zdC1jaGVjayBwaGFzZQotLSAgZG5sIFdlIG1ha2UgdGhl IHNhZ2VfY29uZiBzdWJzdGl0dXRpb25zIGhlcmUsIGJlY2F1c2UgdGhlICJkZWZhdWx0IgotLSAg ZG5sIHN1YnN0aXR1dGlvbiBuZWVkcyB0byBiZSBtYWRlIGV2ZW4gaWYgd2Ugc2tpcHBlZCB0aGUg c3lzdGVtLVNpbmd1bGFyCi0tICBkbmwgY2hlY2tzIHRoZW1zZWx2ZXMuCi0tICBBU19JRihbdGVz dCAieCR7c2FnZV9zcGtnX2luc3RhbGxfc2luZ3VsYXJ9IiA9ICJ4eWVzIl0sIFsKLS0gICAgQVNf Q0FTRShbJGhvc3Rfb3NdLAotLSAgICAgIFtjeWd3aW4qXSwgW2RubCBOb3RoaW5nIHRvIGRvCi0t ICAgICAgICAgICAgICAgICBdLAotLSAgICAgICAgICAgICAgICAgW2RubCBTZXQgc2hhcmVkIGxp YnJhcnkgcGF0aCwgbmVlZGVkIGZvciByZWxvYWRpbmcgdGhlIGxpYnJhcnkgd2l0aCBSVExEX0dM T0JBTAotLSAgICAgICAgICAgICAgICAgIExJQlNJTkdVTEFSX1BBVEg9IlwkU0FHRV9MT0NBTC9s aWIvbGliU2luZ3VsYXIuJHthY2xfc2hsaWJleHR9IgotLSAgICAgICAgICAgICAgICAgXQotLSAg ICApCi0tICBdKQotLQotLSAgQUNfU1VCU1QoTElCU0lOR1VMQVJfUEFUSCwgIiR7TElCU0lOR1VM QVJfUEFUSH0iKQotIF0pCi1kaWZmIC0tZ2l0IGEvcGtncy9zYWdlLWNvbmYvX3NhZ2VfY29uZi9f Y29uZi5weS5pbiBiL3BrZ3Mvc2FnZS1jb25mL19zYWdlX2NvbmYvX2NvbmYucHkuaW4KLWluZGV4 IDZjZDI4ZjUuLmQ2NmJkYjMgMTAwNjQ0Ci0tLS0gYS9wa2dzL3NhZ2UtY29uZi9fc2FnZV9jb25m L19jb25mLnB5LmluCi0rKysgYi9wa2dzL3NhZ2UtY29uZi9fc2FnZV9jb25mL19jb25mLnB5Lmlu Ci1AQCAtNTUsOSArNTUsNiBAQCBUSFJFRUpTX0RJUiA9IFNBR0VfTE9DQUwgKyAiL3NoYXJlL3Ro cmVlanMtc2FnZSIKLSBPUEVOTVBfQ0ZMQUdTID0gIkBPUEVOTVBfQ0ZMQUdTQCIKLSBPUEVOTVBf Q1hYRkxBR1MgPSAiQE9QRU5NUF9DWFhGTEFHU0AiCi0gCi0tIyBUaGUgZnVsbCBhYnNvbHV0ZSBw YXRoIHRvIHRoZSBtYWluIFNpbmd1bGFyIGxpYnJhcnkuCi0tTElCU0lOR1VMQVJfUEFUSCA9ICJA TElCU0lOR1VMQVJfUEFUSEAiLnJlcGxhY2UoJyRTQUdFX0xPQ0FMJywgU0FHRV9MT0NBTCkKLS0K LSAjIEluc3RhbGxhdGlvbiBsb2NhdGlvbiBvZiB3aGVlbHMuIFRoaXMgaXMgZGV0ZXJtaW5lZCBh dCBjb25maWd1cmF0aW9uIHRpbWUKLSAjIGFuZCBkb2VzIG5vdCBkZXBlbmQgb24gdGhlIGluc3Rh bGxhdGlvbiBsb2NhdGlvbiBvZiBzYWdlLWNvbmYuCi0gU0FHRV9TUEtHX1dIRUVMUyA9ICJAU0FH RV9WRU5WQCIucmVwbGFjZSgnJHtTQUdFX0xPQ0FMfScsIFNBR0VfTE9DQUwpICsgIi92YXIvbGli L3NhZ2Uvd2hlZWxzIgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2Vudi5weSBiL3NyYy9zYWdlL2Vu di5weQotaW5kZXggOTExZjM0Yi4uOTNmNzlkZSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2Vudi5w eQotKysrIGIvc3JjL3NhZ2UvZW52LnB5Ci1AQCAtMjI5LDEyICsyMjksNiBAQCBOVExfTElCRElS ID0gdmFyKCJOVExfTElCRElSIikKLSBMSUVfSU5GT19ESVIgPSB2YXIoIkxJRV9JTkZPX0RJUiIs IGpvaW4oU0FHRV9MT0NBTCwgImxpYiIsICJMaUUiKSkKLSBTSU5HVUxBUl9CSU4gPSB2YXIoIlNJ TkdVTEFSX0JJTiIpIG9yICJTaW5ndWxhciIKLSAKLS0jIFRoZSBwYXRoIHRvIGxpYlNpbmd1bGFy LCB0byBiZSBwYXNzZWQgdG8gZGxvcGVuKCkuIFRoaXMgd2lsbAotLSMgdHlwaWNhbGx5IGJlIHNl dCB0byBhbiBhYnNvbHV0ZSBwYXRoIGluIHNhZ2VfY29uZiwgYnV0IHRoZSByZWxhdGl2ZQotLSMg ZmFsbGJhY2sgcGF0aCBoZXJlIHdvcmtzIG9uIHN5c3RlbXMgd2hlcmUgZGxvcGVuKCkgc2VhcmNo ZXMgdGhlCi0tIyBzeXN0ZW0ncyBsaWJyYXJ5IGxvY2F0aW9ucy4KLS1MSUJTSU5HVUxBUl9QQVRI ID0gdmFyKCJMSUJTSU5HVUxBUl9QQVRIIiwgImxpYlNpbmd1bGFyLnNvIikKLS0KLSAjIE9wZW5N UAotIE9QRU5NUF9DRkxBR1MgPSB2YXIoIk9QRU5NUF9DRkxBR1MiLCAiIikKLSBPUEVOTVBfQ1hY RkxBR1MgPSB2YXIoIk9QRU5NUF9DWFhGTEFHUyIsICIiKQotLS0gCi1jZ2l0IHYxLjAtMS1nZDg4 ZQotCi0KLUZyb20gOTJlNWEyMTFjNzkyZjg2ZjUzMjVkNjAxYWJmZGRmNjY3ZGE2YTc3NiBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9Hb256YWxvPTIwVG9ybmFyPUMz PUFEYT89IDx0b3JuYXJpYUBjbWF0LmVkdS51eT4KLURhdGU6IEZyaSwgNCBNYXIgMjAyMiAxNTo0 OToyNiAtMDMwMAotU3ViamVjdDogUmV2ZXJ0ICJzcmMvc2FnZS9pbnRlcmZhY2VzL2dhcF93b3Jr c3BhY2UucHk6IFVzZSBoYXNoIG9mIEdBUF9TTyB0bwotIGRpc2FtYmlndWF0ZSB0aGUgd29ya3Nw YWNlIGZpbGUsIG5vdCBTQUdFX0xPQ0FMIgotCi1UaGlzIHJldmVydHMgY29tbWl0IGE4MDFlNmQ4 NWJkNDIwYjYwZWE3NWIxNjcxODU2ZWI0M2FjNmIxOGIuCi0KLVNlZSAjMzM0NDYuCi0tLS0KLSBz cmMvc2FnZS9pbnRlcmZhY2VzL2dhcF93b3Jrc3BhY2UucHkgfCA3ICsrLS0tLS0KLSAxIGZpbGUg Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEv c3JjL3NhZ2UvaW50ZXJmYWNlcy9nYXBfd29ya3NwYWNlLnB5IGIvc3JjL3NhZ2UvaW50ZXJmYWNl cy9nYXBfd29ya3NwYWNlLnB5Ci1pbmRleCAzM2E4N2RkLi45NTNkYzg1IDEwMDY0NAotLS0tIGEv c3JjL3NhZ2UvaW50ZXJmYWNlcy9nYXBfd29ya3NwYWNlLnB5Ci0rKysgYi9zcmMvc2FnZS9pbnRl cmZhY2VzL2dhcF93b3Jrc3BhY2UucHkKLUBAIC0xNiw3ICsxNiw3IEBAIFN1cHBvcnQgZm9yIChs aWIpR0FQIHdvcmtzcGFjZSBmaWxlcwotIGltcG9ydCBvcwotIGltcG9ydCB0aW1lCi0gaW1wb3J0 IGhhc2hsaWIKLS1mcm9tIHNhZ2UuZW52IGltcG9ydCBET1RfU0FHRSwgR0FQX1NPCi0rZnJvbSBz YWdlLmVudiBpbXBvcnQgRE9UX1NBR0UsIFNBR0VfTE9DQUwKLSAKLSAKLSBkZWYgZ2FwX3dvcmtz cGFjZV9maWxlKHN5c3RlbT0iZ2FwIiwgbmFtZT0id29ya3NwYWNlIiwgZGlyPU5vbmUpOgotQEAg LTU5LDEwICs1OSw3IEBAIGRlZiBnYXBfd29ya3NwYWNlX2ZpbGUoc3lzdGVtPSJnYXAiLCBuYW1l PSJ3b3Jrc3BhY2UiLCBkaXI9Tm9uZSk6Ci0gICAgIGlmIGRpciBpcyBOb25lOgotICAgICAgICAg ZGlyID0gb3MucGF0aC5qb2luKERPVF9TQUdFLCAnZ2FwJykKLSAKLS0gICAgaWYgR0FQX1NPOgot LSAgICAgICAgaCA9IGhhc2hsaWIuc2hhMShHQVBfU08uZW5jb2RlKCd1dGYtOCcpKS5oZXhkaWdl c3QoKQotLSAgICBlbHNlOgotLSAgICAgICAgaCA9ICd1bmtub3duJwotKyAgICBoID0gaGFzaGxp Yi5zaGExKFNBR0VfTE9DQUwuZW5jb2RlKCd1dGYtOCcpKS5oZXhkaWdlc3QoKQotICAgICByZXR1 cm4gb3MucGF0aC5qb2luKGRpciwgJyVzLSVzLSVzJyAlIChzeXN0ZW0sIG5hbWUsIGgpKQotIAot IAotLS0gCi1jZ2l0IHYxLjAtMS1nZDg4ZQotCi0KLUZyb20gYjQ1ZTU1NWI1NzExYWUxMGQzNjli NTY4MzMzOTQwYzJhYTc3MTA1MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRG LTg/cT9Hb256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0LmVkdS51eT4KLURh dGU6IEZyaSwgNCBNYXIgMjAyMiAxNjozODo0OSAtMDMwMAotU3ViamVjdDogZ2FwOiByZW1vdmUg R0FQX1NPLCBubyBsb25nZXIgbmVlZGVkCi0KLS0tLQotIHNyYy9zYWdlL2Vudi5weSB8IDc1IC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQot IDEgZmlsZSBjaGFuZ2VkLCA3NSBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3NyYy9zYWdl L2Vudi5weSBiL3NyYy9zYWdlL2Vudi5weQotaW5kZXggOTNmNzlkZS4uYzE2YTA5NCAxMDA2NDQK LS0tLSBhL3NyYy9zYWdlL2Vudi5weQotKysrIGIvc3JjL3NhZ2UvZW52LnB5Ci1AQCAtMjQ5LDgx ICsyNDksNiBAQCBpZiBTQUdFX0dBUF9NRU1PUlkgaXMgbm90IE5vbmU6Ci0gU0FHRV9HQVBfQ09N TUFORCA9IHZhcignU0FHRV9HQVBfQ09NTUFORCcsIF9nYXBfY21kKQotIAotIAotLWRlZiBfZ2V0 X3NoYXJlZF9saWJfcGF0aCgqbGlibmFtZXM6IHN0cikgLT4gT3B0aW9uYWxbc3RyXToKLS0gICAg IiIiCi0tICAgIFJldHVybiB0aGUgZnVsbCBwYXRoIHRvIGEgc2hhcmVkIGxpYnJhcnkgZmlsZSBp bnN0YWxsZWQgaW4KLS0gICAgYGAkU0FHRV9MT0NBTC9saWJgYCBvciB0aGUgZGlyZWN0b3JpZXMg YXNzb2NpYXRlZCB3aXRoIHRoZQotLSAgICBQeXRob24gc3lzY29uZmlnLgotLQotLSAgICBUaGlz IGNhbiBhbHNvIGJlIHBhc3NlZCBtb3JlIHRoYW4gb25lIGxpYnJhcnkgbmFtZSAoZS5nLiBmb3Ig Y2FzZXMgd2hlcmUKLS0gICAgc29tZSBsaWJyYXJ5IG1heSBoYXZlIG11bHRpcGxlIG5hbWVzIGRl cGVuZGluZyBvbiB0aGUgcGxhdGZvcm0pIGluIHdoaWNoCi0tICAgIGNhc2UgdGhlIGZpcnN0IG9u ZSBmb3VuZCBpcyByZXR1cm5lZC4KLS0KLS0gICAgVGhpcyBzdXBwb3J0cyBtb3N0ICpOSVggdmFy aWFudHMgKGluIHdoaWNoIGBgbGliPGxpYm5hbWU+LnNvYGAgaXMgZm91bmQKLS0gICAgdW5kZXIg YGAkU0FHRV9MT0NBTC9saWJgYCksIG1hY09TIChzYW1lLCBidXQgd2l0aCB0aGUgYGAuZHlsaWJg YAotLSAgICBleHRlbnNpb24pLCBhbmQgQ3lnd2luICh1bmRlciBgYCRTQUdFX0xPQ0FML2Jpbi9j eWc8bGlibmFtZT4uZGxsYGAsCi0tICAgIG9yIGBgJFNBR0VfTE9DQUwvYmluL2N5ZzxsaWJuYW1l Pi0qLmRsbGBgIGZvciB2ZXJzaW9uZWQgRExMcykuCi0tCi0tICAgIEZvciBkaXN0cmlidXRpb25z IGxpa2UgRGViaWFuIHRoYXQgdXNlIGEgbXVsdGlhcmNoIGxheW91dCwgd2UgYWxzbyB0cnkgdGhl Ci0tICAgIG11bHRpYXJjaCBsaWIgcGF0aHMgKGkuZS4gYGAvdXNyL2xpYi88YXJjaD4vYGApLgot LQotLSAgICBUaGlzIHJldHVybnMgYGBOb25lYGAgaWYgbm8gbWF0Y2hpbmcgbGlicmFyeSBmaWxl IGNvdWxkIGJlIGZvdW5kLgotLQotLSAgICBFWEFNUExFUzo6Ci0tCi0tICAgICAgICBzYWdlOiBm cm9tIHNhZ2UuZW52IGltcG9ydCBfZ2V0X3NoYXJlZF9saWJfcGF0aAotLSAgICAgICAgc2FnZTog ImdhcCIgaW4gX2dldF9zaGFyZWRfbGliX3BhdGgoImdhcCIpCi0tICAgICAgICBUcnVlCi0tICAg ICAgICBzYWdlOiBfZ2V0X3NoYXJlZF9saWJfcGF0aCgiYW5fYWJzdXJkX2xpYiIpIGlzIE5vbmUK LS0gICAgICAgIFRydWUKLS0KLS0gICAgIiIiCi0tCi0tICAgIGZvciBsaWJuYW1lIGluIGxpYm5h bWVzOgotLSAgICAgICAgc2VhcmNoX2RpcmVjdG9yaWVzOiBMaXN0W1BhdGhdID0gW10KLS0gICAg ICAgIHBhdHRlcm5zOiBMaXN0W3N0cl0gPSBbXQotLSAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09 ICdjeWd3aW4nOgotLSAgICAgICAgICAgICMgTGF0ZXIgZG93biB3ZSB0YWtlIHRoZSBmaXJzdCBt YXRjaGluZyBETEwgZm91bmQsIHNvIHNlYXJjaAotLSAgICAgICAgICAgICMgU0FHRV9MT0NBTCBm aXJzdCBzbyB0aGF0IGl0IHRha2VzIHByZWNlZGVuY2UKLS0gICAgICAgICAgICBpZiBTQUdFX0xP Q0FMOgotLSAgICAgICAgICAgICAgICBzZWFyY2hfZGlyZWN0b3JpZXMuYXBwZW5kKFBhdGgoU0FH RV9MT0NBTCkgLyAnYmluJykKLS0gICAgICAgICAgICBzZWFyY2hfZGlyZWN0b3JpZXMuYXBwZW5k KFBhdGgoc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdCSU5ESVInKSkpCi0tICAgICAgICAgICAg IyBOb3RlOiBUaGUgZm9sbG93aW5nIGlzIG5vdCB2ZXJ5IHJvYnVzdCwgc2luY2UgaWYgdGhlcmUg YXJlIG11bHRpYmxlCi0tICAgICAgICAgICAgIyB2ZXJzaW9ucyBmb3IgdGhlIHNhbWUgbGlicmFy eSB0aGlzIGp1c3Qgc2VsZWN0cyBvbmUgbW9yZSBvciBsZXNzCi0tICAgICAgICAgICAgIyBhdCBh cmJpdHJhcnkuIEhvd2V2ZXIsIHByYWN0aWNhbGx5IHNwZWFraW5nLCBvbiBDeWd3aW4sIHRoZXJl Ci0tICAgICAgICAgICAgIyB3aWxsIG9ubHkgZXZlciBiZSBvbmUgdmVyc2lvbgotLSAgICAgICAg ICAgIHBhdHRlcm5zID0gW2YnY3lne2xpYm5hbWV9LmRsbCcsIGYnY3lne2xpYm5hbWV9LSouZGxs J10KLS0gICAgICAgIGVsc2U6Ci0tICAgICAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICdkYXJ3 aW4nOgotLSAgICAgICAgICAgICAgICBleHQgPSAnZHlsaWInCi0tICAgICAgICAgICAgZWxzZToK LS0gICAgICAgICAgICAgICAgZXh0ID0gJ3NvJwotLQotLSAgICAgICAgICAgIGlmIFNBR0VfTE9D QUw6Ci0tICAgICAgICAgICAgICAgIHNlYXJjaF9kaXJlY3Rvcmllcy5hcHBlbmQoUGF0aChTQUdF X0xPQ0FMKSAvICdsaWInKQotLSAgICAgICAgICAgIGxpYmRpciA9IHN5c2NvbmZpZy5nZXRfY29u ZmlnX3ZhcignTElCRElSJykKLS0gICAgICAgICAgICBpZiBsaWJkaXIgaXMgbm90IE5vbmU6Ci0t ICAgICAgICAgICAgICAgIGxpYmRpciA9IFBhdGgobGliZGlyKQotLSAgICAgICAgICAgICAgICBz ZWFyY2hfZGlyZWN0b3JpZXMuYXBwZW5kKGxpYmRpcikKLS0KLS0gICAgICAgICAgICAgICAgbXVs dGlhcmNobGliID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdNVUxUSUFSQ0gnKQotLSAgICAg ICAgICAgICAgICBpZiBtdWx0aWFyY2hsaWIgaXMgbm90IE5vbmU6Ci0tICAgICAgICAgICAgICAg ICAgICBzZWFyY2hfZGlyZWN0b3JpZXMuYXBwZW5kKGxpYmRpciAvIG11bHRpYXJjaGxpYiksCi0t Ci0tICAgICAgICAgICAgcGF0dGVybnMgPSBbZidsaWJ7bGlibmFtZX0ue2V4dH0nXQotLQotLSAg ICAgICAgZm9yIGRpcmVjdG9yeSBpbiBzZWFyY2hfZGlyZWN0b3JpZXM6Ci0tICAgICAgICAgICAg Zm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6Ci0tICAgICAgICAgICAgICAgIHBhdGggPSBuZXh0KGRp cmVjdG9yeS5nbG9iKHBhdHRlcm4pLCBOb25lKQotLSAgICAgICAgICAgICAgICBpZiBwYXRoIGlz IG5vdCBOb25lOgotLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0cihwYXRoLnJlc29sdmUo KSkKLS0KLS0gICAgIyBKdXN0IHJldHVybiBOb25lIGlmIG5vIGZpbGVzIHdlcmUgZm91bmQKLS0g ICAgcmV0dXJuIE5vbmUKLS0KLS0jIGxvY2F0ZSBsaWJnYXAgc2hhcmVkIG9iamVjdAotLUdBUF9T TyA9IHZhcigiR0FQX1NPIiwgX2dldF9zaGFyZWRfbGliX3BhdGgoImdhcCIsICIiKSkKLS0KLSAj IHBvc3QgcHJvY2VzcwotIGlmIERPVF9TQUdFIGlzIG5vdCBOb25lIGFuZCAnICcgaW4gRE9UX1NB R0U6Ci0gICAgIGlmIFVOQU1FWzo2XSA9PSAnQ1lHV0lOJzoKLS0tIAotY2dpdCB2MS4wLTEtZ2Q4 OGUKLQotCi1Gcm9tIDMxZTNmYzRlYzhiODY4N2JjY2QyMmQyZTMxNjFjODZjZjU1NTNlMDYgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1D Mz1BRGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+Ci1EYXRlOiBTdW4sIDYgTWFyIDIwMjIgMTI6 MTA6MzcgLTAzMDAKLVN1YmplY3Q6IGdhcF93b3Jrc3BhY2VfZmlsZTogaW5jbHVkZSBob3N0bmFt ZSBhbmQgZ2FwIHZlcnNpb24KLQotLS0tCi0gc3JjL3NhZ2UvaW50ZXJmYWNlcy9nYXBfd29ya3Nw YWNlLnB5IHwgMTEgKysrKysrKystLS0KLSAxIGZpbGUgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCsp LCAzIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvaW50ZXJmYWNlcy9nYXBf d29ya3NwYWNlLnB5IGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9nYXBfd29ya3NwYWNlLnB5Ci1pbmRl eCA5NTNkYzg1Li44YzAzYjZiIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvaW50ZXJmYWNlcy9nYXBf d29ya3NwYWNlLnB5Ci0rKysgYi9zcmMvc2FnZS9pbnRlcmZhY2VzL2dhcF93b3Jrc3BhY2UucHkK LUBAIC0xNiw3ICsxNiw4IEBAIFN1cHBvcnQgZm9yIChsaWIpR0FQIHdvcmtzcGFjZSBmaWxlcwot IGltcG9ydCBvcwotIGltcG9ydCB0aW1lCi0gaW1wb3J0IGhhc2hsaWIKLS1mcm9tIHNhZ2UuZW52 IGltcG9ydCBET1RfU0FHRSwgU0FHRV9MT0NBTAotK2ltcG9ydCBzdWJwcm9jZXNzCi0rZnJvbSBz YWdlLmVudiBpbXBvcnQgRE9UX1NBR0UsIFNBR0VfTE9DQUwsIEhPU1ROQU1FLCBHQVBfUk9PVF9E SVIKLSAKLSAKLSBkZWYgZ2FwX3dvcmtzcGFjZV9maWxlKHN5c3RlbT0iZ2FwIiwgbmFtZT0id29y a3NwYWNlIiwgZGlyPU5vbmUpOgotQEAgLTU5LDggKzYwLDEyIEBAIGRlZiBnYXBfd29ya3NwYWNl X2ZpbGUoc3lzdGVtPSJnYXAiLCBuYW1lPSJ3b3Jrc3BhY2UiLCBkaXI9Tm9uZSk6Ci0gICAgIGlm IGRpciBpcyBOb25lOgotICAgICAgICAgZGlyID0gb3MucGF0aC5qb2luKERPVF9TQUdFLCAnZ2Fw JykKLSAKLS0gICAgaCA9IGhhc2hsaWIuc2hhMShTQUdFX0xPQ0FMLmVuY29kZSgndXRmLTgnKSku aGV4ZGlnZXN0KCkKLS0gICAgcmV0dXJuIG9zLnBhdGguam9pbihkaXIsICclcy0lcy0lcycgJSAo c3lzdGVtLCBuYW1lLCBoKSkKLSsgICAgZGF0YSA9IFNBR0VfTE9DQUwKLSsgICAgc3lzaW5mbyA9 IG9zLnBhdGguam9pbihHQVBfUk9PVF9ESVIsICJzeXNpbmZvLmdhcCIpCi0rICAgIGlmIG9zLnBh dGguZXhpc3RzKHN5c2luZm8pOgotKyAgICAgICAgZGF0YSArPSBzdWJwcm9jZXNzLmdldG91dHB1 dChmJy4gIntzeXNpbmZvfSIgJiYgZWNobyAiOiRHQVBfVkVSU0lPTjokR0FQYXJjaCInKQotKyAg ICBoID0gaGFzaGxpYi5zaGExKGRhdGEuZW5jb2RlKCd1dGYtOCcpKS5oZXhkaWdlc3QoKQotKyAg ICByZXR1cm4gb3MucGF0aC5qb2luKGRpciwgJyVzLSVzLSVzLSVzJyAlIChzeXN0ZW0sIG5hbWUs IEhPU1ROQU1FLCBoKSkKLSAKLSAKLSBkZWYgcHJlcGFyZV93b3Jrc3BhY2VfZGlyKGRpcj1Ob25l KToKLS0tIAotY2dpdCB2MS4wLTEtZ2Q4OGUKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdlbWF0 aC9wYXRjaGVzL3RyYWMtMzM4NDItMDEtcHl0aG9uXzMuMTEtZGUzOGJhYzIxZTIucGF0Y2ggYi9z cmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvdHJhYy0zMzg0Mi0wMS1weXRob25fMy4xMS1kZTM4YmFj MjFlMi5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzBiMWZlZDk5Y2U0Li4w MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzM4NDItMDEt cHl0aG9uXzMuMTEtZGUzOGJhYzIxZTIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw2NiArMCww IEBACi1Gcm9tIGRlMzhiYWMyMWUyNzZjNmRiYTk1YjhiMzNmNzQ1N2EwYWM1NmJkZWIgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBNYXR0aGlhcyBLb2VwcGUgPG1rb2VwcGVAbWF0aC51 Y2RhdmlzLmVkdT4KLURhdGU6IFR1ZSwgMjUgT2N0IDIwMjIgMTk6NDM6NTMgLTA3MDAKLVN1Ympl Y3Q6IFtQQVRDSF0gc3JjL3NhZ2U6IEFwcGx5IHB5dGhvbi0zLjExLnBhdGNoIGZyb20KLSBodHRw czovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL2NvbW1pdC82MjI5ZjMxMzQ1 MGVjYWU4ODc0M2I0ZDVlOTlkYTJlZDRkZTQ0ZTA3Ci0KLS0tLQotIHNyYy9zYWdlL2NweXRob24v Y3l0aG9uX21ldGFjbGFzcy5oIHwgMiArLQotIHNyYy9zYWdlL2xpYnMvZ21wL3B5bG9uZy5weXgg ICAgICAgIHwgOCArKystLS0tLQotIHNyYy9zYWdlL3N5bWJvbGljL2dpbmFjL251bWVyaWMuY3Bw IHwgMSAtCi0gMyBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0p Ci0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9jcHl0aG9uL2N5dGhvbl9tZXRhY2xhc3MuaCBiL3Ny Yy9zYWdlL2NweXRob24vY3l0aG9uX21ldGFjbGFzcy5oCi1pbmRleCBjYzYyMGE0ZGFjNy4uNjQ4 NzM0MmI3MWUgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9jcHl0aG9uL2N5dGhvbl9tZXRhY2xhc3Mu aAotKysrIGIvc3JjL3NhZ2UvY3B5dGhvbi9jeXRob25fbWV0YWNsYXNzLmgKLUBAIC02Niw3ICs2 Niw3IEBAIHN0YXRpYyBDWVRIT05fSU5MSU5FIGludCBTYWdlX1B5VHlwZV9SZWFkeShQeVR5cGVP YmplY3QqIHQpCi0gICAgICAgICB9Ci0gCi0gICAgICAgICAvKiBOb3csIHNldCB0Ll9fY2xhc3Nf XyB0byBtZXRhY2xhc3MgKi8KLS0gICAgICAgIFB5X1RZUEUodCkgPSBtZXRhY2xhc3M7Ci0rICAg ICAgICBQeV9TRVRfVFlQRSh0LCBtZXRhY2xhc3MpOwotICAgICAgICAgUHlUeXBlX01vZGlmaWVk KHQpOwotICAgICB9Ci0gICAgIGVsc2UKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9saWJzL2dtcC9w eWxvbmcucHl4IGIvc3JjL3NhZ2UvbGlicy9nbXAvcHlsb25nLnB5eAotaW5kZXggMzg4YmUzMmM1 NWUuLmU3NzJiNjBlM2UwIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvbGlicy9nbXAvcHlsb25nLnB5 eAotKysrIGIvc3JjL3NhZ2UvbGlicy9nbXAvcHlsb25nLnB5eAotQEAgLTMyLDcgKzMyLDcgQEAg ZnJvbSBjcHl0aG9uLmxvbmdpbnRyZXByIGNpbXBvcnQgX1B5TG9uZ19OZXcsIHB5X2xvbmcsIGRp Z2l0LCBQeUxvbmdfU0hJRlQKLSBmcm9tIC5tcHogY2ltcG9ydCAqCi0gCi0gY2RlZiBleHRlcm4g ZnJvbSAqOgotLSAgICBQeV9zc2l6ZV90KiBQeV9TSVpFX1BUUiAiJlB5X1NJWkUiKG9iamVjdCkK LSsgICAgdm9pZCBQeV9TRVRfU0laRShvYmplY3QsIFB5X3NzaXplX3QpCi0gICAgIGludCBoYXNo X2JpdHMgIiIiCi0gICAgICAgICAjaWZkZWYgX1B5SEFTSF9CSVRTCi0gICAgICAgICBfUHlIQVNI X0JJVFMgICAgICAgICAvKiBQeXRob24gMyAqLwotQEAgLTU3LDEwICs1Nyw4IEBAIGNkZWYgbXB6 X2dldF9weWxvbmdfbGFyZ2UobXB6X3NyY3B0ciB6KToKLSAgICAgbXB6X2V4cG9ydChMLm9iX2Rp Z2l0LCBOVUxMLAotICAgICAgICAgICAgIC0xLCBzaXplb2YoZGlnaXQpLCAwLCBQeUxvbmdfbmFp bHMsIHopCi0gICAgIGlmIG1wel9zZ24oeikgPCAwOgotLSAgICAgICAgIyBTZXQgY29ycmVjdCBz aXplICh1c2UgYSBwb2ludGVyIHRvIGhhY2sgYXJvdW5kIEN5dGhvbidzCi0tICAgICAgICAjIG5v bi1zdXBwb3J0IGZvciBsdmFsdWVzKS4KLS0gICAgICAgIHNpemVwdHIgPSBQeV9TSVpFX1BUUihM KQotLSAgICAgICAgc2l6ZXB0clswXSA9IC1weWxvbmdfc2l6ZQotKyAgICAgICAgIyBTZXQgY29y cmVjdCBzaXplCi0rICAgICAgICBQeV9TRVRfU0laRShMLCAtcHlsb25nX3NpemUpCi0gICAgIHJl dHVybiBMCi0gCi0gCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2Uvc3ltYm9saWMvZ2luYWMvbnVtZXJp Yy5jcHAgYi9zcmMvc2FnZS9zeW1ib2xpYy9naW5hYy9udW1lcmljLmNwcAotaW5kZXggMjIwNjA0 NDE3NjAuLmI0MGVkNjRlZGI1IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2Uvc3ltYm9saWMvZ2luYWMv bnVtZXJpYy5jcHAKLSsrKyBiL3NyYy9zYWdlL3N5bWJvbGljL2dpbmFjL251bWVyaWMuY3BwCi1A QCAtNTIsNyArNTIsNiBAQAotICNkZWZpbmUgcmVnaXN0ZXIKLSAjZGVmaW5lIFBZX1NTSVpFX1Rf Q0xFQU4KLSAjaW5jbHVkZSA8UHl0aG9uLmg+Ci0tI2luY2x1ZGUgPGxvbmdpbnRyZXByLmg+Ci0g I2luY2x1ZGUgImZsaW50L2ZtcHouaCIKLSAjaW5jbHVkZSAiZmxpbnQvZm1wel9mYWN0b3IuaCIK LSAKLS0tIAotMi4zOC4xCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90 cmFjLTMzODQyLTAyLXB5dGhvbl8zLjExLWFyZ3NwZWMtZml4LTllYjA4ZjNhZmRlLnBhdGNoIGIv c3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzM4NDItMDItcHl0aG9uXzMuMTEtYXJnc3Bl Yy1maXgtOWViMDhmM2FmZGUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBi YjFmNWY2OGIwZS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90 cmFjLTMzODQyLTAyLXB5dGhvbl8zLjExLWFyZ3NwZWMtZml4LTllYjA4ZjNhZmRlLnBhdGNoCisr KyAvZGV2L251bGwKQEAgLTEsMTY4ICswLDAgQEAKLUZyb20gOWViMDhmM2FmZGUzMjY2YmJkNjY3 ZTE5NjUxMzI0MGEwZmUyNDVmNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IE1hdHRo aWFzIEtvZXBwZSA8bWtvZXBwZUBtYXRoLnVjZGF2aXMuZWR1PgotRGF0ZTogVHVlLCAyNSBPY3Qg MjAyMiAyMjo1Mjo1NiAtMDcwMAotU3ViamVjdDogW1BBVENIXSBpbnNwZWN0LkFyZ1NwZWMgLT4g aW5zcGVjdC5GdWxsQXJnU3BlYwotCi0tLS0KLSBzcmMvc2FnZS9taXNjL2NhY2hlZnVuYy5weXgg ICAgICAgICB8ICA0ICsrLS0KLSBzcmMvc2FnZS9taXNjL2RlY29yYXRvcnMucHkgICAgICAgICB8 ICA2ICsrKystLQotIHNyYy9zYWdlL21pc2MvZnVuY3Rpb25fbWFuZ2xpbmcucHl4IHwgIDIgKy0K LSBzcmMvc2FnZS9taXNjL3NhZ2VpbnNwZWN0LnB5ICAgICAgICB8IDI0ICsrKysrKysrKysrKyst LS0tLS0tLS0tLQotIDQgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRp b25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9taXNjL2NhY2hlZnVuYy5weXggYi9zcmMv c2FnZS9taXNjL2NhY2hlZnVuYy5weXgKLWluZGV4IDlmYTk2N2NlNzM3Li43MjA0MmVmMTNkNiAx MDA2NDQKLS0tLSBhL3NyYy9zYWdlL21pc2MvY2FjaGVmdW5jLnB5eAotKysrIGIvc3JjL3NhZ2Uv bWlzYy9jYWNoZWZ1bmMucHl4Ci1AQCAtMjgxOCw3ICsyODE4LDcgQEAgY2RlZiBjbGFzcyBDYWNo ZWRNZXRob2QoKToKLSAgICAgICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbjoKLSAgICAgICAg ICAgICAgICAgICAgIHBhc3MKLSAgICAgICAgICAgICBpZiBzZWxmLm5hcmdzID09IDA6Ci0tICAg ICAgICAgICAgICAgIGFyZ3MsIHZhcmFyZ3MsIGtleXdvcmRzLCBkZWZhdWx0cyA9IHNhZ2VfZ2V0 YXJnc3BlYyhmKQotKyAgICAgICAgICAgICAgICBhcmdzLCB2YXJhcmdzLCBrZXl3b3JkcywgZGVm YXVsdHMsIGt3b25seWFyZ3MsIGt3b25seWRlZmF1bHRzLCBhbm5vdGF0aW9ucyA9IHNhZ2VfZ2V0 YXJnc3BlYyhmKQotICAgICAgICAgICAgICAgICBpZiB2YXJhcmdzIGlzIE5vbmUgYW5kIGtleXdv cmRzIGlzIE5vbmUgYW5kIGxlbihhcmdzKTw9MToKLSAgICAgICAgICAgICAgICAgICAgIHNlbGYu bmFyZ3MgPSAxCi0gICAgICAgICAgICAgICAgIGVsc2U6Ci1AQCAtMjk1NCw3ICsyOTU0LDcgQEAg Y2RlZiBjbGFzcyBDYWNoZWRTcGVjaWFsTWV0aG9kKENhY2hlZE1ldGhvZCk6Ci0gICAgICAgICAj IHdlIG5lZWQgdG8gYW5hbHlzZSB0aGUgYXJnc3BlYwotICAgICAgICAgZiA9IHNlbGYuX2NhY2hl ZGZ1bmMuZgotICAgICAgICAgaWYgc2VsZi5uYXJncyA9PSAwOgotLSAgICAgICAgICAgIGFyZ3Ms IHZhcmFyZ3MsIGtleXdvcmRzLCBkZWZhdWx0cyA9IHNhZ2VfZ2V0YXJnc3BlYyhmKQotKyAgICAg ICAgICAgIGFyZ3MsIHZhcmFyZ3MsIGtleXdvcmRzLCBkZWZhdWx0cywga3dvbmx5YXJncywga3dv bmx5ZGVmYXVsdHMsIGFubm90YXRpb25zID0gc2FnZV9nZXRhcmdzcGVjKGYpCi0gICAgICAgICAg ICAgaWYgdmFyYXJncyBpcyBOb25lIGFuZCBrZXl3b3JkcyBpcyBOb25lIGFuZCBsZW4oYXJncyk8 PTE6Ci0gICAgICAgICAgICAgICAgIHNlbGYubmFyZ3MgPSAxCi0gICAgICAgICAgICAgICAgIENh bGxlciA9IENhY2hlZE1ldGhvZENhbGxlck5vQXJncyhpbnN0LCBmLCBuYW1lPW5hbWUsIGRvX3Bp Y2tsZT1zZWxmLl9jYWNoZWRmdW5jLmRvX3BpY2tsZSkKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9t aXNjL2RlY29yYXRvcnMucHkgYi9zcmMvc2FnZS9taXNjL2RlY29yYXRvcnMucHkKLWluZGV4IDI4 YzUyNDQ4ODEzLi4zMTFhNTEwNTczOSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL21pc2MvZGVjb3Jh dG9ycy5weQotKysrIGIvc3JjL3NhZ2UvbWlzYy9kZWNvcmF0b3JzLnB5Ci1AQCAtMzIsNyArMzIs OCBAQCBmcm9tIGNvcHkgaW1wb3J0IGNvcHkKLSAKLSBmcm9tIHNhZ2UubWlzYy5zYWdlaW5zcGVj dCBpbXBvcnQgKHNhZ2VfZ2V0c291cmNlLCBzYWdlX2dldHNvdXJjZWxpbmVzLAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FnZV9nZXRhcmdzcGVjKQotLWZyb20gaW5zcGVj dCBpbXBvcnQgQXJnU3BlYwotKwotK2Zyb20gaW5zcGVjdCBpbXBvcnQgRnVsbEFyZ1NwZWMKLSAK LSAKLSBkZWYgc2FnZV93cmFwcyh3cmFwcGVkLCBhc3NpZ25lZD1XUkFQUEVSX0FTU0lHTk1FTlRT LCB1cGRhdGVkPVdSQVBQRVJfVVBEQVRFUyk6Ci1AQCAtNDk5LDcgKzUwMCw4IEBAIGNsYXNzIG9w dGlvbnMoKToKLSAgICAgICAgICAgICAgICAgICAgIGxpc3Qoc2VsZi5vcHRpb25zKSkKLSAgICAg ICAgICAgICBkZWZhdWx0cyA9IChhcmdzcGVjLmRlZmF1bHRzIG9yICgpKSArIHR1cGxlKHNlbGYu b3B0aW9ucy52YWx1ZXMoKSkKLSAgICAgICAgICAgICAjIE5vdGU6IGFyZ3NwZWMuZGVmYXVsdHMg aXMgbm90IGFsd2F5cyBhIHR1cGxlIGZvciBzb21lIHJlYXNvbgotLSAgICAgICAgICAgIHJldHVy biBBcmdTcGVjKGFyZ3MsIGFyZ3NwZWMudmFyYXJncywgYXJnc3BlYy5rZXl3b3JkcywgZGVmYXVs dHMpCi0rICAgICAgICAgICAgcmV0dXJuIEZ1bGxBcmdTcGVjKGFyZ3MsIGFyZ3NwZWMudmFyYXJn cywgYXJnc3BlYy5rZXl3b3JkcywgZGVmYXVsdHMsCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPXt9LCBhbm5vdGF0aW9ucz17fSkK LSAKLSAgICAgICAgIHdyYXBwZXIuX3NhZ2VfYXJnc3BlY18gPSBhcmdzcGVjCi0gCi1kaWZmIC0t Z2l0IGEvc3JjL3NhZ2UvbWlzYy9mdW5jdGlvbl9tYW5nbGluZy5weXggYi9zcmMvc2FnZS9taXNj L2Z1bmN0aW9uX21hbmdsaW5nLnB5eAotaW5kZXggMGFjMDNjZjA3MTUuLmUxYmI3OTc4OTUzIDEw MDY0NAotLS0tIGEvc3JjL3NhZ2UvbWlzYy9mdW5jdGlvbl9tYW5nbGluZy5weXgKLSsrKyBiL3Ny Yy9zYWdlL21pc2MvZnVuY3Rpb25fbWFuZ2xpbmcucHl4Ci1AQCAtMTE2LDcgKzExNiw3IEBAIGNk ZWYgY2xhc3MgQXJndW1lbnRGaXhlcjoKLSAgICAgIiIiCi0gICAgIGRlZiBfX2luaXRfXyhzZWxm LCBmLCBjbGFzc21ldGhvZCA9IEZhbHNlKToKLSAgICAgICAgIHRyeToKLS0gICAgICAgICAgICBh cmdfbmFtZXMsIHZhcmFyZ3MsIHZhcmt3LCBkZWZhdWx0cyA9IHNhZ2VfZ2V0YXJnc3BlYyhmKQot KyAgICAgICAgICAgIGFyZ19uYW1lcywgdmFyYXJncywgdmFya3csIGRlZmF1bHRzLCBrd29ubHlh cmdzLCBrd29ubHlkZWZhdWx0cywgYW5ub3RhdGlvbnMgPSBzYWdlX2dldGFyZ3NwZWMoZikKLSAg ICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKLSAgICAgICAgICAgICAjIFRoaXMgZXJyb3Ig b2NjdXJzIGlmIGYgaXMgZGVmaW5lZCBpbiBhIEN5dGhvbiBmaWxlIGFuZCB0aGUKLSAgICAgICAg ICAgICAjIHNvdXJjZSBmaWxlIGhhcyBnb25lLgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL21pc2Mv c2FnZWluc3BlY3QucHkgYi9zcmMvc2FnZS9taXNjL3NhZ2VpbnNwZWN0LnB5Ci1pbmRleCBmYmNh MmRlZmMyMC4uYTM4MjFjYjU2YjkgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9taXNjL3NhZ2VpbnNw ZWN0LnB5Ci0rKysgYi9zcmMvc2FnZS9taXNjL3NhZ2VpbnNwZWN0LnB5Ci1AQCAtMzU5LDcgKzM1 OSw3IEBAIGRlZiBfZXh0cmFjdF9lbWJlZGRlZF9zaWduYXR1cmUoZG9jc3RyaW5nLCBuYW1lKToK LSAgICAgICAgIGRvY3N0cmluZyA9IExbMV0gaWYgbGVuKEwpID4gMSBlbHNlICcnICAjIFJlbW92 ZSBmaXJzdCBsaW5lLCBrZWVwIHRoZSByZXN0Ci0gICAgICAgICBkZWZfc3RyaW5nID0gImRlZiAi ICsgbmFtZSArIHNpZ25hdHVyZSArICI6IHBhc3MiCi0gICAgICAgICB0cnk6Ci0tICAgICAgICAg ICAgcmV0dXJuIGRvY3N0cmluZywgaW5zcGVjdC5BcmdTcGVjKCpfc2FnZV9nZXRhcmdzcGVjX2N5 dGhvbihkZWZfc3RyaW5nKSkKLSsgICAgICAgICAgICByZXR1cm4gZG9jc3RyaW5nLCBpbnNwZWN0 LkZ1bGxBcmdTcGVjKCpfc2FnZV9nZXRhcmdzcGVjX2N5dGhvbihkZWZfc3RyaW5nKSkKLSAgICAg ICAgIGV4Y2VwdCBTeW50YXhFcnJvcjoKLSAgICAgICAgICAgICBkb2NzdHJpbmcgPSBvcy5saW5l c2VwLmpvaW4oTCkKLSAgICAgcmV0dXJuIGRvY3N0cmluZywgTm9uZQotQEAgLTExMzUsOCArMTEz NSw5IEBAIGRlZiBfc2FnZV9nZXRhcmdzcGVjX2Zyb21fYXN0KHNvdXJjZSk6Ci0gICAgIHZhcmFy ZyA9IGdldGF0dHIoYXN0X2FyZ3MudmFyYXJnLCAnYXJnJywgTm9uZSkKLSAgICAga3dhcmcgPSBn ZXRhdHRyKGFzdF9hcmdzLmt3YXJnLCAnYXJnJywgTm9uZSkKLSAKLS0gICAgcmV0dXJuIGluc3Bl Y3QuQXJnU3BlYyhhcmdzLCB2YXJhcmcsIGt3YXJnLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR1cGxlKGRlZmF1bHRzKSBpZiBkZWZhdWx0cyBlbHNlIE5vbmUpCi0rICAgIHJldHVybiBp bnNwZWN0LkZ1bGxBcmdTcGVjKGFyZ3MsIHZhcmFyZywga3dhcmcsCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHR1cGxlKGRlZmF1bHRzKSBpZiBkZWZhdWx0cyBlbHNlIE5vbmUsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1 bHRzPXt9LCBhbm5vdGF0aW9ucz17fSkKLSAKLSAKLSBkZWYgX3NhZ2VfZ2V0YXJnc3BlY19jeXRo b24oc291cmNlKToKLUBAIC0xMTUyLDcgKzExNTMsNyBAQCBkZWYgX3NhZ2VfZ2V0YXJnc3BlY19j eXRob24oc291cmNlKToKLSAKLSAgICAgT1VUUFVUOgotIAotLSAgICAtIGFuIGluc3RhbmNlIG9m IDpvYmo6YGluc3BlY3QuQXJnU3BlY2AsIGkuZS4sIGEgbmFtZWQgdHVwbGUKLSsgICAgLSBhbiBp bnN0YW5jZSBvZiA6Y2xhc3M6YGluc3BlY3QuRnVsbEFyZ1NwZWNgLCBpLmUuLCBhIG5hbWVkIHR1 cGxlCi0gCi0gICAgIEVYQU1QTEVTOjoKLSAKLUBAIC0xNjYyLDExICsxNjYzLDExIEBAIGRlZiBz YWdlX2dldGFyZ3NwZWMob2JqKToKLSAgICAgICAgIHJldHVybiBzYWdlX2dldGFyZ3NwZWMob2Jq Ll9fY2FsbF9fKQotICAgICBpZiBpc2luc3RhbmNlKG9iaiwgKGxhenlfYXR0cmlidXRlLCBBYnN0 cmFjdE1ldGhvZCkpOgotICAgICAgICAgc291cmNlID0gc2FnZV9nZXRzb3VyY2Uob2JqKQotLSAg ICAgICAgcmV0dXJuIGluc3BlY3QuQXJnU3BlYygqX3NhZ2VfZ2V0YXJnc3BlY19jeXRob24oc291 cmNlKSkKLSsgICAgICAgIHJldHVybiBpbnNwZWN0LkZ1bGxBcmdTcGVjKCpfc2FnZV9nZXRhcmdz cGVjX2N5dGhvbihzb3VyY2UpKQotICAgICBpZiBub3QgY2FsbGFibGUob2JqKToKLSAgICAgICAg IHJhaXNlIFR5cGVFcnJvcigib2JqIGlzIG5vdCBhIGNvZGUgb2JqZWN0IikKLSAgICAgdHJ5Ogot LSAgICAgICAgcmV0dXJuIGluc3BlY3QuQXJnU3BlYygqb2JqLl9zYWdlX2FyZ3NwZWNfKCkpCi0r ICAgICAgICByZXR1cm4gaW5zcGVjdC5GdWxsQXJnU3BlYygqb2JqLl9zYWdlX2FyZ3NwZWNfKCkp Ci0gICAgIGV4Y2VwdCAoQXR0cmlidXRlRXJyb3IsIFR5cGVFcnJvcik6Ci0gICAgICAgICBwYXNz Ci0gICAgICMgSWYgd2UgYXJlIGx1Y2t5LCB0aGUgZnVuY3Rpb24gc2lnbmF0dXJlIGlzIGVtYmVk ZGVkIGluIHRoZSBkb2NzdHJpbmcuCi1AQCAtMTY4Miw3ICsxNjgzLDcgQEAgZGVmIHNhZ2VfZ2V0 YXJnc3BlYyhvYmopOgotICAgICAgICAgIyBOb3RlIHRoYXQgdGhpcyBtYXkgZ2l2ZSBhIHdyb25n IHJlc3VsdCBmb3IgdGhlIGNvbnN0YW50cyEKLSAgICAgICAgIHRyeToKLSAgICAgICAgICAgICBh cmdzLCB2YXJhcmdzLCB2YXJrdyA9IGluc3BlY3QuZ2V0YXJncyhvYmouX19jb2RlX18pCi0tICAg ICAgICAgICAgcmV0dXJuIGluc3BlY3QuQXJnU3BlYyhhcmdzLCB2YXJhcmdzLCB2YXJrdywgb2Jq Ll9fZGVmYXVsdHNfXykKLSsgICAgICAgICAgICByZXR1cm4gaW5zcGVjdC5GdWxsQXJnU3BlYyhh cmdzLCB2YXJhcmdzLCB2YXJrdywgb2JqLl9fZGVmYXVsdHNfXykKLSAgICAgICAgIGV4Y2VwdCAo VHlwZUVycm9yLCBBdHRyaWJ1dGVFcnJvcik6Ci0gICAgICAgICAgICAgcGFzcwotICAgICBpZiBp c2NsYXNzaW5zdGFuY2Uob2JqKToKLUBAIC0xNzE3LDcgKzE3MTgsNyBAQCBkZWYgc2FnZV9nZXRh cmdzcGVjKG9iaik6Ci0gICAgICAgICBleGNlcHQgVHlwZUVycm9yOiAjIGhhcHBlbnMgZm9yIFB5 dGhvbiBidWlsdGlucwotICAgICAgICAgICAgIHNvdXJjZSA9ICcnCi0gICAgICAgICBpZiBzb3Vy Y2U6Ci0tICAgICAgICAgICAgcmV0dXJuIGluc3BlY3QuQXJnU3BlYygqX3NhZ2VfZ2V0YXJnc3Bl Y19jeXRob24oc291cmNlKSkKLSsgICAgICAgICAgICByZXR1cm4gaW5zcGVjdC5GdWxsQXJnU3Bl YygqX3NhZ2VfZ2V0YXJnc3BlY19jeXRob24oc291cmNlKSkKLSAgICAgICAgIGVsc2U6Ci0gICAg ICAgICAgICAgZnVuY19vYmogPSBvYmoKLSAKLUBAIC0xNzMwLDcgKzE3MzEsNyBAQCBkZWYgc2Fn ZV9nZXRhcmdzcGVjKG9iaik6Ci0gICAgICAgICBleGNlcHQgVHlwZUVycm9yOiAjIGFyZyBpcyBu b3QgYSBjb2RlIG9iamVjdAotICAgICAgICAgICAgICMgVGhlIGFib3ZlICJob3BlZnVsbHkiIHdh cyB3aXNoZnVsIHRoaW5raW5nOgotICAgICAgICAgICAgIHRyeToKLS0gICAgICAgICAgICAgICAg cmV0dXJuIGluc3BlY3QuQXJnU3BlYygqX3NhZ2VfZ2V0YXJnc3BlY19jeXRob24oc2FnZV9nZXRz b3VyY2Uob2JqKSkpCi0rICAgICAgICAgICAgICAgIHJldHVybiBpbnNwZWN0LkZ1bGxBcmdTcGVj KCpfc2FnZV9nZXRhcmdzcGVjX2N5dGhvbihzYWdlX2dldHNvdXJjZShvYmopKSkKLSAgICAgICAg ICAgICBleGNlcHQgVHlwZUVycm9yOiAjIFRoaXMgaGFwcGVucyBmb3IgUHl0aG9uIGJ1aWx0aW5z Ci0gICAgICAgICAgICAgICAgICMgVGhlIGJlc3Qgd2UgY2FuIGRvIGlzIHRvIHJldHVybiBhIGdl bmVyaWMgYXJnc3BlYwotICAgICAgICAgICAgICAgICBhcmdzID0gW10KLUBAIC0xNzQwLDcgKzE3 NDEsOCBAQCBkZWYgc2FnZV9nZXRhcmdzcGVjKG9iaik6Ci0gICAgICAgICBkZWZhdWx0cyA9IGZ1 bmNfb2JqLl9fZGVmYXVsdHNfXwotICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6Ci0gICAgICAg ICBkZWZhdWx0cyA9IE5vbmUKLS0gICAgcmV0dXJuIGluc3BlY3QuQXJnU3BlYyhhcmdzLCB2YXJh cmdzLCB2YXJrdywgZGVmYXVsdHMpCi0rICAgIHJldHVybiBpbnNwZWN0LkZ1bGxBcmdTcGVjKGFy Z3MsIHZhcmFyZ3MsIHZhcmt3LCBkZWZhdWx0cywKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9e30sIGFubm90YXRpb25zPXt9KQot IAotIAotIGRlZiBmb3JtYXRhbm5vdGF0aW9uKGFubm90YXRpb24sIGJhc2VfbW9kdWxlPU5vbmUp OgotQEAgLTE4MTEsNyArMTgxMyw3IEBAIGRlZiBzYWdlX2Zvcm1hdGFyZ3NwZWMoYXJncywgdmFy YXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz1Ob25lLAotICAgICA6ZnVuYzpgc2FnZV9n ZXRhcmdzcGVjYC4gU2luY2UgOmZ1bmM6YHNhZ2VfZ2V0YXJnc3BlY2Agd29ya3MgZm9yCi0gICAg IEN5dGhvbiBmdW5jdGlvbnMgd2hpbGUgUHl0aG9uJ3MgaW5zcGVjdCBtb2R1bGUgZG9lcyBub3Qs IGl0IG1ha2VzCi0gICAgIHNlbnNlIHRvIGtlZXAgdGhpcyBmdW5jdGlvbiBmb3IgZm9ybWF0dGlu ZyBpbnN0YW5jZXMgb2YKLS0gICAgYGBpbnNwZWN0LkFyZ1NwZWNgYC4KLSsgICAgYGBpbnNwZWN0 LkZ1bGxBcmdTcGVjYGAuCi0gCi0gICAgIEVYQU1QTEVTOjoKLSAKLS0tIAotMi4zOC4xCi0KZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTMzODQyLTAzLXB5dGhvbjMu MTEtZmluYWxfZml4ZXMtN2I2ZmE1NjVmNDIucGF0Y2ggYi9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNo ZXMvdHJhYy0zMzg0Mi0wMy1weXRob24zLjExLWZpbmFsX2ZpeGVzLTdiNmZhNTY1ZjQyLnBhdGNo CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZDJmYTExNjIyYzMuLjAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNoZXMvdHJhYy0zMzg0Mi0wMy1weXRob24zLjEx LWZpbmFsX2ZpeGVzLTdiNmZhNTY1ZjQyLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTI3OSAr MCwwIEBACi1Gcm9tIDg5NTU2MDdjNzFjYjk0ZTRhODEwYjg5ZjExM2I3YjIyMGEzNTE0MTcgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1D Mz1BRGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+Ci1EYXRlOiBTdW4sIDYgTm92IDIwMjIgMTE6 MjY6MTAgLTAzMDAKLVN1YmplY3Q6IFtQQVRDSCAwMS8xMV0gZGljdF9kZWxfYnlfdmFsdWU6IG1v dmUgcHl0aG9uIGludGVybmFsIGRlZmluaXRpb25zIHRvCi0gYSBzZXBhcmF0ZSBmaWxlCi0KLS0t LQotIHNyYy9zYWdlL2NweXRob24vZGljdF9kZWxfYnlfdmFsdWUucHl4IHwgMTUzICsrKysrKysr LS0tLS0tLS0tLS0tLS0tCi0gc3JjL3NhZ2UvY3B5dGhvbi9kaWN0X2ludGVybmFsLmggICAgICAg fCAxNjUgKysrKysrKysrKysrKysrKysrKysrKysrKwotIDIgZmlsZXMgY2hhbmdlZCwgMjE0IGlu c2VydGlvbnMoKyksIDEwNCBkZWxldGlvbnMoLSkKLSBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL3Nh Z2UvY3B5dGhvbi9kaWN0X2ludGVybmFsLmgKLQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2NweXRo b24vZGljdF9kZWxfYnlfdmFsdWUucHl4IGIvc3JjL3NhZ2UvY3B5dGhvbi9kaWN0X2RlbF9ieV92 YWx1ZS5weXgKLWluZGV4IDQ4OGJmOWM4NGNjLi4zODk0NTU0YzEzZCAxMDA2NDQKLS0tLSBhL3Ny Yy9zYWdlL2NweXRob24vZGljdF9kZWxfYnlfdmFsdWUucHl4Ci0rKysgYi9zcmMvc2FnZS9jcHl0 aG9uL2RpY3RfZGVsX2J5X3ZhbHVlLnB5eAotQEAgLTE5LDEzICsxOSw4IEBAIEFVVEhPUlM6Ci0g IyAgICAgICAgICAgICAgICAgIGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvCi0gIyAqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqCi0gCi0taW1wb3J0IHdlYWtyZWYKLS1mcm9tIHdlYWtyZWYgaW1wb3J0 IEtleWVkUmVmCi0tCi0gZnJvbSBjcHl0aG9uLmxpc3QgY2ltcG9ydCBQeUxpc3RfTmV3Ci0tZnJv bSBjcHl0aG9uIGNpbXBvcnQgUHlfWElOQ1JFRiwgUHlfWERFQ1JFRgotIAotLWZyb20gbGliYy5z dGRpbnQgY2ltcG9ydCBpbnQ4X3QsIGludDE2X3QsIGludDMyX3QsIGludDY0X3QKLSBjZGVmIGV4 dGVybiBmcm9tICJQeXRob24uaCI6Ci0gICAgIGN0eXBlZGVmIHN0cnVjdCBQeURpY3RLZXlzT2Jq ZWN0Ci0gCi1AQCAtMzQsOTkgKzI5LDQ3IEBAIGNkZWYgZXh0ZXJuIGZyb20gIlB5dGhvbi5oIjoK LSAgICAgICAgIFB5RGljdEtleXNPYmplY3QgKiBtYV9rZXlzCi0gICAgICAgICBQeU9iamVjdCAq KiBtYV92YWx1ZXMKLSAKLS0gICAgI3dlIG5lZWQgdGhpcyByZWRlZmluaXRpb24gYmVjYXVzZSB3 ZSB3YW50IHRvIGJlIGFibGUgdG8gY2FsbAotLSAgICAjUHlXZWFrcmVmX0dldE9iamVjdCB3aXRo IGJvcnJvd2VkIHJlZmVyZW5jZXMuIFRoaXMgaXMgdGhlIHJlY29tbWVuZGVkCi0tICAgICNzdHJh dGVneSBhY2NvcmRpbmcgdG8gQ3l0aG9uL0luY2x1ZGVzL2NweXRob24vX19pbml0X18ucHhkCi0t ICAgIFB5T2JqZWN0KiBQeVdlYWtyZWZfR2V0T2JqZWN0KFB5T2JqZWN0ICogd3IpCi0gICAgIGlu dCBQeUxpc3RfU2V0SXRlbShvYmplY3QgbGlzdCwgUHlfc3NpemVfdCBpbmRleCwgUHlPYmplY3Qg KiBpdGVtKSBleGNlcHQgLTEKLS0gICAgaW50IFB5V2Vha3JlZl9DaGVjayhQeU9iamVjdCAqIG9i KQotLSMjIyMKLS0jZGVmaW5pdGlvbnMgcmVwbGljYXRlZCBmcm9tIENQeXRob24ncyBPYmplY3Rz L2RpY3QtY29tbW9uLmgKLS0jKHRoaXMgZmlsZSBpcyBub3QgZXhwb3J0ZWQgZnJvbSBDUHl0aG9u LCBzbyB3ZSBuZWVkIHRvIGJlCi0tI2NhcmVmdWwgdGhlIGRlZmluaXRpb25zIGFyZSBpbiBzdGVw IHdpdGggd2hhdCBoYXBwZW5zIHRoZXJlLgotLQotLWN0eXBlZGVmIHZvaWQqIGRpY3RfbG9va3Vw X2Z1bmMgICMgUHJlY2lzZSBkZWZpbml0aW9uIG5vdCBuZWVkZWQKLS0KLS1jdHlwZWRlZiB1bmlv biBJbmRleEJsb2NrOgotLSAgICBpbnQ4X3QgYXNfMVs4XQotLSAgICBpbnQxNl90IGFzXzJbNF0K LS0gICAgaW50MzJfdCBhc180WzJdCi0tICAgIGludDY0X3QgYXNfOFsxXQotLQotLWN0eXBlZGVm IHN0cnVjdCBNeVB5RGljdEtleXNPYmplY3Q6Ci0tICAgIFB5X3NzaXplX3QgZGtfcmVmY250Ci0t ICAgIFB5X3NzaXplX3QgZGtfc2l6ZQotLSAgICBkaWN0X2xvb2t1cF9mdW5jIGRrX2xvb2t1cAot LSAgICBQeV9zc2l6ZV90IGRrX3VzYWJsZQotLSAgICBQeV9zc2l6ZV90IGRrX25lbnRyaWVzCi0t ICAgIEluZGV4QmxvY2sgZGtfaW5kaWNlcwotLQotLWN0eXBlZGVmIHN0cnVjdCBQeURpY3RLZXlF bnRyeToKLS0gICAgUHlfaGFzaF90IG1lX2hhc2gKLS0gICAgUHlPYmplY3QgKiBtZV9rZXkKLS0g ICAgUHlPYmplY3QgKiBtZV92YWx1ZQotLQotLWNkZWYgUHlfc3NpemVfdCBES0lYX0VNUFRZID0g LTEKLS1jZGVmIFB5X3NzaXplX3QgREtJWF9EVU1NWSA9IC0yCi0tY2RlZiBQeV9zc2l6ZV90IERL SVhfRVJST1IgPSAtMwotLQotLSMjIyMjCi0tI1RoZXNlIHJvdXRpbmVzIGFyZSBjb3BpZWQgZnJv bSBDUHl0aG9uJ3MgT2JqZWN0L2RpY3RvYmplY3QuYwotLSNpbiBvcmRlciB0byBhY2Nlc3MgUHlE aWN0S2V5c09iamVjdCBmaWVsZHMKLS0KLS1jZGVmIGlubGluZSBpbnQgREtfSVhTSVpFKE15UHlE aWN0S2V5c09iamVjdCAqa2V5cyk6Ci0tICAgIGNkZWYgUHlfc3NpemVfdCBzID0ga2V5cy5ka19z aXplCi0tICAgIGlmIHMgPD0gMHhmZjoKLS0gICAgICAgIHJldHVybiAxCi0tICAgIGVsaWYgcyA8 PSAweGZmZmY6Ci0tICAgICAgICByZXR1cm4gMgotLSAgICBlbGlmIHMgPD0gMHhmZmZmZmZmZjoK LS0gICAgICAgIHJldHVybiA0Ci0tICAgIGVsc2U6Ci0tICAgICAgICByZXR1cm4gOAotLQotLWNk ZWYgaW5saW5lIFB5RGljdEtleUVudHJ5ICogREtfRU5UUklFUyhNeVB5RGljdEtleXNPYmplY3Qg KmtleXMpOgotLSAgICByZXR1cm4gPFB5RGljdEtleUVudHJ5Kj4gJihrZXlzLmRrX2luZGljZXMu YXNfMVtrZXlzLmRrX3NpemUgKiBES19JWFNJWkUoa2V5cyldKQotLQotLWNkZWYgaW5saW5lIFB5 X3NzaXplX3QgZGtfZ2V0X2luZGV4KE15UHlEaWN0S2V5c09iamVjdCAqa2V5cywgUHlfc3NpemVf dCBpKToKLS0gICAgY2RlZiBQeV9zc2l6ZV90IHMgPSBrZXlzLmRrX3NpemUKLS0gICAgaWYgcyA8 PSAweGZmOgotLSAgICAgICAgcmV0dXJuIGtleXMuZGtfaW5kaWNlcy5hc18xW2ldCi0tICAgIGVs aWYgcyA8PSAweGZmZmY6Ci0tICAgICAgICByZXR1cm4ga2V5cy5ka19pbmRpY2VzLmFzXzJbaV0K LS0gICAgZWxpZiBzIDw9IDB4ZmZmZmZmZmY6Ci0tICAgICAgICByZXR1cm4ga2V5cy5ka19pbmRp Y2VzLmFzXzRbaV0KLS0gICAgZWxzZToKLS0gICAgICAgIHJldHVybiBrZXlzLmRrX2luZGljZXMu YXNfOFtpXQotLQotLWNkZWYgaW5saW5lIHZvaWQgZGtfc2V0X2luZGV4KE15UHlEaWN0S2V5c09i amVjdCAqa2V5cywgUHlfc3NpemVfdCBpLCBQeV9zc2l6ZV90IGl4KToKLS0gICAgY2RlZiBQeV9z c2l6ZV90IHMgPSBrZXlzLmRrX3NpemUKLS0gICAgaWYgcyA8PSAweGZmOgotLSAgICAgICAga2V5 cy5ka19pbmRpY2VzLmFzXzFbaV0gPSBpeAotLSAgICBlbGlmIHMgPD0gMHhmZmZmOgotLSAgICAg ICAga2V5cy5ka19pbmRpY2VzLmFzXzJbaV0gPSBpeAotLSAgICBlbGlmIHMgPD0gMHhmZmZmZmZm ZjoKLS0gICAgICAgIGtleXMuZGtfaW5kaWNlcy5hc180W2ldID0gaXgKLS0gICAgZWxzZToKLS0g ICAgICAgIGtleXMuZGtfaW5kaWNlcy5hc184W2ldID0gaXgKLS0KLS0jRW5kIG9mIHJlcGxpY2F0 aW9uIG9mIE9iamVjdC9kaWN0b2JqZWN0LmMKLS0jIyMjIyMKLS0KLS1jZGVmIGRpY3RfbG9va3Vw X2Z1bmMgbG9va2RpY3QKLS0KLS1jZGVmIGRpY3RfbG9va3VwX2Z1bmMgREtfTE9PS1VQKFB5RGlj dE9iamVjdCAqbXApOgotLSAgICByZXR1cm4gKDxNeVB5RGljdEtleXNPYmplY3QgKj4obXAubWFf a2V5cykpLmRrX2xvb2t1cAotLQotLWRlZiBpbml0X2xvb2tkaWN0KCk6Ci0tICAgIGdsb2JhbCBs b29rZGljdAotLSAgICAjIEEgZGljdCB3aGljaCBhIG5vbi1zdHJpbmcga2V5IHVzZXMgdGhlIGdl bmVyaWMgImxvb2tkaWN0IgotLSAgICAjIGFzIGxvb2t1cCBmdW5jdGlvbgotLSAgICBjZGVmIG9i amVjdCBEID0ge30KLS0gICAgRFswXSA9IDAKLS0gICAgbG9va2RpY3QgPSBES19MT09LVVAoPFB5 RGljdE9iamVjdCAqPkQpCi0tCi0taW5pdF9sb29rZGljdCgpCi0rCi0rY2RlZiBleHRlcm4gZnJv bSAiZGljdF9pbnRlcm5hbC5oIjoKLSsgICAgUHlfc3NpemVfdCBES19NQVNLKFB5RGljdEtleXNP YmplY3QgKikKLSsgICAgUHlEaWN0S2V5RW50cnkgKiBES19FTlRSSUVTKFB5RGljdEtleXNPYmpl Y3QgKmtleXMpCi0rCi0rICAgIFB5X3NzaXplX3QgZGljdGtleXNfZ2V0X2luZGV4IChQeURpY3RL ZXlzT2JqZWN0ICprZXlzLCBQeV9zc2l6ZV90IGkpCi0rICAgIHZvaWQgZGljdGtleXNfc2V0X2lu ZGV4IChQeURpY3RLZXlzT2JqZWN0ICprZXlzLCBQeV9zc2l6ZV90IGksIFB5X3NzaXplX3QgaXgp Ci0rCi0rICAgIFB5X3NzaXplX3QgREtJWF9FTVBUWSwgREtJWF9EVU1NWQotKyAgICBpbnQgUEVS VFVSQl9TSElGVAotKwotKyAgICBjdHlwZWRlZiBzdHJ1Y3QgUHlEaWN0S2V5RW50cnk6Ci0rICAg ICAgICBQeV9oYXNoX3QgbWVfaGFzaAotKyAgICAgICAgUHlPYmplY3QgKiBtZV9rZXkKLSsgICAg ICAgIFB5T2JqZWN0ICogbWVfdmFsdWUKLSsKLSsKLSsjIGRrX2xvb2t1cCB3YXMgcmVtb3ZlZCBp biBweXRob24gMy4xMQotK0RFRiBIQVNfREtfTE9PS1VQID0gUFlfVkVSU0lPTl9IRVggPCAweDMw YjAwMDAKLSsKLStJRiBIQVNfREtfTE9PS1VQOgotKwotKyAgICBjZGVmIGV4dGVybiBmcm9tICo6 Ci0rICAgICAgICAiIiIKLSsgICAgICAgICNkZWZpbmUgREtfTE9PS1VQKGRrKSAoKGRrKS0+ZGtf bG9va3VwKQotKyAgICAgICAgIiIiCi0rICAgICAgICBjdHlwZWRlZiB2b2lkICogZGljdF9sb29r dXBfZnVuYyAgIyBQcmVjaXNlIGRlZmluaXRpb24gbm90IG5lZWRlZAotKyAgICAgICAgZGljdF9s b29rdXBfZnVuYyBES19MT09LVVAoUHlEaWN0S2V5c09iamVjdCAqbXApCi0rCi0rICAgIGNkZWYg ZGljdF9sb29rdXBfZnVuYyBsb29rZGljdAotKwotKyAgICBkZWYgaW5pdF9sb29rZGljdCgpOgot KyAgICAgICAgZ2xvYmFsIGxvb2tkaWN0Ci0rICAgICAgICAjIEEgZGljdCB3aGljaCBhIG5vbi1z dHJpbmcga2V5IHVzZXMgdGhlIGdlbmVyaWMgImxvb2tkaWN0IgotKyAgICAgICAgIyBhcyBsb29r dXAgZnVuY3Rpb24KLSsgICAgICAgIGNkZWYgb2JqZWN0IEQgPSB7fQotKyAgICAgICAgRFswXSA9 IDAKLSsgICAgICAgIGxvb2tkaWN0ID0gREtfTE9PS1VQKCg8UHlEaWN0T2JqZWN0ICo+RCkubWFf a2V5cykKLSsKLSsgICAgaW5pdF9sb29rZGljdCgpCi0gCi0gY2RlZiBpbnQgZGVsX2RpY3RpdGVt X2J5X2V4YWN0X3ZhbHVlKFB5RGljdE9iamVjdCAqbXAsIFB5T2JqZWN0ICp2YWx1ZSwgUHlfaGFz aF90IGhhc2gpIGV4Y2VwdCAtMToKLSAgICAgIiIiCi1AQCAtMTc3LDkgKzEyMCw5IEBAIGNkZWYg aW50IGRlbF9kaWN0aXRlbV9ieV9leGFjdF92YWx1ZShQeURpY3RPYmplY3QgKm1wLCBQeU9iamVj dCAqdmFsdWUsIFB5X2hhc2hfCi0gICAgICAgICBzYWdlOiBmb3IgaSBpbiByYW5nZSgxMF4zKzEw KTogbmV3QSA9IEEoKTsgTVtuZXdBXSA9IHByZXY7IHByZXYgPSBuZXdBCi0gICAgICAgICBzYWdl OiBkZWwgYQotICAgICAiIiIKLS0gICAga2V5cyA9IDxNeVB5RGljdEtleXNPYmplY3QgKj4obXAu bWFfa2V5cykKLSsgICAga2V5cyA9IG1wLm1hX2tleXMKLSAgICAgY2RlZiBzaXplX3QgcGVydHVy YgotLSAgICBjZGVmIHNpemVfdCBtYXNrID0gPHNpemVfdD4ga2V5cy5ka19zaXplLTEKLSsgICAg Y2RlZiBzaXplX3QgbWFzayA9IERLX01BU0soa2V5cykKLSAgICAgY2RlZiBQeURpY3RLZXlFbnRy eSAqZW50cmllcyA9IERLX0VOVFJJRVMoa2V5cykKLSAgICAgY2RlZiBQeURpY3RLZXlFbnRyeSAq ZXAKLSAKLUBAIC0xODcsNyArMTMwLDcgQEAgY2RlZiBpbnQgZGVsX2RpY3RpdGVtX2J5X2V4YWN0 X3ZhbHVlKFB5RGljdE9iamVjdCAqbXAsIFB5T2JqZWN0ICp2YWx1ZSwgUHlfaGFzaF8KLSAgICAg ICAgIHJhaXNlIFR5cGVFcnJvcigiZGVsX2RpY3RpdGVtX2J5X2V4YWN0X3ZhbHVlIGNhbm5vdCBi ZSBhcHBsaWVkIHRvIGEgc2hhcmVkIGtleSBkaWN0IikKLSAKLSAgICAgY2RlZiBzaXplX3QgaSA9 IDxzaXplX3Q+aGFzaCAmIG1hc2sKLS0gICAgaXggPSBka19nZXRfaW5kZXgoa2V5cywgaSkKLSsg ICAgaXggPSBkaWN0a2V5c19nZXRfaW5kZXgoa2V5cywgaSkKLSAKLSAgICAgaWYgaXggPT0gREtJ WF9FTVBUWToKLSAgICAgICAgICMga2V5IG5vdCBmb3VuZAotQEAgLTE5Niw5ICsxMzksOSBAQCBj ZGVmIGludCBkZWxfZGljdGl0ZW1fYnlfZXhhY3RfdmFsdWUoUHlEaWN0T2JqZWN0ICptcCwgUHlP YmplY3QgKnZhbHVlLCBQeV9oYXNoXwotICAgICBlcCA9ICYoZW50cmllc1tpeF0pCi0gICAgIHBl cnR1cmIgPSBoYXNoCi0gICAgIHdoaWxlIChlcC5tZV92YWx1ZSAhPSB2YWx1ZSBvciBlcC5tZV9o YXNoICE9IGhhc2gpOgotLSAgICAgICAgcGVydHVyYiA9IHBlcnR1cmIgPj4gNSAjdGhpcyBpcyB0 aGUgdmFsdWUgb2YgUEVSVFVSQl9TSElGVAotKyAgICAgICAgcGVydHVyYiA9IHBlcnR1cmIgPj4g UEVSVFVSQl9TSElGVAotICAgICAgICAgaSA9IG1hc2sgJiAoaSAqIDUgKyBwZXJ0dXJiICsgMSkK LS0gICAgICAgIGl4ID0gZGtfZ2V0X2luZGV4KGtleXMsIGkpCi0rICAgICAgICBpeCA9IGRpY3Rr ZXlzX2dldF9pbmRleChrZXlzLCBpKQotICAgICAgICAgaWYgaXggPT0gREtJWF9FTVBUWToKLSAg ICAgICAgICAgICAjIGtleSBub3QgZm91bmQKLSAgICAgICAgICAgICByZXR1cm4gMAotQEAgLTIw Niw3ICsxNDksOSBAQCBjZGVmIGludCBkZWxfZGljdGl0ZW1fYnlfZXhhY3RfdmFsdWUoUHlEaWN0 T2JqZWN0ICptcCwgUHlPYmplY3QgKnZhbHVlLCBQeV9oYXNoXwotIAotICAgICAjIFdlIG5lZWQg dGhlIGxvb2t1cCBmdW5jdGlvbiB0byBiZSB0aGUgZ2VuZXJpYyBsb29rZGljdCwgb3RoZXJ3aXNl Ci0gICAgICMgZGVsZXRpb25zIG1heSBub3Qgd29yayBjb3JyZWN0bHkKLS0gICAga2V5cy5ka19s b29rdXAgPSBsb29rZGljdAotKyAgICBJRiBIQVNfREtfTE9PS1VQOgotKyAgICAgICAgIyBDYW4g dGhpcyBmYWlsPyBJbiBhbnkgY2FzZSBka19sb29rdXAgd2FzIHJlbW92ZWQgaW4gcHl0aG9uIDMu MTEKLSsgICAgICAgIGFzc2VydCBES19MT09LVVAoa2V5cykgaXMgbG9va2RpY3QKLSAKLSAgICAg VCA9IFB5TGlzdF9OZXcoMikKLSAgICAgUHlMaXN0X1NldEl0ZW0oVCwgMCwgZXAubWVfa2V5KQot QEAgLTIxNCw3ICsxNTksNyBAQCBjZGVmIGludCBkZWxfZGljdGl0ZW1fYnlfZXhhY3RfdmFsdWUo UHlEaWN0T2JqZWN0ICptcCwgUHlPYmplY3QgKnZhbHVlLCBQeV9oYXNoXwotICAgICBlcC5tZV9r ZXkgPSBOVUxMCi0gICAgIGVwLm1lX3ZhbHVlID0gTlVMTAotICAgICBtcC5tYV91c2VkIC09IDEK LS0gICAgZGtfc2V0X2luZGV4KGtleXMsIGksIERLSVhfRFVNTVkpCi0rICAgIGRpY3RrZXlzX3Nl dF9pbmRleChrZXlzLCBpLCBES0lYX0RVTU1ZKQotICAgICAjV2UgaGF2ZSB0cmFuc2ZlcnJlZCB0 aGUgdG8tYmUtZGVsZXRlZCByZWZlcmVuY2VzIHRvIHRoZSBsaXN0IFQKLSAgICAgI3dlIG5vdyBk ZWxldGUgdGhlIGxpc3Qgc28gdGhhdCB0aGUgYWN0dWFsIGRlY3JlZiBoYXBwZW5zIHRocm91Z2gg YQotICAgICAjZGVhbGxvY2F0aW9uIHJvdXRpbmUgdGhhdCB1c2VzIHRoZSBQeXRob24gVHJhc2hj YW4gbWFjcm9zIHRvCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY3B5dGhvbi9kaWN0X2ludGVybmFs LmggYi9zcmMvc2FnZS9jcHl0aG9uL2RpY3RfaW50ZXJuYWwuaAotbmV3IGZpbGUgbW9kZSAxMDA2 NDQKLWluZGV4IDAwMDAwMDAwMDAwLi4wNmM3YTE2YjI3NQotLS0tIC9kZXYvbnVsbAotKysrIGIv c3JjL3NhZ2UvY3B5dGhvbi9kaWN0X2ludGVybmFsLmgKLUBAIC0wLDAgKzEsMTY1IEBACi0rLyog VGhpcyBjb250YWlucyBpbnRlcm5hbCBkZWZpbml0aW9ucyBmb3IgcHl0aG9uIGRpY3Rpb25hcmll cywKLSsgKiBtb3N0bHkgY29waWVkIGZyb20gY3B5dGhvbiBzb3VyY2Vjb2RlLgotKyAqCi0rICog TW92ZWQgaGVyZSB0byBtYWtlIGl0IGVhc2llciB0byBtYWludGFpbiBpbiB0aGUgZmFjZSBvZiBw eXRob24KLSsgKiBjaGFuZ2VzLgotKyAqICovCi0rCi0rLyoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSsvKiBDb3BpZWQgdmVyYmF0 aW0gZnJvbSBjcHl0aG9uIDMuOCAoT2JqZWN0cy9kaWN0LWNvbW1vbi5oKSAqLwotKy8qKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0r Ci0rI2lmbmRlZiBQeV9ESUNUX0NPTU1PTl9ICi0rI2RlZmluZSBQeV9ESUNUX0NPTU1PTl9ICi0r Ci0rdHlwZWRlZiBzdHJ1Y3QgewotKyAgICAvKiBDYWNoZWQgaGFzaCBjb2RlIG9mIG1lX2tleS4g Ki8KLSsgICAgUHlfaGFzaF90IG1lX2hhc2g7Ci0rICAgIFB5T2JqZWN0ICptZV9rZXk7Ci0rICAg IFB5T2JqZWN0ICptZV92YWx1ZTsgLyogVGhpcyBmaWVsZCBpcyBvbmx5IG1lYW5pbmdmdWwgZm9y IGNvbWJpbmVkIHRhYmxlcyAqLwotK30gUHlEaWN0S2V5RW50cnk7Ci0rCi0rLyogZGljdF9sb29r dXBfZnVuYygpIHJldHVybnMgaW5kZXggb2YgZW50cnkgd2hpY2ggY2FuIGJlIHVzZWQgbGlrZSBE S19FTlRSSUVTKGRrKVtpbmRleF0uCi0rICogLTEgd2hlbiBubyBlbnRyeSBmb3VuZCwgLTMgd2hl biBjb21wYXJlIHJhaXNlcyBlcnJvci4KLSsgKi8KLSt0eXBlZGVmIFB5X3NzaXplX3QgKCpkaWN0 X2xvb2t1cF9mdW5jKQotKyAgICAoUHlEaWN0T2JqZWN0ICptcCwgUHlPYmplY3QgKmtleSwgUHlf aGFzaF90IGhhc2gsIFB5T2JqZWN0ICoqdmFsdWVfYWRkcik7Ci0rCi0rI2RlZmluZSBES0lYX0VN UFRZICgtMSkKLSsjZGVmaW5lIERLSVhfRFVNTVkgKC0yKSAgLyogVXNlZCBpbnRlcm5hbGx5ICov Ci0rI2RlZmluZSBES0lYX0VSUk9SICgtMykKLSsKLSsvKiBTZWUgZGljdG9iamVjdC5jIGZvciBh Y3R1YWwgbGF5b3V0IG9mIERpY3RLZXlzT2JqZWN0ICovCi0rc3RydWN0IF9kaWN0a2V5c29iamVj dCB7Ci0rICAgIFB5X3NzaXplX3QgZGtfcmVmY250OwotKwotKyAgICAvKiBTaXplIG9mIHRoZSBo YXNoIHRhYmxlIChka19pbmRpY2VzKS4gSXQgbXVzdCBiZSBhIHBvd2VyIG9mIDIuICovCi0rICAg IFB5X3NzaXplX3QgZGtfc2l6ZTsKLSsKLSsgICAgLyogRnVuY3Rpb24gdG8gbG9va3VwIGluIHRo ZSBoYXNoIHRhYmxlIChka19pbmRpY2VzKToKLSsKLSsgICAgICAgLSBsb29rZGljdCgpOiBnZW5l cmFsLXB1cnBvc2UsIGFuZCBtYXkgcmV0dXJuIERLSVhfRVJST1IgaWYgKGFuZAotKyAgICAgICAg IG9ubHkgaWYpIGEgY29tcGFyaXNvbiByYWlzZXMgYW4gZXhjZXB0aW9uLgotKwotKyAgICAgICAt IGxvb2tkaWN0X3VuaWNvZGUoKTogc3BlY2lhbGl6ZWQgdG8gVW5pY29kZSBzdHJpbmcga2V5cywg Y29tcGFyaXNvbiBvZgotKyAgICAgICAgIHdoaWNoIGNhbiBuZXZlciByYWlzZSBhbiBleGNlcHRp b247IHRoYXQgZnVuY3Rpb24gY2FuIG5ldmVyIHJldHVybgotKyAgICAgICAgIERLSVhfRVJST1Iu Ci0rCi0rICAgICAgIC0gbG9va2RpY3RfdW5pY29kZV9ub2R1bW15KCk6IHNpbWlsYXIgdG8gbG9v a2RpY3RfdW5pY29kZSgpIGJ1dCBmdXJ0aGVyCi0rICAgICAgICAgc3BlY2lhbGl6ZWQgZm9yIFVu aWNvZGUgc3RyaW5nIGtleXMgdGhhdCBjYW5ub3QgYmUgdGhlIDxkdW1teT4gdmFsdWUuCi0rCi0r ICAgICAgIC0gbG9va2RpY3Rfc3BsaXQoKTogVmVyc2lvbiBvZiBsb29rZGljdCgpIGZvciBzcGxp dCB0YWJsZXMuICovCi0rICAgIGRpY3RfbG9va3VwX2Z1bmMgZGtfbG9va3VwOwotKwotKyAgICAv KiBOdW1iZXIgb2YgdXNhYmxlIGVudHJpZXMgaW4gZGtfZW50cmllcy4gKi8KLSsgICAgUHlfc3Np emVfdCBka191c2FibGU7Ci0rCi0rICAgIC8qIE51bWJlciBvZiB1c2VkIGVudHJpZXMgaW4gZGtf ZW50cmllcy4gKi8KLSsgICAgUHlfc3NpemVfdCBka19uZW50cmllczsKLSsKLSsgICAgLyogQWN0 dWFsIGhhc2ggdGFibGUgb2YgZGtfc2l6ZSBlbnRyaWVzLiBJdCBob2xkcyBpbmRpY2VzIGluIGRr X2VudHJpZXMsCi0rICAgICAgIG9yIERLSVhfRU1QVFkoLTEpIG9yIERLSVhfRFVNTVkoLTIpLgot KwotKyAgICAgICBJbmRpY2VzIG11c3QgYmU6IDAgPD0gaW5kaWNlIDwgVVNBQkxFX0ZSQUNUSU9O KGRrX3NpemUpLgotKwotKyAgICAgICBUaGUgc2l6ZSBpbiBieXRlcyBvZiBhbiBpbmRpY2UgZGVw ZW5kcyBvbiBka19zaXplOgotKwotKyAgICAgICAtIDEgYnl0ZSBpZiBka19zaXplIDw9IDB4ZmYg KGNoYXIqKQotKyAgICAgICAtIDIgYnl0ZXMgaWYgZGtfc2l6ZSA8PSAweGZmZmYgKGludDE2X3Qq KQotKyAgICAgICAtIDQgYnl0ZXMgaWYgZGtfc2l6ZSA8PSAweGZmZmZmZmZmIChpbnQzMl90KikK LSsgICAgICAgLSA4IGJ5dGVzIG90aGVyd2lzZSAoaW50NjRfdCopCi0rCi0rICAgICAgIER5bmFt aWNhbGx5IHNpemVkLCBTSVpFT0ZfVk9JRF9QIGlzIG1pbmltdW0uICovCi0rICAgIGNoYXIgZGtf aW5kaWNlc1tdOyAgLyogY2hhciBpcyByZXF1aXJlZCB0byBhdm9pZCBzdHJpY3QgYWxpYXNpbmcu ICovCi0rCi0rICAgIC8qICJQeURpY3RLZXlFbnRyeSBka19lbnRyaWVzW2RrX3VzYWJsZV07IiBh cnJheSBmb2xsb3dzOgotKyAgICAgICBzZWUgdGhlIERLX0VOVFJJRVMoKSBtYWNybyAqLwotK307 Ci0rCi0rI2VuZGlmCi0rCi0rCi0rLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqLwotKy8qIENvcGllZCB2ZXJiYXRpbSBmcm9tIGNweXRo b24gMy44IChPYmplY3RzL2RpY3RvYmplY3QuYykgKi8KLSsvKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0rCi0rI2RlZmluZSBQRVJU VVJCX1NISUZUIDUKLSsjZGVmaW5lIERLX1NJWkUoZGspICgoZGspLT5ka19zaXplKQotKyNpZiBT SVpFT0ZfVk9JRF9QID4gNAotKyNkZWZpbmUgREtfSVhTSVpFKGRrKSAgICAgICAgICAgICAgICAg ICAgICAgICAgXAotKyAgICAoREtfU0laRShkaykgPD0gMHhmZiA/ICAgICAgICAgICAgICAgICAg ICAgXAotKyAgICAgICAgMSA6IERLX1NJWkUoZGspIDw9IDB4ZmZmZiA/ICAgICAgICAgICAgXAot KyAgICAgICAgICAgIDIgOiBES19TSVpFKGRrKSA8PSAweGZmZmZmZmZmID8gICAgXAotKyAgICAg ICAgICAgICAgICA0IDogc2l6ZW9mKGludDY0X3QpKQotKyNlbHNlCi0rI2RlZmluZSBES19JWFNJ WkUoZGspICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIChES19TSVpFKGRrKSA8PSAw eGZmID8gICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAxIDogREtfU0laRShkaykgPD0g MHhmZmZmID8gICAgICAgICAgICBcCi0rICAgICAgICAgICAgMiA6IHNpemVvZihpbnQzMl90KSkK LSsjZW5kaWYKLSsjZGVmaW5lIERLX0VOVFJJRVMoZGspIFwKLSsgICAgKChQeURpY3RLZXlFbnRy eSopKCYoKGludDhfdCopKChkayktPmRrX2luZGljZXMpKVtES19TSVpFKGRrKSAqIERLX0lYU0la RShkayldKSkKLSsKLSsjZGVmaW5lIERLX01BU0soZGspICgoKGRrKS0+ZGtfc2l6ZSktMSkKLSsK LSsvKiBsb29rdXAgaW5kaWNlcy4gIHJldHVybnMgREtJWF9FTVBUWSwgREtJWF9EVU1NWSwgb3Ig aXggPj0wICovCi0rc3RhdGljIGlubGluZSBQeV9zc2l6ZV90Ci0rZGljdGtleXNfZ2V0X2luZGV4 KFB5RGljdEtleXNPYmplY3QgKmtleXMsIFB5X3NzaXplX3QgaSkKLSt7Ci0rICAgIFB5X3NzaXpl X3QgcyA9IERLX1NJWkUoa2V5cyk7Ci0rICAgIFB5X3NzaXplX3QgaXg7Ci0rCi0rICAgIGlmIChz IDw9IDB4ZmYpIHsKLSsgICAgICAgIGludDhfdCAqaW5kaWNlcyA9IChpbnQ4X3QqKShrZXlzLT5k a19pbmRpY2VzKTsKLSsgICAgICAgIGl4ID0gaW5kaWNlc1tpXTsKLSsgICAgfQotKyAgICBlbHNl IGlmIChzIDw9IDB4ZmZmZikgewotKyAgICAgICAgaW50MTZfdCAqaW5kaWNlcyA9IChpbnQxNl90 Kikoa2V5cy0+ZGtfaW5kaWNlcyk7Ci0rICAgICAgICBpeCA9IGluZGljZXNbaV07Ci0rICAgIH0K LSsjaWYgU0laRU9GX1ZPSURfUCA+IDQKLSsgICAgZWxzZSBpZiAocyA+IDB4ZmZmZmZmZmYpIHsK LSsgICAgICAgIGludDY0X3QgKmluZGljZXMgPSAoaW50NjRfdCopKGtleXMtPmRrX2luZGljZXMp OwotKyAgICAgICAgaXggPSBpbmRpY2VzW2ldOwotKyAgICB9Ci0rI2VuZGlmCi0rICAgIGVsc2Ug ewotKyAgICAgICAgaW50MzJfdCAqaW5kaWNlcyA9IChpbnQzMl90Kikoa2V5cy0+ZGtfaW5kaWNl cyk7Ci0rICAgICAgICBpeCA9IGluZGljZXNbaV07Ci0rICAgIH0KLSsgICAgYXNzZXJ0KGl4ID49 IERLSVhfRFVNTVkpOwotKyAgICByZXR1cm4gaXg7Ci0rfQotKwotKy8qIHdyaXRlIHRvIGluZGlj ZXMuICovCi0rc3RhdGljIGlubGluZSB2b2lkCi0rZGljdGtleXNfc2V0X2luZGV4KFB5RGljdEtl eXNPYmplY3QgKmtleXMsIFB5X3NzaXplX3QgaSwgUHlfc3NpemVfdCBpeCkKLSt7Ci0rICAgIFB5 X3NzaXplX3QgcyA9IERLX1NJWkUoa2V5cyk7Ci0rCi0rICAgIGFzc2VydChpeCA+PSBES0lYX0RV TU1ZKTsKLSsKLSsgICAgaWYgKHMgPD0gMHhmZikgewotKyAgICAgICAgaW50OF90ICppbmRpY2Vz ID0gKGludDhfdCopKGtleXMtPmRrX2luZGljZXMpOwotKyAgICAgICAgYXNzZXJ0KGl4IDw9IDB4 N2YpOwotKyAgICAgICAgaW5kaWNlc1tpXSA9IChjaGFyKWl4OwotKyAgICB9Ci0rICAgIGVsc2Ug aWYgKHMgPD0gMHhmZmZmKSB7Ci0rICAgICAgICBpbnQxNl90ICppbmRpY2VzID0gKGludDE2X3Qq KShrZXlzLT5ka19pbmRpY2VzKTsKLSsgICAgICAgIGFzc2VydChpeCA8PSAweDdmZmYpOwotKyAg ICAgICAgaW5kaWNlc1tpXSA9IChpbnQxNl90KWl4OwotKyAgICB9Ci0rI2lmIFNJWkVPRl9WT0lE X1AgPiA0Ci0rICAgIGVsc2UgaWYgKHMgPiAweGZmZmZmZmZmKSB7Ci0rICAgICAgICBpbnQ2NF90 ICppbmRpY2VzID0gKGludDY0X3QqKShrZXlzLT5ka19pbmRpY2VzKTsKLSsgICAgICAgIGluZGlj ZXNbaV0gPSBpeDsKLSsgICAgfQotKyNlbmRpZgotKyAgICBlbHNlIHsKLSsgICAgICAgIGludDMy X3QgKmluZGljZXMgPSAoaW50MzJfdCopKGtleXMtPmRrX2luZGljZXMpOwotKyAgICAgICAgYXNz ZXJ0KGl4IDw9IDB4N2ZmZmZmZmYpOwotKyAgICAgICAgaW5kaWNlc1tpXSA9IChpbnQzMl90KWl4 OwotKyAgICB9Ci0rfQotKwotKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKiovCi0tLSAKLTIuMzguMQotCi0KLUZyb20gNzYwNDA4MDNj OGFlMTUwYmFlZjQ0OWVkY2U2N2ViZGFmYjJlZTg5NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206ID0/VVRGLTg/cT9Hb256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0 LmVkdS51eT4KLURhdGU6IFN1biwgNiBOb3YgMjAyMiAxMTo1MzoyNCAtMDMwMAotU3ViamVjdDog W1BBVENIIDAyLzExXSBkaWN0X2RlbF9ieV92YWx1ZTogYWRkIGludGVybmFsIGRlZmluaXRpb25z IGZvciBweXRob24KLSAzLjExCi0KLS0tLQotIHNyYy9zYWdlL2NweXRob24vZGljdF9pbnRlcm5h bC5oIHwgNzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKLSAxIGZpbGUgY2hhbmdl ZCwgNzcgaW5zZXJ0aW9ucygrKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY3B5dGhvbi9kaWN0 X2ludGVybmFsLmggYi9zcmMvc2FnZS9jcHl0aG9uL2RpY3RfaW50ZXJuYWwuaAotaW5kZXggMDZj N2ExNmIyNzUuLjQyYTU3YmNiNDY4IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvY3B5dGhvbi9kaWN0 X2ludGVybmFsLmgKLSsrKyBiL3NyYy9zYWdlL2NweXRob24vZGljdF9pbnRlcm5hbC5oCi1AQCAt NSw2ICs1LDggQEAKLSAgKiBjaGFuZ2VzLgotICAqICovCi0gCi0rI2lmIFBZX1ZFUlNJT05fSEVY IDwgMHgzMGIwMDAwCi0rCi0gLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKi8KLSAvKiBDb3BpZWQgdmVyYmF0aW0gZnJvbSBjcHl0aG9u IDMuOCAoT2JqZWN0cy9kaWN0LWNvbW1vbi5oKSAqLwotIC8qKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi1AQCAtMTYzLDMgKzE2NSw3 OCBAQCBkaWN0a2V5c19zZXRfaW5kZXgoUHlEaWN0S2V5c09iamVjdCAqa2V5cywgUHlfc3NpemVf dCBpLCBQeV9zc2l6ZV90IGl4KQotIH0KLSAKLSAvKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotKwotKyNlbHNlICAgLyogUHl0aG9u ID49IDMuMTEgKi8KLSsKLSsjZGVmaW5lIFB5X0JVSUxEX0NPUkUKLSsjaW5jbHVkZSA8aW50ZXJu YWwvcHljb3JlX2RpY3QuaD4KLSsKLSsvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqLwotKy8qIENvcGllZCB2ZXJiYXRpbSBmcm9tIGNw eXRob24gMy4xMSAoT2JqZWN0cy9kaWN0b2JqZWN0LmMpICovCi0rLyoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSsKLSsjZGVmaW5l IFBFUlRVUkJfU0hJRlQgNQotKyNkZWZpbmUgREtfTUFTSyhkaykgKERLX1NJWkUoZGspLTEpCi0r Ci0rLyogbG9va3VwIGluZGljZXMuICByZXR1cm5zIERLSVhfRU1QVFksIERLSVhfRFVNTVksIG9y IGl4ID49MCAqLwotK3N0YXRpYyBpbmxpbmUgUHlfc3NpemVfdAotK2RpY3RrZXlzX2dldF9pbmRl eChjb25zdCBQeURpY3RLZXlzT2JqZWN0ICprZXlzLCBQeV9zc2l6ZV90IGkpCi0rewotKyAgICBp bnQgbG9nMnNpemUgPSBES19MT0dfU0laRShrZXlzKTsKLSsgICAgUHlfc3NpemVfdCBpeDsKLSsK LSsgICAgaWYgKGxvZzJzaXplIDwgOCkgewotKyAgICAgICAgY29uc3QgaW50OF90ICppbmRpY2Vz ID0gKGNvbnN0IGludDhfdCopKGtleXMtPmRrX2luZGljZXMpOwotKyAgICAgICAgaXggPSBpbmRp Y2VzW2ldOwotKyAgICB9Ci0rICAgIGVsc2UgaWYgKGxvZzJzaXplIDwgMTYpIHsKLSsgICAgICAg IGNvbnN0IGludDE2X3QgKmluZGljZXMgPSAoY29uc3QgaW50MTZfdCopKGtleXMtPmRrX2luZGlj ZXMpOwotKyAgICAgICAgaXggPSBpbmRpY2VzW2ldOwotKyAgICB9Ci0rI2lmIFNJWkVPRl9WT0lE X1AgPiA0Ci0rICAgIGVsc2UgaWYgKGxvZzJzaXplID49IDMyKSB7Ci0rICAgICAgICBjb25zdCBp bnQ2NF90ICppbmRpY2VzID0gKGNvbnN0IGludDY0X3QqKShrZXlzLT5ka19pbmRpY2VzKTsKLSsg ICAgICAgIGl4ID0gaW5kaWNlc1tpXTsKLSsgICAgfQotKyNlbmRpZgotKyAgICBlbHNlIHsKLSsg ICAgICAgIGNvbnN0IGludDMyX3QgKmluZGljZXMgPSAoY29uc3QgaW50MzJfdCopKGtleXMtPmRr X2luZGljZXMpOwotKyAgICAgICAgaXggPSBpbmRpY2VzW2ldOwotKyAgICB9Ci0rICAgIGFzc2Vy dChpeCA+PSBES0lYX0RVTU1ZKTsKLSsgICAgcmV0dXJuIGl4OwotK30KLSsKLSsvKiB3cml0ZSB0 byBpbmRpY2VzLiAqLwotK3N0YXRpYyBpbmxpbmUgdm9pZAotK2RpY3RrZXlzX3NldF9pbmRleChQ eURpY3RLZXlzT2JqZWN0ICprZXlzLCBQeV9zc2l6ZV90IGksIFB5X3NzaXplX3QgaXgpCi0rewot KyAgICBpbnQgbG9nMnNpemUgPSBES19MT0dfU0laRShrZXlzKTsKLSsKLSsgICAgYXNzZXJ0KGl4 ID49IERLSVhfRFVNTVkpOwotKyAgICBhc3NlcnQoa2V5cy0+ZGtfdmVyc2lvbiA9PSAwKTsKLSsK LSsgICAgaWYgKGxvZzJzaXplIDwgOCkgewotKyAgICAgICAgaW50OF90ICppbmRpY2VzID0gKGlu dDhfdCopKGtleXMtPmRrX2luZGljZXMpOwotKyAgICAgICAgYXNzZXJ0KGl4IDw9IDB4N2YpOwot KyAgICAgICAgaW5kaWNlc1tpXSA9IChjaGFyKWl4OwotKyAgICB9Ci0rICAgIGVsc2UgaWYgKGxv ZzJzaXplIDwgMTYpIHsKLSsgICAgICAgIGludDE2X3QgKmluZGljZXMgPSAoaW50MTZfdCopKGtl eXMtPmRrX2luZGljZXMpOwotKyAgICAgICAgYXNzZXJ0KGl4IDw9IDB4N2ZmZik7Ci0rICAgICAg ICBpbmRpY2VzW2ldID0gKGludDE2X3QpaXg7Ci0rICAgIH0KLSsjaWYgU0laRU9GX1ZPSURfUCA+ IDQKLSsgICAgZWxzZSBpZiAobG9nMnNpemUgPj0gMzIpIHsKLSsgICAgICAgIGludDY0X3QgKmlu ZGljZXMgPSAoaW50NjRfdCopKGtleXMtPmRrX2luZGljZXMpOwotKyAgICAgICAgaW5kaWNlc1tp XSA9IGl4OwotKyAgICB9Ci0rI2VuZGlmCi0rICAgIGVsc2UgewotKyAgICAgICAgaW50MzJfdCAq aW5kaWNlcyA9IChpbnQzMl90Kikoa2V5cy0+ZGtfaW5kaWNlcyk7Ci0rICAgICAgICBhc3NlcnQo aXggPD0gMHg3ZmZmZmZmZik7Ci0rICAgICAgICBpbmRpY2VzW2ldID0gKGludDMyX3QpaXg7Ci0r ICAgIH0KLSt9Ci0rCi0rI2VuZGlmCi0tLSAKLTIuMzguMQotCi0KLUZyb20gMDE0YzJhYzlhNmY2 ZGUyNWQ0ZTMxZmUwYmRhZjgxOWU5YzY3ZDI0YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZy b206ID0/VVRGLTg/cT9Hb256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0LmVk dS51eT4KLURhdGU6IE1vbiwgMzEgT2N0IDIwMjIgMDY6NDc6MTggLTAzMDAKLVN1YmplY3Q6IFtQ QVRDSCAwMy8xMV0gZGVwcmVjYXRlZCB1dSAtPiBiYXNlNjQKLQotLS0tCi0gc3JjL3NhZ2Uvcmlu Z3MvcG9seW5vbWlhbC9wYm9yaS9nYnJlZnMucHkgfCAyICstCi0gMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9yaW5n cy9wb2x5bm9taWFsL3Bib3JpL2dicmVmcy5weSBiL3NyYy9zYWdlL3JpbmdzL3BvbHlub21pYWwv cGJvcmkvZ2JyZWZzLnB5Ci1pbmRleCA3NmUzOTI0NzE1ZC4uNzBkYzc5NWNiYWIgMTAwNjQ0Ci0t LS0gYS9zcmMvc2FnZS9yaW5ncy9wb2x5bm9taWFsL3Bib3JpL2dicmVmcy5weQotKysrIGIvc3Jj L3NhZ2UvcmluZ3MvcG9seW5vbWlhbC9wYm9yaS9nYnJlZnMucHkKLUBAIC0xLDYgKzEsNiBAQAot IGltcG9ydCBnemlwCi0gZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KLS1pbXBvcnQgdXUKLStpbXBv cnQgYmFzZTY0IGFzIHV1Ci0gaW1wb3J0IHJlCi0gZnJvbSB0eXBlcyBpbXBvcnQgTW9kdWxlVHlw ZQotIGZyb20gLlB5UG9seUJvUmkgaW1wb3J0IFBvbHlub21pYWwKLS0tIAotMi4zOC4xCi0KLQot RnJvbSBkYzhlMTU1OTk0YTg3MGE1ZTBiMDFhNjkwYTNmZWM4OTc1MTk3OTczIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogPT9VVEYtOD9xP0dvbnphbG89MjBUb3JuYXI9QzM9QURhPz0g PHRvcm5hcmlhQGNtYXQuZWR1LnV5PgotRGF0ZTogTW9uLCAzMSBPY3QgMjAyMiAwNjo0NzozNCAt MDMwMAotU3ViamVjdDogW1BBVENIIDA0LzExXSBzYWdlLm1pc2MuZnBpY2tsZTogZml4IGZvciBw eXRob24gMy4xMQotCi0tLS0KLSBzcmMvc2FnZS9taXNjL2ZwaWNrbGUucHl4IHwgMTMgKysrKysr KysrKysrLQotIDEgZmlsZSBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0p Ci0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9taXNjL2ZwaWNrbGUucHl4IGIvc3JjL3NhZ2UvbWlz Yy9mcGlja2xlLnB5eAotaW5kZXggNTAyMDgwZTJjMTAuLmM1ZDU0NDc2NWJiIDEwMDY0NAotLS0t IGEvc3JjL3NhZ2UvbWlzYy9mcGlja2xlLnB5eAotKysrIGIvc3JjL3NhZ2UvbWlzYy9mcGlja2xl LnB5eAotQEAgLTM0LDYgKzM0LDEyIEBAIGRlZiByZWR1Y2VfY29kZShjbyk6Ci0gICAgICAgICBz YWdlOiBkZWYgZm9vKE4pOiByZXR1cm4gTisxCi0gICAgICAgICBzYWdlOiBzYWdlLm1pc2MuZnBp Y2tsZS5yZWR1Y2VfY29kZShmb28uX19jb2RlX18pCi0gICAgICAgICAoPGN5ZnVuY3Rpb24gY29k ZV9jdG9yIGF0IC4uLj4sIC4uLikKLSsKLSsgICAgVGVzdCB0aGF0IHRoZSBjb25zdHJ1Y3RlZCBj b2RlIG1hdGNoZXMgdGhlIG9yaWdpbmFsIGNvZGU6Ci0rCi0rICAgICAgICBzYWdlOiBjdG9yLCBh cmdzID0gc2FnZS5taXNjLmZwaWNrbGUucmVkdWNlX2NvZGUoZm9vLl9fY29kZV9fKQotKyAgICAg ICAgc2FnZTogY3RvcigqYXJncykgPT0gZm9vLl9fY29kZV9fCi0rICAgICAgICBUcnVlCi0gICAg ICIiIgotICAgICBpZiBjby5jb19mcmVldmFycyBvciBjby5jb19jZWxsdmFyczoKLSAgICAgICAg IHJhaXNlIFZhbHVlRXJyb3IoIkNhbm5vdCBwaWNrbGUgY29kZSBvYmplY3RzIGZyb20gY2xvc3Vy ZXMiKQotQEAgLTQ0LDcgKzUwLDEyIEBAIGRlZiByZWR1Y2VfY29kZShjbyk6Ci0gICAgIGNvX2Fy Z3MgKz0gKGNvLmNvX2t3b25seWFyZ2NvdW50LCBjby5jb19ubG9jYWxzLAotICAgICAgICAgICAg ICAgICBjby5jb19zdGFja3NpemUsIGNvLmNvX2ZsYWdzLCBjby5jb19jb2RlLAotICAgICAgICAg ICAgICAgICBjby5jb19jb25zdHMsIGNvLmNvX25hbWVzLCBjby5jb192YXJuYW1lcywgY28uY29f ZmlsZW5hbWUsCi0tICAgICAgICAgICAgICAgIGNvLmNvX25hbWUsIGNvLmNvX2ZpcnN0bGluZW5v LCBjby5jb19sbm90YWIpCi0rICAgICAgICAgICAgICAgIGNvLmNvX25hbWUpCi0rICAgIGlmIHN5 cy52ZXJzaW9uX2luZm8ubWlub3IgPj0gMTE6Ci0rICAgICAgICBjb19hcmdzICs9IChjby5jb19x dWFsbmFtZSwgY28uY29fZmlyc3RsaW5lbm8sCi0rICAgICAgICAgICAgICAgICAgICBjby5jb19s aW5ldGFibGUsIGNvLmNvX2V4Y2VwdGlvbnRhYmxlKQotKyAgICBlbHNlOgotKyAgICAgICAgY29f YXJncyArPSAoY28uY29fZmlyc3RsaW5lbm8sIGNvLmNvX2xub3RhYikKLSAKLSAgICAgcmV0dXJu IChjb2RlX2N0b3IsIGNvX2FyZ3MpCi0gCi0tLSAKLTIuMzguMQotCi0KLUZyb20gOGIwZGFjMjMy MmQ0YTg4OGM2MDdjNTZkM2I1YTcyZmY3MWRmNDE0NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206ID0/VVRGLTg/cT9Hb256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0 LmVkdS51eT4KLURhdGU6IE1vbiwgMzEgT2N0IDIwMjIgMDg6MTU6NDMgLTAzMDAKLVN1YmplY3Q6 IFtQQVRDSCAwNS8xMV0gRml4IEZ1bGxBcmdTcGVjIHVzYWdlIGFmdGVyCi0gOWViMDhmM2FmZGUz MjY2YmJkNjY3ZTE5NjUxMzI0MGEwZmUyNDVmNAotCi0gLSBga3dvbmx5ZGVmYXVsdHNgIGRlZmF1 bHQgaXMgYFtdYCByYXRoZXIgdGhhbiBge31gCi0gLSBgYXJnc3BlYy5rZXl3b3Jkc2AgY2hhbmdl ZCB0byBgYXJnc3BlYy52YXJrd2AKLSAtIGBBcmdTcGVjYCBjaGFuZ2VkIHRvIGBGdWxsQXJnU3Bl Y2AKLS0tLQotIHNyYy9zYWdlL2NvZGluZy9hYnN0cmFjdF9jb2RlLnB5IHwgMiArLQotIHNyYy9z YWdlL21pc2MvZGVjb3JhdG9ycy5weSAgICAgIHwgNyArKysrLS0tCi0gc3JjL3NhZ2UvbWlzYy9z YWdlaW5zcGVjdC5weSAgICAgfCA5ICsrKysrLS0tLQotIDMgZmlsZXMgY2hhbmdlZCwgMTAgaW5z ZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2NvZGlu Zy9hYnN0cmFjdF9jb2RlLnB5IGIvc3JjL3NhZ2UvY29kaW5nL2Fic3RyYWN0X2NvZGUucHkKLWlu ZGV4IGJhMmVjNjhhMDM4Li4yMzhhMTY1YzAyMSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2NvZGlu Zy9hYnN0cmFjdF9jb2RlLnB5Ci0rKysgYi9zcmMvc2FnZS9jb2RpbmcvYWJzdHJhY3RfY29kZS5w eQotQEAgLTEyMyw3ICsxMjMsNyBAQCBkZWYgX2V4cGxhaW5fY29uc3RydWN0b3IoY2wpOgotICAg ICAgICAgcmVxcyA9ICJUaGUgY29uc3RydWN0b3IgcmVxdWlyZXMgdGhlIGFyZ3VtZW50cyB7fS4i LmZvcm1hdChhcmdzKQotICAgICBlbHNlOgotICAgICAgICAgcmVxcyA9ICJUaGUgY29uc3RydWN0 b3IgcmVxdWlyZXMgbm8gYXJndW1lbnRzLiIKLS0gICAgaWYgYXJnc3BlYy52YXJhcmdzIG9yIGFy Z3NwZWMua2V5d29yZHM6Ci0rICAgIGlmIGFyZ3NwZWMudmFyYXJncyBvciBhcmdzcGVjLnZhcmt3 OgotICAgICAgICAgdmFyID0gIkl0IGFjY2VwdHMgdW5zcGVjaWZpZWQgYXJndW1lbnRzIGFzIHdl bGwuXG4iCi0gICAgIGVsc2U6Ci0gICAgICAgICB2YXIgPSAiIgotZGlmZiAtLWdpdCBhL3NyYy9z YWdlL21pc2MvZGVjb3JhdG9ycy5weSBiL3NyYy9zYWdlL21pc2MvZGVjb3JhdG9ycy5weQotaW5k ZXggMzExYTUxMDU3MzkuLjI3MWUyNDMwNTBmIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvbWlzYy9k ZWNvcmF0b3JzLnB5Ci0rKysgYi9zcmMvc2FnZS9taXNjL2RlY29yYXRvcnMucHkKLUBAIC00MjMs NyArNDIzLDggQEAgY2xhc3Mgc3Vib3B0aW9ucygpOgotICAgICAgICAgICAgIGRlZmF1bHRzID0g KGFyZ3NwZWMuZGVmYXVsdHMgaWYgYXJnc3BlYy5kZWZhdWx0cyBpcyBub3QgTm9uZSBlbHNlICgp KSBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgKyB0dXBsZShzZWxmLm9wdGlvbnMudmFsdWVz KCkpCi0gICAgICAgICAgICAgIyBOb3RlOiBhcmdzcGVjLmRlZmF1bHRzIGlzIG5vdCBhbHdheXMg YSB0dXBsZSBmb3Igc29tZSByZWFzb24KLS0gICAgICAgICAgICByZXR1cm4gQXJnU3BlYyhhcmdz LCBhcmdzcGVjLnZhcmFyZ3MsIGFyZ3NwZWMua2V5d29yZHMsIGRlZmF1bHRzKQotKyAgICAgICAg ICAgIHJldHVybiBGdWxsQXJnU3BlYyhhcmdzLCBhcmdzcGVjLnZhcmFyZ3MsIGFyZ3NwZWMudmFy a3csIGRlZmF1bHRzLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd29ubHlhcmdz PVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHdyYXBw ZXIuX3NhZ2VfYXJnc3BlY18gPSBhcmdzcGVjCi0gCi0gICAgICAgICByZXR1cm4gd3JhcHBlcgot QEAgLTUwMCw4ICs1MDEsOCBAQCBjbGFzcyBvcHRpb25zKCk6Ci0gICAgICAgICAgICAgICAgICAg ICBsaXN0KHNlbGYub3B0aW9ucykpCi0gICAgICAgICAgICAgZGVmYXVsdHMgPSAoYXJnc3BlYy5k ZWZhdWx0cyBvciAoKSkgKyB0dXBsZShzZWxmLm9wdGlvbnMudmFsdWVzKCkpCi0gICAgICAgICAg ICAgIyBOb3RlOiBhcmdzcGVjLmRlZmF1bHRzIGlzIG5vdCBhbHdheXMgYSB0dXBsZSBmb3Igc29t ZSByZWFzb24KLS0gICAgICAgICAgICByZXR1cm4gRnVsbEFyZ1NwZWMoYXJncywgYXJnc3BlYy52 YXJhcmdzLCBhcmdzcGVjLmtleXdvcmRzLCBkZWZhdWx0cywKLS0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9e30sIGFubm90YXRpb25z PXt9KQotKyAgICAgICAgICAgIHJldHVybiBGdWxsQXJnU3BlYyhhcmdzLCBhcmdzcGVjLnZhcmFy Z3MsIGFyZ3NwZWMudmFya3csIGRlZmF1bHRzLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkK LSAKLSAgICAgICAgIHdyYXBwZXIuX3NhZ2VfYXJnc3BlY18gPSBhcmdzcGVjCi0gCi1kaWZmIC0t Z2l0IGEvc3JjL3NhZ2UvbWlzYy9zYWdlaW5zcGVjdC5weSBiL3NyYy9zYWdlL21pc2Mvc2FnZWlu c3BlY3QucHkKLWluZGV4IGEzODIxY2I1NmI5Li5jZTlhNzRmOTMxZCAxMDA2NDQKLS0tLSBhL3Ny Yy9zYWdlL21pc2Mvc2FnZWluc3BlY3QucHkKLSsrKyBiL3NyYy9zYWdlL21pc2Mvc2FnZWluc3Bl Y3QucHkKLUBAIC0xMTM3LDcgKzExMzcsNyBAQCBkZWYgX3NhZ2VfZ2V0YXJnc3BlY19mcm9tX2Fz dChzb3VyY2UpOgotIAotICAgICByZXR1cm4gaW5zcGVjdC5GdWxsQXJnU3BlYyhhcmdzLCB2YXJh cmcsIGt3YXJnLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dXBsZShkZWZhdWx0 cykgaWYgZGVmYXVsdHMgZWxzZSBOb25lLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz17fSwgYW5ub3RhdGlvbnM9e30pCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRz PU5vbmUsIGFubm90YXRpb25zPXt9KQotIAotIAotIGRlZiBfc2FnZV9nZXRhcmdzcGVjX2N5dGhv bihzb3VyY2UpOgotQEAgLTE2ODMsNyArMTY4Myw4IEBAIGRlZiBzYWdlX2dldGFyZ3NwZWMob2Jq KToKLSAgICAgICAgICMgTm90ZSB0aGF0IHRoaXMgbWF5IGdpdmUgYSB3cm9uZyByZXN1bHQgZm9y IHRoZSBjb25zdGFudHMhCi0gICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgYXJncywgdmFyYXJn cywgdmFya3cgPSBpbnNwZWN0LmdldGFyZ3Mob2JqLl9fY29kZV9fKQotLSAgICAgICAgICAgIHJl dHVybiBpbnNwZWN0LkZ1bGxBcmdTcGVjKGFyZ3MsIHZhcmFyZ3MsIHZhcmt3LCBvYmouX19kZWZh dWx0c19fKQotKyAgICAgICAgICAgIHJldHVybiBpbnNwZWN0LkZ1bGxBcmdTcGVjKGFyZ3MsIHZh cmFyZ3MsIHZhcmt3LCBvYmouX19kZWZhdWx0c19fLAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPU5vbmUsIGFubm90 YXRpb25zPXt9KQotICAgICAgICAgZXhjZXB0IChUeXBlRXJyb3IsIEF0dHJpYnV0ZUVycm9yKToK LSAgICAgICAgICAgICBwYXNzCi0gICAgIGlmIGlzY2xhc3NpbnN0YW5jZShvYmopOgotQEAgLTE3 NDIsNyArMTc0Myw3IEBAIGRlZiBzYWdlX2dldGFyZ3NwZWMob2JqKToKLSAgICAgZXhjZXB0IEF0 dHJpYnV0ZUVycm9yOgotICAgICAgICAgZGVmYXVsdHMgPSBOb25lCi0gICAgIHJldHVybiBpbnNw ZWN0LkZ1bGxBcmdTcGVjKGFyZ3MsIHZhcmFyZ3MsIHZhcmt3LCBkZWZhdWx0cywKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9e30s IGFubm90YXRpb25zPXt9KQotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd29ubHlh cmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAKLSAKLSBkZWYg Zm9ybWF0YW5ub3RhdGlvbihhbm5vdGF0aW9uLCBiYXNlX21vZHVsZT1Ob25lKToKLUBAIC0xNzg4 LDcgKzE3ODksNyBAQCBkZWYgZm9ybWF0YW5ub3RhdGlvbihhbm5vdGF0aW9uLCBiYXNlX21vZHVs ZT1Ob25lKToKLSAKLSAKLSBkZWYgc2FnZV9mb3JtYXRhcmdzcGVjKGFyZ3MsIHZhcmFyZ3M9Tm9u ZSwgdmFya3c9Tm9uZSwgZGVmYXVsdHM9Tm9uZSwKLS0gICAgICAgICAgICAgICAgICAgICAgIGt3 b25seWFyZ3M9KCksIGt3b25seWRlZmF1bHRzPXt9LCBhbm5vdGF0aW9ucz17fSwKLSsgICAgICAg ICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9KCksIGt3b25seWRlZmF1bHRzPU5vbmUsIGFubm90 YXRpb25zPXt9LAotICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0YXJnPXN0ciwKLSAgICAg ICAgICAgICAgICAgICAgICAgIGZvcm1hdHZhcmFyZ3M9bGFtYmRhIG5hbWU6ICcqJyArIG5hbWUs Ci0gICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXR2YXJrdz1sYW1iZGEgbmFtZTogJyoqJyAr IG5hbWUsCi0tLSAKLTIuMzguMQotCi0KLUZyb20gZGI0NWFlYmZkNmJkODQxM2JlYzBmZGEyMTg0 MTBkNzJkZWFjZDM5OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9H b256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0LmVkdS51eT4KLURhdGU6IE1v biwgMzEgT2N0IDIwMjIgMDc6MTM6MzggLTAzMDAKLVN1YmplY3Q6IFtQQVRDSCAwNi8xMV0gd2Fy bmluZ3M6IGlnbm9yZSBkZXByZWNhdGlvbiBmb3IgJ2ltcG9ydCBjZ2knIGluIGN5dGhvbgotCi0t LS0KLSBzcmMvc2FnZS9hbGwucHkgfCA1ICsrKysrCi0gMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0 aW9ucygrKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvYWxsLnB5IGIvc3JjL3NhZ2UvYWxsLnB5 Ci1pbmRleCA2YWVmMjZjNDJhOS4uOTJkMzZkMWZkMjYgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9h bGwucHkKLSsrKyBiL3NyYy9zYWdlL2FsbC5weQotQEAgLTEwNCw2ICsxMDQsMTEgQEAgd2Fybmlu Z3MuZmlsdGVyd2FybmluZ3MoJ2lnbm9yZScsIGNhdGVnb3J5PURlcHJlY2F0aW9uV2FybmluZywK LSAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlPSdUaGUgZGlzdHV0aWxzKC5zeXNjb25m aWcgbW9kdWxlfCBwYWNrYWdlKSBpcyBkZXByZWNhdGVkJywKLSAgICAgICAgICAgICAgICAgICAg ICAgICBtb2R1bGU9J0N5dGhvbnxkaXN0dXRpbHN8bnVtcHl8c2FnZS5lbnZ8c2FnZS5mZWF0dXJl cycpCi0gCi0rIyB0cmlnZ2VyZWQgYnkgY3l0aG9uIDAuMjkuMzIKLSt3YXJuaW5ncy5maWx0ZXJ3 YXJuaW5ncygnaWdub3JlJywgY2F0ZWdvcnk9RGVwcmVjYXRpb25XYXJuaW5nLAotKyAgICAgICAg ICAgICAgICAgICAgICAgIG1lc3NhZ2U9IidjZ2knIGlzIGRlcHJlY2F0ZWQgYW5kIHNsYXRlZCBm b3IgcmVtb3ZhbCBpbiBQeXRob24gMy4xMyIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgbW9k dWxlPSdDeXRob24nKQotKwotICMjIyMjIyMjIyMjIyMjIyMgZW5kIHNldHVwIHdhcm5pbmdzICMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSAKLSAKLS0tIAotMi4zOC4xCi0KLQotRnJv bSA2NjRmYzAwOGVkNTBjMmY2MWZiM2RmMzAyMGMwZDgxYjQxMTcwNjI4IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQotRnJvbTogPT9VVEYtOD9xP0dvbnphbG89MjBUb3JuYXI9QzM9QURhPz0gPHRv cm5hcmlhQGNtYXQuZWR1LnV5PgotRGF0ZTogTW9uLCAzMSBPY3QgMjAyMiAyMDozOToxMiAtMDMw MAotU3ViamVjdDogW1BBVENIIDA3LzExXSB3YXJuaW5nczogaWdub3JlIGRlcHJlY2F0aW9uIGZv ciAnaW1wb3J0IHNyZV9jb25zdGFudHMnCi0gaW4gcHlwYXJzaW5nCi0KLS0tLQotIHNyYy9zYWdl L2FsbC5weSB8IDUgKysrKysKLSAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspCi0KLWRp ZmYgLS1naXQgYS9zcmMvc2FnZS9hbGwucHkgYi9zcmMvc2FnZS9hbGwucHkKLWluZGV4IDkyZDM2 ZDFmZDI2Li5lYTA3MTIzMDhiNCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2FsbC5weQotKysrIGIv c3JjL3NhZ2UvYWxsLnB5Ci1AQCAtMTA5LDYgKzEwOSwxMSBAQCB3YXJuaW5ncy5maWx0ZXJ3YXJu aW5ncygnaWdub3JlJywgY2F0ZWdvcnk9RGVwcmVjYXRpb25XYXJuaW5nLAotICAgICAgICAgICAg ICAgICAgICAgICAgIG1lc3NhZ2U9IidjZ2knIGlzIGRlcHJlY2F0ZWQgYW5kIHNsYXRlZCBmb3Ig cmVtb3ZhbCBpbiBQeXRob24gMy4xMyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxl PSdDeXRob24nKQotIAotKyMgdHJpZ2dlcmVkIGJ5IHB5cGFyc2luZyAyLjQuNwotK3dhcm5pbmdz LmZpbHRlcndhcm5pbmdzKCdpZ25vcmUnLCBjYXRlZ29yeT1EZXByZWNhdGlvbldhcm5pbmcsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZT0ibW9kdWxlICdzcmVfY29uc3RhbnRzJyBp cyBkZXByZWNhdGVkIiwKLSsgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGU9J3B5cGFyc2lu ZycpCi0rCi0gIyMjIyMjIyMjIyMjIyMjIyBlbmQgc2V0dXAgd2FybmluZ3MgIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIwotIAotIAotLS0gCi0yLjM4LjEKLQotCi1Gcm9tIDA4ZTExNjFj MjNjYWVlZWQ1YWQwZTAyMzdkZjgxNzJlYjg4MDZlZTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx Ci1Gcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8dG9ybmFyaWFAY21h dC5lZHUudXk+Ci1EYXRlOiBNb24sIDMxIE9jdCAyMDIyIDIyOjQwOjE3IC0wMzAwCi1TdWJqZWN0 OiBbUEFUQ0ggMDgvMTFdIHdhcm5pbmdzOiBpZ25vcmUgZGVwcmVjYXRpb24gb2YKLSBpbXBvcnRs aWIucmVzb3VyY2VzLnBhdGgvcmVhZF9iaW5hcnkKLQotLS0tCi0gc3JjL3NhZ2UvYWxsLnB5ICAg ICAgICAgICAgICAgICAgICB8IDYgKysrKysrCi0gc3JjL3NhZ2UvcmVwbC9kaXNwbGF5L2Zvcm1h dHRlci5weSB8IDMgKysrCi0gMiBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKykKLQotZGlm ZiAtLWdpdCBhL3NyYy9zYWdlL2FsbC5weSBiL3NyYy9zYWdlL2FsbC5weQotaW5kZXggZWEwNzEy MzA4YjQuLmZlZGYyYTE3YWFiIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvYWxsLnB5Ci0rKysgYi9z cmMvc2FnZS9hbGwucHkKLUBAIC0xMTQsNiArMTE0LDEyIEBAIHdhcm5pbmdzLmZpbHRlcndhcm5p bmdzKCdpZ25vcmUnLCBjYXRlZ29yeT1EZXByZWNhdGlvbldhcm5pbmcsCi0gICAgICAgICAgICAg ICAgICAgICAgICAgbWVzc2FnZT0ibW9kdWxlICdzcmVfY29uc3RhbnRzJyBpcyBkZXByZWNhdGVk IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGU9J3B5cGFyc2luZycpCi0gCi0rIyBp bXBvcnRsaWIucmVzb3VyY2VzLnBhdGggYW5kIC4uLnJlYWRfYmluYXJ5IGFyZSBkZXByZWNhdGVk IGluIHB5dGhvbiAzLjExLAotKyMgYnV0IHRoZSByZXBsYWNlbWVudCBpbXBvcnRsaWIucmVzb3Vy Y2VzLmZpbGVzIG5lZWRzIHB5dGhvbiAzLjkKLSt3YXJuaW5ncy5maWx0ZXJ3YXJuaW5ncygnaWdu b3JlJywgY2F0ZWdvcnk9RGVwcmVjYXRpb25XYXJuaW5nLAotKyAgICAgICAgICAgICAgICAgICAg ICAgIG1lc3NhZ2U9cicocGF0aHxyZWFkX2JpbmFyeSkgaXMgZGVwcmVjYXRlZFwuIFVzZSBmaWxl c1woXCkgaW5zdGVhZFwuJywKLSsgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGU9J3NhZ2Uu cmVwbC5yaWNoX291dHB1dC5vdXRwdXRfKGdyYXBoaWNzfGdyYXBoaWNzM2R8dmlkZW8pJykKLSsK LSAjIyMjIyMjIyMjIyMjIyMjIGVuZCBzZXR1cCB3YXJuaW5ncyAjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjCi0gCi0gCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcmVwbC9kaXNwbGF5L2Zv cm1hdHRlci5weSBiL3NyYy9zYWdlL3JlcGwvZGlzcGxheS9mb3JtYXR0ZXIucHkKLWluZGV4IDQ4 OGYwYmYyNzkxLi43ZTA2NjU2ZDg4MCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3JlcGwvZGlzcGxh eS9mb3JtYXR0ZXIucHkKLSsrKyBiL3NyYy9zYWdlL3JlcGwvZGlzcGxheS9mb3JtYXR0ZXIucHkK LUBAIC0xNDMsNiArMTQzLDkgQEAgY2xhc3MgU2FnZURpc3BsYXlGb3JtYXR0ZXIoRGlzcGxheUZv cm1hdHRlcik6Ci0gCi0gICAgICAgICAgICAgc2FnZTogaW1wb3J0IG9zCi0gICAgICAgICAgICAg c2FnZTogaW1wb3J0IGltcG9ydGxpYi5yZXNvdXJjZXMKLSsgICAgICAgICAgICBzYWdlOiBpbXBv cnQgd2FybmluZ3MKLSsgICAgICAgICAgICBzYWdlOiB3YXJuaW5ncy5maWx0ZXJ3YXJuaW5ncygn aWdub3JlJywgY2F0ZWdvcnk9RGVwcmVjYXRpb25XYXJuaW5nLAotKyAgICAgICAgICAgIC4uLi46 ICAgICBtZXNzYWdlPXIncGF0aCBpcyBkZXByZWNhdGVkXC4gVXNlIGZpbGVzXChcKSBpbnN0ZWFk XC4nKQotICAgICAgICAgICAgIHNhZ2U6IGZyb20gc2FnZS5yZXBsLnJpY2hfb3V0cHV0LmJhY2tl bmRfaXB5dGhvbiBpbXBvcnQgQmFja2VuZElQeXRob24KLSAgICAgICAgICAgICBzYWdlOiBiYWNr ZW5kID0gQmFja2VuZElQeXRob24oKQotICAgICAgICAgICAgIHNhZ2U6IHNoZWxsID0gZ2V0X3Rl c3Rfc2hlbGwoKQotLS0gCi0yLjM4LjEKLQotCi1Gcm9tIDQ0NDgwZjQ4MjdlMmJjMWVkOGRhZjZm NDUwNGEyMmFlNmU4YmU0YTQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04 P3E/R29uemFsbz0yMFRvcm5hcj1DMz1BRGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+Ci1EYXRl OiBNb24sIDMxIE9jdCAyMDIyIDA3OjE0OjAxIC0wMzAwCi1TdWJqZWN0OiBbUEFUQ0ggMDkvMTFd IGRvY3Rlc3RzOiBmaXhlcyBkdWUgdG8gQXJnU3BlYyAtPiBGdWxsQXJnU3BlYyBjaGFuZ2UKLQot LS0tCi0gc3JjL3NhZ2UvaW50ZXJmYWNlcy9zaW5ndWxhci5weSAgICAgICAgICAgIHwgIDMgKy0K LSBzcmMvc2FnZS9saWJzL3Npbmd1bGFyL3N0YW5kYXJkX29wdGlvbnMucHkgfCAgMyArLQotIHNy Yy9zYWdlL21pc2MvY2FjaGVmdW5jLnB5eCAgICAgICAgICAgICAgICB8ICA2ICstCi0gc3JjL3Nh Z2UvbWlzYy9kZWNvcmF0b3JzLnB5ICAgICAgICAgICAgICAgIHwgIDkgKystCi0gc3JjL3NhZ2Uv bWlzYy9sYXp5X2ltcG9ydC5weXggICAgICAgICAgICAgIHwgIDQgKy0KLSBzcmMvc2FnZS9taXNj L3NhZ2VpbnNwZWN0LnB5ICAgICAgICAgICAgICAgfCA5NCArKysrKysrKysrLS0tLS0tLS0tLS0t Ci0gc3JjL3NhZ2UvcGFyYWxsZWwvZGVjb3JhdGUucHkgICAgICAgICAgICAgIHwgIDMgKy0KLSBz cmMvc2FnZS9wbG90L3Bsb3QzZC9wbG90M2QucHkgICAgICAgICAgICAgfCAxOCArKystLQotIHNy Yy9zYWdlL3NldHMvc2V0X2Zyb21faXRlcmF0b3IucHkgICAgICAgICB8ICA0ICstCi0gOSBmaWxl cyBjaGFuZ2VkLCA3NiBpbnNlcnRpb25zKCspLCA2OCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdp dCBhL3NyYy9zYWdlL2ludGVyZmFjZXMvc2luZ3VsYXIucHkgYi9zcmMvc2FnZS9pbnRlcmZhY2Vz L3Npbmd1bGFyLnB5Ci1pbmRleCA5Yzk1ODZkOGJjNy4uMWRlYTc3Y2RmZjAgMTAwNjQ0Ci0tLS0g YS9zcmMvc2FnZS9pbnRlcmZhY2VzL3Npbmd1bGFyLnB5Ci0rKysgYi9zcmMvc2FnZS9pbnRlcmZh Y2VzL3Npbmd1bGFyLnB5Ci1AQCAtMjczNCw3ICsyNzM0LDggQEAgZGVmIHNpbmd1bGFyX2diX3N0 YW5kYXJkX29wdGlvbnMoZnVuYyk6Ci0gICAgICAgICBzYWdlOiBQLjx4LHk+ID0gUVFbXQotICAg ICAgICAgc2FnZTogSSA9IFAqW3gseV0KLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhJ LmludGVycmVkdWNlZF9iYXNpcykKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnXSwgdmFy YXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1Ob25lKQotKyAgICAgICAgRnVsbEFy Z1NwZWMoYXJncz1bJ3NlbGYnXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz1O b25lLAotKyAgICAgICAgICAgICAgICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9 Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gICAgICAgICBzYWdlOiBzYWdlX2dldHNvdXJjZWxpbmVz KEkuaW50ZXJyZWR1Y2VkX2Jhc2lzKQotICAgICAgICAgKFsnICAgIEBoYW5kbGVfQUFfYW5kX1FR YmFyXG4nLAotICAgICAgICAgICAnICAgIEBzaW5ndWxhcl9nYl9zdGFuZGFyZF9vcHRpb25zXG4n LAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2xpYnMvc2luZ3VsYXIvc3RhbmRhcmRfb3B0aW9ucy5w eSBiL3NyYy9zYWdlL2xpYnMvc2luZ3VsYXIvc3RhbmRhcmRfb3B0aW9ucy5weQotaW5kZXggNjc5 N2NiMDUwMDEuLjVkNzRkYTNjZTNhIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvbGlicy9zaW5ndWxh ci9zdGFuZGFyZF9vcHRpb25zLnB5Ci0rKysgYi9zcmMvc2FnZS9saWJzL3Npbmd1bGFyL3N0YW5k YXJkX29wdGlvbnMucHkKLUBAIC0xMTcsNyArMTE3LDggQEAgZGVmIGxpYnNpbmd1bGFyX2diX3N0 YW5kYXJkX29wdGlvbnMoZnVuYyk6Ci0gICAgICAgICBzYWdlOiBQLjx4LHk+ID0gUVFbXQotICAg ICAgICAgc2FnZTogSSA9IFAqW3gseV0KLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhJ LmludGVycmVkdWNlZF9iYXNpcykKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnXSwgdmFy YXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1Ob25lKQotKyAgICAgICAgRnVsbEFy Z1NwZWMoYXJncz1bJ3NlbGYnXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz1O b25lLAotKyAgICAgICAgICAgICAgICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9 Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gICAgICAgICBzYWdlOiBzYWdlX2dldHNvdXJjZWxpbmVz KEkuaW50ZXJyZWR1Y2VkX2Jhc2lzKQotICAgICAgICAgKFsnICAgIEBoYW5kbGVfQUFfYW5kX1FR YmFyXG4nLAotICAgICAgICAgICAnICAgIEBzaW5ndWxhcl9nYl9zdGFuZGFyZF9vcHRpb25zXG4n LAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL21pc2MvY2FjaGVmdW5jLnB5eCBiL3NyYy9zYWdlL21p c2MvY2FjaGVmdW5jLnB5eAotaW5kZXggNzIwNDJlZjEzZDYuLmNlYTMwNzExMTVkIDEwMDY0NAot LS0tIGEvc3JjL3NhZ2UvbWlzYy9jYWNoZWZ1bmMucHl4Ci0rKysgYi9zcmMvc2FnZS9taXNjL2Nh Y2hlZnVuYy5weXgKLUBAIC05MzEsOSArOTMxLDkgQEAgY2RlZiBjbGFzcyBDYWNoZWRGdW5jdGlv bigpOgotICAgICAgICAgICAgIHNhZ2U6IEkgPSBQKlt4LHldCi0gICAgICAgICAgICAgc2FnZTog ZnJvbSBzYWdlLm1pc2Muc2FnZWluc3BlY3QgaW1wb3J0IHNhZ2VfZ2V0YXJnc3BlYwotICAgICAg ICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhJLmdyb2VibmVyX2Jhc2lzKSAgICMgaW5kaXJl Y3QgZG9jdGVzdAotLSAgICAgICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAnYWxnb3JpdGht JywgJ2RlZ19ib3VuZCcsICdtdWx0X2JvdW5kJywgJ3Byb3QnXSwKLS0gICAgICAgICAgICB2YXJh cmdzPSdhcmdzJywga2V5d29yZHM9J2t3ZHMnLCBkZWZhdWx0cz0oJycsIE5vbmUsIE5vbmUsCi0t ICAgICAgICAgICAgRmFsc2UpKQotKyAgICAgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9WydzZWxm JywgJ2FsZ29yaXRobScsICdkZWdfYm91bmQnLCAnbXVsdF9ib3VuZCcsICdwcm90J10sCi0rICAg ICAgICAgICAgICAgICAgICAgICAgdmFyYXJncz0nYXJncycsIHZhcmt3PSdrd2RzJywgZGVmYXVs dHM9KCcnLCBOb25lLCBOb25lLCBGYWxzZSksCi0rICAgICAgICAgICAgICAgICAgICAgICAga3dv bmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gCi0gICAg ICAgICAiIiIKLSAgICAgICAgIHJldHVybiBzYWdlX2dldGFyZ3NwZWMoc2VsZi5mKQotZGlmZiAt LWdpdCBhL3NyYy9zYWdlL21pc2MvZGVjb3JhdG9ycy5weSBiL3NyYy9zYWdlL21pc2MvZGVjb3Jh dG9ycy5weQotaW5kZXggMjcxZTI0MzA1MGYuLmRkOTEyM2Y1MDA0IDEwMDY0NAotLS0tIGEvc3Jj L3NhZ2UvbWlzYy9kZWNvcmF0b3JzLnB5Ci0rKysgYi9zcmMvc2FnZS9taXNjL2RlY29yYXRvcnMu cHkKLUBAIC05Myw3ICs5Myw4IEBAIGRlZiBzYWdlX3dyYXBzKHdyYXBwZWQsIGFzc2lnbmVkPVdS QVBQRVJfQVNTSUdOTUVOVFMsIHVwZGF0ZWQ9V1JBUFBFUl9VUERBVEVTKToKLSAgICAgICAgIDUK LSAgICAgICAgIHNhZ2U6IGZyb20gc2FnZS5taXNjLnNhZ2VpbnNwZWN0IGltcG9ydCBzYWdlX2dl dGFyZ3NwZWMKLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhnKQotLSAgICAgICAgQXJn U3BlYyhhcmdzPVsneCddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRlZmF1bHRzPU5v bmUpCi0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdzPVsneCddLCB2YXJhcmdzPU5vbmUsIHZhcmt3 PU5vbmUsIGRlZmF1bHRzPU5vbmUsCi0rICAgICAgICAgICAgICAgICAgICBrd29ubHlhcmdzPVtd LCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAKLSAgICAgRGVtb25zdHJh dGUgdGhhdCBpdCBjb3JyZWN0bHkgZ2V0cyB0aGUgc291cmNlIGxpbmVzIGFuZCB0aGUgc291cmNl Ci0gICAgIGZpbGUsIHdoaWNoIGlzIGVzc2VudGlhbCBmb3IgaW50ZXJhY3RpdmUgY29kZSBlZGl0 aW9uOyBub3RlIHRoYXQgd2UKLUBAIC0zOTIsNyArMzkzLDggQEAgY2xhc3Mgc3Vib3B0aW9ucygp OgotIAotICAgICAgICAgICAgIHNhZ2U6IGZyb20gc2FnZS5taXNjLnNhZ2VpbnNwZWN0IGltcG9y dCBzYWdlX2dldGFyZ3NwZWMKLSAgICAgICAgICAgICBzYWdlOiBzYWdlX2dldGFyZ3NwZWMoZikK LS0gICAgICAgICAgICBBcmdTcGVjKGFyZ3M9WydhcnJvd19zaXplJ10sIHZhcmFyZ3M9J2FyZ3Mn LCBrZXl3b3Jkcz0na3dkcycsIGRlZmF1bHRzPSgyLCkpCi0rICAgICAgICAgICAgRnVsbEFyZ1Nw ZWMoYXJncz1bJ2Fycm93X3NpemUnXSwgdmFyYXJncz0nYXJncycsIHZhcmt3PSdrd2RzJywgZGVm YXVsdHM9KDIsKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICBrd29ubHlhcmdzPVtdLCBrd29u bHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgICIiIgotICAgICAgICAg QHNhZ2Vfd3JhcHMoZnVuYykKLSAgICAgICAgIGRlZiB3cmFwcGVyKCphcmdzLCAqKmt3ZHMpOgot QEAgLTQ2MCw3ICs0NjIsOCBAQCBjbGFzcyBvcHRpb25zKCk6Ci0gICAgICAgICAgICAgc2FnZTog ZjEgPSBvKGYpCi0gICAgICAgICAgICAgc2FnZTogZnJvbSBzYWdlLm1pc2Muc2FnZWluc3BlY3Qg aW1wb3J0IHNhZ2VfZ2V0YXJnc3BlYwotICAgICAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3Bl YyhmMSkKLS0gICAgICAgICAgICBBcmdTcGVjKGFyZ3M9WydyZ2Jjb2xvciddLCB2YXJhcmdzPSdh cmdzJywga2V5d29yZHM9J2t3ZHMnLCBkZWZhdWx0cz0oKDAsIDAsIDEpLCkpCi0rICAgICAgICAg ICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3JnYmNvbG9yJ10sIHZhcmFyZ3M9J2FyZ3MnLCB2YXJrdz0n a3dkcycsIGRlZmF1bHRzPSgoMCwgMCwgMSksKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICBr d29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAg ICAgICIiIgotICAgICAgICAgc2VsZi5vcHRpb25zID0gb3B0aW9ucwotICAgICAgICAgc2VsZi5v cmlnaW5hbF9vcHRzID0gb3B0aW9ucy5wb3AoJ19fb3JpZ2luYWxfb3B0cycsIEZhbHNlKQotZGlm ZiAtLWdpdCBhL3NyYy9zYWdlL21pc2MvbGF6eV9pbXBvcnQucHl4IGIvc3JjL3NhZ2UvbWlzYy9s YXp5X2ltcG9ydC5weXgKLWluZGV4IDJkNDQxM2NkMWEzLi4wMTgwNzhiMGNmMiAxMDA2NDQKLS0t LSBhL3NyYy9zYWdlL21pc2MvbGF6eV9pbXBvcnQucHl4Ci0rKysgYi9zcmMvc2FnZS9taXNjL2xh enlfaW1wb3J0LnB5eAotQEAgLTM1MSw3ICszNTEsOSBAQCBjZGVmIGNsYXNzIExhenlJbXBvcnQo KToKLSAgICAgICAgICAgICBzYWdlOiBmcm9tIHNhZ2UubWlzYy5sYXp5X2ltcG9ydCBpbXBvcnQg TGF6eUltcG9ydAotICAgICAgICAgICAgIHNhZ2U6IHJtID0gTGF6eUltcG9ydCgnc2FnZS5hbGwn LCAncmFuZG9tX21hdHJpeCcpCi0gICAgICAgICAgICAgc2FnZTogcm0uX3NhZ2VfYXJnc3BlY18o KQotLSAgICAgICAgICAgIEFyZ1NwZWMoYXJncz1bJ3JpbmcnLCAnbnJvd3MnLCAnbmNvbHMnLCAn YWxnb3JpdGhtJywgJ2ltcGxlbWVudGF0aW9uJ10sIHZhcmFyZ3M9J2FyZ3MnLCBrZXl3b3Jkcz0n a3dkcycsIGRlZmF1bHRzPShOb25lLCAncmFuZG9taXplJywgTm9uZSkpCi0rICAgICAgICAgICAg RnVsbEFyZ1NwZWMoYXJncz1bJ3JpbmcnLCAnbnJvd3MnLCAnbmNvbHMnLCAnYWxnb3JpdGhtJywg J2ltcGxlbWVudGF0aW9uJ10sCi0rICAgICAgICAgICAgICAgICAgICAgICAgdmFyYXJncz0nYXJn cycsIHZhcmt3PSdrd2RzJywgZGVmYXVsdHM9KE5vbmUsICdyYW5kb21pemUnLCBOb25lKSwKLSsg ICAgICAgICAgICAgICAgICAgICAgICBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25l LCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgICIiIgotICAgICAgICAgcmV0dXJuIHNhZ2VpbnNw ZWN0LnNhZ2VfZ2V0YXJnc3BlYyhzZWxmLmdldF9vYmplY3QoKSkKLSAKLWRpZmYgLS1naXQgYS9z cmMvc2FnZS9taXNjL3NhZ2VpbnNwZWN0LnB5IGIvc3JjL3NhZ2UvbWlzYy9zYWdlaW5zcGVjdC5w eQotaW5kZXggY2U5YTc0ZjkzMWQuLjYxOWZmNmRhNjYxIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2Uv bWlzYy9zYWdlaW5zcGVjdC5weQotKysrIGIvc3JjL3NhZ2UvbWlzYy9zYWdlaW5zcGVjdC5weQot QEAgLTEwOSw3ICsxMDksNyBAQCBkZWZpbmVkIEN5dGhvbiBjb2RlLCBhbmQgd2l0aCByYXRoZXIg dHJpY2t5IGFyZ3VtZW50IGxpbmVzOjoKLSAgICAgc2FnZTogcHJpbnQoc2FnZV9nZXRzb3VyY2Uo Zm9vKSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAjIG9wdGlvbmFsIC0gc2FnZS5taXNjLmN5dGhvbgotICAgICBk ZWYgZm9vKHVuc2lnbmVkIGludCB4PTEsIGE9JykiJywgYj17bm90ICgyKzE9PTMpOidiYXInfSwg KmFyZ3MsICoqa3dkcyk6IHJldHVybgotICAgICBzYWdlOiBzYWdlX2dldGFyZ3NwZWMoZm9vKSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICMgb3B0aW9uYWwgLSBzYWdlLm1pc2MuY3l0aG9uCi0tICAgIEFy Z1NwZWMoYXJncz1bJ3gnLCAnYScsICdiJ10sIHZhcmFyZ3M9J2FyZ3MnLCBrZXl3b3Jkcz0na3dk cycsIGRlZmF1bHRzPSgxLCAnKSInLCB7RmFsc2U6ICdiYXInfSkpCi0rICAgIEZ1bGxBcmdTcGVj KGFyZ3M9Wyd4JywgJ2EnLCAnYiddLCB2YXJhcmdzPSdhcmdzJywgdmFya3c9J2t3ZHMnLCBkZWZh dWx0cz0oMSwgJykiJywge0ZhbHNlOiAnYmFyJ30pLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZh dWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAKLSAiIiIKLSAKLUBAIC0zNDMsNyArMzQzLDcg QEAgZGVmIF9leHRyYWN0X2VtYmVkZGVkX3NpZ25hdHVyZShkb2NzdHJpbmcsIG5hbWUpOgotICAg ICAgICAgRmlsZTogc2FnZS9taXNjL25lc3RlZF9jbGFzcy5weXggKHN0YXJ0aW5nIGF0IGxpbmUg Li4uKQotICAgICAgICAgLi4uCi0gICAgICAgICBzYWdlOiBfZXh0cmFjdF9lbWJlZGRlZF9zaWdu YXR1cmUoTWFpbkNsYXNzLk5lc3RlZENsYXNzLk5lc3RlZFN1YkNsYXNzLmR1bW15Ll9fZG9jX18s ICdkdW1teScpWzFdCi0tICAgICAgICBBcmdTcGVjKGFyZ3M9WydzZWxmJywgJ3gnLCAnciddLCB2 YXJhcmdzPSdhcmdzJywga2V5d29yZHM9J2t3ZHMnLCBkZWZhdWx0cz0oKDEsIDIsIDMuNCksKSkK LSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9WydzZWxmJywgJ3gnLCAnciddLCB2YXJhcmdzPSdh cmdzJywgdmFya3c9J2t3ZHMnLCBkZWZhdWx0cz0oKDEsIDIsIDMuNCksKSwga3dvbmx5YXJncz1b XSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gICAgICAgICBzYWdlOiBf ZXh0cmFjdF9lbWJlZGRlZF9zaWduYXR1cmUocmFuZ2UuX19jYWxsX18uX19kb2NfXywgJ19fY2Fs bF9fJykKLSAgICAgICAgICgnQ2FsbCBzZWxmIGFzIGEgZnVuY3Rpb24uJywgTm9uZSkKLSAgICAg IiIiCi1AQCAtMTEwNywyMiArMTEwNywxOCBAQCBkZWYgX3NhZ2VfZ2V0YXJnc3BlY19mcm9tX2Fz dChzb3VyY2UpOgotIAotICAgICBFWEFNUExFUzo6Ci0gCi0tICAgICAgICBzYWdlOiBpbXBvcnQg d2FybmluZ3MKLS0gICAgICAgIHNhZ2U6IHdhcm5pbmdzLmZpbHRlcndhcm5pbmdzKCdpZ25vcmUn LAotLSAgICAgICAgLi4uLjogICAgICAgICAgICAgICAgICAgICAgICAgcidpbnNwZWN0LmdldGFy Z3NwZWNcKFwpIGlzIGRlcHJlY2F0ZWQnLAotLSAgICAgICAgLi4uLjogICAgICAgICAgICAgICAg ICAgICAgICAgRGVwcmVjYXRpb25XYXJuaW5nKQotICAgICAgICAgc2FnZTogaW1wb3J0IGluc3Bl Y3QsIHNhZ2UubWlzYy5zYWdlaW5zcGVjdCBhcyBzbXMKLSAgICAgICAgIHNhZ2U6IGZyb21fYXN0 ID0gc21zLl9zYWdlX2dldGFyZ3NwZWNfZnJvbV9hc3QKLSAgICAgICAgIHNhZ2U6IHMgPSAiZGVm IGYoYSwgYj0yLCBjPXsnYSc6IFs0LCA1LjUsIEZhbHNlXX0sIGQ9KE5vbmUsIFRydWUpKTpcbiAg ICByZXR1cm4iCi0gICAgICAgICBzYWdlOiBmcm9tX2FzdChzKQotLSAgICAgICAgQXJnU3BlYyhh cmdzPVsnYScsICdiJywgJ2MnLCAnZCddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRl ZmF1bHRzPSgyLCB7J2EnOiBbNCwgNS41LCBGYWxzZV19LCAoTm9uZSwgVHJ1ZSkpKQotKyAgICAg ICAgRnVsbEFyZ1NwZWMoYXJncz1bJ2EnLCAnYicsICdjJywgJ2QnXSwgdmFyYXJncz1Ob25lLCB2 YXJrdz1Ob25lLCBkZWZhdWx0cz0oMiwgeydhJzogWzQsIDUuNSwgRmFsc2VdfSwgKE5vbmUsIFRy dWUpKSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30p Ci0gICAgICAgICBzYWdlOiBjb250ZXh0ID0ge30KLSAgICAgICAgIHNhZ2U6IGV4ZWMoY29tcGls ZShzLCAnPHN0cmluZz4nLCAnc2luZ2xlJyksIGNvbnRleHQpCi0tICAgICAgICBzYWdlOiBpbnNw ZWN0LmdldGFyZ3NwZWMoY29udGV4dFsnZiddKQotLSAgICAgICAgQXJnU3BlYyhhcmdzPVsnYScs ICdiJywgJ2MnLCAnZCddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRlZmF1bHRzPSgy LCB7J2EnOiBbNCwgNS41LCBGYWxzZV19LCAoTm9uZSwgVHJ1ZSkpKQotLSAgICAgICAgc2FnZTog ZnJvbV9hc3QocykgPT0gaW5zcGVjdC5nZXRhcmdzcGVjKGNvbnRleHRbJ2YnXSkKLSsgICAgICAg IHNhZ2U6IGluc3BlY3QuZ2V0ZnVsbGFyZ3NwZWMoY29udGV4dFsnZiddKQotKyAgICAgICAgRnVs bEFyZ1NwZWMoYXJncz1bJ2EnLCAnYicsICdjJywgJ2QnXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1O b25lLCBkZWZhdWx0cz0oMiwgeydhJzogWzQsIDUuNSwgRmFsc2VdfSwgKE5vbmUsIFRydWUpKSwg a3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0rICAg ICAgICBzYWdlOiBmcm9tX2FzdChzKSA9PSBpbnNwZWN0LmdldGZ1bGxhcmdzcGVjKGNvbnRleHRb J2YnXSkKLSAgICAgICAgIFRydWUKLS0gICAgICAgIHNhZ2U6IHNldChmcm9tX2FzdChzbXMuc2Fn ZV9nZXRzb3VyY2UoeCkpID09IGluc3BlY3QuZ2V0YXJnc3BlYyh4KSBmb3IgeCBpbiBbZmFjdG9y LCBpZGVudGl0eV9tYXRyaXgsIEdyYXBoLl9faW5pdF9fXSkKLSsgICAgICAgIHNhZ2U6IHNldChm cm9tX2FzdChzbXMuc2FnZV9nZXRzb3VyY2UoeCkpID09IGluc3BlY3QuZ2V0ZnVsbGFyZ3NwZWMo eCkgZm9yIHggaW4gW2ZhY3RvciwgaWRlbnRpdHlfbWF0cml4LCBHcmFwaC5fX2luaXRfX10pCi0g ICAgICAgICB7VHJ1ZX0KLSAgICAgIiIiCi0gICAgIGFzdF9hcmdzID0gYXN0LnBhcnNlKHNvdXJj ZS5sc3RyaXAoKSkuYm9keVswXS5hcmdzCi1AQCAtMTE1OSwyMyArMTE1NSwyMyBAQCBkZWYgX3Nh Z2VfZ2V0YXJnc3BlY19jeXRob24oc291cmNlKToKLSAKLSAgICAgICAgIHNhZ2U6IGZyb20gc2Fn ZS5taXNjLnNhZ2VpbnNwZWN0IGltcG9ydCBfc2FnZV9nZXRhcmdzcGVjX2N5dGhvbiBhcyBzZ2MK LSAgICAgICAgIHNhZ2U6IHNnYygiY3BkZWYgZG91YmxlIGFiYyhzZWxmLCBFbGVtZW50IHg9Tm9u ZSwgUGFyZW50IGJhc2U9MCk6IikKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAneCcs ICdiYXNlJ10sIHZhcmFyZ3M9Tm9uZSwga2V5d29yZHM9Tm9uZSwgZGVmYXVsdHM9KE5vbmUsIDAp KQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAneCcsICdiYXNlJ10sIHZhcmFy Z3M9Tm9uZSwgdmFya3c9Tm9uZSwgZGVmYXVsdHM9KE5vbmUsIDApLCBrd29ubHlhcmdzPVtdLCBr d29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IHNnYygi ZGVmIF9faW5pdF9fKHNlbGYsIHg9Tm9uZSwgdW5zaWduZWQgaW50IGJhc2U9MCk6IikKLS0gICAg ICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAneCcsICdiYXNlJ10sIHZhcmFyZ3M9Tm9uZSwga2V5 d29yZHM9Tm9uZSwgZGVmYXVsdHM9KE5vbmUsIDApKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJn cz1bJ3NlbGYnLCAneCcsICdiYXNlJ10sIHZhcmFyZ3M9Tm9uZSwgdmFya3c9Tm9uZSwgZGVmYXVs dHM9KE5vbmUsIDApLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0 aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IHNnYygnZGVmIG8ocCwgcj17fSwgKnEsICoqcykgZXhj ZXB0PyAtMTonKQotLSAgICAgICAgQXJnU3BlYyhhcmdzPVsncCcsICdyJ10sIHZhcmFyZ3M9J3En LCBrZXl3b3Jkcz0ncycsIGRlZmF1bHRzPSh7fSwpKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJn cz1bJ3AnLCAnciddLCB2YXJhcmdzPSdxJywgdmFya3c9J3MnLCBkZWZhdWx0cz0oe30sKSwga3dv bmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gICAgICAg ICBzYWdlOiBzZ2MoJ2NwZGVmIGhvdyhyPShOb25lLCAidTpkb2luZz8iKSk6JykKLS0gICAgICAg IEFyZ1NwZWMoYXJncz1bJ3InXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0 cz0oKE5vbmUsICd1OmRvaW5nPycpLCkpCi0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdzPVsncidd LCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRzPSgoTm9uZSwgJ3U6ZG9pbmc/Jyks KSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0g ICAgICAgICBzYWdlOiBzZ2MoJ2RlZiBfKHg9Iik6Iik6JykKLS0gICAgICAgIEFyZ1NwZWMoYXJn cz1bJ3gnXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz0oJyk6JywpKQot KyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3gnXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25l LCBkZWZhdWx0cz0oJyk6JywpLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBh bm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IHNnYygnZGVmIGYoeiA9IHsoMSwgMiwgMyk6 IFRydWV9KTpcbiAgICByZXR1cm4geicpCi0tICAgICAgICBBcmdTcGVjKGFyZ3M9Wyd6J10sIHZh cmFyZ3M9Tm9uZSwga2V5d29yZHM9Tm9uZSwgZGVmYXVsdHM9KHsoMSwgMiwgMyk6IFRydWV9LCkp Ci0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdzPVsneiddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5v bmUsIGRlZmF1bHRzPSh7KDEsIDIsIDMpOiBUcnVlfSwpLCBrd29ubHlhcmdzPVtdLCBrd29ubHlk ZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IHNnYygnZGVmIGYo ZG91YmxlIHgsIHogPSB7KDEsIDIsIDMpOiBUcnVlfSk6XG4gICAgcmV0dXJuIHonKQotLSAgICAg ICAgQXJnU3BlYyhhcmdzPVsneCcsICd6J10sIHZhcmFyZ3M9Tm9uZSwga2V5d29yZHM9Tm9uZSwg ZGVmYXVsdHM9KHsoMSwgMiwgMyk6IFRydWV9LCkpCi0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdz PVsneCcsICd6J10sIHZhcmFyZ3M9Tm9uZSwgdmFya3c9Tm9uZSwgZGVmYXVsdHM9KHsoMSwgMiwg Myk6IFRydWV9LCksIGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPU5vbmUsIGFubm90YXRp b25zPXt9KQotICAgICAgICAgc2FnZTogc2djKCdkZWYgZigqYXJncyk6IHBhc3MnKQotLSAgICAg ICAgQXJnU3BlYyhhcmdzPVtdLCB2YXJhcmdzPSdhcmdzJywga2V5d29yZHM9Tm9uZSwgZGVmYXVs dHM9Tm9uZSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9W10sIHZhcmFyZ3M9J2FyZ3MnLCB2 YXJrdz1Ob25lLCBkZWZhdWx0cz1Ob25lLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1O b25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IHNnYygnZGVmIGYoKiphcmdzKTog cGFzcycpCi0tICAgICAgICBBcmdTcGVjKGFyZ3M9W10sIHZhcmFyZ3M9Tm9uZSwga2V5d29yZHM9 J2FyZ3MnLCBkZWZhdWx0cz1Ob25lKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bXSwgdmFy YXJncz1Ob25lLCB2YXJrdz0nYXJncycsIGRlZmF1bHRzPU5vbmUsIGt3b25seWFyZ3M9W10sIGt3 b25seWRlZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotIAotICAgICBTb21lIG1hbGZvcm1l ZCBpbnB1dCBpcyBkZXRlY3RlZDo6Ci0gCi1AQCAtMTIwNywxNyArMTIwMywxNyBAQCBkZWYgX3Nh Z2VfZ2V0YXJnc3BlY19jeXRob24oc291cmNlKToKLSAKLSAgICAgICAgIHNhZ2U6IGRlZiBkdW1t eV9weXRob24oc2VsZiwgKmFyZ3MsIHg9MSk6IHBhc3MKLSAgICAgICAgIHNhZ2U6IHNnYygiZGVm IGR1bW15X3B5dGhvbihzZWxmLCAqYXJncywgeD0xKTogcGFzcyIpCi0tICAgICAgICBBcmdTcGVj KGFyZ3M9WydzZWxmJywgJ3gnXSwgdmFyYXJncz0nYXJncycsIGtleXdvcmRzPU5vbmUsIGRlZmF1 bHRzPSgxLCkpCi0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdzPVsnc2VsZicsICd4J10sIHZhcmFy Z3M9J2FyZ3MnLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz0oMSwpLCBrd29ubHlhcmdzPVtdLCBrd29u bHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IGN5dGhvbigi ZGVmIGR1bW15X2N5dGhvbihzZWxmLCAqYXJncywgeD0xKTogcGFzcyIpCi0gICAgICAgICBzYWdl OiBzZ2MoImRlZiBkdW1teV9jeXRob24oc2VsZiwgKmFyZ3MsIHg9MSk6IHBhc3MiKQotLSAgICAg ICAgQXJnU3BlYyhhcmdzPVsnc2VsZicsICd4J10sIHZhcmFyZ3M9J2FyZ3MnLCBrZXl3b3Jkcz1O b25lLCBkZWZhdWx0cz0oMSwpKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAn eCddLCB2YXJhcmdzPSdhcmdzJywgdmFya3c9Tm9uZSwgZGVmYXVsdHM9KDEsKSwga3dvbmx5YXJn cz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gCi0gICAgIEluIHNv bWUgZXhhbXBsZXMgYWJvdmUsIGEgc3ludGF4IGVycm9yIHdhcyByYWlzZWQgd2hlbiBhIHR5cGUK LSAgICAgZGVmaW5pdGlvbiBjb250YWlucyBhIHBvaW50ZXIuIEFuIGV4Y2VwdGlvbiBpcyBtYWRl IGZvciBgYGNoYXIqYGAsCi0gICAgIHNpbmNlIEMgc3RyaW5ncyBhcmUgYWNjZXB0YWJsZSBpbnB1 dCBpbiBwdWJsaWMgQ3l0aG9uIGZ1bmN0aW9uczo6Ci0gCi0gICAgICAgICBzYWdlOiBzZ2MoJ2Rl ZiBmKGNoYXIgKnggPSAiYSBzdHJpbmciLCB6ID0geygxLDIsMyk6IFRydWV9KTogcGFzcycpCi0t ICAgICAgICBBcmdTcGVjKGFyZ3M9Wyd4JywgJ3onXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1O b25lLCBkZWZhdWx0cz0oJ2Egc3RyaW5nJywgeygxLCAyLCAzKTogVHJ1ZX0pKQotKyAgICAgICAg RnVsbEFyZ1NwZWMoYXJncz1bJ3gnLCAneiddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRl ZmF1bHRzPSgnYSBzdHJpbmcnLCB7KDEsIDIsIDMpOiBUcnVlfSksIGt3b25seWFyZ3M9W10sIGt3 b25seWRlZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotIAotIAotICAgICBBVVRIT1JTOgot QEAgLTE1MDMsNDAgKzE0OTksNDAgQEAgZGVmIHNhZ2VfZ2V0YXJnc3BlYyhvYmopOgotICAgICAg ICAgc2FnZTogZGVmIGYoeCwgeSwgej0xLCB0PTIsICphcmdzLCAqKmtleXdvcmRzKToKLSAgICAg ICAgIC4uLi46ICAgICBwYXNzCi0gICAgICAgICBzYWdlOiBzYWdlX2dldGFyZ3NwZWMoZikKLS0g ICAgICAgIEFyZ1NwZWMoYXJncz1bJ3gnLCAneScsICd6JywgJ3QnXSwgdmFyYXJncz0nYXJncycs IGtleXdvcmRzPSdrZXl3b3JkcycsIGRlZmF1bHRzPSgxLCAyKSkKLSsgICAgICAgIEZ1bGxBcmdT cGVjKGFyZ3M9Wyd4JywgJ3knLCAneicsICd0J10sIHZhcmFyZ3M9J2FyZ3MnLCB2YXJrdz0na2V5 d29yZHMnLCBkZWZhdWx0cz0oMSwgMiksIGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPU5v bmUsIGFubm90YXRpb25zPXt9KQotIAotICAgICBXZSBub3cgcnVuIHNhZ2VfZ2V0YXJnc3BlYyBv biBzb21lIGZ1bmN0aW9ucyBmcm9tIHRoZSBTYWdlIGxpYnJhcnk6OgotIAotICAgICAgICAgc2Fn ZTogc2FnZV9nZXRhcmdzcGVjKGlkZW50aXR5X21hdHJpeCkKLS0gICAgICAgIEFyZ1NwZWMoYXJn cz1bJ3JpbmcnLCAnbicsICdzcGFyc2UnXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBk ZWZhdWx0cz0oMCwgRmFsc2UpKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3JpbmcnLCAn bicsICdzcGFyc2UnXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz0oMCwgRmFs c2UpLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkK LSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhmYWN0b3IpCi0tICAgICAgICBBcmdTcGVj KGFyZ3M9WyduJywgJ3Byb29mJywgJ2ludF8nLCAnYWxnb3JpdGhtJywgJ3ZlcmJvc2UnXSwgdmFy YXJncz1Ob25lLCBrZXl3b3Jkcz0na3dkcycsIGRlZmF1bHRzPShOb25lLCBGYWxzZSwgJ3Bhcmkn LCAwKSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9WyduJywgJ3Byb29mJywgJ2ludF8nLCAn YWxnb3JpdGhtJywgJ3ZlcmJvc2UnXSwgdmFyYXJncz1Ob25lLCB2YXJrdz0na3dkcycsIGRlZmF1 bHRzPShOb25lLCBGYWxzZSwgJ3BhcmknLCAwKSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVs dHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gCi0gICAgIEluIHRoZSBjYXNlIG9mIGEgY2xhc3Mg b3IgYSBjbGFzcyBpbnN0YW5jZSwgdGhlIGBgQXJnU3BlY2BgIG9mIHRoZQotICAgICBgYF9fbmV3 X19gYCwgYGBfX2luaXRfX2BgIG9yIGBgX19jYWxsX19gYCBtZXRob2QgaXMgcmV0dXJuZWQ6Ogot IAotICAgICAgICAgc2FnZTogUC48eCx5PiA9IFFRW10KLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0 YXJnc3BlYyhQKQotLSAgICAgICAgQXJnU3BlYyhhcmdzPVsnYmFzZV9yaW5nJywgJ24nLCAnbmFt ZXMnLCAnb3JkZXInXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz0oJ2Rl Z3JldmxleCcsKSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9WydiYXNlX3JpbmcnLCAnbics ICduYW1lcycsICdvcmRlciddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRzPSgn ZGVncmV2bGV4JywpLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0 aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhQLl9fY2xhc3NfXykKLS0g ICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAneCddLCB2YXJhcmdzPSdhcmdzJywga2V5d29y ZHM9J2t3ZHMnLCBkZWZhdWx0cz0oMCwpKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3Nl bGYnLCAneCddLCB2YXJhcmdzPSdhcmdzJywgdmFya3c9J2t3ZHMnLCBkZWZhdWx0cz0oMCwpLCBr d29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAKLSAg ICAgVGhlIGZvbGxvd2luZyB0ZXN0cyBhZ2FpbnN0IHZhcmlvdXMgYnVncyB0aGF0IHdlcmUgZml4 ZWQgaW4KLSAgICAgOnRyYWM6YDk5NzZgOjoKLSAKLSAgICAgICAgIHNhZ2U6IGZyb20gc2FnZS5y aW5ncy5wb2x5bm9taWFsLnJlYWxfcm9vdHMgaW1wb3J0IGJlcm5zdGVpbl9wb2x5bm9taWFsX2Zh Y3RvcnlfcmF0bGlzdAotICAgICAgICAgc2FnZTogc2FnZV9nZXRhcmdzcGVjKGJlcm5zdGVpbl9w b2x5bm9taWFsX2ZhY3RvcnlfcmF0bGlzdC5jb2VmZnNfYml0c2l6ZSkKLS0gICAgICAgIEFyZ1Nw ZWMoYXJncz1bJ3NlbGYnXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1O b25lKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3NlbGYnXSwgdmFyYXJncz1Ob25lLCB2 YXJrdz1Ob25lLCBkZWZhdWx0cz1Ob25lLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1O b25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IGZyb20gc2FnZS5yaW5ncy5wb2x5 bm9taWFsLnBib3JpLnBib3JpIGltcG9ydCBCb29sZWFuTW9ub21pYWxNb25vaWQKLSAgICAgICAg IHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhCb29sZWFuTW9ub21pYWxNb25vaWQuZ2VuKQotLSAgICAg ICAgQXJnU3BlYyhhcmdzPVsnc2VsZicsICdpJ10sIHZhcmFyZ3M9Tm9uZSwga2V5d29yZHM9Tm9u ZSwgZGVmYXVsdHM9KDAsKSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9WydzZWxmJywgJ2kn XSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz0oMCwpLCBrd29ubHlhcmdzPVtd LCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IEkg PSBQKlt4LHldCi0gICAgICAgICBzYWdlOiBzYWdlX2dldGFyZ3NwZWMoSS5ncm9lYm5lcl9iYXNp cykKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAnYWxnb3JpdGhtJywgJ2RlZ19ib3Vu ZCcsICdtdWx0X2JvdW5kJywgJ3Byb3QnXSwKLS0gICAgICAgIHZhcmFyZ3M9J2FyZ3MnLCBrZXl3 b3Jkcz0na3dkcycsIGRlZmF1bHRzPSgnJywgTm9uZSwgTm9uZSwgRmFsc2UpKQotKyAgICAgICAg RnVsbEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAnYWxnb3JpdGhtJywgJ2RlZ19ib3VuZCcsICdtdWx0 X2JvdW5kJywgJ3Byb3QnXSwKLSsgICAgICAgIHZhcmFyZ3M9J2FyZ3MnLCB2YXJrdz0na3dkcycs IGRlZmF1bHRzPSgnJywgTm9uZSwgTm9uZSwgRmFsc2UpLCBrd29ubHlhcmdzPVtdLCBrd29ubHlk ZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IGN5dGhvbigiY3Bk ZWYgaW50IGZvbyh4LHkpIGV4Y2VwdCAtMTogcmV0dXJuIDEiKQotICAgICAgICAgc2FnZTogc2Fn ZV9nZXRhcmdzcGVjKGZvbykKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ3gnLCAneSddLCB2YXJh cmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRlZmF1bHRzPU5vbmUpCi0rICAgICAgICBGdWxsQXJn U3BlYyhhcmdzPVsneCcsICd5J10sIHZhcmFyZ3M9Tm9uZSwgdmFya3c9Tm9uZSwgZGVmYXVsdHM9 Tm9uZSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30p Ci0gCi0gICAgIElmIGEgYGBmdW5jdG9vbHMucGFydGlhbGBgIGluc3RhbmNlIGlzIGludm9sdmVk LCB3ZSBzZWUgbm8gb3RoZXIgbWVhbmluZ2Z1bCBzb2x1dGlvbgotICAgICB0aGFuIHRvIHJldHVy biB0aGUgYXJnc3BlYyBvZiB0aGUgdW5kZXJseWluZyBmdW5jdGlvbjo6Ci1AQCAtMTU0Niw3ICsx NTQyLDcgQEAgZGVmIHNhZ2VfZ2V0YXJnc3BlYyhvYmopOgotICAgICAgICAgc2FnZTogaW1wb3J0 IGZ1bmN0b29scwotICAgICAgICAgc2FnZTogZjEgPSBmdW5jdG9vbHMucGFydGlhbChmLCAxLGM9 MikKLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhmMSkKLS0gICAgICAgIEFyZ1NwZWMo YXJncz1bJ2EnLCAnYicsICdjJywgJ2QnXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBk ZWZhdWx0cz0oMSwpKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ2EnLCAnYicsICdjJywg J2QnXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz0oMSwpLCBrd29ubHlhcmdz PVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAKLSAgICAgVEVTVFM6 Ci0gCi1AQCAtMTU3MiwxNCArMTU2OCwxNCBAQCBkZWYgc2FnZV9nZXRhcmdzcGVjKG9iaik6Ci0g ICAgICAgICBzYWdlOiBwcmludChzYWdlLm1pc2Muc2FnZWluc3BlY3Quc2FnZV9nZXRzb3VyY2Uo TykpCi0gICAgICAgICBkZWYgZm9vKHgsIGE9JykiJywgYj17KDIrMSk6J2JhcicsIG5vdCAxOjMs IDM8PDQ6NX0pOiByZXR1cm4KLSAgICAgICAgIHNhZ2U6IHNwZWMgPSBzYWdlLm1pc2Muc2FnZWlu c3BlY3Quc2FnZV9nZXRhcmdzcGVjKE8pCi0tICAgICAgICBzYWdlOiBzcGVjLmFyZ3MsIHNwZWMu dmFyYXJncywgc3BlYy5rZXl3b3JkcwotKyAgICAgICAgc2FnZTogc3BlYy5hcmdzLCBzcGVjLnZh cmFyZ3MsIHNwZWMudmFya3cKLSAgICAgICAgIChbJ3gnLCAnYScsICdiJ10sIE5vbmUsIE5vbmUp Ci0gICAgICAgICBzYWdlOiBzcGVjLmRlZmF1bHRzWzBdCi0gICAgICAgICAnKSInCi0gICAgICAg ICBzYWdlOiBzb3J0ZWQoc3BlYy5kZWZhdWx0c1sxXS5pdGVtcygpLCBrZXk9bGFtYmRhIHg6IHN0 cih4KSkKLSAgICAgICAgIFsoMywgJ2JhcicpLCAoNDgsIDUpLCAoRmFsc2UsIDMpXQotICAgICAg ICAgc2FnZTogc2FnZS5taXNjLnNhZ2VpbnNwZWN0LnNhZ2VfZ2V0YXJnc3BlYyhPLl9fY2FsbF9f KQotLSAgICAgICAgQXJnU3BlYyhhcmdzPVsnc2VsZicsICdtJywgJ24nXSwgdmFyYXJncz1Ob25l LCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1Ob25lKQotKyAgICAgICAgRnVsbEFyZ1NwZWMoYXJn cz1bJ3NlbGYnLCAnbScsICduJ10sIHZhcmFyZ3M9Tm9uZSwgdmFya3c9Tm9uZSwgZGVmYXVsdHM9 Tm9uZSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30p Ci0gCi0gICAgIDo6Ci0gCi1AQCAtMTU4OCwxMyArMTU4NCwxMyBAQCBkZWYgc2FnZV9nZXRhcmdz cGVjKG9iaik6Ci0gICAgICAgICBkZWYgZm9vKHgsIGE9J1wnKSInLCBiPXtub3QgKDIrMT09Myk6 J2Jhcid9KTogcmV0dXJuCi0gICAgICAgICA8QkxBTktMSU5FPgotICAgICAgICAgc2FnZTogc2Fn ZS5taXNjLnNhZ2VpbnNwZWN0LnNhZ2VfZ2V0YXJnc3BlYyhmb28pCi0tICAgICAgICBBcmdTcGVj KGFyZ3M9Wyd4JywgJ2EnLCAnYiddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRlZmF1 bHRzPSgnXCcpIicsIHtGYWxzZTogJ2Jhcid9KSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9 Wyd4JywgJ2EnLCAnYiddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRzPSgnXCcp IicsIHtGYWxzZTogJ2Jhcid9KSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwg YW5ub3RhdGlvbnM9e30pCi0gCi0gICAgIFRoZSBmb2xsb3dpbmcgcHJvZHVjZWQgYSBzeW50YXgg ZXJyb3IgYmVmb3JlIHRoZSBwYXRjaCBhdCA6dHJhYzpgMTE5MTNgLAotICAgICBzZWUgYWxzbyA6 dHJhYzpgMjY5MDZgOjoKLSAKLSAgICAgICAgIHNhZ2U6IHNhZ2UubWlzYy5zYWdlaW5zcGVjdC5z YWdlX2dldGFyZ3NwZWMoci5sbSkgICAgICAgICAgICAgICAgICAgICAgICAgIyBvcHRpb25hbCAt IHJweTIKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnXSwgdmFyYXJncz0nYXJncycsIGtl eXdvcmRzPSdrd2RzJywgZGVmYXVsdHM9Tm9uZSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9 WydzZWxmJ10sIHZhcmFyZ3M9J2FyZ3MnLCB2YXJrdz0na3dkcycsIGRlZmF1bHRzPU5vbmUsIGt3 b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotIAotICAg ICBUaGUgZm9sbG93aW5nIHdhcyBmaXhlZCBpbiA6dHJhYzpgMTYzMDlgOjoKLSAKLUBAIC0xNjA4 LDIzICsxNjA0LDIzIEBAIGRlZiBzYWdlX2dldGFyZ3NwZWMob2JqKToKLSAgICAgICAgIC4uLi46 ICAgICBjcGRlZiBtZWV0KGNhdGVnb3JpZXMsIGJpbnQgYXNfbGlzdCA9IEZhbHNlLCB0dXBsZSBp Z25vcmVfYXhpb21zPSgpLCB0dXBsZSBheGlvbXM9KCkpOiBwYXNzCi0gICAgICAgICAuLi4uOiAn JycpCi0gICAgICAgICBzYWdlOiBzYWdlX2dldGFyZ3NwZWMoRm9vLmpvaW4pCi0tICAgICAgICBB cmdTcGVjKGFyZ3M9WydjYXRlZ29yaWVzJywgJ2FzX2xpc3QnLCAnaWdub3JlX2F4aW9tcycsICdh eGlvbXMnXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz0oRmFsc2UsICgp LCAoKSkpCi0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdzPVsnY2F0ZWdvcmllcycsICdhc19saXN0 JywgJ2lnbm9yZV9heGlvbXMnLCAnYXhpb21zJ10sIHZhcmFyZ3M9Tm9uZSwgdmFya3c9Tm9uZSwg ZGVmYXVsdHM9KEZhbHNlLCAoKSwgKCkpLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1O b25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhCYXIu am9pbikKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ2NhdGVnb3JpZXMnLCAnYXNfbGlzdCcsICdp Z25vcmVfYXhpb21zJywgJ2F4aW9tcyddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRl ZmF1bHRzPShGYWxzZSwgKCksICgpKSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9WydjYXRl Z29yaWVzJywgJ2FzX2xpc3QnLCAnaWdub3JlX2F4aW9tcycsICdheGlvbXMnXSwgdmFyYXJncz1O b25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz0oRmFsc2UsICgpLCAoKSksIGt3b25seWFyZ3M9W10s IGt3b25seWRlZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotICAgICAgICAgc2FnZTogc2Fn ZV9nZXRhcmdzcGVjKEJhci5tZWV0KQotLSAgICAgICAgQXJnU3BlYyhhcmdzPVsnY2F0ZWdvcmll cycsICdhc19saXN0JywgJ2lnbm9yZV9heGlvbXMnLCAnYXhpb21zJ10sIHZhcmFyZ3M9Tm9uZSwg a2V5d29yZHM9Tm9uZSwgZGVmYXVsdHM9KEZhbHNlLCAoKSwgKCkpKQotKyAgICAgICAgRnVsbEFy Z1NwZWMoYXJncz1bJ2NhdGVnb3JpZXMnLCAnYXNfbGlzdCcsICdpZ25vcmVfYXhpb21zJywgJ2F4 aW9tcyddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRzPShGYWxzZSwgKCksICgp KSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0g Ci0gICAgIFRlc3QgdGhhdCA6dHJhYzpgMTcwMDlgIGlzIGZpeGVkOjoKLSAKLSAgICAgICAgIHNh Z2U6IHNhZ2VfZ2V0YXJnc3BlYyhnYXApCi0tICAgICAgICBBcmdTcGVjKGFyZ3M9WydzZWxmJywg J3gnLCAnbmFtZSddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRlZmF1bHRzPShOb25l LCkpCi0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdzPVsnc2VsZicsICd4JywgJ25hbWUnXSwgdmFy YXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz0oTm9uZSwpLCBrd29ubHlhcmdzPVtdLCBr d29ubHlkZWZhdWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAKLSAgICAgQnkgOnRyYWM6YDE3 ODE0YCwgdGhlIGZvbGxvd2luZyBnaXZlcyB0aGUgY29ycmVjdCBhbnN3ZXIgKHByZXZpb3VzbHks IHRoZQotICAgICBkZWZhdWx0cyB3b3VsZCBoYXZlIGJlZW4gZm91bmQgYGBOb25lYGApOjoKLSAK LSAgICAgICAgIHNhZ2U6IGZyb20gc2FnZS5taXNjLm5lc3RlZF9jbGFzcyBpbXBvcnQgTWFpbkNs YXNzCi0gICAgICAgICBzYWdlOiBzYWdlX2dldGFyZ3NwZWMoTWFpbkNsYXNzLk5lc3RlZENsYXNz Lk5lc3RlZFN1YkNsYXNzLmR1bW15KQotLSAgICAgICAgQXJnU3BlYyhhcmdzPVsnc2VsZicsICd4 JywgJ3InXSwgdmFyYXJncz0nYXJncycsIGtleXdvcmRzPSdrd2RzJywgZGVmYXVsdHM9KCgxLCAy LCAzLjQpLCkpCi0rICAgICAgICBGdWxsQXJnU3BlYyhhcmdzPVsnc2VsZicsICd4JywgJ3InXSwg dmFyYXJncz0nYXJncycsIHZhcmt3PSdrd2RzJywgZGVmYXVsdHM9KCgxLCAyLCAzLjQpLCksIGt3 b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotIAotICAg ICBJbiA6dHJhYzpgMTgyNDlgIHdhcyBkZWNpZGVkIHRvIHJldHVybiBhIGdlbmVyaWMgc2lnbmF0 dXJlIGZvciBQeXRob24KLSAgICAgYnVpbHRpbiBmdW5jdGlvbnMsIHJhdGhlciB0aGFuIHRvIHJh aXNlIGFuIGVycm9yICh3aGljaCBpcyB3aGF0IFB5dGhvbidzCi1AQCAtMTYzMiw3ICsxNjI4LDcg QEAgZGVmIHNhZ2VfZ2V0YXJnc3BlYyhvYmopOgotIAotICAgICAgICAgc2FnZTogaW1wb3J0IGlu c3BlY3QKLSAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhyYW5nZSkKLS0gICAgICAgIEFy Z1NwZWMoYXJncz1bXSwgdmFyYXJncz0nYXJncycsIGtleXdvcmRzPSdrd2RzJywgZGVmYXVsdHM9 Tm9uZSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9W10sIHZhcmFyZ3M9J2FyZ3MnLCB2YXJr dz0na3dkcycsIGRlZmF1bHRzPU5vbmUsIGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPU5v bmUsIGFubm90YXRpb25zPXt9KQotIAotICAgICBUZXN0IHRoYXQgOnRyYWM6YDI4NTI0YCBpcyBm aXhlZDo6Ci0gCi1AQCAtMTgxOSwxNCArMTgxNSwxMCBAQCBkZWYgc2FnZV9mb3JtYXRhcmdzcGVj KGFyZ3MsIHZhcmFyZ3M9Tm9uZSwgdmFya3c9Tm9uZSwgZGVmYXVsdHM9Tm9uZSwKLSAgICAgRVhB TVBMRVM6OgotIAotICAgICAgICAgc2FnZTogZnJvbSBzYWdlLm1pc2Muc2FnZWluc3BlY3QgaW1w b3J0IHNhZ2VfZm9ybWF0YXJnc3BlYwotLSAgICAgICAgc2FnZTogZnJvbSBpbnNwZWN0IGltcG9y dCBmb3JtYXRhcmdzcGVjICMgZGVwcmVjYXRlZCBpbiBQeXRob24gMwotICAgICAgICAgc2FnZTog YXJncyA9IFsnYScsICdiJywgJ2MnXQotICAgICAgICAgc2FnZTogZGVmYXVsdHMgPSBbM10KLSAg ICAgICAgIHNhZ2U6IHNhZ2VfZm9ybWF0YXJnc3BlYyhhcmdzLCBkZWZhdWx0cz1kZWZhdWx0cykK LSAgICAgICAgICcoYSwgYiwgYz0zKScKLS0gICAgICAgIHNhZ2U6IGltcG9ydCB3YXJuaW5nczsg d2FybmluZ3Muc2ltcGxlZmlsdGVyKCdpZ25vcmUnKSAgIyBpZ25vcmUgRGVwcmVjYXRpb25XYXJu aW5nCi0tICAgICAgICBzYWdlOiBmb3JtYXRhcmdzcGVjKGFyZ3MsIGRlZmF1bHRzPWRlZmF1bHRz KSA9PSBzYWdlX2Zvcm1hdGFyZ3NwZWMoYXJncywgZGVmYXVsdHM9ZGVmYXVsdHMpCi0tICAgICAg ICBUcnVlCi0gICAgICIiIgotICAgICBkZWYgZm9ybWF0YXJnYW5kYW5ub3RhdGlvbihhcmcpOgot ICAgICAgICAgcmVzdWx0ID0gZm9ybWF0YXJnKGFyZykKLUBAIC0yNjQ5LDExICsyNjQxLDExIEBA IGRlZiBfX2ludGVybmFsX3Rlc3RzKCk6Ci0gICAgIFRlc3QgX3NhZ2VfZ2V0YXJnc3BlY19jeXRo b24gd2l0aCBtdWx0aXBsZSBkZWZhdWx0IGFyZ3VtZW50cyBhbmQgYSB0eXBlOjoKLSAKLSAgICAg ICAgIHNhZ2U6IF9zYWdlX2dldGFyZ3NwZWNfY3l0aG9uKCJkZWYgaW5pdChzZWxmLCB4PU5vbmUs IGJhc2U9MCk6IikKLS0gICAgICAgIEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAneCcsICdiYXNlJ10s IHZhcmFyZ3M9Tm9uZSwga2V5d29yZHM9Tm9uZSwgZGVmYXVsdHM9KE5vbmUsIDApKQotKyAgICAg ICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3NlbGYnLCAneCcsICdiYXNlJ10sIHZhcmFyZ3M9Tm9uZSwg dmFya3c9Tm9uZSwgZGVmYXVsdHM9KE5vbmUsIDApLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZh dWx0cz1Ob25lLCBhbm5vdGF0aW9ucz17fSkKLSAgICAgICAgIHNhZ2U6IF9zYWdlX2dldGFyZ3Nw ZWNfY3l0aG9uKCJkZWYgX19pbml0X18oc2VsZiwgeD1Ob25lLCBiYXNlPTApOiIpCi0tICAgICAg ICBBcmdTcGVjKGFyZ3M9WydzZWxmJywgJ3gnLCAnYmFzZSddLCB2YXJhcmdzPU5vbmUsIGtleXdv cmRzPU5vbmUsIGRlZmF1bHRzPShOb25lLCAwKSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9 WydzZWxmJywgJ3gnLCAnYmFzZSddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRz PShOb25lLCAwKSwga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlv bnM9e30pCi0gICAgICAgICBzYWdlOiBfc2FnZV9nZXRhcmdzcGVjX2N5dGhvbigiZGVmIF9faW5p dF9fKHNlbGYsIHg9Tm9uZSwgdW5zaWduZWQgaW50IGJhc2U9MCwgKiprZXlzKToiKQotLSAgICAg ICAgQXJnU3BlYyhhcmdzPVsnc2VsZicsICd4JywgJ2Jhc2UnXSwgdmFyYXJncz1Ob25lLCBrZXl3 b3Jkcz0na2V5cycsIGRlZmF1bHRzPShOb25lLCAwKSkKLSsgICAgICAgIEZ1bGxBcmdTcGVjKGFy Z3M9WydzZWxmJywgJ3gnLCAnYmFzZSddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PSdrZXlzJywgZGVm YXVsdHM9KE5vbmUsIDApLCBrd29ubHlhcmdzPVtdLCBrd29ubHlkZWZhdWx0cz1Ob25lLCBhbm5v dGF0aW9ucz17fSkKLSAKLSAgICAgVGVzdCBfZXh0cmFjdF9lbWJlZGRlZF9wb3NpdGlvbjoKLSAK LWRpZmYgLS1naXQgYS9zcmMvc2FnZS9wYXJhbGxlbC9kZWNvcmF0ZS5weSBiL3NyYy9zYWdlL3Bh cmFsbGVsL2RlY29yYXRlLnB5Ci1pbmRleCBjMTQ1MThhZjU3MC4uM2E3MTUyZDVhYzkgMTAwNjQ0 Ci0tLS0gYS9zcmMvc2FnZS9wYXJhbGxlbC9kZWNvcmF0ZS5weQotKysrIGIvc3JjL3NhZ2UvcGFy YWxsZWwvZGVjb3JhdGUucHkKLUBAIC0yNDMsNyArMjQzLDggQEAgZm9yIGEgaW4gYXJnc1swXSkp Ci0gICAgICAgICAgICAgLi4uLjogICAgIHJldHVybiB4ICsgeQotICAgICAgICAgICAgIHNhZ2U6 IGZyb20gc2FnZS5taXNjLnNhZ2VpbnNwZWN0IGltcG9ydCBzYWdlX2dldGFyZ3NwZWMKLSAgICAg ICAgICAgICBzYWdlOiBzYWdlX2dldGFyZ3NwZWMocChmKSkKLS0gICAgICAgICAgICBBcmdTcGVj KGFyZ3M9Wyd4JywgJ3knXSwgdmFyYXJncz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1O b25lKQotKyAgICAgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9Wyd4JywgJ3knXSwgdmFyYXJncz1O b25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0cz1Ob25lLAotKyAgICAgICAgICAgICAgICAgICAgICAg IGt3b25seWFyZ3M9W10sIGt3b25seWRlZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotICAg ICAgICAgIiIiCi0gICAgICAgICBmcm9tIHNhZ2UubWlzYy5zYWdlaW5zcGVjdCBpbXBvcnQgc2Fn ZV9nZXRhcmdzcGVjCi0gICAgICAgICByZXR1cm4gc2FnZV9nZXRhcmdzcGVjKHNlbGYuZnVuYykK LWRpZmYgLS1naXQgYS9zcmMvc2FnZS9wbG90L3Bsb3QzZC9wbG90M2QucHkgYi9zcmMvc2FnZS9w bG90L3Bsb3QzZC9wbG90M2QucHkKLWluZGV4IDY0YjExYTA0NDJhLi4xNzQ3NjU5ODBmNyAxMDA2 NDQKLS0tLSBhL3NyYy9zYWdlL3Bsb3QvcGxvdDNkL3Bsb3QzZC5weQotKysrIGIvc3JjL3NhZ2Uv cGxvdC9wbG90M2QvcGxvdDNkLnB5Ci1AQCAtMzI5LDE5ICszMjksMjQgQEAgY2xhc3MgX0Nvb3Jk aW5hdGVzKCk6Ci0gICAgICAgICAgICAgc2FnZTogdDEsdDIsdDM9VC50b19jYXJ0ZXNpYW4obGFt YmRhIGEsYjogMiphK2IpCi0gICAgICAgICAgICAgc2FnZTogZnJvbSBzYWdlLm1pc2Muc2FnZWlu c3BlY3QgaW1wb3J0IHNhZ2VfZ2V0YXJnc3BlYwotICAgICAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0 YXJnc3BlYyh0MSkKLS0gICAgICAgICAgICBBcmdTcGVjKGFyZ3M9WydhJywgJ2InXSwgdmFyYXJn cz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1Ob25lKQotKyAgICAgICAgICAgIEZ1bGxB cmdTcGVjKGFyZ3M9WydhJywgJ2InXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0 cz1Ob25lLAotKyAgICAgICAgICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9W10sIGt3b25seWRl ZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotICAgICAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0 YXJnc3BlYyh0MikKLS0gICAgICAgICAgICBBcmdTcGVjKGFyZ3M9WydhJywgJ2InXSwgdmFyYXJn cz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1Ob25lKQotKyAgICAgICAgICAgIEZ1bGxB cmdTcGVjKGFyZ3M9WydhJywgJ2InXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0 cz1Ob25lLAotKyAgICAgICAgICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9W10sIGt3b25seWRl ZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotICAgICAgICAgICAgIHNhZ2U6IHNhZ2VfZ2V0 YXJnc3BlYyh0MykKLS0gICAgICAgICAgICBBcmdTcGVjKGFyZ3M9WydhJywgJ2InXSwgdmFyYXJn cz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBkZWZhdWx0cz1Ob25lKQotKyAgICAgICAgICAgIEZ1bGxB cmdTcGVjKGFyZ3M9WydhJywgJ2InXSwgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBkZWZhdWx0 cz1Ob25lLAotKyAgICAgICAgICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9W10sIGt3b25seWRl ZmF1bHRzPU5vbmUsIGFubm90YXRpb25zPXt9KQotIAotICAgICAgICAgICAgIHNhZ2U6IGRlZiBn KGEsYik6IHJldHVybiAyKmErYgotICAgICAgICAgICAgIHNhZ2U6IHQxLHQyLHQzPVQudG9fY2Fy dGVzaWFuKGcpCi0gICAgICAgICAgICAgc2FnZTogc2FnZV9nZXRhcmdzcGVjKHQxKQotLSAgICAg ICAgICAgIEFyZ1NwZWMoYXJncz1bJ2EnLCAnYiddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5v bmUsIGRlZmF1bHRzPU5vbmUpCi0rICAgICAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ2EnLCAn YiddLCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRzPU5vbmUsCi0rICAgICAgICAg ICAgICAgICAgICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3Rh dGlvbnM9e30pCi0gICAgICAgICAgICAgc2FnZTogdDEsdDIsdDM9VC50b19jYXJ0ZXNpYW4oMiph K2IpCi0gICAgICAgICAgICAgc2FnZTogc2FnZV9nZXRhcmdzcGVjKHQxKQotLSAgICAgICAgICAg IEFyZ1NwZWMoYXJncz1bJ2EnLCAnYiddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUsIGRl ZmF1bHRzPU5vbmUpCi0rICAgICAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ2EnLCAnYiddLCB2 YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRzPU5vbmUsCi0rICAgICAgICAgICAgICAg ICAgICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9 e30pCi0gCi0gICAgICAgICBJZiB3ZSBjYW5ub3QgZ3Vlc3MgdGhlIHJpZ2h0IHBhcmFtZXRlciBu YW1lcywgdGhlbiB0aGUKLSAgICAgICAgIHBhcmFtZXRlcnMgYXJlIG5hbWVkIGB1YCBhbmQgYHZg OjoKLUBAIC0zNTIsNyArMzU3LDggQEAgY2xhc3MgX0Nvb3JkaW5hdGVzKCk6Ci0gICAgICAgICAg ICAgc2FnZTogVCA9IF9BcmJpdHJhcnlDb29yZGluYXRlcygoeCArIHksIHggLSB5LCB6KSwgeixb eCx5XSkKLSAgICAgICAgICAgICBzYWdlOiB0MSx0Mix0Mz1ULnRvX2NhcnRlc2lhbihvcGVyYXRv ci5hZGQpCi0gICAgICAgICAgICAgc2FnZTogc2FnZV9nZXRhcmdzcGVjKHQxKQotLSAgICAgICAg ICAgIEFyZ1NwZWMoYXJncz1bJ3UnLCAndiddLCB2YXJhcmdzPU5vbmUsIGtleXdvcmRzPU5vbmUs IGRlZmF1bHRzPU5vbmUpCi0rICAgICAgICAgICAgRnVsbEFyZ1NwZWMoYXJncz1bJ3UnLCAndidd LCB2YXJhcmdzPU5vbmUsIHZhcmt3PU5vbmUsIGRlZmF1bHRzPU5vbmUsCi0rICAgICAgICAgICAg ICAgICAgICAgICAga3dvbmx5YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlv bnM9e30pCi0gICAgICAgICAgICAgc2FnZTogW2goMSwyKSBmb3IgaCBpbiBULnRvX2NhcnRlc2lh bihvcGVyYXRvci5tdWwpXQotICAgICAgICAgICAgIFszLjAsIC0xLjAsIDIuMF0KLSAgICAgICAg ICAgICBzYWdlOiBbaCh1PTEsdj0yKSBmb3IgaCBpbiBULnRvX2NhcnRlc2lhbihvcGVyYXRvci5t dWwpXQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3NldHMvc2V0X2Zyb21faXRlcmF0b3IucHkgYi9z cmMvc2FnZS9zZXRzL3NldF9mcm9tX2l0ZXJhdG9yLnB5Ci1pbmRleCAzYTIzNjAzODNlYS4uNzQw MTVjNDQzM2QgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9zZXRzL3NldF9mcm9tX2l0ZXJhdG9yLnB5 Ci0rKysgYi9zcmMvc2FnZS9zZXRzL3NldF9mcm9tX2l0ZXJhdG9yLnB5Ci1AQCAtNTI2LDcgKzUy Niw5IEBAIGNsYXNzIERlY29yYXRvcigpOgotICAgICAgICAgICAgIHNhZ2U6IGQgPSBEZWNvcmF0 b3IoKQotICAgICAgICAgICAgIHNhZ2U6IGQuZiA9IGZpbmRfbG9jYWxfbWluaW11bQotICAgICAg ICAgICAgIHNhZ2U6IHNhZ2VfZ2V0YXJnc3BlYyhkKSAjIGluZGlyZWN0IGRvY3Rlc3QKLS0gICAg ICAgICAgICBBcmdTcGVjKGFyZ3M9WydmJywgJ2EnLCAnYicsICd0b2wnLCAnbWF4ZnVuJ10sIHZh cmFyZ3M9Tm9uZSwga2V5d29yZHM9Tm9uZSwgZGVmYXVsdHM9KDEuNDhlLTA4LCA1MDApKQotKyAg ICAgICAgICAgIEZ1bGxBcmdTcGVjKGFyZ3M9WydmJywgJ2EnLCAnYicsICd0b2wnLCAnbWF4ZnVu J10sCi0rICAgICAgICAgICAgICAgICAgICAgICAgdmFyYXJncz1Ob25lLCB2YXJrdz1Ob25lLCBk ZWZhdWx0cz0oMS40OGUtMDgsIDUwMCksCi0rICAgICAgICAgICAgICAgICAgICAgICAga3dvbmx5 YXJncz1bXSwga3dvbmx5ZGVmYXVsdHM9Tm9uZSwgYW5ub3RhdGlvbnM9e30pCi0gICAgICAgICAi IiIKLSAgICAgICAgIGZyb20gc2FnZS5taXNjLnNhZ2VpbnNwZWN0IGltcG9ydCBzYWdlX2dldGFy Z3NwZWMKLSAgICAgICAgIHJldHVybiBzYWdlX2dldGFyZ3NwZWMoc2VsZi5mKQotLS0gCi0yLjM4 LjEKLQotCi1Gcm9tIDQ4MmRkMWFjM2QyYmNhYTk0ZGQ5MzVlM2FkZDFhNTE2NTY3NGIxNDYgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/R29uemFsbz0yMFRvcm5hcj1D Mz1BRGE/PSA8dG9ybmFyaWFAY21hdC5lZHUudXk+Ci1EYXRlOiBNb24sIDMxIE9jdCAyMDIyIDIy OjEyOjM4IC0wMzAwCi1TdWJqZWN0OiBbUEFUQ0ggMTAvMTFdIGRvY3Rlc3RzOiBBc3NlcnRpb25F cnJvciBtZXNzYWdlIGNoYW5nZWQgaW4gcHl0aG9uIDMuMTEKLQotLS0tCi0gc3JjL3NhZ2UvbWlz Yy9sYXp5X2Zvcm1hdC5weSB8IDIgKy0KLSAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKLQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL21pc2MvbGF6eV9mb3JtYXQu cHkgYi9zcmMvc2FnZS9taXNjL2xhenlfZm9ybWF0LnB5Ci1pbmRleCBlMzA1MDY5NWIyNS4uYjU4 ZWExNTU4NjIgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9taXNjL2xhenlfZm9ybWF0LnB5Ci0rKysg Yi9zcmMvc2FnZS9taXNjL2xhenlfZm9ybWF0LnB5Ci1AQCAtNzgsNyArNzgsNyBAQCBjbGFzcyBM YXp5Rm9ybWF0KHN0cik6Ci0gICAgICAgICAuLi4uOiAgICAgICAgICAgICAgIExhenlGb3JtYXQo IiVzIGlzIHdyb25nIiklSURvbnRMaWtlQmVpbmdQcmludGVkKCkpCi0gICAgICAgICBUcmFjZWJh Y2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci0gICAgICAgICAuLi4KLS0gICAgICAgIEFzc2Vy dGlvbkVycm9yOiA8dW5wcmludGFibGUgQXNzZXJ0aW9uRXJyb3Igb2JqZWN0PgotKyAgICAgICAg QXNzZXJ0aW9uRXJyb3I6IC4uLgotICAgICAiIiIKLSAKLSAgICAgZGVmIF9fbW9kX18oc2VsZiwg YXJncyk6Ci0tLSAKLTIuMzguMQotCi0KLUZyb20gN2I2ZmE1NjVmNDI2ZTI4ZTE0YmUzYjIyYzIw MjMwMWY5ZDUzMGU5ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9H b256YWxvPTIwVG9ybmFyPUMzPUFEYT89IDx0b3JuYXJpYUBjbWF0LmVkdS51eT4KLURhdGU6IE1v biwgMzEgT2N0IDIwMjIgMjI6MTM6MTMgLTAzMDAKLVN1YmplY3Q6IFtQQVRDSCAxMS8xMV0gZG9j dGVzdHM6IG1lc3NhZ2UgYWRkZWQgbW9yZSBpbmZvIGluIHB5dGhvbiAzLjExCi0KLS0tLQotIHNy Yy9zYWdlL3JlcGwvYXR0YWNoLnB5IHwgMSArCi0gMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspCi0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9yZXBsL2F0dGFjaC5weSBiL3NyYy9zYWdlL3Jl cGwvYXR0YWNoLnB5Ci1pbmRleCAzOWRhNmVlNGFjZC4uMjBiODQ4ZTRmMDQgMTAwNjQ0Ci0tLS0g YS9zcmMvc2FnZS9yZXBsL2F0dGFjaC5weQotKysrIGIvc3JjL3NhZ2UvcmVwbC9hdHRhY2gucHkK LUBAIC01NCw2ICs1NCw3IEBAIGNoYXJhY3Rlci1ieS1jaGFyYWN0ZXI6OgotICAgICAgICAgZXhl Yyhjb2RlLCBnbG9iYWxzKQotICAgICAgIEZpbGUgIi4uLi9mb29iYXIuc2FnZS4uLi5weSIsIGxp bmUgLi4uLCBpbiA8bW9kdWxlPgotICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigidGhpcmQiKSAg ICMgdGhpcyBzaG91bGQgYXBwZWFyIGluIHRoZSBzb3VyY2Ugc25pcHBldAotKyAgICAuLi4KLSAg ICAgVmFsdWVFcnJvcjogdGhpcmQKLSAgICAgc2FnZTogZGV0YWNoKHNyYykKLSAiIiIKLS0tIAot Mi4zOC4xCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTMzODQy LTA0LXB5dGhvbjMuMTFfZml4XzMyX2JpdC5wYXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hl cy90cmFjLTMzODQyLTA0LXB5dGhvbjMuMTFfZml4XzMyX2JpdC5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggNGMyNmRmZGI2ODQzLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzM4NDItMDQtcHl0aG9uMy4xMV9maXhfMzJfYml0LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjEyICswLDAgQEAKLWRpZmYgLS1naXQgYS9zcmMvc2Fn ZS9hcml0aC9sb25nLnB4ZCBiL3NyYy9zYWdlL2FyaXRoL2xvbmcucHhkCi1pbmRleCBiMGM4MGY2 MTQ4MC4uMWM5YTUzMzg3YTAgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9hcml0aC9sb25nLnB4ZAot KysrIGIvc3JjL3NhZ2UvYXJpdGgvbG9uZy5weGQKLUBAIC0xMjQsNyArMTI0LDcgQEAgY2RlZiBp bmxpbmUgYmludCBpbnRlZ2VyX2NoZWNrX2xvbmcoeCwgbG9uZyogdmFsdWUsIGludCogZXJyKSBl eGNlcHQgLTE6Ci0gICAgICAgICAuLi4uOiAgICAgICAgIGlmIGVyciA9PSAwOgotICAgICAgICAg Li4uLjogICAgICAgICAgICAgcmV0dXJuIHZhbHVlCi0gICAgICAgICAuLi4uOiAgICAgICAgIGVs aWYgZXJyID09IEVSUl9PVkVSRkxPVzoKLS0gICAgICAgIC4uLi46ICAgICAgICAgICAgIHJhaXNl IE92ZXJmbG93RXJyb3IoImludGVnZXJfY2hlY2tfbG9uZzogb3ZlcmZsb3ciKQotKyAgICAgICAg Li4uLjogICAgICAgICAgICAgcmFpc2UgT3ZlcmZsb3dFcnJvcihmImludGVnZXJfY2hlY2tfbG9u Zzogb3ZlcmZsb3cgKHt4fSkiKQotICAgICAgICAgLi4uLjogICAgIGVsaWYgZXJyID09IEVSUl9U WVBFOgotICAgICAgICAgLi4uLjogICAgICAgICByYWlzZSBUeXBlRXJyb3IoImludGVnZXJfY2hl Y2tfbG9uZzogd3JvbmcgdHlwZSIpCi0gICAgICAgICAuLi4uOiAgICAgZWxpZiBlcnIgPT0gRVJS X0lOREVYOgotQEAgLTEzNiwyNCArMTM2LDIzIEBAIGNkZWYgaW5saW5lIGJpbnQgaW50ZWdlcl9j aGVja19sb25nKHgsIGxvbmcqIHZhbHVlLCBpbnQqIGVycikgZXhjZXB0IC0xOgotICAgICAgICAg Li4uLjogZGVmIGxvbmdfbWF4KCk6Ci0gICAgICAgICAuLi4uOiAgICAgcmV0dXJuIHNtYWxsSW50 ZWdlcihMT05HX01BWCkKLSAgICAgICAgIC4uLi46ICcnJykKLS0gICAgICAgIHNhZ2U6IHR5cGVz ID0gKFpaLCBRUSwgaW50KQotICAgICAgICAgc2FnZTogTCA9IFsxLCAxMjM0NSwgMTBeOSwgMl4z MCwgbG9uZ19tYXgoKS8vOSwgbG9uZ19tYXgoKS8vMywgbG9uZ19tYXgoKV0KLSAgICAgICAgIHNh Z2U6IEwgKz0gWy14IGZvciB4IGluIExdICsgWzAsIGxvbmdfbWluKCldCi0gICAgICAgICBzYWdl OiBmb3IgdiBpbiBMOgotLSAgICAgICAgLi4uLjogICAgIGZvciB0IGluIChJbnRlZ2VyLCBpbnQp OgotKyAgICAgICAgLi4uLjogICAgIGZvciB0IGluIChJbnRlZ2VyLCBpbnQsIFFRKToKLSAgICAg ICAgIC4uLi46ICAgICAgICAgYXNzZXJ0IGNoZWNrX2xvbmcodCh2KSkgPT0gdgotICAgICAgICAg c2FnZTogY2hlY2tfbG9uZygyXjEwMCkKLSAgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQg Y2FsbCBsYXN0KToKLSAgICAgICAgIC4uLgotLSAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdl cl9jaGVja19sb25nOiBvdmVyZmxvdwotKyAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdlcl9j aGVja19sb25nOiBvdmVyZmxvdyAoLi4uKQotICAgICAgICAgc2FnZTogY2hlY2tfbG9uZyhsb25n X21heCgpICsgMSkKLSAgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToK LSAgICAgICAgIC4uLgotLSAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdlcl9jaGVja19sb25n OiBvdmVyZmxvdwotKyAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdlcl9jaGVja19sb25nOiBv dmVyZmxvdyAoLi4uKQotICAgICAgICAgc2FnZTogY2hlY2tfbG9uZyhsb25nX21pbigpIC0gMSkK LSAgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICAgICAgIC4u LgotLSAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdlcl9jaGVja19sb25nOiBvdmVyZmxvdwot KyAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdlcl9jaGVja19sb25nOiBvdmVyZmxvdyAoLi4u KQotICAgICAgICAgc2FnZTogY2hlY2tfbG9uZygiaGVsbG8iKQotICAgICAgICAgVHJhY2ViYWNr IChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotICAgICAgICAgLi4uCi1AQCAtMTYyLDYgKzE2MSwz NiBAQCBjZGVmIGlubGluZSBiaW50IGludGVnZXJfY2hlY2tfbG9uZyh4LCBsb25nKiB2YWx1ZSwg aW50KiBlcnIpIGV4Y2VwdCAtMToKLSAgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2Fs bCBsYXN0KToKLSAgICAgICAgIC4uLgotICAgICAgICAgVHlwZUVycm9yOiBpbnRlZ2VyX2NoZWNr X2xvbmc6IGJhZCBfX2luZGV4X18KLSsKLSsgICAgUmVwZWF0IHRoZSBvdmVyZmxvdyB0ZXN0cyB3 aXRoIHB5dGhvbiBpbnRlZ2VyczoKLSsKLSsgICAgICAgIHNhZ2U6IGNoZWNrX2xvbmcoaW50KDJe MTAwKSkKLSsgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSsgICAg ICAgIC4uLgotKyAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdlcl9jaGVja19sb25nOiBvdmVy ZmxvdyAoLi4uKQotKyAgICAgICAgc2FnZTogY2hlY2tfbG9uZyhpbnQobG9uZ19tYXgoKSArIDEp KQotKyAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotKyAgICAgICAg Li4uCi0rICAgICAgICBPdmVyZmxvd0Vycm9yOiBpbnRlZ2VyX2NoZWNrX2xvbmc6IG92ZXJmbG93 ICguLi4pCi0rICAgICAgICBzYWdlOiBjaGVja19sb25nKGludChsb25nX21pbigpIC0gMSkpCi0r ICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci0rICAgICAgICAuLi4K LSsgICAgICAgIE92ZXJmbG93RXJyb3I6IGludGVnZXJfY2hlY2tfbG9uZzogb3ZlcmZsb3cgKC4u LikKLSsKLSsgICAgQW5kIGFnYWluIHdpdGggcmF0aW9uYWxzOgotKwotKyAgICAgICAgc2FnZTog Y2hlY2tfbG9uZyhRUSgyXjEwMCkpCi0rICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNh bGwgbGFzdCk6Ci0rICAgICAgICAuLi4KLSsgICAgICAgIE92ZXJmbG93RXJyb3I6IGludGVnZXJf Y2hlY2tfbG9uZzogb3ZlcmZsb3cgKC4uLikKLSsgICAgICAgIHNhZ2U6IGNoZWNrX2xvbmcoUVEo bG9uZ19tYXgoKSArIDEpKQotKyAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxh c3QpOgotKyAgICAgICAgLi4uCi0rICAgICAgICBPdmVyZmxvd0Vycm9yOiBpbnRlZ2VyX2NoZWNr X2xvbmc6IG92ZXJmbG93ICguLi4pCi0rICAgICAgICBzYWdlOiBjaGVja19sb25nKFFRKGxvbmdf bWluKCkgLSAxKSkKLSsgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToK LSsgICAgICAgIC4uLgotKyAgICAgICAgT3ZlcmZsb3dFcnJvcjogaW50ZWdlcl9jaGVja19sb25n OiBvdmVyZmxvdyAoLi4uKQotICAgICAiIiIKLSAgICAgY2RlZiBpbnQgYyA9IGludGVnZXJfY2hl Y2tfbG9uZ19weSh4LCB2YWx1ZSwgZXJyKQotICAgICBpZiBjOgotQEAgLTE5MywzNSArMjIyLDkz IEBAIGNkZWYgaW5saW5lIGxvbmcgZGlnKGNvbnN0IGRpZ2l0KiBELCBpbnQgbik6Ci0gCi0gY2Rl ZiBpbmxpbmUgYmludCBpbnRlZ2VyX2NoZWNrX2xvbmdfcHkoeCwgbG9uZyogdmFsdWUsIGludCog ZXJyKToKLSAgICAgIiIiCi0tICAgIFBhcnQgb2YgYGBpbnRlZ2VyX2NoZWNrX2xvbmdgYCBpbiBg YGxvbmcucHhkYGAsIGNoZWNraW5nIG9ubHkgZm9yCi0tICAgIFB5dGhvbiBvYmplY3RzIG9mIHR5 cGUgYGBpbnRgYCBhbmQgYGBsb25nYGAuIFNlZSB0aGF0IGZ1bmN0aW9uIGZvcgotLSAgICBkb2N1 bWVudGF0aW9uIGFuZCB0ZXN0cy4KLSsgICAgUmV0dXJuIHdoZXRoZXIgYGB4YGAgaXMgYSBweXRo b24gb2JqZWN0IG9mIHR5cGUgYGBpbnRgYC4KLSsKLSsgICAgSWYgcG9zc2libGUsIGNvbXB1dGUg dGhlIHZhbHVlIG9mIHRoaXMgaW50ZWdlciBhcyBDIGxvbmcgYW5kIHN0b3JlCi0rICAgIGl0IGlu IGBgKnZhbHVlYGAuCi0rCi0rICAgIEVycm9ycyBhcmUgcmV0dXJuZWQgYXMgYW4gZXJyb3IgaW5k aWNhdG9yIGBgKmVycmBgICh3aXRob3V0IHJhaXNpbmcKLSsgICAgYW55IFB5dGhvbiBleGNlcHRp b24pLgotKwotKyAgICBQb3NzaWJsZSBlcnJvcnMgd2hlbiByZXR1cm5pbmcgYGBUcnVlYGA6Ci0r Ci0rICAgIC0gYGAwYGA6IGBgeGBgIHdhcyBzdWNjZXNzZnVsbHkgY29udmVydGVkIHRvIGEgQyBs b25nIGFuZCBpdHMgdmFsdWUKLSsgICAgICBpcyBzdG9yZWQgaW4gYGAqdmFsdWVgYC4KLSsKLSsg ICAgLSBgYEVSUl9PVkVSRkxPV2BgOiBgYHhgYCBpcyBhIHB5dGhvbiBvYmplY3Qgb2YgdHlwZSBg YGludGBgIGJ1dAotKyAgICAgIHRvbyBsYXJnZSB0byBzdG9yZSBpbiBhIEMgbG9uZy4KLSsKLSsg ICAgUG9zc2libGUgZXJyb3JzIHdoZW4gcmV0dXJuaW5nIGBgRmFsc2VgYDoKLSsKLSsgICAgLSBg YEVSUl9UWVBFYGA6IGBgeGBgIGlzIG5vdCBhIHB5dGhvbiBvYmplY3Qgb2YgdHlwZSBgYGludGBg LgotKwotKyAgICBFWEFNUExFUzoKLSsKLSsgICAgV2UgY3JlYXRlIGEgcHVyZSBQeXRob24gd3Jh cHBlciBvZiB0aGlzIGZ1bmN0aW9uOjoKLSsKLSsgICAgICAgIHNhZ2U6IGN5dGhvbignJycgICMg b3B0aW9uYWwgLSBzYWdlLm1pc2MuY3l0aG9uCi0rICAgICAgICAuLi4uOiBmcm9tIHNhZ2UuYXJp dGgubG9uZyBjaW1wb3J0ICoKLSsgICAgICAgIC4uLi46IGRlZiBjaGVja19sb25nX3B5KHgpOgot KyAgICAgICAgLi4uLjogICAgIGNkZWYgbG9uZyB2YWx1ZQotKyAgICAgICAgLi4uLjogICAgIGNk ZWYgaW50IGVycgotKyAgICAgICAgLi4uLjogICAgIGNkZWYgYmludCBjID0gaW50ZWdlcl9jaGVj a19sb25nX3B5KHgsICZ2YWx1ZSwgJmVycikKLSsgICAgICAgIC4uLi46ICAgICBpZiBjOgotKyAg ICAgICAgLi4uLjogICAgICAgICBpZiBlcnIgPT0gMDoKLSsgICAgICAgIC4uLi46ICAgICAgICAg ICAgIHJldHVybiB2YWx1ZQotKyAgICAgICAgLi4uLjogICAgICAgICBlbGlmIGVyciA9PSBFUlJf T1ZFUkZMT1c6Ci0rICAgICAgICAuLi4uOiAgICAgICAgICAgICByZXR1cm4gZiJPdmVyZmxvdyAo e3h9KSIKLSsgICAgICAgIC4uLi46ICAgICBlbGlmIGVyciA9PSBFUlJfVFlQRToKLSsgICAgICAg IC4uLi46ICAgICAgICAgcmV0dXJuIGYiQmFkIHR5cGUgKHt4fSkiCi0rICAgICAgICAuLi4uOiAg ICAgcmV0dXJuIGYiVGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuICh7eH0pIgotKyAgICAgICAgLi4u LjogZnJvbSBsaWJjLmxpbWl0cyBjaW1wb3J0IExPTkdfTUlOLCBMT05HX01BWAotKyAgICAgICAg Li4uLjogZGVmIGxvbmdfbWluKCk6Ci0rICAgICAgICAuLi4uOiAgICAgcmV0dXJuIExPTkdfTUlO Ci0rICAgICAgICAuLi4uOiBkZWYgbG9uZ19tYXgoKToKLSsgICAgICAgIC4uLi46ICAgICByZXR1 cm4gTE9OR19NQVgKLSsgICAgICAgIC4uLi46ICcnJykKLSsgICAgICAgIHNhZ2U6IEwgPSBbMSwg MTIzNDUsIDEwXjksIDJeMzAsIGxvbmdfbWF4KCkvLzksIGxvbmdfbWF4KCkvLzMsIGxvbmdfbWF4 KCldCi0rICAgICAgICBzYWdlOiBMICs9IFsteCBmb3IgeCBpbiBMXSArIFswLCBsb25nX21pbigp XQotKyAgICAgICAgc2FnZTogZm9yIHYgaW4gTDoKLSsgICAgICAgIC4uLi46ICAgICBhc3NlcnQg Y2hlY2tfbG9uZ19weShpbnQodikpID09IHYKLSsgICAgICAgIHNhZ2U6IGNoZWNrX2xvbmdfcHko aW50KDJeMTAwKSkKLSsgICAgICAgICdPdmVyZmxvdyAoLi4uKScKLSsgICAgICAgIHNhZ2U6IGNo ZWNrX2xvbmdfcHkoaW50KGxvbmdfbWF4KCkgKyAxKSkKLSsgICAgICAgICdPdmVyZmxvdyAoLi4u KScKLSsgICAgICAgIHNhZ2U6IGNoZWNrX2xvbmdfcHkoaW50KGxvbmdfbWluKCkgLSAxKSkKLSsg ICAgICAgICdPdmVyZmxvdyAoLi4uKScKLSsgICAgICAgIHNhZ2U6IGNoZWNrX2xvbmdfcHkoMzg5 KQotKyAgICAgICAgJ0JhZCB0eXBlICguLi4pJwotKyAgICAgICAgc2FnZTogY2hlY2tfbG9uZ19w eSgiaGVsbG8iKQotKyAgICAgICAgJ0JhZCB0eXBlICguLi4pJwotKyAgICAgICAgc2FnZTogY2hl Y2tfbG9uZ19weSgyLzMpCi0rICAgICAgICAnQmFkIHR5cGUgKC4uLiknCi0gICAgICIiIgotLSAg ICBpZiBub3QgaXNpbnN0YW5jZSh4LCBsb25nKToKLS0gICAgICAgIGlmIGlzaW5zdGFuY2UoeCwg aW50KToKLS0gICAgICAgICAgICAjIFRoaXMgY2FuIGhhcHBlbiBvbmx5IG9uIFB5dGhvbiAyCi0t ICAgICAgICAgICAgdmFsdWVbMF0gPSBQeUludF9BU19MT05HKHgpCi0tICAgICAgICAgICAgZXJy WzBdID0gMAotLSAgICAgICAgICAgIHJldHVybiAxCi0rICAgIGlmIG5vdCBpc2luc3RhbmNlKHgs IGludCk6Ci0gICAgICAgICBlcnJbMF0gPSBFUlJfVFlQRQotICAgICAgICAgcmV0dXJuIDAKLSAK LS0gICAgIyB4IGlzIGEgUHl0aG9uICJsb25nIiAoY2FsbGVkICJpbnQiIG9uIFB5dGhvbiAzKQot KyAgICAjIHggaXMgYSBQeXRob24gImludCIgKGFrYSBQeUxvbmdPYmplY3Qgb3IgcHlfbG9uZyBp biBjeXRob24pCi0gICAgIGNkZWYgY29uc3QgZGlnaXQqIEQgPSAoPHB5X2xvbmc+eCkub2JfZGln aXQKLSAgICAgY2RlZiBQeV9zc2l6ZV90IHNpemUgPSBQeV9TSVpFKHgpCi0gCi0tICAgICMgV2Ug YXNzdW1lIHRoYXQgUHlMb25nX1NISUZUIGlzIDE1IG9uIGEgMzItYml0IHN5c3RlbSBhbmQgMzAg b24gYQotLSAgICAjIDY0LWJpdCBzeXN0ZW0uIFRoaXMgaXMgbm90IGd1YXJhbnRlZWQgYnkgUHl0 aG9uLCBidXQgaXQgaXMgdGhlCi0tICAgICMgZGVmYXVsdCBjb25maWd1cmF0aW9uLgotKyAgICAj IFdlIGFzc3VtZSBQeUxvbmdfU0hJRlQgPD0gQklUU19JTl9MT05HIDw9IDMgKiBQeUxvbmdfU0hJ RlQuCi0rICAgICMgVGhpcyBpcyB0cnVlIGluIGFsbCB0aGUgZGVmYXVsdCBjb25maWd1cmF0aW9u czoKLSsgICAgIyAtIEJJVFNfSU5fTE9ORyA9IDYzLCBQeUxvbmdfU0hJRlQgPSAzMAotKyAgICAj IC0gQklUU19JTl9MT05HID0gMzEsIFB5TG9uZ19TSElGVCA9IDE1IChweXRob24gPD0gMy4xMCkK LSsgICAgIyAtIEJJVFNfSU5fTE9ORyA9IDMxLCBQeUxvbmdfU0hJRlQgPSAzMCAobmV3IGluIHB5 dGhvbiAzLjExKQotKyAgICAjIGNmLiBodHRwczovL3RyYWMuc2FnZW1hdGgub3JnL3RpY2tldC8z Mzg0MiNjb21tZW50OjEzMAotICAgICAjCi0tICAgICMgVGhpcyB3YXksIHdlIGtub3cgdGhhdCAx IGFuZCAyIGRpZ2l0cyBjZXJ0YWlubHkgZml0IGluIGEgQyBsb25nCi0tICAgICMgYW5kIDQgb3Ig bW9yZSBkaWdpdHMgbmV2ZXIgZml0LiBGb3IgMyBkaWdpdHMsIHdlIG5lZWQgYW4gZXhwbGljaXQK LS0gICAgIyBvdmVyZmxvdyBjaGVjay4KLSsgICAgIyBUaGlzIHdheSwgd2Uga25vdyB0aGF0IDEg ZGlnaXQgY2VydGFpbmx5IGZpdHMgaW4gYSBDIGxvbmcKLSsgICAgIyBhbmQgNCBvciBtb3JlIGRp Z2l0cyBuZXZlciBmaXQuCi0rICAgICMgRm9yIDIgb3IgMyBkaWdpdHMsIHdlIG5lZWQgYW4gZXhw bGljaXQgb3ZlcmZsb3cgY2hlY2suCi0gICAgIGNkZWYgaW50IEJJVFNfSU5fTE9ORyA9IDggKiBz aXplb2YobG9uZykgLSAxCi0tICAgIGlmIG5vdCAoMiAqIFB5TG9uZ19TSElGVCA8PSBCSVRTX0lO X0xPTkcgPCA0ICogUHlMb25nX1NISUZUKToKLS0gICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9y Ci0rICAgIGlmIG5vdCAoUHlMb25nX1NISUZUIDw9IEJJVFNfSU5fTE9ORyA8PSAzICogUHlMb25n X1NISUZUKToKLSsgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKAotKyAgICAgICAgICAgICAg ICBmIlB5TG9uZ19TSElGVCA9IHtQeUxvbmdfU0hJRlR9LCAiCi0rICAgICAgICAgICAgICAgIGYi QklUU19JTl9MT05HID0ge0JJVFNfSU5fTE9OR30iKQotIAotICAgICBjZGVmIGxvbmcgbGVhZAot KyAgICBjZGVmIGxvbmcgbGVhZF8yX292ZXJmbG93ID0gKDxsb25nPjEpIDw8IChCSVRTX0lOX0xP TkcgLSBQeUxvbmdfU0hJRlQpCi0gICAgIGNkZWYgbG9uZyBsZWFkXzNfb3ZlcmZsb3cgPSAoPGxv bmc+MSkgPDwgKEJJVFNfSU5fTE9ORyAtIDIgKiBQeUxvbmdfU0hJRlQpCi0gICAgIGlmIHNpemUg PT0gMDoKLSAgICAgICAgIHZhbHVlWzBdID0gMAotQEAgLTIzMyw5ICszMjAsMjAgQEAgY2RlZiBp bmxpbmUgYmludCBpbnRlZ2VyX2NoZWNrX2xvbmdfcHkoeCwgbG9uZyogdmFsdWUsIGludCogZXJy KToKLSAgICAgICAgIHZhbHVlWzBdID0gLWRpZyhELCAwKQotICAgICAgICAgZXJyWzBdID0gMAot ICAgICBlbGlmIHNpemUgPT0gMjoKLSsgICAgICAgIGlmIEJJVFNfSU5fTE9ORyA8IDIgKiBQeUxv bmdfU0hJRlQgYW5kIERbMV0gPj0gbGVhZF8yX292ZXJmbG93OgotKyAgICAgICAgICAgIGVyclsw XSA9IEVSUl9PVkVSRkxPVwotKyAgICAgICAgICAgIHJldHVybiAxCi0gICAgICAgICB2YWx1ZVsw XSA9IGRpZyhELCAwKSArIGRpZyhELCAxKQotICAgICAgICAgZXJyWzBdID0gMAotICAgICBlbGlm IHNpemUgPT0gLTI6Ci0rICAgICAgICBpZiBCSVRTX0lOX0xPTkcgPCAyICogUHlMb25nX1NISUZU IGFuZCBEWzFdID49IGxlYWRfMl9vdmVyZmxvdzoKLSsgICAgICAgICAgICBpZiBEWzBdID09IDAg YW5kIERbMV0gPT0gbGVhZF8yX292ZXJmbG93OgotKyAgICAgICAgICAgICAgICAjIFNwZWNpYWwg Y2FzZSBmb3IgTE9OR19NSU4KLSsgICAgICAgICAgICAgICAgdmFsdWVbMF0gPSAoPGxvbmc+LTEp IDw8IEJJVFNfSU5fTE9ORwotKyAgICAgICAgICAgICAgICBlcnJbMF0gPSAwCi0rICAgICAgICAg ICAgZWxzZToKLSsgICAgICAgICAgICAgICAgZXJyWzBdID0gRVJSX09WRVJGTE9XCi0rICAgICAg ICAgICAgcmV0dXJuIDEKLSAgICAgICAgIHZhbHVlWzBdID0gLShkaWcoRCwgMCkgKyBkaWcoRCwg MSkpCi0gICAgICAgICBlcnJbMF0gPSAwCi0gICAgIGVsaWYgc2l6ZSA9PSAzOgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzQxMTgtdXBkYXRlX3N5bXB5X3RvXzEu MTEuMS01ZGI1ZDRlNTYyNDNjNjA5ZjQ0YWZjMWYyMWMxMTJiMDI2ZjllMWZlLnBhdGNoIGIvc3Jj cGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzQxMTgtdXBkYXRlX3N5bXB5X3RvXzEuMTEuMS01 ZGI1ZDRlNTYyNDNjNjA5ZjQ0YWZjMWYyMWMxMTJiMDI2ZjllMWZlLnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCA5NzdhNDI0MDBlNTkuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNw a2dzL3NhZ2VtYXRoL3BhdGNoZXMvdHJhYy0zNDExOC11cGRhdGVfc3ltcHlfdG9fMS4xMS4xLTVk YjVkNGU1NjI0M2M2MDlmNDRhZmMxZjIxYzExMmIwMjZmOWUxZmUucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw0MiArMCwwIEBACi1jb21taXQgNWRiNWQ0ZTU2MjQzYzYwOWY0NGFmYzFmMjFjMTEy YjAyNmY5ZTFmZQotQXV0aG9yOiBPc2NhciBCZW5qYW1pbiA8b3NjYXIuai5iZW5qYW1pbkBnbWFp bC5jb20+Ci1EYXRlOiAgIE1vbiBKdWwgMTEgMjE6MjQ6MDEgMjAyMiArMDEwMAotCi0gICAgVXBk YXRlIGRvY3Rlc3RzIGZvciBTeW1QeSAxLjExCi0gICAgCi0gICAgRG9jdGVzdHMgcmVsYXRlZCB0 byBTeW1QeSdzIHJzb2x2ZSBmdW5jdGlvbiBhcmUgdXBkYXRlZCBpbjoKLSAgICAKLSAgICBzcmMv c2FnZS9jYWxjdWx1cy90ZXN0X3N5bXB5LnB5Ci0gICAgc3JjL3NhZ2UvdGVzdHMvYm9va3MvY29t cHV0YXRpb25hbC1tYXRoZW1hdGljcy13aXRoLXNhZ2VtYXRoL3JlY2VxdWFkaWZmX2RvY3Rlc3Qu cHkKLSAgICAKLSAgICBUaGUgZm9ybSBvZiB0aGUgb3V0cHV0IGZyb20gU3ltUHkgaGFzIGNoYW5n ZWQgc2luY2UKLSAgICAKLSAgICBodHRwczovL2dpdGh1Yi5jb20vc3ltcHkvc3ltcHkvcHVsbC8y MzU2NwotCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY2FsY3VsdXMvdGVzdF9zeW1weS5weSBiL3Ny Yy9zYWdlL2NhbGN1bHVzL3Rlc3Rfc3ltcHkucHkKLWluZGV4IDdjZjdmM2Y2YmZkLi45MjdlNmVl NGZiNiAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2NhbGN1bHVzL3Rlc3Rfc3ltcHkucHkKLSsrKyBi L3NyYy9zYWdlL2NhbGN1bHVzL3Rlc3Rfc3ltcHkucHkKLUBAIC0xOTMsNyArMTkzLDcgQEAgVGhp cyB3YXMgZml4ZWQgaW4gU3ltcHksIHNlZSA6dHJhYzpgMTQ0MzdgOjoKLSAgICAgc2FnZTogdSA9 IEZ1bmN0aW9uKCd1JykKLSAgICAgc2FnZTogbiA9IFN5bWJvbCgnbicsIGludGVnZXI9VHJ1ZSkK LSAgICAgc2FnZTogZiA9IHUobisyKSAtIHUobisxKSArIHUobikvNAotLSAgICBzYWdlOiAyKipu ICogcnNvbHZlKGYsdShuKSkKLS0gICAgQzEqbiArIEMwCi0rICAgIHNhZ2U6IGV4cGFuZCgyKipu ICogcnNvbHZlKGYsdShuKSkpCi0rICAgIDIqQzEqbiArIEMwCi0gCi0gIiIiCi1kaWZmIC0tZ2l0 IGEvc3JjL3NhZ2UvdGVzdHMvYm9va3MvY29tcHV0YXRpb25hbC1tYXRoZW1hdGljcy13aXRoLXNh Z2VtYXRoL3JlY2VxdWFkaWZmX2RvY3Rlc3QucHkgYi9zcmMvc2FnZS90ZXN0cy9ib29rcy9jb21w dXRhdGlvbmFsLW1hdGhlbWF0aWNzLXdpdGgtc2FnZW1hdGgvcmVjZXF1YWRpZmZfZG9jdGVzdC5w eQotaW5kZXggMTA2MmY0ZjdlOGMuLmY1M2Y4MTNkNzkzIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2Uv dGVzdHMvYm9va3MvY29tcHV0YXRpb25hbC1tYXRoZW1hdGljcy13aXRoLXNhZ2VtYXRoL3JlY2Vx dWFkaWZmX2RvY3Rlc3QucHkKLSsrKyBiL3NyYy9zYWdlL3Rlc3RzL2Jvb2tzL2NvbXB1dGF0aW9u YWwtbWF0aGVtYXRpY3Mtd2l0aC1zYWdlbWF0aC9yZWNlcXVhZGlmZl9kb2N0ZXN0LnB5Ci1AQCAt MzgyLDcgKzM4Miw3IEBAIFNhZ2UgZXhhbXBsZSBpbiAuL3JlY2VxdWFkaWZmLnRleCwgbGluZSAx Nzk4OjoKLSAgIHNhZ2U6IGZyb20gc3ltcHkgaW1wb3J0IHJzb2x2ZV9oeXBlcgotICAgc2FnZTog ZnJvbSBzeW1weS5hYmMgaW1wb3J0IG4KLSAgIHNhZ2U6IHJzb2x2ZV9oeXBlcihbLTIsMV0sMioq KG4rMiksbikKLS0gIDIqKm4qQzAgKyAyKioobiArIDIpKihDMCArIG4vMikKLSsgIDIqKm4qQzAg KyAyKioobiArIDEpKm4KLSAKLSAiIiIKLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1hdGgv cGF0Y2hlcy90cmFjLTM0MzkxLXVwZ3JhZGVfZ2FwXzQuMTItYTZjMjkzZDY3Y2ZjZGY4ZmJhN2Jj NmFhNzg5OWUyMDg2ZDQyY2M3ZS5wYXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFj LTM0MzkxLXVwZ3JhZGVfZ2FwXzQuMTItYTZjMjkzZDY3Y2ZjZGY4ZmJhN2JjNmFhNzg5OWUyMDg2 ZDQyY2M3ZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjU0NGEzZWVmN2Rk Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzQzOTEt dXBncmFkZV9nYXBfNC4xMi1hNmMyOTNkNjdjZmNkZjhmYmE3YmM2YWE3ODk5ZTIwODZkNDJjYzdl LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNTI2ICswLDAgQEAKLUZyb20gYWVmZjk5MmQ1M2E2 NWE3MDVkY2E1Y2Q1MjE2YmNiOTdjMjE4ZGNlNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZy b206IEFudG9uaW8gUm9qYXMgPGFyb2phc0BhcmNobGludXgub3JnPgotRGF0ZTogTW9uLCAyOSBB dWcgMjAyMiAyMzoxNDowMyArMDIwMAotU3ViamVjdDogQWRhcHQgdG8gQVBJIGNoYW5nZXMgaW4g T3Blbk91dHB1dFN0cmVhbSBhbmQgQ2xvc2VPdXRwdXQKLQotLS0tCi0gc3JjL3NhZ2UvbGlicy9n YXAvZWxlbWVudC5weXggICAgICB8IDUgKysrLS0KLSBzcmMvc2FnZS9saWJzL2dhcC9nYXBfaW5j bHVkZXMucHhkIHwgNiArKysrLS0KLSAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwg NCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2xpYnMvZ2FwL2VsZW1lbnQu cHl4IGIvc3JjL3NhZ2UvbGlicy9nYXAvZWxlbWVudC5weXgKLWluZGV4IGJlNDNjNGMuLmUyNjgx MTYgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9saWJzL2dhcC9lbGVtZW50LnB5eAotKysrIGIvc3Jj L3NhZ2UvbGlicy9nYXAvZWxlbWVudC5weXgKLUBAIC0xMzAsNiArMTMwLDcgQEAgY2RlZiBjaGFy ICpjYXB0dXJlX3N0ZG91dChPYmogZnVuYywgT2JqIG9iaik6Ci0gICAgICIiIgotICAgICBjZGVm IE9iaiBzLCBzdHJlYW0sIG91dHB1dF90ZXh0X3N0cmluZwotICAgICBjZGVmIFVJbnQgcmVzCi0r ICAgIGNkZWYgVHlwT3V0cHV0RmlsZSBvdXRwdXQKLSAgICAgIyBUaGUgb25seSB3YXkgdG8gZ2V0 IGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdCB0aGF0IGlzIHRydWx5Ci0gICAg ICMgY29uc2lzdGVudCB3aXRoIGhvdyBpdCB3b3VsZCBiZSByZXByZXNlbnRlZCBhdCB0aGUgR0FQ IFJFUEwgaXMgdG8gY2FsbAotICAgICAjIFZpZXdPYmogb24gaXQuICBVbmZvcnR1bmF0ZWx5LCBW aWV3T2JqICpwcmludHMqIHRvIHRoZSBvdXRwdXQgc3RyZWFtLAotQEAgLTE0NSwxMiArMTQ2LDEy IEBAIGNkZWYgY2hhciAqY2FwdHVyZV9zdGRvdXQoT2JqIGZ1bmMsIE9iaiBvYmopOgotICAgICAg ICAgb3V0cHV0X3RleHRfc3RyaW5nID0gR0FQX1ZhbHVlR2xvYmFsVmFyaWFibGUoIk91dHB1dFRl eHRTdHJpbmciKQotICAgICAgICAgc3RyZWFtID0gQ0FMTF8yQVJHUyhvdXRwdXRfdGV4dF9zdHJp bmcsIHMsIEdBUF9UcnVlKQotIAotLSAgICAgICAgaWYgbm90IE9wZW5PdXRwdXRTdHJlYW0oc3Ry ZWFtKToKLSsgICAgICAgIGlmIG5vdCBPcGVuT3V0cHV0U3RyZWFtKCZvdXRwdXQsIHN0cmVhbSk6 Ci0gICAgICAgICAgICAgcmFpc2UgR0FQRXJyb3IoImZhaWxlZCB0byBvcGVuIG91dHB1dCBjYXB0 dXJlIHN0cmVhbSBmb3IgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZXByZXNlbnRp bmcgR0FQIG9iamVjdCIpCi0gCi0gICAgICAgICBDQUxMXzFBUkdTKGZ1bmMsIG9iaikKLS0gICAg ICAgIENsb3NlT3V0cHV0KCkKLSsgICAgICAgIENsb3NlT3V0cHV0KCZvdXRwdXQpCi0gICAgICAg ICByZXR1cm4gQ1NUUl9TVFJJTkcocykKLSAgICAgZmluYWxseToKLSAgICAgICAgIEdBUF9MZWF2 ZSgpCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbGlicy9nYXAvZ2FwX2luY2x1ZGVzLnB4ZCBiL3Ny Yy9zYWdlL2xpYnMvZ2FwL2dhcF9pbmNsdWRlcy5weGQKLWluZGV4IDVhOWFiNDguLjM0MDM1ZmUg MTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9saWJzL2dhcC9nYXBfaW5jbHVkZXMucHhkCi0rKysgYi9z cmMvc2FnZS9saWJzL2dhcC9nYXBfaW5jbHVkZXMucHhkCi1AQCAtNzYsOCArNzYsMTAgQEAgY2Rl ZiBleHRlcm4gZnJvbSAiZ2FwL2ludG9iai5oIiBub2dpbDoKLSAKLSAKLSBjZGVmIGV4dGVybiBm cm9tICJnYXAvaW8uaCIgbm9naWw6Ci0tICAgIFVJbnQgT3Blbk91dHB1dFN0cmVhbShPYmogc3Ry ZWFtKQotLSAgICBVSW50IENsb3NlT3V0cHV0KCkKLSsgICAgY3R5cGVkZWYgc3RydWN0IFR5cE91 dHB1dEZpbGU6Ci0rICAgICAgICBwYXNzCi0rICAgIFVJbnQgT3Blbk91dHB1dFN0cmVhbShUeXBP dXRwdXRGaWxlKiBvdXRwdXQsIE9iaiBzdHJlYW0pCi0rICAgIFVJbnQgQ2xvc2VPdXRwdXQoVHlw T3V0cHV0RmlsZSogb3V0cHV0KQotIAotIAotIGNkZWYgZXh0ZXJuIGZyb20gImdhcC9saWJnYXAt YXBpLmgiIG5vZ2lsOgotLS0gCi1jZ2l0IHYxLjAtMS1nZDg4ZQotCi0KLUZyb20gYzMzNjdiNDI5 MDk4MWU1ZTkzYjdhMzBjNDhiMDJmMWFlMzc3MGRjOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206IEFudG9uaW8gUm9qYXMgPGFyb2phc0BhcmNobGludXgub3JnPgotRGF0ZTogTW9uLCAy OSBBdWcgMjAyMiAyMzoxNDo1MyArMDIwMAotU3ViamVjdDogRGlzYWJsZSBjb2xvcmVkIHByb21w dCBhcyBpdCBicmVha3MgdGhlIHBleHBlY3QgaW50ZXJmYWNlCi0KLS0tLQotIHNyYy9zYWdlL2lu dGVyZmFjZXMvZ2FwLnB5IHwgMiArKwotIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKykK LQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2ludGVyZmFjZXMvZ2FwLnB5IGIvc3JjL3NhZ2UvaW50 ZXJmYWNlcy9nYXAucHkKLWluZGV4IGMzNGZlNTMuLjU2OWNhYTIgMTAwNjQ0Ci0tLS0gYS9zcmMv c2FnZS9pbnRlcmZhY2VzL2dhcC5weQotKysrIGIvc3JjL3NhZ2UvaW50ZXJmYWNlcy9nYXAucHkK LUBAIC0xNTEyLDYgKzE1MTIsOCBAQCBkZWYgZ2FwX3Jlc2V0X3dvcmtzcGFjZShtYXhfd29ya3Nw YWNlX3NpemU9Tm9uZSwgdmVyYm9zZT1GYWxzZSk6Ci0gICAgICIiIgotICAgICAjIENyZWF0ZSBu ZXcgd29ya3NwYWNlIHdpdGggZmlsZW5hbWUgV09SS1NQQUNFCi0gICAgIGcgPSBHYXAodXNlX3dv cmtzcGFjZV9jYWNoZT1GYWxzZSwgbWF4X3dvcmtzcGFjZV9zaXplPU5vbmUpCi0rICAgIGcuZXZh bCgnQ29sb3JQcm9tcHQoZmFsc2UpJykKLSsgICAgZy5ldmFsKCdTZXRVc2VyUHJlZmVyZW5jZSgi VXNlQ29sb3JQcm9tcHQiLCBmYWxzZSknKQotICAgICBnLmV2YWwoJ1NldFVzZXJQcmVmZXJlbmNl KCJIaXN0b3J5TWF4TGluZXMiLCAzMCknKQotICAgICBmcm9tIHNhZ2UudGVzdHMuZ2FwX3BhY2th Z2VzIGltcG9ydCBhbGxfaW5zdGFsbGVkX3BhY2thZ2VzCi0gICAgIGZvciBwa2cgaW4gYWxsX2lu c3RhbGxlZF9wYWNrYWdlcyhnYXA9Zyk6Ci0tLSAKLWNnaXQgdjEuMC0xLWdkODhlCi0KLQotRnJv bSAzYjYzZTk5OGU0ZDYxMThmYzg2YjEzYjk0MGM4ZjNkM2I4MzA3YTUwIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQotRnJvbTogQW50b25pbyBSb2phcyA8YXJvamFzQGFyY2hsaW51eC5vcmc+Ci1E YXRlOiBNb24sIDI5IEF1ZyAyMDIyIDIzOjE2OjAzICswMjAwCi1TdWJqZWN0OiBQb3J0IE5hdHVy YWxIb21vbW9ycGhpc20gdXNlcwotCi0tLS0KLSBzcmMvc2FnZS9ncm91cHMvYWJlbGlhbl9ncHMv YWJlbGlhbl9ncm91cF9nYXAucHkgfCA0ICsrLS0KLSAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvZ3JvdXBzL2Fi ZWxpYW5fZ3BzL2FiZWxpYW5fZ3JvdXBfZ2FwLnB5IGIvc3JjL3NhZ2UvZ3JvdXBzL2FiZWxpYW5f Z3BzL2FiZWxpYW5fZ3JvdXBfZ2FwLnB5Ci1pbmRleCBhNGIwNDcxLi44NjA5MGI0IDEwMDY0NAot LS0tIGEvc3JjL3NhZ2UvZ3JvdXBzL2FiZWxpYW5fZ3BzL2FiZWxpYW5fZ3JvdXBfZ2FwLnB5Ci0r KysgYi9zcmMvc2FnZS9ncm91cHMvYWJlbGlhbl9ncHMvYWJlbGlhbl9ncm91cF9nYXAucHkKLUBA IC0zMzgsNyArMzM4LDcgQEAgY2xhc3MgQWJlbGlhbkdyb3VwX2dhcChVbmlxdWVSZXByZXNlbnRh dGlvbiwgR3JvdXBNaXhpbkxpYkdBUCwgUGFyZW50TGliR0FQLCBBYmUKLSAgICAgICAgIGlmIGlz aW5zdGFuY2UoeCwgQWJlbGlhbkdyb3VwRWxlbWVudF9nYXApOgotICAgICAgICAgICAgIHRyeToK LSAgICAgICAgICAgICAgICAgaWYgeCBpbiBzZWxmLl9jb3ZlcjoKLS0gICAgICAgICAgICAgICAg ICAgIHggPSBzZWxmLmdhcCgpLk5hdHVyYWxIb21vbW9ycGhpc20oKS5JbWFnZSh4LmdhcCgpKQot KyAgICAgICAgICAgICAgICAgICAgeCA9IHNlbGYuX2NvdmVyLmdhcCgpLk5hdHVyYWxIb21vbW9y cGhpc21CeU5vcm1hbFN1Ymdyb3VwKHNlbGYuX3JlbGF0aW9ucykuSW1hZ2UoeC5nYXAoKSkKLSAg ICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgIHggPSB4LmdhcCgpCi0g ICAgICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgotQEAgLTEwNDMsNyArMTA0Myw3IEBA IGNsYXNzIEFiZWxpYW5Hcm91cFF1b3RpZW50X2dhcChBYmVsaWFuR3JvdXBfZ2FwKToKLSAgICAg ICAgICAgICBGcm9tOiBBYmVsaWFuIGdyb3VwIHdpdGggZ2FwLCBnZW5lcmF0b3Igb3JkZXJzICg0 LCkKLSAgICAgICAgICAgICBUbzogICBRdW90aWVudCBhYmVsaWFuIGdyb3VwIHdpdGggZ2VuZXJh dG9yIG9yZGVycyAoMiwpCi0gICAgICAgICAiIiIKLS0gICAgICAgIHBoaSA9IHNlbGYuZ2FwKCku TmF0dXJhbEhvbW9tb3JwaGlzbSgpCi0rICAgICAgICBwaGkgPSBzZWxmLl9jb3Zlci5nYXAoKS5O YXR1cmFsSG9tb21vcnBoaXNtQnlOb3JtYWxTdWJncm91cChzZWxmLl9yZWxhdGlvbnMpCi0gICAg ICAgICBIb20gPSBzZWxmLl9jb3Zlci5Ib20oc2VsZikKLSAgICAgICAgIHJldHVybiBIb20ocGhp KQotIAotLS0gCi1jZ2l0IHYxLjAtMS1nZDg4ZQotCi0KLUZyb20gYmM0MDc2NGJlMDQ0NjUzZTA2 ZjJkYTM0OTdlMWUwNWRhMDgyNTFmNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IEFu dG9uaW8gUm9qYXMgPGFyb2phc0BhcmNobGludXgub3JnPgotRGF0ZTogTW9uLCAyOSBBdWcgMjAy MiAyMzoxNzozNiArMDIwMAotU3ViamVjdDogRml4IHRlc3RzIHdpdGggR0FQIDQuMTIKLQotLS0t Ci0gc3JjL2RvYy9lbi90aGVtYXRpY190dXRvcmlhbHMvbGllL3dleWxfZ3JvdXBzLnJzdCAgfCAx MiArKysrKystLS0tLS0KLSBzcmMvc2FnZS9jb2RpbmcvY29kZWNhbi9hdXRncm91cF9jYW5fbGFi ZWwucHl4ICAgICB8ICAyICstCi0gc3JjL3NhZ2UvY29kaW5nL2xpbmVhcl9jb2RlLnB5ICAgICAg ICAgICAgICAgICAgICAgfCAyMiArKysrKysrKysrKy0tLS0tLS0tLS0tCi0gLi4uL3Jvb3Rfc3lz dGVtL2hlY2tlX2FsZ2VicmFfcmVwcmVzZW50YXRpb24ucHkgICAgfCAgMiArLQotIHNyYy9zYWdl L2NvbWJpbmF0L3N5bW1ldHJpY19ncm91cF9hbGdlYnJhLnB5ICAgICAgIHwgIDIgKy0KLSBzcmMv c2FnZS9ncm91cHMvZmluaXRlbHlfcHJlc2VudGVkLnB5ICAgICAgICAgICAgICB8ICA2ICsrKy0t LQotIHNyYy9zYWdlL2dyb3Vwcy9mcWZfb3J0aG9nb25hbC5weSAgICAgICAgICAgICAgICAgIHwg IDIgKy0KLSBzcmMvc2FnZS9ncm91cHMvbGliZ2FwX3dyYXBwZXIucHl4ICAgICAgICAgICAgICAg ICB8ICA2ICsrKy0tLQotIC4uLi9wZXJtX2dwcy9wYXJ0bl9yZWYyL3JlZmluZW1lbnRfZ2VuZXJp Yy5weXggICAgIHwgIDIgKy0KLSBzcmMvc2FnZS9ncm91cHMvcGVybV9ncHMvcGVybWdyb3VwLnB5 ICAgICAgICAgICAgICB8ICA4ICsrKystLS0tCi0gc3JjL3NhZ2UvbGlicy9nYXAvbGliZ2FwLnB5 eCAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQotIHNyYy9zYWdlL2xpYnMvZ2FwL3V0aWwu cHl4ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDggKy0tLS0tLS0KLSBzcmMvc2FnZS90ZXN0 cy9nYXBfcGFja2FnZXMucHkgICAgICAgICAgICAgICAgICAgICB8ICAyICstCi0gMTMgZmlsZXMg Y2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQg YS9zcmMvZG9jL2VuL3RoZW1hdGljX3R1dG9yaWFscy9saWUvd2V5bF9ncm91cHMucnN0IGIvc3Jj L2RvYy9lbi90aGVtYXRpY190dXRvcmlhbHMvbGllL3dleWxfZ3JvdXBzLnJzdAotaW5kZXggYzkx NzMzOC4uMTgyZTc0YSAxMDA2NDQKLS0tLSBhL3NyYy9kb2MvZW4vdGhlbWF0aWNfdHV0b3JpYWxz L2xpZS93ZXlsX2dyb3Vwcy5yc3QKLSsrKyBiL3NyYy9kb2MvZW4vdGhlbWF0aWNfdHV0b3JpYWxz L2xpZS93ZXlsX2dyb3Vwcy5yc3QKLUBAIC0xMzksMTIgKzEzOSwxMiBAQCBzdHJpbmcsIHdoaWNo IHlvdSBjYW4gcHJpbnQ6OgotICAgICBYLjEgICAgICAxICAxICAxICAxICAxICAxICAxICAxICAx ICAxICAxICAxICAxCi0gICAgIFguMiAgICAgIDEgLTEgIDEgIDEgLTEgIDEgIDEgLTEgLTEgLTEg IDEgIDEgIDEKLSAgICAgWC4zICAgICAgMiAgLiAgMiAtMSAgLiAgMiAgMiAgLiAgLiAgLiAtMSAg MiAgMgotLSAgICBYLjQgICAgICAzIC0xIC0xICAuICAxIC0xICAzIC0xICAxIC0xICAuIC0xICAz Ci0tICAgIFguNSAgICAgIDMgLTEgLTEgIC4gIDEgIDMgLTEgLTEgLTEgIDEgIC4gLTEgIDMKLS0g ICAgWC42ICAgICAgMyAgMSAtMSAgLiAtMSAtMSAgMyAgMSAtMSAgMSAgLiAtMSAgMwotLSAgICBY LjcgICAgICAzICAxIC0xICAuIC0xICAzIC0xICAxICAxIC0xICAuIC0xICAzCi0tICAgIFguOCAg ICAgIDMgLTEgIDMgIC4gLTEgLTEgLTEgLTEgIDEgIDEgIC4gLTEgIDMKLS0gICAgWC45ICAgICAg MyAgMSAgMyAgLiAgMSAtMSAtMSAgMSAtMSAtMSAgLiAtMSAgMwotKyAgICBYLjQgICAgICAzIC0x IC0xICAuICAxICAzIC0xIC0xIC0xICAxICAuIC0xICAzCi0rICAgIFguNSAgICAgIDMgIDEgLTEg IC4gLTEgIDMgLTEgIDEgIDEgLTEgIC4gLTEgIDMKLSsgICAgWC42ICAgICAgMyAtMSAgMyAgLiAt MSAtMSAtMSAtMSAgMSAgMSAgLiAtMSAgMwotKyAgICBYLjcgICAgICAzIC0xIC0xICAuICAxIC0x ICAzIC0xICAxIC0xICAuIC0xICAzCi0rICAgIFguOCAgICAgIDMgIDEgIDMgIC4gIDEgLTEgLTEg IDEgLTEgLTEgIC4gLTEgIDMKLSsgICAgWC45ICAgICAgMyAgMSAtMSAgLiAtMSAtMSAgMyAgMSAt MSAgMSAgLiAtMSAgMwotICAgICBYLjEwICAgICA0IC0yICAuIC0xICAuICAuICAuICAyICAuICAu ICAxICAuIC00Ci0gICAgIFguMTEgICAgIDQgIDIgIC4gLTEgIC4gIC4gIC4gLTIgIC4gIC4gIDEg IC4gLTQKLSAgICAgWC4xMiAgICAgNiAgLiAtMiAgLiAgLiAtMiAtMiAgLiAgLiAgLiAgLiAgMiAg NgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2NvZGluZy9jb2RlY2FuL2F1dGdyb3VwX2Nhbl9sYWJl bC5weXggYi9zcmMvc2FnZS9jb2RpbmcvY29kZWNhbi9hdXRncm91cF9jYW5fbGFiZWwucHl4Ci1p bmRleCBkZTVkYjk4Li5jODNiOTI2IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvY29kaW5nL2NvZGVj YW4vYXV0Z3JvdXBfY2FuX2xhYmVsLnB5eAotKysrIGIvc3JjL3NhZ2UvY29kaW5nL2NvZGVjYW4v YXV0Z3JvdXBfY2FuX2xhYmVsLnB5eAotQEAgLTc2LDcgKzc2LDcgQEAgY29sdW1ucyBkbyBzaGFy ZSB0aGUgc2FtZSBjb2xvcmluZzo6Ci0gICAgICgoMSwpLAotICAgICAgKDIsKSwKLSAgICAgICgz LCA1LCA0KSwKLS0gICAgICg2LCAxOSwgMTYsIDksIDIxLCAxMCwgOCwgMTUsIDE0LCAxMSwgMjAs IDEzLCAxMiwgNywgMTcsIDE4KSkKLSsgICAgICg2LCAxOSwgMTYsIDIxLCA5LCAxMCwgMTUsIDgs IDIwLCAxMSwgMTQsIDEzLCA3LCAxMiwgMTgsIDE3KSkKLSAKLSBXZSBjYW4gYWxzbyByZXN0cmlj dCB0aGUgZ3JvdXAgYWN0aW9uIHRvIGxpbmVhciBpc29tZXRyaWVzOjoKLSAKLWRpZmYgLS1naXQg YS9zcmMvc2FnZS9jb2RpbmcvbGluZWFyX2NvZGUucHkgYi9zcmMvc2FnZS9jb2RpbmcvbGluZWFy X2NvZGUucHkKLWluZGV4IGU4ZTMyZjguLjlkNDUxNjAgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9j b2RpbmcvbGluZWFyX2NvZGUucHkKLSsrKyBiL3NyYy9zYWdlL2NvZGluZy9saW5lYXJfY29kZS5w eQotQEAgLTQ2NiwyNyArNDY2LDI3IEBAIGNsYXNzIEFic3RyYWN0TGluZWFyQ29kZShBYnN0cmFj dExpbmVhckNvZGVOb01ldHJpYyk6Ci0gICAgICAgICAgICAgMAotICAgICAgICAgICAgIHNhZ2U6 IEMgPSBjb2Rlcy5IYW1taW5nQ29kZShHRig0LCAneicpLCAzKQotICAgICAgICAgICAgIHNhZ2U6 IEMuYXV0b21vcnBoaXNtX2dyb3VwX2dlbnMoKQotLSAgICAgICAgICAgIChbKCgxLCAxLCAxLCAx LCAxLCB6ICsgMSwgeiwgeiArIDEsIHosIHosIHosIDEsIDEsIHogKyAxLCB6ICsgMSwgeiwgeiAr IDEsIHosIHogKyAxLCB6ICsgMSwgeiArIDEpOyAoMSwxNCw2LDcsNCwxMCwxMSwxOSkoMiw4LDE2 LDEzLDMsMTcsMjEsMTUpKDksMTIsMTgsMjApLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUg RmllbGQgaW4geiBvZiBzaXplIDJeMgotKyAgICAgICAgICAgIChbKCgxLCAxLCAxLCB6LCB6ICsg MSwgMSwgMSwgMSwgMSwgeiArIDEsIHosIHosIHogKyAxLCB6ICsgMSwgeiArIDEsIDEsIHogKyAx LCB6LCB6LCAxLCB6KTsgKDEsMTMsMTQsMjApKDIsMjEsOCwxOCw3LDE2LDE5LDE1KSgzLDEwLDUs MTIsMTcsOSw2LDQpLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBz aXplIDJeMgotKyAgICAgICAgICAgICAgICBEZWZuOiB6IHwtLT4geiArIDEpLAotKyAgICAgICAg ICAgICAgKCh6LCAxLCB6LCB6LCB6LCB6ICsgMSwgeiwgeiwgeiwgeiwgeiwgeiwgeiArIDEsIHos IHosIHosIHosIHogKyAxLCB6LCB6LCB6KTsgKDEsMTEsNSwxMiwzLDE5KSgyLDgpKDYsMTgsMTMp KDcsMTcsMTUpKDksMTAsMTQsMTYsMjAsMjEpLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUg RmllbGQgaW4geiBvZiBzaXplIDJeMgotICAgICAgICAgICAgICAgICBEZWZuOiB6IHwtLT4geiAr IDEpLAotLSAgICAgICAgICAgICAgKCh6ICsgMSwgMSwgMSwgeiwgeiArIDEsIHosIHosIHogKyAx LCB6ICsgMSwgeiArIDEsIDEsIHogKyAxLCB6LCB6LCAxLCB6ICsgMSwgMSwgeiwgeiArIDEsIHog KyAxLCB6KTsgKDEsMTgsNiwxOSwyLDksMTcsMTAsMTMsMTQsMjEsMTEsNCw1LDEyKSgzLDIwLDcs MTYsOCksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4y Ci0tICAgICAgICAgICAgICAgIERlZm46IHogfC0tPiB6KSwKLSAgICAgICAgICAgICAgICgoeiwg eiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwgeiwg eik7ICgpLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJe MgotICAgICAgICAgICAgICAgICBEZWZuOiB6IHwtLT4geildLAotICAgICAgICAgICAgICAzNjI4 ODApCi0gICAgICAgICAgICAgc2FnZTogQy5hdXRvbW9ycGhpc21fZ3JvdXBfZ2VucyhlcXVpdmFs ZW5jZT0ibGluZWFyIikKLS0gICAgICAgICAgICAoWygoeiArIDEsIDEsIHogKyAxLCB6ICsgMSwg eiArIDEsIHosIDEsIHosIDEsIDEsIDEsIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHosIHosIDEs IHosIHosIHopOyAoMSwxNSwyLDgsMTYsMTgsMykoNCw5LDEyLDEzLDIwLDEwLDExKSg1LDIxLDE0 LDYsNywxOSwxNyksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNp emUgMl4yCi0rICAgICAgICAgICAgKFsoKHosIDEsIHogKyAxLCB6ICsgMSwgMSwgeiArIDEsIHos IDEsIHogKyAxLCB6ICsgMSwgMSwgeiwgMSwgeiArIDEsIHosIDEsIHosIDEsIHogKyAxLCAxLCAx KTsgKDEsMTIsMTEsMTAsNiw4LDksMjAsMTMsMjEsNSwxNCwzLDE2LDE3LDE5LDcsNCwyLDE1LDE4 KSwgUmluZyBlbmRvbW9ycGhpc20gb2YgRmluaXRlIEZpZWxkIGluIHogb2Ygc2l6ZSAyXjIKLSAg ICAgICAgICAgICAgICAgRGVmbjogeiB8LS0+IHopLAotLSAgICAgICAgICAgICAgKCh6ICsgMSwg eiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIDEsIHosIDEsIHosIHosIHosIDEsIHosIDEsIDEs IDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIDEsIHopOyAoMSwxNSwyMSw4LDkpKDIsMTgsNSwzLDEx LDE2LDcsMTAsMTksMTMsMTIsNCwxNyw2LDIwKSwgUmluZyBlbmRvbW9ycGhpc20gb2YgRmluaXRl IEZpZWxkIGluIHogb2Ygc2l6ZSAyXjIKLSsgICAgICAgICAgICAgICgoeiArIDEsIHogKyAxLCB6 ICsgMSwgeiwgMSwgMSwgeiwgeiwgMSwgeiArIDEsIHosIDEsIDEsIHosIDEsIHogKyAxLCB6LCB6 ICsgMSwgeiArIDEsIDEsIHopOyAoMSwzLDE4LDIsMTcsNiwxOSkoNCwxNSwxMywyMCw3LDE0LDE2 KSg1LDExLDgsMjEsMTIsOSwxMCksIFJpbmcgZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBp biB6IG9mIHNpemUgMl4yCi0gICAgICAgICAgICAgICAgIERlZm46IHogfC0tPiB6KSwKLSAgICAg ICAgICAgICAgICgoeiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiAr IDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsg MSwgeiArIDEsIHogKyAxLCB6ICsgMSwgeiArIDEsIHogKyAxLCB6ICsgMSk7ICgpLCBSaW5nIGVu ZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgotICAgICAgICAgICAg ICAgICBEZWZuOiB6IHwtLT4geildLAotICAgICAgICAgICAgICAxODE0NDApCi0gICAgICAgICAg ICAgc2FnZTogQy5hdXRvbW9ycGhpc21fZ3JvdXBfZ2VucyhlcXVpdmFsZW5jZT0icGVybXV0YXRp b25hbCIpCi0tICAgICAgICAgICAgKFsoKDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEs IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEpOyAoMSwxOSkoMywxNykoNCwyMSkoNSwyMCko NywxNCkoOSwxMikoMTAsMTYpKDExLDE1KSwgUmluZyBlbmRvbW9ycGhpc20gb2YgRmluaXRlIEZp ZWxkIGluIHogb2Ygc2l6ZSAyXjIKLSsgICAgICAgICAgICAoWygoMSwgMSwgMSwgMSwgMSwgMSwg MSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSk7ICgxLDExKSgzLDEw KSg0LDkpKDUsNykoMTIsMjEpKDE0LDIwKSgxNSwxOSkoMTYsMTcpLCBSaW5nIGVuZG9tb3JwaGlz bSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgotICAgICAgICAgICAgICAgICBEZWZu OiB6IHwtLT4geiksCi0tICAgICAgICAgICAgICAoKDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEs IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEpOyAoMSwxMSkoMywxMCkoNCw5KSg1 LDcpKDEyLDIxKSgxNCwyMCkoMTUsMTkpKDE2LDE3KSwgUmluZyBlbmRvbW9ycGhpc20gb2YgRmlu aXRlIEZpZWxkIGluIHogb2Ygc2l6ZSAyXjIKLSsgICAgICAgICAgICAgICgoMSwgMSwgMSwgMSwg MSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSk7ICgyLDE4 KSgzLDE5KSg0LDEwKSg1LDE2KSg4LDEzKSg5LDE0KSgxMSwyMSkoMTUsMjApLCBSaW5nIGVuZG9t b3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgotICAgICAgICAgICAgICAg ICBEZWZuOiB6IHwtLT4geiksCi0tICAgICAgICAgICAgICAoKDEsIDEsIDEsIDEsIDEsIDEsIDEs IDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEpOyAoMSwxNykoMiw4KSgz LDE0KSg0LDEwKSg3LDEyKSg5LDE5KSgxMywxOCkoMTUsMjApLCBSaW5nIGVuZG9tb3JwaGlzbSBv ZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgotKyAgICAgICAgICAgICAgKCgxLCAxLCAx LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxKTsg KDEsMTkpKDMsMTcpKDQsMjEpKDUsMjApKDcsMTQpKDksMTIpKDEwLDE2KSgxMSwxNSksIFJpbmcg ZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCi0gICAgICAgICAg ICAgICAgIERlZm46IHogfC0tPiB6KSwKLSAgICAgICAgICAgICAgICgoMSwgMSwgMSwgMSwgMSwg MSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSk7ICgyLDEzKSgz LDE0KSg0LDIwKSg1LDExKSg4LDE4KSg5LDE5KSgxMCwxNSkoMTYsMjEpLCBSaW5nIGVuZG9tb3Jw aGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgotICAgICAgICAgICAgICAgICBE ZWZuOiB6IHwtLT4geildLAotQEAgLTY5MiwxMCArNjkyLDEwIEBAIGNsYXNzIEFic3RyYWN0TGlu ZWFyQ29kZShBYnN0cmFjdExpbmVhckNvZGVOb01ldHJpYyk6Ci0gICAgICAgICAgICAgc2FnZTog Q19pc28gPT0gYXV0X2dyb3VwX2Nhbl9sYWJlbC5nZXRfY2Fub25pY2FsX2Zvcm0oKQotICAgICAg ICAgICAgIFRydWUKLSAgICAgICAgICAgICBzYWdlOiBhdXRfZ3JvdXBfY2FuX2xhYmVsLmdldF9h dXRvbV9nZW5zKCkKLS0gICAgICAgICAgICBbKCgxLCAxLCAxLCAxLCAxLCB6ICsgMSwgeiwgeiAr IDEsIHosIHosIHosIDEsIDEsIHogKyAxLCB6ICsgMSwgeiwgeiArIDEsIHosIHogKyAxLCB6ICsg MSwgeiArIDEpOyAoMSwxNCw2LDcsNCwxMCwxMSwxOSkoMiw4LDE2LDEzLDMsMTcsMjEsMTUpKDks MTIsMTgsMjApLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXpl IDJeMgotKyAgICAgICAgICAgIFsoKDEsIDEsIDEsIHosIHogKyAxLCAxLCAxLCAxLCAxLCB6ICsg MSwgeiwgeiwgeiArIDEsIHogKyAxLCB6ICsgMSwgMSwgeiArIDEsIHosIHosIDEsIHopOyAoMSwx MywxNCwyMCkoMiwyMSw4LDE4LDcsMTYsMTksMTUpKDMsMTAsNSwxMiwxNyw5LDYsNCksIFJpbmcg ZW5kb21vcnBoaXNtIG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCi0rICAgICAgICAg ICAgICAgRGVmbjogeiB8LS0+IHogKyAxKSwKLSsgICAgICAgICAgICAgKCh6LCAxLCB6LCB6LCB6 LCB6ICsgMSwgeiwgeiwgeiwgeiwgeiwgeiwgeiArIDEsIHosIHosIHosIHosIHogKyAxLCB6LCB6 LCB6KTsgKDEsMTEsNSwxMiwzLDE5KSgyLDgpKDYsMTgsMTMpKDcsMTcsMTUpKDksMTAsMTQsMTYs MjAsMjEpLCBSaW5nIGVuZG9tb3JwaGlzbSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJe MgotICAgICAgICAgICAgICAgIERlZm46IHogfC0tPiB6ICsgMSksCi0tICAgICAgICAgICAgICgo eiArIDEsIDEsIDEsIHosIHogKyAxLCB6LCB6LCB6ICsgMSwgeiArIDEsIHogKyAxLCAxLCB6ICsg MSwgeiwgeiwgMSwgeiArIDEsIDEsIHosIHogKyAxLCB6ICsgMSwgeik7ICgxLDE4LDYsMTksMiw5 LDE3LDEwLDEzLDE0LDIxLDExLDQsNSwxMikoMywyMCw3LDE2LDgpLCBSaW5nIGVuZG9tb3JwaGlz bSBvZiBGaW5pdGUgRmllbGQgaW4geiBvZiBzaXplIDJeMgotLSAgICAgICAgICAgICAgIERlZm46 IHogfC0tPiB6KSwKLSAgICAgICAgICAgICAgKCh6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6 LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6LCB6KTsgKCksIFJpbmcgZW5kb21vcnBoaXNt IG9mIEZpbml0ZSBGaWVsZCBpbiB6IG9mIHNpemUgMl4yCi0gICAgICAgICAgICAgICAgRGVmbjog eiB8LS0+IHopXQotICAgICAgICAgIiIiCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY29tYmluYXQv cm9vdF9zeXN0ZW0vaGVja2VfYWxnZWJyYV9yZXByZXNlbnRhdGlvbi5weSBiL3NyYy9zYWdlL2Nv bWJpbmF0L3Jvb3Rfc3lzdGVtL2hlY2tlX2FsZ2VicmFfcmVwcmVzZW50YXRpb24ucHkKLWluZGV4 IGJkZTI4MjMuLmJmZmNjODUgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9jb21iaW5hdC9yb290X3N5 c3RlbS9oZWNrZV9hbGdlYnJhX3JlcHJlc2VudGF0aW9uLnB5Ci0rKysgYi9zcmMvc2FnZS9jb21i aW5hdC9yb290X3N5c3RlbS9oZWNrZV9hbGdlYnJhX3JlcHJlc2VudGF0aW9uLnB5Ci1AQCAtMzU1 LDcgKzM1NSw3IEBAIGNsYXNzIEhlY2tlQWxnZWJyYVJlcHJlc2VudGF0aW9uKFdpdGhFcXVhbGl0 eUJ5SWQsIFNhZ2VPYmplY3QpOgotICAgICAgICAgICAgIHNhZ2U6IHExLCBxMiA9IEsuZ2Vucygp Ci0gICAgICAgICAgICAgc2FnZTogS1cgPSBXLmFsZ2VicmEoSykKLSAgICAgICAgICAgICBzYWdl OiB4ID0gS1cuYW5fZWxlbWVudCgpOyB4Ci0tICAgICAgICAgICAgMTIzICsgMyozMiArIDIqMyAr IGUKLSsgICAgICAgICAgICAxMjMgKyAzKjIzMTIgKyAyKjMxICsgZQotIAotICAgICAgICAgICAg IHNhZ2U6IFQgPSBLVy5kZW1henVyZV9sdXN6dGlnX29wZXJhdG9ycyhxMSxxMikKLSAgICAgICAg ICAgICBzYWdlOiBUMTIgPSBULlR3KCAoMSwyKSApCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvY29t YmluYXQvc3ltbWV0cmljX2dyb3VwX2FsZ2VicmEucHkgYi9zcmMvc2FnZS9jb21iaW5hdC9zeW1t ZXRyaWNfZ3JvdXBfYWxnZWJyYS5weQotaW5kZXggYzNkNjc1NS4uZGE5NTNkMiAxMDA2NDQKLS0t LSBhL3NyYy9zYWdlL2NvbWJpbmF0L3N5bW1ldHJpY19ncm91cF9hbGdlYnJhLnB5Ci0rKysgYi9z cmMvc2FnZS9jb21iaW5hdC9zeW1tZXRyaWNfZ3JvdXBfYWxnZWJyYS5weQotQEAgLTEwMSw3ICsx MDEsNyBAQCBkZWYgU3ltbWV0cmljR3JvdXBBbGdlYnJhKFIsIFcsIGNhdGVnb3J5PU5vbmUpOgot ICAgICAgICAgc2FnZTogU0dBLmdyb3VwKCkKLSAgICAgICAgIFdleWwgR3JvdXAgb2YgdHlwZSBb J0EnLCAzXSAoYXMgYSBtYXRyaXggZ3JvdXAgYWN0aW5nIG9uIHRoZSBhbWJpZW50IHNwYWNlKQot ICAgICAgICAgc2FnZTogU0dBLmFuX2VsZW1lbnQoKQotLSAgICAgICAgczEqczIqczMgKyAzKnMz KnMyICsgMipzMyArIDEKLSsgICAgICAgIHMxKnMyKnMzICsgMypzMipzMypzMSpzMiArIDIqczMq czEgKyAxCi0gCi0gICAgIFRoZSBwcmVmZXJyZWQgd2F5IHRvIGNvbnN0cnVjdCB0aGUgc3ltbWV0 cmljIGdyb3VwIGFsZ2VicmEgaXMgdG8KLSAgICAgZ28gdGhyb3VnaCB0aGUgdXN1YWwgYGBhbGdl YnJhYGAgbWV0aG9kOjoKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvZmluaXRlbHlfcHJl c2VudGVkLnB5IGIvc3JjL3NhZ2UvZ3JvdXBzL2Zpbml0ZWx5X3ByZXNlbnRlZC5weQotaW5kZXgg MmE2MWJiZi4uZDI2ODkxYSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2dyb3Vwcy9maW5pdGVseV9w cmVzZW50ZWQucHkKLSsrKyBiL3NyYy9zYWdlL2dyb3Vwcy9maW5pdGVseV9wcmVzZW50ZWQucHkK LUBAIC01OTYsOSArNTk2LDkgQEAgY2xhc3MgUmV3cml0aW5nU3lzdGVtKCk6Ci0gICAgICAgICAg ICAgc2FnZTogayA9IEcucmV3cml0aW5nX3N5c3RlbSgpCi0gICAgICAgICAgICAgc2FnZTogay5n YXAoKQotICAgICAgICAgICAgIEtudXRoIEJlbmRpeCBSZXdyaXRpbmcgU3lzdGVtIGZvciBNb25v aWQoIFsgYSwgQSwgYiwgQiBdICkgd2l0aCBydWxlcwotLSAgICAgICAgICAgIFsgWyBhXjIsIDxp ZGVudGl0eSAuLi4+IF0sIFsgYSpBLCA8aWRlbnRpdHkgLi4uPiBdLAotLSAgICAgICAgICAgICAg WyBBKmEsIDxpZGVudGl0eSAuLi4+IF0sIFsgYl4yLCA8aWRlbnRpdHkgLi4uPiBdLAotLSAgICAg ICAgICAgICAgWyBiKkIsIDxpZGVudGl0eSAuLi4+IF0sIFsgQipiLCA8aWRlbnRpdHkgLi4uPiBd IF0KLSsgICAgICAgICAgICBbIFsgYSpBLCA8aWRlbnRpdHkgLi4uPiBdLCBbIEEqYSwgPGlkZW50 aXR5IC4uLj4gXSwKLSsgICAgICAgICAgICAgIFsgYipCLCA8aWRlbnRpdHkgLi4uPiBdLCBbIEIq YiwgPGlkZW50aXR5IC4uLj4gXSwKLSsgICAgICAgICAgICAgIFsgYV4yLCA8aWRlbnRpdHkgLi4u PiBdLCBbIGJeMiwgPGlkZW50aXR5IC4uLj4gXSBdCi0gICAgICAgICAiIiIKLSAgICAgICAgIHJl dHVybiBzZWxmLl9nYXAKLSAKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvZnFmX29ydGhv Z29uYWwucHkgYi9zcmMvc2FnZS9ncm91cHMvZnFmX29ydGhvZ29uYWwucHkKLWluZGV4IDc1ZGU0 MDguLmRkN2Q4NGQgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9ncm91cHMvZnFmX29ydGhvZ29uYWwu cHkKLSsrKyBiL3NyYy9zYWdlL2dyb3Vwcy9mcWZfb3J0aG9nb25hbC5weQotQEAgLTE0Myw3ICsx NDMsNyBAQCBjbGFzcyBGcWZPcnRob2dvbmFsR3JvdXAoQWJlbGlhbkdyb3VwQXV0b21vcnBoaXNt R3JvdXBfc3ViZ3JvdXApOgotICAgICAgICAgWzIvMyAgIDAgICAwXQotICAgICAgICAgWyAgMCAy LzMgICAwXQotICAgICAgICAgWyAgMCAgIDAgNC8zXQotLSAgICAgICAgZ2VuZXJhdGVkIGJ5IDIg ZWxlbWVudHMKLSsgICAgICAgIGdlbmVyYXRlZCBieSAzIGVsZW1lbnRzCi0gICAgICAgICBzYWdl OiBxID0gbWF0cml4LmRpYWdvbmFsKFFRLCBbMy8yLCAxLzQsIDEvNF0pCi0gICAgICAgICBzYWdl OiBUID0gVG9yc2lvblF1YWRyYXRpY0Zvcm0ocSkKLSAgICAgICAgIHNhZ2U6IFQub3J0aG9nb25h bF9ncm91cCgpLm9yZGVyKCkKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvbGliZ2FwX3dy YXBwZXIucHl4IGIvc3JjL3NhZ2UvZ3JvdXBzL2xpYmdhcF93cmFwcGVyLnB5eAotaW5kZXggYTc2 YWZjMi4uOTM0MGMwZCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2dyb3Vwcy9saWJnYXBfd3JhcHBl ci5weXgKLSsrKyBiL3NyYy9zYWdlL2dyb3Vwcy9saWJnYXBfd3JhcHBlci5weXgKLUBAIC0yNSw3 ICsyNSw3IEBAIE5vdGUgaG93IHdlIGNhbGwgdGhlIGNvbnN0cnVjdG9yIG9mIGJvdGggc3VwZXJj bGFzc2VzIHRvIGluaXRpYWxpemUKLSBpdHMgb3V0cHV0IHZpYSBMaWJHQVA6OgotIAotICAgICBz YWdlOiBGb29Hcm91cCgpCi0tICAgIDxwYyBncm91cCBvZiBzaXplIDMgd2l0aCAxIGdlbmVyYXRv cnM+Ci0rICAgIDxwYyBncm91cCBvZiBzaXplIDMgd2l0aCAxIGdlbmVyYXRvcj4KLSAgICAgc2Fn ZTogdHlwZShGb29Hcm91cCgpLmdhcCgpKQotICAgICA8Y2xhc3MgJ3NhZ2UubGlicy5nYXAuZWxl bWVudC5HYXBFbGVtZW50Jz4KLSAKLUBAIC0xMDYsNyArMTA2LDcgQEAgY2xhc3MgUGFyZW50TGli R0FQKFNhZ2VPYmplY3QpOgotICAgICAgICAgLi4uLjogICAgICAgICBQYXJlbnRMaWJHQVAuX19p bml0X18oc2VsZiwgbGcpCi0gICAgICAgICAuLi4uOiAgICAgICAgIEdyb3VwLl9faW5pdF9fKHNl bGYpCi0gICAgICAgICBzYWdlOiBGb29Hcm91cCgpCi0tICAgICAgICA8cGMgZ3JvdXAgb2Ygc2l6 ZSAzIHdpdGggMSBnZW5lcmF0b3JzPgotKyAgICAgICAgPHBjIGdyb3VwIG9mIHNpemUgMyB3aXRo IDEgZ2VuZXJhdG9yPgotICAgICAiIiIKLSAKLSAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGxpYmdh cF9wYXJlbnQsIGFtYmllbnQ9Tm9uZSk6Ci1AQCAtNDYxLDcgKzQ2MSw3IEBAIGNkZWYgY2xhc3Mg RWxlbWVudExpYkdBUChNdWx0aXBsaWNhdGl2ZUdyb3VwRWxlbWVudCk6Ci0gICAgICAgICAuLi4u OiAgICAgICAgIFBhcmVudExpYkdBUC5fX2luaXRfXyhzZWxmLCBsZykKLSAgICAgICAgIC4uLi46 ICAgICAgICAgR3JvdXAuX19pbml0X18oc2VsZikKLSAgICAgICAgIHNhZ2U6IEZvb0dyb3VwKCkK LS0gICAgICAgIDxwYyBncm91cCBvZiBzaXplIDMgd2l0aCAxIGdlbmVyYXRvcnM+Ci0rICAgICAg ICA8cGMgZ3JvdXAgb2Ygc2l6ZSAzIHdpdGggMSBnZW5lcmF0b3I+Ci0gICAgICAgICBzYWdlOiBG b29Hcm91cCgpLmdlbnMoKQotICAgICAgICAgKGYxLCkKLSAgICAgIiIiCi1kaWZmIC0tZ2l0IGEv c3JjL3NhZ2UvZ3JvdXBzL3Blcm1fZ3BzL3BhcnRuX3JlZjIvcmVmaW5lbWVudF9nZW5lcmljLnB5 eCBiL3NyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wYXJ0bl9yZWYyL3JlZmluZW1lbnRfZ2VuZXJp Yy5weXgKLWluZGV4IDJmY2IwMzYuLmNhNzNjNmIgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9ncm91 cHMvcGVybV9ncHMvcGFydG5fcmVmMi9yZWZpbmVtZW50X2dlbmVyaWMucHl4Ci0rKysgYi9zcmMv c2FnZS9ncm91cHMvcGVybV9ncHMvcGFydG5fcmVmMi9yZWZpbmVtZW50X2dlbmVyaWMucHl4Ci1A QCAtNDI3LDcgKzQyNyw3IEBAIGNkZWYgY2xhc3MgTGFiZWxsZWRCcmFuY2hpbmc6Ci0gICAgICAg ICAgICAgc2FnZTogZnJvbSBzYWdlLmdyb3Vwcy5wZXJtX2dwcy5wYXJ0bl9yZWYyLnJlZmluZW1l bnRfZ2VuZXJpYyBpbXBvcnQgTGFiZWxsZWRCcmFuY2hpbmcKLSAgICAgICAgICAgICBzYWdlOiBM ID0gTGFiZWxsZWRCcmFuY2hpbmcoMykKLSAgICAgICAgICAgICBzYWdlOiBMLnNtYWxsX2dlbmVy YXRpbmdfc2V0KCkKLS0gICAgICAgICAgICBbXQotKyAgICAgICAgICAgIFsoKV0KLSAgICAgICAg ICAgICBzYWdlOiBMLmFkZF9nZW4obGliZ2FwLmV2YWwoJygxLDIsMyknKSkKLSAgICAgICAgICAg ICBzYWdlOiBMLnNtYWxsX2dlbmVyYXRpbmdfc2V0KCkKLSAgICAgICAgICAgICBbKDEsMiwzKV0K LWRpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvcGVybV9ncHMvcGVybWdyb3VwLnB5IGIvc3Jj L3NhZ2UvZ3JvdXBzL3Blcm1fZ3BzL3Blcm1ncm91cC5weQotaW5kZXggNDkwODkzNC4uMzRiYTBj YyAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wZXJtZ3JvdXAucHkKLSsr KyBiL3NyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wZXJtZ3JvdXAucHkKLUBAIC05MTMsNyArOTEz LDcgQEAgY2xhc3MgUGVybXV0YXRpb25Hcm91cF9nZW5lcmljKEZpbml0ZUdyb3VwKToKLSAgICAg ICAgICAgIHNhZ2U6IGYgPSBQRy5fY29lcmNlX21hcF9mcm9tXyhNRykKLSAgICAgICAgICAgIHNh Z2U6IG1nID0gTUcuYW5fZWxlbWVudCgpCi0gICAgICAgICAgICBzYWdlOiBwID0gZihtZyk7IHAK LS0gICAgICAgICAgICgyLDMzLDMyLDIzLDMxLDU1KSgzLDQ5LDM4LDQ0LDQwLDI4KSg0LDE3LDU5 LDYyLDU4LDQ2KSg1LDIxLDQ3LDIwLDQzLDgpKDYsNTMsNTApKDcsMzcsMTIsNTcsMTQsMjkpKDks NDEsNTYsMzQsNjQsMTApKDExLDI1LDE5KSgxMyw2MSwyNiw1MSwyMiwxNSkoMTYsNDUsMzYpKDE4 LDI3LDM1LDQ4LDUyLDU0KSgyNCw2Myw0MikoMzAsMzksNjApCi0rICAgICAgICAgICAoMSwyLDYs MTksMzUsMzMpKDMsOSwyNiwxNCwzMSwyMykoNCwxMyw1KSg3LDIyLDE3KSg4LDI0LDEyKSgxMCwx NiwzMiwyNywyMCwyOCkoMTEsMzAsMTgpKDE1LDI1LDM2LDM0LDI5LDIxKQotICAgICAgICAgICAg c2FnZTogUEcocC5fZ2FwXygpKSA9PSBwCi0gICAgICAgICAgICBUcnVlCi0gCi1AQCAtOTU5LDEy ICs5NTksMTIgQEAgY2xhc3MgUGVybXV0YXRpb25Hcm91cF9nZW5lcmljKEZpbml0ZUdyb3VwKToK LSAgICAgICAgICAgICBzYWdlOiBQID0gRy5hc19wZXJtdXRhdGlvbl9ncm91cChhbGdvcml0aG09 J3NtYWxsZXInLCBzZWVkPTUpCi0gICAgICAgICAgICAgc2FnZTogUDEgPSBHLmFzX3Blcm11dGF0 aW9uX2dyb3VwKCkKLSAgICAgICAgICAgICBzYWdlOiBQID09IFAxCi0tICAgICAgICAgICAgRmFs c2UKLSsgICAgICAgICAgICBUcnVlCi0gICAgICAgICAgICAgc2FnZTogZzEsIGcyLCBnMyA9IEcu Z2VucygpCi0gICAgICAgICAgICAgc2FnZTogUChnMSpnMikKLS0gICAgICAgICAgICAoMSwzLDcs MTIpKDIsNCw4LDEwKSg1LDExKSg2LDkpCi0rICAgICAgICAgICAgKDEsNCwxMywxMSkoMiw1LDE0 LDE4KSgzLDE1LDgsMTYpKDYsNykoOSwyMCwxOSwxMikoMTAsMTcpCi0gICAgICAgICAgICAgc2Fn ZTogUDEoZzEqZzIpCi0tICAgICAgICAgICAgKDIsMjksMjUsNjgpKDMsNTcsMTMsNTQpKDQsMTEs NzIsMzcpKDUsMzksNjAsMjMpKDYsNjQsNzUsNjMpKDcsMjEsNTAsNzMpKDgsNDYsMzgsMzIpKDks NzQsMzUsMTgpKDEwLDQ0LDQ5LDQ4KSgxMiwxNiwzNCw3MSkoMTQsNzksMjcsNDApKDE1LDI2KSgx Nyw2Miw1OSw3NikoMTksNzgsNzAsNjUpKDIwLDIyLDU4LDUxKSgyNCwzMywzNiw0MykoMjgsODEs ODAsNTIpKDMwLDUzLDU2LDY5KSgzMSw2MSkoNDEsNDIsNjcsNTUpKDQ1LDc3KSg0Nyw2NikKLSsg ICAgICAgICAgICAoMSw0LDEzLDExKSgyLDUsMTQsMTgpKDMsMTUsOCwxNikoNiw3KSg5LDIwLDE5 LDEyKSgxMCwxNykKLSAKLSAgICAgICAgIEFub3RoZXIgY2hlY2sgZm9yIDp0cmFjOmA1NTgzYDo6 Ci0gCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbGlicy9nYXAvbGliZ2FwLnB5eCBiL3NyYy9zYWdl L2xpYnMvZ2FwL2xpYmdhcC5weXgKLWluZGV4IGIxYTY0ZTUuLjZhMzY2MTMgMTAwNjQ0Ci0tLS0g YS9zcmMvc2FnZS9saWJzL2dhcC9saWJnYXAucHl4Ci0rKysgYi9zcmMvc2FnZS9saWJzL2dhcC9s aWJnYXAucHl4Ci1AQCAtNjk1LDcgKzY5NSw3IEBAIGNsYXNzIEdhcChQYXJlbnQpOgotICAgICAg ICAgICAgIHNhZ2U6IGxpYmdhcC5MaXN0Ci0gICAgICAgICAgICAgPEdhcCBmdW5jdGlvbiAiTGlz dCI+Ci0gICAgICAgICAgICAgc2FnZTogbGliZ2FwLkdsb2JhbFJhbmRvbVNvdXJjZQotLSAgICAg ICAgICAgIDxSYW5kb21Tb3VyY2UgaW4gSXNHbG9iYWxSYW5kb21Tb3VyY2U+Ci0rICAgICAgICAg ICAgPFJhbmRvbVNvdXJjZSBpbiBJc0dBUFJhbmRvbVNvdXJjZT4KLSAgICAgICAgICIiIgotICAg ICAgICAgaWYgbmFtZSBpbiBkaXIoc2VsZi5fX2NsYXNzX18pOgotICAgICAgICAgICAgIHJldHVy biBnZXRhdHRyKHNlbGYuX19jbGFzc19fLCBuYW1lKQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2xp YnMvZ2FwL3V0aWwucHl4IGIvc3JjL3NhZ2UvbGlicy9nYXAvdXRpbC5weXgKLWluZGV4IDM0NGFi ODguLjYzNTA5ODcgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9saWJzL2dhcC91dGlsLnB5eAotKysr IGIvc3JjL3NhZ2UvbGlicy9nYXAvdXRpbC5weXgKLUBAIC0zNjIsMTUgKzM2Miw5IEBAIGNkZWYg T2JqIGdhcF9ldmFsKHN0ciBnYXBfc3RyaW5nKSBleGNlcHQ/IE5VTEw6Ci0gICAgICAgICBHQVBF cnJvcjogRXJyb3IsIFZhcmlhYmxlOiAnQ29tcGxleCcgbXVzdCBoYXZlIGEgdmFsdWUKLSAgICAg ICAgIFN5bnRheCBlcnJvcjogOyBleHBlY3RlZCBpbiBzdHJlYW06MQotICAgICAgICAgQ29tcGxl eCBGaWVsZCB3aXRoIDUzIGJpdHMgb2YgcHJlY2lzaW9uOzsKLS0gICAgICAgICBeXl5eXl5eXl5e Xl4KLSsgICAgICAgICAgICAgICAgXl5eXl4KLSAgICAgICAgIEVycm9yLCBWYXJpYWJsZTogJ3dp dGgnIG11c3QgaGF2ZSBhIHZhbHVlCi0tICAgICAgICBTeW50YXggZXJyb3I6IDsgZXhwZWN0ZWQg aW4gc3RyZWFtOjEKLS0gICAgICAgIENvbXBsZXggRmllbGQgd2l0aCA1MyBiaXRzIG9mIHByZWNp c2lvbjs7Ci0tICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl4KLSAgICAgICAgIEVycm9yLCBW YXJpYWJsZTogJ2JpdHMnIG11c3QgaGF2ZSBhIHZhbHVlCi0tICAgICAgICBTeW50YXggZXJyb3I6 IDsgZXhwZWN0ZWQgaW4gc3RyZWFtOjEKLS0gICAgICAgIENvbXBsZXggRmllbGQgd2l0aCA1MyBi aXRzIG9mIHByZWNpc2lvbjs7Ci0tICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5e XgotICAgICAgICAgRXJyb3IsIFZhcmlhYmxlOiAncHJlY2lzaW9uJyBtdXN0IGhhdmUgYSB2YWx1 ZQotIAotICAgICBUZXN0IHRoYXQgb24gYSBzdWJzZXF1ZW50IGF0dGVtcHQgd2UgZ2V0IHRoZSBz YW1lIG1lc3NhZ2UgKG5vIGdhcmJhZ2Ugd2FzCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvdGVzdHMv Z2FwX3BhY2thZ2VzLnB5IGIvc3JjL3NhZ2UvdGVzdHMvZ2FwX3BhY2thZ2VzLnB5Ci1pbmRleCAy ZTQ1MThjLi5jMzAyYjE2IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvdGVzdHMvZ2FwX3BhY2thZ2Vz LnB5Ci0rKysgYi9zcmMvc2FnZS90ZXN0cy9nYXBfcGFja2FnZXMucHkKLUBAIC0xMDMsNyArMTAz LDcgQEAgZGVmIGFsbF9pbnN0YWxsZWRfcGFja2FnZXMoaWdub3JlX2RvdF9nYXA9RmFsc2UsIGdh cD1Ob25lKToKLSAKLSAgICAgICAgIHNhZ2U6IGZyb20gc2FnZS50ZXN0cy5nYXBfcGFja2FnZXMg aW1wb3J0IGFsbF9pbnN0YWxsZWRfcGFja2FnZXMKLSAgICAgICAgIHNhZ2U6IGFsbF9pbnN0YWxs ZWRfcGFja2FnZXMoKQotLSAgICAgICAgKC4uLidHQVBEb2MnLi4uKQotKyAgICAgICAgKC4uLidn YXBkb2MnLi4uKQotICAgICAgICAgc2FnZTogYWxsX2luc3RhbGxlZF9wYWNrYWdlcyhpZ25vcmVf ZG90X2dhcD1UcnVlKSA9PSBhbGxfaW5zdGFsbGVkX3BhY2thZ2VzKGdhcD1nYXAsIGlnbm9yZV9k b3RfZ2FwPVRydWUpCi0gICAgICAgICBUcnVlCi0gICAgICIiIgotLS0gCi1jZ2l0IHYxLjAtMS1n ZDg4ZQotCi0KLUZyb20gY2JjOTAyYTc5ZmY5ZWMwMWQ0ZDRlYjlhNzY3YTFjNjYxZmI1ZGRhNyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IEFudG9uaW8gUm9qYXMgPGFyb2phc0BhcmNo bGludXgub3JnPgotRGF0ZTogRnJpLCAzMCBTZXAgMjAyMiAxOToxNzo0MiArMDIwMAotU3ViamVj dDogQWRhcHQgdGVzdCB0byBuZXcgaXNfdHJhbnNpdGl2ZSBhbmQgaXNfcHJpbWl0aXZlIGJlaGF2 aW9yCi0KLS0tLQotIHNyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wZXJtZ3JvdXAucHkgfCAyMiAr KysrKysrKysrKysrKysrLS0tLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyks IDYgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvcGVybV9ncHMv cGVybWdyb3VwLnB5IGIvc3JjL3NhZ2UvZ3JvdXBzL3Blcm1fZ3BzL3Blcm1ncm91cC5weQotaW5k ZXggMzRiYTBjYy4uNTgzMmI5OCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2dyb3Vwcy9wZXJtX2dw cy9wZXJtZ3JvdXAucHkKLSsrKyBiL3NyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wZXJtZ3JvdXAu cHkKLUBAIC00MzU5LDE3ICs0MzU5LDIzIEBAIGNsYXNzIFBlcm11dGF0aW9uR3JvdXBfZ2VuZXJp YyhGaW5pdGVHcm91cCk6Ci0gCi0gICAgICAgICA6OgotIAotLSAgICAgICAgICAgIHNhZ2U6IEcg PSBQZXJtdXRhdGlvbkdyb3VwKFtbKDEsMiwzLDQsNSldLFsoMSwyKV1dKSAjU181IG9uIFsxLi41 XQotLSAgICAgICAgICAgIHNhZ2U6IEcuaXNfdHJhbnNpdGl2ZShbMSw0LDVdKQotKyAgICAgICAg ICAgIHNhZ2U6IEcgPSBQZXJtdXRhdGlvbkdyb3VwKFtbKDEsMiwzLDQsNSldLFsoMSwyKV0sWyg2 LDcpXV0pCi0rICAgICAgICAgICAgc2FnZTogRy5pc190cmFuc2l0aXZlKFsxLDIsMyw0LDVdKQot ICAgICAgICAgICAgIFRydWUKLS0gICAgICAgICAgICBzYWdlOiBHLmlzX3RyYW5zaXRpdmUoWzIu LjZdKQotKyAgICAgICAgICAgIHNhZ2U6IEcuaXNfdHJhbnNpdGl2ZShbMS4uN10pCi0gICAgICAg ICAgICAgRmFsc2UKLSAgICAgICAgICAgICBzYWdlOiBHLmlzX3RyYW5zaXRpdmUoRy5ub25fZml4 ZWRfcG9pbnRzKCkpCi0tICAgICAgICAgICAgVHJ1ZQotKyAgICAgICAgICAgIEZhbHNlCi0gICAg ICAgICAgICAgc2FnZTogSCA9IFBlcm11dGF0aW9uR3JvdXAoW1soMSwyLDMpXSxbKDQsNSw2KV1d KQotICAgICAgICAgICAgIHNhZ2U6IEguaXNfdHJhbnNpdGl2ZShILm5vbl9maXhlZF9wb2ludHMo KSkKLSAgICAgICAgICAgICBGYWxzZQotIAotKyAgICAgICAgSWYgYEdgIGRvZXMgbm90IGFjdCBv biB0aGUgZG9tYWluLCBpdCBhbHdheXMgcmV0dXJucyBgYEZhbHNlYGA6OgotKwotKyAgICAgICAg ICAgIHNhZ2U6IEcgPSBQZXJtdXRhdGlvbkdyb3VwKFtbKDEsMiwzLDQsNSldLFsoMSwyKV1dKSAj U181IG9uIFsxLi41XQotKyAgICAgICAgICAgIHNhZ2U6IEcuaXNfdHJhbnNpdGl2ZShbMSw0LDVd KQotKyAgICAgICAgICAgIEZhbHNlCi0rCi0gICAgICAgICBOb3RlIHRoYXQgdGhpcyBkaWZmZXJz IGZyb20gdGhlIGRlZmluaXRpb24gaW4gR0FQLCB3aGVyZQotICAgICAgICAgYGBJc1RyYW5zaXRp dmVgYCByZXR1cm5zIHdoZXRoZXIgdGhlIGdyb3VwIGlzIHRyYW5zaXRpdmUgb24gdGhlCi0gICAg ICAgICBzZXQgb2YgcG9pbnRzIG1vdmVkIGJ5IHRoZSBncm91cC4KLUBAIC00NDI1LDEyICs0NDMx LDE2IEBAIGNsYXNzIFBlcm11dGF0aW9uR3JvdXBfZ2VuZXJpYyhGaW5pdGVHcm91cCk6Ci0gICAg ICAgICAgICAgc2FnZTogRyA9IFBlcm11dGF0aW9uR3JvdXAoW1soMSwyLDMsNCldLFsoMiw0KV1d KQotICAgICAgICAgICAgIHNhZ2U6IEcuaXNfcHJpbWl0aXZlKFsxLi40XSkKLSAgICAgICAgICAg ICBGYWxzZQotLSAgICAgICAgICAgIHNhZ2U6IEcuaXNfcHJpbWl0aXZlKFsxLDIsM10pCi0tICAg ICAgICAgICAgVHJ1ZQotICAgICAgICAgICAgIHNhZ2U6IEcgPSBQZXJtdXRhdGlvbkdyb3VwKFtb KDMsNCw1LDYpXSxbKDMsNCldXSkgI1NfNCBvbiBbMy4uNl0KLSAgICAgICAgICAgICBzYWdlOiBH LmlzX3ByaW1pdGl2ZShHLm5vbl9maXhlZF9wb2ludHMoKSkKLSAgICAgICAgICAgICBUcnVlCi0g Ci0rICAgICAgICBJZiBgR2AgZG9lcyBub3QgYWN0IG9uIHRoZSBkb21haW4sIGl0IGFsd2F5cyBy ZXR1cm5zIGBgRmFsc2VgYDo6Ci0rCi0rICAgICAgICAgICAgc2FnZTogRyA9IFBlcm11dGF0aW9u R3JvdXAoW1soMSwyLDMsNCldLFsoMiw0KV1dKQotKyAgICAgICAgICAgIHNhZ2U6IEcuaXNfcHJp bWl0aXZlKFsxLDIsM10pCi0rICAgICAgICAgICAgRmFsc2UKLSsKLSAgICAgICAgICIiIgotICAg ICAgICAgI0lmIHRoZSBkb21haW4gaXMgbm90IGEgc3Vic2V0IG9mIHNlbGYuZG9tYWluKCksIHRo ZW4gdGhlCi0gICAgICAgICAjYWN0aW9uIGlzbid0IHByaW1pdGl2ZS4KLS0tIAotY2dpdCB2MS4w LTEtZ2Q4OGUKLQotCi1Gcm9tIDgwZGQ2YjMzODIzNmYxNzBlZmNhMWZjMzU0NWRmMThjZThkODc5 NWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBBbnRvbmlvIFJvamFzIDxhcm9qYXNA YXJjaGxpbnV4Lm9yZz4KLURhdGU6IEZyaSwgMzAgU2VwIDIwMjIgMTk6MTg6MDYgKzAyMDAKLVN1 YmplY3Q6IE1hcmsgdGVzdCBhcyByYW5kb20uIFdpdGggZ2FwIDQuMTIgb24geDg2XzY0IGl0IGlz IG5vIGxvbmdlciAyCi0KLS0tLQotIHNyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wZXJtZ3JvdXAu cHkgfCAyICstCi0gMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p Ci0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvcGVybV9ncHMvcGVybWdyb3VwLnB5IGIv c3JjL3NhZ2UvZ3JvdXBzL3Blcm1fZ3BzL3Blcm1ncm91cC5weQotaW5kZXggNTgzMmI5OC4uYzEy MzBhMyAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wZXJtZ3JvdXAucHkK LSsrKyBiL3NyYy9zYWdlL2dyb3Vwcy9wZXJtX2dwcy9wZXJtZ3JvdXAucHkKLUBAIC0xMjg3LDcg KzEyODcsNyBAQCBjbGFzcyBQZXJtdXRhdGlvbkdyb3VwX2dlbmVyaWMoRmluaXRlR3JvdXApOgot ICAgICAgICAgICAgIHNhZ2U6IEcuZ2Vuc19zbWFsbCgpICMgcmFuZG9tCi0gICAgICAgICAgICAg WygnYicsJ2MnKSwgKCdhJywnYycsJ2InKV0gIyMgKG9uIDY0LWJpdCBMaW51eCkKLSAgICAgICAg ICAgICBbKCdhJywnYicpLCAoJ2EnLCdjJywnYicpXSAjIyAob24gU29sYXJpcykKLS0gICAgICAg ICAgICBzYWdlOiBsZW4oRy5nZW5zX3NtYWxsKCkpID09IDIKLSsgICAgICAgICAgICBzYWdlOiBs ZW4oRy5nZW5zX3NtYWxsKCkpID09IDIgIyByYW5kb20KLSAgICAgICAgICAgICBUcnVlCi0gICAg ICAgICAiIiIKLSAgICAgICAgIGdlbnMgPSBzZWxmLl9saWJnYXBfKCkuU21hbGxHZW5lcmF0aW5n U2V0KCkKLS0tIAotY2dpdCB2MS4wLTEtZ2Q4OGUKLQotCi1Gcm9tIGE2YzI5M2Q2N2NmY2RmOGZi YTdiYzZhYTc4OTllMjA4NmQ0MmNjN2UgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBB bnRvbmlvIFJvamFzIDxhcm9qYXNAYXJjaGxpbnV4Lm9yZz4KLURhdGU6IEZyaSwgMzAgU2VwIDIw MjIgMTk6MTg6MzAgKzAyMDAKLVN1YmplY3Q6IFJlbW92ZSB0ZXN0IHRoYXQgaXMgbm93IHJlZHVu ZGFudCwgYWxsIHNlZWRzIGdpdmUgdGhlIHNhbWUgYW5zd2VyCi0KLS0tLQotIHNyYy9zYWdlL2dy b3Vwcy9tYXRyaXhfZ3BzL2Zpbml0ZWx5X2dlbmVyYXRlZC5weSB8IDMgLS0tCi0gMSBmaWxlIGNo YW5nZWQsIDMgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9ncm91cHMvbWF0 cml4X2dwcy9maW5pdGVseV9nZW5lcmF0ZWQucHkgYi9zcmMvc2FnZS9ncm91cHMvbWF0cml4X2dw cy9maW5pdGVseV9nZW5lcmF0ZWQucHkKLWluZGV4IGE2ZDNkYzAuLjYzOTU2YWQgMTAwNjQ0Ci0t LS0gYS9zcmMvc2FnZS9ncm91cHMvbWF0cml4X2dwcy9maW5pdGVseV9nZW5lcmF0ZWQucHkKLSsr KyBiL3NyYy9zYWdlL2dyb3Vwcy9tYXRyaXhfZ3BzL2Zpbml0ZWx5X2dlbmVyYXRlZC5weQotQEAg LTU2Myw5ICs1NjMsNiBAQCBjbGFzcyBGaW5pdGVseUdlbmVyYXRlZE1hdHJpeEdyb3VwX2dhcChN YXRyaXhHcm91cF9nYXApOgotICAgICAgICAgICAgIDIxNDk5MDg0ODAwCi0gICAgICAgICAgICAg c2FnZTogUCA9IEcuYXNfcGVybXV0YXRpb25fZ3JvdXAoKQotICAgICAgICAgICAgIHNhZ2U6IFBz bWFsbGVyID0gRy5hc19wZXJtdXRhdGlvbl9ncm91cChhbGdvcml0aG09InNtYWxsZXIiLCBzZWVk PTYpCi0tICAgICAgICAgICAgc2FnZTogUCA9PSBQc21hbGxlciAgIyBzZWUgdGhlIG5vdGUgYmVs b3cKLS0gICAgICAgICAgICBUcnVlCi0tICAgICAgICAgICAgc2FnZTogUHNtYWxsZXIgPSBHLmFz X3Blcm11dGF0aW9uX2dyb3VwKGFsZ29yaXRobT0ic21hbGxlciIpCi0gICAgICAgICAgICAgc2Fn ZTogUCA9PSBQc21hbGxlcgotICAgICAgICAgICAgIEZhbHNlCi0gICAgICAgICAgICAgc2FnZTog UC5jYXJkaW5hbGl0eSgpCi0tLSAKLWNnaXQgdjEuMC0xLWdkODhlCi0KZGlmZiAtLWdpdCBhL3Ny Y3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0NDY1LWZpeF9pbnZhbGlkX2VzY2FwZV9zZXF1 ZW5jZS0wNDk3MTMxOGYwMzJjYWY4ZGMxYzBkZTk0ODkzNDZkODk0NDA5MDkxLnBhdGNoIGIvc3Jj cGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzQ0NjUtZml4X2ludmFsaWRfZXNjYXBlX3NlcXVl bmNlLTA0OTcxMzE4ZjAzMmNhZjhkYzFjMGRlOTQ4OTM0NmQ4OTQ0MDkwOTEucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmZWRjYjc4Y2Y3MS4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0NDY1LWZpeF9pbnZhbGlkX2VzY2FwZV9z ZXF1ZW5jZS0wNDk3MTMxOGYwMzJjYWY4ZGMxYzBkZTk0ODkzNDZkODk0NDA5MDkxLnBhdGNoCisr KyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotY29tbWl0IDA0OTcxMzE4ZjAzMmNhZjhkYzFj MGRlOTQ4OTM0NmQ4OTQ0MDkwOTEKLUF1dGhvcjogSm9obiBILiBQYWxtaWVyaSA8amhwYWxtaWVy aTY0QGdtYWlsLmNvbT4KLURhdGU6ICAgV2VkIEF1ZyAzMSAxNDoyMjoyNiAyMDIyIC0wNzAwCi0K LSAgICB0cmFjIDM0NDY1OiBmaXggaW52YWxpZCBlc2NhcGUgc2VxdWVuY2UgaW4gZnVuY3Rpb25z L3NwZWNpYWwucHkKLQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2Z1bmN0aW9ucy9zcGVjaWFsLnB5 IGIvc3JjL3NhZ2UvZnVuY3Rpb25zL3NwZWNpYWwucHkKLWluZGV4IDAyNTk2ZTQ5NjIwLi45MDFm MDJmOWJlZSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2Z1bmN0aW9ucy9zcGVjaWFsLnB5Ci0rKysg Yi9zcmMvc2FnZS9mdW5jdGlvbnMvc3BlY2lhbC5weQotQEAgLTg0OSw3ICs4NDksNyBAQCBjbGFz cyBFbGxpcHRpY0YoQnVpbHRpbkZ1bmN0aW9uKToKLSAgICAgLSA6d2lraXBlZGlhOmBFbGxpcHRp Y19pbnRlZ3JhbCNJbmNvbXBsZXRlX2VsbGlwdGljX2ludGVncmFsX29mX3RoZV9maXJzdF9raW5k YAotICAgICAiIiIKLSAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgotLSAgICAgICAgIiIiCi0rICAg ICAgICByIiIiCi0gICAgICAgICBFWEFNUExFUzo6Ci0gCi0gICAgICAgICAgICAgc2FnZTogbG9h ZHMoZHVtcHMoZWxsaXB0aWNfZikpCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NhZ2VtYXRoL3BhdGNo ZXMvdHJhYy0zNDUzNy1zYWdlbWF0aC1wYXJpLTIuMTUucGF0Y2ggYi9zcmNwa2dzL3NhZ2VtYXRo L3BhdGNoZXMvdHJhYy0zNDUzNy1zYWdlbWF0aC1wYXJpLTIuMTUucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IGNjYWZhZDUwNzBjNC4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3Br Z3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0NTM3LXNhZ2VtYXRoLXBhcmktMi4xNS5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDE3NTAgKzAsMCBAQAotZGlmZiAtLWdpdCBhL2J1aWxkL3BrZ3Mv Z2lhYy9wYXRjaGVzL3BhcmlfMl8xNS5wYXRjaCBiL2J1aWxkL3BrZ3MvZ2lhYy9wYXRjaGVzL3Bh cmlfMl8xNS5wYXRjaAotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAuLmQy OTAwYTVmZmMKLS0tLSAvZGV2L251bGwKLSsrKyBiL2J1aWxkL3BrZ3MvZ2lhYy9wYXRjaGVzL3Bh cmlfMl8xNS5wYXRjaAotQEAgLTAsMCArMSwyMSBAQAotK0FOWUFSRyBwYXRjaAotKwotK2RpZmYg LS1naXQgYS9zcmMvcGFyaS5jYyBiL3NyYy9wYXJpLmNjCi0raW5kZXggNzZjZThlMS4uNTBkMDhh YiAxMDA2NDQKLSstLS0gYS9zcmMvcGFyaS5jYwotKysrKyBiL3NyYy9wYXJpLmNjCi0rQEAgLTQw LDYgKzQwLDEzIEBAIHVzaW5nIG5hbWVzcGFjZSBzdGQ7Ci0rIAotKyAjaWZkZWYgSEFWRV9MSUJQ QVJJCi0rIAotKysvLyBBbnlhcmcgZGlzYXBwZWFyZWQgZnJvbSBQQVJJIDIuMTUuMAotKysjaWZk ZWYgX19jcGx1c3BsdXMKLSsrIyAgZGVmaW5lIEFOWUFSRyAuLi4KLSsrI2Vsc2UKLSsrIyAgZGVm aW5lIEFOWUFSRwotKysjZW5kaWYKLSsrCi0rICNpZmRlZiBIQVZFX1BUSFJFQURfSAotKyAjaW5j bHVkZSA8cHRocmVhZC5oPgotKyAjZW5kaWYKLSsKLWRpZmYgLS1naXQgYS9idWlsZC9wa2dzL3Bh cmkvY2hlY2tzdW1zLmluaSBiL2J1aWxkL3BrZ3MvcGFyaS9jaGVja3N1bXMuaW5pCi1pbmRleCBi NzM2ZmVlZDMxLi5iYWZkMGYzNmY0IDEwMDY0NAotLS0tIGEvYnVpbGQvcGtncy9wYXJpL2NoZWNr c3Vtcy5pbmkKLSsrKyBiL2J1aWxkL3BrZ3MvcGFyaS9jaGVja3N1bXMuaW5pCi1AQCAtMSw1ICsx LDUgQEAKLSB0YXJiYWxsPXBhcmktVkVSU0lPTi50YXIuZ3oKLS1zaGExPWUwMTY0N2FhYjdlOTZh OGNiNDkyMmNmMjZhNGYyMjQzMzdjNjY0N2YKLS1tZDU9OTIyZjc0MGZjZGY4NjMwYjMwZDYzZGM3 NmI1OGY3NTYKLS1ja3N1bT0yOTcxMzM1MjUKLStzaGExPWNiYTliMjc5ZjY3ZDVlZmUyZmJiY2Nm M2JlNmU5NzI1ZjgxNmNmMDcKLSttZDU9NzZkNDMwZjFiZWExYjA3ZmEyYWQ5NzEyZGVlYWE3MzYK LStja3N1bT0xOTkwNzQzODk3Ci0gdXBzdHJlYW1fdXJsPWh0dHBzOi8vcGFyaS5tYXRoLnUtYm9y ZGVhdXguZnIvcHViL3BhcmkvdW5peC9wYXJpLVZFUlNJT04udGFyLmd6Ci1kaWZmIC0tZ2l0IGEv YnVpbGQvcGtncy9wYXJpL3BhY2thZ2UtdmVyc2lvbi50eHQgYi9idWlsZC9wa2dzL3BhcmkvcGFj a2FnZS12ZXJzaW9uLnR4dAotaW5kZXggYTFhNDIyNGRkNS4uNjhlNjllNDA1ZSAxMDA2NDQKLS0t LSBhL2J1aWxkL3BrZ3MvcGFyaS9wYWNrYWdlLXZlcnNpb24udHh0Ci0rKysgYi9idWlsZC9wa2dz L3BhcmkvcGFja2FnZS12ZXJzaW9uLnR4dAotQEAgLTEgKzEgQEAKLS0yLjEzLjMKLSsyLjE1LjAK LWRpZmYgLS1naXQgYS9zcmMvZG9jL2RlL3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdCBiL3Ny Yy9kb2MvZGUvdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1pbmRleCBhMDEyMjM0Yzk5Li5l MzE0OWZlOTQ5IDEwMDY0NAotLS0tIGEvc3JjL2RvYy9kZS90dXRvcmlhbC90b3VyX251bXRoZW9y eS5yc3QKLSsrKyBiL3NyYy9kb2MvZGUvdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1AQCAt MTU3LDcgKzE1Nyw3IEBAIGltcGxlbWVudGllcnQuCi0gICAgIFVuaXZhcmlhdGUgUXVvdGllbnQg UG9seW5vbWlhbCBSaW5nIGluIGEgb3ZlciBSYXRpb25hbCBGaWVsZCB3aXRoIG1vZHVsdXMKLSAg ICAgeF4zICsgeF4yIC0gMip4ICsgOAotICAgICBzYWdlOiBLLnVuaXRzKCkKLS0gICAgKDMqYV4y ICsgMTMqYSArIDEzLCkKLSsgICAgKC0zKmFeMiAtIDEzKmEgLSAxMywpCi0gICAgIHNhZ2U6IEsu ZGlzY3JpbWluYW50KCkKLSAgICAgLTUwMwotICAgICBzYWdlOiBLLmNsYXNzX2dyb3VwKCkKLWRp ZmYgLS1naXQgYS9zcmMvZG9jL2VuL3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdCBiL3NyYy9k b2MvZW4vdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1pbmRleCAzMDY0ZDEwMGUyLi4wNzVl MGFjMGFkIDEwMDY0NAotLS0tIGEvc3JjL2RvYy9lbi90dXRvcmlhbC90b3VyX251bXRoZW9yeS5y c3QKLSsrKyBiL3NyYy9kb2MvZW4vdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1AQCAtMTU3 LDcgKzE1Nyw3IEBAIE51bWJlckZpZWxkIGNsYXNzLgotICAgICBVbml2YXJpYXRlIFF1b3RpZW50 IFBvbHlub21pYWwgUmluZyBpbiBhIG92ZXIgUmF0aW9uYWwgRmllbGQgd2l0aCBtb2R1bHVzCi0g ICAgIHheMyArIHheMiAtIDIqeCArIDgKLSAgICAgc2FnZTogSy51bml0cygpCi0tICAgICgzKmFe MiArIDEzKmEgKyAxMywpCi0rICAgICgtMyphXjIgLSAxMyphIC0gMTMsKQotICAgICBzYWdlOiBL LmRpc2NyaW1pbmFudCgpCi0gICAgIC01MDMKLSAgICAgc2FnZTogSy5jbGFzc19ncm91cCgpCi1k aWZmIC0tZ2l0IGEvc3JjL2RvYy9lcy90dXRvcmlhbC90b3VyX251bXRoZW9yeS5yc3QgYi9zcmMv ZG9jL2VzL3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdAotaW5kZXggYTFmN2QxYTg3Yi4uNDhl NTM3NmNmZSAxMDA2NDQKLS0tLSBhL3NyYy9kb2MvZXMvdHV0b3JpYWwvdG91cl9udW10aGVvcnku cnN0Ci0rKysgYi9zcmMvZG9jL2VzL3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdAotQEAgLTE0 MCw3ICsxNDAsNyBAQCBWYXJpb3MgbcOpdG9kb3MgcmVsYWNpb25hZG9zIGVzdMOhbiBpbXBsZW1l bnRhZG9zIGVuIGxhIGNsYXNlIGBgTnVtYmVyRmllbGRgYDo6Ci0gICAgIFVuaXZhcmlhdGUgUXVv dGllbnQgUG9seW5vbWlhbCBSaW5nIGluIGEgb3ZlciBSYXRpb25hbCBGaWVsZCB3aXRoIG1vZHVs dXMKLSAgICAgeF4zICsgeF4yIC0gMip4ICsgOAotICAgICBzYWdlOiBLLnVuaXRzKCkKLS0gICAg KDMqYV4yICsgMTMqYSArIDEzLCkKLSsgICAgKC0zKmFeMiAtIDEzKmEgLSAxMywpCi0gICAgIHNh Z2U6IEsuZGlzY3JpbWluYW50KCkKLSAgICAgLTUwMwotICAgICBzYWdlOiBLLmNsYXNzX2dyb3Vw KCkKLWRpZmYgLS1naXQgYS9zcmMvZG9jL2ZyL3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdCBi L3NyYy9kb2MvZnIvdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1pbmRleCA4NzEwOTJmNWZh Li5kMWIyZmVlODgzIDEwMDY0NAotLS0tIGEvc3JjL2RvYy9mci90dXRvcmlhbC90b3VyX251bXRo ZW9yeS5yc3QKLSsrKyBiL3NyYy9kb2MvZnIvdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1A QCAtMTU5LDcgKzE1OSw3IEBAIGRhbnMgbGEgY2xhc3NlIE51bWJlckZpZWxkLgotICAgICBVbml2 YXJpYXRlIFF1b3RpZW50IFBvbHlub21pYWwgUmluZyBpbiBhIG92ZXIgUmF0aW9uYWwgRmllbGQg d2l0aCBtb2R1bHVzCi0gICAgIHheMyArIHheMiAtIDIqeCArIDgKLSAgICAgc2FnZTogSy51bml0 cygpCi0tICAgICgzKmFeMiArIDEzKmEgKyAxMywpCi0rICAgICgtMyphXjIgLSAxMyphIC0gMTMs KQotICAgICBzYWdlOiBLLmRpc2NyaW1pbmFudCgpCi0gICAgIC01MDMKLSAgICAgc2FnZTogSy5j bGFzc19ncm91cCgpCi1kaWZmIC0tZ2l0IGEvc3JjL2RvYy9qYS90dXRvcmlhbC90b3VyX251bXRo ZW9yeS5yc3QgYi9zcmMvZG9jL2phL3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdAotaW5kZXgg NDdhZjY4Yzg2Mi4uNGQ0ZWQ1MmQ1MCAxMDA2NDQKLS0tLSBhL3NyYy9kb2MvamEvdHV0b3JpYWwv dG91cl9udW10aGVvcnkucnN0Ci0rKysgYi9zcmMvZG9jL2phL3R1dG9yaWFsL3RvdXJfbnVtdGhl b3J5LnJzdAotQEAgLTE2MSw3ICsxNjEsNyBAQCBTYWdl44Gr44GvIDptYXRoOmBwYCBcLemAsuaV sOS9k+OCgue1hOi+vOOBvuOCjOOBpuOBhOOCi++8jgotICAgICBVbml2YXJpYXRlIFF1b3RpZW50 IFBvbHlub21pYWwgUmluZyBpbiBhIG92ZXIgUmF0aW9uYWwgRmllbGQgd2l0aCBtb2R1bHVzCi0g ICAgIHheMyArIHheMiAtIDIqeCArIDgKLSAgICAgc2FnZTogSy51bml0cygpCi0tICAgICgzKmFe MiArIDEzKmEgKyAxMywpCi0rICAgICgtMyphXjIgLSAxMyphIC0gMTMsKQotICAgICBzYWdlOiBL LmRpc2NyaW1pbmFudCgpCi0gICAgIC01MDMKLSAgICAgc2FnZTogSy5jbGFzc19ncm91cCgpCi1k aWZmIC0tZ2l0IGEvc3JjL2RvYy9wdC90dXRvcmlhbC90b3VyX251bXRoZW9yeS5yc3QgYi9zcmMv ZG9jL3B0L3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdAotaW5kZXggNjM3MWI0OTFlYS4uYTNk Yzk3M2E5MyAxMDA2NDQKLS0tLSBhL3NyYy9kb2MvcHQvdHV0b3JpYWwvdG91cl9udW10aGVvcnku cnN0Ci0rKysgYi9zcmMvZG9jL3B0L3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdAotQEAgLTE1 Nyw3ICsxNTcsNyBAQCBOdW1iZXJGaWVsZC4KLSAgICAgVW5pdmFyaWF0ZSBRdW90aWVudCBQb2x5 bm9taWFsIFJpbmcgaW4gYSBvdmVyIFJhdGlvbmFsIEZpZWxkIHdpdGggbW9kdWx1cyAKLSAgICAg eF4zICsgeF4yIC0gMip4ICsgOAotICAgICBzYWdlOiBLLnVuaXRzKCkKLS0gICAgKDMqYV4yICsg MTMqYSArIDEzLCkKLSsgICAgKC0zKmFeMiAtIDEzKmEgLSAxMywpCi0gICAgIHNhZ2U6IEsuZGlz Y3JpbWluYW50KCkKLSAgICAgLTUwMwotICAgICBzYWdlOiBLLmNsYXNzX2dyb3VwKCkKLWRpZmYg LS1naXQgYS9zcmMvZG9jL3J1L3R1dG9yaWFsL3RvdXJfbnVtdGhlb3J5LnJzdCBiL3NyYy9kb2Mv cnUvdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1pbmRleCA2NTJhYmZiYzk5Li5hOTg1ZDQ5 ZmJkIDEwMDY0NAotLS0tIGEvc3JjL2RvYy9ydS90dXRvcmlhbC90b3VyX251bXRoZW9yeS5yc3QK LSsrKyBiL3NyYy9kb2MvcnUvdHV0b3JpYWwvdG91cl9udW10aGVvcnkucnN0Ci1AQCAtMTUwLDcg KzE1MCw3IEBAIFNhZ2Ug0YHQvtC00LXRgNC20LjRgiDRgdGC0LDQvdC00LDRgNGC0L3Ri9C1INGE 0YPQvdC60YbQuNC4INGC0LXQvtGA0LjQuCDRh9C40YEKLSAgICAgVW5pdmFyaWF0ZSBRdW90aWVu dCBQb2x5bm9taWFsIFJpbmcgaW4gYSBvdmVyIFJhdGlvbmFsIEZpZWxkIHdpdGggbW9kdWx1cwot ICAgICB4XjMgKyB4XjIgLSAyKnggKyA4Ci0gICAgIHNhZ2U6IEsudW5pdHMoKQotLSAgICAoMyph XjIgKyAxMyphICsgMTMsKQotKyAgICAoLTMqYV4yIC0gMTMqYSAtIDEzLCkKLSAgICAgc2FnZTog Sy5kaXNjcmltaW5hbnQoKQotICAgICAtNTAzCi0gICAgIHNhZ2U6IEsuY2xhc3NfZ3JvdXAoKQot ZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2FyaXRoL21pc2MucHkgYi9zcmMvc2FnZS9hcml0aC9taXNj LnB5Ci1pbmRleCBlNTcwNzY2NDZmLi5mZWM3NWQwN2MxIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2Uv YXJpdGgvbWlzYy5weQotKysrIGIvc3JjL3NhZ2UvYXJpdGgvbWlzYy5weQotQEAgLTE0NjUsMTMg KzE0NjUsMTMgQEAgZGVmIGRpdmlzb3JzKG4pOgotIAotICAgICAgICAgc2FnZTogSy48YT4gPSBR dWFkcmF0aWNGaWVsZCg3KQotICAgICAgICAgc2FnZTogZGl2aXNvcnMoSy5pZGVhbCg3KSkKLS0g ICAgICAgIFtGcmFjdGlvbmFsIGlkZWFsICgxKSwgRnJhY3Rpb25hbCBpZGVhbCAoLWEpLCBGcmFj dGlvbmFsIGlkZWFsICg3KV0KLSsgICAgICAgIFtGcmFjdGlvbmFsIGlkZWFsICgxKSwgRnJhY3Rp b25hbCBpZGVhbCAoYSksIEZyYWN0aW9uYWwgaWRlYWwgKDcpXQotICAgICAgICAgc2FnZTogZGl2 aXNvcnMoSy5pZGVhbCgzKSkKLSAgICAgICAgIFtGcmFjdGlvbmFsIGlkZWFsICgxKSwgRnJhY3Rp b25hbCBpZGVhbCAoMyksCi0tICAgICAgICBGcmFjdGlvbmFsIGlkZWFsICgtYSArIDIpLCBGcmFj dGlvbmFsIGlkZWFsICgtYSAtIDIpXQotKyAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoYSAtIDIp LCBGcmFjdGlvbmFsIGlkZWFsIChhICsgMildCi0gICAgICAgICBzYWdlOiBkaXZpc29ycyhLLmlk ZWFsKDM1KSkKLS0gICAgICAgIFtGcmFjdGlvbmFsIGlkZWFsICgxKSwgRnJhY3Rpb25hbCBpZGVh bCAoNSksIEZyYWN0aW9uYWwgaWRlYWwgKC1hKSwKLS0gICAgICAgIEZyYWN0aW9uYWwgaWRlYWwg KDcpLCBGcmFjdGlvbmFsIGlkZWFsICgtNSphKSwgRnJhY3Rpb25hbCBpZGVhbCAoMzUpXQotKyAg ICAgICAgW0ZyYWN0aW9uYWwgaWRlYWwgKDEpLCBGcmFjdGlvbmFsIGlkZWFsICg1KSwgRnJhY3Rp b25hbCBpZGVhbCAoYSksCi0rICAgICAgICBGcmFjdGlvbmFsIGlkZWFsICg3KSwgRnJhY3Rpb25h bCBpZGVhbCAoNSphKSwgRnJhY3Rpb25hbCBpZGVhbCAoMzUpXQotIAotICAgICBURVNUUzo6Ci0g Ci1AQCAtMjU2OSw3ICsyNTY5LDcgQEAgZGVmIGZhY3RvcihuLCBwcm9vZj1Ob25lLCBpbnRfPUZh bHNlLCBhbGdvcml0aG09J3BhcmknLCB2ZXJib3NlPTAsICoqa3dkcyk6Ci0gCi0gICAgICAgICBz YWdlOiBLLjxpPiA9IFF1YWRyYXRpY0ZpZWxkKC0xKQotICAgICAgICAgc2FnZTogZmFjdG9yKDEy MiAtIDQ1NCppKQotLSAgICAgICAgKC0zKmkgLSAyKSAqICgtaSAtIDIpXjMgKiAoaSArIDEpXjMg KiAoaSArIDQpCi0rICAgICAgICAoLWkpICogKC1pIC0gMileMyAqIChpICsgMSleMyAqICgtMipp ICsgMykgKiAoaSArIDQpCi0gCi0gICAgIFRvIGFjY2VzcyB0aGUgZGF0YSBpbiBhIGZhY3Rvcml6 YXRpb246OgotIAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2R5bmFtaWNzL2FyaXRobWV0aWNfZHlu YW1pY3MvcHJvamVjdGl2ZV9kcy5weSBiL3NyYy9zYWdlL2R5bmFtaWNzL2FyaXRobWV0aWNfZHlu YW1pY3MvcHJvamVjdGl2ZV9kcy5weQotaW5kZXggY2RmYzExYTllNS4uYjZlMTI4MGQ2ZSAxMDA2 NDQKLS0tLSBhL3NyYy9zYWdlL2R5bmFtaWNzL2FyaXRobWV0aWNfZHluYW1pY3MvcHJvamVjdGl2 ZV9kcy5weQotKysrIGIvc3JjL3NhZ2UvZHluYW1pY3MvYXJpdGhtZXRpY19keW5hbWljcy9wcm9q ZWN0aXZlX2RzLnB5Ci1AQCAtNzgyNSw5ICs3ODI1LDkgQEAgY2xhc3MgRHluYW1pY2FsU3lzdGVt X3Byb2plY3RpdmVfZmllbGQoRHluYW1pY2FsU3lzdGVtX3Byb2plY3RpdmUsCi0gICAgICAgICAg ICAgc2FnZTogZiA9IER5bmFtaWNhbFN5c3RlbV9wcm9qZWN0aXZlKFt4XjIgKyBRUWJhcihzcXJ0 KDMpKSp5XjIsIHleMiwgUVFiYXIoc3FydCgyKSkqel4yXSkKLSAgICAgICAgICAgICBzYWdlOiBm LnJlZHVjZV9iYXNlX2ZpZWxkKCkKLSAgICAgICAgICAgICBEeW5hbWljYWwgU3lzdGVtIG9mIFBy b2plY3RpdmUgU3BhY2Ugb2YgZGltZW5zaW9uIDIgb3ZlciBOdW1iZXIgRmllbGQgaW4gYSB3aXRo Ci0tICAgICAgICAgICAgZGVmaW5pbmcgcG9seW5vbWlhbCB5XjQgLSA0KnleMiArIDEgd2l0aCBh ID0gMS45MzE4NTE2NTI1NzgxMzc/Ci0rICAgICAgICAgICAgZGVmaW5pbmcgcG9seW5vbWlhbCB5 XjQgLSA0KnleMiArIDEgd2l0aCBhID0gLTAuNTE3NjM4MDkwMjA1MDQxNT8KLSAgICAgICAgICAg ICAgIERlZm46IERlZmluZWQgb24gY29vcmRpbmF0ZXMgYnkgc2VuZGluZyAoeCA6IHkgOiB6KSB0 bwotLSAgICAgICAgICAgICAgICAgICAgKHheMiArIChhXjIgLSAyKSp5XjIgOiB5XjIgOiAoYV4z IC0gMyphKSp6XjIpCi0rICAgICAgICAgICAgICAgICAgICAoeF4yICsgKC1hXjIgKyAyKSp5XjIg OiB5XjIgOiAoYV4zIC0gMyphKSp6XjIpCi0gCi0gICAgICAgICA6OgotIAotZGlmZiAtLWdpdCBh L3NyYy9zYWdlL2V4dF9kYXRhL3Bhcmkvc2ltb24vZWxsUS5ncCBiL3NyYy9zYWdlL2V4dF9kYXRh L3Bhcmkvc2ltb24vZWxsUS5ncAotaW5kZXggNDIwYWY4ZjZhMi4uNjVlODM4Njc3OSAxMDA2NDQK LS0tLSBhL3NyYy9zYWdlL2V4dF9kYXRhL3Bhcmkvc2ltb24vZWxsUS5ncAotKysrIGIvc3JjL3Nh Z2UvZXh0X2RhdGEvcGFyaS9zaW1vbi9lbGxRLmdwCi1AQCAtNDAsNyArNDAsNyBAQAotICAgZ3Ag PiBcciBlbGxjb21tb24uZ3AKLSAgIGdwID4gXHIgZWxsUS5ncAotIAotLSAgVGhlIG1haW4gZnVu Y3Rpb24gaXMgZWxscmFuaygpLCB3aGljaCB0YWtlcyBhcyBhbiBhcmd1bWVudAotKyAgVGhlIG1h aW4gZnVuY3Rpb24gaXMgZWxsUV9lbGxyYW5rKCksIHdoaWNoIHRha2VzIGFzIGFuIGFyZ3VtZW50 Ci0gICBhbnkgZWxsaXB0aWMgY3VydmUgaW4gdGhlIGZvcm0gW2ExLGEyLGEzLGE0LGE2XQotICAg dGhlIHJlc3VsdCBpcyBhIHZlY3RvciBbcixzLHZdLCB3aGVyZQotICAgICByIGlzIGEgbG93ZXIg Ym91bmQgZm9yIHRoZSByYW5rLAotQEAgLTUwLDcgKzUwLDcgQEAKLSAgIEV4YW1wbGU6Ci0gCi0g ICBncCA+IGVsbCA9IFsxLDIsMyw0LDVdOwotLSAgZ3AgPiBlbGxyYW5rKGVsbCkKLSsgIGdwID4g ZWxsUV9lbGxyYW5rKGVsbCkKLSAgICUxID0gWzEsIDEsIFtbMSwyXV0KLSAgIEluIHRoaXMgZXhh bXBsZSwgdGhlIHJhbmsgaXMgZXhhY3RseSAxLCBhbmQgWzEsMl0gaGFzIGluZmluaXRlIG9yZGVy LgotIAotQEAgLTkyLDcgKzkyLDcgQEAKLSAgIFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxc XFxcXFxcXFxcXFxcXFxcXFwKLSAKLSAgIEV4cGxpY2F0aW9ucyBzdWNjaW50ZXMgOgotLSAgTGEg Zm9uY3Rpb24gZWxscmFuaygpIGFjY2VwdGUgdG91dGVzIGxlcyBjb3VyYmVzIHNvdXMgbGEgZm9y bWUKLSsgIExhIGZvbmN0aW9uIGVsbFFfZWxscmFuaygpIGFjY2VwdGUgdG91dGVzIGxlcyBjb3Vy YmVzIHNvdXMgbGEgZm9ybWUKLSAgIFthMSxhMixhMyxhNCxhNl0KLSAgIExlcyBjb2VmZmljaWVu dHMgcGV1dmVudCBldHJlIGVudGllcnMgb3Ugbm9uLgotICAgTCdhbGdvcml0aG1lIHV0aWxpc2Ug ZXN0IGNlbHVpIGRlIGxhIDItZGVzY2VudGUuCi1AQCAtMTAwLDcgKzEwMCw3IEBACi0gICBJbCBz dWZmaXQgZGUgdGFwZXIgOiAKLSAKLSAgIGdwID4gZWxsID0gW2ExLGEyLGEzLGE0LGE2XTsKLS0g IGdwID4gZWxscmFuayhlbGwpCi0rICBncCA+IGVsbFFfZWxscmFuayhlbGwpCi0gCi0gICBSZXRv dXJuZSB1biB2ZWN0ZXVyIFtyLHMsdl0gb3UKLSAgICAgciBlc3QgbGUgcmFuZyBwcm9iYWJsZSAo Yydlc3QgdG91am91cnMgdW5lIG1pbm9yYXRpb24gZHUgcmFuZyksCi1AQCAtMTEwLDcgKzExMCw3 IEBACi0gICBFeGVtcGxlIDoKLSAKLSAgIGdwID4gZWxsID0gWzEsMiwzLDQsNV07Ci0tICBncCA+ IGVsbHJhbmsoZWxsKQotKyAgZ3AgPiBlbGxRX2VsbHJhbmsoZWxsKQotICAgJTEgPSBbMSwgMSwg W1sxLDJdXQotICAgSWNpLCBsZSByYW5nIGVzdCBleGFjdGVtZW50IDEsIGV0IGxlIHBvaW50IFsx LDJdIGVzdCBkJ29yZHJlIGluZmluaS4KLSAKLUBAIC0xNTcxLDEyICsxNTcxLDEyIEBAIGlmKCBE RUJVR0xFVkVMX2VsbCA+PSA0LCBwcmludCgiICAgIGVuZCBvZiBlbGwyZGVzY2VudF9nZW4iKSk7 Ci0gICAgIHByaW50KCJyYW5rKEUvUSkgICAgPj0gIixtMSkKLSAgICk7Ci0gfQotLXtlbGxyYW5r KGVsbCxoZWxwPVtdKSA9Ci0re2VsbFFfZWxscmFuayhlbGwsaGVscD1bXSkgPQotIFxcIEFsZ29y aXRobSBvZiAyLWRlc2NlbnQgb24gdGhlIGVsbGlwdGljIGN1cnZlIGVsbC4KLSBcXCBoZWxwIGlz IGEgbGlzdCBvZiBrbm93biBwb2ludHMgb24gZWxsLgotIG15KHVyc3QsdXJzdDEsZGVuLGVxZWxs LHRvcnMyLGJuZixyYW5nLHRpbWUxKTsKLSAKLS1pZiggREVCVUdMRVZFTF9lbGwgPj0gMywgcHJp bnQoIiAgIHN0YXJ0aW5nIGVsbHJhbmsiKSk7Ci0raWYoIERFQlVHTEVWRUxfZWxsID49IDMsIHBy aW50KCIgICBzdGFydGluZyBlbGxRX2VsbHJhbmsiKSk7Ci0gICBpZiggI2VsbCA8IDEzLCBlbGwg PSBlbGxpbml0KGVsbCkpOwotIAotIFxcIGtpbGwgdGhlIGNvZWZmaWNpZW50cyBhMSBhbmQgYTMK LUBAIC0xNjMwLDcgKzE2MzAsNyBAQCBpZiggREVCVUdMRVZFTF9lbGwgPj0gMSwgcHJpbnQoIiBF bGxpcHRpYyBjdXJ2ZTogWV4yID0gIixlcWVsbCkpOwotICAgKSk7Ci0gCi0gICByYW5nWzNdID0g ZWxsY2hhbmdlcG9pbnQocmFuZ1szXSxlbGxpbnZlcnR1cnN0KHVyc3QpKTsKLS1pZiggREVCVUdM RVZFTF9lbGwgPj0gMywgcHJpbnQoIiAgIGVuZCBvZiBlbGxyYW5rIikpOwotK2lmKCBERUJVR0xF VkVMX2VsbCA+PSAzLCBwcmludCgiICAgZW5kIG9mIGVsbFFfZWxscmFuayIpKTsKLSAKLSAgIHJl dHVybihyYW5nKTsKLSB9Ci1AQCAtMjEwNiwxMyArMjEwNiwxMyBAQCBpZiggREVCVUdMRVZFTF9l bGwgPj0gMywgcHJpbnQoIiAgIGVuZCBvZiBlbGwyZGVzY2VudF92aWFpc29nIikpOwotIHsKLSBc XCAgICAgICAgICAgICAgICAgIGZ1bmN0aW9ucyBmb3IgZWxsaXB0aWMgY3VydmVzCi0gICBhZGRo ZWxwKGVsbDJkZXNjZW50X2NvbXBsZXRlLAotLSAgICAiZWxsMmRlc2NlbnRfY29tcGxldGUoZTEs ZTIsZTMpOiBQZXJmb3JtcyBhIGNvbXBsZXRlIDItZGVzY2VudCBvbiB0aGUgZWxsaXB0aWMgY3Vy dmUgeV4yID0gKHgtZTEpKih4LWUyKSooeC1lMykuIFNlZSA/ZWxscmFuayBmb3IgdGhlIGZvcm1h dCBvZiB0aGUgb3V0cHV0LiIpOwotKyAgICAiZWxsMmRlc2NlbnRfY29tcGxldGUoZTEsZTIsZTMp OiBQZXJmb3JtcyBhIGNvbXBsZXRlIDItZGVzY2VudCBvbiB0aGUgZWxsaXB0aWMgY3VydmUgeV4y ID0gKHgtZTEpKih4LWUyKSooeC1lMykuIFNlZSA/ZWxsUV9lbGxyYW5rIGZvciB0aGUgZm9ybWF0 IG9mIHRoZSBvdXRwdXQuIik7Ci0gICBhZGRoZWxwKGVsbDJkZXNjZW50X2dlbiwKLS0gICAgImVs bDJkZXNjZW50X2dlbigoRSxibmYsaz0xLGhlbHA9W10pOiBFIGlzIGEgdmVjdG9yIG9mIHRoZSBm b3JtIFswLEEsMCxCLENdLCAob3IgdGhlIHJlc3VsdCBvZiBlbGxpbml0IG9mIHN1Y2ggYSB2ZWN0 b3IpIEEsQixDIGludGVnZXJzIHN1Y2ggdGhhdCB4XjMrQSp4XjIrQip4K0M7IGJuZiBpcyB0aGUg Y29ycmVzcG9uZGluZyBibmZpbml0KCwxKTsgUGVyZm9ybXMgMi1kZXNjZW50IG9uIHRoZSBlbGxp cHRpYyBjdXJ2ZSBFazogayp5XjI9eF4zK0EqeF4yK0IqeCtDLiBTZWUgP2VsbHJhbmsgZm9yIHRo ZSBmb3JtYXQgb2YgdGhlIG91dHB1dC4iKTsKLSsgICAgImVsbDJkZXNjZW50X2dlbigoRSxibmYs az0xLGhlbHA9W10pOiBFIGlzIGEgdmVjdG9yIG9mIHRoZSBmb3JtIFswLEEsMCxCLENdLCAob3Ig dGhlIHJlc3VsdCBvZiBlbGxpbml0IG9mIHN1Y2ggYSB2ZWN0b3IpIEEsQixDIGludGVnZXJzIHN1 Y2ggdGhhdCB4XjMrQSp4XjIrQip4K0M7IGJuZiBpcyB0aGUgY29ycmVzcG9uZGluZyBibmZpbml0 KCwxKTsgUGVyZm9ybXMgMi1kZXNjZW50IG9uIHRoZSBlbGxpcHRpYyBjdXJ2ZSBFazogayp5XjI9 eF4zK0EqeF4yK0IqeCtDLiBTZWUgP2VsbFFfZWxscmFuayBmb3IgdGhlIGZvcm1hdCBvZiB0aGUg b3V0cHV0LiIpOwotICAgYWRkaGVscChlbGwyZGVzY2VudF92aWFpc29nLAotLSAgICAiZWxsMmRl c2NlbnRfdmlhaXNvZyhFLGhlbHA9W10pOiBFIGlzIGFuIGVsbGlwdGljIGN1cnZlIG9mIHRoZSBm b3JtIFswLGEsMCxiLDBdLCB3aXRoIGEsIGIgaW50ZWdlcnMuIFBlcmZvcm1zIGEgMi1kZXNjZW50 IHZpYSBpc29nZW55IG9uIEUuIFNlZSA/ZWxscmFuayBmb3IgdGhlIGZvcm1hdCBvZiB0aGUgb3V0 cHV0LiIpOwotLSAgYWRkaGVscChlbGxyYW5rLAotLSAgICAiZWxscmFuayhFLGhlbHA9W10pOiBF IGlzIGFueSBlbGxpcHRpYyBjdXJ2ZSBkZWZpbmVkIG92ZXIgUS4gUmV0dXJucyBhIHZlY3RvciBb cixzLHZdLCB3aGVyZSByIGlzIGEgbG93ZXIgYm91bmQgZm9yIHRoZSByYW5rIG9mIEUsIHMgaXMg dGhlIHJhbmsgb2YgaXRzIDItU2VsbWVyIGdyb3VwIGFuZCB2IGlzIGEgbGlzdCBvZiBpbmRlcGVu ZGFudCBwb2ludHMgaW4gRShRKS8yRShRKS4gSWYgaGVscCBpcyBhIHZlY3RvciBvZiBub250cml2 aWFsIHBvaW50cyBvbiBFLCB0aGUgcmVzdWx0IG1pZ2h0IGJlIGZhc3Rlci4gVGhpcyBmdW5jdGlv biBtaWdodCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZWxsdG9yczIoRSkuIFNlZSBhbHNv ID9kZWZhdWx0X2VsbFEiKTsKLSsgICAgImVsbDJkZXNjZW50X3ZpYWlzb2coRSxoZWxwPVtdKTog RSBpcyBhbiBlbGxpcHRpYyBjdXJ2ZSBvZiB0aGUgZm9ybSBbMCxhLDAsYiwwXSwgd2l0aCBhLCBi IGludGVnZXJzLiBQZXJmb3JtcyBhIDItZGVzY2VudCB2aWEgaXNvZ2VueSBvbiBFLiBTZWUgP2Vs bFFfZWxscmFuayBmb3IgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0LiIpOwotKyAgYWRkaGVscChl bGxRX2VsbHJhbmssCi0rICAgICJlbGxRX2VsbHJhbmsoRSxoZWxwPVtdKTogRSBpcyBhbnkgZWxs aXB0aWMgY3VydmUgZGVmaW5lZCBvdmVyIFEuIFJldHVybnMgYSB2ZWN0b3IgW3Iscyx2XSwgd2hl cmUgciBpcyBhIGxvd2VyIGJvdW5kIGZvciB0aGUgcmFuayBvZiBFLCBzIGlzIHRoZSByYW5rIG9m IGl0cyAyLVNlbG1lciBncm91cCBhbmQgdiBpcyBhIGxpc3Qgb2YgaW5kZXBlbmRhbnQgcG9pbnRz IGluIEUoUSkvMkUoUSkuIElmIGhlbHAgaXMgYSB2ZWN0b3Igb2Ygbm9udHJpdmlhbCBwb2ludHMg b24gRSwgdGhlIHJlc3VsdCBtaWdodCBiZSBmYXN0ZXIuIFRoaXMgZnVuY3Rpb24gbWlnaHQgYmUg dXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGVsbHRvcnMyKEUpLiBTZWUgYWxzbyA/ZGVmYXVsdF9l bGxRIik7Ci0gICBhZGRoZWxwKGVsbGhhbGYsCi0gICAgICJlbGxoYWxmKEUsUCk6IHJldHVybnMg dGhlIHZlY3RvciBvZiBhbGwgcG9pbnRzIFEgb24gdGhlIGVsbGlwdGljIGN1cnZlIEUgc3VjaCB0 aGF0IDJRID0gUCIpOwotICAgYWRkaGVscChlbGxyZWRnZW4sCi1AQCAtMjE0Myw3ICsyMTQzLDcg QEAgaWYoIERFQlVHTEVWRUxfZWxsID49IDMsIHByaW50KCIgICBlbmQgb2YgZWxsMmRlc2NlbnRf dmlhaXNvZyIpKTsKLSAKLSBcXCAgICAgICAgICAgICAgICAgIG90aGVycwotICAgYWRkaGVscChk ZWZhdWx0X2VsbFEsCi0tICAgICJkZWZhdWx0X2VsbFEoREVCVUdMRVZFTF9lbGwsIExJTTEsIExJ TTMsIExJTVRSSVYsIEVMTFJFREdFTkZMQUcsIENPTVBMRVRFLCBNQVhQUk9CLCBMSU1CSUdQUklN RSk6IHNldCB0aGUgdmFsdWUgb2YgdGhlIGdsb2JhbCB2YXJpYWJsZXMgdXNlZCBmb3IgZWxscmFu aygpIGFuZCBvdGhlciByZWxhdGVkIGZ1bmN0aW9ucy4gREVCVUdMRVZFTF9lbGw6IDAtNTogY2hv b3NlIHRoZSBxdWFudGl0eSBvZiBpbmZvcm1hdGlvbiBwcmludGVkIGR1cmluZyB0aGUgY29tcHV0 YXRpb24gKGRlZmF1bHQ9MDogcHJpbnQgbm90aGluZyk7IExJTTEgKHJlc3AgTElNMyk6IHNlYXJj aCBsaW1pdCBmb3IgZWFzeSAocmVzcCBoYXJkKSBwb2ludHMgb24gcXVhcnRpY3M7IExJTVRSSVY6 IHNlYXJjaCBsaW1pdCBmb3IgdHJpdmlhbCBwb2ludHMgb24gZWxsaXB0aWMgY3VydmVzOyBFTExS RURHRU5GTEFHOiBpZiAhPSAwLCB0cnkgdG8gcmVkdWNlIHRoZSBnZW5lcmF0b3JzIGF0IHRoZSBl bmQ7IENPTVBMRVRFOiBpZiAhPSAwIGFuZCBmdWxsIDItdG9yc2lvbiwgdXNlIGNvbXBsZXRlIDIt ZGVzY2VudCwgb3RoZXJ3aXNlIHZpYSAyLWlzb2dlbnk7IE1BWFBST0IsIExJTUJJR1BSSU1FOiB0 ZWNobmljYWwuIik7Ci0rICAgICJkZWZhdWx0X2VsbFEoREVCVUdMRVZFTF9lbGwsIExJTTEsIExJ TTMsIExJTVRSSVYsIEVMTFJFREdFTkZMQUcsIENPTVBMRVRFLCBNQVhQUk9CLCBMSU1CSUdQUklN RSk6IHNldCB0aGUgdmFsdWUgb2YgdGhlIGdsb2JhbCB2YXJpYWJsZXMgdXNlZCBmb3IgZWxsUV9l bGxyYW5rKCkgYW5kIG90aGVyIHJlbGF0ZWQgZnVuY3Rpb25zLiBERUJVR0xFVkVMX2VsbDogMC01 OiBjaG9vc2UgdGhlIHF1YW50aXR5IG9mIGluZm9ybWF0aW9uIHByaW50ZWQgZHVyaW5nIHRoZSBj b21wdXRhdGlvbiAoZGVmYXVsdD0wOiBwcmludCBub3RoaW5nKTsgTElNMSAocmVzcCBMSU0zKTog c2VhcmNoIGxpbWl0IGZvciBlYXN5IChyZXNwIGhhcmQpIHBvaW50cyBvbiBxdWFydGljczsgTElN VFJJVjogc2VhcmNoIGxpbWl0IGZvciB0cml2aWFsIHBvaW50cyBvbiBlbGxpcHRpYyBjdXJ2ZXM7 IEVMTFJFREdFTkZMQUc6IGlmICE9IDAsIHRyeSB0byByZWR1Y2UgdGhlIGdlbmVyYXRvcnMgYXQg dGhlIGVuZDsgQ09NUExFVEU6IGlmICE9IDAgYW5kIGZ1bGwgMi10b3JzaW9uLCB1c2UgY29tcGxl dGUgMi1kZXNjZW50LCBvdGhlcndpc2UgdmlhIDItaXNvZ2VueTsgTUFYUFJPQiwgTElNQklHUFJJ TUU6IHRlY2huaWNhbC4iKTsKLSAvKiAgYWRkaGVscChERUJVR0xFVkVMX2VsbCwKLSAgICAgIkRF QlVHTEVWRUxfZWxsOiBDaG9vc2UgYSBoaWdoZXIgdmFsdWUgb2YgdGhpcyBnbG9iYWwgdmFyaWFi bGUgdG8gaGF2ZSBtb3JlIGRldGFpbHMgb2YgdGhlIGNvbXB1dGF0aW9ucyBwcmludGVkIGR1cmlu ZyB0aGUgMi1kZXNjZW50IGFsZ29yaXRobS4gMCA9IGRvbid0IHByaW50IGFueXRoaW5nOyAxID0g KGRlZmF1bHQpIGp1c3QgcHJpbnQgdGhlIHJlc3VsdDsgMiA9IHByaW50IG1vcmUgZGV0YWlscyBp bmNsdWRpbmcgdGhlIFNlbG1lciBncm91cCBhbmQgdGhlIG5vbnRyaXZpYWwgcXVhcnRpY3MuIik7 Ci0gKi8KLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9leHRfZGF0YS9wYXJpL3NpbW9uL3Fmc29sdmUu Z3AgYi9zcmMvc2FnZS9leHRfZGF0YS9wYXJpL3NpbW9uL3Fmc29sdmUuZ3AKLWluZGV4IDUwMWZi NTA4MjguLjIxMDcyODhjMWQgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9leHRfZGF0YS9wYXJpL3Np bW9uL3Fmc29sdmUuZ3AKLSsrKyBiL3NyYy9zYWdlL2V4dF9kYXRhL3Bhcmkvc2ltb24vcWZzb2x2 ZS5ncAotQEAgLTQzNCwxNDYgKzQzNCw2IEBAIG15KGNjKTsKLSByZXR1cm4oW1UzfipHMypVMyxy ZWRbMl0qVTEqVTIqVTNdKTsKLSB9Ci0gCi0tXFwgXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxc XFxcXFxcXFxcXFxcXFxcXFxcXAotLVxcICAgICAgICBRVUFEUkFUSUMgRk9STVMgTUlOSU1JWkFU SU9OICAgICAgICAgXFwKLS1cXCBcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxc XFxcXFxcXFxcCi0tCi0tXFwgTWluaW1pemF0aW9uIG9mIHRoZSBxdWFkcmF0aWMgZm9ybSBHLCB3 aXRoIG5vbnplcm8gZGV0ZXJtaW5hbnQuCi0tXFwgb2YgZGltZW5zaW9uIG4+PTIuCi0tXFwgRyBt dXN0IGJ5IHN5bW1ldHJpYyBhbmQgaGF2ZSBpbnRlZ3JhbCBjb2VmZmljaWVudHMuCi0tXFwgUmV0 dXJucyBbRycsVSxmYWN0ZF0gd2l0aCBVIGluIEdMbihRKSBzdWNoIHRoYXQgRyc9VX4qRypVKmNv bnN0YW50Ci0tXFwgaXMgaW50ZWdyYWwgYW5kIGhhcyBtaW5pbWFsIGRldGVybWluYW50LgotLVxc IEluIGRpbWVuc2lvbiAzIG9yIDQsIG1heSByZXR1cm4gYSBwcmltZSBwCi0tXFwgaWYgdGhlIHJl ZHVjdGlvbiBhdCBwIGlzIGltcG9zc2libGUgYmVjYXVzZSBvZiB0aGUgbG9jYWwgbm9uIHNvbHZh YmlsaXR5LgotLVxcIElmIGdpdmVuLCBmYWN0ZGV0RyBtdXN0IGJlIGVxdWFsIHRvIGZhY3Rvcihh YnMoZGV0KEcpKSkuCi0te3FmbWluaW1pemUoRyxmYWN0ZGV0RykgPQotLW15KGZhY3RkLFUsS2Vy LEtlcjIsc29sLGF1eCxkaSk7Ci0tbXkocCk7Ci0tbXkobixsZixpLHZwLGRpbUtlcixkaW1LZXIy LG0pOwotLQotLSAgbiA9IGxlbmd0aChHKTsKLS0gIGZhY3RkID0gbWF0cml4KDAsMik7Ci0tICBp ZiggIWZhY3RkZXRHLCBmYWN0ZGV0RyA9IGZhY3RvcihtYXRkZXQoRykpKTsKLS0KLS0gIGxmID0g bGVuZ3RoKGZhY3RkZXRHWywxXSk7Ci0tICBpID0gMTsgVSA9IG1hdGlkKG4pOwotLQotLSAgd2hp bGUoaSA8PSBsZiwKLS0gICAgdnAgPSBmYWN0ZGV0R1tpLDJdOwotLSAgICBpZiggdnAgPT0gMCwg aSsrOyBuZXh0KTsKLS0gICAgcCA9IGZhY3RkZXRHW2ksMV07Ci0tICAgIGlmKCBwID09IC0xLCBp Kys7IG5leHQpOwotLWlmKCBERUJVR0xFVkVMX3Fmc29sdmUgPj0gNCwgcHJpbnQoIiAgICBwID0g IixwLCJeIix2cCkpOwotLQotLVxcIFRoZSBjYXNlIHZwID0gMSBjYW4gYmUgbWluaW1pemVkIG9u bHkgaWYgbiBpcyBvZGQuCi0tICAgIGlmKCB2cCA9PSAxICYmIG4lMiA9PSAwLAotLSAgICAgIGZh Y3RkID0gY29uY2F0KGZhY3RkfiwgTWF0KFtwLDFdKX4pfjsKLS0gICAgICBpKys7IG5leHQKLS0g ICAgKTsKLS0gICAgS2VyID0ga2VybW9kcChHLHApOyBkaW1LZXIgPSBLZXJbMV07IEtlciA9IEtl clsyXTsKLS0KLS1cXCBSZW06IHdlIG11c3QgaGF2ZSBkaW1LZXIgPD0gdnAKLS1pZiggREVCVUdM RVZFTF9xZnNvbHZlID49IDQsIHByaW50KCIgICAgZGltS2VyID0gIixkaW1LZXIpKTsKLS1cXCB0 cml2aWFsIGNhc2U6IGRpbUtlciA9IG4KLS0gICAgaWYoIGRpbUtlciA9PSBuLCAKLS1pZiggREVC VUdMRVZFTF9xZnNvbHZlID49IDQsIHByaW50KCIgICAgIGNhc2UgMDogZGltS2VyID0gbiIpKTsK LS0gICAgICBHIC89IHA7Ci0tICAgICAgZmFjdGRldEdbaSwyXSAtPSBuOwotLSAgICAgIG5leHQK LS0gICAgKTsKLS0gICAgRyA9IEtlcn4qRypLZXI7Ci0tICAgIFUgPSBVKktlcjsKLS0KLS1cXCAx c3QgY2FzZTogZGltS2VyIDwgdnAKLS1cXCB0aGVuIHRoZSBrZXJuZWwgbW9kIHAgY29udGFpbnMg YSBrZXJuZWwgbW9kIHBeMgotLSAgICBpZiggZGltS2VyIDwgdnAsCi0taWYoIERFQlVHTEVWRUxf cWZzb2x2ZSA+PSA0LCBwcmludCgiICAgIGNhc2UgMTogZGlta2VyIDwgdnAiKSk7Ci0tICAgICAg aWYoIGRpbUtlciA9PSAxLAotLVxcICAgICAgICBHWywxXSAvPSBwOyBHWzEsXSAvPSBwOwotLSAg ICAgICAgR1ssMV0gLz0gcDsgR1sxLF0gPSBHWzEsXS9wOwotLSAgICAgICAgVVssMV0gLz0gcDsK LS0gICAgICAgIGZhY3RkZXRHW2ksMl0gLT0gMgotLSAgICAgICwgCi0tICAgICAgICBLZXIyID0g a2VybW9kcChtYXRyaXgoZGltS2VyLGRpbUtlcixqLGssR1tqLGtdL3ApLHApOwotLSAgICAgICAg ZGltS2VyMiA9IEtlcjJbMV07IEtlcjIgPSBLZXIyWzJdOwotLSAgICAgICAgZm9yKCBqID0gMSwg ZGltS2VyMiwgS2VyMlssal0gLz0gcCk7Ci0tICAgICAgICBLZXIyID0gbWF0ZGlhZ29uYWxibG9j ayhbS2VyMixtYXRpZChuLWRpbUtlcildKTsKLS0gICAgICAgIEcgPSBLZXIyfipHKktlcjI7Ci0t ICAgICAgICBVID0gVSpLZXIyOwotLSAgICAgICAgZmFjdGRldEdbaSwyXSAtPSAyKmRpbUtlcjIK LS0pOwotLQotLWlmKCBERUJVR0xFVkVMX3Fmc29sdmUgPj0gNCwgcHJpbnQoIiAgICBlbmQgb2Yg Y2FzZSAxIikpOwotLSAgICAgIG5leHQKLS0gICAgKTsKLS0KLS1cXCBOb3csIHdlIGhhdmUgdnAg PSBkaW1LZXIgCi0tXFwgMm5kIGNhc2U6IHRoZSBkaW1lbnNpb24gb2YgdGhlIGtlcm5lbCBpcyA+ PTIKLS1cXCBhbmQgY29udGFpbnMgYW4gZWxlbWVudCBvZiBub3JtIDAgbW9kIHBeMgotLQotLVxc IHNlYXJjaCBmb3IgYW4gZWxlbWVudCBvZiBub3JtIHBeMi4uLiBpbiB0aGUga2VybmVsCi0tICAg IGlmKCBkaW1LZXIgPiAyIHx8IAotLSAgICAgICAoZGltS2VyID09IDIgJiYgaXNzcXVhcmUoIGRp ID0gTW9kKChHWzEsMl1eMi1HWzEsMV0qR1syLDJdKS9wXjIscCkpKSwKLS0gICAgICBpZiggZGlt S2VyID4gMiwKLS1pZiggREVCVUdMRVZFTF9xZnNvbHZlID49IDQsIHByaW50KCIgICAgY2FzZSAy LjEiKSk7Ci0tICAgICAgICBkaW1LZXIgPSAzOwotLSAgICAgICAgc29sID0gcWZzb2x2ZW1vZHAo bWF0cml4KDMsMyxqLGssR1tqLGtdL3ApLHApCi0tICAgICAgLAotLWlmKCBERUJVR0xFVkVMX3Fm c29sdmUgPj0gNCwgcHJpbnQoIiAgICBjYXNlIDIuMiIpKTsKLS0gICAgICAgIGlmKCBHWzEsMV0l cF4yID09IDAsIAotLSAgICAgICAgICBzb2wgPSBbMSwwXX4KLS0gICAgICAgICwgc29sID0gWy1H WzEsMl0vcCtzcXJ0KGRpKSxNb2QoR1sxLDFdL3AscCldfgotLSAgICAgICAgKQotLSAgICAgICk7 Ci0tICAgICAgc29sID0gY2VudGVybGlmdChzb2wpOwotLSAgICAgIHNvbCAvPSBjb250ZW50KHNv bCk7Ci0taWYoIERFQlVHTEVWRUxfcWZzb2x2ZSA+PSA0LCBwcmludCgiICAgIHNvbCA9ICIsc29s KSk7Ci0tICAgICAgS2VyID0gdmVjdG9ydihuLCBqLCBpZiggajw9IGRpbUtlciwgc29sW2pdLCAw KSk7IFxcIGZpbGwgd2l0aCAwJ3MKLS0gICAgICBLZXIgPSBjb21wbGV0ZWJhc2lzKEtlciwxKTsK LS0gICAgICBLZXJbLG5dIC89IHA7Ci0tICAgICAgRyA9IEtlcn4qRypLZXI7Ci0tICAgICAgVSA9 IFUqS2VyOwotLSAgICAgIGZhY3RkZXRHW2ksMl0gLT0gMjsKLS1pZiggREVCVUdMRVZFTF9xZnNv bHZlID49IDQsIHByaW50KCIgICAgZW5kIG9mIGNhc2UgMiIpKTsKLS0gICAgICBuZXh0Ci0tICAg ICk7Ci0tCi0tXFwgTm93LCB3ZSBoYXZlIHZwID0gZGltS2VyIDw9IDIgCi0tXFwgICBhbmQgdGhl IGtlcm5lbCBjb250YWlucyBubyB2ZWN0b3Igd2l0aCBub3JtIHBeMi4uLgotLQotLVxcIEluIHNv bWUgY2FzZXMsIGV4Y2hhbmdpbmcgdGhlIGtlcm5lbCBhbmQgdGhlIGltYWdlCi0tXFwgbWFrZXMg dGhlIG1pbmltaXphdGlvbiBlYXN5LgotLQotLSAgICBtID0gKG4tMSlcMi0xOwotLSAgICBpZigg KCB2cCA9PSAxICYmIGlzc3F1YXJlKE1vZCgtKC0xKV5tKm1hdGRldChHKS9HWzEsMV0scCkpKQot LSAgICAgfHwgKCB2cCA9PSAyICYmIG4lMiA9PSAxICYmIG4gPj0gNSkKLS0gICAgIHx8ICggdnAg PT0gMiAmJiBuJTIgPT0gMCAmJiAhaXNzcXVhcmUoTW9kKCgtMSlebSptYXRkZXQoRykvcF4yLHAp KSkKLS0gICAgLCAKLS1pZiggREVCVUdMRVZFTF9xZnNvbHZlID49IDQsIHByaW50KCIgICAgY2Fz ZSAzIikpOwotLSAgICAgIEtlciA9IG1hdGlkKG4pOwotLSAgICAgIGZvciggaiA9IGRpbUtlcisx LCBuLCBLZXJbaixqXSA9IHApOwotLSAgICAgIEcgPSBLZXJ+KkcqS2VyL3A7Ci0tICAgICAgVSA9 IFUqS2VyOwotLSAgICAgIGZhY3RkZXRHW2ksMl0gLT0gMipkaW1LZXItbjsKLS1pZiggREVCVUdM RVZFTF9xZnNvbHZlID49IDQsIHByaW50KCIgICAgZW5kIG9mIGNhc2UgMyIpKTsKLS0gICAgICBu ZXh0Ci0tICAgICk7Ci0tCi0tXFwgTWluaW1pemF0aW9uIHdhcyBub3QgcG9zc2libGUgc2UgZmFy LgotLVxcIElmIG4gPT0gMyBvciA0LCB0aGlzIHByb3ZlcyB0aGUgbG9jYWwgbm9uLXNvbHViaWxp dHkgYXQgcC4KLS0gICAgaWYoIG4gPT0gMyB8fCBuID09IDQsIAotLWlmKCBERUJVR0xFVkVMX3Fm c29sdmUgPj0gMSwgcHJpbnQoIiBubyBsb2NhbCBzb2x1dGlvbiBhdCAiLHApKTsKLS0gICAgICBy ZXR1cm4ocCkpOwotLQotLWlmKCBERUJVR0xFVkVMX3Fmc29sdmUgPj0gNCwgcHJpbnQoIiAgICBw cmltZSAiLHAsIiBmaW5pc2hlZCIpKTsKLS0gICAgZmFjdGQgPSBjb25jYXQoZmFjdGR+LE1hdChb cCx2cF0pfil+OwotLSAgICBpKysKLS0gICk7Ci0tXFwgYXBwbHkgTExMIHRvIGF2b2lkIGNvZWZm aWNpZW50cyBleHBsb3Npb24KLS0gIGF1eCA9IHFmbGxsKFUvY29udGVudChVKSk7Ci0tcmV0dXJu KFthdXh+KkcqYXV4LFUqYXV4LGZhY3RkXSk7Ci0tfQotLQotIFxcIFxcXFxcXFxcXFxcXFxcXFxc XFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFwKLSBcXCAgICAgICAgICBDTEFTUyBHUk9VUCBD T01QVVRBVElPTlMgICAgICAgICAgIFxcCi0gXFwgXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxc XFxcXFxcXFxcXFxcXFxcXFxcXAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2dlb21ldHJ5L3BvbHlo ZWRyb24vYmFja2VuZF9maWVsZC5weSBiL3NyYy9zYWdlL2dlb21ldHJ5L3BvbHloZWRyb24vYmFj a2VuZF9maWVsZC5weQotaW5kZXggNmI5MjFkMjNhNi4uMmYzMmM1OGIxZSAxMDA2NDQKLS0tLSBh L3NyYy9zYWdlL2dlb21ldHJ5L3BvbHloZWRyb24vYmFja2VuZF9maWVsZC5weQotKysrIGIvc3Jj L3NhZ2UvZ2VvbWV0cnkvcG9seWhlZHJvbi9iYWNrZW5kX2ZpZWxkLnB5Ci1AQCAtMjY1LDcgKzI2 NSw3IEBAIGNsYXNzIFBvbHloZWRyb25fZmllbGQoUG9seWhlZHJvbl9iYXNlKToKLSAgICAgICAg ICAgICAgQW4gaW5lcXVhbGl0eSAoLTAuMTQxOTc5NDM1OTUyMDI2Mz8sIC0xLjY5ODE3MjQzNDI3 NzE0OD8pIHggKyAxLjIwMDc4OTI0MzkwMTQzOD8gPj0gMCwKLSAgICAgICAgICAgICAgQW4gaW5l cXVhbGl0eSAoMC4zMDAxOTczMTA5NzUzNTk0PywgMC42MDAzOTQ2MjE5NTA3MTk/KSB4IC0gMC40 MjQ1NDMxMDg1NjkyODY5PyA+PSAwKQotICAgICAgICAgICAgIHNhZ2U6IHAuVnJlcHJlc2VudGF0 aW9uKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBvcHRpb25h bCAtIHNhZ2UucmluZ3MubnVtYmVyX2ZpZWxkCi0tICAgICAgICAgICAgKEEgdmVydGV4IGF0ICgw Lj9lLTE1LCAwLjcwNzEwNjc4MTE4NjU0OD8pLAotKyAgICAgICAgICAgIChBIHZlcnRleCBhdCAo MC4/ZS0xNiwgMC43MDcxMDY3ODExODY1NDc1PyksCi0gICAgICAgICAgICAgIEEgdmVydGV4IGF0 ICgxLjQxNDIxMzU2MjM3MzA5NT8sIDApLAotICAgICAgICAgICAgICBBIHZlcnRleCBhdCAoNC4w MDAwMDAwMDAwMDAwMDA/LCAwLjM3MjY3Nzk5NjI0OTk2NT8pKQotICAgICAgICAgIiIiCi1AQCAt MzA4LDcgKzMwOCw3IEBAIGNsYXNzIFBvbHloZWRyb25fZmllbGQoUG9seWhlZHJvbl9iYXNlKToK LSAgICAgICAgICAgICAgQW4gaW5lcXVhbGl0eSAoLTAuMTQxOTc5NDM1OTUyMDI2Mz8sIC0xLjY5 ODE3MjQzNDI3NzE0OD8pIHggKyAxLjIwMDc4OTI0MzkwMTQzOD8gPj0gMCwKLSAgICAgICAgICAg ICAgQW4gaW5lcXVhbGl0eSAoMC4zMDAxOTczMTA5NzUzNTk0PywgMC42MDAzOTQ2MjE5NTA3MTk/ KSB4IC0gMC40MjQ1NDMxMDg1NjkyODY5PyA+PSAwKQotICAgICAgICAgICAgIHNhZ2U6IHAuVnJl cHJlc2VudGF0aW9uKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IyBvcHRpb25hbCAtIHNhZ2UucmluZ3MubnVtYmVyX2ZpZWxkCi0tICAgICAgICAgICAgKEEgdmVy dGV4IGF0ICgwLj9lLTE1LCAwLjcwNzEwNjc4MTE4NjU0OD8pLAotKyAgICAgICAgICAgIChBIHZl cnRleCBhdCAoMC4/ZS0xNiwgMC43MDcxMDY3ODExODY1NDc1PyksCi0gICAgICAgICAgICAgIEEg dmVydGV4IGF0ICgxLjQxNDIxMzU2MjM3MzA5NT8sIDApLAotICAgICAgICAgICAgICBBIHZlcnRl eCBhdCAoNC4wMDAwMDAwMDAwMDAwMDA/LCAwLjM3MjY3Nzk5NjI0OTk2NT8pKQotICAgICAgICAg IiIiCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvZ2VvbWV0cnkvcG9seWhlZHJvbi9iYWNrZW5kX25v cm1hbGl6LnB5IGIvc3JjL3NhZ2UvZ2VvbWV0cnkvcG9seWhlZHJvbi9iYWNrZW5kX25vcm1hbGl6 LnB5Ci1pbmRleCA4NmI4OTYzMmE1Li5jYThhNDNiMjQ4IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2Uv Z2VvbWV0cnkvcG9seWhlZHJvbi9iYWNrZW5kX25vcm1hbGl6LnB5Ci0rKysgYi9zcmMvc2FnZS9n ZW9tZXRyeS9wb2x5aGVkcm9uL2JhY2tlbmRfbm9ybWFsaXoucHkKLUBAIC01Myw3ICs1Myw3IEBA IGRlZiBfbnVtYmVyX2ZpZWxkX2VsZW1lbnRzX2Zyb21fYWxnZWJyYWljc19saXN0X29mX2xpc3Rz X29mX2xpc3RzKGxpc3RzcywgKiprd2RzCi0gICAgICAgICAxLjczMjA1MDgwNzU2ODg3OD8KLSAg ICAgICAgIHNhZ2U6IGZyb20gc2FnZS5nZW9tZXRyeS5wb2x5aGVkcm9uLmJhY2tlbmRfbm9ybWFs aXogaW1wb3J0IF9udW1iZXJfZmllbGRfZWxlbWVudHNfZnJvbV9hbGdlYnJhaWNzX2xpc3Rfb2Zf bGlzdHNfb2ZfbGlzdHMKLSAgICAgICAgIHNhZ2U6IEssIHJlc3VsdHMsIGhvbSA9IF9udW1iZXJf ZmllbGRfZWxlbWVudHNfZnJvbV9hbGdlYnJhaWNzX2xpc3Rfb2ZfbGlzdHNfb2ZfbGlzdHMoW1tb cnQyXSwgWzFdXSwgW1tydDNdXSwgW1sxXSwgW11dXSk7IHJlc3VsdHMgICMgb3B0aW9uYWwgLSBz YWdlLnJpbmdzLm51bWJlcl9maWVsZAotLSAgICAgICAgW1tbLWFeMyArIDMqYV0sIFsxXV0sIFtb LWFeMiArIDJdXSwgW1sxXSwgW11dXQotKyAgICAgICAgW1tbLWFeMyArIDMqYV0sIFsxXV0sIFtb YV4yIC0gMl1dLCBbWzFdLCBbXV1dCi0gICAgICIiIgotICAgICBmcm9tIHNhZ2UucmluZ3MucXFi YXIgaW1wb3J0IG51bWJlcl9maWVsZF9lbGVtZW50c19mcm9tX2FsZ2VicmFpY3MKLSAgICAgbnVt YmVycyA9IFtdCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvZ3JvdXBzL21hdHJpeF9ncHMvaXNvbWV0 cmllcy5weSBiL3NyYy9zYWdlL2dyb3Vwcy9tYXRyaXhfZ3BzL2lzb21ldHJpZXMucHkKLWluZGV4 IGY5MTExYTJjOTIuLmNjYTQ1ZTcxNzUgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9ncm91cHMvbWF0 cml4X2dwcy9pc29tZXRyaWVzLnB5Ci0rKysgYi9zcmMvc2FnZS9ncm91cHMvbWF0cml4X2dwcy9p c29tZXRyaWVzLnB5Ci1AQCAtMTEsMTEgKzExLDExIEBAIEVYQU1QTEVTOjoKLSAgICAgc2FnZTog TCA9IEludGVncmFsTGF0dGljZSgiRDQiKQotICAgICBzYWdlOiBPID0gTC5vcnRob2dvbmFsX2dy b3VwKCkKLSAgICAgc2FnZTogTwotLSAgICBHcm91cCBvZiBpc29tZXRyaWVzIHdpdGggNSBnZW5l cmF0b3JzICgKLS0gICAgWy0xICAwICAwICAwXSAgWzAgMCAwIDFdICBbLTEgLTEgLTEgLTFdICBb IDEgIDEgIDAgIDBdICBbIDEgIDAgIDAgIDBdCi0tICAgIFsgMCAtMSAgMCAgMF0gIFswIDEgMCAw XSAgWyAwICAwICAxICAwXSAgWyAwICAwICAxICAwXSAgWy0xIC0xIC0xIC0xXQotLSAgICBbIDAg IDAgLTEgIDBdICBbMCAwIDEgMF0gIFsgMCAgMSAgMCAgMV0gIFsgMCAgMSAgMCAgMV0gIFsgMCAg MCAgMSAgMF0KLS0gICAgWyAwICAwICAwIC0xXSwgWzEgMCAwIDBdLCBbIDAgLTEgLTEgIDBdLCBb IDAgLTEgLTEgIDBdLCBbIDAgIDAgIDAgIDFdCi0rICAgIEdyb3VwIG9mIGlzb21ldHJpZXMgd2l0 aCAzIGdlbmVyYXRvcnMgKAotKyAgICBbMCAwIDAgMV0gIFsgMSAgMSAgMCAgMF0gIFsgMSAgMCAg MCAgMF0KLSsgICAgWzAgMSAwIDBdICBbIDAgIDAgIDEgIDBdICBbLTEgLTEgLTEgLTFdCi0rICAg IFswIDAgMSAwXSAgWyAwICAxICAwICAxXSAgWyAwICAwICAxICAwXQotKyAgICBbMSAwIDAgMF0s IFsgMCAtMSAtMSAgMF0sIFsgMCAgMCAgMCAgMV0KLSAgICAgKQotIAotIEJhc2ljIGZ1bmN0aW9u YWxpdHkgaXMgcHJvdmlkZWQgYnkgR0FQOjoKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9pbnRlcmZh Y2VzL2dlbnVzMnJlZHVjdGlvbi5weSBiL3NyYy9zYWdlL2ludGVyZmFjZXMvZ2VudXMycmVkdWN0 aW9uLnB5Ci1pbmRleCA1NmFlMDRiMjM1Li43YTQ3OTRkYWYyIDEwMDY0NAotLS0tIGEvc3JjL3Nh Z2UvaW50ZXJmYWNlcy9nZW51czJyZWR1Y3Rpb24ucHkKLSsrKyBiL3NyYy9zYWdlL2ludGVyZmFj ZXMvZ2VudXMycmVkdWN0aW9uLnB5Ci1AQCAtMTQzLDMxICsxNDMsMzEgQEAgY2xhc3MgUmVkdWN0 aW9uRGF0YShTYWdlT2JqZWN0KToKLSAgICAgICAgc3VyIHVuIGNvcnBzIGRlIHZhbHVhdGlvbiBk aXNjcsOodGUiLCBUcmFucy4gQU1TIDM0OCAoMTk5NiksCi0gICAgICAgIDQ1NzctNDYxMCwgU2Vj dGlvbiA3LjIsIFByb3Bvc2l0aW9uIDQpLgotICAgICAiIiIKLS0gICAgZGVmIF9faW5pdF9fKHNl bGYsIHBhcmlfcmVzdWx0LCBQLCBRLCBtaW5pbWFsX2VxdWF0aW9uLCBtaW5pbWFsX2Rpc2MsCi0t ICAgICAgICAgICAgICAgICBsb2NhbF9kYXRhLCBjb25kdWN0b3IsIHByaW1lX3RvXzJfY29uZHVj dG9yX29ubHkpOgotKyAgICBkZWYgX19pbml0X18oc2VsZiwgcGFyaV9yZXN1bHQsIFAsIFEsIFBt aW4sIFFtaW4sIG1pbmltYWxfZGlzYywKLSsgICAgICAgICAgICAgICAgIGxvY2FsX2RhdGEsIGNv bmR1Y3Rvcik6Ci0gICAgICAgICBzZWxmLnBhcmlfcmVzdWx0ID0gcGFyaV9yZXN1bHQKLSAgICAg ICAgIHNlbGYuUCA9IFAKLSAgICAgICAgIHNlbGYuUSA9IFEKLS0gICAgICAgIHNlbGYubWluaW1h bF9lcXVhdGlvbiA9IG1pbmltYWxfZXF1YXRpb24KLSsgICAgICAgIHNlbGYuUG1pbiA9IFBtaW4K LSsgICAgICAgIHNlbGYuUW1pbiA9IFFtaW4KLSAgICAgICAgIHNlbGYubWluaW1hbF9kaXNjID0g bWluaW1hbF9kaXNjCi0gICAgICAgICBzZWxmLmxvY2FsX2RhdGEgPSBsb2NhbF9kYXRhCi0gICAg ICAgICBzZWxmLmNvbmR1Y3RvciA9IGNvbmR1Y3RvcgotLSAgICAgICAgc2VsZi5wcmltZV90b18y X2NvbmR1Y3Rvcl9vbmx5ID0gcHJpbWVfdG9fMl9jb25kdWN0b3Jfb25seQotIAotICAgICBkZWYg X3JlcHJfKHNlbGYpOgotLSAgICAgICAgaWYgc2VsZi5wcmltZV90b18yX2NvbmR1Y3Rvcl9vbmx5 OgotLSAgICAgICAgICAgIGV4ID0gJyAoYXdheSBmcm9tIDIpJwotLSAgICAgICAgZWxzZToKLS0g ICAgICAgICAgICBleCA9ICcnCi0gICAgICAgICBpZiBzZWxmLlEgPT0gMDoKLSAgICAgICAgICAg ICB5dGVybSA9ICcnCi0gICAgICAgICBlbHNlOgotICAgICAgICAgICAgIHl0ZXJtID0gJysgKCVz KSp5ICclc2VsZi5RCi0rCi0gICAgICAgICBzID0gJ1JlZHVjdGlvbiBkYXRhIGFib3V0IHRoaXMg cHJvcGVyIHNtb290aCBnZW51cyAyIGN1cnZlOlxuJwotICAgICAgICAgcyArPSAnXHR5XjIgJXM9 ICVzXG4nJSh5dGVybSwgc2VsZi5QKQotLSAgICAgICAgcyArPSAnQSBNaW5pbWFsIEVxdWF0aW9u IChhd2F5IGZyb20gMik6XG5cdHleMiA9ICVzXG4nJXNlbGYubWluaW1hbF9lcXVhdGlvbgotLSAg ICAgICAgcyArPSAnTWluaW1hbCBEaXNjcmltaW5hbnQgKGF3YXkgZnJvbSAyKTogICVzXG4nJXNl bGYubWluaW1hbF9kaXNjCi0tICAgICAgICBzICs9ICdDb25kdWN0b3IlczogJXNcbiclKGV4LCBz ZWxmLmNvbmR1Y3RvcikKLSsgICAgICAgIGlmIHNlbGYuUW1pbjoKLSsgICAgICAgICAgICBzICs9 ICdBIE1pbmltYWwgRXF1YXRpb246XG5cdHleMiArICglcyl5ID0gJXNcbiclKHNlbGYuUW1pbiwg c2VsZi5QbWluKQotKyAgICAgICAgZWxzZToKLSsgICAgICAgICAgICBzICs9ICdBIE1pbmltYWwg RXF1YXRpb246XG5cdHleMiA9ICVzXG4nJXNlbGYuUG1pbgotKyAgICAgICAgcyArPSAnTWluaW1h bCBEaXNjcmltaW5hbnQ6ICVzXG4nJXNlbGYubWluaW1hbF9kaXNjCi0rICAgICAgICBzICs9ICdD b25kdWN0b3I6ICVzXG4nJXNlbGYuY29uZHVjdG9yCi0gICAgICAgICBzICs9ICdMb2NhbCBEYXRh OlxuJXMnJXNlbGYuX2xvY2FsX2RhdGFfc3RyKCkKLSAgICAgICAgIHJldHVybiBzCi0gCi1AQCAt MjQyLDE3ICsyNDIsNyBAQCBjbGFzcyBHZW51czJyZWR1Y3Rpb24oU2FnZU9iamVjdCk6Ci0gICAg ICAgICBzYWdlOiBmYWN0b3IoUi5jb25kdWN0b3IpCi0gICAgICAgICA1XjQgKiAyMjY3Ci0gCi0t ICAgIFRoaXMgbWVhbnMgdGhhdCBvbmx5IHRoZSBvZGQgcGFydCBvZiB0aGUgY29uZHVjdG9yIGlz IGtub3duLgotLQotLSAgICA6OgotLQotLSAgICAgICAgc2FnZTogUi5wcmltZV90b18yX2NvbmR1 Y3Rvcl9vbmx5Ci0tICAgICAgICBUcnVlCi0tCi0tICAgIFRoZSBkaXNjcmltaW5hbnQgaXMgYWx3 YXlzIG1pbmltYWwgYXdheSBmcm9tIDIsIGJ1dCBwb3NzaWJseSBub3QgYXQKLS0gICAgMi4KLS0K LS0gICAgOjoKLSsgICAgVGhlIGRpc2NyaW1pbmFudCBpcyBhbHdheXMgbWluaW1hbDo6Ci0gCi0g ICAgICAgICBzYWdlOiBmYWN0b3IoUi5taW5pbWFsX2Rpc2MpCi0gICAgICAgICAyXjMgKiA1XjUg KiAyMjY3Ci1AQCAtMjY0LDEwICsyNTQsMTAgQEAgY2xhc3MgR2VudXMycmVkdWN0aW9uKFNhZ2VP YmplY3QpOgotICAgICAgICAgc2FnZTogUgotICAgICAgICAgUmVkdWN0aW9uIGRhdGEgYWJvdXQg dGhpcyBwcm9wZXIgc21vb3RoIGdlbnVzIDIgY3VydmU6Ci0gICAgICAgICAgICAgeV4yICsgKHhe MyAtIDIqeF4yIC0gMip4ICsgMSkqeSA9IC01KnheNQotLSAgICAgICAgQSBNaW5pbWFsIEVxdWF0 aW9uIChhd2F5IGZyb20gMik6Ci0tICAgICAgICAgICAgeV4yID0geF42IC0gMjQwKnheNCAtIDI1 NTAqeF4zIC0gMTE0MDAqeF4yIC0gMjQxMDAqeCAtIDE5ODU1Ci0tICAgICAgICBNaW5pbWFsIERp c2NyaW1pbmFudCAoYXdheSBmcm9tIDIpOiAgNTY2NzUwMDAKLS0gICAgICAgIENvbmR1Y3RvciAo YXdheSBmcm9tIDIpOiAxNDE2ODc1Ci0rICAgICAgICBBIE1pbmltYWwgRXF1YXRpb246Ci0rICAg ICAgICAgICAgeV4yIC4uLgotKyAgICAgICAgTWluaW1hbCBEaXNjcmltaW5hbnQ6IDU2Njc1MDAw Ci0rICAgICAgICBDb25kdWN0b3I6IDE0MTY4NzUKLSAgICAgICAgIExvY2FsIERhdGE6Ci0gICAg ICAgICAgICAgcD0yCi0gICAgICAgICAgICAgKHBvdGVudGlhbCkgc3RhYmxlIHJlZHVjdGlvbjog IChJSSksIGo9MQotQEAgLTI5MywxMCArMjgzLDEwIEBAIGNsYXNzIEdlbnVzMnJlZHVjdGlvbihT YWdlT2JqZWN0KToKLSAgICAgICAgIHNhZ2U6IGdlbnVzMnJlZHVjdGlvbigwLCB4XjYgKyAzKnhe MyArIDYzKQotICAgICAgICAgUmVkdWN0aW9uIGRhdGEgYWJvdXQgdGhpcyBwcm9wZXIgc21vb3Ro IGdlbnVzIDIgY3VydmU6Ci0gICAgICAgICAgICAgICAgIHleMiA9IHheNiArIDMqeF4zICsgNjMK LS0gICAgICAgIEEgTWluaW1hbCBFcXVhdGlvbiAoYXdheSBmcm9tIDIpOgotLSAgICAgICAgICAg ICAgICB5XjIgPSB4XjYgKyAzKnheMyArIDYzCi0tICAgICAgICBNaW5pbWFsIERpc2NyaW1pbmFu dCAoYXdheSBmcm9tIDIpOiAgMTA2MjgzODgzMTY4NTI5OTIKLS0gICAgICAgIENvbmR1Y3RvciAo YXdheSBmcm9tIDIpOiAyODkzNDAxCi0rICAgICAgICBBIE1pbmltYWwgRXF1YXRpb246Ci0rICAg ICAgICAgICAgICAgIHleMiAuLi4KLSsgICAgICAgIE1pbmltYWwgRGlzY3JpbWluYW50OiAtMTA2 MjgzODgzMTY4NTI5OTIKLSsgICAgICAgIENvbmR1Y3RvcjogMjg5MzQwMQotICAgICAgICAgTG9j YWwgRGF0YToKLSAgICAgICAgICAgICAgICAgcD0yCi0gICAgICAgICAgICAgICAgIChwb3RlbnRp YWwpIHN0YWJsZSByZWR1Y3Rpb246ICAoViksIGoxK2oyPTAsIGoxKmoyPTAKLUBAIC0zMjcsOSAr MzE3LDkgQEAgY2xhc3MgR2VudXMycmVkdWN0aW9uKFNhZ2VPYmplY3QpOgotICAgICAgICAgc2Fn ZTogZ2VudXMycmVkdWN0aW9uKHheMy14XjItMSwgeF4yIC0geCkKLSAgICAgICAgIFJlZHVjdGlv biBkYXRhIGFib3V0IHRoaXMgcHJvcGVyIHNtb290aCBnZW51cyAyIGN1cnZlOgotICAgICAgICAg ICAgICAgICB5XjIgKyAoeF4zIC0geF4yIC0gMSkqeSA9IHheMiAtIHgKLS0gICAgICAgIEEgTWlu aW1hbCBFcXVhdGlvbiAoYXdheSBmcm9tIDIpOgotLSAgICAgICAgICAgICAgICB5XjIgPSB4XjYg KyA1OCp4XjUgKyAxNDAxKnheNCArIDE4MDM4KnheMyArIDEzMDU0Nip4XjIgKyA1MDM1MTYqeCAr IDgwODU2MQotLSAgICAgICAgTWluaW1hbCBEaXNjcmltaW5hbnQgKGF3YXkgZnJvbSAyKTogIDE2 OQotKyAgICAgICAgQSBNaW5pbWFsIEVxdWF0aW9uOgotKyAgICAgICAgICAgICAgICB5XjIgLi4u Ci0rICAgICAgICBNaW5pbWFsIERpc2NyaW1pbmFudDogLTE2OQotICAgICAgICAgQ29uZHVjdG9y OiAxNjkKLSAgICAgICAgIExvY2FsIERhdGE6Ci0gICAgICAgICAgICAgICAgIHA9MTMKLUBAIC0z NzAsMTAgKzM2MCwxMCBAQCBjbGFzcyBHZW51czJyZWR1Y3Rpb24oU2FnZU9iamVjdCk6Ci0gICAg ICAgICAgICAgc2FnZTogZ2VudXMycmVkdWN0aW9uKHheMyAtIDIqeF4yIC0gMip4ICsgMSwgLTUq eF41KQotICAgICAgICAgICAgIFJlZHVjdGlvbiBkYXRhIGFib3V0IHRoaXMgcHJvcGVyIHNtb290 aCBnZW51cyAyIGN1cnZlOgotICAgICAgICAgICAgICAgICAgICAgeV4yICsgKHheMyAtIDIqeF4y IC0gMip4ICsgMSkqeSA9IC01KnheNQotLSAgICAgICAgICAgIEEgTWluaW1hbCBFcXVhdGlvbiAo YXdheSBmcm9tIDIpOgotLSAgICAgICAgICAgICAgICAgICAgeV4yID0geF42IC0gMjQwKnheNCAt IDI1NTAqeF4zIC0gMTE0MDAqeF4yIC0gMjQxMDAqeCAtIDE5ODU1Ci0tICAgICAgICAgICAgTWlu aW1hbCBEaXNjcmltaW5hbnQgKGF3YXkgZnJvbSAyKTogIDU2Njc1MDAwCi0tICAgICAgICAgICAg Q29uZHVjdG9yIChhd2F5IGZyb20gMik6IDE0MTY4NzUKLSsgICAgICAgICAgICBBIE1pbmltYWwg RXF1YXRpb246Ci0rICAgICAgICAgICAgICAgICAgICB5XjIgLi4uCi0rICAgICAgICAgICAgTWlu aW1hbCBEaXNjcmltaW5hbnQ6IDU2Njc1MDAwCi0rICAgICAgICAgICAgQ29uZHVjdG9yOiAxNDE2 ODc1Ci0gICAgICAgICAgICAgTG9jYWwgRGF0YToKLSAgICAgICAgICAgICAgICAgICAgIHA9Mgot ICAgICAgICAgICAgICAgICAgICAgKHBvdGVudGlhbCkgc3RhYmxlIHJlZHVjdGlvbjogIChJSSks IGo9MQotQEAgLTM4OSw5ICszNzksOSBAQCBjbGFzcyBHZW51czJyZWR1Y3Rpb24oU2FnZU9iamVj dCk6Ci0gICAgICAgICAgICAgc2FnZTogZ2VudXMycmVkdWN0aW9uKHheMiArIDEsIC01KnheNSkK LSAgICAgICAgICAgICBSZWR1Y3Rpb24gZGF0YSBhYm91dCB0aGlzIHByb3BlciBzbW9vdGggZ2Vu dXMgMiBjdXJ2ZToKLSAgICAgICAgICAgICAgICAgICAgIHleMiArICh4XjIgKyAxKSp5ID0gLTUq eF41Ci0tICAgICAgICAgICAgQSBNaW5pbWFsIEVxdWF0aW9uIChhd2F5IGZyb20gMik6Ci0tICAg ICAgICAgICAgICAgICAgICB5XjIgPSAtMjAqeF41ICsgeF40ICsgMip4XjIgKyAxCi0tICAgICAg ICAgICAgTWluaW1hbCBEaXNjcmltaW5hbnQgKGF3YXkgZnJvbSAyKTogIDQ4ODM4MTI1Ci0rICAg ICAgICAgICAgQSBNaW5pbWFsIEVxdWF0aW9uOgotKyAgICAgICAgICAgICAgICAgICAgeV4yIC4u LgotKyAgICAgICAgICAgIE1pbmltYWwgRGlzY3JpbWluYW50OiA0ODgzODEyNQotICAgICAgICAg ICAgIENvbmR1Y3RvcjogMzIwMjUKLSAgICAgICAgICAgICBMb2NhbCBEYXRhOgotICAgICAgICAg ICAgICAgICAgICAgcD0zCi1AQCAtNDEyLDkgKzQwMiw5IEBAIGNsYXNzIEdlbnVzMnJlZHVjdGlv bihTYWdlT2JqZWN0KToKLSAgICAgICAgICAgICBzYWdlOiBnZW51czJyZWR1Y3Rpb24oeF4zICsg eF4yICsgeCwtMip4XjUgKyAzKnheNCAtIHheMyAtIHheMiAtIDYqeCAtIDIpCi0gICAgICAgICAg ICAgUmVkdWN0aW9uIGRhdGEgYWJvdXQgdGhpcyBwcm9wZXIgc21vb3RoIGdlbnVzIDIgY3VydmU6 Ci0gICAgICAgICAgICAgICAgICAgICB5XjIgKyAoeF4zICsgeF4yICsgeCkqeSA9IC0yKnheNSAr IDMqeF40IC0geF4zIC0geF4yIC0gNip4IC0gMgotLSAgICAgICAgICAgIEEgTWluaW1hbCBFcXVh dGlvbiAoYXdheSBmcm9tIDIpOgotLSAgICAgICAgICAgICAgICAgICAgeV4yID0geF42ICsgMTgq eF4zICsgMzYqeF4yIC0gMjcKLS0gICAgICAgICAgICBNaW5pbWFsIERpc2NyaW1pbmFudCAoYXdh eSBmcm9tIDIpOiAgMTUyMDk4NDE0MgotKyAgICAgICAgICAgIEEgTWluaW1hbCBFcXVhdGlvbjoK LSsgICAgICAgICAgICAgICAgICAgIHleMiAuLi4KLSsgICAgICAgICAgICBNaW5pbWFsIERpc2Ny aW1pbmFudDogMTUyMDk4NDE0MgotICAgICAgICAgICAgIENvbmR1Y3RvcjogOTU0Ci0gICAgICAg ICAgICAgTG9jYWwgRGF0YToKLSAgICAgICAgICAgICAgICAgICAgIHA9MgotQEAgLTQzNiwxOCAr NDI2LDEwIEBAIGNsYXNzIEdlbnVzMnJlZHVjdGlvbihTYWdlT2JqZWN0KToKLSAgICAgICAgICAg ICByYWlzZSBWYWx1ZUVycm9yKCJRICg9JXMpIG11c3QgaGF2ZSBkZWdyZWUgYXQgbW9zdCAzIiAl IFEpCi0gCi0gICAgICAgICByZXMgPSBwYXJpLmdlbnVzMnJlZChbUCwgUV0pCi0tCi0gICAgICAg ICBjb25kdWN0b3IgPSBaWihyZXNbMF0pCi0tICAgICAgICBtaW5pbWFsX2VxdWF0aW9uID0gUihy ZXNbMl0pCi0tCi0tICAgICAgICBtaW5pbWFsX2Rpc2MgPSBRUShyZXNbMl0ucG9sZGlzYygpKS5h YnMoKQotLSAgICAgICAgaWYgbWluaW1hbF9lcXVhdGlvbi5kZWdyZWUoKSA9PSA1OgotLSAgICAg ICAgICAgIG1pbmltYWxfZGlzYyAqPSBtaW5pbWFsX2VxdWF0aW9uWzVdKioyCi0tICAgICAgICAj IE11bHRpcGx5IHdpdGggc3VpdGFibGUgcG93ZXIgb2YgMiBvZiB0aGUgZm9ybSAyXigyKihkLTEp IC0gMTIpCi0tICAgICAgICBiID0gMiAqIChtaW5pbWFsX2VxdWF0aW9uLmRlZ3JlZSgpIC0gMSkK LS0gICAgICAgIGsgPSBRUSgoMTIgLSBtaW5pbWFsX2Rpc2MudmFsdWF0aW9uKDIpLCBiKSkuY2Vp bCgpCi0tICAgICAgICBtaW5pbWFsX2Rpc2MgPj49IDEyIC0gYiprCi0tICAgICAgICBtaW5pbWFs X2Rpc2MgPSBaWihtaW5pbWFsX2Rpc2MpCi0rICAgICAgICBQbWluID0gUihyZXNbMl1bMF0pCi0r ICAgICAgICBRbWluID0gUihyZXNbMl1bMV0pCi0rICAgICAgICBtaW5pbWFsX2Rpc2MgPSBaWihw YXJpLmh5cGVyZWxsZGlzYyhyZXNbMl0pKQotIAotICAgICAgICAgbG9jYWxfZGF0YSA9IHt9Ci0g ICAgICAgICBmb3IgcmVkIGluIHJlc1szXToKLUBAIC00NjgsOSArNDUwLDcgQEAgY2xhc3MgR2Vu dXMycmVkdWN0aW9uKFNhZ2VPYmplY3QpOgotIAotICAgICAgICAgICAgIGxvY2FsX2RhdGFbcF0g PSBkYXRhCi0gCi0tICAgICAgICBwcmltZV90b18yX2NvbmR1Y3Rvcl9vbmx5ID0gKC0xIGluIHJl c1sxXS5jb21wb25lbnQoMikpCi0tICAgICAgICByZXR1cm4gUmVkdWN0aW9uRGF0YShyZXMsIFAs IFEsIG1pbmltYWxfZXF1YXRpb24sIG1pbmltYWxfZGlzYywgbG9jYWxfZGF0YSwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbmR1Y3RvciwgcHJpbWVfdG9fMl9jb25kdWN0b3Jfb25s eSkKLSsgICAgICAgIHJldHVybiBSZWR1Y3Rpb25EYXRhKHJlcywgUCwgUSwgUG1pbiwgUW1pbiwg bWluaW1hbF9kaXNjLCBsb2NhbF9kYXRhLCBjb25kdWN0b3IpCi0gCi0gICAgIGRlZiBfX3JlZHVj ZV9fKHNlbGYpOgotICAgICAgICAgcmV0dXJuIF9yZWR1Y2VfbG9hZF9nZW51czJyZWR1Y3Rpb24s IHR1cGxlKFtdKQotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2xmdW5jdGlvbnMvZG9rY2hpdHNlci5w eSBiL3NyYy9zYWdlL2xmdW5jdGlvbnMvZG9rY2hpdHNlci5weQotaW5kZXggZmVjNDUwZDdiYy4u MjM2NDAyYzI5MyAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2xmdW5jdGlvbnMvZG9rY2hpdHNlci5w eQotKysrIGIvc3JjL3NhZ2UvbGZ1bmN0aW9ucy9kb2tjaGl0c2VyLnB5Ci1AQCAtMzM3LDYgKzMz Nyw3IEBAIGNsYXNzIERva2NoaXRzZXIoU2FnZU9iamVjdCk6Ci0gICAgICAgICAgICAgIyBBZnRl ciBpbml0X2NvZWZmcyBpcyBjYWxsZWQsIGZ1dHVyZSBjYWxscyB0byB0aGlzIG1ldGhvZCBzaG91 bGQKLSAgICAgICAgICAgICAjIHJldHVybiB0aGUgZnVsbCBvdXRwdXQgZm9yIGZ1cnRoZXIgcGFy c2luZwotICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigidW5hYmxlIHRvIGNyZWF0ZSBM LXNlcmllcywgZHVlIHRvIHByZWNpc2lvbiBvciBvdGhlciBsaW1pdHMgaW4gUEFSSSIpCi0rICAg ICAgICB0ID0gdC5yZXBsYWNlKCIgICoqKiBfXl86IFdhcm5pbmc6IG5vcm1hbGl6aW5nIGEgc2Vy aWVzIHdpdGggMCBsZWFkaW5nIHRlcm0uXG4iLCAiIikKLSAgICAgICAgIHJldHVybiB0Ci0gCi0g ICAgIGRlZiBfX2NoZWNrX2luaXQoc2VsZik6Ci1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvbGZ1bmN0 aW9ucy9wYXJpLnB5IGIvc3JjL3NhZ2UvbGZ1bmN0aW9ucy9wYXJpLnB5Ci1pbmRleCBkMmIyMGYx ODkxLi42YzMxZWZlMjM5IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvbGZ1bmN0aW9ucy9wYXJpLnB5 Ci0rKysgYi9zcmMvc2FnZS9sZnVuY3Rpb25zL3BhcmkucHkKLUBAIC0zMzksNyArMzM5LDcgQEAg ZGVmIGxmdW5fZXRhX3F1b3RpZW50KHNjYWxpbmdzLCBleHBvbmVudHMpOgotICAgICAgICAgMC4w Mzc0NDEyODEyNjg1MTU1Ci0gCi0gICAgICAgICBzYWdlOiBsZnVuX2V0YV9xdW90aWVudChbNl0s WzRdKQotLSAgICAgICAgW1tWZWNzbWFsbChbN10pLCBbVmVjc21hbGwoWzZdKSwgVmVjc21hbGwo WzRdKV1dLCAwLCBbMCwgMV0sIDIsIDM2LCAxXQotKyAgICAgICAgW1tWZWNzbWFsbChbN10pLCBb VmVjc21hbGwoWzZdKSwgVmVjc21hbGwoWzRdKSwgMF1dLCAwLCBbMCwgMV0sIDIsIDM2LCAxXQot IAotICAgICAgICAgc2FnZTogbGZ1bl9ldGFfcXVvdGllbnQoWzIsMSw0XSwgWzUsLTIsLTJdKQot ICAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotZGlmZiAtLWdpdCBh L3NyYy9zYWdlL2xpYnMvcGFyaS90ZXN0cy5weSBiL3NyYy9zYWdlL2xpYnMvcGFyaS90ZXN0cy5w eQotaW5kZXggZTVhMmFhMjUxNy4uMGVmY2IxNWRlMCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL2xp YnMvcGFyaS90ZXN0cy5weQotKysrIGIvc3JjL3NhZ2UvbGlicy9wYXJpL3Rlc3RzLnB5Ci1AQCAt MzU2LDcgKzM1Niw3IEBAIENvbnN0cnVjdG9yczo6Ci0gICAgIFsyLCA0XX4qeCArIFsxLCAzXX4K LSAKLSAgICAgc2FnZTogcGFyaSgzKS5RZmIoNywgMSkKLS0gICAgUWZiKDMsIDcsIDEsIDAuRS0x OSkKLSsgICAgUWZiKDMsIDcsIDEpCi0gICAgIHNhZ2U6IHBhcmkoMykuUWZiKDcsIDIpCi0gICAg IFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICAgLi4uCi1AQCAtNTEyLDcg KzUxMiw3IEBAIEJhc2ljIGZ1bmN0aW9uczo6Ci0gICAgIHNhZ2U6IHBhcmkoJ3NxcnQoLTIpJyku ZnJhYygpCi0gICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICAgLi4u Ci0tICAgIFBhcmlFcnJvcjogaW5jb3JyZWN0IHR5cGUgaW4gZ2Zsb29yICh0X0NPTVBMRVgpCi0r ICAgIFBhcmlFcnJvcjogaW5jb3JyZWN0IHR5cGUgaW4gZ2ZyYWMgKHRfQ09NUExFWCkKLSAKLSAg ICAgc2FnZTogcGFyaSgnMSsyKkknKS5pbWFnKCkKLSAgICAgMgotZGlmZiAtLWdpdCBhL3NyYy9z YWdlL21vZHVsYXIvY3VzcHNfbmYucHkgYi9zcmMvc2FnZS9tb2R1bGFyL2N1c3BzX25mLnB5Ci1p bmRleCAyNWQ5M2NhYzkyLi4xNTdlYmFiZTI5IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvbW9kdWxh ci9jdXNwc19uZi5weQotKysrIGIvc3JjL3NhZ2UvbW9kdWxhci9jdXNwc19uZi5weQotQEAgLTEy MjAsNyArMTIyMCw3IEBAIGRlZiB1bml0c19tb2RfaWRlYWwoSSk6Ci0gICAgICAgICBzYWdlOiBJ ID0gay5pZGVhbCg1LCBhICsgMSkKLSAgICAgICAgIHNhZ2U6IHVuaXRzX21vZF9pZGVhbChJKQot ICAgICAgICAgWzEsCi0tICAgICAgICAyKmFeMiArIDQqYSAtIDEsCi0rICAgICAgICAtMiphXjIg LSA0KmEgKyAxLAotICAgICAgICAgLi4uXQotIAotICAgICA6OgotZGlmZiAtLWdpdCBhL3NyYy9z YWdlL21vZHVsYXIvbW9kZm9ybV9oZWNrZXRyaWFuZ2xlL2hlY2tlX3RyaWFuZ2xlX2dyb3VwX2Vs ZW1lbnQucHkgYi9zcmMvc2FnZS9tb2R1bGFyL21vZGZvcm1faGVja2V0cmlhbmdsZS9oZWNrZV90 cmlhbmdsZV9ncm91cF9lbGVtZW50LnB5Ci1pbmRleCBhODgxMzM2NTk2Li4wOTBkMWJmYWYwIDEw MDY0NAotLS0tIGEvc3JjL3NhZ2UvbW9kdWxhci9tb2Rmb3JtX2hlY2tldHJpYW5nbGUvaGVja2Vf dHJpYW5nbGVfZ3JvdXBfZWxlbWVudC5weQotKysrIGIvc3JjL3NhZ2UvbW9kdWxhci9tb2Rmb3Jt X2hlY2tldHJpYW5nbGUvaGVja2VfdHJpYW5nbGVfZ3JvdXBfZWxlbWVudC5weQotQEAgLTQzLDcg KzQzLDcgQEAgZGVmIGNvZXJjZV9BQShwKToKLSAgICAgICAgIHNhZ2U6IEFBKHApLl9leGFjdF9m aWVsZCgpCi0gICAgICAgICBOdW1iZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5nIHBvbHlub21p YWwgeV44IC4uLiB3aXRoIGEgaW4gLi4uCi0gICAgICAgICBzYWdlOiBjb2VyY2VfQUEocCkuX2V4 YWN0X2ZpZWxkKCkKLS0gICAgICAgIE51bWJlciBGaWVsZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9s eW5vbWlhbCB5XjQgLSAxOTEwKnleMiAtIDM5MjQqeSArIDY4MTA1OCB3aXRoIGEgaW4gMzkuNzEw NTE4NzI0Li4uPwotKyAgICAgICAgTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5 bm9taWFsIHleNCAtIDE5MTAqeV4yIC0gMzkyNCp5ICsgNjgxMDU4IHdpdGggYSBpbiAuLi4/Ci0g ICAgICIiIgotICAgICBlbCA9IEFBKHApCi0gICAgIGVsLnNpbXBsaWZ5KCkKLWRpZmYgLS1naXQg YS9zcmMvc2FnZS9tb2R1bGFyL21vZHN5bS9wMWxpc3RfbmYucHkgYi9zcmMvc2FnZS9tb2R1bGFy L21vZHN5bS9wMWxpc3RfbmYucHkKLWluZGV4IDIyMmNhYWNjYTguLmY5ZDk2OTczMmMgMTAwNjQ0 Ci0tLS0gYS9zcmMvc2FnZS9tb2R1bGFyL21vZHN5bS9wMWxpc3RfbmYucHkKLSsrKyBiL3NyYy9z YWdlL21vZHVsYXIvbW9kc3ltL3AxbGlzdF9uZi5weQotQEAgLTU4LDcgKzU4LDcgQEAgTGlmdCBh biBNU3ltYm9sIHRvIGEgbWF0cml4IGluIGBTTCgyLCBSKWA6Ci0gCi0gICAgIHNhZ2U6IGFscGhh ID0gTVN5bWJvbChOLCBhICsgMiwgMyphXjIpCi0gICAgIHNhZ2U6IGFscGhhLmxpZnRfdG9fc2wy X09rKCkKLS0gICAgWy0zKmFeMiArIGEgKyAxMiwgMjUqYV4yIC0gNTAqYSArIDEwMCwgYSArIDIs IGFeMiAtIDMqYSArIDNdCi0rICAgIFstMSwgNCphXjIgLSAxMyphICsgMjMsIGEgKyAyLCA1KmFe MiArIDMqYSAtIDNdCi0gICAgIHNhZ2U6IE9rID0gay5yaW5nX29mX2ludGVnZXJzKCkKLSAgICAg c2FnZTogTSA9IE1hdHJpeChPaywgMiwgYWxwaGEubGlmdF90b19zbDJfT2soKSkKLSAgICAgc2Fn ZTogZGV0KE0pCi1AQCAtOTQ1LDExICs5NDUsMTEgQEAgY2xhc3MgUDFORkxpc3QoU2FnZU9iamVj dCk6Ci0gICAgICAgICAgICAgc2FnZTogTiA9IGsuaWRlYWwoNSwgYSArIDEpCi0gICAgICAgICAg ICAgc2FnZTogUCA9IFAxTkZMaXN0KE4pCi0gICAgICAgICAgICAgc2FnZTogdSA9IGsudW5pdF9n cm91cCgpLmdlbnNfdmFsdWVzKCk7IHUKLS0gICAgICAgICAgICBbLTEsIDIqYV4yICsgNCphIC0g MV0KLSsgICAgICAgICAgICBbLTEsIC0yKmFeMiAtIDQqYSArIDFdCi0gICAgICAgICAgICAgc2Fn ZTogUC5hcHBseV9KX2Vwc2lsb24oNCwgLTEpCi0gICAgICAgICAgICAgMgotICAgICAgICAgICAg IHNhZ2U6IFAuYXBwbHlfSl9lcHNpbG9uKDQsIHVbMF0sIHVbMV0pCi0tICAgICAgICAgICAgMQot KyAgICAgICAgICAgIDUKLSAKLSAgICAgICAgIDo6Ci0gCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2Uv bW9kdWxlcy9mcmVlX3F1YWRyYXRpY19tb2R1bGVfaW50ZWdlcl9zeW1tZXRyaWMucHkgYi9zcmMv c2FnZS9tb2R1bGVzL2ZyZWVfcXVhZHJhdGljX21vZHVsZV9pbnRlZ2VyX3N5bW1ldHJpYy5weQot aW5kZXggYTIwNmYwYzcyMS4uYWViMTlhYjY2OSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL21vZHVs ZXMvZnJlZV9xdWFkcmF0aWNfbW9kdWxlX2ludGVnZXJfc3ltbWV0cmljLnB5Ci0rKysgYi9zcmMv c2FnZS9tb2R1bGVzL2ZyZWVfcXVhZHJhdGljX21vZHVsZV9pbnRlZ2VyX3N5bW1ldHJpYy5weQot QEAgLTExNjgsMTEgKzExNjgsMTEgQEAgY2xhc3MgRnJlZVF1YWRyYXRpY01vZHVsZV9pbnRlZ2Vy X3N5bW1ldHJpYyhGcmVlUXVhZHJhdGljTW9kdWxlX3N1Ym1vZHVsZV93aXRoX2IKLSAgICAgICAg ICAgICBzYWdlOiBBNCA9IEludGVncmFsTGF0dGljZSgiQTQiKQotICAgICAgICAgICAgIHNhZ2U6 IEF1dCA9IEE0Lm9ydGhvZ29uYWxfZ3JvdXAoKQotICAgICAgICAgICAgIHNhZ2U6IEF1dAotLSAg ICAgICAgICAgIEdyb3VwIG9mIGlzb21ldHJpZXMgd2l0aCA1IGdlbmVyYXRvcnMgKAotLSAgICAg ICAgICAgIFstMSAgMCAgMCAgMF0gIFswIDAgMCAxXSAgWy0xIC0xIC0xICAwXSAgWyAxICAwICAw ICAwXSAgWyAxICAwICAwICAwXQotLSAgICAgICAgICAgIFsgMCAtMSAgMCAgMF0gIFswIDAgMSAw XSAgWyAwICAwICAwIC0xXSAgWy0xIC0xIC0xIC0xXSAgWyAwICAxICAwICAwXQotLSAgICAgICAg ICAgIFsgMCAgMCAtMSAgMF0gIFswIDEgMCAwXSAgWyAwICAwICAxICAxXSAgWyAwICAwICAwICAx XSAgWyAwICAwICAxICAxXQotLSAgICAgICAgICAgIFsgMCAgMCAgMCAtMV0sIFsxIDAgMCAwXSwg WyAwICAxICAwICAwXSwgWyAwICAwICAxICAwXSwgWyAwICAwICAwIC0xXQotKyAgICAgICAgICAg IEdyb3VwIG9mIGlzb21ldHJpZXMgd2l0aCA0IGdlbmVyYXRvcnMgKAotKyAgICAgICAgICAgIFsw IDAgMCAxXSAgWy0xIC0xIC0xICAwXSAgWyAxICAwICAwICAwXSAgWyAxICAwICAwICAwXQotKyAg ICAgICAgICAgIFswIDAgMSAwXSAgWyAwICAwICAwIC0xXSAgWy0xIC0xIC0xIC0xXSAgWyAwICAx ICAwICAwXQotKyAgICAgICAgICAgIFswIDEgMCAwXSAgWyAwICAwICAxICAxXSAgWyAwICAwICAw ICAxXSAgWyAwICAwICAxICAxXQotKyAgICAgICAgICAgIFsxIDAgMCAwXSwgWyAwICAxICAwICAw XSwgWyAwICAwICAxICAwXSwgWyAwICAwICAwIC0xXQotICAgICAgICAgICAgICkKLSAKLSAgICAg ICAgIFRoZSBncm91cCBhY3RzIGZyb20gdGhlIHJpZ2h0IG9uIHRoZSBsYXR0aWNlIGFuZCBpdHMg ZGlzY3JpbWluYW50IGdyb3VwOjoKLUBAIC0xMTgwLDE5ICsxMTgwLDE5IEBAIGNsYXNzIEZyZWVR dWFkcmF0aWNNb2R1bGVfaW50ZWdlcl9zeW1tZXRyaWMoRnJlZVF1YWRyYXRpY01vZHVsZV9zdWJt b2R1bGVfd2l0aF9iCi0gICAgICAgICAgICAgc2FnZTogeCA9IEE0LmFuX2VsZW1lbnQoKQotICAg ICAgICAgICAgIHNhZ2U6IGcgPSBBdXQuYW5fZWxlbWVudCgpCi0gICAgICAgICAgICAgc2FnZTog ZwotLSAgICAgICAgICAgIFsgMSAgMSAgMSAgMF0KLS0gICAgICAgICAgICBbIDAgIDAgLTEgIDBd Ci0tICAgICAgICAgICAgWyAwICAwICAxICAxXQotLSAgICAgICAgICAgIFsgMCAtMSAtMSAtMV0K LSsgICAgICAgICAgICBbLTEgLTEgLTEgIDBdCi0rICAgICAgICAgICAgWyAwICAwICAxICAwXQot KyAgICAgICAgICAgIFsgMCAgMCAtMSAtMV0KLSsgICAgICAgICAgICBbIDAgIDEgIDEgIDFdCi0g ICAgICAgICAgICAgc2FnZTogeCpnCi0tICAgICAgICAgICAgKDEsIDEsIDEsIDApCi0rICAgICAg ICAgICAgKC0xLCAtMSwgLTEsIDApCi0gICAgICAgICAgICAgc2FnZTogKHgqZykucGFyZW50KCk9 PUE0Ci0gICAgICAgICAgICAgVHJ1ZQotICAgICAgICAgICAgIHNhZ2U6IChnKngpLnBhcmVudCgp Ci0gICAgICAgICAgICAgVmVjdG9yIHNwYWNlIG9mIGRpbWVuc2lvbiA0IG92ZXIgUmF0aW9uYWwg RmllbGQKLSAgICAgICAgICAgICBzYWdlOiB5ID0gQTQuZGlzY3JpbWluYW50X2dyb3VwKCkuYW5f ZWxlbWVudCgpCi0gICAgICAgICAgICAgc2FnZTogeSpnCi0tICAgICAgICAgICAgKDEpCi0rICAg ICAgICAgICAgKDQpCi0gCi0gICAgICAgICBJZiB0aGUgZ3JvdXAgaXMgZmluaXRlIHdlIGNhbiBj b21wdXRlIHRoZSB1c3VhbCB0aGluZ3M6OgotIAotQEAgLTEyMDgsMTAgKzEyMDgsMTAgQEAgY2xh c3MgRnJlZVF1YWRyYXRpY01vZHVsZV9pbnRlZ2VyX3N5bW1ldHJpYyhGcmVlUXVhZHJhdGljTW9k dWxlX3N1Ym1vZHVsZV93aXRoX2IKLSAKLSAgICAgICAgICAgICBzYWdlOiBBMiA9IEludGVncmFs TGF0dGljZShtYXRyaXguaWRlbnRpdHkoMyksTWF0cml4KFpaLDIsMyxbMSwtMSwwLDAsMSwtMV0p KQotICAgICAgICAgICAgIHNhZ2U6IEEyLm9ydGhvZ29uYWxfZ3JvdXAoKQotLSAgICAgICAgICAg IEdyb3VwIG9mIGlzb21ldHJpZXMgd2l0aCAzIGdlbmVyYXRvcnMgKAotLSAgICAgICAgICAgIFst MS8zICAyLzMgIDIvM10gIFsgMi8zICAyLzMgLTEvM10gIFsxIDAgMF0KLS0gICAgICAgICAgICBb IDIvMyAtMS8zICAyLzNdICBbIDIvMyAtMS8zICAyLzNdICBbMCAwIDFdCi0tICAgICAgICAgICAg WyAyLzMgIDIvMyAtMS8zXSwgWy0xLzMgIDIvMyAgMi8zXSwgWzAgMSAwXQotKyAgICAgICAgICAg IEdyb3VwIG9mIGlzb21ldHJpZXMgd2l0aCAyIGdlbmVyYXRvcnMgKAotKyAgICAgICAgICAgIFsg Mi8zICAyLzMgLTEvM10gIFsxIDAgMF0KLSsgICAgICAgICAgICBbIDIvMyAtMS8zICAyLzNdICBb MCAwIDFdCi0rICAgICAgICAgICAgWy0xLzMgIDIvMyAgMi8zXSwgWzAgMSAwXQotICAgICAgICAg ICAgICkKLSAKLSAgICAgICAgIEl0IGNhbiBiZSBuZWdhdGl2ZSBkZWZpbml0ZSBhcyB3ZWxsOjoK LWRpZmYgLS1naXQgYS9zcmMvc2FnZS9xdWFkcmF0aWNfZm9ybXMvYmluYXJ5X3FmLnB5IGIvc3Jj L3NhZ2UvcXVhZHJhdGljX2Zvcm1zL2JpbmFyeV9xZi5weQotaW5kZXggY2ZhM2FkYTczZS4uNWFj ODIzYmM2YyAxMDA3NTUKLS0tLSBhL3NyYy9zYWdlL3F1YWRyYXRpY19mb3Jtcy9iaW5hcnlfcWYu cHkKLSsrKyBiL3NyYy9zYWdlL3F1YWRyYXRpY19mb3Jtcy9iaW5hcnlfcWYucHkKLUBAIC0xNDEs NyArMTQxLDcgQEAgY2xhc3MgQmluYXJ5UUYoU2FnZU9iamVjdCk6Ci0gICAgICAgICAgICAgICAg ICAgYW5kIGEuZGVncmVlKCkgPT0gMiBhbmQgYS5wYXJlbnQoKS5uZ2VucygpID09IDIpOgotICAg ICAgICAgICAgICAgICB4LCB5ID0gYS5wYXJlbnQoKS5nZW5zKCkKLSAgICAgICAgICAgICAgICAg YSwgYiwgYyA9IFthLm1vbm9taWFsX2NvZWZmaWNpZW50KG1vbikgZm9yIG1vbiBpbiBbeCoqMiwg eCp5LCB5KioyXV0KLS0gICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2UoYSwgcGFyaV9nZW4pIGFu ZCBhLnR5cGUoKSBpbiAoJ3RfUUZJJywgJ3RfUUZSJyk6Ci0rICAgICAgICAgICAgZWxpZiBpc2lu c3RhbmNlKGEsIHBhcmlfZ2VuKSBhbmQgYS50eXBlKCkgaW4gKCd0X1FGSScsICd0X1FGUicsICd0 X1FGQicpOgotICAgICAgICAgICAgICAgICAjIGEgaGFzIDMgb3IgNCBjb21wb25lbnRzCi0gICAg ICAgICAgICAgICAgIGEsIGIsIGMgPSBhWzBdLCBhWzFdLCBhWzJdCi0gICAgICAgICB0cnk6Ci1k aWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcXVhZHJhdGljX2Zvcm1zL2dlbmVyYS9nZW51cy5weSBiL3Ny Yy9zYWdlL3F1YWRyYXRpY19mb3Jtcy9nZW5lcmEvZ2VudXMucHkKLWluZGV4IDgyOTBiNmM0ZmEu LjBmYzQzZjMzYzYgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9xdWFkcmF0aWNfZm9ybXMvZ2VuZXJh L2dlbnVzLnB5Ci0rKysgYi9zcmMvc2FnZS9xdWFkcmF0aWNfZm9ybXMvZ2VuZXJhL2dlbnVzLnB5 Ci1AQCAtMzA4OCw4ICszMDg4LDggQEAgY2xhc3MgR2VudXNTeW1ib2xfZ2xvYmFsX3JpbmcoKToK LSAgICAgICAgICAgICBzYWdlOiBHID0gR2VudXMobWF0cml4KFpaLCAzLCBbNiwzLDAsIDMsNiww LCAwLDAsMl0pKQotICAgICAgICAgICAgIHNhZ2U6IEcucmVwcmVzZW50YXRpdmVzKCkKLSAgICAg ICAgICAgICAoCi0tICAgICAgICAgICAgWzIgMCAwXSAgWyAyIC0xICAwXQotLSAgICAgICAgICAg IFswIDYgM10gIFstMSAgMiAgMF0KLSsgICAgICAgICAgICBbMiAwIDBdICBbIDIgIDEgIDBdCi0r ICAgICAgICAgICAgWzAgNiAzXSAgWyAxICAyICAwXQotICAgICAgICAgICAgIFswIDMgNl0sIFsg MCAgMCAxOF0KLSAgICAgICAgICAgICApCi0gCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcXVhZHJh dGljX2Zvcm1zL3Fmc29sdmUucHkgYi9zcmMvc2FnZS9xdWFkcmF0aWNfZm9ybXMvcWZzb2x2ZS5w eQotaW5kZXggZGRkZTk1ZTA0Zi4uZDVlMTVkOWY4MyAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3F1 YWRyYXRpY19mb3Jtcy9xZnNvbHZlLnB5Ci0rKysgYi9zcmMvc2FnZS9xdWFkcmF0aWNfZm9ybXMv cWZzb2x2ZS5weQotQEAgLTcwLDcgKzcwLDcgQEAgZGVmIHFmc29sdmUoRyk6Ci0gCi0gICAgICAg ICBzYWdlOiBNID0gTWF0cml4KFFRLCBbWzMsIDAsIDAsIDBdLCBbMCwgNSwgMCwgMF0sIFswLCAw LCAtNywgMF0sIFswLCAwLCAwLCAtMTFdXSkKLSAgICAgICAgIHNhZ2U6IHFmc29sdmUoTSkKLS0g ICAgICAgICgzLCAtNCwgLTMsIC0yKQotKyAgICAgICAgKDMsIDQsIC0zLCAtMikKLSAgICAgIiIi Ci0gICAgIHJldCA9IEcuX19wYXJpX18oKS5xZnNvbHZlKCkKLSAgICAgaWYgcmV0LnR5cGUoKSA9 PSAndF9DT0wnOgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3F1YWRyYXRpY19mb3Jtcy9xdWFkcmF0 aWNfZm9ybV9fYXV0b21vcnBoaXNtcy5weSBiL3NyYy9zYWdlL3F1YWRyYXRpY19mb3Jtcy9xdWFk cmF0aWNfZm9ybV9fYXV0b21vcnBoaXNtcy5weQotaW5kZXggYzM2YzY2N2UzYi4uM2Q3MmNmM2Jl MSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3F1YWRyYXRpY19mb3Jtcy9xdWFkcmF0aWNfZm9ybV9f YXV0b21vcnBoaXNtcy5weQotKysrIGIvc3JjL3NhZ2UvcXVhZHJhdGljX2Zvcm1zL3F1YWRyYXRp Y19mb3JtX19hdXRvbW9ycGhpc21zLnB5Ci1AQCAtMzAwLDkgKzMwMCw5IEBAIGRlZiBhdXRvbW9y cGhpc21fZ3JvdXAoc2VsZik6Ci0gICAgICAgICBzYWdlOiBRID0gRGlhZ29uYWxRdWFkcmF0aWNG b3JtKFpaLCBbMSwxLDFdKQotICAgICAgICAgc2FnZTogUS5hdXRvbW9ycGhpc21fZ3JvdXAoKQot ICAgICAgICAgTWF0cml4IGdyb3VwIG92ZXIgUmF0aW9uYWwgRmllbGQgd2l0aCAzIGdlbmVyYXRv cnMgKAotLSAgICAgICAgWy0xICAwICAwXSAgWzAgMCAxXSAgWyAwICAwICAxXQotLSAgICAgICAg WyAwIC0xICAwXSAgWzAgMSAwXSAgWy0xICAwICAwXQotLSAgICAgICAgWyAwICAwIC0xXSwgWzEg MCAwXSwgWyAwICAxICAwXQotKyAgICAgICAgWyAwICAwICAxXSAgWzEgMCAwXSAgWyAxICAwICAw XQotKyAgICAgICAgWy0xICAwICAwXSAgWzAgMCAxXSAgWyAwIC0xICAwXQotKyAgICAgICAgWyAw ICAxICAwXSwgWzAgMSAwXSwgWyAwICAwICAxXQotICAgICAgICAgKQotIAotICAgICA6OgotZGlm ZiAtLWdpdCBhL3NyYy9zYWdlL3JpbmdzL2Zpbml0ZV9yaW5ncy9maW5pdGVfZmllbGRfcHJpbWVf bW9kbi5weSBiL3NyYy9zYWdlL3JpbmdzL2Zpbml0ZV9yaW5ncy9maW5pdGVfZmllbGRfcHJpbWVf bW9kbi5weQotaW5kZXggOTEyOWVjYjU2YS4uZDVhNGNiOGYyMiAxMDA2NDQKLS0tLSBhL3NyYy9z YWdlL3JpbmdzL2Zpbml0ZV9yaW5ncy9maW5pdGVfZmllbGRfcHJpbWVfbW9kbi5weQotKysrIGIv c3JjL3NhZ2UvcmluZ3MvZmluaXRlX3JpbmdzL2Zpbml0ZV9maWVsZF9wcmltZV9tb2RuLnB5Ci1A QCAtMTExLDcgKzExMSw3IEBAIGNsYXNzIEZpbml0ZUZpZWxkX3ByaW1lX21vZG4oRmluaXRlRmll bGRfZ2VuZXJpYywgaW50ZWdlcl9tb2RfcmluZy5JbnRlZ2VyTW9kUmluCi0gICAgICAgICAgICAg c2FnZTogUkYxMyA9IEsucmVzaWR1ZV9maWVsZChwcCkKLSAgICAgICAgICAgICBzYWdlOiBSRjEz LmhvbShbR0YoMTMpKDEpXSkKLSAgICAgICAgICAgICBSaW5nIG1vcnBoaXNtOgotLSAgICAgICAg ICAgICBGcm9tOiBSZXNpZHVlIGZpZWxkIG9mIEZyYWN0aW9uYWwgaWRlYWwgKHcgKyAxOCkKLSsg ICAgICAgICAgICAgRnJvbTogUmVzaWR1ZSBmaWVsZCBvZiBGcmFjdGlvbmFsIGlkZWFsICgtdyAt IDE4KQotICAgICAgICAgICAgICBUbzogICBGaW5pdGUgRmllbGQgb2Ygc2l6ZSAxMwotICAgICAg ICAgICAgICBEZWZuOiAxIHwtLT4gMQotIAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3JpbmdzL2Zp bml0ZV9yaW5ncy9yZXNpZHVlX2ZpZWxkLnB5eCBiL3NyYy9zYWdlL3JpbmdzL2Zpbml0ZV9yaW5n cy9yZXNpZHVlX2ZpZWxkLnB5eAotaW5kZXggNzU5NmYyYTMwMi4uMWUxODY5ZjFiMSAxMDA2NDQK LS0tLSBhL3NyYy9zYWdlL3JpbmdzL2Zpbml0ZV9yaW5ncy9yZXNpZHVlX2ZpZWxkLnB5eAotKysr IGIvc3JjL3NhZ2UvcmluZ3MvZmluaXRlX3JpbmdzL3Jlc2lkdWVfZmllbGQucHl4Ci1AQCAtMjAs MTMgKzIwLDEzIEBAIG1vbm9nZW5pYyAoaS5lLiwgMiBpcyBhbiBlc3NlbnRpYWwgZGlzY3JpbWlu YW50IGRpdmlzb3IpOjoKLSAKLSAgICAgc2FnZTogSy48YT4gPSBOdW1iZXJGaWVsZCh4XjMgKyB4 XjIgLSAyKnggKyA4KQotICAgICBzYWdlOiBGID0gSy5mYWN0b3IoMik7IEYKLS0gICAgKEZyYWN0 aW9uYWwgaWRlYWwgKDEvMiphXjIgLSAxLzIqYSArIDEpKSAqIChGcmFjdGlvbmFsIGlkZWFsICgt YV4yICsgMiphIC0gMykpICogKEZyYWN0aW9uYWwgaWRlYWwgKC0zLzIqYV4yICsgNS8yKmEgLSA0 KSkKLSsgICAgKEZyYWN0aW9uYWwgaWRlYWwgKC0xLzIqYV4yICsgMS8yKmEgLSAxKSkgKiAoRnJh Y3Rpb25hbCBpZGVhbCAoLWFeMiArIDIqYSAtIDMpKSAqIChGcmFjdGlvbmFsIGlkZWFsICgzLzIq YV4yIC0gNS8yKmEgKyA0KSkKLSAgICAgc2FnZTogRlswXVswXS5yZXNpZHVlX2ZpZWxkKCkKLS0g ICAgUmVzaWR1ZSBmaWVsZCBvZiBGcmFjdGlvbmFsIGlkZWFsICgxLzIqYV4yIC0gMS8yKmEgKyAx KQotKyAgICBSZXNpZHVlIGZpZWxkIG9mIEZyYWN0aW9uYWwgaWRlYWwgKC0xLzIqYV4yICsgMS8y KmEgLSAxKQotICAgICBzYWdlOiBGWzFdWzBdLnJlc2lkdWVfZmllbGQoKQotICAgICBSZXNpZHVl IGZpZWxkIG9mIEZyYWN0aW9uYWwgaWRlYWwgKC1hXjIgKyAyKmEgLSAzKQotICAgICBzYWdlOiBG WzJdWzBdLnJlc2lkdWVfZmllbGQoKQotLSAgICBSZXNpZHVlIGZpZWxkIG9mIEZyYWN0aW9uYWwg aWRlYWwgKC0zLzIqYV4yICsgNS8yKmEgLSA0KQotKyAgICBSZXNpZHVlIGZpZWxkIG9mIEZyYWN0 aW9uYWwgaWRlYWwgKDMvMiphXjIgLSA1LzIqYSArIDQpCi0gCi0gV2UgY2FuIGFsc28gZm9ybSBy ZXNpZHVlIGZpZWxkcyBmcm9tIGBcWlpgOjoKLSAKLUBAIC0yNTgsOSArMjU4LDkgQEAgY2xhc3Mg UmVzaWR1ZUZpZWxkRmFjdG9yeShVbmlxdWVGYWN0b3J5KToKLSAgICAgdGhlIGluZGV4IG9mIGBg WlpbYV1gYCBpbiB0aGUgbWF4aW1hbCBvcmRlciBmb3IgYWxsIGBgYWBgOjoKLSAKLSAgICAgICAg IHNhZ2U6IEsuPGE+ID0gTnVtYmVyRmllbGQoeF4zICsgeF4yIC0gMip4ICsgOCk7IFAgPSBLLmlk ZWFsKDIpLmZhY3RvcigpWzBdWzBdOyBQCi0tICAgICAgICBGcmFjdGlvbmFsIGlkZWFsICgxLzIq YV4yIC0gMS8yKmEgKyAxKQotKyAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoLTEvMiphXjIgKyAx LzIqYSAtIDEpCi0gICAgICAgICBzYWdlOiBGID0gSy5yZXNpZHVlX2ZpZWxkKFApOyBGCi0tICAg ICAgICBSZXNpZHVlIGZpZWxkIG9mIEZyYWN0aW9uYWwgaWRlYWwgKDEvMiphXjIgLSAxLzIqYSAr IDEpCi0rICAgICAgICBSZXNpZHVlIGZpZWxkIG9mIEZyYWN0aW9uYWwgaWRlYWwgKC0xLzIqYV4y ICsgMS8yKmEgLSAxKQotICAgICAgICAgc2FnZTogRihhKQotICAgICAgICAgMAotICAgICAgICAg c2FnZTogQiA9IEsubWF4aW1hbF9vcmRlcigpLmJhc2lzKCk7IEIKLUBAIC0yNzAsNyArMjcwLDcg QEAgY2xhc3MgUmVzaWR1ZUZpZWxkRmFjdG9yeShVbmlxdWVGYWN0b3J5KToKLSAgICAgICAgIHNh Z2U6IEYoQlsyXSkKLSAgICAgICAgIDAKLSAgICAgICAgIHNhZ2U6IEYKLS0gICAgICAgIFJlc2lk dWUgZmllbGQgb2YgRnJhY3Rpb25hbCBpZGVhbCAoMS8yKmFeMiAtIDEvMiphICsgMSkKLSsgICAg ICAgIFJlc2lkdWUgZmllbGQgb2YgRnJhY3Rpb25hbCBpZGVhbCAoLTEvMiphXjIgKyAxLzIqYSAt IDEpCi0gICAgICAgICBzYWdlOiBGLmRlZ3JlZSgpCi0gICAgICAgICAxCi0gCi1AQCAtNzMwLDE1 ICs3MzAsMTUgQEAgY2xhc3MgUmVzaWR1ZUZpZWxkX2dlbmVyaWMoRmllbGQpOgotICAgICAgICAg RVhBTVBMRVM6OgotIAotICAgICAgICAgICAgIHNhZ2U6IEkgPSBRUVszXigxLzMpXS5mYWN0b3Io NSlbMV1bMF07IEkKLS0gICAgICAgICAgICBGcmFjdGlvbmFsIGlkZWFsICgtYSArIDIpCi0rICAg ICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoYSAtIDIpCi0gICAgICAgICAgICAgc2FnZTogayA9 IEkucmVzaWR1ZV9maWVsZCgpOyBrCi0tICAgICAgICAgICAgUmVzaWR1ZSBmaWVsZCBvZiBGcmFj dGlvbmFsIGlkZWFsICgtYSArIDIpCi0rICAgICAgICAgICAgUmVzaWR1ZSBmaWVsZCBvZiBGcmFj dGlvbmFsIGlkZWFsIChhIC0gMikKLSAgICAgICAgICAgICBzYWdlOiBmID0gay5saWZ0X21hcCgp OyBmCi0gICAgICAgICAgICAgTGlmdGluZyBtYXA6Ci0tICAgICAgICAgICAgICBGcm9tOiBSZXNp ZHVlIGZpZWxkIG9mIEZyYWN0aW9uYWwgaWRlYWwgKC1hICsgMikKLSsgICAgICAgICAgICAgIEZy b206IFJlc2lkdWUgZmllbGQgb2YgRnJhY3Rpb25hbCBpZGVhbCAoYSAtIDIpCi0gICAgICAgICAg ICAgICBUbzogICBNYXhpbWFsIE9yZGVyIGluIE51bWJlciBGaWVsZCBpbiBhIHdpdGggZGVmaW5p bmcgcG9seW5vbWlhbCB4XjMgLSAzIHdpdGggYSA9IDEuNDQyMjQ5NTcwMzA3NDA5PwotICAgICAg ICAgICAgIHNhZ2U6IGYuZG9tYWluKCkKLS0gICAgICAgICAgICBSZXNpZHVlIGZpZWxkIG9mIEZy YWN0aW9uYWwgaWRlYWwgKC1hICsgMikKLSsgICAgICAgICAgICBSZXNpZHVlIGZpZWxkIG9mIEZy YWN0aW9uYWwgaWRlYWwgKGEgLSAyKQotICAgICAgICAgICAgIHNhZ2U6IGYuY29kb21haW4oKQot ICAgICAgICAgICAgIE1heGltYWwgT3JkZXIgaW4gTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZp bmluZyBwb2x5bm9taWFsIHheMyAtIDMgd2l0aCBhID0gMS40NDIyNDk1NzAzMDc0MDk/Ci0gICAg ICAgICAgICAgc2FnZTogZihrLjApCi1AQCAtNzY4LDcgKzc2OCw3IEBAIGNsYXNzIFJlc2lkdWVG aWVsZF9nZW5lcmljKEZpZWxkKToKLSAKLSAgICAgICAgICAgICBzYWdlOiBLLjxhPiA9IE51bWJl ckZpZWxkKHheMy0xMSkKLSAgICAgICAgICAgICBzYWdlOiBGID0gSy5pZGVhbCgzNykuZmFjdG9y KCk7IEYKLS0gICAgICAgICAgICAoRnJhY3Rpb25hbCBpZGVhbCAoMzcsIGEgKyA5KSkgKiAoRnJh Y3Rpb25hbCBpZGVhbCAoMzcsIGEgKyAxMikpICogKEZyYWN0aW9uYWwgaWRlYWwgKDIqYSAtIDUp KQotKyAgICAgICAgICAgIChGcmFjdGlvbmFsIGlkZWFsICgzNywgYSArIDkpKSAqIChGcmFjdGlv bmFsIGlkZWFsICgzNywgYSArIDEyKSkgKiAoRnJhY3Rpb25hbCBpZGVhbCAoLTIqYSArIDUpKQot ICAgICAgICAgICAgIHNhZ2U6IGsgPSBLLnJlc2lkdWVfZmllbGQoRlswXVswXSkKLSAgICAgICAg ICAgICBzYWdlOiBsID0gSy5yZXNpZHVlX2ZpZWxkKEZbMV1bMF0pCi0gICAgICAgICAgICAgc2Fn ZTogayA9PSBsCi1AQCAtODQ2LDcgKzg0Niw3IEBAIGNkZWYgY2xhc3MgUmVkdWN0aW9uTWFwKE1h cCk6Ci0gICAgICAgICAgICAgc2FnZTogRi5yZWR1Y3Rpb25fbWFwKCkKLSAgICAgICAgICAgICBQ YXJ0aWFsbHkgZGVmaW5lZCByZWR1Y3Rpb24gbWFwOgotICAgICAgICAgICAgICAgRnJvbTogTnVt YmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHheMyArIHheMiAtIDIqeCAr IDgKLS0gICAgICAgICAgICAgIFRvOiAgIFJlc2lkdWUgZmllbGQgb2YgRnJhY3Rpb25hbCBpZGVh bCAoMS8yKmFeMiAtIDEvMiphICsgMSkKLSsgICAgICAgICAgICAgIFRvOiAgIFJlc2lkdWUgZmll bGQgb2YgRnJhY3Rpb25hbCBpZGVhbCAoLTEvMiphXjIgKyAxLzIqYSAtIDEpCi0gCi0gICAgICAg ICAgICAgc2FnZTogSy48dGhldGFfNT4gPSBDeWNsb3RvbWljRmllbGQoNSkKLSAgICAgICAgICAg ICBzYWdlOiBGID0gSy5mYWN0b3IoNylbMF1bMF0ucmVzaWR1ZV9maWVsZCgpCi1kaWZmIC0tZ2l0 IGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL1NfdW5pdF9zb2x2ZXIucHkgYi9zcmMvc2Fn ZS9yaW5ncy9udW1iZXJfZmllbGQvU191bml0X3NvbHZlci5weQotaW5kZXggZTk5ZGZmODUwZi4u NzU5Y2JmYjMzNCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9TX3Vu aXRfc29sdmVyLnB5Ci0rKysgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvU191bml0X3Nv bHZlci5weQotQEAgLTE3ODEsMjAgKzE3ODEsMjAgQEAgZGVmIHNpZXZlX29yZGVyaW5nKFNVSywg cSk6Ci0gICAgICAgICBzYWdlOiBTVUsgPSBLLlNfdW5pdF9ncm91cChTPTMpCi0gICAgICAgICBz YWdlOiBzaWV2ZV9kYXRhID0gbGlzdChzaWV2ZV9vcmRlcmluZyhTVUssIDE5KSkKLSAgICAgICAg IHNhZ2U6IHNpZXZlX2RhdGFbMF0KLS0gICAgICAgIChGcmFjdGlvbmFsIGlkZWFsICh4aSAtIDMp LAotLSAgICAgICAgIEZyYWN0aW9uYWwgaWRlYWwgKC0yKnhpXjIgKyAzKSwKLSsgICAgICAgIChG cmFjdGlvbmFsIGlkZWFsICgtMip4aV4yICsgMyksCi0rICAgICAgICAgRnJhY3Rpb25hbCBpZGVh bCAoLXhpICsgMyksCi0gICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoMip4aSArIDEpKQotIAot ICAgICAgICAgc2FnZTogc2lldmVfZGF0YVsxXQotLSAgICAgICAgKFJlc2lkdWUgZmllbGQgb2Yg RnJhY3Rpb25hbCBpZGVhbCAoeGkgLSAzKSwKLS0gICAgICAgICBSZXNpZHVlIGZpZWxkIG9mIEZy YWN0aW9uYWwgaWRlYWwgKC0yKnhpXjIgKyAzKSwKLSsgICAgICAgIChSZXNpZHVlIGZpZWxkIG9m IEZyYWN0aW9uYWwgaWRlYWwgKC0yKnhpXjIgKyAzKSwKLSsgICAgICAgICBSZXNpZHVlIGZpZWxk IG9mIEZyYWN0aW9uYWwgaWRlYWwgKC14aSArIDMpLAotICAgICAgICAgIFJlc2lkdWUgZmllbGQg b2YgRnJhY3Rpb25hbCBpZGVhbCAoMip4aSArIDEpKQotIAotICAgICAgICAgc2FnZTogc2lldmVf ZGF0YVsyXQotLSAgICAgICAgKFsxOCwgNywgMTYsIDRdLCBbMTgsIDksIDEyLCA4XSwgWzE4LCAz LCAxMCwgMTBdKQotKyAgICAgICAgKFsxOCwgMTIsIDE2LCA4XSwgWzE4LCAxNiwgMTAsIDRdLCBb MTgsIDEwLCAxMiwgMTBdKQotIAotICAgICAgICAgc2FnZTogc2lldmVfZGF0YVszXQotLSAgICAg ICAgKDQ4NiwgNjQ4LCAxMTY2NCkKLSsgICAgICAgICg2NDgsIDI5MTYsIDM4ODgpCi0gICAgICIi IgotIAotICAgICBLID0gU1VLLm51bWJlcl9maWVsZCgpCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2Uv cmluZ3MvbnVtYmVyX2ZpZWxkL2JkZF9oZWlnaHQucHkgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJf ZmllbGQvYmRkX2hlaWdodC5weQotaW5kZXggYmViMDQ3YWUwMi4uYjdjOGMzM2QwYiAxMDA2NDQK LS0tLSBhL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9iZGRfaGVpZ2h0LnB5Ci0rKysgYi9z cmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvYmRkX2hlaWdodC5weQotQEAgLTI0OCw3ICsyNDgs NyBAQCBkZWYgYmRkX25vcm1fcHJfaWRlYWxfZ2VucyhLLCBub3JtX2xpc3QpOgotICAgICAgICAg c2FnZTogZnJvbSBzYWdlLnJpbmdzLm51bWJlcl9maWVsZC5iZGRfaGVpZ2h0IGltcG9ydCBiZGRf bm9ybV9wcl9pZGVhbF9nZW5zCi0gICAgICAgICBzYWdlOiBLLjxnPiA9IFF1YWRyYXRpY0ZpZWxk KDEyMykKLSAgICAgICAgIHNhZ2U6IGJkZF9ub3JtX3ByX2lkZWFsX2dlbnMoSywgcmFuZ2UoNSkp Ci0tICAgICAgICB7MDogWzBdLCAxOiBbMV0sIDI6IFstZyAtIDExXSwgMzogW10sIDQ6IFsyXX0K LSsgICAgICAgIHswOiBbMF0sIDE6IFsxXSwgMjogW2cgKyAxMV0sIDM6IFtdLCA0OiBbMl19Ci0g Ci0gICAgIDo6Ci0gCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL2Ns YXNzX2dyb3VwLnB5IGIvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL2NsYXNzX2dyb3VwLnB5 Ci1pbmRleCAwMThmZjVmNWM2Li43M2MwNDYyY2QxIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2Uvcmlu Z3MvbnVtYmVyX2ZpZWxkL2NsYXNzX2dyb3VwLnB5Ci0rKysgYi9zcmMvc2FnZS9yaW5ncy9udW1i ZXJfZmllbGQvY2xhc3NfZ3JvdXAucHkKLUBAIC0yMjEsMTEgKzIyMSwxMSBAQCBjbGFzcyBGcmFj dGlvbmFsSWRlYWxDbGFzcyhBYmVsaWFuR3JvdXBXaXRoVmFsdWVzRWxlbWVudCk6Ci0gICAgICAg ICAgICAgQ2xhc3MgZ3JvdXAgb2Ygb3JkZXIgNzYgd2l0aCBzdHJ1Y3R1cmUgQzM4IHggQzIKLSAg ICAgICAgICAgICBvZiBOdW1iZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5nIHBvbHlub21pYWwg eF4yICsgMjAwNzIKLSAgICAgICAgICAgICBzYWdlOiBJID0gKEcuMCleMTE7IEkKLS0gICAgICAg ICAgICBGcmFjdGlvbmFsIGlkZWFsIGNsYXNzICg0MSwgMS8yKmEgKyA1KQotKyAgICAgICAgICAg IEZyYWN0aW9uYWwgaWRlYWwgY2xhc3MgKDMzLCAxLzIqYSArIDgpCi0gICAgICAgICAgICAgc2Fn ZTogSiA9IEcoSS5pZGVhbCgpXjUpOyBKCi0tICAgICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCBj bGFzcyAoMTE1ODU2MjAxLCAxLzIqYSArIDQwNDA3ODgzKQotKyAgICAgICAgICAgIEZyYWN0aW9u YWwgaWRlYWwgY2xhc3MgKDM5MTM1MzkzLCAxLzIqYSArIDEzNjU0MjUzKQotICAgICAgICAgICAg IHNhZ2U6IEoucmVkdWNlKCkKLS0gICAgICAgICAgICBGcmFjdGlvbmFsIGlkZWFsIGNsYXNzICg1 NywgMS8yKmEgKyA0NCkKLSsgICAgICAgICAgICBGcmFjdGlvbmFsIGlkZWFsIGNsYXNzICg3Mywg MS8yKmEgKyA0NykKLSAgICAgICAgICAgICBzYWdlOiBKID09IEleNQotICAgICAgICAgICAgIFRy dWUKLSAgICAgICAgICIiIgotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVs ZC9nYWxvaXNfZ3JvdXAucHkgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvZ2Fsb2lzX2dy b3VwLnB5Ci1pbmRleCA3OWFjZDA1M2JiLi5lMDYwMTQ4ZTRkIDEwMDY0NAotLS0tIGEvc3JjL3Nh Z2UvcmluZ3MvbnVtYmVyX2ZpZWxkL2dhbG9pc19ncm91cC5weQotKysrIGIvc3JjL3NhZ2Uvcmlu Z3MvbnVtYmVyX2ZpZWxkL2dhbG9pc19ncm91cC5weQotQEAgLTk0NCw3ICs5NDQsNyBAQCBjbGFz cyBHYWxvaXNHcm91cF92MihHYWxvaXNHcm91cF9wZXJtKToKLSAgICAgICAgICAgICBzYWdlOiBL LjxiPiA9IE51bWJlckZpZWxkKHheNCAtIDIqeF4yICsgMiwgJ2EnKS5nYWxvaXNfY2xvc3VyZSgp Ci0gICAgICAgICAgICAgc2FnZTogRyA9IEsuZ2Fsb2lzX2dyb3VwKCkKLSAgICAgICAgICAgICBz YWdlOiBbRy5hcnRpbl9zeW1ib2woUCkgZm9yIFAgaW4gSy5wcmltZXNfYWJvdmUoNyldCi0tICAg ICAgICAgICAgWygxLDUpKDIsNikoMyw3KSg0LDgpLCAoMSw1KSgyLDYpKDMsNykoNCw4KSwgKDEs NCkoMiwzKSg1LDgpKDYsNyksICgxLDQpKDIsMykoNSw4KSg2LDcpXQotKyAgICAgICAgICAgIFso MSw0KSgyLDMpKDUsOCkoNiw3KSwgKDEsNCkoMiwzKSg1LDgpKDYsNyksICgxLDUpKDIsNikoMyw3 KSg0LDgpLCAoMSw1KSgyLDYpKDMsNykoNCw4KV0KLSAgICAgICAgICAgICBzYWdlOiBHLmFydGlu X3N5bWJvbCgxNykKLSAgICAgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFz dCk6Ci0gICAgICAgICAgICAgLi4uCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVy X2ZpZWxkL251bWJlcl9maWVsZC5weSBiL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9udW1i ZXJfZmllbGQucHkKLWluZGV4IDU4NDYzZDU3MGQuLmZmNjU2MzRlOTkgMTAwNjQ0Ci0tLS0gYS9z cmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvbnVtYmVyX2ZpZWxkLnB5Ci0rKysgYi9zcmMvc2Fn ZS9yaW5ncy9udW1iZXJfZmllbGQvbnVtYmVyX2ZpZWxkLnB5Ci1AQCAtMzY0Myw3ICszNjQzLDcg QEAgY2xhc3MgTnVtYmVyRmllbGRfZ2VuZXJpYyhXaXRoRXF1YWxpdHlCeUlkLCBudW1iZXJfZmll bGRfYmFzZS5OdW1iZXJGaWVsZCk6Ci0gICAgICAgICAgICAgc2FnZTogTC48Yj4gPSBLLmV4dGVu c2lvbih4XjIgLSAzLCB4XjIgKyAxKQotICAgICAgICAgICAgIHNhZ2U6IE0uPGM+ID0gTC5leHRl bnNpb24oeF4yICsgMSkKLSAgICAgICAgICAgICBzYWdlOiBMLmlkZWFsKEsuaWRlYWwoMiwgYSkp Ci0tICAgICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoLWEpCi0rICAgICAgICAgICAgRnJhY3Rp b25hbCBpZGVhbCAoYSkKLSAgICAgICAgICAgICBzYWdlOiBNLmlkZWFsKEsuaWRlYWwoMiwgYSkp ID09IE0uaWRlYWwoYSooYiAtIGMpLzIpCi0gICAgICAgICAgICAgVHJ1ZQotIAotQEAgLTQyMjcs NyArNDIyNyw4IEBAIGNsYXNzIE51bWJlckZpZWxkX2dlbmVyaWMoV2l0aEVxdWFsaXR5QnlJZCwg bnVtYmVyX2ZpZWxkX2Jhc2UuTnVtYmVyRmllbGQpOgotICAgICAgICAgICAgICh5XjIgKyA2LCBN b2QoMS82KnksIHleMiArIDYpLCBNb2QoNip5LCB5XjIgKyAxLzYpKQotICAgICAgICAgIiIiCi0g ICAgICAgICBmID0gc2VsZi5hYnNvbHV0ZV9wb2x5bm9taWFsKCkuX3Bhcmlfd2l0aF9uYW1lKCd5 JykKLS0gICAgICAgIGlmIGYucG9sbGVhZCgpID09IGYuY29udGVudCgpLmRlbm9taW5hdG9yKCkg PT0gMToKLSsgICAgICAgIGYgPSBmICogZi5jb250ZW50KCkuZGVub21pbmF0b3IoKQotKyAgICAg ICAgaWYgZi5wb2xsZWFkKCkgPT0gMToKLSAgICAgICAgICAgICBnID0gZgotICAgICAgICAgICAg IGFscGhhID0gYmV0YSA9IGcudmFyaWFibGUoKS5Nb2QoZykKLSAgICAgICAgIGVsc2U6Ci1AQCAt NDgyMSw3ICs0ODIyLDcgQEAgY2xhc3MgTnVtYmVyRmllbGRfZ2VuZXJpYyhXaXRoRXF1YWxpdHlC eUlkLCBudW1iZXJfZmllbGRfYmFzZS5OdW1iZXJGaWVsZCk6Ci0gCi0gICAgICAgICAgICAgc2Fn ZTogSy48YT4gPSBOdW1iZXJGaWVsZCgyKnheMiAtIDEvMykKLSAgICAgICAgICAgICBzYWdlOiBL Ll9TX2NsYXNzX2dyb3VwX2FuZF91bml0cyh0dXBsZShLLnByaW1lc19hYm92ZSgyKSArIEsucHJp bWVzX2Fib3ZlKDMpKSkKLS0gICAgICAgICAgICAoWy02KmEgKyAyLCA2KmEgKyAzLCAtMSwgMTIq YSArIDVdLCBbXSkKLSsgICAgICAgICAgICAoWzYqYSArIDIsIDYqYSArIDMsIC0xLCAtMTIqYSAr IDVdLCBbXSkKLSAgICAgICAgICIiIgotICAgICAgICAgS19wYXJpID0gc2VsZi5wYXJpX2JuZihw cm9vZj1wcm9vZikKLSAgICAgICAgIFNfcGFyaSA9IFtwLnBhcmlfcHJpbWUoKSBmb3IgcCBpbiBz b3J0ZWQoc2V0KFMpKV0KLUBAIC01MTY2LDcgKzUxNjcsNyBAQCBjbGFzcyBOdW1iZXJGaWVsZF9n ZW5lcmljKFdpdGhFcXVhbGl0eUJ5SWQsIG51bWJlcl9maWVsZF9iYXNlLk51bWJlckZpZWxkKToK LSAKLSAgICAgICAgICAgICBzYWdlOiBbSy5pZGVhbChnKS5mYWN0b3IoKSBmb3IgZyBpbiBnZW5z XQotICAgICAgICAgICAgIFsoRnJhY3Rpb25hbCBpZGVhbCAoMiwgYSArIDEpKSAqIChGcmFjdGlv bmFsIGlkZWFsICgzLCBhICsgMSkpLAotLSAgICAgICAgICAgIEZyYWN0aW9uYWwgaWRlYWwgKC1h KSwKLSsgICAgICAgICAgICBGcmFjdGlvbmFsIGlkZWFsIChhKSwKLSAgICAgICAgICAgICAoRnJh Y3Rpb25hbCBpZGVhbCAoMiwgYSArIDEpKV4yLAotICAgICAgICAgICAgIDFdCi0gCi1AQCAtNTc1 MSw3ICs1NzUyLDcgQEAgY2xhc3MgTnVtYmVyRmllbGRfZ2VuZXJpYyhXaXRoRXF1YWxpdHlCeUlk LCBudW1iZXJfZmllbGRfYmFzZS5OdW1iZXJGaWVsZCk6Ci0gICAgICAgICAgICAgc2FnZTogSy5l bGVtZW50c19vZl9ub3JtKDMpCi0gICAgICAgICAgICAgW10KLSAgICAgICAgICAgICBzYWdlOiBL LmVsZW1lbnRzX29mX25vcm0oNTApCi0tICAgICAgICAgICAgWy03KmEgKyAxLCA1KmEgLSA1LCA3 KmEgKyAxXQotKyAgICAgICAgICAgIFstYSAtIDcsIDUqYSAtIDUsIDcqYSArIDFdCi0gCi0gICAg ICAgICBURVNUUzoKLSAKLUBAIC01ODYzLDcgKzU4NjQsNyBAQCBjbGFzcyBOdW1iZXJGaWVsZF9n ZW5lcmljKFdpdGhFcXVhbGl0eUJ5SWQsIG51bWJlcl9maWVsZF9iYXNlLk51bWJlckZpZWxkKToK LSAgICAgICAgICAgICBzYWdlOiBLLmZhY3RvcigxK2EpCi0gICAgICAgICAgICAgRnJhY3Rpb25h bCBpZGVhbCAoYSArIDEpCi0gICAgICAgICAgICAgc2FnZTogSy5mYWN0b3IoMSthLzUpCi0tICAg ICAgICAgICAgKEZyYWN0aW9uYWwgaWRlYWwgKGEgKyAxKSkgKiAoRnJhY3Rpb25hbCBpZGVhbCAo LWEgLSAyKSleLTEgKiAoRnJhY3Rpb25hbCBpZGVhbCAoMiphICsgMSkpXi0xICogKEZyYWN0aW9u YWwgaWRlYWwgKC0zKmEgLSAyKSkKLSsgICAgICAgICAgICAoRnJhY3Rpb25hbCBpZGVhbCAoYSAr IDEpKSAqIChGcmFjdGlvbmFsIGlkZWFsICgtYSAtIDIpKV4tMSAqIChGcmFjdGlvbmFsIGlkZWFs ICgyKmEgKyAxKSleLTEgKiAoRnJhY3Rpb25hbCBpZGVhbCAoLTIqYSArIDMpKQotIAotICAgICAg ICAgQW4gZXhhbXBsZSBvdmVyIGEgcmVsYXRpdmUgbnVtYmVyIGZpZWxkOjoKLSAKLUBAIC02NDYw LDkgKzY0NjEsOSBAQCBjbGFzcyBOdW1iZXJGaWVsZF9nZW5lcmljKFdpdGhFcXVhbGl0eUJ5SWQs IG51bWJlcl9maWVsZF9iYXNlLk51bWJlckZpZWxkKToKLSAgICAgICAgICAgICBzYWdlOiBuZXdf YmFzaXMgPSBrLnJlZHVjZWRfYmFzaXMocHJlYz0xMjApCi0gICAgICAgICAgICAgc2FnZTogW2Mu bWlucG9seSgpIGZvciBjIGluIG5ld19iYXNpc10KLSAgICAgICAgICAgICBbeCAtIDEsCi0tICAg ICAgICAgICAgIHheMiAtIHggKyAxLAotKyAgICAgICAgICAgICB4XjIgKyB4ICsgMSwKLSsgICAg ICAgICAgICAgeF42ICsgMyp4XjUgLSAxMDIqeF40IC0gMTAzKnheMyArIDEwNTcyKnheMiAtIDU5 OTE5KnggKyAxMjc2NTcsCi0gICAgICAgICAgICAgIHheNiArIDMqeF41IC0gMTAyKnheNCAtIDEw Myp4XjMgKyAxMDU3Mip4XjIgLSA1OTkxOSp4ICsgMTI3NjU3LAotLSAgICAgICAgICAgICB4XjYg LSAzKnheNSAtIDEwMip4XjQgKyAzMTUqeF4zICsgMTAyNTQqeF4yIC0gODA5NTUqeCArIDE5ODE0 NywKLSAgICAgICAgICAgICAgeF4zIC0gMTcxKnggKyA4NDgsCi0gICAgICAgICAgICAgIHheNiAr IDE3MSp4XjQgKyAxNjk2KnheMyArIDI5MjQxKnheMiArIDE0NTAwOCp4ICsgNzE5MTA0XQotICAg ICAgICAgICAgIHNhZ2U6IFIgPSBrLm9yZGVyKG5ld19iYXNpcykKLUBAIC03MDU4LDcgKzcwNTks NyBAQCBjbGFzcyBOdW1iZXJGaWVsZF9nZW5lcmljKFdpdGhFcXVhbGl0eUJ5SWQsIG51bWJlcl9m aWVsZF9iYXNlLk51bWJlckZpZWxkKToKLSAgICAgICAgICAgICAgLWFeMTYgLSBhXjE1IC0gYV4x NCAtIGFeMTMgLSBhXjEyIC0gYV4xMSAtIGFeMTAgLSBhXjkgLSBhXjggLSBhXjcgLSBhXjYgLSBh XjUgLSBhXjQgLSBhXjMgLSBhXjIgKyAyLAotICAgICAgICAgICAgICAtMiphXjE2ICsgMyphXjE1 IC0gMyphXjE0ICsgMyphXjEzIC0gMyphXjEyICsgYV4xMSAtIGFeOSArIDMqYV44IC0gNCphXjcg KyA1KmFeNiAtIDYqYV41ICsgNCphXjQgLSAzKmFeMyArIDIqYV4yICsgMiphIC0gNCwKLSAgICAg ICAgICAgICAgYV4xNSAtIGFeMTIgKyBhXjEwIC0gYV45IC0gMiphXjggKyAzKmFeNyArIGFeNiAt IDMqYV41ICsgYV40ICsgNCphXjMgLSAzKmFeMiAtIDIqYSArIDIsCi0tICAgICAgICAgICAgIC1h XjE0IC0gYV4xMyArIGFeMTIgKyAyKmFeMTAgKyBhXjggLSAyKmFeNyAtIDIqYV42ICsgMiphXjMg LSBhXjIgKyAyKmEgLSAyKQotKyAgICAgICAgICAgICAyKmFeMTYgKyBhXjE1IC0gYV4xMSAtIDMq YV4xMCAtIDQqYV45IC0gNCphXjggLSA0KmFeNyAtIDUqYV42IC0gNyphXjUgLSA4KmFeNCAtIDYq YV4zIC0gNSphXjIgLSA2KmEgLSA3KQotIAotICAgICAgICAgVEVTVFM6Ci0gCi1AQCAtNzA2Nyw3 ICs3MDY4LDcgQEAgY2xhc3MgTnVtYmVyRmllbGRfZ2VuZXJpYyhXaXRoRXF1YWxpdHlCeUlkLCBu dW1iZXJfZmllbGRfYmFzZS5OdW1iZXJGaWVsZCk6Ci0gCi0gICAgICAgICAgICAgc2FnZTogSy48 YT4gPSBOdW1iZXJGaWVsZCgxLzIqeF4yIC0gMS82KQotICAgICAgICAgICAgIHNhZ2U6IEsudW5p dHMoKQotLSAgICAgICAgICAgICgtMyphICsgMiwpCi0rICAgICAgICAgICAgKDMqYSAtIDIsKQot ICAgICAgICAgIiIiCi0gICAgICAgICBwcm9vZiA9IHByb29mX2ZsYWcocHJvb2YpCi0gCi1AQCAt NzE0Niw3ICs3MTQ3LDcgQEAgY2xhc3MgTnVtYmVyRmllbGRfZ2VuZXJpYyhXaXRoRXF1YWxpdHlC eUlkLCBudW1iZXJfZmllbGRfYmFzZS5OdW1iZXJGaWVsZCk6Ci0gICAgICAgICAgICAgc2FnZTog VS5nZW5zKCkKLSAgICAgICAgICAgICAodTAsIHUxLCB1MiwgdTMsIHU0LCB1NSwgdTYsIHU3LCB1 OCkKLSAgICAgICAgICAgICBzYWdlOiBVLmdlbnNfdmFsdWVzKCkgICMgcmVzdWx0IG5vdCBpbmRl cGVuZGVudGx5IHZlcmlmaWVkCi0tICAgICAgICAgICAgWy0xLCAtYV45IC0gYSArIDEsIC1hXjE2 ICsgYV4xNSAtIGFeMTQgKyBhXjEyIC0gYV4xMSArIGFeMTAgKyBhXjggLSBhXjcgKyAyKmFeNiAt IGFeNCArIDMqYV4zIC0gMiphXjIgKyAyKmEgLSAxLCAyKmFeMTYgLSBhXjE0IC0gYV4xMyArIDMq YV4xMiAtIDIqYV4xMCArIGFeOSArIDMqYV44IC0gMyphXjYgKyAzKmFeNSArIDMqYV40IC0gMiph XjMgLSAyKmFeMiArIDMqYSArIDQsIGFeMTUgKyBhXjE0ICsgMiphXjExICsgYV4xMCAtIGFeOSAr IGFeOCArIDIqYV43IC0gYV41ICsgMiphXjMgLSBhXjIgLSAzKmEgKyAxLCAtYV4xNiAtIGFeMTUg LSBhXjE0IC0gYV4xMyAtIGFeMTIgLSBhXjExIC0gYV4xMCAtIGFeOSAtIGFeOCAtIGFeNyAtIGFe NiAtIGFeNSAtIGFeNCAtIGFeMyAtIGFeMiArIDIsIC0yKmFeMTYgKyAzKmFeMTUgLSAzKmFeMTQg KyAzKmFeMTMgLSAzKmFeMTIgKyBhXjExIC0gYV45ICsgMyphXjggLSA0KmFeNyArIDUqYV42IC0g NiphXjUgKyA0KmFeNCAtIDMqYV4zICsgMiphXjIgKyAyKmEgLSA0LCBhXjE1IC0gYV4xMiArIGFe MTAgLSBhXjkgLSAyKmFeOCArIDMqYV43ICsgYV42IC0gMyphXjUgKyBhXjQgKyA0KmFeMyAtIDMq YV4yIC0gMiphICsgMiwgLWFeMTQgLSBhXjEzICsgYV4xMiArIDIqYV4xMCArIGFeOCAtIDIqYV43 IC0gMiphXjYgKyAyKmFeMyAtIGFeMiArIDIqYSAtIDJdCi0rICAgICAgICAgICAgWy0xLCAtYV45 IC0gYSArIDEsIC1hXjE2ICsgYV4xNSAtIGFeMTQgKyBhXjEyIC0gYV4xMSArIGFeMTAgKyBhXjgg LSBhXjcgKyAyKmFeNiAtIGFeNCArIDMqYV4zIC0gMiphXjIgKyAyKmEgLSAxLCAyKmFeMTYgLSBh XjE0IC0gYV4xMyArIDMqYV4xMiAtIDIqYV4xMCArIGFeOSArIDMqYV44IC0gMyphXjYgKyAzKmFe NSArIDMqYV40IC0gMiphXjMgLSAyKmFeMiArIDMqYSArIDQsIGFeMTUgKyBhXjE0ICsgMiphXjEx ICsgYV4xMCAtIGFeOSArIGFeOCArIDIqYV43IC0gYV41ICsgMiphXjMgLSBhXjIgLSAzKmEgKyAx LCAtYV4xNiAtIGFeMTUgLSBhXjE0IC0gYV4xMyAtIGFeMTIgLSBhXjExIC0gYV4xMCAtIGFeOSAt IGFeOCAtIGFeNyAtIGFeNiAtIGFeNSAtIGFeNCAtIGFeMyAtIGFeMiArIDIsIC0yKmFeMTYgKyAz KmFeMTUgLSAzKmFeMTQgKyAzKmFeMTMgLSAzKmFeMTIgKyBhXjExIC0gYV45ICsgMyphXjggLSA0 KmFeNyArIDUqYV42IC0gNiphXjUgKyA0KmFeNCAtIDMqYV4zICsgMiphXjIgKyAyKmEgLSA0LCBh XjE1IC0gYV4xMiArIGFeMTAgLSBhXjkgLSAyKmFeOCArIDMqYV43ICsgYV42IC0gMyphXjUgKyBh XjQgKyA0KmFeMyAtIDMqYV4yIC0gMiphICsgMiwgMiphXjE2ICsgYV4xNSAtIGFeMTEgLSAzKmFe MTAgLSA0KmFeOSAtIDQqYV44IC0gNCphXjcgLSA1KmFeNiAtIDcqYV41IC0gOCphXjQgLSA2KmFe MyAtIDUqYV4yIC0gNiphIC0gN10KLSAgICAgICAgICIiIgotICAgICAgICAgcHJvb2YgPSBwcm9v Zl9mbGFnKHByb29mKQotIAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVs ZC9udW1iZXJfZmllbGRfZWxlbWVudC5weXggYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQv bnVtYmVyX2ZpZWxkX2VsZW1lbnQucHl4Ci1pbmRleCA3ODRjMjM5ZGMxLi5hYTc0MDA2OWRjIDEw MDY0NAotLS0tIGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL251bWJlcl9maWVsZF9lbGVt ZW50LnB5eAotKysrIGIvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL251bWJlcl9maWVsZF9l bGVtZW50LnB5eAotQEAgLTQ0NDYsNyArNDQ0Niw3IEBAIGNkZWYgY2xhc3MgTnVtYmVyRmllbGRF bGVtZW50KEZpZWxkRWxlbWVudCk6Ci0gICAgICAgICAgICAgc2FnZTogZiA9IFFpLmVtYmVkZGlu Z3MoSylbMF0KLSAgICAgICAgICAgICBzYWdlOiBhID0gZigyKzMqaSkgKiAoMi16ZXRhKV4yCi0g ICAgICAgICAgICAgc2FnZTogYS5kZXNjZW5kX21vZF9wb3dlcihRaSwyKQotLSAgICAgICAgICAg IFstMyppIC0gMiwgLTIqaSArIDNdCi0rICAgICAgICAgICAgWy0yKmkgKyAzLCAzKmkgKyAyXQot IAotICAgICAgICAgQW4gYWJzb2x1dGUgZXhhbXBsZTo6Ci0gCi1AQCAtNTEyNCw3ICs1MTI0LDcg QEAgY2RlZiBjbGFzcyBOdW1iZXJGaWVsZEVsZW1lbnRfcmVsYXRpdmUoTnVtYmVyRmllbGRFbGVt ZW50KToKLSAgICAgICAgIEVYQU1QTEVTOjoKLSAKLSAgICAgICAgICAgICBzYWdlOiBLLjxhLCBi LCBjPiA9IE51bWJlckZpZWxkKFt4XjIgLSAyLCB4XjIgLSAzLCB4XjIgLSA1XSkKLS0gICAgICAg ICAgICBzYWdlOiBQID0gSy5wcmltZV9mYWN0b3JzKDUpWzBdCi0rICAgICAgICAgICAgc2FnZTog UCA9IEsucHJpbWVfZmFjdG9ycyg1KVsxXQotICAgICAgICAgICAgIHNhZ2U6ICgyKmEgKyBiIC0g YykudmFsdWF0aW9uKFApCi0gICAgICAgICAgICAgMQotICAgICAgICAgIiIiCi1kaWZmIC0tZ2l0 IGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL251bWJlcl9maWVsZF9pZGVhbC5weSBiL3Ny Yy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9udW1iZXJfZmllbGRfaWRlYWwucHkKLWluZGV4IDVm NTg3NTU2YTQuLjMzNDgxZmVhZDAgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9yaW5ncy9udW1iZXJf ZmllbGQvbnVtYmVyX2ZpZWxkX2lkZWFsLnB5Ci0rKysgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJf ZmllbGQvbnVtYmVyX2ZpZWxkX2lkZWFsLnB5Ci1AQCAtMzM1NSw3ICszMzU1LDcgQEAgZGVmIHF1 b3RpZW50X2NoYXJfcChJLCBwKToKLSAgICAgICAgIFtdCi0gCi0gICAgICAgICBzYWdlOiBJID0g Sy5mYWN0b3IoMTMpWzBdWzBdOyBJCi0tICAgICAgICBGcmFjdGlvbmFsIGlkZWFsICgtMyppIC0g MikKLSsgICAgICAgIEZyYWN0aW9uYWwgaWRlYWwgKC0yKmkgKyAzKQotICAgICAgICAgc2FnZTog SS5yZXNpZHVlX2NsYXNzX2RlZ3JlZSgpCi0gICAgICAgICAxCi0gICAgICAgICBzYWdlOiBxdW90 aWVudF9jaGFyX3AoSSwgMTMpWzBdCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVy X2ZpZWxkL251bWJlcl9maWVsZF9pZGVhbF9yZWwucHkgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJf ZmllbGQvbnVtYmVyX2ZpZWxkX2lkZWFsX3JlbC5weQotaW5kZXggYmFlMzZkNGI5Yy4uZjY0YmQ1 Yjc2MSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9udW1iZXJfZmll bGRfaWRlYWxfcmVsLnB5Ci0rKysgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvbnVtYmVy X2ZpZWxkX2lkZWFsX3JlbC5weQotQEAgLTI3Miw3ICsyNzIsNyBAQCBjbGFzcyBOdW1iZXJGaWVs ZEZyYWN0aW9uYWxJZGVhbF9yZWwoTnVtYmVyRmllbGRGcmFjdGlvbmFsSWRlYWwpOgotICAgICAg ICAgICAgIHNhZ2U6IEwuPGI+ID0gSy5leHRlbnNpb24oNSp4XjIgKyAxKQotICAgICAgICAgICAg IHNhZ2U6IFAgPSBMLnByaW1lc19hYm92ZSgyKVswXQotICAgICAgICAgICAgIHNhZ2U6IFAuZ2Vu c19yZWR1Y2VkKCkKLS0gICAgICAgICAgICAoMiwgMTUqYSpiICsgMyphICsgMSkKLSsgICAgICAg ICAgICAoMiwgLTE1KmEqYiArIDMqYSArIDEpCi0gICAgICAgICAiIiIKLSAgICAgICAgIHRyeToK LSAgICAgICAgICAgICAjIENvbXB1dGUgdGhlIHNpbmdsZSBnZW5lcmF0b3IsIGlmIGl0IGV4aXN0 cwotQEAgLTQwMSw3ICs0MDEsNyBAQCBjbGFzcyBOdW1iZXJGaWVsZEZyYWN0aW9uYWxJZGVhbF9y ZWwoTnVtYmVyRmllbGRGcmFjdGlvbmFsSWRlYWwpOgotICAgICAgICAgICAgIHNhZ2U6IEwuPGI+ ID0gSy5leHRlbnNpb24oNSp4XjIgKyAxKQotICAgICAgICAgICAgIHNhZ2U6IFAgPSBMLnByaW1l c19hYm92ZSgyKVswXQotICAgICAgICAgICAgIHNhZ2U6IFAucmVsYXRpdmVfbm9ybSgpCi0tICAg ICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoLTYqYSArIDIpCi0rICAgICAgICAgICAgRnJhY3Rp b25hbCBpZGVhbCAoNiphICsgMikKLSAgICAgICAgICIiIgotICAgICAgICAgTCA9IHNlbGYubnVt YmVyX2ZpZWxkKCkKLSAgICAgICAgIEsgPSBMLmJhc2VfZmllbGQoKQotQEAgLTUxOCw3ICs1MTgs NyBAQCBjbGFzcyBOdW1iZXJGaWVsZEZyYWN0aW9uYWxJZGVhbF9yZWwoTnVtYmVyRmllbGRGcmFj dGlvbmFsSWRlYWwpOgotICAgICAgICAgICAgIHNhZ2U6IEwuPGI+ID0gSy5leHRlbnNpb24oNSp4 XjIgKyAxKQotICAgICAgICAgICAgIHNhZ2U6IFAgPSBMLnByaW1lc19hYm92ZSgyKVswXQotICAg ICAgICAgICAgIHNhZ2U6IFAuaWRlYWxfYmVsb3coKQotLSAgICAgICAgICAgIEZyYWN0aW9uYWwg aWRlYWwgKC02KmEgKyAyKQotKyAgICAgICAgICAgIEZyYWN0aW9uYWwgaWRlYWwgKDYqYSArIDIp Ci0gICAgICAgICAiIiIKLSAgICAgICAgIEwgPSBzZWxmLm51bWJlcl9maWVsZCgpCi0gICAgICAg ICBLID0gTC5iYXNlX2ZpZWxkKCkKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9yaW5ncy9udW1iZXJf ZmllbGQvbnVtYmVyX2ZpZWxkX3JlbC5weSBiL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9u dW1iZXJfZmllbGRfcmVsLnB5Ci1pbmRleCBkMzM5ODBjNGIxLi41MGU4NDZiMjA1IDEwMDY0NAot LS0tIGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL251bWJlcl9maWVsZF9yZWwucHkKLSsr KyBiL3NyYy9zYWdlL3JpbmdzL251bWJlcl9maWVsZC9udW1iZXJfZmllbGRfcmVsLnB5Ci1AQCAt MjEzLDE0ICsyMTMsMTQgQEAgY2xhc3MgTnVtYmVyRmllbGRfcmVsYXRpdmUoTnVtYmVyRmllbGRf Z2VuZXJpYyk6Ci0gICAgICAgICAgICAgc2FnZTogbC48Yj4gPSBrLmV4dGVuc2lvbig1KnheMiAr IDMpOyBsCi0gICAgICAgICAgICAgTnVtYmVyIEZpZWxkIGluIGIgd2l0aCBkZWZpbmluZyBwb2x5 bm9taWFsIDUqeF4yICsgMyBvdmVyIGl0cyBiYXNlIGZpZWxkCi0gICAgICAgICAgICAgc2FnZTog bC5wYXJpX3JuZigpCi0tICAgICAgICAgICAgW3heMiArICgtMS8yKnleMiArIHkgLSAzLzIpKngg KyAoLTEvNCp5XjMgKyAxLzQqeV4yIC0gMy80KnkgLSAxMy80KSwgLi4uLCB5XjQgKyA2KnleMiAr IDEsIHheMiArICgtMS8yKnleMiArIHkgLSAzLzIpKnggKyAoLTEvNCp5XjMgKyAxLzQqeV4yIC0g My80KnkgLSAxMy80KV0sIFswLCAwXV0KLSsgICAgICAgICAgICBbeF4yICsgKC15XjMgKyAxLzIq eV4yIC0gNip5ICsgMy8yKSp4ICsgKC0zLzQqeV4zIC0gMS80KnleMiAtIDE3LzQqeSAtIDE5LzQp LCAuLi4sIHleNCArIDYqeV4yICsgMSwgeF4yICsgKC15XjMgKyAxLzIqeV4yIC0gNip5ICsgMy8y KSp4ICsgKC0zLzQqeV4zIC0gMS80KnleMiAtIDE3LzQqeSAtIDE5LzQpXSwgWzAsIDBdXQotICAg ICAgICAgICAgIHNhZ2U6IGIKLSAgICAgICAgICAgICBiCi0gCi0gICAgICAgICAgICAgc2FnZTog bC48Yj4gPSBrLmV4dGVuc2lvbih4XjIgKyAzLzUpOyBsCi0gICAgICAgICAgICAgTnVtYmVyIEZp ZWxkIGluIGIgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHheMiArIDMvNSBvdmVyIGl0cyBiYXNl IGZpZWxkCi0gICAgICAgICAgICAgc2FnZTogbC5wYXJpX3JuZigpCi0tICAgICAgICAgICAgW3he MiArICgtMS8yKnleMiArIHkgLSAzLzIpKnggKyAoLTEvNCp5XjMgKyAxLzQqeV4yIC0gMy80Knkg LSAxMy80KSwgLi4uLCB5XjQgKyA2KnleMiArIDEsIHheMiArICgtMS8yKnleMiArIHkgLSAzLzIp KnggKyAoLTEvNCp5XjMgKyAxLzQqeV4yIC0gMy80KnkgLSAxMy80KV0sIFswLCAwXV0KLSsgICAg ICAgICAgICBbeF4yICsgKC15XjMgKyAxLzIqeV4yIC0gNip5ICsgMy8yKSp4ICsgKC0zLzQqeV4z IC0gMS80KnleMiAtIDE3LzQqeSAtIDE5LzQpLCAuLi4sIHleNCArIDYqeV4yICsgMSwgeF4yICsg KC15XjMgKyAxLzIqeV4yIC0gNip5ICsgMy8yKSp4ICsgKC0zLzQqeV4zIC0gMS80KnleMiAtIDE3 LzQqeSAtIDE5LzQpXSwgWzAsIDBdXQotICAgICAgICAgICAgIHNhZ2U6IGIKLSAgICAgICAgICAg ICBiCi0gCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL29yZGVyLnB5 IGIvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL29yZGVyLnB5Ci1pbmRleCA2ZWNhODllZDhk Li43OGVmNGMzYjMzIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL29y ZGVyLnB5Ci0rKysgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvb3JkZXIucHkKLUBAIC01 MjAsNyArNTIwLDcgQEAgY2xhc3MgT3JkZXIoSW50ZWdyYWxEb21haW4sIHNhZ2UucmluZ3MuYWJj Lk9yZGVyKToKLSAgICAgICAgICAgICBzYWdlOiBrLjxhPiA9IE51bWJlckZpZWxkKHheMiArIDUw NzcpOyBHID0gay5jbGFzc19ncm91cCgpOyBHCi0gICAgICAgICAgICAgQ2xhc3MgZ3JvdXAgb2Yg b3JkZXIgMjIgd2l0aCBzdHJ1Y3R1cmUgQzIyIG9mIE51bWJlciBGaWVsZCBpbiBhIHdpdGggZGVm aW5pbmcgcG9seW5vbWlhbCB4XjIgKyA1MDc3Ci0gICAgICAgICAgICAgc2FnZTogRy4wIF4gLTkK LS0gICAgICAgICAgICBGcmFjdGlvbmFsIGlkZWFsIGNsYXNzICgxMSwgYSArIDcpCi0rICAgICAg ICAgICAgRnJhY3Rpb25hbCBpZGVhbCBjbGFzcyAoNDMsIGEgKyAxMykKLSAgICAgICAgICAgICBz YWdlOiBPayA9IGsubWF4aW1hbF9vcmRlcigpOyBPawotICAgICAgICAgICAgIE1heGltYWwgT3Jk ZXIgaW4gTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHheMiArIDUw NzcKLSAgICAgICAgICAgICBzYWdlOiBPayAqICgxMSwgYSArIDcpCi1kaWZmIC0tZ2l0IGEvc3Jj L3NhZ2UvcmluZ3MvbnVtYmVyX2ZpZWxkL3NlbG1lcl9ncm91cC5weSBiL3NyYy9zYWdlL3Jpbmdz L251bWJlcl9maWVsZC9zZWxtZXJfZ3JvdXAucHkKLWluZGV4IGM1MzRhYWE5ZjYuLjZiYzY3NTY1 ZDIgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvc2VsbWVyX2dyb3Vw LnB5Ci0rKysgYi9zcmMvc2FnZS9yaW5ncy9udW1iZXJfZmllbGQvc2VsbWVyX2dyb3VwLnB5Ci1A QCAtNDkxLDcgKzQ5MSw3IEBAIGRlZiBwU2VsbWVyR3JvdXAoSywgUywgcCwgcHJvb2Y9Tm9uZSwg ZGVidWc9RmFsc2UpOgotIAotICAgICAgICAgc2FnZTogW0suaWRlYWwoZykuZmFjdG9yKCkgZm9y IGcgaW4gZ2Vuc10KLSAgICAgICAgIFsoRnJhY3Rpb25hbCBpZGVhbCAoMiwgYSArIDEpKSAqIChG cmFjdGlvbmFsIGlkZWFsICgzLCBhICsgMSkpLAotLSAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAo LWEpLAotKyAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoYSksCi0gICAgICAgICAoRnJhY3Rpb25h bCBpZGVhbCAoMiwgYSArIDEpKV4yLAotICAgICAgICAgMV0KLSAKLWRpZmYgLS1naXQgYS9zcmMv c2FnZS9yaW5ncy9wb2x5bm9taWFsL3BvbHlub21pYWxfcXVvdGllbnRfcmluZy5weSBiL3NyYy9z YWdlL3JpbmdzL3BvbHlub21pYWwvcG9seW5vbWlhbF9xdW90aWVudF9yaW5nLnB5Ci1pbmRleCBi YjVkODM1NmJlLi44YTdlNWZhNjZmIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvcmluZ3MvcG9seW5v bWlhbC9wb2x5bm9taWFsX3F1b3RpZW50X3JpbmcucHkKLSsrKyBiL3NyYy9zYWdlL3JpbmdzL3Bv bHlub21pYWwvcG9seW5vbWlhbF9xdW90aWVudF9yaW5nLnB5Ci1AQCAtMTc5MSw3ICsxNzkxLDcg QEAgY2xhc3MgUG9seW5vbWlhbFF1b3RpZW50UmluZ19nZW5lcmljKENvbW11dGF0aXZlUmluZyk6 Ci0gICAgICAgICAgICAgc2FnZTogRC5zZWxtZXJfZ2VuZXJhdG9ycyhbSy5pZGVhbCgyLCAtYSsx KSwgSy5pZGVhbCgzLCBhKzEpXSwgMykKLSAgICAgICAgICAgICBbMiwgYSArIDFdCi0gICAgICAg ICAgICAgc2FnZTogRC5zZWxtZXJfZ2VuZXJhdG9ycyhbSy5pZGVhbCgyLCAtYSsxKSwgSy5pZGVh bCgzLCBhKzEpLCBLLmlkZWFsKGEpXSwgMykKLS0gICAgICAgICAgICBbMiwgYSArIDEsIGFdCi0r ICAgICAgICAgICAgWzIsIGEgKyAxLCAtYV0KLSAKLSAgICAgICAgICIiIgotICAgICAgICAgZmll bGRzLCBpc29zLCBpc29fY2xhc3NlcyA9IHNlbGYuX1NfZGVjb21wb3NpdGlvbih0dXBsZShTKSkK LWRpZmYgLS1naXQgYS9zcmMvc2FnZS9yaW5ncy9xcWJhci5weSBiL3NyYy9zYWdlL3JpbmdzL3Fx YmFyLnB5Ci1pbmRleCA3MDRiNzdjZTVmLi44M2VlNDU0OWU0IDEwMDY0NAotLS0tIGEvc3JjL3Nh Z2UvcmluZ3MvcXFiYXIucHkKLSsrKyBiL3NyYy9zYWdlL3JpbmdzL3FxYmFyLnB5Ci1AQCAtMzEy LDggKzMxMiw4IEBAIGFuZCB3ZSBnZXQgYSB3YXkgdG8gcHJvZHVjZSB0aGUgbnVtYmVyIGRpcmVj dGx5OjoKLSAgICAgVHJ1ZQotICAgICBzYWdlOiBzYWdlX2lucHV0KG4pCi0gICAgIFIuPHk+ID0g UVFbXQotLSAgICB2ID0gQUEucG9seW5vbWlhbF9yb290KEFBLmNvbW1vbl9wb2x5bm9taWFsKHle NCAtIDQqeV4yICsgMSksIFJJRihSUigwLjUxNzYzODA5MDIwNTA0MTQ4KSwgUlIoMC41MTc2Mzgw OTAyMDUwNDE1OSkpKQotLSAgICAtMTA5KnZeMyAtIDg5KnZeMiArIDMyNyp2ICsgMTc4Ci0rICAg IHYgPSBBQS5wb2x5bm9taWFsX3Jvb3QoQUEuY29tbW9uX3BvbHlub21pYWwoeV40IC0gNCp5XjIg KyAxKSwgUklGKC1SUigxLjkzMTg1MTY1MjU3ODEzNjYpLCAtUlIoMS45MzE4NTE2NTI1NzgxMzY0 KSkpCi0rICAgIC0xMDkqdl4zICsgODkqdl4yICsgMzI3KnYgLSAxNzgKLSAKLSBXZSBjYW4gYWxz byBzZWUgdGhhdCBzb21lIGNvbXB1dGF0aW9ucyAoYmFzaWNhbGx5LCB0aG9zZSB3aGljaCBhcmUK LSBlYXN5IHRvIHBlcmZvcm0gZXhhY3RseSkgYXJlIHBlcmZvcm1lZCBkaXJlY3RseSwgaW5zdGVh ZCBvZiBzdG9yaW5nCi1AQCAtMzYyLDcgKzM2Miw3IEBAIGFsZ29yaXRobXMgaW4gOnRyYWM6YDEw MjU1YDo6Ci0gICAgICMgVmVyaWZpZWQKLSAgICAgUjEuPHg+ID0gUVFiYXJbXQotICAgICBSMi48 eT4gPSBRUVtdCi0tICAgIHYgPSBBQS5wb2x5bm9taWFsX3Jvb3QoQUEuY29tbW9uX3BvbHlub21p YWwoeV40IC0gNCp5XjIgKyAxKSwgUklGKFJSKDAuNTE3NjM4MDkwMjA1MDQxNDgpLCBSUigwLjUx NzYzODA5MDIwNTA0MTU5KSkpCi0rICAgIHYgPSBBQS5wb2x5bm9taWFsX3Jvb3QoQUEuY29tbW9u X3BvbHlub21pYWwoeV40IC0gNCp5XjIgKyAxKSwgUklGKC1SUigxLjkzMTg1MTY1MjU3ODEzNjYp LCAtUlIoMS45MzE4NTE2NTI1NzgxMzY0KSkpCi0gICAgIEFBLnBvbHlub21pYWxfcm9vdChBQS5j b21tb25fcG9seW5vbWlhbCh4XjQgKyBRUWJhcih2XjMgLSAzKnYgLSAxKSp4XjMgKyBRUWJhcigt dl4zICsgMyp2IC0gMykqeF4yICsgUVFiYXIoLTMqdl4zICsgOSp2ICsgMykqeCArIFFRYmFyKDMq dl4zIC0gOSp2KSksIFJJRihSUigwLjk5OTk5OTk5OTk5OTk5OTg5KSwgUlIoMS4wMDAwMDAwMDAw MDAwMDAyKSkpCi0gICAgIHNhZ2U6IG9uZQotICAgICAxCi1AQCAtMjMxMCw3ICsyMzEwLDcgQEAg ZGVmIGRvX3BvbHJlZChwb2x5LCB0aHJlc2hvbGQ9MzIpOgotICAgICBjb3N0ID0gMiAqIGJpdHNp emUubmJpdHMoKSArIDUgKiBwb2x5LmRlZ3JlZSgpLm5iaXRzKCkKLSAgICAgaWYgY29zdCA+IHRo cmVzaG9sZDoKLSAgICAgICAgIHJldHVybiBwYXJlbnQuZ2VuKCksIHBhcmVudC5nZW4oKSwgcG9s eQotLSAgICBuZXdfcG9seSwgZWx0X2JhY2sgPSBwb2x5Ll9fcGFyaV9fKCkucG9scmVkYmVzdChm bGFnPTEpCi0rICAgIG5ld19wb2x5LCBlbHRfYmFjayA9IHBvbHkubnVtZXJhdG9yKCkuX19wYXJp X18oKS5wb2xyZWRiZXN0KGZsYWc9MSkKLSAgICAgZWx0X2Z3ZCA9IGVsdF9iYWNrLm1vZHJldmVy c2UoKQotICAgICByZXR1cm4gcGFyZW50KGVsdF9md2QubGlmdCgpKSwgcGFyZW50KGVsdF9iYWNr LmxpZnQoKSksIHBhcmVudChuZXdfcG9seSkKLSAKLUBAIC0yNTQyLDEwICsyNTQyLDEwIEBAIGRl ZiBudW1iZXJfZmllbGRfZWxlbWVudHNfZnJvbV9hbGdlYnJhaWNzKG51bWJlcnMsIG1pbmltYWw9 RmFsc2UsIHNhbWVfZmllbGQ9RmFsCi0gICAgICAgICAgICBEZWZuOiBhIHwtLT4gMS40MTQyMTM1 NjIzNzMwOTU/KQotIAotICAgICAgICAgc2FnZTogbnVtYmVyX2ZpZWxkX2VsZW1lbnRzX2Zyb21f YWxnZWJyYWljcygocnQyLHJ0MykpCi0tICAgICAgICAoTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBk ZWZpbmluZyBwb2x5bm9taWFsIHleNCAtIDQqeV4yICsgMSwgWy1hXjMgKyAzKmEsIC1hXjIgKyAy XSwgUmluZyBtb3JwaGlzbToKLSsgICAgICAgIChOdW1iZXIgRmllbGQgaW4gYSB3aXRoIGRlZmlu aW5nIHBvbHlub21pYWwgeV40IC0gNCp5XjIgKyAxLCBbLWFeMyArIDMqYSwgYV4yIC0gMl0sIFJp bmcgbW9ycGhpc206Ci0gICAgICAgICAgICAgRnJvbTogTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBk ZWZpbmluZyBwb2x5bm9taWFsIHleNCAtIDQqeV4yICsgMQotICAgICAgICAgICAgIFRvOiAgIEFs Z2VicmFpYyBSZWFsIEZpZWxkCi0tICAgICAgICAgICAgRGVmbjogYSB8LS0+IDAuNTE3NjM4MDkw MjA1MDQxNT8pCi0rICAgICAgICAgICAgRGVmbjogYSB8LS0+IC0xLjkzMTg1MTY1MjU3ODEzNz8p Ci0gCi0gICAgIGBgcnQzYWBgIGlzIGEgcmVhbCBudW1iZXIgaW4gYGBRUWJhcmBgLiAgT3JkaW5h cmlseSwgd2UnZCBnZXQgYSBob21vbW9ycGhpc20KLSAgICAgdG8gYGBBQWBgIChiZWNhdXNlIGFs bCBlbGVtZW50cyBhcmUgcmVhbCksIGJ1dCBpZiB3ZSBzcGVjaWZ5IGBgc2FtZV9maWVsZD1UcnVl YGAsCi1AQCAtMjU3MCw3ICsyNTcwLDcgQEAgZGVmIG51bWJlcl9maWVsZF9lbGVtZW50c19mcm9t X2FsZ2VicmFpY3MobnVtYmVycywgbWluaW1hbD1GYWxzZSwgc2FtZV9maWVsZD1GYWwKLSAgICAg ICAgIChOdW1iZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5nIHBvbHlub21pYWwgeV40IC0gNCp5 XjIgKyAxLCAtYV4zICsgMyphLCBSaW5nIG1vcnBoaXNtOgotICAgICAgICAgICAgIEZyb206IE51 bWJlciBGaWVsZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB5XjQgLSA0KnleMiArIDEK LSAgICAgICAgICAgICBUbzogICBBbGdlYnJhaWMgUmVhbCBGaWVsZAotLSAgICAgICAgICAgIERl Zm46IGEgfC0tPiAwLjUxNzYzODA5MDIwNTA0MTU/KQotKyAgICAgICAgICAgIERlZm46IGEgfC0t PiAtMS45MzE4NTE2NTI1NzgxMzc/KQotIAotICAgICBXZSBjYW4gc3BlY2lmeSBgYG1pbmltYWw9 VHJ1ZWBgIGlmIHdlIHdhbnQgdGhlIHNtYWxsZXN0IG51bWJlciBmaWVsZDo6Ci0gCi1AQCAtMjYx OCw3ICsyNjE4LDcgQEAgZGVmIG51bWJlcl9maWVsZF9lbGVtZW50c19mcm9tX2FsZ2VicmFpY3Mo bnVtYmVycywgbWluaW1hbD1GYWxzZSwgc2FtZV9maWVsZD1GYWwKLSAgICAgICAgIHNhZ2U6IG5m SV4yCi0gICAgICAgICAtMQotICAgICAgICAgc2FnZTogc3VtID0gbmZydDIgKyBuZnJ0MyArIG5m SSArIG5mejM7IHN1bQotLSAgICAgICAgMiphXjYgKyBhXjUgLSBhXjQgLSBhXjMgLSAyKmFeMiAt IGEKLSsgICAgICAgIGFeNSArIGFeNCAtIGFeMyArIDIqYV4yIC0gYSAtIDEKLSAgICAgICAgIHNh Z2U6IGhvbShzdW0pCi0gICAgICAgICAyLjY0NjI2NDM2OTk0MTk3Mz8gKyAxLjg2NjAyNTQwMzc4 NDQzOT8qSQotICAgICAgICAgc2FnZTogaG9tKHN1bSkgPT0gcnQyICsgcnQzICsgcXFJICsgejMK LUBAIC0yNjU4LDcgKzI2NTgsNyBAQCBkZWYgbnVtYmVyX2ZpZWxkX2VsZW1lbnRzX2Zyb21fYWxn ZWJyYWljcyhudW1iZXJzLCBtaW5pbWFsPUZhbHNlLCBzYW1lX2ZpZWxkPUZhbAotICAgICAgICAg c2FnZTogbmYsIG51bXMsIGhvbSA9IG51bWJlcl9maWVsZF9lbGVtZW50c19mcm9tX2FsZ2VicmFp Y3MoZWxlbXMsIGVtYmVkZGVkPVRydWUpCi0gICAgICAgICBzYWdlOiBuZgotICAgICAgICAgTnVt YmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHleMjQgLSA2KnleMjMgLi4u LSA5KnleMiArIDEKLS0gICAgICAgICAgd2l0aCBhID0gMC4yNTk4Njc4OTExNDMzNDM4PyArIDAu MDU3Mjg5MjI0NzA1ODQ1Nz8qSQotKyAgICAgICAgICB3aXRoIGEgPSAwLjI1OTg2Nzk/ICsgMC4w NTcyODkyPypJCi0gICAgICAgICBzYWdlOiBsaXN0KG1hcChRUWJhciwgbnVtcykpID09IGVsZW1z ID09IGxpc3QobWFwKGhvbSwgbnVtcykpCi0gICAgICAgICBUcnVlCi0gCi1AQCAtMjcyNSw3ICsy NzI1LDcgQEAgZGVmIG51bWJlcl9maWVsZF9lbGVtZW50c19mcm9tX2FsZ2VicmFpY3MobnVtYmVy cywgbWluaW1hbD1GYWxzZSwgc2FtZV9maWVsZD1GYWwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgc3FydCgyKSwgQUEucG9seW5vbWlhbF9yb290KHheMy0zLCBSSUYoMCwzKSksIDExLzksIDFd Ci0gICAgICAgICBzYWdlOiByZXMgPSBudW1iZXJfZmllbGRfZWxlbWVudHNfZnJvbV9hbGdlYnJh aWNzKG15X251bXMsIGVtYmVkZGVkPVRydWUpCi0gICAgICAgICBzYWdlOiByZXNbMF0KLS0gICAg ICAgIE51bWJlciBGaWVsZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB5XjI0IC0gMTA3 MDEwKnleMjIgLSAyNCp5XjIxICsgLi4uICsgMjUwNjc4NDQ3MTkzMDQwNjE4NjI0MzA3MDk2ODE1 MDQ4MDI0MzE4ODUzMjU0Mzg0IHdpdGggYSA9IC05NS41MDUzMDM5NDMzNTU0PwotKyAgICAgICAg TnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHleMjQgLSAxMDcwMTAq eV4yMiAtIDI0KnleMjEgKyAuLi4gKyAyNTA2Nzg0NDcxOTMwNDA2MTg2MjQzMDcwOTY4MTUwNDgw MjQzMTg4NTMyNTQzODQgd2l0aCBhID0gOTMuMzI1MzA3OTgxNzI0MjA/Ci0gICAgICIiIgotICAg ICBnZW4gPSBxcV9nZW5lcmF0b3IKLSAKLUBAIC0zMTI5LDcgKzMxMjksNyBAQCBjbGFzcyBBbGdl YnJhaWNHZW5lcmF0b3IoU2FnZU9iamVjdCk6Ci0gICAgICAgICAgICAgc2FnZTogcm9vdCA9IEFO Um9vdCh4XjIgLSB4IC0gMSwgUklGKDEsIDIpKQotICAgICAgICAgICAgIHNhZ2U6IGdlbiA9IEFs Z2VicmFpY0dlbmVyYXRvcihuZiwgcm9vdCkKLSAgICAgICAgICAgICBzYWdlOiBnZW4ucGFyaV9m aWVsZCgpCi0tICAgICAgICAgICAgIFt5XjIgLSB5IC0gMSwgWzIsIDBdLCAuLi5dCi0rICAgICAg ICAgICAgW1t5XjIgLSB5IC0gMSwgWzIsIDBdLCAuLi5dCi0gICAgICAgICAiIiIKLSAgICAgICAg IGlmIHNlbGYuaXNfdHJpdmlhbCgpOgotICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIk5v IFBBUkkgZmllbGQgYXR0YWNoZWQgdG8gdHJpdmlhbCBnZW5lcmF0b3IiKQotQEAgLTMyMTMsNyAr MzIxMyw3IEBAIGNsYXNzIEFsZ2VicmFpY0dlbmVyYXRvcihTYWdlT2JqZWN0KToKLSAgICAgICAg ICAgICBzYWdlOiBxcV9nZW5lcmF0b3IudW5pb24oZ2VuMykgaXMgZ2VuMwotICAgICAgICAgICAg IFRydWUKLSAgICAgICAgICAgICBzYWdlOiBnZW4yLnVuaW9uKGdlbjMpCi0tICAgICAgICAgICAg TnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHleNCAtIDQqeV4yICsg MSB3aXRoIGEgaW4gMC41MTc2MzgwOTAyMDUwNDE1PwotKyAgICAgICAgICAgIE51bWJlciBGaWVs ZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB5XjQgLSA0KnleMiArIDEgd2l0aCBhIGlu IC0xLjkzMTg1MTY1MjU3ODEzNz8KLSAgICAgICAgICIiIgotICAgICAgICAgaWYgc2VsZi5fdHJp dmlhbDoKLSAgICAgICAgICAgICByZXR1cm4gb3RoZXIKLUBAIC0zMzA2LDEzICszMzA2LDEzIEBA IGNsYXNzIEFsZ2VicmFpY0dlbmVyYXRvcihTYWdlT2JqZWN0KToKLSAgICAgICAgICAgICBOdW1i ZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5nIHBvbHlub21pYWwgeV4yIC0gMyB3aXRoIGEgaW4g MS43MzIwNTA4MDc1Njg4Nzg/Ci0gICAgICAgICAgICAgc2FnZTogZ2VuMl8zID0gZ2VuMi51bmlv bihnZW4zKQotICAgICAgICAgICAgIHNhZ2U6IGdlbjJfMwotLSAgICAgICAgICAgIE51bWJlciBG aWVsZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB5XjQgLSA0KnleMiArIDEgd2l0aCBh IGluIDAuNTE3NjM4MDkwMjA1MDQxNT8KLSsgICAgICAgICAgICBOdW1iZXIgRmllbGQgaW4gYSB3 aXRoIGRlZmluaW5nIHBvbHlub21pYWwgeV40IC0gNCp5XjIgKyAxIHdpdGggYSBpbiAtMS45MzE4 NTE2NTI1NzgxMzc/Ci0gICAgICAgICAgICAgc2FnZTogcXFfZ2VuZXJhdG9yLnN1cGVyX3BvbHko Z2VuMikgaXMgTm9uZQotICAgICAgICAgICAgIFRydWUKLSAgICAgICAgICAgICBzYWdlOiBnZW4y LnN1cGVyX3BvbHkoZ2VuMl8zKQotICAgICAgICAgICAgIC1hXjMgKyAzKmEKLSAgICAgICAgICAg ICBzYWdlOiBnZW4zLnN1cGVyX3BvbHkoZ2VuMl8zKQotLSAgICAgICAgICAgIC1hXjIgKyAyCi0r ICAgICAgICAgICAgYV4yIC0gMgotIAotICAgICAgICAgIiIiCi0gICAgICAgICBpZiBjaGVja2Vk IGlzIE5vbmU6Ci1AQCAtMzM2MCwxMyArMzM2MCwxMyBAQCBjbGFzcyBBbGdlYnJhaWNHZW5lcmF0 b3IoU2FnZU9iamVjdCk6Ci0gICAgICAgICAgICAgc2FnZTogc3FydDMgPSBBTkV4dGVuc2lvbkVs ZW1lbnQoZ2VuMywgbmYzLmdlbigpKQotICAgICAgICAgICAgIHNhZ2U6IGdlbjJfMyA9IGdlbjIu dW5pb24oZ2VuMykKLSAgICAgICAgICAgICBzYWdlOiBnZW4yXzMKLS0gICAgICAgICAgICBOdW1i ZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5nIHBvbHlub21pYWwgeV40IC0gNCp5XjIgKyAxIHdp dGggYSBpbiAwLjUxNzYzODA5MDIwNTA0MTU/Ci0rICAgICAgICAgICAgTnVtYmVyIEZpZWxkIGlu IGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHleNCAtIDQqeV4yICsgMSB3aXRoIGEgaW4gLTEu OTMxODUxNjUyNTc4MTM3PwotICAgICAgICAgICAgIHNhZ2U6IGdlbjJfMyhzcXJ0MikKLSAgICAg ICAgICAgICAtYV4zICsgMyphCi0gICAgICAgICAgICAgc2FnZTogZ2VuMl8zKEFOUmF0aW9uYWwo MS83KSkKLSAgICAgICAgICAgICAxLzcKLSAgICAgICAgICAgICBzYWdlOiBnZW4yXzMoc3FydDMp Ci0tICAgICAgICAgICAgLWFeMiArIDIKLSsgICAgICAgICAgICBhXjIgLSAyCi0gICAgICAgICAi IiIKLSAgICAgICAgIGlmIHNlbGYuX3RyaXZpYWw6Ci0gICAgICAgICAgICAgcmV0dXJuIGVsdC5f dmFsdWUKLUBAIC00MzM2LDEwICs0MzM2LDEwIEBAIGNsYXNzIEFsZ2VicmFpY051bWJlcl9iYXNl KHNhZ2Uuc3RydWN0dXJlLmVsZW1lbnQuRmllbGRFbGVtZW50KToKLSAgICAgICAgICAgICBzYWdl OiBydDMgPSBBQShzcXJ0KDMpKQotICAgICAgICAgICAgIHNhZ2U6IHJ0M2IgPSBydDIgKyBydDMg LSBydDIKLSAgICAgICAgICAgICBzYWdlOiBydDNiLmFzX251bWJlcl9maWVsZF9lbGVtZW50KCkK LS0gICAgICAgICAgICAoTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFs IHleNCAtIDQqeV4yICsgMSwgLWFeMiArIDIsIFJpbmcgbW9ycGhpc206Ci0rICAgICAgICAgICAg KE51bWJlciBGaWVsZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB5XjQgLSA0KnleMiAr IDEsIGFeMiAtIDIsIFJpbmcgbW9ycGhpc206Ci0gICAgICAgICAgICAgICAgIEZyb206IE51bWJl ciBGaWVsZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB5XjQgLSA0KnleMiArIDEKLSAg ICAgICAgICAgICAgICAgVG86ICAgQWxnZWJyYWljIFJlYWwgRmllbGQKLS0gICAgICAgICAgICAg ICAgRGVmbjogYSB8LS0+IDAuNTE3NjM4MDkwMjA1MDQxNT8pCi0rICAgICAgICAgICAgICAgIERl Zm46IGEgfC0tPiAtMS45MzE4NTE2NTI1NzgxMzc/KQotICAgICAgICAgICAgIHNhZ2U6IHJ0M2Iu YXNfbnVtYmVyX2ZpZWxkX2VsZW1lbnQobWluaW1hbD1UcnVlKQotICAgICAgICAgICAgIChOdW1i ZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5nIHBvbHlub21pYWwgeV4yIC0gMywgYSwgUmluZyBt b3JwaGlzbToKLSAgICAgICAgICAgICAgICBGcm9tOiBOdW1iZXIgRmllbGQgaW4gYSB3aXRoIGRl ZmluaW5nIHBvbHlub21pYWwgeV4yIC0gMwotQEAgLTQ0MDEsNyArNDQwMSw3IEBAIGNsYXNzIEFs Z2VicmFpY051bWJlcl9iYXNlKHNhZ2Uuc3RydWN0dXJlLmVsZW1lbnQuRmllbGRFbGVtZW50KToK LSAgICAgICAgICAgICBzYWdlOiBydDJiID0gcnQzICsgcnQyIC0gcnQzCi0gICAgICAgICAgICAg c2FnZTogcnQyYi5leGFjdGlmeSgpCi0gICAgICAgICAgICAgc2FnZTogcnQyYi5fZXhhY3RfdmFs dWUoKQotLSAgICAgICAgICAgIGFeMyAtIDMqYSB3aGVyZSBhXjQgLSA0KmFeMiArIDEgPSAwIGFu ZCBhIGluIDEuOTMxODUxNjUyNTc4MTM3PwotKyAgICAgICAgICAgIGFeMyAtIDMqYSB3aGVyZSBh XjQgLSA0KmFeMiArIDEgPSAwIGFuZCBhIGluIC0wLjUxNzYzODA5MDIwNTA0MTU/Ci0gICAgICAg ICAgICAgc2FnZTogcnQyYi5zaW1wbGlmeSgpCi0gICAgICAgICAgICAgc2FnZTogcnQyYi5fZXhh Y3RfdmFsdWUoKQotICAgICAgICAgICAgIGEgd2hlcmUgYV4yIC0gMiA9IDAgYW5kIGEgaW4gMS40 MTQyMTM1NjIzNzMwOTU/Ci1AQCAtNDQyMiw3ICs0NDIyLDcgQEAgY2xhc3MgQWxnZWJyYWljTnVt YmVyX2Jhc2Uoc2FnZS5zdHJ1Y3R1cmUuZWxlbWVudC5GaWVsZEVsZW1lbnQpOgotICAgICAgICAg ICAgIHNhZ2U6IFFRYmFyKDIpLl9leGFjdF9maWVsZCgpCi0gICAgICAgICAgICAgVHJpdmlhbCBn ZW5lcmF0b3IKLSAgICAgICAgICAgICBzYWdlOiAoc3FydChRUWJhcigyKSkgKyBzcXJ0KFFRYmFy KDE5KSkpLl9leGFjdF9maWVsZCgpCi0tICAgICAgICAgICAgTnVtYmVyIEZpZWxkIGluIGEgd2l0 aCBkZWZpbmluZyBwb2x5bm9taWFsIHleNCAtIDIwKnleMiArIDgxIHdpdGggYSBpbiAyLjM3NTEw MDIyMDI5Nzk0MT8KLSsgICAgICAgICAgICBOdW1iZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5n IHBvbHlub21pYWwgeV40IC0gMjAqeV4yICsgODEgd2l0aCBhIGluIC0zLjc4OTMxMzc4MjY3MTAz Nj8KLSAgICAgICAgICAgICBzYWdlOiAoUVFiYXIoNyleKDMvNSkpLl9leGFjdF9maWVsZCgpCi0g ICAgICAgICAgICAgTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHle NSAtIDIqeV40IC0gMTgqeV4zICsgMzgqeV4yICsgODIqeSAtIDE4MSB3aXRoIGEgaW4gMi41NTQy NTY2MTE2OTg0OTA/Ci0gICAgICAgICAiIiIKLUBAIC00NDQyLDcgKzQ0NDIsNyBAQCBjbGFzcyBB bGdlYnJhaWNOdW1iZXJfYmFzZShzYWdlLnN0cnVjdHVyZS5lbGVtZW50LkZpZWxkRWxlbWVudCk6 Ci0gICAgICAgICAgICAgc2FnZTogUVFiYXIoMikuX2V4YWN0X3ZhbHVlKCkKLSAgICAgICAgICAg ICAyCi0gICAgICAgICAgICAgc2FnZTogKHNxcnQoUVFiYXIoMikpICsgc3FydChRUWJhcigxOSkp KS5fZXhhY3RfdmFsdWUoKQotLSAgICAgICAgICAgIC0xLzkqYV4zIC0gYV4yICsgMTEvOSphICsg MTAgd2hlcmUgYV40IC0gMjAqYV4yICsgODEgPSAwIGFuZCBhIGluIDIuMzc1MTAwMjIwMjk3OTQx PwotKyAgICAgICAgICAgIC0xLzkqYV4zICsgYV4yICsgMTEvOSphIC0gMTAgd2hlcmUgYV40IC0g MjAqYV4yICsgODEgPSAwIGFuZCBhIGluIC0zLjc4OTMxMzc4MjY3MTAzNj8KLSAgICAgICAgICAg ICBzYWdlOiAoUVFiYXIoNyleKDMvNSkpLl9leGFjdF92YWx1ZSgpCi0gICAgICAgICAgICAgMiph XjQgKyAyKmFeMyAtIDM0KmFeMiAtIDE3KmEgKyAxNTAgd2hlcmUgYV41IC0gMiphXjQgLSAxOCph XjMgKyAzOCphXjIgKyA4MiphIC0gMTgxID0gMCBhbmQgYSBpbiAyLjU1NDI1NjYxMTY5ODQ5MD8K LSAgICAgICAgICIiIgotQEAgLTY4NTcsNyArNjg1Nyw3IEBAIGNsYXNzIEFsZ2VicmFpY1BvbHlu b21pYWxUcmFja2VyKFNhZ2VPYmplY3QpOgotICAgICAgICAgICAgIHNhZ2U6IHAgPSBzcXJ0KEFB KDIpKSAqIHheMiAtIHNxcnQoQUEoMykpCi0gICAgICAgICAgICAgc2FnZTogY3AgPSBBQS5jb21t b25fcG9seW5vbWlhbChwKQotICAgICAgICAgICAgIHNhZ2U6IGNwLmdlbmVyYXRvcigpCi0tICAg ICAgICAgICAgTnVtYmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHleNCAt IDQqeV4yICsgMSB3aXRoIGEgaW4gMS45MzE4NTE2NTI1NzgxMzc/Ci0rICAgICAgICAgICAgTnVt YmVyIEZpZWxkIGluIGEgd2l0aCBkZWZpbmluZyBwb2x5bm9taWFsIHleNCAtIDQqeV4yICsgMSB3 aXRoIGEgaW4gLTAuNTE3NjM4MDkwMjA1MDQxNT8KLSAgICAgICAgICIiIgotICAgICAgICAgc2Vs Zi5leGFjdGlmeSgpCi0gICAgICAgICByZXR1cm4gc2VsZi5fZ2VuCi1AQCAtNzcwNiw3ICs3NzA2 LDcgQEAgY2xhc3MgQU5FeHRlbnNpb25FbGVtZW50KEFORGVzY3IpOgotIAotICAgICAgICAgICAg IHNhZ2U6IHJ0MmIuZXhhY3RpZnkoKQotICAgICAgICAgICAgIHNhZ2U6IHJ0MmIuX2Rlc2NyCi0t ICAgICAgICAgICAgYV4zIC0gMyphIHdoZXJlIGFeNCAtIDQqYV4yICsgMSA9IDAgYW5kIGEgaW4g MS45MzE4NTE2NTI1NzgxMzc/Ci0rICAgICAgICAgICAgYV4zIC0gMyphIHdoZXJlIGFeNCAtIDQq YV4yICsgMSA9IDAgYW5kIGEgaW4gLTAuNTE3NjM4MDkwMjA1MDQxNT8KLSAgICAgICAgICAgICBz YWdlOiBydDJiLl9kZXNjci5pc19zaW1wbGUoKQotICAgICAgICAgICAgIEZhbHNlCi0gICAgICAg ICAiIiIKLUBAIC03NzkxLDcgKzc3OTEsNyBAQCBjbGFzcyBBTkV4dGVuc2lvbkVsZW1lbnQoQU5E ZXNjcik6Ci0gICAgICAgICAgICAgc2FnZTogcnQyYiA9IHJ0MyArIHJ0MiAtIHJ0MwotICAgICAg ICAgICAgIHNhZ2U6IHJ0MmIuZXhhY3RpZnkoKQotICAgICAgICAgICAgIHNhZ2U6IHJ0MmIuX2Rl c2NyCi0tICAgICAgICAgICAgYV4zIC0gMyphIHdoZXJlIGFeNCAtIDQqYV4yICsgMSA9IDAgYW5k IGEgaW4gMS45MzE4NTE2NTI1NzgxMzc/Ci0rICAgICAgICAgICAgYV4zIC0gMyphIHdoZXJlIGFe NCAtIDQqYV4yICsgMSA9IDAgYW5kIGEgaW4gLTAuNTE3NjM4MDkwMjA1MDQxNT8KLSAgICAgICAg ICAgICBzYWdlOiBydDJiLl9kZXNjci5zaW1wbGlmeShydDJiKQotICAgICAgICAgICAgIGEgd2hl cmUgYV4yIC0gMiA9IDAgYW5kIGEgaW4gMS40MTQyMTM1NjIzNzMwOTU/Ci0gICAgICAgICAiIiIK LUBAIC03ODMwLDkgKzc4MzAsOSBAQCBjbGFzcyBBTkV4dGVuc2lvbkVsZW1lbnQoQU5EZXNjcik6 Ci0gICAgICAgICAgICAgc2FnZTogdHlwZShiKQotICAgICAgICAgICAgIDxjbGFzcyAnc2FnZS5y aW5ncy5xcWJhci5BTkV4dGVuc2lvbkVsZW1lbnQnPgotICAgICAgICAgICAgIHNhZ2U6IGIubmVn KGEpCi0tICAgICAgICAgICAgMS8zKmFeMyAtIDIvMyphXjIgKyA0LzMqYSAtIDIgd2hlcmUgYV40 IC0gMiphXjMgKyBhXjIgLSA2KmEgKyA5ID0gMCBhbmQgYSBpbiAtMC43MjQ3NDQ4NzEzOTE1ODkw PyAtIDEuNTczMTMyMTg0OTcwOTg3PypJCi0rICAgICAgICAgICAgLTEvMyphXjMgKyAxLzMqYV4y IC0gYSAtIDEgd2hlcmUgYV40IC0gMiphXjMgKyBhXjIgKyA2KmEgKyAzID0gMCBhbmQgYSBpbiAx LjcyNDc0NDg3MTM5MTU4OT8gKyAxLjU3MzEzMjE4NDk3MDk4Nz8qSQotICAgICAgICAgICAgIHNh Z2U6IGIubmVnKCJoYW0gc3BhbSBhbmQgZWdncyIpCi0tICAgICAgICAgICAgMS8zKmFeMyAtIDIv MyphXjIgKyA0LzMqYSAtIDIgd2hlcmUgYV40IC0gMiphXjMgKyBhXjIgLSA2KmEgKyA5ID0gMCBh bmQgYSBpbiAtMC43MjQ3NDQ4NzEzOTE1ODkwPyAtIDEuNTczMTMyMTg0OTcwOTg3PypJCi0rICAg ICAgICAgICAgLTEvMyphXjMgKyAxLzMqYV4yIC0gYSAtIDEgd2hlcmUgYV40IC0gMiphXjMgKyBh XjIgKyA2KmEgKyAzID0gMCBhbmQgYSBpbiAxLjcyNDc0NDg3MTM5MTU4OT8gKyAxLjU3MzEzMjE4 NDk3MDk4Nz8qSQotICAgICAgICAgIiIiCi0gICAgICAgICByZXR1cm4gQU5FeHRlbnNpb25FbGVt ZW50KHNlbGYuX2dlbmVyYXRvciwgLXNlbGYuX3ZhbHVlKQotIAotQEAgLTc4NDgsOSArNzg0OCw5 IEBAIGNsYXNzIEFORXh0ZW5zaW9uRWxlbWVudChBTkRlc2NyKToKLSAgICAgICAgICAgICBzYWdl OiB0eXBlKGIpCi0gICAgICAgICAgICAgPGNsYXNzICdzYWdlLnJpbmdzLnFxYmFyLkFORXh0ZW5z aW9uRWxlbWVudCc+Ci0gICAgICAgICAgICAgc2FnZTogYi5pbnZlcnQoYSkKLS0gICAgICAgICAg ICA3LzMqYV4zIC0gMi8zKmFeMiArIDQvMyphIC0gMTIgd2hlcmUgYV40IC0gMiphXjMgKyBhXjIg LSA2KmEgKyA5ID0gMCBhbmQgYSBpbiAtMC43MjQ3NDQ4NzEzOTE1ODkwPyAtIDEuNTczMTMyMTg0 OTcwOTg3PypJCi0rICAgICAgICAgICAgLTcvMyphXjMgKyAxOS8zKmFeMiAtIDcqYSAtIDkgd2hl cmUgYV40IC0gMiphXjMgKyBhXjIgKyA2KmEgKyAzID0gMCBhbmQgYSBpbiAxLjcyNDc0NDg3MTM5 MTU4OT8gKyAxLjU3MzEzMjE4NDk3MDk4Nz8qSQotICAgICAgICAgICAgIHNhZ2U6IGIuaW52ZXJ0 KCJoYW0gc3BhbSBhbmQgZWdncyIpCi0tICAgICAgICAgICAgNy8zKmFeMyAtIDIvMyphXjIgKyA0 LzMqYSAtIDEyIHdoZXJlIGFeNCAtIDIqYV4zICsgYV4yIC0gNiphICsgOSA9IDAgYW5kIGEgaW4g LTAuNzI0NzQ0ODcxMzkxNTg5MD8gLSAxLjU3MzEzMjE4NDk3MDk4Nz8qSQotKyAgICAgICAgICAg IC03LzMqYV4zICsgMTkvMyphXjIgLSA3KmEgLSA5IHdoZXJlIGFeNCAtIDIqYV4zICsgYV4yICsg NiphICsgMyA9IDAgYW5kIGEgaW4gMS43MjQ3NDQ4NzEzOTE1ODk/ICsgMS41NzMxMzIxODQ5NzA5 ODc/KkkKLSAgICAgICAgICIiIgotICAgICAgICAgcmV0dXJuIEFORXh0ZW5zaW9uRWxlbWVudChz ZWxmLl9nZW5lcmF0b3IsIH5zZWxmLl92YWx1ZSkKLSAKLUBAIC03ODY2LDkgKzc4NjYsOSBAQCBj bGFzcyBBTkV4dGVuc2lvbkVsZW1lbnQoQU5EZXNjcik6Ci0gICAgICAgICAgICAgc2FnZTogdHlw ZShiKQotICAgICAgICAgICAgIDxjbGFzcyAnc2FnZS5yaW5ncy5xcWJhci5BTkV4dGVuc2lvbkVs ZW1lbnQnPgotICAgICAgICAgICAgIHNhZ2U6IGIuY29uanVnYXRlKGEpCi0tICAgICAgICAgICAg LTEvMyphXjMgKyAyLzMqYV4yIC0gNC8zKmEgKyAyIHdoZXJlIGFeNCAtIDIqYV4zICsgYV4yIC0g NiphICsgOSA9IDAgYW5kIGEgaW4gLTAuNzI0NzQ0ODcxMzkxNTg5MD8gKyAxLjU3MzEzMjE4NDk3 MDk4Nz8qSQotKyAgICAgICAgICAgIDEvMyphXjMgLSAxLzMqYV4yICsgYSArIDEgd2hlcmUgYV40 IC0gMiphXjMgKyBhXjIgKyA2KmEgKyAzID0gMCBhbmQgYSBpbiAxLjcyNDc0NDg3MTM5MTU4OT8g LSAxLjU3MzEzMjE4NDk3MDk4Nz8qSQotICAgICAgICAgICAgIHNhZ2U6IGIuY29uanVnYXRlKCJo YW0gc3BhbSBhbmQgZWdncyIpCi0tICAgICAgICAgICAgLTEvMyphXjMgKyAyLzMqYV4yIC0gNC8z KmEgKyAyIHdoZXJlIGFeNCAtIDIqYV4zICsgYV4yIC0gNiphICsgOSA9IDAgYW5kIGEgaW4gLTAu NzI0NzQ0ODcxMzkxNTg5MD8gKyAxLjU3MzEzMjE4NDk3MDk4Nz8qSQotKyAgICAgICAgICAgIDEv MyphXjMgLSAxLzMqYV4yICsgYSArIDEgd2hlcmUgYV40IC0gMiphXjMgKyBhXjIgKyA2KmEgKyAz ID0gMCBhbmQgYSBpbiAxLjcyNDc0NDg3MTM5MTU4OT8gLSAxLjU3MzEzMjE4NDk3MDk4Nz8qSQot ICAgICAgICAgIiIiCi0gICAgICAgICBpZiBzZWxmLl9leGFjdGx5X3JlYWw6Ci0gICAgICAgICAg ICAgcmV0dXJuIHNlbGYKLUBAIC04NTAxLDcgKzg1MDEsNyBAQCBkZWYgYW5fYmlub3BfZXhwcihh LCBiLCBvcCk6Ci0gICAgICAgICBzYWdlOiB4ID0gYW5fYmlub3BfZXhwcihhLCBiLCBvcGVyYXRv ci5hZGQpOyB4Ci0gICAgICAgICA8c2FnZS5yaW5ncy5xcWJhci5BTkJpbmFyeUV4cHIgb2JqZWN0 IGF0IC4uLj4KLSAgICAgICAgIHNhZ2U6IHguZXhhY3RpZnkoKQotLSAgICAgICAgLTYvNyphXjcg KyAyLzcqYV42ICsgNzEvNyphXjUgLSAyNi83KmFeNCAtIDEyNS83KmFeMyArIDcyLzcqYV4yICsg NDMvNyphIC0gNDcvNyB3aGVyZSBhXjggLSAxMiphXjYgKyAyMyphXjQgLSAxMiphXjIgKyAxID0g MCBhbmQgYSBpbiAzLjEyNTgwLi4uPwotKyAgICAgICAgNi83KmFeNyAtIDIvNyphXjYgLSA3MS83 KmFeNSArIDI2LzcqYV40ICsgMTI1LzcqYV4zIC0gNzIvNyphXjIgLSA0My83KmEgKyA0Ny83IHdo ZXJlIGFeOCAtIDEyKmFeNiArIDIzKmFeNCAtIDEyKmFeMiArIDEgPSAwIGFuZCBhIGluIC0wLjMx OTkxNzkzMzYxODI5OTc/Ci0gCi0gICAgICAgICBzYWdlOiBhID0gUVFiYXIoc3FydCgyKSkgKyBR UWJhcihzcXJ0KDMpKQotICAgICAgICAgc2FnZTogYiA9IFFRYmFyKHNxcnQoMykpICsgUVFiYXIo c3FydCg1KSkKLUBAIC04NTEwLDcgKzg1MTAsNyBAQCBkZWYgYW5fYmlub3BfZXhwcihhLCBiLCBv cCk6Ci0gICAgICAgICBzYWdlOiB4ID0gYW5fYmlub3BfZXhwcihhLCBiLCBvcGVyYXRvci5tdWwp OyB4Ci0gICAgICAgICA8c2FnZS5yaW5ncy5xcWJhci5BTkJpbmFyeUV4cHIgb2JqZWN0IGF0IC4u Lj4KLSAgICAgICAgIHNhZ2U6IHguZXhhY3RpZnkoKQotLSAgICAgICAgMiphXjcgLSBhXjYgLSAy NCphXjUgKyAxMiphXjQgKyA0NiphXjMgLSAyMiphXjIgLSAyMiphICsgOSB3aGVyZSBhXjggLSAx MiphXjYgKyAyMyphXjQgLSAxMiphXjIgKyAxID0gMCBhbmQgYSBpbiAzLjEyNTguLi4/Ci0rICAg ICAgICAyKmFeNyAtIGFeNiAtIDI0KmFeNSArIDEyKmFeNCArIDQ2KmFeMyAtIDIyKmFeMiAtIDIy KmEgKyA5IHdoZXJlIGFeOCAtIDEyKmFeNiArIDIzKmFeNCAtIDEyKmFeMiArIDEgPSAwIGFuZCBh IGluIC0wLjMxOTkxNzkzMzYxODI5OTc/Ci0gICAgICIiIgotICAgICByZXR1cm4gQU5CaW5hcnlF eHByKGEsIGIsIG9wKQotIAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3NjaGVtZXMvYWZmaW5lL2Fm ZmluZV9tb3JwaGlzbS5weSBiL3NyYy9zYWdlL3NjaGVtZXMvYWZmaW5lL2FmZmluZV9tb3JwaGlz bS5weQotaW5kZXggMWM0ZjJkZmYxOC4uMzJjMmU0N2U0OSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdl L3NjaGVtZXMvYWZmaW5lL2FmZmluZV9tb3JwaGlzbS5weQotKysrIGIvc3JjL3NhZ2Uvc2NoZW1l cy9hZmZpbmUvYWZmaW5lX21vcnBoaXNtLnB5Ci1AQCAtMTE0OCw5ICsxMTQ4LDkgQEAgY2xhc3Mg U2NoZW1lTW9ycGhpc21fcG9seW5vbWlhbF9hZmZpbmVfc3BhY2VfZmllbGQoU2NoZW1lTW9ycGhp c21fcG9seW5vbWlhbF9hZmYKLSAgICAgICAgICAgICBzYWdlOiBIID0gRW5kKEEpCi0gICAgICAg ICAgICAgc2FnZTogZiA9IEgoWyhRUWJhcihzcXJ0KDIpKSp4XjIgKyAxL1FRYmFyKHNxcnQoMykp KSAvICg1KngpXSkKLSAgICAgICAgICAgICBzYWdlOiBmLnJlZHVjZV9iYXNlX2ZpZWxkKCkKLS0g ICAgICAgICAgICBTY2hlbWUgZW5kb21vcnBoaXNtIG9mIEFmZmluZSBTcGFjZSBvZiBkaW1lbnNp b24gMSBvdmVyIE51bWJlciBGaWVsZCBpbiBhIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB5XjQg LSA0KnleMiArIDEgd2l0aCBhID0gMS45MzE4NTE2NTI1NzgxMzc/Ci0rICAgICAgICAgICAgU2No ZW1lIGVuZG9tb3JwaGlzbSBvZiBBZmZpbmUgU3BhY2Ugb2YgZGltZW5zaW9uIDEgb3ZlciBOdW1i ZXIgRmllbGQgaW4gYSB3aXRoIGRlZmluaW5nIHBvbHlub21pYWwgeV40IC0gNCp5XjIgKyAxIHdp dGggYSA9IC4uLj8KLSAgICAgICAgICAgICAgIERlZm46IERlZmluZWQgb24gY29vcmRpbmF0ZXMg Ynkgc2VuZGluZyAoeCkgdG8KLS0gICAgICAgICAgICAgICAgICAgICgoKGFeMyAtIDMqYSkqeF4y ICsgKDEvMyphXjIgLSAyLzMpKS8oNSp4KSkKLSsgICAgICAgICAgICAgICAgICAgICgoKGFeMyAt IDMqYSkqeF4yICsgKC0xLzMqYV4yICsgMi8zKSkvKDUqeCkpCi0gCi0gICAgICAgICA6OgotIAot ZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3NjaGVtZXMvZWxsaXB0aWNfY3VydmVzL2VsbF9maWVsZC5w eSBiL3NyYy9zYWdlL3NjaGVtZXMvZWxsaXB0aWNfY3VydmVzL2VsbF9maWVsZC5weQotaW5kZXgg NjhiODM3NWRhZS4uNDhmMzU4ZWE2YSAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3NjaGVtZXMvZWxs aXB0aWNfY3VydmVzL2VsbF9maWVsZC5weQotKysrIGIvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRp Y19jdXJ2ZXMvZWxsX2ZpZWxkLnB5Ci1AQCAtODQ1LDcgKzg0NSw3IEBAIGNsYXNzIEVsbGlwdGlj Q3VydmVfZmllbGQoZWxsX2dlbmVyaWMuRWxsaXB0aWNDdXJ2ZV9nZW5lcmljLCBQcm9qZWN0aXZl UGxhbmVDdXJ2Ci0gICAgICAgICAgICAgc2FnZTogRSA9IEUuYmFzZV9leHRlbmQoRykucXVhZHJh dGljX3R3aXN0KGMpOyBFCi0gICAgICAgICAgICAgRWxsaXB0aWMgQ3VydmUgZGVmaW5lZCBieSB5 XjIgPSB4XjMgKyA1KmEwKnheMiArICgtMjAwKmEwXjIpKnggKyAoLTQyMDAwKmEwXjIrNDIwMDAq YTArMTI2MDAwKSBvdmVyIE51bWJlciBGaWVsZCBpbiBhMCB3aXRoIGRlZmluaW5nIHBvbHlub21p YWwgeF4zIC0gMyp4XjIgKyAzKnggKyA5Ci0gICAgICAgICAgICAgc2FnZTogSy48Yj4gPSBFLmRp dmlzaW9uX2ZpZWxkKDMsIHNpbXBsaWZ5X2FsbD1UcnVlKTsgSwotLSAgICAgICAgICAgIE51bWJl ciBGaWVsZCBpbiBiIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB4XjEyIC0gMTAqeF4xMCArIDU1 KnheOCAtIDYwKnheNiArIDc1KnheNCArIDEzNTAqeF4yICsgMjAyNQotKyAgICAgICAgICAgIE51 bWJlciBGaWVsZCBpbiBiIHdpdGggZGVmaW5pbmcgcG9seW5vbWlhbCB4XjEyICsgNSp4XjEwICsg NDAqeF44ICsgMzE1KnheNiArIDc1MCp4XjQgKyA2NzUqeF4yICsgMjAyNQotIAotICAgICAgICAg U29tZSBoaWdoZXItZGVncmVlIGV4YW1wbGVzOjoKLSAKLWRpZmYgLS1naXQgYS9zcmMvc2FnZS9z Y2hlbWVzL2VsbGlwdGljX2N1cnZlcy9lbGxfZ2VuZXJpYy5weSBiL3NyYy9zYWdlL3NjaGVtZXMv ZWxsaXB0aWNfY3VydmVzL2VsbF9nZW5lcmljLnB5Ci1pbmRleCA5MjZhZTMxMGVhLi4zYmFlODE5 ZmIwIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvZWxsX2dl bmVyaWMucHkKLSsrKyBiL3NyYy9zYWdlL3NjaGVtZXMvZWxsaXB0aWNfY3VydmVzL2VsbF9nZW5l cmljLnB5Ci1AQCAtMzMyNCw4ICszMzI0LDggQEAgY2xhc3MgRWxsaXB0aWNDdXJ2ZV9nZW5lcmlj KFdpdGhFcXVhbGl0eUJ5SWQsIHBsYW5lX2N1cnZlLlByb2plY3RpdmVQbGFuZUN1cnZlKToKLSAg ICAgICAgICAgICBzYWdlOiBLLjxhPiA9IFF1YWRyYXRpY0ZpZWxkKDIpCi0gICAgICAgICAgICAg c2FnZTogRSA9IEVsbGlwdGljQ3VydmUoWzEsYV0pCi0gICAgICAgICAgICAgc2FnZTogRS5wYXJp X2N1cnZlKCkKLS0gICAgICAgICAgICBbTW9kKDAsIHleMiAtIDIpLCBNb2QoMCwgeV4yIC0gMiks IE1vZCgwLCB5XjIgLSAyKSwgTW9kKDEsIHleMiAtIDIpLAotLSAgICAgICAgICAgIE1vZCh5LCB5 XjIgLSAyKSwgTW9kKDAsIHleMiAtIDIpLCBNb2QoMiwgeV4yIC0gMiksIE1vZCg0KnksIHleMiAt IDIpLAotKyAgICAgICAgICAgIFswLCAwLCAwLCBNb2QoMSwgeV4yIC0gMiksCi0rICAgICAgICAg ICAgTW9kKHksIHleMiAtIDIpLCAwLCBNb2QoMiwgeV4yIC0gMiksIE1vZCg0KnksIHleMiAtIDIp LAotICAgICAgICAgICAgIE1vZCgtMSwgeV4yIC0gMiksIE1vZCgtNDgsIHleMiAtIDIpLCBNb2Qo LTg2NCp5LCB5XjIgLSAyKSwKLSAgICAgICAgICAgICBNb2QoLTkyOCwgeV4yIC0gMiksIE1vZCgz NDU2LzI5LCB5XjIgLSAyKSwgVmVjc21hbGwoWzVdKSwKLSAgICAgICAgICAgICBbW3leMiAtIDIs IFsyLCAwXSwgOCwgMSwgW1sxLCAtMS40MTQyMTM1NjIzNzMxMDsKLWRpZmYgLS1naXQgYS9zcmMv c2FnZS9zY2hlbWVzL2VsbGlwdGljX2N1cnZlcy9lbGxfbnVtYmVyX2ZpZWxkLnB5IGIvc3JjL3Nh Z2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvZWxsX251bWJlcl9maWVsZC5weQotaW5kZXggZWRi ZDE5NjA5MC4uYzQ0YzgwM2FhOCAxMDA2NDQKLS0tLSBhL3NyYy9zYWdlL3NjaGVtZXMvZWxsaXB0 aWNfY3VydmVzL2VsbF9udW1iZXJfZmllbGQucHkKLSsrKyBiL3NyYy9zYWdlL3NjaGVtZXMvZWxs aXB0aWNfY3VydmVzL2VsbF9udW1iZXJfZmllbGQucHkKLUBAIC0yMTgsNyArMjE4LDcgQEAgY2xh c3MgRWxsaXB0aWNDdXJ2ZV9udW1iZXJfZmllbGQoRWxsaXB0aWNDdXJ2ZV9maWVsZCk6Ci0gICAg ICAgICAgICAgc2FnZTogRSA9PSBsb2FkcyhkdW1wcyhFKSkKLSAgICAgICAgICAgICBUcnVlCi0g ICAgICAgICAgICAgc2FnZTogRS5zaW1vbl90d29fZGVzY2VudCgpCi0tICAgICAgICAgICAgKDIs IDIsIFsoMCA6IDAgOiAxKV0pCi0rICAgICAgICAgICAgKDIsIDIsIFsoMCA6IDAgOiAxKSwgKDEv MTgqYSArIDcvMTggOiAtNS81NCphIC0gMTcvNTQgOiAxKV0pCi0gICAgICAgICAgICAgc2FnZTog RS5zaW1vbl90d29fZGVzY2VudChsaW0xPTUsIGxpbTM9NSwgbGltdHJpdj0xMCwgbWF4cHJvYj03 LCBsaW1iaWdwcmltZT0xMCkKLSAgICAgICAgICAgICAoMiwgMiwgWygtMSA6IDAgOiAxKSwgKC0y IDogLTEvMiphIC0gMS8yIDogMSldKQotIAotQEAgLTI3NCw3ICsyNzQsNyBAQCBjbGFzcyBFbGxp cHRpY0N1cnZlX251bWJlcl9maWVsZChFbGxpcHRpY0N1cnZlX2ZpZWxkKToKLSAgICAgICAgICAg ICBzYWdlOiBFLnNpbW9uX3R3b19kZXNjZW50KCkgICMgbG9uZyB0aW1lICg0cyBvbiBzYWdlLm1h dGgsIDIwMTMpCi0gICAgICAgICAgICAgKDMsCi0gICAgICAgICAgICAgIDMsCi0tICAgICAgICAg ICAgIFsoNS84KnpldGE0M18wXjIgKyAxNy84KnpldGE0M18wIC0gOS80IDogLTI3LzE2KnpldGE0 M18wXjIgLSAxMDMvMTYqemV0YTQzXzAgKyAzOS84IDogMSksCi0rICAgICAgICAgICAgIFsoMS84 KnpldGE0M18wXjIgLSAzLzgqemV0YTQzXzAgLSAxLzQgOiAtNS8xNip6ZXRhNDNfMF4yICsgNy8x Nip6ZXRhNDNfMCArIDEvOCA6IDEpLAotICAgICAgICAgICAgICAgKDAgOiAwIDogMSldKQotICAg ICAgICAgIiIiCi0gICAgICAgICB2ZXJib3NlID0gaW50KHZlcmJvc2UpCi1AQCAtODY1LDcgKzg2 NSw3IEBAIGNsYXNzIEVsbGlwdGljQ3VydmVfbnVtYmVyX2ZpZWxkKEVsbGlwdGljQ3VydmVfZmll bGQpOgotICAgICAgICAgICAgIENvbmR1Y3RvciBleHBvbmVudDogMQotICAgICAgICAgICAgIEtv ZGFpcmEgU3ltYm9sOiBJMQotICAgICAgICAgICAgIFRhbWFnYXdhIE51bWJlcjogMSwKLS0gICAg ICAgICAgICBMb2NhbCBkYXRhIGF0IEZyYWN0aW9uYWwgaWRlYWwgKC0zKmkgLSAyKToKLSsgICAg ICAgICAgICBMb2NhbCBkYXRhIGF0IEZyYWN0aW9uYWwgaWRlYWwgKC0yKmkgKyAzKToKLSAgICAg ICAgICAgICBSZWR1Y3Rpb24gdHlwZTogYmFkIHNwbGl0IG11bHRpcGxpY2F0aXZlCi0gICAgICAg ICAgICAgTG9jYWwgbWluaW1hbCBtb2RlbDogRWxsaXB0aWMgQ3VydmUgZGVmaW5lZCBieSB5XjIg KyAoaSsxKSp4KnkgKyB5ID0geF4zIG92ZXIgTnVtYmVyIEZpZWxkIGluIGkgd2l0aCBkZWZpbmlu ZyBwb2x5bm9taWFsIHheMiArIDEKLSAgICAgICAgICAgICBNaW5pbWFsIGRpc2NyaW1pbmFudCB2 YWx1YXRpb246IDIKLUBAIC0yNjQ1LDEyICsyNjQ1LDEyIEBAIGNsYXNzIEVsbGlwdGljQ3VydmVf bnVtYmVyX2ZpZWxkKEVsbGlwdGljQ3VydmVfZmllbGQpOgotICAgICAgICAgICAgIFstOTIsIC0y MywgLTIzXQotIAotICAgICAgICAgICAgIHNhZ2U6IEMubWF0cml4KCkgICMgbG9uZyB0aW1lCi0t ICAgICAgICAgICAgWzEgMiAyIDQgMiA0XQotLSAgICAgICAgICAgIFsyIDEgMiAyIDQgNF0KLS0g ICAgICAgICAgICBbMiAyIDEgNCA0IDJdCi0tICAgICAgICAgICAgWzQgMiA0IDEgMyAzXQotLSAg ICAgICAgICAgIFsyIDQgNCAzIDEgM10KLS0gICAgICAgICAgICBbNCA0IDIgMyAzIDFdCi0rICAg ICAgICAgICAgWzEgMiAyIDQgNCAyXQotKyAgICAgICAgICAgIFsyIDEgMiA0IDIgNF0KLSsgICAg ICAgICAgICBbMiAyIDEgMiA0IDRdCi0rICAgICAgICAgICAgWzQgNCAyIDEgMyAzXQotKyAgICAg ICAgICAgIFs0IDIgNCAzIDEgM10KLSsgICAgICAgICAgICBbMiA0IDQgMyAzIDFdCi0gCi0gICAg ICAgICBUaGUgZ3JhcGggb2YgdGhpcyBpc29nZW55IGNsYXNzIGhhcyBhIHNoYXBlIHdoaWNoIGRv ZXMgbm90Ci0gICAgICAgICBvY2N1ciBvdmVyIGBcUVFgOiBhIHRyaWFuZ3VsYXIgcHJpc20uICBO b3RlIHRoYXQgZm9yIGN1cnZlcwotQEAgLTI2NzcsMTIgKzI2NzcsMTIgQEAgY2xhc3MgRWxsaXB0 aWNDdXJ2ZV9udW1iZXJfZmllbGQoRWxsaXB0aWNDdXJ2ZV9maWVsZCk6Ci0gCi0gICAgICAgICAg ICAgc2FnZTogRyA9IEMuZ3JhcGgoKSAgIyBsb25nIHRpbWUKLSAgICAgICAgICAgICBzYWdlOiBH LmFkamFjZW5jeV9tYXRyaXgoKSAgIyBsb25nIHRpbWUKLS0gICAgICAgICAgICBbMCAxIDEgMCAx IDBdCi0tICAgICAgICAgICAgWzEgMCAxIDEgMCAwXQotLSAgICAgICAgICAgIFsxIDEgMCAwIDAg MV0KLS0gICAgICAgICAgICBbMCAxIDAgMCAxIDFdCi0tICAgICAgICAgICAgWzEgMCAwIDEgMCAx XQotLSAgICAgICAgICAgIFswIDAgMSAxIDEgMF0KLSsgICAgICAgICAgICBbMCAxIDEgMCAwIDFd Ci0rICAgICAgICAgICAgWzEgMCAxIDAgMSAwXQotKyAgICAgICAgICAgIFsxIDEgMCAxIDAgMF0K LSsgICAgICAgICAgICBbMCAwIDEgMCAxIDFdCi0rICAgICAgICAgICAgWzAgMSAwIDEgMCAxXQot KyAgICAgICAgICAgIFsxIDAgMCAxIDEgMF0KLSAKLSAgICAgICAgIFRvIGRpc3BsYXkgdGhlIGdy YXBoIHdpdGhvdXQgYW55IGVkZ2UgbGFiZWxzOjoKLSAKLUBAIC0zMzE2LDcgKzMzMTYsNyBAQCBj bGFzcyBFbGxpcHRpY0N1cnZlX251bWJlcl9maWVsZChFbGxpcHRpY0N1cnZlX2ZpZWxkKToKLSAg ICAgICAgICAgICBzYWdlOiBwb2ludHMgPSBbRS5saWZ0X3goeCkgZm9yIHggaW4geGldCi0gICAg ICAgICAgICAgc2FnZTogbmV3cG9pbnRzLCBVID0gRS5sbGxfcmVkdWNlKHBvaW50cykgICMgbG9u ZyB0aW1lICgzNXMgb24gc2FnZS5tYXRoLCAyMDExKQotICAgICAgICAgICAgIHNhZ2U6IFtQWzBd IGZvciBQIGluIG5ld3BvaW50c10gICAgICAgICAgICAjIGxvbmcgdGltZQotLSAgICAgICAgICAg IFs2ODIzODAzNTY5MTY2NTg0OTQzLCA1OTQ5NTM5ODc4ODk5Mjk0MjEzLCAyMDA1MDI0NTU4MDU0 ODEzMDY4LCA1ODY0ODc5Nzc4ODc3OTU1Nzc4LCAyMzk1NTI2MzkxNTg3ODY4MjcyNy80LCA1OTIy MTg4MzIxNDExOTM4NTE4LCA1Mjg2OTg4MjgzODIzODI1Mzc4LCAxNzU2MjA2Mzk4ODQ1MzQ2MTU3 NTEvMjUsIC0xMTQ1MTU3NTkwNzI4NjE3MTU3MiwgMzUwMjcwODA3MjU3MTAxMjE4MSwgMTUwMDE0 MzkzNTE4MzIzODcwOTE4NC8yMjUsIDI3MTgwNTIyMzc4MTIwMjIzNDE5LzQsIC01ODExODc0MTY0 MTkwNjA0NDYxNTgxLzYyNSwgMjY4MDc3ODY1MjcxNTk1NjkwOTMsIDc0MDQ0NDI2MzY2NDk1NjIz MDMsIDQ3NTY1NjE1NTI1NTg4MzU4OCwgMjY1NzU3NDU0NzI2NzY2MDE3ODkxLzQ5LCA3MjcyMTQy MTIxMDE5ODI1MzAzLCA1MDYyODY3OTE3MzgzMzY5MzQxNS80LCA2OTUxNjQzNTIyMzY2MzQ4OTY4 LCA2ODQyNTE1MTUxNTE4MDcwNzAzLCAxMTE1OTM3NTAzODk2NTA4NDY4ODUvMTYsIDI2MDc0Njc4 OTA1MzE3NDAzOTQzMTUvOSwgLTE4Mjk5Mjg1MjU4MzU1MDYyOTddCi0rICAgICAgICAgICAgWzY4 MjM4MDM1NjkxNjY1ODQ5NDMsIDU5NDk1Mzk4Nzg4OTkyOTQyMTMsIDIwMDUwMjQ1NTgwNTQ4MTMw NjgsIDU4NjQ4Nzk3Nzg4Nzc5NTU3NzgsIDIzOTU1MjYzOTE1ODc4NjgyNzI3LzQsIDU5MjIxODgz MjE0MTE5Mzg1MTgsIDUyODY5ODgyODM4MjM4MjUzNzgsIDExNDY1NjY3MzUyMjQyNzc5ODM4LCAt MTE0NTE1NzU5MDcyODYxNzE1NzIsIDM1MDI3MDgwNzI1NzEwMTIxODEsIDE1MDAxNDM5MzUxODMy Mzg3MDkxODQvMjI1LCAyNzE4MDUyMjM3ODEyMDIyMzQxOS80LCAtNTgxMTg3NDE2NDE5MDYwNDQ2 MTU4MS82MjUsIDI2ODA3Nzg2NTI3MTU5NTY5MDkzLCA3MDQxNDEyNjU0ODI4MDY2NzQzLCA0NzU2 NTYxNTUyNTU4ODM1ODgsIDI2NTc1NzQ1NDcyNjc2NjAxNzg5MS80OSwgNzI3MjE0MjEyMTAxOTgy NTMwMywgNTA2Mjg2NzkxNzM4MzM2OTM0MTUvNCwgNjk1MTY0MzUyMjM2NjM0ODk2OCwgNjg0MjUx NTE1MTUxODA3MDcwMywgMTExNTkzNzUwMzg5NjUwODQ2ODg1LzE2LCAyNjA3NDY3ODkwNTMxNzQw Mzk0MzE1LzksIC0xODI5OTI4NTI1ODM1NTA2Mjk3XQotIAotICAgICAgICAgQW4gZXhhbXBsZSB0 byBzaG93IHRoZSBleHBsaWNpdCB1c2Ugb2YgdGhlIGhlaWdodCBwYWlyaW5nIG1hdHJpeDo6Ci0g Ci1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvZWxsX3JhdGlv bmFsX2ZpZWxkLnB5IGIvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvZWxsX3JhdGlv bmFsX2ZpZWxkLnB5Ci1pbmRleCAzODA4ODIyODEyLi5hNzUyOTBlYTM1IDEwMDY0NAotLS0tIGEv c3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvZWxsX3JhdGlvbmFsX2ZpZWxkLnB5Ci0r KysgYi9zcmMvc2FnZS9zY2hlbWVzL2VsbGlwdGljX2N1cnZlcy9lbGxfcmF0aW9uYWxfZmllbGQu cHkKLUBAIC0xODI3LDcgKzE4MjcsNyBAQCBjbGFzcyBFbGxpcHRpY0N1cnZlX3JhdGlvbmFsX2Zp ZWxkKEVsbGlwdGljQ3VydmVfbnVtYmVyX2ZpZWxkKToKLSAgICAgICAgICAgICBzYWdlOiBFID0g RWxsaXB0aWNDdXJ2ZSgnMzg5YTEnKQotICAgICAgICAgICAgIHNhZ2U6IEUuX2tub3duX3BvaW50 cyA9IFtdICAjIGNsZWFyIGNhY2hlZCBwb2ludHMKLSAgICAgICAgICAgICBzYWdlOiBFLnNpbW9u X3R3b19kZXNjZW50KCkKLS0gICAgICAgICAgICAoMiwgMiwgWygxIDogMCA6IDEpLCAoLTExLzkg OiAyOC8yNyA6IDEpXSkKLSsgICAgICAgICAgICAoMiwgMiwgWyg1LzQgOiA1LzggOiAxKSwgKC0z LzQgOiA3LzggOiAxKV0pCi0gICAgICAgICAgICAgc2FnZTogRSA9IEVsbGlwdGljQ3VydmUoJzUw NzdhMScpCi0gICAgICAgICAgICAgc2FnZTogRS5zaW1vbl90d29fZGVzY2VudCgpCi0gICAgICAg ICAgICAgKDMsIDMsIFsoMSA6IDAgOiAxKSwgKDIgOiAwIDogMSksICgwIDogMiA6IDEpXSkKLWRp ZmYgLS1naXQgYS9zcmMvc2FnZS9zY2hlbWVzL2VsbGlwdGljX2N1cnZlcy9nYWxfcmVwc19udW1i ZXJfZmllbGQucHkgYi9zcmMvc2FnZS9zY2hlbWVzL2VsbGlwdGljX2N1cnZlcy9nYWxfcmVwc19u dW1iZXJfZmllbGQucHkKLWluZGV4IDgxYWQyOTUxNjAuLmQ0ODRhNGExOGIgMTAwNjQ0Ci0tLS0g YS9zcmMvc2FnZS9zY2hlbWVzL2VsbGlwdGljX2N1cnZlcy9nYWxfcmVwc19udW1iZXJfZmllbGQu cHkKLSsrKyBiL3NyYy9zYWdlL3NjaGVtZXMvZWxsaXB0aWNfY3VydmVzL2dhbF9yZXBzX251bWJl cl9maWVsZC5weQotQEAgLTc4MCwxMiArNzgwLDEyIEBAIGRlZiBkZWdfb25lX3ByaW1lc19pdGVy KEssIHByaW5jaXBhbF9vbmx5PUZhbHNlKToKLSAgICAgICAgIFtGcmFjdGlvbmFsIGlkZWFsICgy LCBhICsgMSksCi0gICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoMywgYSArIDEpLAotICAgICAg ICAgIEZyYWN0aW9uYWwgaWRlYWwgKDMsIGEgKyAyKSwKLS0gICAgICAgICBGcmFjdGlvbmFsIGlk ZWFsICgtYSksCi0rICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoYSksCi0gICAgICAgICAgRnJh Y3Rpb25hbCBpZGVhbCAoNywgYSArIDMpLAotICAgICAgICAgIEZyYWN0aW9uYWwgaWRlYWwgKDcs IGEgKyA0KV0KLSAgICAgICAgIHNhZ2U6IGl0ID0gZGVnX29uZV9wcmltZXNfaXRlcihLLCBUcnVl KQotICAgICAgICAgc2FnZTogW25leHQoaXQpIGZvciBfIGluIHJhbmdlKDYpXQotLSAgICAgICAg W0ZyYWN0aW9uYWwgaWRlYWwgKC1hKSwKLSsgICAgICAgIFtGcmFjdGlvbmFsIGlkZWFsIChhKSwK LSAgICAgICAgICBGcmFjdGlvbmFsIGlkZWFsICgtMiphICsgMyksCi0gICAgICAgICAgRnJhY3Rp b25hbCBpZGVhbCAoMiphICsgMyksCi0gICAgICAgICAgRnJhY3Rpb25hbCBpZGVhbCAoYSArIDYp LAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3NjaGVtZXMvZWxsaXB0aWNfY3VydmVzL2dwX3NpbW9u LnB5IGIvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvZ3Bfc2ltb24ucHkKLWluZGV4 IDI4Yjk3ZjM0YWYuLjlmN2QxYjYwMjAgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9zY2hlbWVzL2Vs bGlwdGljX2N1cnZlcy9ncF9zaW1vbi5weQotKysrIGIvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRp Y19jdXJ2ZXMvZ3Bfc2ltb24ucHkKLUBAIC01Niw3ICs1Niw3IEBAIGRlZiBzaW1vbl90d29fZGVz Y2VudChFLCB2ZXJib3NlPTAsIGxpbTE9Tm9uZSwgbGltMz1Ob25lLCBsaW10cml2PU5vbmUsCi0g ICAgICAgICBzYWdlOiBpbXBvcnQgc2FnZS5zY2hlbWVzLmVsbGlwdGljX2N1cnZlcy5ncF9zaW1v bgotICAgICAgICAgc2FnZTogRT1FbGxpcHRpY0N1cnZlKCczODlhMScpCi0gICAgICAgICBzYWdl OiBzYWdlLnNjaGVtZXMuZWxsaXB0aWNfY3VydmVzLmdwX3NpbW9uLnNpbW9uX3R3b19kZXNjZW50 KEUpCi0tICAgICAgICAoMiwgMiwgWygxIDogMCA6IDEpLCAoLTExLzkgOiAyOC8yNyA6IDEpXSkK LSsgICAgICAgICgyLCAyLCBbKDUvNCA6IDUvOCA6IDEpLCAoLTMvNCA6IDcvOCA6IDEpXSkKLSAK LSAgICAgVEVTVFM6OgotIAotQEAgLTExNyw3ICsxMTcsNyBAQCBkZWYgc2ltb25fdHdvX2Rlc2Nl bnQoRSwgdmVyYm9zZT0wLCBsaW0xPU5vbmUsIGxpbTM9Tm9uZSwgbGltdHJpdj1Ob25lLAotICAg ICAjIFRoZSBibG9jayBiZWxvdyBtaW1pY3MgdGhlIGRlZmF1bHRzIGluIFNpbW9uJ3Mgc2NyaXB0 cywgYW5kIG5lZWRzIHRvIGJlIGNoYW5nZWQKLSAgICAgIyB3aGVuIHRoZXNlIGFyZSB1cGRhdGVk LgotICAgICBpZiBLIGlzIFFROgotLSAgICAgICAgY21kID0gJ2VsbHJhbmsoJXMsICVzKTsnICUg KGxpc3QoRS5haW52cygpKSwgW1AuX19wYXJpX18oKSBmb3IgUCBpbiBrbm93bl9wb2ludHNdKQot KyAgICAgICAgY21kID0gJ2VsbFFfZWxscmFuayglcywgJXMpOycgJSAobGlzdChFLmFpbnZzKCkp LCBbUC5fX3BhcmlfXygpIGZvciBQIGluIGtub3duX3BvaW50c10pCi0gICAgICAgICBpZiBsaW0x IGlzIE5vbmU6Ci0gICAgICAgICAgICAgbGltMSA9IDUKLSAgICAgICAgIGlmIGxpbTMgaXMgTm9u ZToKLUBAIC0xNDQsNyArMTQ0LDcgQEAgZGVmIHNpbW9uX3R3b19kZXNjZW50KEUsIHZlcmJvc2U9 MCwgbGltMT1Ob25lLCBsaW0zPU5vbmUsIGxpbXRyaXY9Tm9uZSwKLSAgICAgaWYgdmVyYm9zZSA+ IDA6Ci0gICAgICAgICBwcmludChzKQotICAgICB2ID0gZ3AuZXZhbCgnYW5zJykKLS0gICAgaWYg dj09J2Fucyc6ICMgdGhlbiB0aGUgY2FsbCB0byBlbGxyYW5rKCkgb3IgYm5mZWxscmFuaygpIGZh aWxlZAotKyAgICBpZiB2PT0nYW5zJzogIyB0aGVuIHRoZSBjYWxsIHRvIGVsbFFfZWxscmFuaygp IG9yIGJuZmVsbHJhbmsoKSBmYWlsZWQKLSAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiQW4g ZXJyb3Igb2NjdXJyZWQgd2hpbGUgcnVubmluZyBTaW1vbidzIDItZGVzY2VudCBwcm9ncmFtIikK LSAgICAgaWYgdmVyYm9zZSA+PSAyOgotICAgICAgICAgcHJpbnQoInYgPSAlcyIgJSB2KQotZGlm ZiAtLWdpdCBhL3NyYy9zYWdlL3NjaGVtZXMvZWxsaXB0aWNfY3VydmVzL2lzb2dlbnlfc21hbGxf ZGVncmVlLnB5IGIvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvaXNvZ2VueV9zbWFs bF9kZWdyZWUucHkKLWluZGV4IGE5MzZkZWI3NGYuLmRjMTkyNTRkOGMgMTAwNjQ0Ci0tLS0gYS9z cmMvc2FnZS9zY2hlbWVzL2VsbGlwdGljX2N1cnZlcy9pc29nZW55X3NtYWxsX2RlZ3JlZS5weQot KysrIGIvc3JjL3NhZ2Uvc2NoZW1lcy9lbGxpcHRpY19jdXJ2ZXMvaXNvZ2VueV9zbWFsbF9kZWdy ZWUucHkKLUBAIC0xMjA4LDE0ICsxMjA4LDE0IEBAIGRlZiBpc29nZW5pZXNfMTNfMChFLCBtaW5p bWFsX21vZGVscz1UcnVlKToKLSAgICAgICAgIHNhZ2U6IFtwaGkuY29kb21haW4oKS5haW52cygp IGZvciBwaGkgaW4gaXNvZ2VuaWVzXzEzXzAoRSldICAjIGxvbmcgdGltZSAoNHMpCi0gICAgICAg ICBbKDAsCi0gICAgICAgICAgIDAsCi0tICAgICAgICAgIDIwMzYwNTk5LzE2NTE2NDk3MzY1MzQy MjA4MCphXjExIC0gMzY0MzA3My80MTI5MTI0MzQxMzM1NTUyMCphXjEwIC0gMTAxLzg3ODkxMTA5 ODYyNDAqYV45ICsgNTU1NzYxOTQ2MS81NzM0ODk0OTE4NTIxNjAqYV44IC0gODI4MjQ5NzEvMTE5 NDc2OTc3NDY5MjAqYV43IC0gMTk0ODcvMjExMjc2NzA2NDAqYV42IC0gNDc1NzUyNjAzNzMzLzI5 NDA5NzE3NTMwODgwKmFeNSArIDg3MjA1MTEyNTMxLzczNTI0MjkzODI3MjAqYV40ICsgODM0OS81 MjE2NzA4ODAqYV4zICsgNTg1ODc0NDg4MS8xMjc2NDYzNDM0NSphXjIgLSAxODU4NzAzODA5LzI4 MzY1ODU0MTAqYSArIDU4NzU5NDAyLzQ4OTA2NjQ1LAotKyAgICAgICAgICAyMDM2MDU5OS8xNjUx NjQ5NzM2NTM0MjIwODAqYV4xMSAtIDM2NDMwNzMvNDEyOTEyNDM0MTMzNTU1MjAqYV4xMCArIDE4 ODc0MzkvMTE0Njk3ODk4MzcwNDMyMCphXjkgKyA1NTU3NjE5NDYxLzU3MzQ4OTQ5MTg1MjE2MCph XjggLSA4MjgyNDk3MS8xMTk0NzY5Nzc0NjkyMCphXjcgKyAxMDMwNjMyNjQ3Lzc5NjUxMzE4MzEy ODAqYV42IC0gNDc1NzUyNjAzNzMzLzI5NDA5NzE3NTMwODgwKmFeNSArIDg3MjA1MTEyNTMxLzcz NTI0MjkzODI3MjAqYV40IC0gNDM2MTg4OTk0MzMvMjA0MjM0MTQ5NTIwKmFeMyArIDU4NTg3NDQ4 ODEvMTI3NjQ2MzQzNDUqYV4yIC0gMTg1ODcwMzgwOS8yODM2NTg1NDEwKmEgKyAyNTM1MDUwMTcx LzE0MTgyOTI3MDUsCi0gICAgICAgICAgIC0xMzk4NjEyOTUvMjY1MDc5NTg3MzQ0OTk4NCphXjEx IC0gMzQ1NTk1Ny81NjY0MDkzNzQ2Njg4KmFeMTAgLSAzNDUzMTA1NzEvNTA5NzY4NDM3MjAxOTIq YV45IC0gNTAwNTMwNzk1LzExODAwMTk1MzA1NiphXjggLSAxMjg2MDA0ODExMy8yNjU1MDQzOTQz NzYqYV43IC0gMjUwMDc0MjA0NjEvNDQyNTA3MzIzOTYqYV42ICsgNDU4MTM0MTc2NDU1LzE0MTYw MjM0MzY2NzIqYV41ICsgMTY3MDE4ODA2MzEvOTA3NzA3MzMxMiphXjQgKyAxNTU5NDE2NjY0MTcv OTA3NzA3MzMxMiphXjMgKyAzNDk5MzEwMTE1LzM3ODIxMTM4OCphXjIgLSA3MzY3NzQ4NjMvOTQ1 NTI4NDcqYSAtIDIxOTU0MTAyMzgxLzk0NTUyODQ3LAotLSAgICAgICAgICA1NzkzNjMzNDUyMjEv MTM3NjM3NDc4MDQ0NTE4NDAqYV4xMSArIDM3MTE5MjM3NzUxMS84NjAyMzQyMzc3NzgyNDAqYV4x MCArIDg4NTUwOTAzNjU2NTcvMTE0Njk3ODk4MzcwNDMyMCphXjkgKyA1MzY3MjYxNTQxNjYzLzE2 MzM4NzMxOTYxNjAqYV44ICsgNjE0ODgzNTU0MzMyMTkzLzE1OTMwMjYzNjYyNTYwKmFeNyArIDMw NDg1MTk3Mzc4NDgzLzY4MDc4MDQ5ODQwKmFeNiAtIDEzMTAwMDg5NzU4ODM4Ny8yNDUwODA5Nzk0 MjQwKmFeNSAtIDIwMzYyODcwNTc3Nzk0OS8zMDYzNTEyMjQyODAqYV40IC0gMTU4NzYxOTM4ODE5 MDM3OS8yMDQyMzQxNDk1MjAqYV4zICsgMTQ0MzUwNjk3MDY1NTEvMTEzNDYzNDE2NDAqYV4yICsg NzUzNzI3MzA0ODYxNC80NzI3NjQyMzUqYSArIDg5MTk4OTgwMDM0ODA2LzQ3Mjc2NDIzNSksCi0r ICAgICAgICAgIDgzNDI3OTU5NDQ4OTEvMTk4MTk3OTY4Mzg0MTA2NDk2KmFeMTEgKyA4OTA4NjI1 MjYzNTg5LzIwNjQ1NjIxNzA2Njc3NzYwKmFeMTAgKyA1MzEzMDU0MjYzNjYyMy82ODgxODczOTAy MjI1OTIwKmFeOSArIDM3Njc4MDExMTA0MjIxMy8xMTQ2OTc4OTgzNzA0MzIqYV44ICsgNjE0ODg0 MDUyMTQ2MzMzLzE1OTMwMjYzNjYyNTYwKmFeNyArIDM1NjY3NjgxMzMzMjQzNTkvNzk2NTEzMTgz MTI4MCphXjYgLSAxODg1NTkzODA5MTAyNTQ1LzM1MjkxNjYxMDM3MDU2KmFeNSAtIDI0NDM3MzIx NzIwMjY1MjMvMzY3NjIxNDY5MTM2MCphXjQgLSA5NTI1NzI5NTAzOTM3NTQxLzEyMjU0MDQ4OTcx MjAqYV4zICsgNTE5OTAyNzQ0NDIzMjEvNDA4NDY4Mjk5MDQqYV4yICsgNjc4MzQwMTkzNzA1OTYv NDI1NDg3ODExNSphICsgMjY3NjAzMDgzNzA2ODEyLzE0MTgyOTI3MDUpLAotICAgICAgICAgICgw LAotICAgICAgICAgICAwLAotLSAgICAgICAgICAyMDM2MDU5OS8xNjUxNjQ5NzM2NTM0MjIwODAq YV4xMSAtIDM2NDMwNzMvNDEyOTEyNDM0MTMzNTU1MjAqYV4xMCAtIDEwMS84Nzg5MTEwOTg2MjQw KmFeOSArIDU1NTc2MTk0NjEvNTczNDg5NDkxODUyMTYwKmFeOCAtIDgyODI0OTcxLzExOTQ3Njk3 NzQ2OTIwKmFeNyAtIDE5NDg3LzIxMTI3NjcwNjQwKmFeNiAtIDQ3NTc1MjYwMzczMy8yOTQwOTcx NzUzMDg4MCphXjUgKyA4NzIwNTExMjUzMS83MzUyNDI5MzgyNzIwKmFeNCArIDgzNDkvNTIxNjcw ODgwKmFeMyArIDU4NTg3NDQ4ODEvMTI3NjQ2MzQzNDUqYV4yIC0gMTg1ODcwMzgwOS8yODM2NTg1 NDEwKmEgKyA1ODc1OTQwMi80ODkwNjY0NSwKLSsgICAgICAgICAgMjAzNjA1OTkvMTY1MTY0OTcz NjUzNDIyMDgwKmFeMTEgLSAzNjQzMDczLzQxMjkxMjQzNDEzMzU1NTIwKmFeMTAgKyAxODg3NDM5 LzExNDY5Nzg5ODM3MDQzMjAqYV45ICsgNTU1NzYxOTQ2MS81NzM0ODk0OTE4NTIxNjAqYV44IC0g ODI4MjQ5NzEvMTE5NDc2OTc3NDY5MjAqYV43ICsgMTAzMDYzMjY0Ny83OTY1MTMxODMxMjgwKmFe NiAtIDQ3NTc1MjYwMzczMy8yOTQwOTcxNzUzMDg4MCphXjUgKyA4NzIwNTExMjUzMS83MzUyNDI5 MzgyNzIwKmFeNCAtIDQzNjE4ODk5NDMzLzIwNDIzNDE0OTUyMCphXjMgKyA1ODU4NzQ0ODgxLzEy NzY0NjM0MzQ1KmFeMiAtIDE4NTg3MDM4MDkvMjgzNjU4NTQxMCphICsgMjUzNTA1MDE3MS8xNDE4 MjkyNzA1LAotICAgICAgICAgICAtNjQ2NTU2OTMxNy8xMzI1Mzk3OTM2NzI0OTkyKmFeMTEgLSAx MTIxMzIzMDcvMTk2MDY0NzgzNTM5MiphXjEwIC0gMTcwNzU0MTI5MTcvMjU0ODg0MjE4NjAwOTYq YV45IC0gMjA3ODMyNTE5MjI5LzUzMTAwODc4ODc1MiphXjggLSAxMjE4Mjc1MDY3NjE3LzI2NTUw NDM5NDM3NiphXjcgLSA5NTEzNzY2NTAyNTUxLzE3NzAwMjkyOTU4NCphXjYgKyA0Mjk3MDc3ODU1 NDM3LzcwODAxMTcxODMzNiphXjUgKyAzNTQ0ODU5NzU4MzcvNDUzODUzNjY1NiphXjQgKyA0MTk5 Mzc5MzA4MDU5LzQ1Mzg1MzY2NTYqYV4zIC0gMzA4NDE1Nzc5MTkvMTg5MTA1Njk0KmFeMiAtIDE4 MTkxNjQ4NDA0Mi85NDU1Mjg0NyphIC0gMjEzNTc3OTE3MTYxNC85NDU1Mjg0NywKLS0gICAgICAg ICAgLTEzMjYwMTc5NzIxMjYyNy8zNDQwOTM2OTUxMTEyOTYwKmFeMTEgLSA2MjEyNDY3MDIwNTAy MDIxLzEzNzYzNzQ3ODA0NDUxODQwKmFeMTAgLSAxNTE1OTI2NDU0OTAyNDk3LzI4Njc0NDc0NTky NjA4MCphXjkgLSAxNTE1NDkxMzc0MTc5OTYzNy80OTAxNjE5NTg4NDgwKmFeOCAtIDU3Njg4ODEx OTgwMzg1OTI2My8xNTkzMDI2MzY2MjU2MCphXjcgLSA4NjYyNjc1MTYzOTY0ODY3MS8yMDQyMzQx NDk1MjAqYV42ICsgMTY0MzY2NTc1NjkyMTg0MjcvMzA2MzUxMjI0MjgwKmFeNSArIDE1NDAwMjc5 MDAyNjU2NTkwODcvMjQ1MDgwOTc5NDI0MCphXjQgKyAzNzU3ODI2NjI4MDU5MTU4MDkvNTEwNTg1 MzczODAqYV4zIC0gMTQ4MzE5MjA5MjQ2Nzc4ODMvMTEzNDYzNDE2NDAqYV4yIC0gNzIzNzk0Nzc3 NDgxNzcyNC80NzI3NjQyMzUqYSAtIDg0NzczNzY0MDY2MDg5NTA5LzQ3Mjc2NDIzNSldCi0rICAg ICAgICAgIC0xMzE2ODczMDI2ODQwMjc3LzM0MTcyMDYzNTE0NTAxMTIwKmFeMTEgLSAxODYzNzQw MTA0NTA5OTQxMy80MTI5MTI0MzQxMzM1NTUyMCphXjEwIC0gMzYzODIyMzQ5MTcyMTcyNDcvNjg4 MTg3MzkwMjIyNTkyMCphXjkgLSA2MTE0MjIzODQ4NDAxNjIxMy8xOTc3NTQ5OTcxOTA0MCphXjgg LSA1NzY4ODgxMTkzMDYwNDUxMjMvMTU5MzAyNjM2NjI1NjAqYV43IC0gMzM3ODQ0MzMxMzkwNjI1 NjMyMS83OTY1MTMxODMxMjgwKmFeNiArIDMyNjQ2NjE2NzQyOTMzMzI3OS82MDg0NzY5MTQ0MzIw KmFeNSArIDQ2MjAwODMzMjUzOTE1OTQ5OTEvNzM1MjQyOTM4MjcyMCphXjQgKyA5MDE4NzgzODk0 MTY3MTg0MTQ5LzEyMjU0MDQ4OTcxMjAqYV4zIC0gOTIwNjAxNTc0MjMwMDI4My83MDQyNTU2ODgw KmFeMiAtIDY1MTQxNTMxNDExNDI2NDQ2LzQyNTQ4NzgxMTUqYSAtIDI1NDMyMTI4NjA1NDY2NjEz My8xNDE4MjkyNzA1KV0KLSAgICAgIiIiCi0gICAgIGlmIEUual9pbnZhcmlhbnQoKSE9MDoKLSAg ICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImotaW52YXJpYW50IG11c3QgYmUgMC4iKQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9zYWdlbWF0aC9wYXRjaGVzL3RyYWMtMzQ1Mzctc2FnZW1hdGgtcGFyaS0y LjE1Yi5wYXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0NTM3LXNhZ2VtYXRo LXBhcmktMi4xNWIucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc2MmJiMjYx MjYzMi4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0 NTM3LXNhZ2VtYXRoLXBhcmktMi4xNWIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyOSArMCww IEBACi1Gcm9tIGYwMzY1ZjMwODM0YjY4OTAzMTM3OTBiMzg0NWM2NDdkMDE2MGZhNmEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBWaW5jZW50IERlbGVjcm9peCA8MjAxMDAuZGVsZWNy b2l4QGdtYWlsLmNvbSo+Ci1EYXRlOiBGcmksIDMwIFNlcCAyMDIyIDE2OjMxOjA4ICswMjAwCi1T dWJqZWN0OiBmaXggZG9jdGVzdCBpZiBmcWZfb3J0aG9nb25hbAotCi0tLS0KLSBzcmMvc2FnZS9n cm91cHMvZnFmX29ydGhvZ29uYWwucHkgfCA0ICsrLS0KLSAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvZ3JvdXBz L2ZxZl9vcnRob2dvbmFsLnB5IGIvc3JjL3NhZ2UvZ3JvdXBzL2ZxZl9vcnRob2dvbmFsLnB5Ci1p bmRleCA3NWRlNDA4Li43ZmM0ZGJlIDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvZ3JvdXBzL2ZxZl9v cnRob2dvbmFsLnB5Ci0rKysgYi9zcmMvc2FnZS9ncm91cHMvZnFmX29ydGhvZ29uYWwucHkKLUBA IC0yNDUsMTAgKzI0NSwxMCBAQCBjbGFzcyBGcWZPcnRob2dvbmFsR3JvdXAoQWJlbGlhbkdyb3Vw QXV0b21vcnBoaXNtR3JvdXBfc3ViZ3JvdXApOgotICAgICAgICAgICAgIHNhZ2U6IGFsbCh4KmY9 PXgqZmJhciBmb3IgeCBpbiBxLmdlbnMoKSkKLSAgICAgICAgICAgICBUcnVlCi0gICAgICAgICAg ICAgc2FnZTogTCA9IEludGVncmFsTGF0dGljZSgiQTIiKS50d2lzdCgzKQotLSAgICAgICAgICAg IHNhZ2U6IHEgPSBMLmRpc2NyaW1pbmFudF9ncm91cCgpCi0gICAgICAgICAgICAgc2FnZTogT0wg PSBMLm9ydGhvZ29uYWxfZ3JvdXAoKQotKyAgICAgICAgICAgIHNhZ2U6IGFzc2VydCBPTChPTC4w Lm1hdHJpeCgpKSA9PSBPTC4wCi0rICAgICAgICAgICAgc2FnZTogcSA9IEwuZGlzY3JpbWluYW50 X2dyb3VwKCkKLSAgICAgICAgICAgICBzYWdlOiBPcSA9IHEub3J0aG9nb25hbF9ncm91cCgpCi0t ICAgICAgICAgICAgc2FnZTogYXNzZXJ0IE9xKE9MLjApID09IE9xKE9MLjAubWF0cml4KCkpCi0g ICAgICAgICAgICAgc2FnZTogYXNzZXJ0IE9xKE9xLjAubWF0cml4KCkpID09IE9xLjAKLSAgICAg ICAgICIiIgotICAgICAgICAgZnJvbSBzYWdlLmxpYnMuZ2FwLmVsZW1lbnQgaW1wb3J0IEdhcEVs ZW1lbnQKLS0tIAotY2dpdCB2MS4wLTEtZ2Q4OGUKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYWdl bWF0aC9wYXRjaGVzL3RyYWMtMzQ2NjgtbWF0cGxvdGxpYl8zLjYtNTUwMWUwZGUwZGNhMWNmZjAz NTUzMjZkZDQyYmQ4YzdlNTc0OTU2OC5wYXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90 cmFjLTM0NjY4LW1hdHBsb3RsaWJfMy42LTU1MDFlMGRlMGRjYTFjZmYwMzU1MzI2ZGQ0MmJkOGM3 ZTU3NDk1NjgucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhZmFmMWI3MTYy Zi4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0NjY4 LW1hdHBsb3RsaWJfMy42LTU1MDFlMGRlMGRjYTFjZmYwMzU1MzI2ZGQ0MmJkOGM3ZTU3NDk1Njgu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw3MiArMCwwIEBACi1jb21taXQgNTUwMWUwZGUwZGNh MWNmZjAzNTUzMjZkZDQyYmQ4YzdlNTc0OTU2OAotQXV0aG9yOiBHb256YWxvIFRvcm5hcsOtYSA8 dG9ybmFyaWFAY21hdC5lZHUudXk+Ci1EYXRlOiAgIFR1ZSBPY3QgMTEgMTc6MjU6MDQgMjAyMiAt MDMwMAotCi0gICAgU3VwcG9ydCBtYXRwbG90bGliIDMuNgotCi1kaWZmIC0tZ2l0IGEvc3JjL3Nh Z2UvcGxvdC9hcmMucHkgYi9zcmMvc2FnZS9wbG90L2FyYy5weQotaW5kZXggYmI4MzQ3NjNhZmMu LmY2NTk3M2JjYmQ1IDEwMDY0NAotLS0tIGEvc3JjL3NhZ2UvcGxvdC9hcmMucHkKLSsrKyBiL3Ny Yy9zYWdlL3Bsb3QvYXJjLnB5Ci1AQCAtMjczLDkgKzI3Myw5IEBAIGNsYXNzIEFyYyhHcmFwaGlj UHJpbWl0aXZlKToKLSAgICAgICAgIHAgPSBwYXRjaGVzLkFyYygoc2VsZi54LCBzZWxmLnkpLAot ICAgICAgICAgICAgICAgICAgICAgICAgIDIuICogc2VsZi5yMSwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAyLiAqIHNlbGYucjIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgZm1vZChzZWxm LmFuZ2xlLCAyICogcGkpICogKDE4MC4gLyBwaSksCi0tICAgICAgICAgICAgICAgICAgICAgICAg c2VsZi5zMSAqICgxODAuIC8gcGkpLAotLSAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuczIg KiAoMTgwLiAvIHBpKSkKLSsgICAgICAgICAgICAgICAgICAgICAgICBhbmdsZT1mbW9kKHNlbGYu YW5nbGUsIDIgKiBwaSkgKiAoMTgwLiAvIHBpKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICB0 aGV0YTE9c2VsZi5zMSAqICgxODAuIC8gcGkpLAotKyAgICAgICAgICAgICAgICAgICAgICAgIHRo ZXRhMj1zZWxmLnMyICogKDE4MC4gLyBwaSkpCi0gICAgICAgICByZXR1cm4gcAotIAotICAgICBk ZWYgYmV6aWVyX3BhdGgoc2VsZik6Ci1kaWZmIC0tZ2l0IGEvc3JjL3NhZ2UvcGxvdC9lbGxpcHNl LnB5IGIvc3JjL3NhZ2UvcGxvdC9lbGxpcHNlLnB5Ci1pbmRleCBhNzdlNmZlNjQwYS4uYzM1YmVk NTc0ZWYgMTAwNjQ0Ci0tLS0gYS9zcmMvc2FnZS9wbG90L2VsbGlwc2UucHkKLSsrKyBiL3NyYy9z YWdlL3Bsb3QvZWxsaXBzZS5weQotQEAgLTE5Miw3ICsxOTIsOCBAQCBjbGFzcyBFbGxpcHNlKEdy YXBoaWNQcmltaXRpdmUpOgotICAgICAgICAgb3B0aW9ucyA9IHNlbGYub3B0aW9ucygpCi0gICAg ICAgICBwID0gcGF0Y2hlcy5FbGxpcHNlKAotICAgICAgICAgICAgICAgICAoc2VsZi54LHNlbGYu eSksCi0tICAgICAgICAgICAgICAgIHNlbGYucjEqMi4sc2VsZi5yMioyLixzZWxmLmFuZ2xlL3Bp KjE4MC4pCi0rICAgICAgICAgICAgICAgIHNlbGYucjEqMi4sc2VsZi5yMioyLiwKLSsgICAgICAg ICAgICAgICAgYW5nbGU9c2VsZi5hbmdsZS9waSoxODAuKQotICAgICAgICAgcC5zZXRfbGluZXdp ZHRoKGZsb2F0KG9wdGlvbnNbJ3RoaWNrbmVzcyddKSkKLSAgICAgICAgIHAuc2V0X2ZpbGwob3B0 aW9uc1snZmlsbCddKQotICAgICAgICAgYSA9IGZsb2F0KG9wdGlvbnNbJ2FscGhhJ10pCi1kaWZm IC0tZ2l0IGEvc3JjL3NhZ2UvcGxvdC9ncmFwaGljcy5weSBiL3NyYy9zYWdlL3Bsb3QvZ3JhcGhp Y3MucHkKLWluZGV4IGU3NzllMTIxMGUzLi44ZDYyMGI1YzYyNSAxMDA2NDQKLS0tLSBhL3NyYy9z YWdlL3Bsb3QvZ3JhcGhpY3MucHkKLSsrKyBiL3NyYy9zYWdlL3Bsb3QvZ3JhcGhpY3MucHkKLUBA IC0yMDA3LDcgKzIwMDcsNyBAQCBjbGFzcyBHcmFwaGljcyhXaXRoRXF1YWxpdHlCeUlkLCBTYWdl T2JqZWN0KToKLSAgICAgICAgIFdlIGNhbiBhbHNvIGRvIGN1c3RvbSBmb3JtYXR0aW5nIGlmIHlv dSBuZWVkIGl0LiAgU2VlIGFib3ZlIGZvciBmdWxsCi0gICAgICAgICBkZXRhaWxzOjoKLSAKLS0g ICAgICAgICAgICBzYWdlOiBwbG90KDIqeCsxLCh4LDAsNSksdGlja3M9W1swLDEsZSxwaSxzcXJ0 KDIwKV0sMl0sdGlja19mb3JtYXR0ZXI9ImxhdGV4IikKLSsgICAgICAgICAgICBzYWdlOiBwbG90 KDIqeCsxLCh4LDAsNSksdGlja3M9W1swLDEsZSxwaSxzcXJ0KDIwKV0sMl0sdGlja19mb3JtYXR0 ZXI9ImxhdGV4IikgIyBub3QgdGVzdGVkIChicm9rZW4gd2l0aCBtYXRwbG90bGliIDMuNikKLSAg ICAgICAgICAgICBHcmFwaGljcyBvYmplY3QgY29uc2lzdGluZyBvZiAxIGdyYXBoaWNzIHByaW1p dGl2ZQotIAotICAgICAgICAgVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gc2V0dGlu ZyBjdXN0b20gdGlja3MgaW4gbXVsdGlwbGVzCi1AQCAtMjM0MSw3ICsyMzQxLDcgQEAgY2xhc3Mg R3JhcGhpY3MoV2l0aEVxdWFsaXR5QnlJZCwgU2FnZU9iamVjdCk6Ci0gICAgICAgICAgICAgc2Fn ZTogc3VicGxvdCA9IEZpZ3VyZSgpLmFkZF9zdWJwbG90KDExMSkKLSAgICAgICAgICAgICBzYWdl OiBwLl9vYmplY3RzWzBdLl9yZW5kZXJfb25fc3VicGxvdChzdWJwbG90KQotICAgICAgICAgICAg IHNhZ2U6IHAuX21hdHBsb3RsaWJfdGlja19mb3JtYXR0ZXIoc3VicGxvdCwgKipkKQotLSAgICAg ICAgICAgICg8QXhlc1N1YnBsb3Q6PiwKLSsgICAgICAgICAgICAoPEF4ZXNTdWJwbG90Oi4uLj4s Ci0gICAgICAgICAgICAgPG1hdHBsb3RsaWIudGlja2VyLk1heE5Mb2NhdG9yIG9iamVjdCBhdCAu Li4+LAotICAgICAgICAgICAgIDxtYXRwbG90bGliLnRpY2tlci5NYXhOTG9jYXRvciBvYmplY3Qg YXQgLi4uPiwKLSAgICAgICAgICAgICA8bWF0cGxvdGxpYi50aWNrZXIuU2NhbGFyRm9ybWF0dGVy IG9iamVjdCBhdCAuLi4+LAotZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3Bsb3QvcGxvdC5weSBiL3Ny Yy9zYWdlL3Bsb3QvcGxvdC5weQotaW5kZXggYjM2ZWU1NzIyN2MuLjUzMDFhMDVjM2RjIDEwMDY0 NAotLS0tIGEvc3JjL3NhZ2UvcGxvdC9wbG90LnB5Ci0rKysgYi9zcmMvc2FnZS9wbG90L3Bsb3Qu cHkKLUBAIC0xNzQxLDcgKzE3NDEsNyBAQCBkZWYgcGxvdChmdW5jcywgKmFyZ3MsICoqa3dkcyk6 Ci0gCi0gICAgIDo6Ci0gCi0tICAgICAgICBzYWdlOiBwbG90KDIqeCsxLCh4LDAsNSksdGlja3M9 W1swLDEsZSxwaSxzcXJ0KDIwKV0sMl0sdGlja19mb3JtYXR0ZXI9ImxhdGV4IikKLSsgICAgICAg IHNhZ2U6IHBsb3QoMip4KzEsKHgsMCw1KSx0aWNrcz1bWzAsMSxlLHBpLHNxcnQoMjApXSwyXSx0 aWNrX2Zvcm1hdHRlcj0ibGF0ZXgiKSAjIG5vdCB0ZXN0ZWQgKGJyb2tlbiB3aXRoIG1hdHBsb3Rs aWIgMy42KQotICAgICAgICAgR3JhcGhpY3Mgb2JqZWN0IGNvbnNpc3Rpbmcgb2YgMSBncmFwaGlj cyBwcmltaXRpdmUKLSAKLSAgICAgLi4gUExPVDo6CmRpZmYgLS1naXQgYS9zcmNwa2dzL3NhZ2Vt YXRoL3BhdGNoZXMvdHJhYy0zNDg1MS1zdXBwb3J0X3Npbmd1bGFyXzQuMy4xLnAzLTVlNTczN2Ew Yy5wYXRjaCBiL3NyY3BrZ3Mvc2FnZW1hdGgvcGF0Y2hlcy90cmFjLTM0ODUxLXN1cHBvcnRfc2lu Z3VsYXJfNC4zLjEucDMtNWU1NzM3YTBjLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwMC4uZjJmODI1ZTRmYjEwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9z YWdlbWF0aC9wYXRjaGVzL3RyYWMtMzQ4NTEtc3VwcG9ydF9zaW5ndWxhcl80LjMuMS5wMy01ZTU3 MzdhMGMucGF0Y2gKQEAgLTAsMCArMSwyMDUgQEAKK2RpZmYgLS1naXQgYS9idWlsZC9wa2dzL3Np bmd1bGFyL2NoZWNrc3Vtcy5pbmkgYi9idWlsZC9wa2dzL3Npbmd1bGFyL2NoZWNrc3Vtcy5pbmkK K2luZGV4IDJlMzNhNDA1ZDM2Li4zMTM0NjNkMmZlYSAxMDA2NDQKKy0tLSBhL2J1aWxkL3BrZ3Mv c2luZ3VsYXIvY2hlY2tzdW1zLmluaQorKysrIGIvYnVpbGQvcGtncy9zaW5ndWxhci9jaGVja3N1 bXMuaW5pCitAQCAtMSw1ICsxLDUgQEAKKyB0YXJiYWxsPXNpbmd1bGFyLVZFUlNJT04udGFyLmd6 Cistc2hhMT02YzJiNjIyZDM2ODFlMmRlM2Q1OGQzMGM2NTRkNDNkM2UzMmI3MjBjCistbWQ1PWFi YjFlMzdjNzk0NDcyZTc3NjA2NTUzNThhYjY2MDU0CistY2tzdW09MTc0NTU3MzMKKytzaGExPTI4 YmIzZWU5N2VmNDhkMDRkZmE5NmRlMTgyZmQ5M2VlYmUwODQyNmMKKyttZDU9ZmMwYTRmNTcyMGRh ZGJhNDVhNTJlZTk0MzI0Y2UwMGMKKytja3N1bT0xNTczODUxNzM3CisgdXBzdHJlYW1fdXJsPWZ0 cDovL2ppbS5tYXRoZW1hdGlrLnVuaS1rbC5kZS9wdWIvTWF0aC9TaW5ndWxhci9TT1VSQ0VTLzQt My0xL3Npbmd1bGFyLVZFUlNJT04udGFyLmd6CitkaWZmIC0tZ2l0IGEvYnVpbGQvcGtncy9zaW5n dWxhci9wYWNrYWdlLXZlcnNpb24udHh0IGIvYnVpbGQvcGtncy9zaW5ndWxhci9wYWNrYWdlLXZl cnNpb24udHh0CitpbmRleCAxMTMwMGM3N2U3ZC4uNjZlMmJlZGU1M2EgMTAwNjQ0CistLS0gYS9i dWlsZC9wa2dzL3Npbmd1bGFyL3BhY2thZ2UtdmVyc2lvbi50eHQKKysrKyBiL2J1aWxkL3BrZ3Mv c2luZ3VsYXIvcGFja2FnZS12ZXJzaW9uLnR4dAorQEAgLTEgKzEgQEAKKy00LjMuMXAxCisrNC4z LjFwMworZGlmZiAtLWdpdCBhL3NyYy9zYWdlL2xpYnMvc2luZ3VsYXIvZGVjbC5weGQgYi9zcmMv c2FnZS9saWJzL3Npbmd1bGFyL2RlY2wucHhkCitpbmRleCA4ZTNhYzMxNGI2Ny4uNzQ3YTZiMWUy ZmIgMTAwNjQ0CistLS0gYS9zcmMvc2FnZS9saWJzL3Npbmd1bGFyL2RlY2wucHhkCisrKysgYi9z cmMvc2FnZS9saWJzL3Npbmd1bGFyL2RlY2wucHhkCitAQCAtNTc0LDcgKzU3NCw3IEBAIGNkZWYg ZXh0ZXJuIGZyb20gInNpbmd1bGFyL1Npbmd1bGFyL2xpYnNpbmd1bGFyLmgiOgorIAorICAgICAj IGdldHMgYSBjb21wb25lbnQgb3V0IG9mIGEgcG9seW5vbWlhbCB2ZWN0b3IKKyAKKy0gICAgcG9s eSAqcFRha2VPdXRDb21wMShwb2x5ICoqLCBpbnQpCisrICAgIHBvbHkgKnBUYWtlT3V0Q29tcChw b2x5ICoqLCBpbnQpCisgCisgICAgICMgZGVlcCBjb3B5IHAKKyAKK2RpZmYgLS1naXQgYS9zcmMv c2FnZS9saWJzL3Npbmd1bGFyL3Npbmd1bGFyLnB5eCBiL3NyYy9zYWdlL2xpYnMvc2luZ3VsYXIv c2luZ3VsYXIucHl4CitpbmRleCBkOGVhN2IwN2YzYy4uM2ExMjcxY2Q1OWYgMTAwNjQ0CistLS0g YS9zcmMvc2FnZS9saWJzL3Npbmd1bGFyL3Npbmd1bGFyLnB5eAorKysrIGIvc3JjL3NhZ2UvbGli cy9zaW5ndWxhci9zaW5ndWxhci5weXgKK0BAIC0xNzI2LDIwICsxNzI2LDIxIEBAIGNkZWYgaW50 IG92ZXJmbG93X2NoZWNrKHVuc2lnbmVkIGxvbmcgZSwgcmluZyAqX3JpbmcpIGV4Y2VwdCAtMToK KyAKKyAgICAgV2hldGhlciBhbiBvdmVyZmxvdyBvY2N1cnMgb3Igbm90IHBhcnRpYWxseSBkZXBl bmRzCisgICAgIG9uIHRoZSBudW1iZXIgb2YgdmFyaWFibGVzIGluIHRoZSByaW5nLiBTZWUgdHJh YyB0aWNrZXQKKy0gICAgOnRyYWM6YDExODU2YC4gV2l0aCBTaW5ndWxhciA0LCBpdCBpcyBieSBk ZWZhdWx0IG9wdGltaXplZAorLSAgICBmb3IgYXQgbGVhc3QgNCB2YXJpYWJsZXMgb24gNjQtYml0 IGFuZCAyIHZhcmlhYmxlcyBvbiAzMi1iaXQsCistICAgIHdoaWNoIGluIGJvdGggY2FzZXMgbWFr ZXMgYSBtYXhpbWFsIGRlZmF1bHQgZXhwb25lbnQgb2YKKy0gICAgMl4xNi0xLgorKyAgICA6dHJh YzpgMTE4NTZgLgorIAorICAgICBFWEFNUExFUzo6CisgCisgICAgICAgICBzYWdlOiBQLjx4LHk+ ID0gUVFbXQorLSAgICAgICAgc2FnZTogeV4oMl4xNi0xKQorLSAgICAgICAgeV42NTUzNQorLSAg ICAgICAgc2FnZTogeV4yXjE2CisrICAgICAgICBzYWdlOiB5XigyXjMwKQorKyAgICAgICAgVHJh Y2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOiAgICAgICAgICAgICAjIDMyLWJpdAorKyAg ICAgICAgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIDMy LWJpdAorKyAgICAgICAgT3ZlcmZsb3dFcnJvcjogZXhwb25lbnQgb3ZlcmZsb3cgKDEwNzM3NDE4 MjQpICAjIDMyLWJpdAorKyAgICAgICAgeV4xMDczNzQxODI0ICAjIDY0LWJpdAorKyAgICAgICAg c2FnZTogeV4yXjMyCisgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6 CisgICAgICAgICAuLi4KKy0gICAgICAgIE92ZXJmbG93RXJyb3I6IGV4cG9uZW50IG92ZXJmbG93 ICg2NTUzNikKKysgICAgICAgIE92ZXJmbG93RXJyb3I6IFB5dGhvbiBpbnQgdG9vIGxhcmdlIHRv IGNvbnZlcnQgdG8gQyB1bnNpZ25lZCBsb25nICAjIDMyLWJpdAorKyAgICAgICAgT3ZlcmZsb3dF cnJvcjogZXhwb25lbnQgb3ZlcmZsb3cgKDQyOTQ5NjcyOTYpICAjIDY0LWJpdAorICAgICAiIiIK KyAgICAgaWYgdW5saWtlbHkoZSA+IF9yaW5nLmJpdG1hc2spOgorICAgICAgICAgcmFpc2UgT3Zl cmZsb3dFcnJvcigiZXhwb25lbnQgb3ZlcmZsb3cgKCVkKSIlKGUpKQorZGlmZiAtLWdpdCBhL3Ny Yy9zYWdlL3JpbmdzL3BvbHlub21pYWwvbXVsdGlfcG9seW5vbWlhbF9pZGVhbC5weSBiL3NyYy9z YWdlL3JpbmdzL3BvbHlub21pYWwvbXVsdGlfcG9seW5vbWlhbF9pZGVhbC5weQoraW5kZXggN2Rj MDU4YTIyZjAuLjcxNDk0ZWRkYmMwIDEwMDY0NAorLS0tIGEvc3JjL3NhZ2UvcmluZ3MvcG9seW5v bWlhbC9tdWx0aV9wb2x5bm9taWFsX2lkZWFsLnB5CisrKysgYi9zcmMvc2FnZS9yaW5ncy9wb2x5 bm9taWFsL211bHRpX3BvbHlub21pYWxfaWRlYWwucHkKK0BAIC02MCw3ICs2MCw3IEBACisgTm90 ZSB0aGF0IHRoZSByZXN1bHQgb2YgYSBjb21wdXRhdGlvbiBpcyBub3QgbmVjZXNzYXJpbHkgcmVk dWNlZDo6CisgCisgICAgIHNhZ2U6IChhK2IpXjE3CistICAgIDI1NiphKmJeMTYgKyAyNTYqYl4x NworKyAgICBhKmJeMTYgKyBiXjE3CisgICAgIHNhZ2U6IFMoMTcpID09IDAKKyAgICAgVHJ1ZQor IAorZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3JpbmdzL3BvbHlub21pYWwvbXVsdGlfcG9seW5vbWlh bF9saWJzaW5ndWxhci5weXggYi9zcmMvc2FnZS9yaW5ncy9wb2x5bm9taWFsL211bHRpX3BvbHlu b21pYWxfbGlic2luZ3VsYXIucHl4CitpbmRleCA0ZGFkMDE2YjMzZi4uOWJmNjdkZDE0MjUgMTAw NjQ0CistLS0gYS9zcmMvc2FnZS9yaW5ncy9wb2x5bm9taWFsL211bHRpX3BvbHlub21pYWxfbGli c2luZ3VsYXIucHl4CisrKysgYi9zcmMvc2FnZS9yaW5ncy9wb2x5bm9taWFsL211bHRpX3BvbHlu b21pYWxfbGlic2luZ3VsYXIucHl4CitAQCAtMTkzLDcgKzE5Myw3IEBAIGZyb20gc2FnZS5saWJz LnNpbmd1bGFyLmRlY2wgY2ltcG9ydCAoCisgICAgIHBfSXNVbml0LCBwX0lzT25lLCBwX1Nlcmll cywgcF9IZWFkLCBpZEluaXQsIGZhc3RfbWFwX2NvbW1vbl9zdWJleHAsIGlkX0RlbGV0ZSwKKyAg ICAgcF9Jc0hvbW9nZW5lb3VzLCBwX0hvbW9nZW4sIHBfVG90YWxkZWdyZWUscExEZWcxX1RvdGFs ZGVncmVlLCBzaW5nY2xhcF9wZGl2aWRlLCBzaW5nY2xhcF9mYWN0b3JpemUsCisgICAgIGlkTGlm dCwgSURFTEVNUywgT24sIE9mZiwgU1dfVVNFX0NISU5SRU1fR0NELCBTV19VU0VfRVpHQ0QsCist ICAgIHBfTG1Jc0NvbnN0YW50LCBwVGFrZU91dENvbXAxLCBzaW5nY2xhcF9nY2QsIHBwX011bHRf cXEsIHBfR2V0TWF4RXhwLAorKyAgICBwX0xtSXNDb25zdGFudCwgcFRha2VPdXRDb21wLCBzaW5n Y2xhcF9nY2QsIHBwX011bHRfcXEsIHBfR2V0TWF4RXhwLAorICAgICBwTGVuZ3RoLCBrTkYsIHBf TmVnLCBwX01pbnVzX21tX011bHRfcXEsIHBfUGx1c19tbV9NdWx0X3FxLAorICAgICBwRGlmZiwg c2luZ2NsYXBfcmVzdWx0YW50LCBwX05vcm1hbGl6ZSwKKyAgICAgcHJDb3B5UiwgcHJDb3B5Ul9O b1NvcnQpCitAQCAtMTU4Nyw3ICsxNTg3LDggQEAgY2RlZiBjbGFzcyBNUG9seW5vbWlhbFJpbmdf bGlic2luZ3VsYXIoTVBvbHlub21pYWxSaW5nX2Jhc2UpOgorICAgICAgICAgICAgIDkvNAorIAor ICAgICAgICAgICAgIHNhZ2U6IFAubW9ub21pYWxfcXVvdGllbnQoeCx5KSAjIE5vdGUgdGhlIHdy b25nIHJlc3VsdAorLSAgICAgICAgICAgIHgqeV42NTUzNSp6XjY1NTM1CisrICAgICAgICAgICAg eCp5XjY1NTM1KnpeNjU1MzUgICAgICAjIDMyLWJpdAorKyAgICAgICAgICAgIHgqeV4xMDQ4NTc1 KnpeMTA0ODU3NSAgIyA2NC1iaXQKKyAKKyAgICAgICAgICAgICBzYWdlOiBQLm1vbm9taWFsX3F1 b3RpZW50KHgsUCgxKSkKKyAgICAgICAgICAgICB4CitAQCAtMjI0NywxMCArMjI0OCwxMSBAQCBj ZGVmIGNsYXNzIE1Qb2x5bm9taWFsX2xpYnNpbmd1bGFyKE1Qb2x5bm9taWFsKToKKyAgICAgICAg ICAgICA5LzQqeF4yIC0gMS80KnleMiAtIHkgLSAxCisgCisgICAgICAgICAgICAgc2FnZTogUC48 eCx5PiA9IFBvbHlub21pYWxSaW5nKFFRLG9yZGVyPSdsZXgnKQorLSAgICAgICAgICAgIHNhZ2U6 ICh4XjJeMTUpICogeF4yXjE1CisrICAgICAgICAgICAgc2FnZTogKHheMl4zMikgKiB4XjJeMzIK KyAgICAgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAg ICAgICAgLi4uCistICAgICAgICAgICAgT3ZlcmZsb3dFcnJvcjogZXhwb25lbnQgb3ZlcmZsb3cg KC4uLikKKysgICAgICAgICAgICBPdmVyZmxvd0Vycm9yOiBQeXRob24gaW50IHRvbyBsYXJnZSB0 byBjb252ZXJ0IHRvIEMgdW5zaWduZWQgbG9uZyAgIyAzMi1iaXQKKysgICAgICAgICAgICBPdmVy Zmxvd0Vycm9yOiBleHBvbmVudCBvdmVyZmxvdyAoLi4uKSAgIyA2NC1iaXQKKyAgICAgICAgICIi IgorICAgICAgICAgIyBhbGwgY3VycmVudGx5IGltcGxlbWVudGVkIHJpbmdzIGFyZSBjb21tdXRh dGl2ZQorICAgICAgICAgY2RlZiBwb2x5ICpfcAorQEAgLTIzNzEsMTAgKzIzNzMsMTEgQEAgY2Rl ZiBjbGFzcyBNUG9seW5vbWlhbF9saWJzaW5ndWxhcihNUG9seW5vbWlhbCk6CisgICAgICAgICAg ICAgVmFsdWVFcnJvcjogbm90IGEgMm5kIHBvd2VyCisgCisgICAgICAgICAgICAgc2FnZTogUC48 eCx5PiA9IFBvbHlub21pYWxSaW5nKFFRLG9yZGVyPSdsZXgnKQorLSAgICAgICAgICAgIHNhZ2U6 ICh4K3leMl4xNSleMTAKKysgICAgICAgICAgICBzYWdlOiAoeCt5XjJeMzIpXjEwCisgICAgICAg ICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgICAgICAgIC4u Li4KKy0gICAgICAgICAgICBPdmVyZmxvd0Vycm9yOiBleHBvbmVudCBvdmVyZmxvdyAoLi4uKQor KyAgICAgICAgICAgIE92ZXJmbG93RXJyb3I6IFB5dGhvbiBpbnQgdG9vIGxhcmdlIHRvIGNvbnZl cnQgdG8gQyB1bnNpZ25lZCBsb25nICAjIDMyLWJpdAorKyAgICAgICAgICAgIE92ZXJmbG93RXJy b3I6IGV4cG9uZW50IG92ZXJmbG93ICguLi4pICAjIDY0LWJpdAorIAorICAgICAgICAgVGVzdCBm cmFjdGlvbmFsIHBvd2VycyAoOnRyYWM6YDIyMzI5YCk6OgorIAorQEAgLTM0NjEsNyArMzQ2NCw3 IEBAIGNkZWYgY2xhc3MgTVBvbHlub21pYWxfbGlic2luZ3VsYXIoTVBvbHlub21pYWwpOgorICAg ICAgICAgICAgIHheMTAwMDAKKyAgICAgICAgICAgICBubyBvdmVyZmxvdworIAorLSAgICAgICAg ICAgIHNhZ2U6IG4gPSAxMDAwCisrICAgICAgICAgICAgc2FnZTogbiA9IDEwMDAwMAorICAgICAg ICAgICAgIHNhZ2U6IHRyeToKKyAgICAgICAgICAgICAuLi4uOiAgICAgZiA9IHhebgorICAgICAg ICAgICAgIC4uLi46ICAgICBmLnN1YnMoeCA9IHhebikKK0BAIC00NTY3LDcgKzQ1NzAsNyBAQCBj ZGVmIGNsYXNzIE1Qb2x5bm9taWFsX2xpYnNpbmd1bGFyKE1Qb2x5bm9taWFsKToKKyAgICAgICAg IGwgPSBbXQorICAgICAgICAgZm9yIGkgZnJvbSAwIDw9IGkgPCBJREVMRU1TKHJlcyk6CisgICAg ICAgICAgICAgZm9yIGogZnJvbSAxIDw9IGogPD0gSURFTEVNUyhfSSk6CistICAgICAgICAgICAg ICAgIGwuYXBwZW5kKCBuZXdfTVAocGFyZW50LCBwVGFrZU91dENvbXAxKCZyZXMubVtpXSwgaikp ICkKKysgICAgICAgICAgICAgICAgbC5hcHBlbmQoIG5ld19NUChwYXJlbnQsIHBUYWtlT3V0Q29t cCgmcmVzLm1baV0sIDEpKSApCisgCisgICAgICAgICBpZF9EZWxldGUoJmZJLCByKQorICAgICAg ICAgaWRfRGVsZXRlKCZfSSwgcikKK0BAIC00NjM1LDcgKzQ2MzgsNyBAQCBjZGVmIGNsYXNzIE1Q b2x5bm9taWFsX2xpYnNpbmd1bGFyKE1Qb2x5bm9taWFsKToKKyAKKyAgICAgICAgICAgICBzYWdl OiBmID0gMyp4CisgICAgICAgICAgICAgc2FnZTogZi5yZWR1Y2UoWzIqeCx5XSkKKy0gICAgICAg ICAgICAzKngKKysgICAgICAgICAgICB4CisgCisgICAgICAgICBUaGUgcmVkdWN0aW9uIGlzIG5v dCBjYW5vbmljYWwgd2hlbiBgYElgYCBpcyBub3QgYSBHcm9lYm5lcgorICAgICAgICAgYmFzaXM6 OgorZGlmZiAtLWdpdCBhL3NyYy9zYWdlL3JpbmdzL3BvbHlub21pYWwvcGx1cmFsLnB5eCBiL3Ny Yy9zYWdlL3JpbmdzL3BvbHlub21pYWwvcGx1cmFsLnB5eAoraW5kZXggMWM5ZjM1ZTU2YmEuLjU4 NzUxMWMzODg4IDEwMDY0NAorLS0tIGEvc3JjL3NhZ2UvcmluZ3MvcG9seW5vbWlhbC9wbHVyYWwu cHl4CisrKysgYi9zcmMvc2FnZS9yaW5ncy9wb2x5bm9taWFsL3BsdXJhbC5weXgKK0BAIC0xNjE5 LDEwICsxNjE5LDEwIEBAIGNkZWYgY2xhc3MgTkNQb2x5bm9taWFsX3BsdXJhbChSaW5nRWxlbWVu dCk6CisgICAgICAgICAgICAgc2FnZTogUCA9IEEuZ19hbGdlYnJhKHJlbGF0aW9ucz17eSp4Oi14 KnkgKyB6fSwgIG9yZGVyPSdsZXgnKQorICAgICAgICAgICAgIHNhZ2U6IFAuaW5qZWN0X3Zhcmlh YmxlcygpCisgICAgICAgICAgICAgRGVmaW5pbmcgeCwgeiwgeQorLSAgICAgICAgICAgIHNhZ2U6 ICh4XjJeMTUpICogeF4yXjE1CisrICAgICAgICAgICAgc2FnZTogKHheMl4zMSkgKiB4XjJeMzEK KyAgICAgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAg ICAgICAgLi4uCistICAgICAgICAgICAgT3ZlcmZsb3dFcnJvcjogZXhwb25lbnQgb3ZlcmZsb3cg KDY1NTM2KQorKyAgICAgICAgICAgIE92ZXJmbG93RXJyb3I6IGV4cG9uZW50IG92ZXJmbG93ICgy MTQ3NDgzNjQ4KQorICAgICAgICAgIiIiCisgICAgICAgICAjIGFsbCBjdXJyZW50bHkgaW1wbGVt ZW50ZWQgcmluZ3MgYXJlIGNvbW11dGF0aXZlCisgICAgICAgICBjZGVmIHBvbHkgKl9wCitAQCAt MTY4OSwxMCArMTY4OSwxMCBAQCBjZGVmIGNsYXNzIE5DUG9seW5vbWlhbF9wbHVyYWwoUmluZ0Vs ZW1lbnQpOgorICAgICAgICAgICAgIHNhZ2U6IFAgPSBBLmdfYWxnZWJyYShyZWxhdGlvbnM9e3kq eDoteCp5ICsgen0sICBvcmRlcj0nbGV4JykKKyAgICAgICAgICAgICBzYWdlOiBQLmluamVjdF92 YXJpYWJsZXMoKQorICAgICAgICAgICAgIERlZmluaW5nIHgsIHosIHkKKy0gICAgICAgICAgICBz YWdlOiAoeCt5XjJeMTUpXjEwCisrICAgICAgICAgICAgc2FnZTogKHgreV4yXjMxKV4xMAorICAg ICAgICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKKyAgICAgICAgICAg ICAuLi4uCistICAgICAgICAgICAgT3ZlcmZsb3dFcnJvcjogZXhwb25lbnQgb3ZlcmZsb3cgKDMy NzY4MCkKKysgICAgICAgICAgICBPdmVyZmxvd0Vycm9yOiBleHBvbmVudCBvdmVyZmxvdyAoMjE0 NzQ4MzY0OCkKKyAgICAgICAgICIiIgorICAgICAgICAgaWYgdHlwZShleHApIGlzIG5vdCBJbnRl Z2VyOgorICAgICAgICAgICAgIHRyeToKK2RpZmYgLS1naXQgYS9zcmMvc2FnZS9zdHJ1Y3R1cmUv ZWxlbWVudC5weXggYi9zcmMvc2FnZS9zdHJ1Y3R1cmUvZWxlbWVudC5weXgKK2luZGV4IGI1ZDgz ZWY3MWI2Li41YzQ1YjNmYjUyOCAxMDA2NDQKKy0tLSBhL3NyYy9zYWdlL3N0cnVjdHVyZS9lbGVt ZW50LnB5eAorKysrIGIvc3JjL3NhZ2Uvc3RydWN0dXJlL2VsZW1lbnQucHl4CitAQCAtMjcwNSwx MCArMjcwNSwxMCBAQCBjZGVmIGNsYXNzIFJpbmdFbGVtZW50KE1vZHVsZUVsZW1lbnQpOgorICAg ICAgICAgd2l0aCBTaW5ndWxhciA0OjoKKyAKKyAgICAgICAgICAgICBzYWdlOiBLLjx4LHk+ID0g WlpbXQorLSAgICAgICAgICAgIHNhZ2U6ICh4XjEyMzQ1KV41NDMyMQorKyAgICAgICAgICAgIHNh Z2U6ICh4XjEyMzQ1NileNjU0MzIxCisgICAgICAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2Vu dCBjYWxsIGxhc3QpOgorICAgICAgICAgICAgIC4uLgorLSAgICAgICAgICAgIE92ZXJmbG93RXJy b3I6IGV4cG9uZW50IG92ZXJmbG93ICg2NzA1OTI3NDUpCisrICAgICAgICAgICAgT3ZlcmZsb3dF cnJvcjogZXhwb25lbnQgb3ZlcmZsb3cgKC4uLikKKyAgICAgICAgICIiIgorICAgICAgICAgcmV0 dXJuIGFyaXRoX2dlbmVyaWNfcG93ZXIoc2VsZiwgbikKKyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv c2FnZW1hdGgvdGVtcGxhdGUgYi9zcmNwa2dzL3NhZ2VtYXRoL3RlbXBsYXRlCmluZGV4IDc0NDQ1 YzNhYThjMS4uNzU2OTVmMGU1Zjg3IDEwMDY0NAotLS0gYS9zcmNwa2dzL3NhZ2VtYXRoL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3Mvc2FnZW1hdGgvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdzYWdlbWF0aCcKIHBrZ25hbWU9c2FnZW1hdGgKLXZlcnNpb249OS43 Ci1yZXZpc2lvbj00Cit2ZXJzaW9uPTkuOAorcmV2aXNpb249MQogYnVpbGRfd3Jrc3JjPXBrZ3Mv c2FnZW1hdGgtc3RhbmRhcmQKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBfYmluZGlyPS91 c3IvbGliL3NhZ2VtYXRoLyR2ZXJzaW9uL2JpbgpAQCAtMTQsNyArMTQsNyBAQCBtYWtlZGVwZW5k cz0iYXJiLWRldmVsIGJvb3N0LWRldmVsIGJyaWFsLWRldmVsIGNsaXF1ZXItZGV2ZWwgZWNsIGVj bGliLWRldmVsCiAgbGlicG5nLWRldmVsIGxpbmJveC1kZXZlbCBtNHJpLWRldmVsIG00cmllLWRl dmVsIG1wZmktZGV2ZWwKICBtcGZyLWRldmVsIG50bC1kZXZlbCBvcGVuYmxhcy1kZXZlbCBwYXJp LWRldmVsIHBsYW5hcml0eS1kZXZlbCBweXRob24zLWN5cGFyaTIKICBweXRob24zLWN5c2lnbmFs cyBweXRob24zLWRldmVsIHB5dGhvbjMtZ21weTIgcHl0aG9uMy1tZW1vcnlfYWxsb2NhdG9yCi0g cHl0aG9uMy1udW1weSByYW5rd2lkdGgtZGV2ZWwgc2luZ3VsYXIgc3ltbWV0cmljYS1kZXZlbCB6 bl9wb2x5IgorIHB5dGhvbjMtbnVtcHkgcmFua3dpZHRoLWRldmVsIHNpbmd1bGFyIHN5bW1ldHJp Y2EtZGV2ZWwiCiBkZXBlbmRzPSJGbGludFFTIGVjbGliLWRldmVsIGZmbGFzLWZmcGFjayBmbGlu dGxpYi1kZXZlbCBnY2MtZm9ydHJhbiBnZC1kZXZlbAogIGdmYW4gZ2lhYyBnc2wtZGV2ZWwgZ3pp cCBsaWJwbmctZGV2ZWwgbGluYm94LWRldmVsIG00cmktZGV2ZWwgbWF4aW1hLWVjbAogIG1wZnIt ZGV2ZWwgbmF1dHkgbnRsLWRldmVsIHBhbHAgcGFyaS1kZXZlbCBwYXJpLWVsbGRhdGEtc21hbGwg cGFyaS1nYWxkYXRhCkBAIC0zMiw3ICszMiw3IEBAIG1haW50YWluZXI9IkdvbnphbG8gVG9ybmFy w61hIDx0b3JuYXJpYUBjbWF0LmVkdS51eT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHA6Ly9zYWdlbWF0aC5vcmcvIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1 Yi5jb20vc2FnZW1hdGgvc2FnZS9hcmNoaXZlL3JlZnMvdGFncy8kdmVyc2lvbi50YXIuZ3oiCi1j aGVja3N1bT05ZjI2ZjE0YWEzMjJlM2NmMzhhNzE4MzViMTJhYzM0YjIzMDI2YjQ2N2Y3NGQ1NGIw NjRjNWQwMjVlNzZmYmZkCitjaGVja3N1bT0yYWZmMjhiZDFkMThjMmQ1MjY1ODFmNTI5OGFjYjgz MzZmNWI5MmRiNTY3NWE3NDAzZGVjOGVhZjlhODZiYzRjCiAKIGRvX2NvbmZpZ3VyZSgpIHsKIAkj IGdpdCB0cmVlIG5lZWRzIGJvb3RzdHJhcHBpbmcKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2FnZW1h dGgvdXBkYXRlIGIvc3JjcGtncy9zYWdlbWF0aC91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMDAwMDAwLi42OGJlM2M1NzUyZDAKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL3NhZ2VtYXRoL3VwZGF0ZQpAQCAtMCwwICsxLDIgQEAKK3BrZ25hbWU9InNhZ2UiCitzaXRl PSJodHRwczovL21pcnJvcnMubWl0LmVkdS9zYWdlL3NyYy9pbmRleC5odG1sIgo= --===============4865266104863625898==--