From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 18522 invoked from network); 10 May 2020 22:47:48 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 10 May 2020 22:47:48 -0000 Content-Type: multipart/mixed; boundary="===============3921915650690020501==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_=5BWIP=5D_gnome_3=2E36_updates?= To: ml@inbox.vuxu.org From: mnabid Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 11 May 2020 00:47:45 +0200 List-Id: Message-ID: <20200510224745.R_JHCZAIK7_bNceEKCpSjK0enZ4SZq5IY92bwQ7Sa68@z> GitHub notification mails are now in MIME to allow UTF8. --===============3921915650690020501== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW5hYmlkIGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFi aWQvdm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjEzODIKCltXSVBdIGdub21lIDMuMzYgdXBkYXRlcwoqKldhaXRpbmcg Zm9yIFtgcGlwZXdpcmUtMC4zLjRgXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjA0MTMpIGFuZCBbYGdqcy0xLjY1LjJgXShodHRwczovL2dpdGh1Yi5j b20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMjE3MTYpIHRvIGJlIG1lcmdlZC4qKgoK QSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNr YWdlcy9wdWxsLzIxMzgyLnBhdGNoIGlzIGF0dGFjaGVk --===============3921915650690020501== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSBmYTkyNDQxNzMyZDNhOTg5OWJiM2NkODM5ZDE5YmFiMGFiNDg2ZjhhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS81NF0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIHwgOCArKysr LS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggODM0MmUxMTcw OTIuLjVjMGU2NjJmOTc4IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z aGxpYnMKQEAgLTExNzcsNyArMTE3Nyw3IEBAIGxpYmdzdGJhc2VjYW1lcmFiaW5zcmMtMS4wLnNv LjAgZ3N0LXBsdWdpbnMtYmFkMS0xLjAuMF8xCiBsaWJnc3Rjb2RlY3BhcnNlcnMtMS4wLnNvLjAg Z3N0LXBsdWdpbnMtYmFkMS0xLjAuMF8xCiBsaWJnc3RwbGF5ZXItMS4wLnNvLjAgZ3N0LXBsdWdp bnMtYmFkMS0xLjAuMF8xCiBsaWJnc3RnbC0xLjAuc28uMCBnc3QtcGx1Z2lucy1iYXNlMS0xLjE0 LjBfMQotbGliZ25vbWUtZGVza3RvcC0zLnNvLjE4IGdub21lLWRlc2t0b3AtMy4zNC4wXzEKK2xp Ymdub21lLWRlc2t0b3AtMy5zby4xOSBnbm9tZS1kZXNrdG9wLTMuMzYuMl8xCiBsaWJzZWNyZXQt MS5zby4wIGxpYnNlY3JldC0wLjEwXzEKIGxpYmd3ZWF0aGVyLTMuc28uMTYgbGliZ3dlYXRoZXIt My4zNC4wXzEKIGxpYmdub21la2JkLnNvLjggbGliZ25vbWVrYmQtMy42LjBfMQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1kZXNrdG9w L3RlbXBsYXRlCmluZGV4IDk5MmNiMWZmMTZhLi5jMWE3NDA4YzIwNyAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZGVza3RvcC90 ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZGVz a3RvcCcKIHBrZ25hbWU9Z25vbWUtZGVza3RvcAotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4z Ni4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1j b25maWd1cmVfYXJncz0iLURnbm9tZS1kaXN0cmlidXRvcj1Wb2lkTGludXggLUR1ZGV2PWVuYWJs ZWQKLSAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKK2NvbmZpZ3Vy ZV9hcmdzPSItRGdub21lX2Rpc3RyaWJ1dG9yPVZvaWRMaW51eCAtRHVkZXY9ZW5hYmxlZAorIC1E c3lzdGVtZD1kaXNhYmxlZCAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNl KSIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBpdHN0b29sIHBrZy1jb25maWcgZ2xpYi1kZXZl bCIKIG1ha2VkZXBlbmRzPSJldWRldi1saWJ1ZGV2LWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNj aGVtYXMtZGV2ZWwgZ3RrKzMtZGV2ZWwKICBpc28tY29kZXMgbGliZ2xpYi1kZXZlbCBsaWJzZWNj b21wLWRldmVsIGxpYlgxMS1kZXZlbCBsaWJYZXh0LWRldmVsCkBAIC0xNiw3ICsxNiw3IEBAIG1h aW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJH UEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dp dGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtZGVza3RvcCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWMxZGJlYjU2NjZkYWQyNzE2NmM3NjllNDhlMmFiNDFkZDVlZDc0NzE4ZWEz NWViNTdjODQ4ODc5MDY2MmRjNWEKK2NoZWNrc3VtPTM4Zjk5NGRjYjFlMWFlMDkzZDFjOTI5Yzdh Y2M0Zjg4ZTM5MTExZTQzYjVmZGMxMzEyNWIwZjZlMjMxMWM3ODkKIAogYnVpbGRfb3B0aW9ucz0i Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIGZiMmQ0NzFkYzBkNDU2ZjRk ZTlmMTY2NjEzZTc2ZjcxNzNkY2JiNjAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTRdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi4wMjliODdmZjIyYiAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisgICAgICAgcm0gLXJm ICR7REVTVERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIGJjZmM5YzJhMjdmMjZhOTAwZDI5 ZDU2MWEyNWVhMDVlNTUyN2U2MTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUg KzA2MDAKU3ViamVjdDogW1BBVENIIDAzLzU0XSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMi4K Ci0tLQogc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bmF1dGlsdXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4 NTE5NzNmLi4xMDEwODczZjRmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYu MS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxk X2hlbHBlcj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1h bmFnZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS8ke3BrZ25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNh ZjMzODAzYTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7 dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPTI2Njcz Yzk1OTk1MDI0NTJjZjI5OTM1ODcyOWJlOGI1NTQwNjZhOWI2NzBkODliMjRlMjQ1MTYwZDE1Nzc2 ZmEKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpG cm9tIGE3OWU4NDBkZmViMjllOThmYTk4MzhhOTRjMjQ2YjhiZTEyZmQyNWIgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1v biwgMjcgQXByIDIwMjAgMTI6MjY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzU0XSBnbm9t ZS0yMDQ4OiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS0yMDQ4L3RlbXBsYXRlCmluZGV4IGI1OWNjZjZkZTQ2Li45ODliNmZmMTI1YiAxMDA2NDQK LS0tIGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0 OC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIw NDgnCiBwa2duYW1lPWdub21lLTIwNDgKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgog cmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBn bGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0 OCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25v bWUtMjA0OC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5 YzE2YTcwNjc0ODA3MzQ0ZWQxMTgzMWU4YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTI5 ZGE3NDk5Yzg5ZWU3NGY5ODM0ZThkZTJiODU2MzMyMzlhNjZlNWM1M2Q5NTZhOGU5NWE5ODdiZGI0 YjMzMjEKCkZyb20gNjcxYzk5NDNlMmExMTZmNzJjYWM5YmMxOGVlYjU1OGI2YTdhMTk1YyBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDUv NTRdIGdub21lLW11c2ljOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLW11 c2ljL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlCmluZGV4IDEyNTExNzM2NDA3Li44MDJiY2Vh ODkxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2dub21lLW11c2ljL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZ25vbWUtbXVzaWMnCiBwa2duYW1lPWdub21lLW11c2ljCi12ZXJzaW9uPTMuMzYuMQor dmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KQEAgLTE1LDUgKzE1LDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL011c2ljIgogZGlzdGZpbGVzPSIke0dOT01FX1NJ VEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6 IgotY2hlY2tzdW09N2I4MGY2MzBkMTU4MzM0OTM1YTg3NjAyOTY1NTBjYzkxYjUwZDYwNGZhNjhi NDAyZmU1MTY1YjE1MzFlYzMzMgorY2hlY2tzdW09YWJhZDQxM2FlYmZhOGY4MTQxYWJjNzE2NDgw OWU4YzQ2NzdmOGI2NTM4Zjg5MjEyODE5M2UwOTdlMGU5ODJhNQogbGliMzJkaXNhYmxlZD15ZXMK CkZyb20gN2ZjYjE0MzJhOGM1ZTUzNjczYzYzZTlkNjBhZjcyMjM5NjIwOWU0MiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCAyNyBBcHIgMjAyMCAxMzowMjo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTRdIGRl dmhlbHA6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgYi9zcmNwa2dzL2RldmhlbHAv dGVtcGxhdGUKaW5kZXggYTFjMmRjYmI3NjIuLmJhNzVkZmZkY2U3IDEwMDY0NAotLS0gYS9zcmNw a2dzL2RldmhlbHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCkBAIC0x LDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGV2aGVscCcKIHBrZ25hbWU9ZGV2aGVs cAotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxw ZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9EZXZoZWxwIgog ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGNmOGVjOTMwMmJjNGE3OWUwMWFjNTNi ZDljOGI5NWE1OTZmNzFmMzUzNTFmNDhiNjMyNjMyMjdmMDlhOGEzZAorY2hlY2tzdW09OGI1YTg0 MzE5ZWZiYjJlZjFiYzQwMjJlZTNlZDJkNjY3ODc5NGViYTJkZmE5OTNlNTBlMDNkNmU3YjkzMGM1 ZQogCiBkZXZoZWxwLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3Bt ZW50IGZpbGVzIgoKRnJvbSA5Njg0NDlkOWZlMTBlNTdhZGJiMDk4NGRkZGRhYWM2MmE1YjJiYjM4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDEzOjE3OjQyICswNjAwClN1YmplY3Q6IFtQQVRD SCAwNy81NF0gZW9nOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2VvZy90ZW1wbGF0 ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9nL3RlbXBs YXRlCmluZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9l b2cvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2LjEKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxl PW1lc29uCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3Vt PWU0NTRhMWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVkYTFhN2Jl MTg3YzljOTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4YzE5YWJk YjdiZWFlMWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cuc28iCiBs aWIzMmRpc2FibGVkPXllcwogCgpGcm9tIDE2Yzg1M2JkYWZkYWZhNTYyMjQ5ZjIxNmMzZjIyZTM2 OWMxZmU2ODMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTM6MzA6NTYgKzA2MDAKU3ViamVj dDogW1BBVENIIDA4LzU0XSBnbm9tZS1tYXBzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNw a2dzL2dub21lLW1hcHMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tYXBz L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlCmluZGV4IDAzMDBiZTYwNTk5 Li45ZmRkMjdkYjNiZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLW1hcHMnCiBwa2duYW1lPWdub21lLW1hcHMKLXZlcnNpb249My4z Ni4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3Rt YWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBnb2JqZWN0LWludHJvc3BlY3Rpb24gaW50bHRvb2wgcGtn LWNvbmZpZyBBcHBTdHJlYW0iCkBAIC0xMiw1ICsxMiw1IEBAIG1haW50YWluZXI9IkVubm8gQm9s YW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9NYXBzIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09MWEzMmVmZDk2YWQ4OThmNzdhNjM2ZDJkMDQ2M2Q3NTcwMDli NGI4MTIyNTljODlmZmRjYjkxZDZhZmMwNTJmOQorY2hlY2tzdW09NWJhMjE5YjlkZTk4Njc4Y2Vm YTU4NDhmNjUzOGRiOGRiZDA3ZjZjNzQ3ZmQ0M2E5OTE2N2EyNjY4NzhhOTc4NAogbm9jcm9zcz0i ZXZvbHV0aW9uLWRhdGFzZXJ2ZXIgY3Jvc3MgZ2lyIGRvZXNuJ3Qgd29yayIKCkZyb20gYzgwODYx Y2I3Y2RhOTAzNmI5YjJiMzAwNGUxMWE4ZmRmNzNiYTAwMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIg MjAyMCAxNDoyNzoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDkvNTRdIGdlZGl0OiB1cGRhdGUg dG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dlZGl0L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUg Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ2VkaXQvdGVtcGxhdGUgYi9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCmluZGV4IDRlMjcz YWFmMTgyLi5lM2ViZWEwNWVhNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nZWRpdC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ2VkaXQnCiBwa2duYW1lPWdlZGl0Ci12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0z LjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24K QEAgLTE3LDcgKzE3LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93 aWtpLmdub21lLm9yZy9BcHBzL0dlZGl0IgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtn bmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09NmRjMzhlZGEyMjdkMWMzNjhlMDM5ZTliZmY0ODVkMGJlZTlhNDlkNWY5NTYwYzM4N2VlMDhm NTgxOGE0ZTM4NworY2hlY2tzdW09Njg4NzU1NDY0M2M1YjFiMzg2MmFjMzY0ZDk3YjdiNTAyMjRi ZmY5NWU2NzU4YWVhYTA4ZjRhNDgyYjU1NDE5Nwogc2hsaWJfcHJvdmlkZXM9ImxpYmdlZGl0LTMu MzYuc28iCiBweXRob25fdmVyc2lvbj0zCiAKCkZyb20gMGM0YmRkOTY0YTJmYTNlYmRkZjFkM2I5 MjdiMTEwNWMyOWI1MWMzMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u YWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxNTowMjoxNCArMDYw MApTdWJqZWN0OiBbUEFUQ0ggMTAvNTRdIGdub21lLWNvbnRhY3RzOiB1cGRhdGUgdG8gMy4zNi4x LgoKLS0tCiBzcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRlIHwgMTAgKysrKysrKy0tLQog MSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jb250 YWN0cy90ZW1wbGF0ZQppbmRleCAyYTgyMTNhNzI0MC4uNzFkMTVjOGUzZjcgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1jb250 YWN0cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LWNvbnRhY3RzJwogcGtnbmFtZT1nbm9tZS1jb250YWN0cwotdmVyc2lvbj0zLjM0LjAKLXJldmlz aW9uPTIKK3ZlcnNpb249My4zNi4xCityZXZpc2lvbj0xCiB3cmtzcmM9Imdub21lLWNvbnRhY3Rz LSR7dmVyc2lvbiUuKn0iCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Ni b29rLXhzbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCkBAIC0x Myw0ICsxMyw4IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9Db250YWN0cyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25h bWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb24lLip9LnRhci54eiIKLWNoZWNr c3VtPTk5NjAyZWM4ZDY2MGMxZjNjOTJjYWU2MzU2ZjY0ZjcyZmI2ZGI1OGU1NWJjZTI3YTU5OTMz MGJmN2I2MjJmMTIKK2NoZWNrc3VtPWVlY2JkMjIwOWQ5M2M4ZDMxZGY5MmY2Y2NmNzkxODNiNDU2 YzZlMDdhMjhhZTAxNTVjYmRhMThhYWJkMzZmN2IKKworaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0 aGVuCisJaG9zdG1ha2VkZXBlbmRzKz0iIGZvbGtzLWRldmVsIgorZmkKCkZyb20gOTkxNDRiMzdl MDM0MTczMzEwMmI3MzRjMTQ0YTk0M2MyY2FjNWZlMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAy MCAwMjo1MjoxMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTEvNTRdIGdub21lLWNsb2NrczogdXBk YXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgfCA0ICsr LS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNs b2Nrcy90ZW1wbGF0ZQppbmRleCAzZTA0OWI0MmZiMS4uMzRiMTU5YWU2YTYgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY2xvY2tz L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY2xv Y2tzJwogcGtnbmFtZT1nbm9tZS1jbG9ja3MKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYu MgogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAt MTUsNCArMTUsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5v cmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2ku Z25vbWUub3JnL0FwcHMvQ2xvY2tzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFt ZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09 NGM5NzhiMGM3ZjdiOWRhZWJkMjcyZDAxNzVmOGE1NDQxNWUyMDc4ZjEzNGY0OGFkZDVjZjI0MzYy ZWVmNDljNgorY2hlY2tzdW09ZjExYjFiMjJlYzFmMjg1ZTUwOTg4MzY4NGMwYjFmNGE1MTQ5NmFl YTEwNTU5MTIzOWU1YjI2Zjg5ODY3NTFlNgoKRnJvbSA3MGJlMDJlODIyN2JmN2ZiYTI5ODg2ZGI0 YTM4N2M5MzdhNTZmYThjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjI5OjMwICswNjAw ClN1YmplY3Q6IFtQQVRDSCAxMi81NF0gZ25vbWUtZXB1Yi10aHVtYm5haWxlcjogdXBkYXRlIHRv IDEuNi4KCi0tLQogc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIHwgNiAr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIGIvc3Jj cGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCmluZGV4IGIxNmU3MDU0NzVmLi5k NjdiNzdmMWU0MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQpAQCAt MSwxMyArMSwxMyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZXB1Yi10aHVtYm5haWxl cicKIHBrZ25hbWU9Z25vbWUtZXB1Yi10aHVtYm5haWxlcgotdmVyc2lvbj0xLjUKK3ZlcnNpb249 MS42CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0iZ2RrLXBpeGJ1Zi1kZXZlbCBsaWJhcmNoaXZl LWRldmVsIGxpYnhtbDItZGV2ZWwiCiBzaG9ydF9kZXNjPSJUaHVtYm5haWxlciBmb3IgRVB1YiBh bmQgTU9CSSBib29rcyIKIG1haW50YWluZXI9IkFsaWYgUmFjaG1hd2FkaSA8YXJjaEBzdWJvc2l0 by5jb20+IgotbGljZW5zZT0iR1BMLTMiCitsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHBzOi8vZ2l0Lmdub21lLm9yZy9icm93c2UvZ25vbWUtZXB1Yi10aHVtYm5haWxl ciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbn0vJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTMwODIxMGY1ODAwMjE5ZjY0Y2FlNDgy OGU1OWJiOGU2ZTRjNTNiODg4MDQ4Y2Y0ODcyMjFhZWI0MzM3ZDc5MWEKK2NoZWNrc3VtPWI1MDI0 MjBkOWIwMmVhMGIwZmM3OTg2ZWY1YTA5MWExMmIyMjg2YmUxNGZlZDllNDc1OTRmZTlmYTBjNTg5 OGUKCkZyb20gODJiY2RjMGI5YmI3YTdmYmJhMjE3OGRhMWE4ZmQ2YjIzYzEwYmZiNyBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogTW9uLCAyNyBBcHIgMjAyMCAxNjoyMzo0NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTMvNTRd IGdub21lLXRlcm1pbmFsOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXRl cm1pbmFsL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS10ZXJtaW5hbC90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKaW5kZXggYmYzZDViY2Rk NDIuLjIyZGJjMTFiYWRhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS10ZXJtaW5hbCcKIHBrZ25hbWU9Z25vbWUtdGVy bWluYWwKLXZlcnNpb249My4zNi4xLjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyAt LXdpdGgtbmF1dGlsdXMtZXh0ZW5zaW9uIgpAQCAtMTMsOCArMTMsOCBAQCBzaG9ydF9kZXNjPSJH Tk9NRSB0ZXJtaW5hbCBlbXVsYXRvciBhcHBsaWNhdGlvbiIKIG1haW50YWluZXI9IkVubm8gQm9s YW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBH RkRMLTEuMy1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9UZXJt aW5hbCIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbjowOjR9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mM2Q3MDhhMWU3NmQ3N2Mx Yzg1YjEyNmY2ZTAwMzIyMGExNWQ0YTQ2YTUwZmQ4MDcwZTFhM2FhYmU2NzhhMzc2CitkaXN0Zmls ZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2 ZXJzaW9ufS50YXIueHoiCitjaGVja3N1bT00MWQxYjZhM2RjOTdjMDY2ZTI5NGFjZGI3ZjM2OTMx ZTgxNjY4NjM4ZGNjOTJmZmEyNWJjYTNkZGViYWNkZjQ2CiBsaWIzMmRpc2FibGVkPXllcwogCiBp ZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KCkZyb20gY2M3NjBlNWIyMTc4Nzg5ZWNkNzdlNWM5 MWUzZjAxNDJjMGYyMzA3NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u YWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAyOCBBcHIgMjAyMCAxODoxODowMCArMDYw MApTdWJqZWN0OiBbUEFUQ0ggMTQvNTRdIGdub21lLXBvZGNhc3RzOiB1cGRhdGUgdG8gMC40Ljcu CgotLS0KIC4uLi9nbm9tZS1wb2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaCAgICB8IDIx IC0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUgICAgICAg ICAgICAgICB8IDI0ICsrKysrKysrKystLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTMgaW5z ZXJ0aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9n bm9tZS1wb2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2ggYi9zcmNwa2dzL2dub21l LXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCBhZWI5NTgxYmQ3OS4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9nbm9tZS1wb2Rj YXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIxICswLDAg QEAKLS0tLSBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvZXBpc29kZS5ycy5vcmlnCTIwMTktMDYt MDkgMTU6NTQ6NTkuNzkzNDUxMDQ3ICswMjAwCi0rKysgcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRz L2VwaXNvZGUucnMJMjAxOS0wNi0wOSAxNTo1NToxOS4xOTEzMTE1MTIgKzAyMDAKLUBAIC01NTks NyArNTU5LDcgQEAKLSAgICAgICAgICAgICAudG90YWxfc2l6ZQotICAgICAgICAgICAgIC5nZXRf dGV4dCgpCi0gICAgICAgICAgICAgLmFzX3JlZigpCi0tICAgICAgICAgICAgLm1hcCh8c3wgcy50 cmltX3JpZ2h0X21hdGNoZXMoIiBNQiIpKQotKyAgICAgICAgICAgIC5tYXAofHN8IHMudHJpbV9l bmRfbWF0Y2hlcygiIE1CIikpCi0gICAgICAgICAgICAgLmFuZF90aGVuKHxzfCBzLnBhcnNlOjo8 aTMyPigpLm9rKCkpCi0gICAgICAgICAgICAgLmlzX25vbmUoKQotICAgICAgICAgewotLS0tIHBv ZGNhc3RzLWd0ay9zcmMvd2lkZ2V0cy9zaG93c192aWV3LnJzLm9yaWcJMjAxOS0wNi0wOSAxNTo1 NDowMC4zMjA4Nzg4NjcgKzAyMDAKLSsrKyBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvc2hvd3Nf dmlldy5ycwkyMDE5LTA2LTA5IDE1OjU0OjEzLjE1MTc4NjU2MyArMDIwMAotQEAgLTgwLDcgKzgw LDYgQEAKLSB9Ci0gCi0gZm4gb25fY2hpbGRfYWN0aXZhdGUoY2hpbGQ6ICZndGs6OkZsb3dCb3hD aGlsZCwgc2VuZGVyOiAmU2VuZGVyPEFjdGlvbj4pIC0+IFJlc3VsdDwoKSwgRXJyb3I+IHsKLS0g ICAgdXNlIGd0azo6V2lkZ2V0RXh0OwotIAotICAgICAvLyBUaGlzIGlzIHN1Y2ggYW4gdWdseSBo YWNrLi4uCi0gICAgIGxldCBpZCA9IFdpZGdldEV4dDo6Z2V0X25hbWUoY2hpbGQpCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1wb2Rj YXN0cy90ZW1wbGF0ZQppbmRleCA3MmUyZGI2YjEwOS4uM2MyMzlkZjg0MjQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1wb2Rj YXN0cy90ZW1wbGF0ZQpAQCAtMSwyNiArMSwyOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25v bWUtcG9kY2FzdHMnCiBwa2duYW1lPWdub21lLXBvZGNhc3RzCi12ZXJzaW9uPTAuNC42Ci1yZXZp c2lvbj0zCit2ZXJzaW9uPTAuNC43CityZXZpc2lvbj0xCiB3cmtzcmM9InBvZGNhc3RzLSR7dmVy c2lvbn0iCiBidWlsZF9zdHlsZT1tZXNvbgotaG9zdG1ha2VkZXBlbmRzPSJjYXJnbyBnZXR0ZXh0 LWRldmVsIGdsaWItZGV2ZWwgcGtnLWNvbmZpZyIKK2J1aWxkX2hlbHBlcj0icnVzdCIKK2hvc3Rt YWtlZGVwZW5kcz0iY2FyZ28gZ2V0dGV4dCBnbGliLWRldmVsIHBrZy1jb25maWcgc3FsaXRlLWRl dmVsIgogbWFrZWRlcGVuZHM9ImdzdHJlYW1lcjEtZGV2ZWwgZ3N0LXBsdWdpbnMtYmFkMS1kZXZl bCBnc3QtcGx1Z2lucy1iYXNlMS1kZXZlbAotIGd0ayszLWRldmVsIGxpYmhhbmR5LWRldmVsIGxp YnJlc3NsLWRldmVsIHNxbGl0ZS1kZXZlbCB0ZXhpbmZvIgorIGd0ayszLWRldmVsIGxpYmhhbmR5 LWRldmVsIGxpYnJlc3NsLWRldmVsIHNxbGl0ZS1kZXZlbCBydXN0LXN0ZCIKIHNob3J0X2Rlc2M9 Ikxpc3RlbiB0byB5b3VyIGZhdm9yaXRlIHBvZGNhc3RzIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xh bmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL1BvZGNhc3RzIgogZGlzdGZpbGVz PSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvV29ybGQvcG9kY2FzdHMvLS9hcmNoaXZlLyR7dmVy c2lvbn0vcG9kY2FzdHMtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT05NTNjNjNlODE4NGNh MWY3NDg0MThkOGE4MjYyZDQwZWFhNDEwNDdmODFlMmQyYzg3NGEzMDM1ZDlkOWQwZTRhCi1ub2Ny b3NzPSJydXN0YyBjYW50IGJlIGNyb3NzY29tcGlsZWQgYXMgb2Ygbm93IgotYnJva2VuPSJnZXR0 ZXh0LXJzIGhhc2ggZG9lcyBub3QgZXhpc3RzLCBpZiBmaXhlZCBidWlsZCBmYWlscyBpbiBnaW8g MC41LjAiCitjaGVja3N1bT1hOWExYjYyZGQzNTY3ZTNjY2EzOGVlMjlkZjJmYWRkODJlMmZiNWU4 MzdiMGEyYTI2ZWNhYzc0ZTkzMDUxNjFjCiAKIGV4cG9ydCBHRVRURVhUX0JJTl9ESVI9L3Vzci9i aW4KIGV4cG9ydCBHRVRURVhUX0xJQl9ESVI9IiR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL2dl dHRleHQiCiBleHBvcnQgR0VUVEVYVF9JTkNMVURFX0RJUj0iJHtYQlBTX0NST1NTX0JBU0V9L3Vz ci9pbmNsdWRlIgogCi1wcmVfYnVpbGQoKSB7Ci0JY2FyZ28gdXBkYXRlIC0tcGFja2FnZSBvcGVu c3NsLXN5cyAtLXByZWNpc2UgMC45LjQ2Ci0JY2FyZ28gdXBkYXRlIC0tcGFja2FnZSBvcGVuc3Ns IC0tcHJlY2lzZSAwLjEwLjIyCi19CitpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KKwlwb3N0 X3BhdGNoKCkgeworCQl2c2VkIC1pIHNjcmlwdHMvY2FyZ28uc2ggXAorCQkJLWUgJ3MlIiRDQVJH T19UQVJHRVRfRElSIi8lJiR7UlVTVF9UQVJHRVR9LyUnIFwKKwkJCS1lICcvQ0FSR09fSE9NRS9k JworCX0KK2ZpCgpGcm9tIDg3MjQxYmJlOGQ4YmRmZjljMTE2NWMxZGYwZWYxYWIwOWE4NzQ4YzEg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMTQ6NDE6MzIgKzA2MDAKU3ViamVjdDogW1BBVENI IDE1LzU0XSBnbm9tZS1jb250cm9sLWNlbnRlcjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3Jj cGtncy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZSB8IDIwICsrKysrKysrKysrKysrKyst LS0tCiAxIGZpbGUgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlIGIvc3JjcGtn cy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZQppbmRleCAwZTI3ODc4OThhZS4uMDcwMzZj Zjk5ZjAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNvbnRyb2wtY2VudGVyJwogcGtnbmFtZT1n bm9tZS1jb250cm9sLWNlbnRlcgotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4zNi4yCiByZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCkBAIC0xMCwyNCAr MTAsMzYgQEAgaG9zdG1ha2VkZXBlbmRzPSJnbGliLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNj aGVtYXMtZGV2ZWwgaW50bHRvb2wgcGtnLWNvbmZpZwogbWFrZWRlcGVuZHM9Ik1vZGVtTWFuYWdl ci1kZXZlbCBhY2NvdW50c3NlcnZpY2UtZGV2ZWwgYWxzYS1wbHVnaW5zCiAgY29sb3JkLWd0ay1k ZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBnbm9tZS1tZW51 cy1kZXZlbAogIGdub21lLW9ubGluZS1hY2NvdW50cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVt b24tZGV2ZWwgZ3JpbG8tZGV2ZWwgaWJ1cy1kZXZlbAotIGxpYlNNLWRldmVsIGxpYlh4Zjg2bWlz Yy1kZXZlbCBsaWJnbm9tZWtiZC1kZXZlbCBsaWJndG9wLWRldmVsCisgbGliU00tZGV2ZWwgbGli WHhmODZtaXNjLWRldmVsIGxpYmdub21la2JkLWRldmVsIGxpYmd0b3AtZGV2ZWwgbGliaGFuZHkt ZGV2ZWwKICBsaWJwd3F1YWxpdHktZGV2ZWwgbWl0LWtyYjUtZGV2ZWwgbmV0d29yay1tYW5hZ2Vy LWFwcGxldC1kZXZlbCBwb2xraXQtZGV2ZWwKICBwdWxzZWF1ZGlvLWRldmVsIHNhbWJhLWRldmVs IHR6ZGF0YSB1cG93ZXItZGV2ZWwgdmFsYS1kZXZlbCBjbHV0dGVyLWd0ay1kZXZlbAogIGxpYnht bDItZGV2ZWwgbGliWDExLWRldmVsIGd0ayszLWRldmVsIGN1cHMtZGV2ZWwgbGliZ3VkZXYtZGV2 ZWwgbGlid2Fjb20tZGV2ZWwKICBjbHV0dGVyLWRldmVsIGxpYnNlY3JldC1kZXZlbCBsaWJjYW5i ZXJyYS1kZXZlbCB1ZGlza3MyLWRldmVsIGdzb3VuZC1kZXZlbAogICQodm9wdF9pZiBjaGVlc2Ug Y2hlZXNlLWRldmVsKSIKLWRlcGVuZHM9ImFsc2EtcGx1Z2lucy1wdWxzZWF1ZGlvIGRlc2t0b3At ZmlsZS11dGlscworZGVwZW5kcz0iYWxzYS1wbHVnaW5zLXB1bHNlYXVkaW8gZGVza3RvcC1maWxl LXV0aWxzIHVwb3dlciBjb2xvcmQgY3Vwcy1way1oZWxwZXIKICBnc2V0dGluZ3MtZGVza3RvcC1z Y2hlbWFzIGhpY29sb3ItaWNvbi10aGVtZSBpc28tY29kZXMgc291bmQtdGhlbWUtZnJlZWRlc2t0 b3AKICBjcmFja2xpYiIKK2NoZWNrZGVwZW5kcz0icHl0aG9uMy1kYnVzbW9jayB4b3JnLXNlcnZl ci14dmZiIgogc2hvcnRfZGVzYz0iR05PTUUgY29udHJvbCBjZW50ZXIiCiBtYWludGFpbmVyPSJF bm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtY29u dHJvbC1jZW50ZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT01ZjgyZWNkNTU1 NDEzNmM0NjIyNDhlYzUzNjNiODJkOTUzNThiMzlkZmQ2Nzg3MDA2ZDgzMDdiNDUwNGU1MTVlCitj aGVja3N1bT1lMGE1ZWZmMGM2ZDZjMjJkYjBjNTRmZDA3MDQ2MGRlODc0ZDM2N2VmM2Y5MDcyZTE1 NTliNzBmMjhiODQ3ODE3CiAKIGJ1aWxkX29wdGlvbnM9ImNoZWVzZSIKIGRlc2Nfb3B0aW9uX2No ZWVzZT0iQWRkIHN1cHBvcnQgZm9yIGFkZGluZyB1c2VyIGFjY291bnQgaW1hZ2VzIHdpdGggeW91 ciB3ZWJjYW0iCisKK3ByZV9jaGVjaygpIHsKKwkjIHRlc3QtbmV0d29yay1wYW5lbCBuZWVkcyBp ZCBnZW5lcmF0ZWQgYnkgZGJ1cy11dWlkZ2VuCisJbWtkaXIgLXAgL3Zhci9saWIvZGJ1cworCWRi dXMtdXVpZGdlbiAtLWVuc3VyZQorfQorCitwb3N0X2NoZWNrKCkgeworCXJtIC1yZiAvdmFyL2xp Yi9kYnVzCit9CisKIGlmIFsgLXogIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWJ1aWxkX29wdGlv bnNfZGVmYXVsdCs9IiBjaGVlc2UiCiBmaQoKRnJvbSBhYmE3MzgxODYzOTJiMWVkNmQ0OTRmNzI2 ZjU4MGU0ZDAwMjdkNmZmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBTdW4sIDMgTWF5IDIwMjAgMTA6NTc6NDUgKzA2MDAK U3ViamVjdDogW1BBVENIIDE2LzU0XSBnbm9tZS1zZXR0aW5ncy1kYWVtb246IHVwZGF0ZSB0byAz LjM2LjEuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlIHwgMTAg KysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlCmluZGV4IGE3MGUyOGJlNWZh Li45Y2ViMWQxM2RlOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24v dGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUKQEAg LTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXNldHRpbmdzLWRhZW1v bicKIHBrZ25hbWU9Z25vbWUtc2V0dGluZ3MtZGFlbW9uCi12ZXJzaW9uPTMuMzQuMQotcmV2aXNp b249MgordmVyc2lvbj0zLjM2LjEKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25m aWd1cmVfYXJncys9Ii1Ec3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0iY21ha2UgZG9j Ym9vay14c2wgZ2xpYi1kZXZlbCBsaWJnbGliLWRldmVsIGxpYnhzbHQgcGVybCBwa2ctY29uZmln IgorY29uZmlndXJlX2FyZ3M9Ii1Ec3lzdGVtZD1mYWxzZSIKK2hvc3RtYWtlZGVwZW5kcz0iY21h a2UgZG9jYm9vay14c2wgZ2V0dGV4dCBnbGliLWRldmVsIGxpYmdsaWItZGV2ZWwgbGlieHNsdCBw ZXJsIHBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0iTmV0d29ya01hbmFnZXItZGV2ZWwgYWxzYS1s aWItZGV2ZWwgY29sb3JkLWRldmVsIGN1cHMtZGV2ZWwgZ2NyLWRldmVsCiAgZ2VvY2x1ZTItZGV2 ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBpYnVzLWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIGxpYmdu b21la2JkLWRldmVsCiAgbGliZ3dlYXRoZXItZGV2ZWwgbGlibm90aWZ5LWRldmVsIGxpYnJzdmct ZGV2ZWwgbGlid2Fjb20tZGV2ZWwgbnNzLWRldmVsCkBAIC0xOCw3ICsxOCw3IEBAIG1haW50YWlu ZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4w LW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9t ZS1zZXR0aW5ncy1kYWVtb24iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT05OTgx YTIwYmFiZjhkYTc3NDRiN2ZiZTE3NWI5ZTM2MDc4YmYwOGYzYmY2NWZlNWFlZGViODJjZmUyN2Fj MTFmCitjaGVja3N1bT0zZTMzZGJkMzE5YjU2MmE1YWI2MDJkY2FiNmRlM2NhODFiODVmODM0NjY3 MmU5MGVjNjMyYjM2YmJmMTVlZTRiCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWhv c3RtYWtlZGVwZW5kcys9IiBwb2xraXQiCgpGcm9tIGI2MzBlMDZkZjg0MTA5NjVjNDZiZTc5ZDgz YzhmNmUxZmIwODZmZmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAxMDoxMTo1NCArMDYwMApT dWJqZWN0OiBbUEFUQ0ggMTcvNTRdIGdub21lLXVzZXItZG9jczogdXBkYXRlIHRvIDMuMzYuMi4K Ci0tLQogc3JjcGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZp bGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS11c2VyLWRv Y3MvdGVtcGxhdGUKaW5kZXggNGNiNTUzOTZlMzcuLmNhOTkzMzQ2ZTNhIDEwMDY0NAotLS0gYS9z cmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXVzZXIt ZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXVzZXItZG9jcycKIHBrZ25hbWU9Z25vbWUtdXNlci1kb2NzCi12ZXJzaW9uPTMuMzQuMAordmVy c2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFyY2hzPW5vYXJjaAogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQpAQCAtMTAsNyArMTAsNyBAQCBkZXBlbmRzPSJ5ZWxwIgogc2hvcnRfZGVzYz0iVXNl ciBkb2N1bWVudGF0aW9uIGZvciBHTk9NRSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJDQy1CWS0zLjAiCi1ob21lcGFnZT0iaHR0cHM6 Ly9naXRodWIuY29tL0dOT01FL2dub21lLXVzZXItZG9jcyIKLSNjaGFuZ2Vsb2c9Imh0dHBzOi8v cmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9nbm9tZS11c2VyLWRvY3MvbWFzdGVyL05F V1MiCitob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXVzZXIt ZG9jcyIKK2NoYW5nZWxvZz0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXVz ZXItZG9jcy8tL3Jhdy8zLjM2LjIvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPThmOTkwN2ZmMTVmZmY5N2RhNzVlY2U2NDVjYzg2NzY2NzAzYWM1NGQ3MTZkMjU1NjNiYTY3 ZmZlZDFhZjI0ZWQKK2NoZWNrc3VtPTE5OGZlNGM4MzY3NzVhNWRjMjU0M2E2YTUyMGRmYjBhYzVi ZjI5MmNkY2IzNThhNTdjODZmMzVmNzA1ZTk5NTgKCkZyb20gMjc3ODJhYzYyZTYwZWEyZDcwMzM3 OWE1Mjg3MzI4NTNjOTJlYzc0YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDAyOjIwOjUyICsw NjAwClN1YmplY3Q6IFtQQVRDSCAxOC81NF0gZ25vbWUtaW5pdGlhbC1zZXR1cDogdXBkYXRlIHRv IDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlIHwgMTAg KysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUgYi9z cmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUKaW5kZXggYWJhNWEwOTRjMjguLjcz ZWY5NmIxOTkzIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlCkBAIC0xLDEwICsx LDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1pbml0aWFsLXNldHVwJwogcGtnbmFt ZT1nbm9tZS1pbml0aWFsLXNldHVwCi12ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MgordmVyc2lv bj0zLjM2LjIKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25maWd1cmVfYXJncz0i LURzb2Z0d2FyZS1zb3VyY2VzPWRpc2FibGVkIC1Ec3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyBnbGliLWRldmVsIgorY29uZmlndXJlX2FyZ3M9Ii1EcGFyZW50YWxf Y29udHJvbHM9ZGlzYWJsZWQgLURzeXN0ZW1kPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0 ZXh0IHBrZy1jb25maWcgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJOZXR3b3JrTWFuYWdlci1k ZXZlbCBhY2NvdW50c3NlcnZpY2UtZGV2ZWwgbGliZ2xpYi1kZXZlbAogIGdub21lLWRlc2t0b3At ZGV2ZWwgY2hlZXNlLWRldmVsIGxpYmd3ZWF0aGVyLWRldmVsIHdlYmtpdDJndGstZGV2ZWwKICBn bm9tZS1vbmxpbmUtYWNjb3VudHMtZGV2ZWwgZ2RtLWRldmVsIGxpYnB3cXVhbGl0eS1kZXZlbApA QCAtMTcsNCArMTcsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51 eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dp a2kuZ25vbWUub3JnL0Rlc2lnbi9PUy9Jbml0aWFsU2V0dXAiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT1lNzFmMTBlZjZiNjMxY2Q5MmZmZGU3NzRlNDEzMGIzMmIyNDk0YjRkZjVl ZjI4ODM3NWQ4YjE5NTdlZWFiZmExCitjaGVja3N1bT00ZjhiZTQxYWVhMTAwYzU2ZGJmOGYwZmUx ZTIzNTRkMmQxYWMwNWNmMWM3OWEwMWNjOTc1YzZhYTg5MTQ1NzU2CgpGcm9tIGI0N2UwMDFiODJj YTk5ZDM3Y2E4ODM5ZTdiNzJkZmJkYzczZjJiMmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAw ODozODoxNSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTkvNTRdIGV2b2x1dGlvbi1kYXRhLXNlcnZl cjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIv dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVt cGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA4ODVh MTE1ZjQ5Yi4uZGVjNzJlN2M0MjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEt c2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBs YXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRhdGEt c2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4zNi4xCit2 ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBl cj1naXIKQEAgLTE3LDcgKzE3LDcgQEAgbGljZW5zZT0iTEdQTC0yLjEtb25seSIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRXZvbHV0aW9uIgogY2hhbmdlbG9nPSJodHRw czovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZXZvbHV0aW9uLWRhdGEtc2VydmVy L2dub21lLTMtMzYvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7 dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTEzMTIy YjJlZGRkYjk4MzA2MjA3ZDJhMzVkNWNjYWUyNWE5MDcwMjc2OWNhMGEwYjUxNjUzYjU5ODQ5ODY3 OTYKK2NoZWNrc3VtPTk4ZTI3NGNmZWMxNmNlZTZhNGIzYjljNzg5N2Y2ZTExMzZkMDBlNGYzMWEw ZDY2MjE0OTI1YWJiYWM3NmU5N2IKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogaWYgWyAteiAiJENS T1NTX0JVSUxEIiBdOyB0aGVuCgpGcm9tIDJmMTYwODFkNTE0NmFlNDk2ZDRiOTI1ZTY1MTNjYjRl ZmZiMTU4YmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwODozODoyMyArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMjAvNTRdIGV2b2x1dGlvbjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtn cy9ldm9sdXRpb24vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlv bnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24vdGVt cGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQppbmRleCA1NjBlZDkzZGEwMi4uYzlj M2FmYjdmNmYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZXZvbHV0aW9uJwogcGtnbmFtZT1ldm9sdXRpb24KLXZlcnNpb249My4zNi4xCit2ZXJz aW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdz PSItREVOQUJMRV9BVVRPQVI9T0ZGIC1ERU5BQkxFX0xJQkNSWVBUVUk9T0ZGIC1ERU5BQkxFX0dU S1NQRUxMPU9GRgpAQCAtMTksNyArMTksNyBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciwg TEdQTC0zLjAtb3ItbGF0ZXIsIEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93 aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0 aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi9nbm9tZS0zLTM2L05FV1MiCiBkaXN0 ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT04NzNhY2YxZGJlYzM4ZTY3ZTE2OTA2NDY0NWFj M2E5YjlhOTQ0YmQyYjYzMzE2MWRmNmU1ZjA1NzAwZTM2Y2I4CitjaGVja3N1bT1jNTA5NDhjMWEz ZGRiMzliNzJhY2Q5M2RlNzdmOTQ3ODdjZGMxYmVmMzMwYjk2N2JiYjhiNmM3MjMzNDMzMThhCiBz aGxpYl9wcm92aWRlcz0ibGliZXZvbHV0aW9uLWNhbGVuZGFyLnNvIGxpYmV2b2x1dGlvbi11dGls LnNvIGxpYmVtYWlsLWVuZ2luZS5zbwogIGxpYmV2b2x1dGlvbi1tYWlsLnNvIGxpYmV2b2x1dGlv bi1zaGVsbC5zbyIKIAoKRnJvbSBkNTVjZDVjMDhmMGFhMTQ1OWE3MzBhYWQ3NjFlY2JjNzQ4MDc4 NjcwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6Mzg6MjcgKzA2MDAKU3ViamVjdDogW1BB VENIIDIxLzU0XSBldm9sdXRpb24tZXdzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dz L2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24t ZXdzL3RlbXBsYXRlIGIvc3JjcGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCmluZGV4IDRmZjgx MTY0NjZjLi5hMTcxZjRjNGEwOCAxMDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZXdzL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2b2x1dGlvbi1ld3MnCiBwa2duYW1lPWV2b2x1dGlv bi1ld3MKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRExJQkVYRUNfSU5TVEFMTF9ESVI9L3Vzci9s aWIvZXZvbHV0aW9uIgpAQCAtMTIsNCArMTIsNCBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRXZvbHV0aW9uIgogY2hh bmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZXZvbHV0aW9u LWV3cy9nbm9tZS0zLTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1k MDg4M2M3ZDIyNzgyN2NjNWM0NDY4YjdlMzFhM2VlMzcwYmNkN2Q0MWE0ZGJiOTUwYWI1ZGIzNmM5 NTUxYWMxCitjaGVja3N1bT0yZTQyZTQ4OTA0ODdmOGM3ZjlkNzc2YTQ0NDRkZjZlZmQ1Mjk5Y2Ew MDNhMzAwMDJlYjVmMDIyMDkxZGMzNTlkCgpGcm9tIGM1MmYwNjlkYjdlYTJiZTNjNDUwODVjOWM4 MzRkM2UzNDBjNGFkNzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMToyMDoyMyArMDYwMApT dWJqZWN0OiBbUEFUQ0ggMjIvNTRdIGF0azogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtn cy9hdGsvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0ay90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYXRrL3RlbXBsYXRlCmluZGV4IDdjMTRiMTE2NTk4Li5jYTIyZDM2NjE5OCAxMDA2NDQK LS0tIGEvc3JjcGtncy9hdGsvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdGsvdGVtcGxhdGUKQEAg LTEsMTggKzEsMTggQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F0aycKIHBrZ25hbWU9YXRrCi12 ZXJzaW9uPTIuMzQuMQordmVyc2lvbj0yLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGludHJvc3BlY3Rpb249 JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBn bGliLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgZ2xpYi1kZXZl bCIKIG1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIgogc2hvcnRfZGVzYz0iU2V0IG9mIGludGVy ZmFjZXMgZm9yIGFjY2Vzc2liaWxpdHkiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94 QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly9kZXZlbG9wZXIuZ25vbWUub3JnL2F0ay8iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vYXRrLyR7dmVyc2lvbiUuKn0vYXRrLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDRm MGUzYjNkMjEyNjVmY2YyYmMzNzFlMTE3ZGE1MWM0MmVkZTFhNzFmNmRiMWM4MzRlNjk3NmJiMjA5 OTdjYgorY2hlY2tzdW09ZmI3NjI0N2UzNjk0MDJiZTIzZjFmNWM2NWQzOGE5NjM5YzExNjRkOTM0 ZTQwZjZhOWNmM2M5ZTk2YjY1Mjc4OAogCiAjIFBhY2thZ2UgYnVpbGQgb3B0aW9ucwogYnVpbGRf b3B0aW9ucz0iZ2lyIgoKRnJvbSA1MWVmMDc4NzgyN2RkZjBjOTJhZjQ1NmJiMzFiNDI3ZDY4OTI0 NDJjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTI6NDM6NTIgKzA2MDAKU3ViamVjdDogW1BB VENIIDIzLzU0XSBhdC1zcGkyLWNvcmU6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3Mv YXQtc3BpMi1jb3JlL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2Vy dGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdC1zcGkyLWNv cmUvdGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQppbmRleCBiMzgzZmU5 OWJlZC4uYTEzYzU2MDBkNzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdC1zcGkyLWNvcmUnCiBwa2duYW1lPWF0LXNwaTItY29y ZQotdmVyc2lvbj0yLjM0LjAKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcg ZGJ1cyBnbGliLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgZGJ1 cyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImxpYmdsaWItZGV2ZWwgbGliWGV4dC1kZXZlbCBs aWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsCiAgbGliWGV2aWUtZGV2ZWwgZGJ1cy1kZXZlbCIKIHNo b3J0X2Rlc2M9IkFzc2lzdGl2ZSBUZWNobm9sb2d5IFNlcnZpY2UgUHJvdmlkZXIgSW50ZXJmYWNl IgpAQCAtMTIsNyArMTIsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczov L2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvYXQtc3BpMi1jb3JlIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09ZDYyOWNkYmQ2NzRlNTM5Zjg5MTIwMjg1MTJhZjU4Mzk5MDkzOGM3YjQ5 ZTI1MTg0YzEyNmIwMDEyMWVmMTFjNgorY2hlY2tzdW09ODhkYTU3ZGUwYTdlM2M2MGJjMzQxYTk3 NGE4MGZkYmEwOTE2MTJkYjM1NDdjNDEwZDZkZWFiMDM5Y2E1YzA1YQogCiAjIFBhY2thZ2UgYnVp bGQgb3B0aW9ucwogYnVpbGRfb3B0aW9ucz0iZ2lyIgoKRnJvbSA2OWIxMDIxYTE1MmRhMDNhNjVk OTc1ZWRlZTFkOTNhZjk4MjcyYjI2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTI6NDQ6MDAg KzA2MDAKU3ViamVjdDogW1BBVENIIDI0LzU0XSBhdC1zcGkyLWF0azogdXBkYXRlIHRvIDIuMzQu Mi4KCi0tLQogc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNo YW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlIGIvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQpp bmRleCA0MzUxYjc5OTZmMy4uYWE3Yjg4MzljOWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXQtc3Bp Mi1hdGsvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQpAQCAtMSw2 ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F0LXNwaTItYXRrJwogcGtnbmFtZT1hdC1z cGkyLWF0awotdmVyc2lvbj0yLjM0LjEKK3ZlcnNpb249Mi4zNC4yCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJsaWJ0b29sIHBrZy1jb25maWcgaW50bHRv b2wgZ2xpYi1kZXZlbCIKQEAgLTEwLDcgKzEwLDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQg PGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4wLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHA6Ly93d3cuZ25vbWUub3JnIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09Nzc2ZGY5MzA3NDhmZGU3MWMxMjhiZTZjMzY2YTk4N2I5OGI2ZWU2NmQ1MDhlZDljOGRi MjM1NWJmNGI5Y2MxNgorY2hlY2tzdW09OTAxMzIzY2VlMGVlZjA1YzAxZWM0ZGVlMDZjNzAxYWVl Y2E4MWEzMTRhN2Q2MDIxNmZhMzYzMDA1ZTI3ZjRmMAogCiBhdC1zcGkyLWF0ay1kZXZlbF9wYWNr YWdlKCkgewogCWRlcGVuZHM9IiR7bWFrZWRlcGVuZHN9ICR7c291cmNlcGtnfT49JHt2ZXJzaW9u fV8ke3JldmlzaW9ufSIKCkZyb20gYzA4ZjQxNjVjMjFmMWY1ZTg5Nzk1MDYxMzE2YTMwMTY0ZWQw MzQ2ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogV2VkLCA2IE1heSAyMDIwIDE5OjQ3OjU4ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAyNS81NF0gcHl0aG9uLWF0c3BpOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dz L3B5dGhvbi1hdHNwaS90ZW1wbGF0ZSB8IDExICsrKystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0 aG9uLWF0c3BpL3RlbXBsYXRlIGIvc3JjcGtncy9weXRob24tYXRzcGkvdGVtcGxhdGUKaW5kZXgg Y2ZhMWVmMzUzNzcuLjEwYTZjYTdiYzcyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbi1hdHNw aS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQpAQCAtMSwyMSAr MSwxOSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0aG9uLWF0c3BpJwogcGtnbmFtZT1weXRo b24tYXRzcGkKLXZlcnNpb249Mi4zMi4xCit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MgogYXJj aHM9bm9hcmNoCiB3cmtzcmM9InB5YXRzcGktJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0eWxlPWdudS1j b25maWd1cmUKLXB5Y29tcGlsZV9tb2R1bGU9InB5YXRzcGkiCi1ob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgcHl0aG9uIHB5dGhvbjMiCi1tYWtlZGVwZW5kcz0iYXQtc3BpMi1jb3JlLWRldmVs IHB5dGhvbi1nb2JqZWN0LWRldmVsCi0gcHl0aG9uMy1nb2JqZWN0LWRldmVsIgoraG9zdG1ha2Vk ZXBlbmRzPSJwa2ctY29uZmlnIHB5dGhvbiBweXRob24zIHdoaWNoIgorbWFrZWRlcGVuZHM9ImF0 LXNwaTItY29yZS1kZXZlbCBweXRob24tZ29iamVjdC1kZXZlbCIKIGRlcGVuZHM9ImF0LXNwaTIt Y29yZSBweXRob24tZ29iamVjdCIKIHNob3J0X2Rlc2M9IlB5dGhvbjIgYmluZGluZ3MgZm9yIEFU LVNQSSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21l Lm9yZy9HTk9NRS9weWF0c3BpMiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9weWF0c3BpLyR7 dmVyc2lvbiUuKn0vcHlhdHNwaS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTg0OTU0YTVi YmVhY2M4MzY0M2YwNTc3OGQ4YmVhZmNhYjgyMDhlMTFiMzliMjQ2MzdiNGM0ZGQxZjg2MjAzODkK K2NoZWNrc3VtPTUxMzZjMWJmOTE5ZTEwMWQ0ZWM5MDFhMjc2ZTg2ZWE2MGU1ODgxYThmZjc3NjNl MzU2ZjE5ODQwZTVmZmUxZGQKIAogcHJlX2NvbmZpZ3VyZSgpIHsKIAlta2RpciAtcCBhdHNwaS0k e3B5Ml92ZXJ9CkBAIC00Niw3ICs0NCw2IEBAIGRvX2luc3RhbGwoKSB7CiAKIHB5dGhvbjMtYXRz cGlfcGFja2FnZSgpIHsKIAlhcmNocz1ub2FyY2gKLQlweWNvbXBpbGVfbW9kdWxlPSJweWF0c3Bp IgogCWRlcGVuZHM9ImF0LXNwaTItY29yZSBweXRob24zLWdvYmplY3QiCiAJc2hvcnRfZGVzYz0i JHtzaG9ydF9kZXNjL1B5dGhvbjIvUHl0aG9uM30iCiAJcGtnX2luc3RhbGwoKSB7CgpGcm9tIDQ1 MWE1YjZmMGZiZDBmMTk2MDE3NWFiNDRjN2JlMDkxZWVlZTI2ZjQgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBN YXkgMjAyMCAxNTo0MzowMSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjYvNTRdIGZvbGtzOiB1cGRh dGUgdG8gMC4xNC4wLgoKLS0tCiBzcmNwa2dzL2ZvbGtzL3RlbXBsYXRlIHwgMTIgKysrKysrLS0t LS0tCiAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUgYi9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRl CmluZGV4IDMzMTBjNTRmYWRkLi40YmY3YjU1YTA4MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9mb2xr cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmb2xrcycKIHBrZ25hbWU9Zm9sa3MKLXZlcnNpb249MC4x My4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTAuMTQuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKLWNvbmZpZ3VyZV9hcmdzPSItRGJfbHRvPWZhbHNlIC1E bGlic29jaWFsd2ViLWJhY2tlbmQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcg aW50bHRvb2wgZ2xpYi1kZXZlbCB2YWxhIHB5dGhvbiBnb2JqZWN0LWludHJvc3BlY3Rpb24KK2Nv bmZpZ3VyZV9hcmdzPSItRGJfbHRvPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IGludGx0b29sIGdsaWItZGV2ZWwgdmFsYSBweXRob24zIGdvYmplY3QtaW50cm9zcGVjdGlvbgog IGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCIKLW1ha2VkZXBlbmRzPSJyZWFkbGluZS1kZXZl bCB0ZWxlcGF0aHktZ2xpYi1kZXZlbCB6ZWl0Z2Vpc3QtZGV2ZWwKK21ha2VkZXBlbmRzPSJyZWFk bGluZS1kZXZlbCB0ZWxlcGF0aHktZ2xpYi1kZXZlbCB6ZWl0Z2Vpc3QtZGV2ZWwgcHl0aG9uMy1k YnVzbW9jawogIGxpYmdlZTA4LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFj a2VyLWRldmVsIgogZGVwZW5kcz0iemVpdGdlaXN0Igogc2hvcnRfZGVzYz0iR09iamVjdCBMaWJy YXJ5IHRvIGFnZ3JlZ2F0ZSBwZW9wbGUgaW50byBtZXRhY29udGFjdHMiCkBAIC0xNSw3ICsxNSw3 IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNl bnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3Jn L1Byb2plY3RzL0ZvbGtzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09M2RmMWM2 NjNiODJmZTIxMWFlYWQyYjMxY2FlMWZjNDFkMTI0ZTg1NDM2Mzc1NzYyZjY3NDVjNDViYTQ2YWE1 ZAorY2hlY2tzdW09ZDZlNzc4ZGE2MzdkM2IzM2ZkOWE2YjQ1MTE1ZTgxNTdkODg2ODIxMWRjMDhi OTQzZDEwNzViNWViNzI4MmJiOQogCiBmb2xrcy1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9 IiR7bWFrZWRlcGVuZHN9ICR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKCkZy b20gZTk2MTJlZmI5Y2E1NTI3Zjc5NzYzYjdiY2VjNWI2MTc0ZTlhOWJlMSBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJp LCAxIE1heSAyMDIwIDA4OjQxOjU2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNy81NF0gZmlsZS1y b2xsZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZSBiL3NyY3BrZ3Mv ZmlsZS1yb2xsZXIvdGVtcGxhdGUKaW5kZXggNWZiNzZkOTczMDcuLjZhMGMyODBmMGQ1IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmlsZS1y b2xsZXIvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmaWxl LXJvbGxlcicKIHBrZ25hbWU9ZmlsZS1yb2xsZXIKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMu MzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0 dGV4dCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyIKQEAgLTEyLDQgKzEyLDQgQEAgbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0Zp bGVSb2xsZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iOTE0NGRlOGY1MzZm NTgzZWMyOWQ3MDNjMmMxNzBiZjJkMDBjNmMxNjZjZDVlM2Y3ZWZhYmRhNTUxZjEwNDc4CitjaGVj a3N1bT0yNjhmN2ZkYWQ4ZDJhNzhkZmVkNWU4MmViODcxMGJhZDM4OWMzMTFiNzIwNjY2ZDZmMDdh MDRlZDUxMDU2YmQyCgpGcm9tIDhkMzE2YmQ5OGU4MjllNDViZTBlNDE2MmJiNTYzODAyMmZlYWE1 MjAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwOToxNDoxMCArMDYwMApTdWJqZWN0OiBbUEFU Q0ggMjgvNTRdIHBvbGFyaTogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9wb2xhcmkv dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wb2xhcmkvdGVtcGxhdGUgYi9zcmNwa2dz L3BvbGFyaS90ZW1wbGF0ZQppbmRleCA1ZDFjNzFiMGY5MS4uNjhhMGViMWVhYWUgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvcG9sYXJpL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcG9sYXJpL3RlbXBsYXRl CkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncG9sYXJpJwogcGtnbmFtZT1w b2xhcmkKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpdHN0b29sIGdvYmplY3Qt aW50cm9zcGVjdGlvbiBnZXR0ZXh0IgpAQCAtMTMsNSArMTMsNSBAQCBtYWludGFpbmVyPSJPcnBo YW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIK IGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvUG9sYXJpIgogZGlzdGZpbGVz PSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzRjMmFhYTY2YjIwMmVlYzNhYjdkYmZlMDhiOGJiNzMw ZTQwY2FmYzc3Y2IwYTllYWUxOTBiZjFjOGMxYjVlNgorY2hlY2tzdW09YWNmY2RiMTY1M2JmMmU0 N2JkNWFiODkxZTM4YTAwMDJjMmY5M2MxNjAzOTcxMTljM2EwYjVjM2VjNTdkMjA4YQogbm9jcm9z cz0idGVsZXBhdGh5LWlkbGU6ICAgRmlsZSAnLi4vdG9vbHMvZ2xpYi1naW50ZXJmYWNlLWdlbi5w eScsIGxpbmUgNzkxIFN5bnRheEVycm9yOiBpbnZhbGlkIHN5bnRheCIKCkZyb20gNGE0MjA2ZTAy YzVmNWE1NTcyYjRhZDA1NGE0ZjBlMGQ2Yzc0NmNhMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIw IDA3OjU4OjAyICswNjAwClN1YmplY3Q6IFtQQVRDSCAyOS81NF0gZGNvbmYtZWRpdG9yOiB1cGRh dGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGNvbmYtZWRp dG9yL3RlbXBsYXRlCmluZGV4IGRlMjUwYmJjOGE5Li4zYjhjZDhjYjcyZiAxMDA2NDQKLS0tIGEv c3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kY29uZi1lZGl0b3Iv dGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkY29uZi1lZGl0 b3InCiBwa2duYW1lPWRjb25mLWVkaXRvcgotdmVyc2lvbj0zLjM2LjAKK3ZlcnNpb249My4zNi4y CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29r LXhzbCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTAsNCArMTAsNCBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1By b2plY3RzL2Rjb25mIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NzJlZWQwNTY3 MDkxN2Y4ZTQzMjAwZTQwY2NjNmJlNjAyMTFmMGE4N2IwMTc1MzRlYWMxZmQ2YzcxNzNhMDY5Mwor Y2hlY2tzdW09ZWRjZWM4ODY3ZjAxODU4OTEyNWYxNzc0MDc3NjBjNjQyYmJiYjUyZmU1MTIyZGFh YzU5MDUyMjNkNmIzZTFjNwoKRnJvbSA3YWY1ZWYzN2EwMmRkZDQ0YTM0YWVkZDgzY2M2ODc2YmJi YjRlZjczIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTA6MjA6NTYgKzA2MDAKU3ViamVjdDog W1BBVENIIDMwLzU0XSB0cmFja2VyOiB1cGRhdGUgdG8gMi4zLjQuCgotLS0KIHNyY3BrZ3MvdHJh Y2tlci90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCsp LCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZSBi L3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQppbmRleCA4NzAyYmNmNWYzMy4uZTgxNGY3N2M3MTEg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RyYWNr ZXIvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3RyYWNr ZXInCiBwa2duYW1lPXRyYWNrZXIKLXZlcnNpb249Mi4zLjEKK3ZlcnNpb249Mi4zLjQKIHJldmlz aW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9h cmdzPSItRGRvY3M9ZmFsc2UgLURmdHM9dHJ1ZSAtRGZ1bmN0aW9uYWxfdGVzdHM9ZmFsc2UKICAt RGpvdXJuYWw9dHJ1ZSAtRG1hbj10cnVlIC1EbmV0d29ya19tYW5hZ2VyPWVuYWJsZWQgLURzdGVt bWVyPWRpc2FibGVkCiAgLURzeXN0ZW1kX3VzZXJfc2VydmljZXM9bm8iCi1ob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCB2YWxhIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0 IHBrZy1jb25maWcgZ2xpYi1kZXZlbCB2YWxhIgogbWFrZWRlcGVuZHM9ImRidXMtZGV2ZWwgbGli Z2xpYi1kZXZlbCBpY3UtZGV2ZWwganNvbi1nbGliLWRldmVsCiAgbGlic291cC1kZXZlbCBsaWJ4 bWwyLWRldmVsIHNxbGl0ZS1kZXZlbCBOZXR3b3JrTWFuYWdlci1kZXZlbAogIGJhc2gtY29tcGxl dGlvbiIKQEAgLTE2LDcgKzE2LDcgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly9saXZlLmdub21lLm9yZy9UcmFja2VyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L3RyYWNr ZXIvJHt2ZXJzaW9uJS4qfS90cmFja2VyLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjY3 NDg3MjZlNDY1YWQyZjRkOTkxNTYwNjM0YjFmZDBkZjg4NDFmM2Q5ODFiM2I4MzdjNDE2MmFiZWRm MDhhMQorY2hlY2tzdW09NTc3OTUyMjQ0YWI5NzdjNzhiMGI4OGUyZjYzYzQxOTdlYWJhMTZlNGQ2 NmJmZjY5MmI3ZjU4OTkzZTA2NTE2ZAogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlo b3N0bWFrZWRlcGVuZHMrPSIgZGJ1cyIKCkZyb20gMmQ4N2NjMjhjZTExYjk1MDBmMjY1NTI5Yjll ZDk4YjVhZDYzOWU5NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDEwOjQ4OjQ2ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAzMS81NF0gc2ltcGxlLXNjYW46IHVwZGF0ZSB0byAzLjM2LjIuMS4KCi0t LQogc3JjcGtncy9zaW1wbGUtc2Nhbi90ZW1wbGF0ZSB8IDcgKysrLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L3NpbXBsZS1zY2FuL3RlbXBsYXRlIGIvc3JjcGtncy9zaW1wbGUtc2Nhbi90ZW1wbGF0ZQppbmRl eCBkMGZjOTc5MDNlNS4uNWUwN2Q2M2YwOGQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2ltcGxlLXNj YW4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zaW1wbGUtc2Nhbi90ZW1wbGF0ZQpAQCAtMSw3ICsx LDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NpbXBsZS1zY2FuJwogcGtnbmFtZT1zaW1wbGUt c2NhbgotX2dub21lX3ZlcnNpb249My4zNgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4y LjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRl eHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgdmFsYSIKQEAgLTExLDUgKzEwLDUgQEAg c2hvcnRfZGVzYz0iR1RLIFNpbXBsZSBzY2FubmluZyB1dGlsaXR5IgogbWFpbnRhaW5lcj0iRW5u byBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0 ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL3NpbXBsZS1zY2Fu IgotZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHtfZ25vbWVfdmVyc2lvbn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTc0MjdmMDkwMjI1M2UwMTM4 Mzk0MTI0M2Y1NmVmOTg3NjA5OTQzYzUzN2Y5MmRkMTA0M2E1M2ViNWVhYWY5MmUKK2Rpc3RmaWxl cz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKi4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgorY2hlY2tzdW09YmI4Y2U1NzUwY2QwNDA1ZTE0ZTRhYzhiMDlmNGE1 ODdjMmZhM2E0MTg2MTRhZDQyNWE2Njk0Yzk4MWJiMDEyYgoKRnJvbSAwOTI5OTU2YjMzYjI5OTQ1 MDJjYWMwYjI5MDlmMWViYTBlYTcyNDQ3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDYgTWF5IDIwMjAgMTk6NTY6 MTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDMyLzU0XSBvcmNhOiB1cGRhdGUgdG8gMy4zNi4yLgoK LS0tCiBzcmNwa2dzL29yY2EvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcmNhL3Rl bXBsYXRlIGIvc3JjcGtncy9vcmNhL3RlbXBsYXRlCmluZGV4IGY3MDIwMmU2ZDc2Li44YTcwYzg0 OWY2ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9vcmNhL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3Jj YS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ29yY2EnCiBw a2duYW1lPW9yY2EKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQog YXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMyw3ICsxMyw3IEBA IG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNl PSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJv amVjdHMvT3JjYSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWMxYWM2NDhiNmJl MzE0ODhjMjZmZjk1OTExNDI4Nzg2OWRmOWNlM2NhMjE5OTllNDBkZWQ4Nzc0MWM5ODgzMWYKK2No ZWNrc3VtPWNmMDA1NWI3NmYyMTU5YzMzYzlkOWY3ZGViYjc2OTQzNWMyMDFiYmZhNmRjZjBmMDFm ZGM1OGU5Mjk0N2JmNDMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2Vk ZXBlbmRzKz0iIHB5dGhvbjMtZ29iamVjdC1kZXZlbCIKCkZyb20gNzdkMWU4MjQ4ZWEzN2JkYmFl YmUzZGRlMWU0OWJiZjNkZjQ0ZTg2NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDExOjAzOjI5 ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzMy81NF0gZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3M6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRv Y3MvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQt ZG9jcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxh dGUKaW5kZXggNWJlYzkzNDkwYmEuLmJlZDliNjk2MTYyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2du b21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZ2V0 dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcycKIHBrZ25hbWU9Z25vbWUtZ2V0dGlu Zy1zdGFydGVkLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249 MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMSw0ICsxMSw0 IEBAIGxpY2Vuc2U9IkNDLUJZLVNBLTMuMCIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9t ZS5vcmcvR05PTUUvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MiCiAjY2hhbmdlbG9nPSJodHRw czovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvcmF3 L21hc3Rlci9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjcwY2UyY2Ey M2FkNzg2MjE1ZjNjOTJlYzg1NzgzZTNhYWJlZDA3ZTRmNzg3MDBmYTI3ZjliMmNmNzZlMDNkYgor Y2hlY2tzdW09MDQ5NGI4OTEzYTk0NmI2NDUwNTM2ZTEyMGMxNTRhYmQyOTIzOGViYmEyZjUyNzM0 NTkyYjFmNjQ1ZTUyMWRjNgoKRnJvbSBiYzM4YzgzZGNhMGJjNGEwZGM4NzUxNTI0YzY4MjUyNjU2 NzU4ZjlhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBTdW4sIDE5IEFwciAyMDIwIDE2OjUxOjQyICswNjAwClN1YmplY3Q6 IFtQQVRDSCAzNC81NF0gZ25vbWUtcGFuZWw6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIGNvbW1v bi9zaGxpYnMgICAgICAgICAgICAgICAgfCAzICsrLQogc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1w bGF0ZSB8IDYgKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRl eCA1YzBlNjYyZjk3OC4uYmY4MmFjNjc4YzAgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysr IGIvY29tbW9uL3NobGlicwpAQCAtNTY1LDcgKzU2NSw4IEBAIGxpYnBhY2thZ2VraXQtZ2xpYjIu c28uMTggUGFja2FnZUtpdC0xLjEuMTJfMQogbGlicHNsLnNvLjUgbGlicHNsLTAuMjAuMl8xCiBs aWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4zNC4wXzEKIGxpYnNvdXAtZ25vbWUtMi40LnNvLjEg bGlic291cC1nbm9tZS0yLjM0LjBfMQotbGlicGFuZWwtYXBwbGV0LnNvLjMgZ25vbWUtcGFuZWwt My4zMC4wXzEKK2xpYmdub21lLXBhbmVsLnNvLjAgZ25vbWUtcGFuZWwtMy4zNi4xXzEKK2xpYnBh bmVsLWFwcGxldC5zby4zIGdub21lLXBhbmVsLTMuMzYuMV8xCiBsaWJ1bmludW0uc28uNSBsaWJ1 bmludW0tMi43XzEKIGxpYnVuaXF1ZS0zLjAuc28uMCBsaWJ1bmlxdWUtMi45MS40XzEKIGxpYndl YmtpdDJndGstNC4wLnNvLjM3IHdlYmtpdDJndGstMi42LjJfMQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nbm9tZS1wYW5lbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtcGFuZWwvdGVtcGxhdGUKaW5k ZXggNzBmMjNiOGI1NTEuLjliMDBiZmFiNjU4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXBh bmVsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtcGFuZWwvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1wYW5lbCcKIHBrZ25hbWU9Z25vbWUt cGFuZWwKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0zCit2ZXJzaW9uPTMuMzYuMQorcmV2aXNp b249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9ImF4X2N2X3pv bmVpbmZvX3R6ZGlyPS91c3Ivc2hhcmUvem9uZWluZm8iCiBob3N0bWFrZWRlcGVuZHM9ImdldHRl eHQtZGV2ZWwgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgdHpkYXRhIGdldHRleHQiCkBA IC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4 Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBHRkRMLTEuMS1vci1sYXRlciwgTEdQ TC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0 cy9Hbm9tZVBhbmVsIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YTZiYzAyNTUy NTJlZWI0Yjk2NGJjYmU1NWZkNzkwOGI2OWY5MTRjMDYyYzVlYzhkZmY1YWMwMjYyZDI5YjkwZAor Y2hlY2tzdW09MWUyMWI3MjZkZDM5NzUyM2FlNzlkMjllYjUzOGJjYWUwOWUzNDI3ZTIzY2NkNjNm MjhlYjI1ZWYzNTUyYWJkMwogcGF0Y2hfYXJncz0iLU5wMSIKIAogZ25vbWUtcGFuZWwtZGV2ZWxf cGFja2FnZSgpIHsKCkZyb20gMmZmMjk1ZjZlNGRkZTA3ZDY2N2RlZTM1MDc4NmQwM2NjOWMyNzhi YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29r LmNvbT4KRGF0ZTogU3VuLCAxOSBBcHIgMjAyMCAxNzoyNjozNiArMDYwMApTdWJqZWN0OiBbUEFU Q0ggMzUvNTRdIG1ldGFjaXR5OiB1cGRhdGUgdG8gMy4zNi4xLgoKLS0tCiBjb21tb24vc2hsaWJz ICAgICAgICAgICAgIHwgMSArCiBzcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlIHwgNiArKystLS0K IDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGJmODJhYzY3OGMwLi5k NDQ4YTRlZmQzOSAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJz CkBAIC01NjcsNiArNTY3LDcgQEAgbGlic291cC0yLjQuc28uMSBsaWJzb3VwLTIuMzQuMF8xCiBs aWJzb3VwLWdub21lLTIuNC5zby4xIGxpYnNvdXAtZ25vbWUtMi4zNC4wXzEKIGxpYmdub21lLXBh bmVsLnNvLjAgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnBhbmVsLWFwcGxldC5zby4zIGdub21l LXBhbmVsLTMuMzYuMV8xCitsaWJtZXRhY2l0eS5zby4xIG1ldGFjaXR5LTMuMzYuMV8xCiBsaWJ1 bmludW0uc28uNSBsaWJ1bmludW0tMi43XzEKIGxpYnVuaXF1ZS0zLjAuc28uMCBsaWJ1bmlxdWUt Mi45MS40XzEKIGxpYndlYmtpdDJndGstNC4wLnNvLjM3IHdlYmtpdDJndGstMi42LjJfMQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbWV0YWNpdHkvdGVt cGxhdGUKaW5kZXggMWQ0MTkyNjc2NjguLmJiN2RmYzBiZmM5IDEwMDY0NAotLS0gYS9zcmNwa2dz L21ldGFjaXR5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUKQEAgLTEs OSArMSw5IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtZXRhY2l0eScKIHBrZ25hbWU9bWV0YWNp dHkKLXZlcnNpb249My4zMC4xCit2ZXJzaW9uPTMuMzYuMQogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Z251LWNvbmZpZ3VyZQotaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRldmVsIGdsaWItZGV2 ZWwgaXRzdG9vbCBwa2ctY29uZmlnIHllbHAtdG9vbHMgemVuaXR5IgoraG9zdG1ha2VkZXBlbmRz PSJnZXR0ZXh0IGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmlnIHllbHAtdG9vbHMgemVuaXR5 IgogbWFrZWRlcGVuZHM9ImdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZ3RrKzMtZGV2 ZWwgbGliY2FuYmVycmEtZGV2ZWwKICBsaWJnbGliLWRldmVsIGxpYmd0b3AtZGV2ZWwgbGliU00t ZGV2ZWwgbGliWGNvbXBvc2l0ZS1kZXZlbCBsaWJYZGFtYWdlLWRldmVsCiAgbGliWGZpeGVzLWRl dmVsIGxpYlhpbmVyYW1hLWRldmVsIGxpYlhyZW5kZXItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdv LWRldmVsCkBAIC0xNCw0ICsxNCw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9tZXRhY2l0eSIKIGRpc3RmaWxlcz0iJHtHTk9N RV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRh ci54eiIKLWNoZWNrc3VtPTBmMTMxMWI3YWEzOGRlNzFjNjYwODBiZDJiNzQ0ZGUyY2Q5NTgwYWZj YWVlOWM2MDk3YTdkM2Y1YzQyMTc5OGEKK2NoZWNrc3VtPTExZjA3NjkzZTJiMjY2ODQwNzU5MDYz YTRiYzgwNzM0NjA3MGU4ZTdmZWM4ZjUzY2QwNzU3ZjY2NjJjMWIzMjMKCkZyb20gNzVkY2RjYzQw MjU2YjU3NDAxYTg4YzRmZmJiYjA5MDFmYjY1YjAwYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCAyOSBBcHIgMjAy MCAwNTozMjoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzYvNTRdIGdub21lLW1lbnVzOiB1cGRh dGUgdG8gMy4zNi4wLgoKLS0tCiBzcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlIHwgNiArKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtbWVu dXMvdGVtcGxhdGUKaW5kZXggMjkxMDIxMjljMzguLmU3ODdmYjhkZTZiIDEwMDY0NAotLS0gYS9z cmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1tZW51cycK IHBrZ25hbWU9Z25vbWUtbWVudXMKLXZlcnNpb249My4zMi4wCi1yZXZpc2lvbj0yCit2ZXJzaW9u PTMuMzYuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogYnVpbGRfaGVs cGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyIKQEAgLTEyLDcgKzEy LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1tZW51cyIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKLWNoZWNrc3VtPWM4NTBjNjRiMjA3NDI2NWZlNTllMDk5YTM0MGI4Njg5Y2YzZGQ0 NjU4ZGM5ZmVkZGQyYWI1ZTk1ZjFhNzRiNzQKK2NoZWNrc3VtPWQ5MzQ4ZjM4YmRlOTU2ZmMzMjc1 M2IyOGMxY2RlMTljMTc1YmZkYmYxZjRkNWIwNjAwM2IzYWEwOTE1M2JiMWYKIAogYnVpbGRfb3B0 aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDBlMTMxODI0NmIx NWQyZmI1NWRlNGIwMzc5YTljYzZlM2FjOWI4OGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAw NjowMzo1NSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzcvNTRdIGdub21lLWZsYXNoYmFjazogdXBk YXRlIHRvIDMuMzYuMy4KCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0w LjgucGF0Y2ggIHwgMjggKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1mbGFzaGJh Y2svdGVtcGxhdGUgICAgICAgICAgICAgIHwgMjIgKysrKysrKysrLS0tLS0tCiAyIGZpbGVzIGNo YW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svcGF0Y2hlcy9jb21waXotMC44LnBhdGNoCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svcGF0Y2hlcy9jb21waXotMC44LnBhdGNo IGIvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svcGF0Y2hlcy9jb21waXotMC44LnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4yYTAwZGNlZmY3MAotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRj aApAQCAtMCwwICsxLDI4IEBACitkaWZmIC0tZ2l0IGNvbmZpZ3VyZSBjb25maWd1cmUKK2luZGV4 IDI2Y2VhNTEuLmQyNDYzY2MgMTAwNzU1CistLS0gY29uZmlndXJlCisrKysgY29uZmlndXJlCitA QCAtMjA4NDIsOCArMjA4NDIsOCBAQCBmaQorIGlmIHRlc3QgIngkd2l0aF9jb21waXpfc2Vzc2lv biIgIT0gInhubyI7IHRoZW4gOgorIAorICAgaWYgdGVzdCAtbiAiJFBLR19DT05GSUciICYmIFwK Ky0gICAgeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkUEtHX0NP TkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyBcImxpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQu MFwiIjsgfSA+JjUKKy0gICgkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGli Y29tcGl6Y29uZmlnID49IDAuOS4xNC4wIikgMj4mNQorKyAgICB7IHsgJGFzX2VjaG8gIiRhc19t ZToke2FzX2xpbmVuby0kTElORU5PfTogXCRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJy b3JzIFwibGliY29tcGl6Y29uZmlnID49IDAuOC4xOC4wXCIiOyB9ID4mNQorKyAgKCRQS0dfQ09O RklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjAi KSAyPiY1CisgICBhY19zdGF0dXM9JD8KKyAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8t JExJTkVOT306IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAgdGVzdCAkYWNfc3RhdHVzID0gMDsg fTsgdGhlbgorZGlmZiAtLWdpdCBjb25maWd1cmUuYWMgY29uZmlndXJlLmFjCitpbmRleCBiNmUx NDcwLi5kMjhhNzBiIDEwMDY0NAorLS0tIGNvbmZpZ3VyZS5hYworKysrIGNvbmZpZ3VyZS5hYwor QEAgLTM0MCw3ICszNDAsNyBAQCBBQ19BUkdfV0lUSChbY29tcGl6LXNlc3Npb25dLAorICAgICAg ICAgICAgIFt3aXRoX2NvbXBpel9zZXNzaW9uPSIkd2l0aHZhbCJdLCBbd2l0aF9jb21waXpfc2Vz c2lvbj0iYXV0byJdKQorIAorIEFTX0lGKFt0ZXN0ICJ4JHdpdGhfY29tcGl6X3Nlc3Npb24iICE9 ICJ4bm8iXSwgWworLSAgUEtHX0NIRUNLX0VYSVNUUyhbbGliY29tcGl6Y29uZmlnID49IDAuOS4x NC4wXSwKKysgIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZpZyA+PSAwLjguMTYuMF0s CisgICAgICAgICAgICAgICAgICAgIFtmb3VuZF9jb21waXo9InllcyJdLCBbZm91bmRfY29tcGl6 PSJubyJdKQorIAorICAgQVNfSUYoW3Rlc3QgIngkZm91bmRfY29tcGl6IiA9ICJ4eWVzIl0sIFsK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKaW5kZXggZDMyMTIwY2FiNmYuLjhhZGQwOTg3NmFhIDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZQpAQCAtMSwyMCArMSwyNCBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ25vbWUtZmxhc2hiYWNrJwogcGtnbmFtZT1nbm9tZS1mbGFzaGJhY2sKLXZlcnNp b249My4zNC4yCit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPWdpcgog YnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWNvbXBp bGUtd2FybmluZ3M9bWluaW11bSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBhdXRvbWFr ZSBnbGliLWRldmVsIGdldHRleHQiCi1tYWtlZGVwZW5kcz0iZ3RrKzMtZGV2ZWwgZ3NldHRpbmdz LWRlc2t0b3Atc2NoZW1hcy1kZXZlbAotIGxpYmdsaWItZGV2ZWwgZ2RrLXBpeGJ1Zi1kZXZlbCB1 cG93ZXItZGV2ZWwgaWJ1cy1kZXZlbCBwb2xraXQtZGV2ZWwKLSBwdWxzZWF1ZGlvLWRldmVsIGxp YmNhbmJlcnJhLWRldmVsIGxpYnhjYi1kZXZlbCBsaWJYMTEtZGV2ZWwgcGFuZ28tZGV2ZWwKLSBs aWJ4a2JmaWxlLWRldmVsIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVs IgorY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1jb21waXotc2Vzc2lvbiAtLWVuYWJsZS1jb21waWxl LXdhcm5pbmdzPW1pbmltdW0iCitob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2Ug Z2xpYi1kZXZlbCBnZXR0ZXh0IGxpYnRvb2wiCittYWtlZGVwZW5kcz0iZ3RrKzMtZGV2ZWwgcGFt LWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZWxvZ2luZC1kZXZlbAorIGdk bS1kZXZlbCBsaWJjb21waXpjb25maWctZGV2ZWwgbGliZ2xpYi1kZXZlbCBnZGstcGl4YnVmLWRl dmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsCisgcG9sa2l0LWRldmVsIHB1bHNlYXVkaW8tZGV2 ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxpYlgxMS1kZXZlbCBwYW5nby1kZXZl bAorIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRlc2t0b3At ZGV2ZWwgZ25vbWUtcGFuZWwtZGV2ZWwiCiBkZXBlbmRzPSJnbm9tZS1ibHVldG9vdGggZ25vbWUt c2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24KLSBnbm9tZS1wYW5lbCBnbm9tZS10aGVtZXMt c3RhbmRhcmQgbWV0YWNpdHkiCisgZ25vbWUtcGFuZWwgZ25vbWUtdGhlbWVzLWV4dHJhIG1ldGFj aXR5Igogc2hvcnRfZGVzYz0iR05PTUUgMyBzZXNzaW9uIHdpdGggc2ltaWxhciB1c2VyIGV4cGVy aWVuY2UgdG8gdGhlIEdOT01FIDIueCBzZXJpZXMiCiBtYWludGFpbmVyPSJzaGl6b25pYyA8cmVh bHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZUZsYXNoYmFjayIKIGRpc3RmaWxl cz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3Zl cnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNiZTY1Mzg4Y2QyYzhmMzk3NDFiY2MwNWRhODdlZjQw MDM1MTgzYTlhMzk1MDJkNjc2OTYyNDJjMmFlYjQ2OWMKK2NoZWNrc3VtPTJkYmE5ZWE0MGYyZGE4 MWMyMjk1NGE4Y2NjMjlmOGYxZmE0Y2E4Mzk1YTZiYjU1MjUwNjYzNTgzMjc1MWMxYTcKKworcHJl X2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkKK30KCkZyb20gNThhNmNlNDVjNzJjMTVm ZWYzNmNmMDRiMjkwNjRiZTJiMTc4NWEyOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCAyOSBBcHIgMjAyMCAwNjo1 OTo0MCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzgvNTRdIGdyYXBoZW5lOiB1cGRhdGUgdG8gMS4x MC4wLgoKLS0tCiBzcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlIHwgMTAgKysrKystLS0tLQogMSBm aWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlIGIvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQpp bmRleCBmMmZlODFhM2Y0Ny4uY2I3Mzg1ZmVkYjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ3JhcGhl bmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQpAQCAtMSwxMCArMSwx MCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ3JhcGhlbmUnCiBwa2duYW1lPWdyYXBoZW5lCi12 ZXJzaW9uPTEuOC4yCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTEuMTAuMAorcmV2aXNpb249MQogYnVp bGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgotY29uZmlndXJlX2FyZ3M9Ii1EdGVz dHM9ZmFsc2UgLURiZW5jaG1hcmtzPWZhbHNlCitjb25maWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxz ZSAtRGFybV9uZW9uPWZhbHNlCiAgLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIgdHJ1ZSBm YWxzZSkiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0ibGliZ2xp Yi1kZXZlbCIKQEAgLTEzLDEzICsxMywxMyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0 aHViLmNvbS9lYmFzc2kvZ3JhcGhlbmUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vZ3JhcGhl bmUvJHt2ZXJzaW9uJS4qfS9ncmFwaGVuZS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWIz ZmNmMjA5OTZlNTdiMWY0ZGYzOTQxY2FhYzEwZjE0M2JiMjk4OTBhNDJmN2E2NTQwN2NkMTkyNzFm Yzg5ZjcKK2NoZWNrc3VtPTQwNmQ5N2Y1MWRkNGNhNjFlOTFmODQ2NjZhMDBjM2U5NzZkM2U2Njdj ZDI0OGI3NmQ5MmZkYjM1Y2U4NzY0OTkKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0 aW9uc19kZWZhdWx0PSJnaXIiCiAKIHBvc3RfaW5zdGFsbCgpIHsKLQl2bGljZW5zZSBMSUNFTlNF CisJdmxpY2Vuc2UgTElDRU5TRS50eHQgTElDRU5TRQogfQogCiBncmFwaGVuZS1kZXZlbF9wYWNr YWdlKCkgewoKRnJvbSBlZTQ3NmIzOTFjYTkwZTdlYTFhNDJhNjhjMmY2N2YzZmI0ZTE1YjgwIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDExOjUzOjI5ICswNjAwClN1YmplY3Q6IFtQQVRDSCAz OS81NF0gbXV0dGVyOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBjb21tb24vc2hsaWJzICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxOCArKysrKystLS0tLS0KIC4uLi9wYXRjaGVz L2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaCAgICAgICB8IDExIC0tLS0tLS0tCiBzcmNwa2dz L211dHRlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCAyOCArKysrKysrKystLS0t LS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygt KQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvZml4LWNvZ2wtZWds LWluY2x1ZGVzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxp YnMKaW5kZXggZDQ0OGE0ZWZkMzkuLjY3NjJjMGZmYzcxIDEwMDY0NAotLS0gYS9jb21tb24vc2hs aWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTI5MzQsMTUgKzI5MzQsMTUgQEAgbGliZGVjb3Jh dGlvbi5zby4wIGNvbXBpei1jb3JlLTAuOC4xNF8xCiBsaWJjb21waXpjb25maWcuc28uMCBsaWJj b21waXpjb25maWctMC44LjE0XzEKIGxpYmVtZXJhbGRlbmdpbmUuc28uMCBlbWVyYWxkLTAuOC4x NF8xCiBsaWJoYW5ndWwuc28uMSBsaWJoYW5ndWwtMC4xLjBfMQotbGlibXV0dGVyLTUuc28uMCBt dXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1s aWJtdXR0ZXItY2x1dHRlci01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1w YXRoLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1wYXRoLTUuc28uMCBtdXR0 ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0 ZXItY29nbC01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1wYW5nby01LnNv IG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5zby4wIG11dHRlci0zLjM0 LjFfMQorbGlibXV0dGVyLTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jbHV0dGVy LTYuc28gbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY2x1dHRlci02LnNvLjAgbXV0dGVyLTMu MzYuMV8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28gbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0 ZXItY29nbC1wYXRoLTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLTYuc28g bXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC02LnNvLjAgbXV0dGVyLTMuMzYuMV8xCits aWJtdXR0ZXItY29nbC1wYW5nby02LnNvIG11dHRlci0zLjM2LjFfMQorbGlibXV0dGVyLWNvZ2wt cGFuZ28tNi5zby4wIG11dHRlci0zLjM2LjFfMQogbGliZ2VvY2x1ZS0yLnNvLjAgZ2VvY2x1ZTIt Mi40LjRfMQogbGliZ2VwdWIuc28uMCBsaWJnZXB1Yi0wLjRfMQogbGlic2xvcHkuc28uNy41IHNs b3AtNy41XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvZml4LWNvZ2wtZWds LWluY2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9maXgtY29nbC1lZ2wtaW5j bHVkZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ5MDk4ODg4N2MzLi4w MDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211dHRlci9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNs dWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS0tLSBjb2dsL2NvZ2wv bWVzb24uYnVpbGQJMjAxOS0xMC0wOCAxOToxNToxMC4wMDAwMDAwMDAgKzAyMDAKLSsrKyBjb2ds L2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMi0xNiAxNTo0NTo0NC4wMzc2NDA1NDggKzAxMDAKLUBA IC00OCw3ICs0OCw3IEBACi0gYnVpbHRfaGVhZGVycyArPSBbY29nbF9nbF9oZWFkZXJfaF0KLSAK LSBpZiBoYXZlX2VnbAotLSAgY29nbF9lZ2xfaW5jbHVkZXNfc3RyaW5nID0gJyNpbmNsdWRlIDxF R0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPicKLSsgIGNvZ2xfZWdsX2luY2x1ZGVz X3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2VnbC5oPlxuI2luY2x1ZGUgPEVHTC9lZ2xleHQuaD5c biNpbmNsdWRlIDxFR0wvZWdsbWVzYWV4dC5oPicKLSBlbHNlCi0gICBjb2dsX2VnbF9pbmNsdWRl c19zdHJpbmcgPSAnJwotIGVuZGlmCmRpZmYgLS1naXQgYS9zcmNwa2dzL211dHRlci90ZW1wbGF0 ZSBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCmluZGV4IDRlMGJkMzJiNjdkLi43YzE0ODI5YWY5 ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tdXR0 ZXIvdGVtcGxhdGUKQEAgLTEsMzQgKzEsMzQgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ211dHRl cicKIHBrZ25hbWU9bXV0dGVyCi12ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MgordmVyc2lvbj0z LjM2LjIKK3JldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24K LWNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAtRHVkZXY9dHJ1ZSAtRG5hdGl2ZV9i YWNrZW5kPXRydWUKLSAtRHByb2ZpbGVyPWZhbHNlIC1EaW50cm9zcGVjdGlvbj10cnVlIC1EeHdh eWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKK2NvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZp Y2U9dHJ1ZSAtRHVkZXY9dHJ1ZSAtRG5hdGl2ZV9iYWNrZW5kPXRydWUgLURwcm9maWxlcj1mYWxz ZQorIC1EaW50cm9zcGVjdGlvbj10cnVlIC1EeHdheWxhbmRfaW5pdGZkPWRpc2FibGVkIC1EeHdh eWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBn bGliLWRldmVsIHBrZy1jb25maWcgemVuaXR5IHdheWxhbmQtZGV2ZWwgeG9yZy1zZXJ2ZXIiCi1t YWtlZGVwZW5kcz0iZWxvZ2luZC1kZXZlbCBnbGliLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwg anNvbi1nbGliLWRldmVsCi0gbGliZ2xpYi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVs IGxpYmNhbmJlcnJhLWRldmVsIGxpYmlucHV0LWRldmVsCi0gTWVzYUxpYi1kZXZlbCBwaXBld2ly ZS1kZXZlbCBzdGFydHVwLW5vdGlmaWNhdGlvbi1kZXZlbCB3YXlsYW5kLXByb3RvY29scwotIGdu b21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCIKK21ha2VkZXBlbmRzPSJlbG9naW5kLWRldmVsIGds aWItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBncmFwaGVuZS1kZXZlbAorIGpzb24tZ2xpYi1k ZXZlbCBsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgbGliY2FuYmVycmEt ZGV2ZWwKKyBsaWJpbnB1dC1kZXZlbCBNZXNhTGliLWRldmVsIHBpcGV3aXJlLWRldmVsIHN0YXJ0 dXAtbm90aWZpY2F0aW9uLWRldmVsCisgd2F5bGFuZC1wcm90b2NvbHMgZ25vbWUtc2V0dGluZ3Mt ZGFlbW9uLWRldmVsIgogZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0aWxzIHplbml0eSIKIHNob3J0 X2Rlc2M9IkxpZ2h0d2VpZ2h0IEdUSyszIHdpbmRvdyBtYW5hZ2VyIgogbWFpbnRhaW5lcj0iRW5u byBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0 ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9NdXR0ZXIvIgog ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YmExODI2Y2Y4OGJkYjgxZTYzOTQzY2Fj MDE0YThlOGJjZjM1ZWMxNzhjNTMyNjQ0MDFmOWM3MmZkZWFiNzU4ZQotc2hsaWJfcHJvdmlkZXM9 ImxpYm11dHRlci1jbHV0dGVyLTUuc28gbGlibXV0dGVyLWNvZ2wtNS5zbwotIGxpYm11dHRlci1j b2dsLXBhbmdvLTUuc28gbGlibXV0dGVyLWNvZ2wtcGF0aC01LnNvIgorY2hlY2tzdW09NzViMzc2 NGViMDU5ZmM5MzVhNTQ1MjNhNjJiZWMxYmVkYjkzNTI4NDA0NmI2ZGFhNTA4NjliMTk1YWRkZGFm NAorc2hsaWJfcHJvdmlkZXM9ImxpYm11dHRlci1jbHV0dGVyLTYuc28gbGlibXV0dGVyLWNvZ2wt Ni5zbworIGxpYm11dHRlci1jb2dsLXBhbmdvLTYuc28gbGlibXV0dGVyLWNvZ2wtcGF0aC02LnNv IgogCiBtdXR0ZXItZGV2ZWxfcGFja2FnZSgpIHsKLQlkZXBlbmRzPSJnc2V0dGluZ3MtZGVza3Rv cC1zY2hlbWFzIGd0ayszLWRldmVsIGNsdXR0ZXItZGV2ZWwgbGliWDExLWRldmVsCi0JIGxpYlh0 c3QtZGV2ZWwgbXV0dGVyLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJZGVwZW5kcz0iZ3NldHRp bmdzLWRlc2t0b3Atc2NoZW1hcyBncmFwaGVuZS1kZXZlbCBndGsrMy1kZXZlbCBjbHV0dGVyLWRl dmVsCisJIGxpYlgxMS1kZXZlbCBsaWJYdHN0LWRldmVsIG11dHRlci0ke3ZlcnNpb259XyR7cmV2 aXNpb259IgogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKIAlwa2dfaW5zdGFs bCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKIAkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcKLQkJ dm1vdmUgInVzci9saWIvbXV0dGVyLTUvKi5naXIiCisJCXZtb3ZlICJ1c3IvbGliL211dHRlci02 LyouZ2lyIgogCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCX0KIH0KCkZyb20gNmI4NTU4MTU5MTU4 MjEzYmQxNWM1NjRiODI1MTI0ODA1ZjU4MGZlNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCA0IE1heSAyMDIwIDE0 OjM4OjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCA0MC81NF0gZ25vbWUtc2hlbGw6IHVwZGF0ZSB0 byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUgfCA2ICsrKy0tLQog MSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1zaGVsbC90 ZW1wbGF0ZQppbmRleCA5NmM1YjgwYTE5NC4uZjU5YzQ2YTU2MWYgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0 ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2hlbGwnCiBw a2duYW1lPWdub21lLXNoZWxsCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlz aW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9Z2lyCiBjb25maWd1cmVfYXJn cz0iLURzeXN0ZW1kPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJnb2JqZWN0LWludHJvc3BlY3Rp b24gZ3RrLWRvYyBsaWJ4c2x0IHBrZy1jb25maWcgcHl0aG9uMyBzYXNzYworaG9zdG1ha2VkZXBl bmRzPSJnZXR0ZXh0IGdvYmplY3QtaW50cm9zcGVjdGlvbiBndGstZG9jIGxpYnhzbHQgcGtnLWNv bmZpZyBweXRob24zIHNhc3NjCiAgYXNjaWlkb2MgcGVybCBnbGliLWRldmVsIG11dHRlci1kZXZl bCIKIG1ha2VkZXBlbmRzPSJhdC1zcGkyLWF0ayBjYXJpYm91LWRldmVsIGV2b2x1dGlvbi1kYXRh LXNlcnZlci1kZXZlbCBmb2xrcy1kZXZlbAogIGdjci1kZXZlbCBnanMtZGV2ZWwgZ25vbWUtYmx1 ZXRvb3RoLWRldmVsIGdub21lLWNvbnRyb2wtY2VudGVyLWRldmVsIGdub21lLWRlc2t0b3AtZGV2 ZWwKQEAgLTIxLDQgKzIxLDQgQEAgbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dub21lU2hlbGwiCiBjaGFuZ2Vsb2c9 Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9nbm9tZS1zaGVsbC9nbm9t ZS0zLTMwL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1jY2Q4NjU1OWI5 Yzg5N2MyMTlkMmQyZWJmZGI4NDEzZWZhNGMxYmVlODQ2NDI3Yzc1MGNiOGEzMDFiM2Y2ZDFlCitj aGVja3N1bT0zYjEyOWIyYTFmMWYxNjU0YTEwMTA5OGVhOGI5MWE3M2E4MzZhYWQ3ZDE2NmY1MmRk NDZiMWM2MDM3ZWMxNzUzCgpGcm9tIGNiMDg1M2JmMjczYzY3YTFlYWFlZTEwNmFjZDZhY2Q5YmFj MDI1NmEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IE1vbiwgNCBNYXkgMjAyMCAxNDozODozMiArMDYwMApTdWJqZWN0OiBb UEFUQ0ggNDEvNTRdIGdub21lLXNoZWxsLWV4dGVuc2lvbnM6IHVwZGF0ZSB0byAzLjM2LjIuCgot LS0KIHNyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAx IGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZQppbmRleCA5NzE2OGI0MGY2Ni4uZTFkZDQzYmIx NTIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKQEAgLTEsMTUgKzEs MTUgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXNoZWxsLWV4dGVuc2lvbnMnCiBwa2du YW1lPWdub21lLXNoZWxsLWV4dGVuc2lvbnMKLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYu MgogcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJl X2FyZ3M9Ii1EZXh0ZW5zaW9uX3NldD1hbGwiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWci Citob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyIKIGRlcGVuZHM9Imdub21lLXNo ZWxsPj0ke3ZlcnNpb259IG5hdXRpbHVzIHVuemlwIgogc2hvcnRfZGVzYz0iRXh0ZW5zaW9ucyBm b3IgR05PTUUgc2hlbGwsIGluY2x1ZGluZyBjbGFzc2ljIG1vZGUiCiBtYWludGFpbmVyPSJFbm5v IEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dub21lU2hlbGwv RXh0ZW5zaW9ucyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWIwYWQ1MTE0M2Ix YmY0MGRlZjRhMTBmOGZkMGFiMGZmYjQ3MjE4MzA0ODAwNzk0ZTYyY2FkZDI5ZDBhY2M3NWIKK2No ZWNrc3VtPTk3ODIwMmRlNTE1Y2RiMDNhNTg4NTg1OWM1MzgzNjZiY2E4ZmQ3ODc2MmNlOThiMTcy YWMyYzAxMjZmODAwM2YKCkZyb20gM2I1YzFmOGFhYzE2ZTYyMDFmMWY0ZWZmYjE3N2RmN2I0MDdi NzAwYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVGh1LCA3IE1heSAyMDIwIDEyOjI3OjU1ICswNjAwClN1YmplY3Q6IFtQ QVRDSCA0Mi81NF0gZ2RtOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dkbS90ZW1w bGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZG0vdGVtcGxhdGUgYi9zcmNwa2dzL2dk bS90ZW1wbGF0ZQppbmRleCBiYjViNDg2OTJkNC4uMDk5YzRjYzlkNGQgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZ2RtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2RtL3RlbXBsYXRlCkBAIC0xLDExICsx LDExIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnZG0nCiBwa2duYW1lPWdkbQotdmVyc2lvbj0z LjM0LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSIkKHZvcHRfZW5hYmxlIGdp ciBpbnRyb3NwZWN0aW9uKQotIC0tZGlzYWJsZS1zY2hlbWFzLWNvbXBpbGUgLS1kaXNhYmxlLXN0 YXRpYyAtLXdpdGgtZGVmYXVsdC1wYW0tY29uZmlnPWFyY2gKKyAtLWRpc2FibGUtc3RhdGljIC0t d2l0aC1kZWZhdWx0LXBhbS1jb25maWc9YXJjaAogIC0td2l0aC1hdC1zcGktcmVnaXN0cnlkLWRp cmVjdG9yeT0vdXNyL2xpYmV4ZWMgLS13aXRob3V0LXRjcC13cmFwcGVycwogIC0td2l0aC1zY3Jl ZW5zaG90LWRpcj0vdmFyL2xpYi9nZG0vZ3JlZXRlciAtLXNiaW5kaXI9L3Vzci9iaW4gLS13aXRo b3V0LXBseW1vdXRoCiAgLS13aXRoLXhhdXRoLWRpcj0vcnVuL2dkbSAtLXdpdGgtcGlkLWZpbGU9 L3J1bi9nZG0vZ2RtLnBpZApAQCAtMTQsMTQgKzE0LDE0IEBAIGhvc3RtYWtlZGVwZW5kcz0iZGNv bmYgZ2V0dGV4dCBpdHN0b29sIHBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0iYWNjb3VudHNzZXJ2 aWNlLWRldmVsIGVsb2dpbmQtZGV2ZWwgZ2V0dGV4dC1kZXZlbCBnbGliLWRldmVsCiAgaXNvLWNv ZGVzIGxpYlNNLWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIG5zcy1kZXZlbCBwYW0tZGV2ZWwgdXBv d2VyLWRldmVsIgogZGVwZW5kcz0iZ25vbWUtc2V0dGluZ3MtZGFlbW9uIGdub21lLXNoZWxsIHhv cmctc2VydmVyIHhvcmctc2VydmVyLXh3YXlsYW5kCi0geHJkYiIKKyB4cmRiIGdzZXR0aW5ncy1k ZXNrdG9wLXNjaGVtYXMiCiBjaGVja2RlcGVuZHM9ImNoZWNrLWRldmVsIgogc2hvcnRfZGVzYz0i R05PTUUgRGlzcGxheSBNYW5hZ2VyIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9HRE0iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT1lODVkZjY1N2FhOGQ5MzYxYWY0ZmIxMjIwMTRkOGYxMjNhOTNiZmU0NWE3NjYy ZmJhMmIzNzNkODM5ZGJkOGQzCitjaGVja3N1bT0zZjU2MWMxMGFlMmU1OTQyYjAzMDI2ZjAyYzBh YTdkODcxMmUzODI3MDhiMTdhMDk3MDg3NGRmODE3NWI4M2E4CiAKIGNvbmZfZmlsZXM9IgogCS9l dGMvZ2RtL2N1c3RvbS5jb25mCgpGcm9tIDAyOGQ1ZDZkZDE5OWIxZjNlOTA4NjQzZWJmODcyYWZi YjQwMTk3NjggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAxODoyNDowMiArMDUzMApTdWJqZWN0 OiBbUEFUQ0ggNDMvNTRdIGJ1ZGdpZS1kZXNrdG9wOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21l LWRlc2t0b3AtMy5zby4xOQoKLS0tCiAuLi4vcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0 LTE5MTgucGF0Y2ggfCAxMjcxMyArKysrKysrKysrKysrKysrCiBzcmNwa2dzL2J1ZGdpZS1kZXNr dG9wL3RlbXBsYXRlICAgICAgICAgICAgICAgfCAgICAgOSArLQogMiBmaWxlcyBjaGFuZ2VkLCAx MjcxOCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgu cGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVy LTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRj aGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMC4uYmZmMWJhZDAzOWYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBh dGNoCkBAIC0wLDAgKzEsMTI3MTMgQEAKK0Zyb20gOWQwOWExYjE1YmJmNjY3ODBjYzg5ZWZmM2M0 Yjg0ZTY2NmIwYmZkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IERhdmlkIE1vaGFt bWVkIDxmb3NzZnJlZWRvbUB1c2Vycy5ub3JlcGx5LmdpdGh1Yi5jb20+CitEYXRlOiBUdWUsIDE4 IEZlYiAyMDIwIDA2OjQwOjEyICswMDAwCitTdWJqZWN0OiBbUEFUQ0hdIE11dHRlciAzLjM2IHN1 cHBvcnQgKCMxOTE4KQorCisqIEFkZCBtdXR0ZXIgMy4zNS4yIHN1cHBvcnQKKworKiBNdXR0ZXIg Y29tcGlsZXIgZmxhZ3MgbmVlZHMgdG8gYmUgc3BlY2lmaWVkIGJlZm9yZSBkZXBlbmRlbmN5IGNo ZWNrcworCisqIFJlZ2VuZXJhdGUgdmFwaSBmb3IgMy4zNS45MAorCitPcmlnaW46IGh0dHBzOi8v Z2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9wL2NvbW1pdHMvOWQwOWExYjE1 YgorLS0tCisgc3JjL3dtL21lc29uLmJ1aWxkICAgICAgICAgICAgICAgIHwgICAxMiArLQorIHNy Yy93bS93bS52YWxhICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKy0KKyB2YXBpL0NsdXR0ZXIt Ni5tZXRhZGF0YSAgICAgICAgICAgfCAgMjA0ICsKKyB2YXBpL0NvZ2wtNi5tZXRhZGF0YSAgICAg ICAgICAgICAgfCAgIDI3ICsKKyB2YXBpL01ldGEtNi5tZXRhZGF0YSAgICAgICAgICAgICAgfCAg IDgwICsKKyB2YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgICAgfCAgNjkxICsrKworIHZh cGkvbGlibXV0dGVyLTYuZGVwcyAgICAgICAgICAgICB8ICAgIDYgKworIHZhcGkvbGlibXV0dGVy LTYudmFwaSAgICAgICAgICAgICB8IDE0NzUgKysrKysKKyB2YXBpL211dHRlci1jbHV0dGVyLTYt Y3VzdG9tLnZhbGEgfCAgMTQ3ICsKKyB2YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcyAgICAgICAg fCAgICA0ICsKKyB2YXBpL211dHRlci1jbHV0dGVyLTYudmFwaSAgICAgICAgfCA4Njg3ICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrCisgdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxh ICAgIHwgIDEyNSArCisgdmFwaS9tdXR0ZXItY29nbC02LmRlcHMgICAgICAgICAgIHwgICAgMSAr CisgdmFwaS9tdXR0ZXItY29nbC02LnZhcGkgICAgICAgICAgIHwgMTA3NyArKysrCisgMTQgZmls ZXMgY2hhbmdlZCwgMTI1NDkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKyBjcmVhdGUg bW9kZSAxMDA2NDQgdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQg dmFwaS9Db2dsLTYubWV0YWRhdGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9NZXRhLTYubWV0 YWRhdGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBp CisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbGlibXV0dGVyLTYuZGVwcworIGNyZWF0ZSBtb2Rl IDEwMDY0NCB2YXBpL2xpYm11dHRlci02LnZhcGkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9t dXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0 dGVyLWNsdXR0ZXItNi5kZXBzCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNsdXR0 ZXItNi52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20u dmFsYQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYuZGVwcworIGNyZWF0 ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYudmFwaQorCitkaWZmIC0tZ2l0IGEvc3Jj L3dtL21lc29uLmJ1aWxkIGIvc3JjL3dtL21lc29uLmJ1aWxkCitpbmRleCBlMzliODY3OC4uNGJj YzBmOWUgMTAwNjQ0CistLS0gYS9zcmMvd20vbWVzb24uYnVpbGQKKysrKyBiL3NyYy93bS9tZXNv bi5idWlsZAorQEAgLTI1LDExICsyNSwxOSBAQCBpZiBub3QgZGVwX211dHRlci5mb3VuZCgpCisg ICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVyLTQgQUJJIGZyb20gR05PTUUgMy4z MicpCisgICAgICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNCcKKyAgICAgZWxzZQorLSAg ICAgICAgZGVwX211dHRlciA9IGRlcGVuZGVuY3koJ2xpYm11dHRlci01JywgdmVyc2lvbjogZ25v bWVfbWluaW11bV92ZXJzaW9uKQorKyAgICAgICAgZGVwX211dHRlciA9IGRlcGVuZGVuY3koJ2xp Ym11dHRlci01JywgdmVyc2lvbjogZ25vbWVfbWluaW11bV92ZXJzaW9uLCByZXF1aXJlZDogZmFs c2UpCisrICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJncyArPSBbJy1EJywgJ0hBVkVf TVVUVEVSXzUnXQorICAgICAgICAgaWYgZGVwX211dHRlci5mb3VuZCgpCisgICAgICAgICAgICAg bWVzc2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci01IEFCSSBmcm9tIEdOT01FIDMuMzQnKQorICAg ICAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xpYm11dHRlci01JworLSAgICAgICAgICAgIGJ1ZGdp ZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFWRV9NVVRURVJfNSddCisrICAgICAg ICBlbHNlCisrICAgICAgICAgICAgZGVwX211dHRlciA9IGRlcGVuZGVuY3koJ2xpYm11dHRlci02 JywgdmVyc2lvbjogZ25vbWVfbWluaW11bV92ZXJzaW9uKQorKyAgICAgICAgICAgIGJ1ZGdpZV93 bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFWRV9NVVRURVJfNiddCisrICAgICAgICAg ICAgaWYgZGVwX211dHRlci5mb3VuZCgpCisrICAgICAgICAgICAgICAgIGRlcF9ncmFwaGVuZSA9 IGRlcGVuZGVuY3koJ2dyYXBoZW5lLWdvYmplY3QtMS4wJywgdmVyc2lvbjogJz49IDEuMTAnKQor KyAgICAgICAgICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVyLTYgQUJJIGZyb20g R05PTUUgMy4zNicpCisrICAgICAgICAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xpYm11dHRlci02 JworKyAgICAgICAgICAgIGVuZGlmCisgICAgICAgICBlbmRpZgorICAgICBlbmRpZgorIGVuZGlm CitkaWZmIC0tZ2l0IGEvc3JjL3dtL3dtLnZhbGEgYi9zcmMvd20vd20udmFsYQoraW5kZXggZmVl ODk0NDMuLmJiNDZjZDA2IDEwMDY0NAorLS0tIGEvc3JjL3dtL3dtLnZhbGEKKysrKyBiL3NyYy93 bS93bS52YWxhCitAQCAtMTM3LDggKzEzNywxMyBAQCBwdWJsaWMgY2xhc3MgQnVkZ2llV00gOiBN ZXRhLlBsdWdpbgorICAgICBwdWJsaWMgc3RhdGljIHN0cmluZ1tdPyBvbGRfYXJnczsKKyAgICAg cHVibGljIHN0YXRpYyBib29sIHdheWxhbmQgPSBmYWxzZTsKKyAKKysjaWYgSEFWRV9NVVRURVJf NgorKyAgICBzdGF0aWMgR3JhcGhlbmUuUG9pbnQgUFZfQ0VOVEVSOworKyAgICBzdGF0aWMgR3Jh cGhlbmUuUG9pbnQgUFZfTk9STTsKKysjZWxzZQorICAgICBzdGF0aWMgQ2x1dHRlci5Qb2ludCBQ Vl9DRU5URVI7CisgICAgIHN0YXRpYyBDbHV0dGVyLlBvaW50IFBWX05PUk07CisrI2VuZGlmCisg CisgICAgIHByaXZhdGUgTWV0YS5CYWNrZ3JvdW5kR3JvdXA/IGJhY2tncm91bmRfZ3JvdXA7Cisg CitAQCAtMTcxLDEwICsxNzYsMTUgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVn aW4KKyAgICAgICAgICAgICBsaWNlbnNlID0gIkdQTC0yLjAiLAorICAgICAgICAgICAgIGRlc2Ny aXB0aW9uID0gIkJ1ZGdpZSBXaW5kb3cgTWFuYWdlciIKKyAgICAgICAgIH07CisrI2lmIEhBVkVf TVVUVEVSXzYKKysgICAgICAgIFBWX0NFTlRFUiA9IEdyYXBoZW5lLlBvaW50KCk7CisrICAgICAg ICBQVl9OT1JNID0gR3JhcGhlbmUuUG9pbnQoKTsKKysjZWxzZQorICAgICAgICAgUFZfQ0VOVEVS ID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworKyAgICAgICAgUFZfTk9STSA9IENsdXR0ZXIuUG9p bnQuYWxsb2MoKTsKKysjZW5kaWYKKyAgICAgICAgIFBWX0NFTlRFUi54ID0gMC41ZjsKKyAgICAg ICAgIFBWX0NFTlRFUi55ID0gMC41ZjsKKy0gICAgICAgIFBWX05PUk0gPSBDbHV0dGVyLlBvaW50 LmFsbG9jKCk7CisgICAgICAgICBQVl9OT1JNLnggPSAwLjBmOworICAgICAgICAgUFZfTk9STS55 ID0gMC4wZjsKKyAgICAgfQorQEAgLTEwMDEsNyArMTAxMSwxMSBAQCBwdWJsaWMgY2xhc3MgQnVk Z2llV00gOiBNZXRhLlBsdWdpbgorICAgICAgICAgdGlsZV9wcmV2aWV3LnNldCgic2NhbGUteCIs IE5PVElGSUNBVElPTl9NQVBfU0NBTEVfWCwgInNjYWxlLXkiLCBOT1RJRklDQVRJT05fTUFQX1ND QUxFX1ksCisgICAgICAgICAgICAgInBpdm90LXBvaW50IiwgUFZfQ0VOVEVSKTsKKyAKKysjaWYg SEFWRV9NVVRURVJfNgorKyAgICAgICAgLy90aWxlX3ByZXZpZXcubG93ZXIod2luX2FjdG9yKTsK KysjZWxzZQorICAgICAgICAgdGlsZV9wcmV2aWV3Lmxvd2VyKHdpbl9hY3Rvcik7CisrI2VuZGlm CisgICAgICAgICB0aWxlX3ByZXZpZXcudGlsZV9yZWN0ID0gdGlsZV9yZWN0OworIAorICAgICAg ICAgdGlsZV9wcmV2aWV3LnNob3coKTsKK2RpZmYgLS1naXQgYS92YXBpL0NsdXR0ZXItNi5tZXRh ZGF0YSBiL3ZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5k ZXggMDAwMDAwMDAuLjhjMjZhMTIyCistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL0NsdXR0ZXIt Ni5tZXRhZGF0YQorQEAgLTAsMCArMSwyMDQgQEAKKysvLyBOb24gbWluaS1vYmplY3QKKytBY3Rv ckJveCBzdHJ1Y3QKKytDb2xvciBzdHJ1Y3QKKytGb2cgc3RydWN0CisrR2VvbWV0cnkgc3RydWN0 CisrS25vdCBzdHJ1Y3QKKytQYXRoTm9kZSBzdHJ1Y3QKKytQZXJzcGVjdGl2ZSBzdHJ1Y3QKKytV bml0cyBzdHJ1Y3QKKytWZXJ0ZXggc3RydWN0CisrCisrKi5yZWYgdW5vd25lZAorKworK2luaXQu YXJndiB1bm93bmVkCisraW5pdF93aXRoX2FyZ3MKKysJLmFyZ3YgdW5vd25lZAorK0FjdG9yCisr CS5hcHBseV90cmFuc2Zvcm0ubWF0cml4IHJlZgorKwkuZ2V0X2Fic19hbGxvY2F0aW9uX3ZlcnRp Y2VzLnZlcnRzIG91dD1mYWxzZQorKwkuZ2V0X2FsbG9jYXRpb25fdmVydGljZXMudmVydHMgb3V0 PWZhbHNlCisrQ2FudmFzCisrCS5uZXcgc3ltYm9sX3R5cGU9ImNvbnN0cnVjdG9yIgorK0V2ZW50 LnR5cGUjbWV0aG9kIG5hbWU9ImdldF90eXBlIgorK0ltYWdlCisrCS5uZXcgc3ltYm9sX3R5cGU9 ImNvbnN0cnVjdG9yIgorKworKy8vID8/PworK0FjdG9yLmhhc19wb2ludGVyI21ldGhvZCBuYW1l PSJnZXRfaGFzX3BvaW50ZXIiCisrSW5pdEVycm9yIGVycm9yZG9tYWluPWZhbHNlCisrCisrLy8g Tm90IGFsbCBiYWNraW5nIHN5bWJvbHMgYXJlIGRlcHJlY2F0ZWQKKytBY3Rvci5waWNrIGRlcHJl Y2F0ZWQ9ZmFsc2UKKysKKysvLyBOdWxsYWJsZSByZXR1cm4gdmFsdWVzCisrQWN0b3IKKysJLmdl dF9wYXJlbnQgbnVsbGFibGUKKyt2YWx1ZV9nZXRfY29sb3IgbnVsbGFibGUKKysKKysvLyBtZXRo b2QvdmlydHVhbC1tZXRob2Qvc2lnbmFsIGRvbid0IG1hdGNoCisrQWN0b3IKKysJLmV2ZW50I21l dGhvZCBuYW1lPSJlbWl0X2V2ZW50IgorKwkuZ2V0X3BhaW50X3ZvbHVtZSNtZXRob2Qgc2tpcAor KwkucXVldWVfcmVkcmF3I3NpZ25hbCBza2lwCisrCS5xdWV1ZV9yZWRyYXcjdmlydHVhbF9tZXRo b2Qgc2tpcAorK0NvbnRhaW5lcgorKwkuYWRkX2FjdG9yIHNraXA9ZmFsc2UKKytUZXh0CisrCS5h Y3RpdmF0ZSNtZXRob2QgbmFtZT0idHJ5X2FjdGl2YXRlIgorKwkuaW5zZXJ0X3RleHQjc2lnbmFs IHNraXAKKytUZXh0QnVmZmVyLmdldF90ZXh0I3ZpcnR1YWxfbWV0aG9kIG5hbWU9ImdldF90ZXh0 X3dpdGhfbGVuZ3RoIgorKworKy8vIHZpcnR1YWwvYWJzdHJhY3QgZGlzdGluY3Rpb24KKytDb250 YWluZXIKKysJLmxvd2VyIHZpcnR1YWwKKysJLnJhaXNlIHZpcnR1YWwKKysJLipfY2hpbGRfbWV0 YSN2aXJ0dWFsX21ldGhvZCB2aXJ0dWFsCisrCS5mb3JlYWNoX3dpdGhfaW50ZXJuYWxzI3ZpcnR1 YWxfbWV0aG9kIHZpcnR1YWwKKysKKysvLyBEZWZhdWx0IHZhbHVlcworK0NvbnRhaW5lcgorKwku bG93ZXIuc2libGluZyBudWxsYWJsZSBkZWZhdWx0PW51bGwKKysJLnJhaXNlLnNpYmxpbmcgbnVs bGFibGUgZGVmYXVsdD1udWxsCisrU3RhZ2UucmVhZF9waXhlbHMKKysJLndpZHRoIGRlZmF1bHQ9 LTEKKysJLmhlaWdodCBkZWZhdWx0PS0xCisrVGV4dAorKwkucG9zaXRpb25fdG9fY29vcmRzLmxp bmVfaGVpZ2h0IGRlZmF1bHQ9bnVsbAorKworKy8vIFJlcGFyZW50ZWQgZnVuY3MgbWV0aG9kcyBj YW4ndCBiZSBpbnN0YW5jZSBtZXRob2RzCisrZmVhdHVyZV9hdmFpbGFibGUgc2tpcAorK2ZlYXR1 cmVfZ2V0X2FsbCBza2lwCisrCisrLy8gU2tpcHBlZCBieSBnLWkgZm9yIHVua25vd24gcmVhc29u cworK0xheW91dE1hbmFnZXIKKysJLmNyZWF0ZV9jaGlsZF9tZXRhIHNraXA9ZmFsc2UKKysKKysv LyBWYXJpYWRpYyBhcmd1bWVudHMKKytBY3RvcgorKwkuYW5pbWF0ZSBza2lwPWZhbHNlCisrCS5h bmltYXRlX3dpdGhfYWxwaGEgc2tpcD1mYWxzZQorKwkuYW5pbWF0ZV93aXRoX3RpbWVsaW5lIHNr aXA9ZmFsc2UKKytCb3gKKysJLnBhY2sgc2tpcD1mYWxzZQorKwkucGFja19hZnRlciBza2lwPWZh bHNlCisrCS5wYWNrX2F0IHNraXA9ZmFsc2UKKysJLnBhY2tfYmVmb3JlIHNraXA9ZmFsc2UKKytD b250YWluZXIKKysJLmFkZF92YWxpc3Qgc2tpcD1mYWxzZQorKwkuY2hpbGRfZ2V0IHNraXA9ZmFs c2UKKysJLmNoaWxkX3NldCBza2lwPWZhbHNlCisrCS5yZW1vdmUgc2tpcD1mYWxzZQorKwkucmVt b3ZlX3ZhbGlzdCBza2lwPWZhbHNlCisrSW50ZXJ2YWwKKysJLm5ldyBza2lwPWZhbHNlCisrCS5n ZXRfaW50ZXJ2YWwgc2tpcD1mYWxzZQorKwkuc2V0X2ZpbmFsIHNraXA9ZmFsc2UKKysJLnNldF9p bml0aWFsIHNraXA9ZmFsc2UKKysJLnNldF9pbnRlcnZhbCBza2lwPWZhbHNlCisrTGF5b3V0TWFu YWdlcgorKwkuY2hpbGRfZ2V0IHNraXA9ZmFsc2UKKysJLmNoaWxkX3NldCBza2lwPWZhbHNlCisr U2NyaXB0CisrCS5nZXRfb2JqZWN0cyBza2lwPWZhbHNlCisrCisrLy8gQ2hhbmdpbmcgZXJyb3Ig ZG9tYWlucworK1RleHR1cmUKKysJLm5ld19mcm9tX2ZpbGUgdGhyb3dzPSJDbHV0dGVyLlRleHR1 cmVFcnJvciIKKysKKysvLyBTa2lwcGVkIHVwc3RyZWFtIGZvciB1bmtub3duIHJlYXNvbnMKKytB bHBoYS5yZWdpc3Rlcl9mdW5jIHNraXA9ZmFsc2UKKytJbnRlcnZhbC5yZWdpc3Rlcl9wcm9ncmVz c19mdW5jIHNraXA9ZmFsc2UKKytnZXRfb3B0aW9uX2dyb3VwIHNraXA9ZmFsc2UKKytnZXRfb3B0 aW9uX2dyb3VwX3dpdGhvdXRfaW5pdCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfaWRsZSBza2lw PWZhbHNlCisrdGhyZWFkc19hZGRfaWRsZV9mdWxsIHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF90 aW1lb3V0IHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF90aW1lb3V0X2Z1bGwgc2tpcD1mYWxzZQor KworKy8vIHN0cnVjdC9jbGFzcyBjb25mdXNpb24KKytBY3RvckJveAorKwkubmV3IHNraXAKKysJ LmZyb21fdmVydGljZXMgc2tpcAorK1VuaXRzLmZyb21fKiBza2lwCisrQ29sb3IKKysJLm5ldyBz a2lwCisrVmVydGV4Lm5ldyBza2lwCisrCisrLy8gQ2xhc3MgbWV0aG9kcworK2NvbnRhaW5lcl9j bGFzc19maW5kX2NoaWxkX3Byb3BlcnR5IHNraXAKKytjb250YWluZXJfY2xhc3NfbGlzdF9jaGls ZF9wcm9wZXJ0aWVzIHNraXAKKysKKysvLyBNb3ZlIHN5bWJvbHMKKytnZXRfYWN0b3JfYnlfZ2lk IHBhcmVudD0iQ2x1dHRlci5BY3RvciIgbmFtZT0iZ2V0X2J5X2dpZCIKKyt1bml0c19mcm9tXyog c2tpcAorKworKy8vIENsYXNzZXMgbWFya2VkIGFzIG91dCBidXQgbm90IGRvdWJsZSBwdHIKKytB Y3RvcgorKwkuZ2V0X21hcmdpbi5tYXJnaW4gb3V0PWZhbHNlCisrRHJhZ0FjdGlvbgorKwkuZ2V0 X2RyYWdfYXJlYS5kcmFnX2FyZWEgb3V0PWZhbHNlCisrSW5wdXREZXZpY2UKKysJLmdldF9jb29y ZHMucG9pbnQgb3V0PWZhbHNlCisrUmVjdAorKwkuZ2V0X2NlbnRlci5jZW50ZXIgb3V0PWZhbHNl CisrCS5pbnRlcnNlY3Rpb24ucmVzIG91dD1mYWxzZQorKwkudW5pb24ucmVzIG91dD1mYWxzZQor K1RpbWVsaW5lCisrCS5nZXRfY3ViaWNfYmV6aWVyX3Byb2dyZXNzLmNfKiBvdXQ9ZmFsc2UKKyta b29tQWN0aW9uCisrCS5nZXRfZm9jYWxfcG9pbnQucG9pbnQgb3V0PWZhbHNlCisrCS5nZXRfdHJh bnNmb3JtZWRfZm9jYWxfcG9pbnQucG9pbnQgb3V0PWZhbHNlCisrCisrLy8gU3RydWN0IHJldHVy biB2YWx1ZXMKKytjb2xvcl9nZXRfc3RhdGljIG51bGxhYmxlCisrCisrLy8gUmVtb3ZlIGZvciBj bHV0dGVyLTIuMAorKy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KKysKKytTdGFnZQorKyAJLmV2 ZW50IG5hbWU9ImVtaXRfZXZlbnQiCisrCisrLy8gKkV2ZW50IHNob3VsZCBiZSBjb21wYWN0IGNs YXNzZXMgZGVyaXZlZCBmcm9tIENsdXR0ZXIuRXZlbnQKKytFdmVudC50eXBlIHNraXA9ZmFsc2UK KytBbnlFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK0J1dHRv bkV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrQ3Jvc3NpbmdF dmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK0tleUV2ZW50IHN0 cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrTW90aW9uRXZlbnQgc3RydWN0 PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytTY3JvbGxFdmVudCBzdHJ1Y3Q9ZmFs c2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1N0YWdlU3RhdGVFdmVudCBzdHJ1Y3Q9ZmFs c2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNoRXZlbnQgc3RydWN0PWZhbHNlIGJh c2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaHBhZFBpbmNoRXZlbnQgc3RydWN0PWZhbHNl IGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaHBhZFN3aXBlRXZlbnQgc3RydWN0PWZh bHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKysKKysvLyBLZXlzeW1zIHVzZWQgdG8gYmUg Q0xVVFRFUl9YIGluc3RlYWQgb2YgQ0xVVFRFUl9LRVlfWAorKyojY29uc3RhbnQgc2tpcAorK0NP R0wgc2tpcD1mYWxzZQorK0NVUlJFTlRfVElNRSBza2lwPWZhbHNlCisrRkxBVk9VUiBza2lwPWZh bHNlCisrUEFUSF9SRUxBVElWRSBza2lwPWZhbHNlCisrUFJJT1JJVFlfUkVEUkFXIHNraXA9ZmFs c2UKKysKKysvLyBDbHV0dGVyIGRldnMgZG9uJ3QgbGlrZSB1cyBjcmVhdGluZyBuZXN0ZWQgbmFt ZXNwYWNlcworK3ZhbHVlXyogbmFtZT0idmFsdWVfKC4rKSIgcGFyZW50PSJDbHV0dGVyLlZhbHVl IgorK3RocmVhZHNfKiBuYW1lPSJ0aHJlYWRzXyguKykiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRz IgorK3RocmVhZHNfYWRkX2lkbGUgbmFtZT0iYWRkIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcy5J ZGxlIgorK3RocmVhZHNfYWRkX2lkbGVfZnVsbCBuYW1lPSJhZGRfZnVsbCIgcGFyZW50PSJDbHV0 dGVyLlRocmVhZHMuSWRsZSIKKyt0aHJlYWRzX2FkZF90aW1lb3V0IG5hbWU9ImFkZCIgcGFyZW50 PSJDbHV0dGVyLlRocmVhZHMuVGltZW91dCIKKyt0aHJlYWRzX2FkZF90aW1lb3V0X2Z1bGwgbmFt ZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLlRpbWVvdXQiCisrCisrLy8gQmFj a3dhcmRzIGNvbXBhdGliaWxpdHkKKytDb2xvci5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24i CisrUG9pbnQuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1JlY3QuYWxsb2Mgc3ltYm9s X3R5cGU9ImZ1bmN0aW9uIgorK1NpemUuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1Zl cnRleC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrCisrQmluQWxpZ25tZW50IGRlcHJl Y2F0ZWQ9ZmFsc2UgZGVwcmVjYXRlZF9zaW5jZT1udWxsCisrQmluQWxpZ25tZW50LiogZGVwcmVj YXRlZAorK0JpbkFsaWdubWVudC5zdGFydCBkZXByZWNhdGVkPWZhbHNlCisrQmluTGF5b3V0Lm5l dy4qX2FsaWduIGRlZmF1bHQ9Q2x1dHRlci5CaW5BbGlnbm1lbnQuU1RBUlQKKysKKysvLyBQb3Nz aWJseSBrZWVwCisrS0VZXyogc2tpcD1mYWxzZSBuYW1lPSJLRVlfKC4rKSIgdHlwZT0idWludCIg cGFyZW50PSJDbHV0dGVyLktleSIKK2RpZmYgLS1naXQgYS92YXBpL0NvZ2wtNi5tZXRhZGF0YSBi L3ZhcGkvQ29nbC02Lm1ldGFkYXRhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAw MDAuLjA5MmI1ZTI5CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL0NvZ2wtNi5tZXRhZGF0YQor QEAgLTAsMCArMSwyNyBAQAorK0NvZ2wgY2hlYWRlcl9maWxlbmFtZT0iY29nbC9jb2dsLmgiCisr CisrQ29sb3Igc3RydWN0CisrICAubmV3IHNraXAKKysgIC5mcmVlIHNraXAKKysKKytjcmVhdGVf cHJvZ3JhbSBza2lwCisrY3JlYXRlX3NoYWRlciBza2lwCisrCisrCisraXNfYml0bWFwIHNraXAK Kytpc19tYXRlcmlhbCBza2lwCisraXNfb2Zmc2NyZWVuIHNraXAKKytpc19wcm9ncmFtIHNraXAK Kytpc19zaGFkZXIgc2tpcAorK2lzX3RleHR1cmUgc2tpcAorK2lzX3ZlcnRleF9idWZmZXIgc2tp cAorKworK01hdHJpeCBzdHJ1Y3QKKysgIC5nZXRfYXJyYXkgYXJyYXk9dHJ1ZSBhcnJheV9sZW5n dGhfaWR4PS0xCisrICAuZ2V0X2ludmVyc2UuaW52ZXJzZSBvdXQ9dHJ1ZQorKyAgLm11bHRpcGx5 IHNraXAKKysgIC5pbml0X2Zyb21fYXJyYXkgc2tpcAorKyAgLmluaXRfaWRlbnRpdHkgc2tpcAor KyAgLnRyYW5zZm9ybV9wb2ludC4qIHJlZj10cnVlCisrCisrcHJvZ3JhbV8qIHNraXAKK2RpZmYg LS1naXQgYS92YXBpL01ldGEtNi5tZXRhZGF0YSBiL3ZhcGkvTWV0YS02Lm1ldGFkYXRhCituZXcg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjFkOTg0Nzc4CistLS0gL2Rldi9udWxs CisrKysgYi92YXBpL01ldGEtNi5tZXRhZGF0YQorQEAgLTAsMCArMSw4MCBAQAorK0JhY2tlbmQg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tlbmQuaCIKKytCYWNrZ3JvdW5kIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLmgiCisrQmFja2dyb3VuZEFjdG9yIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWFjdG9yLmgiCisrQmFja2dyb3Vu ZEdyb3VwIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWdyb3VwLmgiCisr QmFja2dyb3VuZEltYWdlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWlt YWdlLmgiCisrQmFja2dyb3VuZEltYWdlQ2FjaGUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRh LWJhY2tncm91bmQtaW1hZ2UuaCIKKytCYXJyaWVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvYmFy cmllci5oIgorK0JhcnJpZXJFdmVudCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2JhcnJpZXIuaCIK KytDbG9zZURpYWxvZyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtY2xvc2UtZGlhbG9nLmgi CisrQ3Vyc29yVHJhY2tlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtY3Vyc29yLXRyYWNr ZXIuaCIKKytEaXNwbGF5IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvZGlzcGxheS5oIgorK0RuZCBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtZG5kLmgiCisrSWRsZU1vbml0b3IgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9tZXRhLWlkbGUtbW9uaXRvci5oIgorK0luaGliaXRTaG9ydGN1dHNEaWFs b2cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWluaGliaXQtc2hvcnRjdXRzLWRpYWxvZy5o IgorK0xhdW5jaENvbnRleHQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWxhdW5jaC1jb250 ZXh0LmgiCisrTWV0YSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21haW4uaCIKKytNb25pdG9yTWFu YWdlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtbW9uaXRvci1tYW5hZ2VyLmgiCisrUHJl ZmVyZW5jZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3ByZWZzLmgiCisrUmVtb3RlQWNjZXNzQ29u dHJvbGxlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9s bGVyLmgiCisrUmVtb3RlQWNjZXNzSGFuZGxlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1y ZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIKKytTZXR0aW5ncyBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL21ldGEtc2V0dGluZ3MuaCIKKytTaGFkb3dGYWN0b3J5IGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1zaGFkb3ctZmFjdG9yeS5oIgorK1NoYXBlZFRleHR1cmUgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tZXRhLXNoYXBlZC10ZXh0dXJlLmgiCisrU291bmRQbGF5ZXIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tZXRhLXNvdW5kLXBsYXllci5oIgorK1N0YWdlIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvbWV0YS1zdGFnZS5oIgorK1N0YXJ0dXBOb3RpZmljYXRpb24gY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tZXRhLXN0YXJ0dXAtbm90aWZpY2F0aW9uLmgiCisrVGhlbWUgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS90aGVtZS5oIgorK1dpbmRvdyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3dpbmRv dy5oIgorK1dpbmRvd0FjdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctYWN0 b3IuaCIKKytXaW5kb3dHcm91cCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93LWdy b3VwLmgiCisrV2luZG93U2hhcGUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1z aGFwZS5oIgorK1dvcmtzcGFjZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3dvcmtzcGFjZS5oIgor K1dvcmtzcGFjZU1hbmFnZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdvcmtzcGFjZS1t YW5hZ2VyLmgiCisrWDExRGlzcGxheSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEteDExLWRp c3BsYXkuaCIKKytSZWN0YW5nbGUgc3RydWN0CisrUGx1Z2luIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1wbHVnaW4uaCIKKytQbHVnaW5JbmZvIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0 YS1wbHVnaW4uaCIKKytwcmVmc18qIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvcHJlZnMuaCIgcGFy ZW50PSJNZXRhLlByZWZzIgorK2FkZF92ZXJib3NlX3RvcGljIHBhcmVudD0iTWV0YS5VdGlsIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9wb3AgcGFyZW50 PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3gxMV9lcnJvcl90 cmFwX3B1c2ggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK3gxMV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZXh0ZXJuYWxfYmluZGluZ19uYW1lX2Zvcl9h Y3Rpb24gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgor K2dldF9sb2NhbGVfZGlyZWN0aW9uIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL3V0aWwuaCIKKytncmF2aXR5X3RvX3N0cmluZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfZGVidWdnaW5nIHBhcmVudD0iTWV0YS5V dGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc19zeW5jaW5nIHBhcmVudD0i TWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc192ZXJib3NlIHBh cmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc193YXls YW5kX2NvbXBvc2l0b3IgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK2xhdGVyX2FkZCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS91dGlsLmgiCisrbGF0ZXJfcmVtb3ZlIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL3V0aWwuaCIKKytwb3Bfbm9fbXNnX3ByZWZpeCBwYXJlbnQ9Ik1ldGEuVXRp bCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcHVzaF9ub19tc2dfcHJlZml4IHBh cmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytyZWN0IHBh cmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytyZW1vdmVf dmVyYm9zZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91 dGlsLmgiCisrdW5zaWduZWRfbG9uZ19lcXVhbCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS91dGlsLmgiCisrdW5zaWduZWRfbG9uZ19oYXNoIHBhcmVudD0iTWV0YS5V dGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytzaG93X2RpYWxvZyBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZ2V0X3N0YWdlX2Zv cl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dpbmRvd19hY3RvcnMgcGFyZW50PSJNZXRhLkNv bXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytn ZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3RvcF93aW5kb3df Z3JvdXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfZmVlZGJhY2tfZ3JvdXBfZm9yX2Rp c3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29t cG9zaXRvci1tdXR0ZXIuaCIKKytkaXNhYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkgcGFyZW50 PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0 ZXIuaCIKKytlbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9z aXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK3NldF9z dGFnZV9pbnB1dF9yZWdpb24gcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytlbXB0eV9zdGFnZV9pbnB1dF9yZWdpb24g cGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRv ci1tdXR0ZXIuaCIKKytmb2N1c19zdGFnZV93aW5kb3cgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3Ii IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytrZXliaW5kaW5n c19zZXRfY3VzdG9tX2hhbmRsZXIgcGFyZW50PSJNZXRhLktleUJpbmRpbmciIG5hbWU9InNldF9j dXN0b21faGFuZGxlciIKKytLZXlIYW5kbGVyRnVuYy5ldmVudCB0eXBlPSJDbHV0dGVyLktleUV2 ZW50PyIKKytnZXRfYmFja2VuZCBwYXJlbnQ9Ik1ldGEuQmFja2VuZCIKKytXaW5kb3cuZm9jdXMj c2lnbmFsIHNraXA9dHJ1ZQorK1dpbmRvdy5nZXRfeHdpbmRvdyBza2lwPWZhbHNlCisrZ2V0X29w dGlvbl9jb250ZXh0IHNraXA9ZmFsc2UKKytzZXRfZ25vbWVfd21fa2V5YmluZGluZ3Mgc2tpcD1m YWxzZQorK3NldF93bV9uYW1lIHNraXA9ZmFsc2UKKytpbml0IHNraXA9ZmFsc2UKKytydW4gc2tp cD1mYWxzZQorK3Nob3dfZGlhbG9nIHNraXA9ZmFsc2UKKytnZXRfYmFja2VuZCBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtYmFja2VuZC5oIgorZGlmZiAtLWdpdCBhL3ZhcGkvZ3JhcGhlbmUt Z29iamVjdC0xLjAudmFwaSBiL3ZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorbmV3IGZp bGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi42OTgwMTUzNQorLS0tIC9kZXYvbnVsbAor KysrIGIvdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpCitAQCAtMCwwICsxLDY5MSBAQAor Ky8qIGdyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5v dCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJlZml4ID0gIkdyYXBoZW5lIiwgZ2lyX25hbWVz cGFjZSA9ICJHcmFwaGVuZSIsIGdpcl92ZXJzaW9uID0gIjEuMCIsIGxvd2VyX2Nhc2VfY3ByZWZp eCA9ICJncmFwaGVuZV8iKV0KKytuYW1lc3BhY2UgR3JhcGhlbmUgeworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfYm94 X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2JveF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgQm94IHsKKysJCXB1YmxpYyBib29sIGNv bnRhaW5zX2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9p bnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdy YXBoZW5lLkJveD8gZW1wdHkgKCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuQm94 IGIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmQgKEdyYXBoZW5lLlBvaW50M0QgcG9p bnQpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmRfc2NhbGFyIChmbG9hdCBzY2FsYXIp OworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmRfdmVjMyAoR3JhcGhlbmUuVmVjMyB2ZWMp OworKwkJcHVibGljIEdyYXBoZW5lLlNwaGVyZSBnZXRfYm91bmRpbmdfc3BoZXJlICgpOworKwkJ cHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X2NlbnRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfZGVwdGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludDNEIGdldF9tYXggKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBn ZXRfbWluICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3NpemUgKCk7CisrCQlwdWJs aWMgdm9pZCBnZXRfdmVydGljZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYg R3JhcGhlbmUuVmVjMyB2ZXJ0aWNlc1s4XSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5maW5pdGUgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXQgKEdyYXBoZW5lLlBvaW50M0Q/IG1p biwgR3JhcGhlbmUuUG9pbnQzRD8gbWF4KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJv eD8gaW5pdF9mcm9tX2JveCAoR3JhcGhlbmUuQm94IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5Cb3g/IGluaXRfZnJvbV9wb2ludHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1l ID0gIm5fcG9pbnRzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUg PSAiZ3VpbnQiKV0gR3JhcGhlbmUuUG9pbnQzRFtdIHBvaW50cyk7CisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyBtaW4sIEdyYXBo ZW5lLlZlYzM/IG1heCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJv bV92ZWN0b3JzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3ZlY3RvcnMiLCBhcnJh eV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHcmFwaGVu ZS5WZWMzW10gdmVjdG9ycyk7CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3Rpb24gKEdyYXBoZW5l LkJveCBiLCBvdXQgR3JhcGhlbmUuQm94IHJlcyk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuQm94PyBtaW51c19vbmUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuQm94PyBvbmUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94 PyBvbmVfbWludXNfb25lICgpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCB1bmlvbiAoR3JhcGhl bmUuQm94IGIpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gemVybyAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5o IiwgY25hbWUgPSAiZ3JhcGhlbmVfZXVsZXJfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfZXVsZXJf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3Ry dWN0IEV1bGVyIHsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5FdWxlciBiKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FscGhhICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYmV0 YSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0 X2dhbW1hICgpOworKwkJcHVibGljIEdyYXBoZW5lLkV1bGVyT3JkZXIgZ2V0X29yZGVyICgpOwor KwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJ cHVibGljIGZsb2F0IGdldF96ICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/ IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuRXVsZXI/IGluaXRfZnJvbV9ldWxlciAoR3JhcGhlbmUuRXVsZXI/IHNyYyk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUu TWF0cml4PyBtLCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcXVhdGVybmlvbiAoR3JhcGhlbmUuUXVhdGVybmlv bj8gcSwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9yYWRp YW5zIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVy KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fdmVjMyAoR3Jh cGhlbmUuVmVjMz8gdiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF93aXRoX29yZGVyIChmbG9hdCB4LCBmbG9hdCB5LCBm bG9hdCB6LCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5F dWxlciByZW9yZGVyIChHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5NYXRyaXggdG9fbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHRvX3F1YXRlcm5pb24gKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9mcnVzdHVtX3Qi LCB0eXBlX2lkID0gImdyYXBoZW5lX2ZydXN0dW1fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IEZydXN0dW0geworKwkJcHVibGljIGJv b2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkZydXN0dW0g Yik7CisrCQlwdWJsaWMgdm9pZCBnZXRfcGxhbmVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gcmVmIEdyYXBoZW5lLlBsYW5lIHBsYW5lc1s2XSk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5GcnVzdHVtPyBpbml0IChHcmFwaGVuZS5QbGFuZSBwMCwgR3JhcGhlbmUuUGxhbmUg cDEsIEdyYXBoZW5lLlBsYW5lIHAyLCBHcmFwaGVuZS5QbGFuZSBwMywgR3JhcGhlbmUuUGxhbmUg cDQsIEdyYXBoZW5lLlBsYW5lIHA1KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkZydXN0 dW0/IGluaXRfZnJvbV9mcnVzdHVtIChHcmFwaGVuZS5GcnVzdHVtIHNyYyk7CisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVuZS5NYXRy aXggbWF0cml4KTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfYm94IChHcmFwaGVuZS5Cb3gg Ym94KTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUg c3BoZXJlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29i amVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfbWF0cml4X3QiLCB0eXBlX2lkID0gImdyYXBoZW5l X21hdHJpeF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7CisrCQlwdWJs aWMgYm9vbCBkZWNvbXBvc2UgKG91dCBHcmFwaGVuZS5WZWMzIHRyYW5zbGF0ZSwgb3V0IEdyYXBo ZW5lLlZlYzMgc2NhbGUsIG91dCBHcmFwaGVuZS5RdWF0ZXJuaW9uIHJvdGF0ZSwgb3V0IEdyYXBo ZW5lLlZlYzMgc2hlYXIsIG91dCBHcmFwaGVuZS5WZWM0IHBlcnNwZWN0aXZlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBkZXRlcm1pbmFudCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhl bmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBi b29sIGVxdWFsX2Zhc3QgKEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF9yb3cgKHVpbnQgaW5kZXhfKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmFsdWUg KHVpbnQgcm93LCB1aW50IGNvbCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3hfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGZsb2F0IGdldF94X3RyYW5zbGF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95X3NjYWxlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeV90cmFuc2xhdGlvbiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfel9z Y2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQg Z2V0X3pfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV8yZCAoZG91YmxlIHh4LCBk b3VibGUgeXgsIGRvdWJsZSB4eSwgZG91YmxlIHl5LCBkb3VibGUgeF8wLCBkb3VibGUgeV8wKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l Lk1hdHJpeD8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0g ZmxvYXQgdlsxNl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVuZS5NYXRyaXgg c3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgdjAsIEdyYXBoZW5l LlZlYzQgdjEsIEdyYXBoZW5lLlZlYzQgdjIsIEdyYXBoZW5lLlZlYzQgdjMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBp bml0X2ZydXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0 IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfaWRlbnRpdHkg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5NYXRyaXg/IGluaXRfbG9va19hdCAoR3JhcGhlbmUuVmVjMyBleWUsIEdyYXBoZW5lLlZl YzMgY2VudGVyLCBHcmFwaGVuZS5WZWMzIHVwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9vcnRobyAoZmxvYXQg bGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IHRvcCwgZmxvYXQgYm90dG9tLCBmbG9hdCB6X25lYXIs IGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9wZXJzcGVjdGl2ZSAoZmxvYXQgZm92eSwgZmxv YXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9yb3Rh dGUgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3NjYWxl IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9za2V3IChmbG9hdCB4 X3NrZXcsIGZsb2F0IHlfc2tldyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfdHJhbnNsYXRlIChHcmFwaGVuZS5Q b2ludDNEIHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLk1hdHJpeCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuTWF0cml4IGIsIGRvdWJsZSBmYWN0b3Ip OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaW52ZXJzZSAo b3V0IEdyYXBoZW5lLk1hdHJpeCByZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGJvb2wgaXNfMmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgYm9vbCBpc19iYWNrZmFjZV92aXNpYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfaWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19zaW5ndWxhciAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggbXVsdGlwbHkg KEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5NYXRyaXggYiwgZmxvYXQgZXBzaWxvbik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IG5vcm1h bGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5NYXRyaXggcGVyc3BlY3RpdmUgKGZsb2F0IGRlcHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHByaW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHByb2plY3RfcG9pbnQgKEdyYXBoZW5l LlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlF1YWQgcHJvamVjdF9yZWN0IChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgcHJvamVjdF9yZWN0X2JvdW5k cyAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5nbGUsIEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfZXVsZXIgKEdy YXBoZW5lLkV1bGVyIGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IHZvaWQgcm90YXRlX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24gcSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfeCAoZmxvYXQgYW5n bGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRl X3kgKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHJvdGF0ZV96IChmbG9hdCBhbmdsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgZmFjdG9yX3gsIGZsb2F0IGZhY3Rvcl95 LCBmbG9hdCBmYWN0b3Jfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdm9pZCBza2V3X3h5IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHZvaWQgc2tld194eiAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNrZXdfeXogKGZsb2F0IGZhY3Rvcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCB0b18yZCAob3V0 IGRvdWJsZSB4eCwgb3V0IGRvdWJsZSB5eCwgb3V0IGRvdWJsZSB4eSwgb3V0IGRvdWJsZSB5eSwg b3V0IGRvdWJsZSB4XzAsIG91dCBkb3VibGUgeV8wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gcmVmIGZsb2F0IHZbMTZdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5SZWN0IHRyYW5zZm9ybV9ib3VuZHMgKEdyYXBoZW5lLlJlY3Qgcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IHRy YW5zZm9ybV9ib3ggKEdyYXBoZW5lLkJveCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCB0cmFuc2Zvcm1fcG9pbnQgKEdyYXBoZW5lLlBv aW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5l LlBvaW50M0QgdHJhbnNmb3JtX3BvaW50M2QgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5IHRyYW5zZm9ybV9y YXkgKEdyYXBoZW5lLlJheSByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5RdWFkIHRyYW5zZm9ybV9yZWN0IChHcmFwaGVuZS5SZWN0IHIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlNwaGVyZSB0cmFu c2Zvcm1fc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0cmFuc2Zvcm1fdmVjMyAoR3JhcGhlbmUu VmVjMyB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWM0IHRyYW5zZm9ybV92ZWM0IChHcmFwaGVuZS5WZWM0IHYpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNsYXRlIChHcmFwaGVuZS5Qb2ludDNE IHBvcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUu TWF0cml4IHRyYW5zcG9zZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHVucHJvamVjdF9wb2ludDNkIChHcmFwaGVuZS5NYXRyaXgg bW9kZWx2aWV3LCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHVudHJhbnNmb3JtX2JvdW5kcyAoR3Jh cGhlbmUuUmVjdCByLCBHcmFwaGVuZS5SZWN0IGJvdW5kcyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCB1bnRyYW5zZm9ybV9wb2ludCAoR3JhcGhlbmUuUG9p bnQgcCwgR3JhcGhlbmUuUmVjdCBib3VuZHMsIG91dCBHcmFwaGVuZS5Qb2ludCByZXMpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV9wbGFuZV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wbGFuZV9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgUGxh bmUgeworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsK KysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5QbGFuZSBiKTsKKysJCXB1YmxpYyBmbG9h dCBnZXRfY29uc3RhbnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfbm9ybWFsICgp OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXQgKEdyYXBoZW5lLlZlYzM/ IG5vcm1hbCwgZmxvYXQgY29uc3RhbnQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxh bmU/IGluaXRfZnJvbV9wbGFuZSAoR3JhcGhlbmUuUGxhbmUgc3JjKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcG9pbnQgKEdyYXBoZW5lLlZlYzMgbm9ybWFs LCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBs YW5lPyBpbml0X2Zyb21fcG9pbnRzIChHcmFwaGVuZS5Qb2ludDNEIGEsIEdyYXBoZW5lLlBvaW50 M0QgYiwgR3JhcGhlbmUuUG9pbnQzRCBjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBs YW5lPyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBzcmMpOworKwkJcHVibGljIEdyYXBo ZW5lLlBsYW5lIG5lZ2F0ZSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBub3JtYWxpemUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBs YW5lIHRyYW5zZm9ybSAoR3JhcGhlbmUuTWF0cml4IG1hdHJpeCwgR3JhcGhlbmUuTWF0cml4PyBu b3JtYWxfbWF0cml4KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcG9pbnRfdCIsIHR5cGVfaWQgPSAiZ3Jh cGhlbmVfcG9pbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RydWN0IFBvaW50IHsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZs b2F0IHk7CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50IGIsIG91dCBm bG9hdCBkX3gsIG91dCBmbG9hdCBkX3kpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5l LlBvaW50IGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGluaXQgKGZsb2F0 IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGluaXRfZnJv bV9wb2ludCAoR3JhcGhlbmUuUG9pbnQgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0X2Zyb21fdmVjMiAoR3Jh cGhlbmUuVmVjMiBzcmMpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGludGVycG9sYXRlIChH cmFwaGVuZS5Qb2ludCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBib29sIG5lYXIgKEdy YXBoZW5lLlBvaW50IGIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgdG9fdmVjMiAoKTsKKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcG9p bnQzZF90IiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInBvaW50M2QiLCB0eXBlX2lkID0gImdyYXBo ZW5lX3BvaW50M2RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RydWN0IFBvaW50M0QgeworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMg ZmxvYXQgeTsKKysJCXB1YmxpYyBmbG9hdCB6OworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qg Y3Jvc3MgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50M0QgYiwgb3V0IEdyYXBo ZW5lLlZlYzMgZGVsdGEpOworKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuUG9pbnQzRCBi KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Qb2ludDNEIGIpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg eik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0X2Zyb21fcG9pbnQg KEdyYXBoZW5lLlBvaW50M0Qgc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50 M0Q/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzIHYpOworKwkJcHVibGljIEdyYXBoZW5l LlBvaW50M0QgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlBvaW50M0QgYiwgZG91YmxlIGZhY3Rvcik7 CisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhl bmUuUG9pbnQzRCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNE IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludDNEIG5vcm1hbGl6ZV92aWV3cG9ydCAoR3JhcGhlbmUuUmVjdCB2aWV3cG9y dCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQz RCBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHRvX3ZlYzMg KCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8gemVybyAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiZ3JhcGhlbmVfcXVhZF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9xdWFkX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBR dWFkIHsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGJvdW5kcyAoKTsKKysJCXB1YmxpYyBib29s IGNvbnRhaW5zIChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlBvaW50PyBnZXRfcG9pbnQgKHVpbnQgaW5kZXhfKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlF1YWQ/IGluaXQgKEdyYXBoZW5lLlBvaW50IHAxLCBHcmFwaGVuZS5Qb2ludCBwMiwgR3Jh cGhlbmUuUG9pbnQgcDMsIEdyYXBoZW5lLlBvaW50IHA0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YWQ/IGluaXRfZnJvbV9wb2lu dHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHcmFwaGVuZS5Qb2ludCBwb2ludHNb NF0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhZD8gaW5pdF9mcm9tX3JlY3QgKEdy YXBoZW5lLlJlY3Qgcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3F1YXRlcm5pb25fdCIsIHR5cGVfaWQg PSAiZ3JhcGhlbmVfcXVhdGVybmlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhdGVybmlvbiB7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gYWRkIChHcmFwaGVu ZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuUXVhdGVybmlv biBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdCAoZmxvYXQgeCwgZmxvYXQg eSwgZmxvYXQgeiwgZmxvYXQgdyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJu aW9uPyBpbml0X2Zyb21fYW5nbGVfdmVjMyAoZmxvYXQgYW5nbGUsIEdyYXBoZW5lLlZlYzMgYXhp cyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fYW5n bGVzIChmbG9hdCBkZWdfeCwgZmxvYXQgZGVnX3ksIGZsb2F0IGRlZ196KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/ IGluaXRfZnJvbV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZSk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVuZS5NYXRyaXggbSk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fcXVhdGVy bmlvbiAoR3JhcGhlbmUuUXVhdGVybmlvbiBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3JhZGlhbnMgKGZsb2F0IHJhZF94LCBmbG9hdCByYWRf eSwgZmxvYXQgcmFkX3opOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8g aW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlF1YXRlcm5pb24/IGluaXRfaWRlbnRpdHkgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu UXVhdGVybmlvbiBpbnZlcnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gbXVsdGlwbHkgKEdyYXBoZW5lLlF1YXRlcm5pb24g Yik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBub3JtYWxpemUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gc2Nh bGUgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBzbGVycCAo R3JhcGhlbmUuUXVhdGVybmlvbiBiLCBmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIHZvaWQgdG9f YW5nbGVfdmVjMyAob3V0IGZsb2F0IGFuZ2xlLCBvdXQgR3JhcGhlbmUuVmVjMyBheGlzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2FuZ2xlcyAob3V0 IGZsb2F0IGRlZ194LCBvdXQgZmxvYXQgZGVnX3ksIG91dCBmbG9hdCBkZWdfeik7CisrCQlwdWJs aWMgR3JhcGhlbmUuTWF0cml4IHRvX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2b2lkIHRvX3JhZGlhbnMgKG91dCBmbG9hdCByYWRfeCwgb3V0IGZs b2F0IHJhZF95LCBvdXQgZmxvYXQgcmFkX3opOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgdG9f dmVjNCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29i amVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmF5X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3Jh eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBz dHJ1Y3QgUmF5IHsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5SYXkgYik7CisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfY2xvc2VzdF9wb2ludF90b19wb2ludCAoR3JhcGhl bmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9kaXJlY3Rpb24gKCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rpc3RhbmNlX3RvX3BsYW5lIChHcmFwaGVuZS5QbGFuZSBw KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2VfdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50 M0QgcCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfb3JpZ2luICgpOworKwkJcHVi bGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X3Bvc2l0aW9uX2F0IChmbG9hdCB0KTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdCAoR3JhcGhlbmUuUG9pbnQzRD8gb3JpZ2luLCBH cmFwaGVuZS5WZWMzPyBkaXJlY3Rpb24pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmF5 PyBpbml0X2Zyb21fcmF5IChHcmFwaGVuZS5SYXkgc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlJheT8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IG9yaWdpbiwgR3JhcGhl bmUuVmVjMz8gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9uS2luZCBpbnRlcnNlY3RfYm94IChHcmFwaGVu ZS5Cb3ggYiwgb3V0IGZsb2F0IHRfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9uS2luZCBpbnRlcnNlY3Rfc3BoZXJl IChHcmFwaGVuZS5TcGhlcmUgcywgb3V0IGZsb2F0IHRfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9uS2luZCBpbnRl cnNlY3RfdHJpYW5nbGUgKEdyYXBoZW5lLlRyaWFuZ2xlIHQsIG91dCBmbG9hdCB0X291dCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19i b3ggKEdyYXBoZW5lLkJveCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgYm9vbCBpbnRlcnNlY3RzX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHMpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfdHJpYW5n bGUgKEdyYXBoZW5lLlRyaWFuZ2xlIHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yZWN0X3QiLCB0eXBl X2lkID0gImdyYXBoZW5lX3JlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFJlY3QgeworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50 IG9yaWdpbjsKKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIHNpemU7CisrCQlwdWJsaWMgc3RhdGlj IEdyYXBoZW5lLlJlY3Q/IGFsbG9jICgpOworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQg KEdyYXBoZW5lLlBvaW50IHApOworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcmVjdCAoR3JhcGhl bmUuUmVjdCBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5SZWN0IGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgZXhwYW5k IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X2FyZWEgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X2Jv dHRvbV9sZWZ0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9ib3R0b21fcmlnaHQg KCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X2NlbnRlciAoKTsKKysJCXB1YmxpYyBm bG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF90b3BfbGVm dCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfdG9wX3JpZ2h0ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3ZlcnRpY2VzIChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlZlYzIgdmVydGljZXNbNF0p OworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAo KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlJlY3Q/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQp OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gaW5pdF9mcm9tX3JlY3QgKEdyYXBo ZW5lLlJlY3Qgc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IGluc2V0IChm bG9hdCBkX3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgR3JhcGhlbmUuUmVjdCBpbnNldF9yIChmbG9hdCBkX3gsIGZsb2F0IGRfeSk7CisrCQlw dWJsaWMgR3JhcGhlbmUuUmVjdCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUmVjdCBiLCBkb3VibGUg ZmFjdG9yKTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdGlvbiAoR3JhcGhlbmUuUmVjdCBiLCBv dXQgR3JhcGhlbmUuUmVjdCByZXMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8g bm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlJlY3Qgbm9ybWFsaXplX3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5S ZWN0PyBvZmZzZXQgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IG9mZnNldF9yIChmbG9hdCBkX3gsIGZs b2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgcm91 bmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlJlY3Qgcm91bmRfZXh0ZW50cyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjQiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlJlY3Q/IHJvdW5kX3RvX3BpeGVsICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHNjYWxlIChmbG9hdCBzX2gsIGZs b2F0IHNfdik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCB1bmlvbiAoR3JhcGhlbmUuUmVjdCBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBHcmFwaGVuZS5SZWN0PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zaW1kNGZfdCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFNpbWQ0RiB7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdy YXBoZW5lX3NpbWQ0eDRmX3QiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVj dCBTaW1kNFg0RiB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5l LWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NpemVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhl bmVfc2l6ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBzdHJ1Y3QgU2l6ZSB7CisrCQlwdWJsaWMgZmxvYXQgd2lkdGg7CisrCQlwdWJsaWMgZmxv YXQgaGVpZ2h0OworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlNpemUgYik7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyBpbml0IChmbG9hdCB3aWR0aCwgZmxvYXQgaGVp Z2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNpemU/IGluaXRfZnJvbV9zaXplIChH cmFwaGVuZS5TaXplIHNyYyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBpbnRlcnBvbGF0ZSAo R3JhcGhlbmUuU2l6ZSBiLCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5TaXpl IHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LlNpemU/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NwaGVyZV90IiwgdHlwZV9pZCA9ICJn cmFwaGVuZV9zcGhlcmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwlwdWJsaWMgc3RydWN0IFNwaGVyZSB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2lu dCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdy YXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlNw aGVyZSBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZ2V0X2JvdW5kaW5nX2JveCAoKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X3JhZGl1cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVyZT8gaW5pdCAo R3JhcGhlbmUuUG9pbnQzRD8gY2VudGVyLCBmbG9hdCByYWRpdXMpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUgKGFycmF5X2xlbmd0 aF9jbmFtZSA9ICJuX3BvaW50cyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0 aF90eXBlID0gImd1aW50IildIEdyYXBoZW5lLlBvaW50M0RbXSBwb2ludHMsIEdyYXBoZW5lLlBv aW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXRf ZnJvbV92ZWN0b3JzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3ZlY3RvcnMiLCBh cnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHcmFw aGVuZS5WZWMzW10gdmVjdG9ycywgR3JhcGhlbmUuUG9pbnQzRD8gY2VudGVyKTsKKysJCXB1Ymxp YyBib29sIGlzX2VtcHR5ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlNwaGVyZSB0cmFuc2xhdGUg KEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV90cmlhbmdsZV90Iiwg dHlwZV9pZCA9ICJncmFwaGVuZV90cmlhbmdsZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgVHJpYW5nbGUgeworKwkJcHVibGljIGJv b2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoR3JhcGhlbmUuVHJpYW5nbGUgYik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FyZWEgKCk7 CisrCQlwdWJsaWMgYm9vbCBnZXRfYmFyeWNvb3JkcyAoR3JhcGhlbmUuUG9pbnQzRD8gcCwgb3V0 IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZ2V0X2JvdW5kaW5n X2JveCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9taWRwb2ludCAoKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9ub3JtYWwgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu UGxhbmUgZ2V0X3BsYW5lICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3BvaW50cyAob3V0IEdyYXBo ZW5lLlBvaW50M0QgYSwgb3V0IEdyYXBoZW5lLlBvaW50M0QgYiwgb3V0IEdyYXBoZW5lLlBvaW50 M0QgYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0 X3V2IChHcmFwaGVuZS5Qb2ludDNEPyBwLCBHcmFwaGVuZS5WZWMyIHV2X2EsIEdyYXBoZW5lLlZl YzIgdXZfYiwgR3JhcGhlbmUuVmVjMiB1dl9jLCBvdXQgR3JhcGhlbmUuVmVjMiByZXMpOworKwkJ cHVibGljIHZvaWQgZ2V0X3ZlcnRpY2VzIChvdXQgR3JhcGhlbmUuVmVjMyBhLCBvdXQgR3JhcGhl bmUuVmVjMyBiLCBvdXQgR3JhcGhlbmUuVmVjMyBjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5pdF9mcm9tX2Zs b2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgYVszXSwgW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IGJbM10sIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0g ZmFsc2UpXSBmbG9hdCBjWzNdKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlRyaWFuZ2xl PyBpbml0X2Zyb21fcG9pbnQzZCAoR3JhcGhlbmUuUG9pbnQzRD8gYSwgR3JhcGhlbmUuUG9pbnQz RD8gYiwgR3JhcGhlbmUuUG9pbnQzRD8gYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5U cmlhbmdsZT8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IGEsIEdyYXBoZW5lLlZlYzM/ IGIsIEdyYXBoZW5lLlZlYzM/IGMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV92ZWMyX3QiLCB0eXBlX2lk ID0gImdyYXBoZW5lX3ZlYzJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBWZWMyIHsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGFk ZCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMyIGRpdmlkZSAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlZlYzIgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3Jh cGhlbmUuVmVjMiB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IGlu aXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHNyY1sy XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5WZWMyPyBpbml0X2Zyb21fdmVjMiAoR3JhcGhlbmUuVmVjMiBzcmMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGludGVycG9sYXRl IChHcmFwaGVuZS5WZWMyIHYyLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBtYXggKEdyYXBoZW5lLlZlYzIgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBt aW4gKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMiBtdWx0aXBseSAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlZlYzIg djIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzIgbmVnYXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IG9u ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMyIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzIgc3VidHJhY3QgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0b19mbG9hdCAoW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCBkZXN0WzJdKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMy PyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geV9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IHplcm8g KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzNfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdmVjM19n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzMgeworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgYWRkIChHcmFwaGVuZS5WZWMzIGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMg Y3Jvc3MgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBkaXZpZGUgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWMz IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwg KEdyYXBoZW5lLlZlYzMgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzIgZ2V0X3h5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3h5MCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXowICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5ejEg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVj NCBnZXRfeHl6dyAoZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3ogKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h dCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlZlYzM/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldIGZsb2F0IHNyY1szXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMyBz cmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMzIGludGVycG9sYXRlIChHcmFwaGVuZS5WZWMzIHYyLCBkb3VibGUgZmFjdG9yKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBtYXggKEdy YXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjMyBtaW4gKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBtdWx0aXBseSAoR3JhcGhlbmUuVmVj MyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIG5lYXIg KEdyYXBoZW5lLlZlYzMgdjIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbmVnYXRlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbm9ybWFsaXplICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdy YXBoZW5lLlZlYzM/IG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMzIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgc3VidHJhY3QgKEdyYXBoZW5l LlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0 b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCBkZXN0WzNd KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBHcmFwaGVuZS5WZWMzPyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8geV9heGlzICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBo ZW5lLlZlYzM/IHpfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB6ZXJvICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFw aGVuZV92ZWM0X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzRfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIHN0cnVjdCBWZWM0IHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWM0IGFkZCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGRpdmlkZSAoR3JhcGhlbmUu VmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBk b3QgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVmVjNCB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3cgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBnZXRfeHkgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfeHl6ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu VmVjND8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgZmxvYXQgdyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBp bml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNb NF0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjLCBmbG9hdCB6LCBm bG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzIHNyYywgZmxvYXQg dyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5WZWM0PyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBzcmMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGludGVycG9sYXRl IChHcmFwaGVuZS5WZWM0IHYyLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBtYXggKEdyYXBoZW5lLlZlYzQgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBt aW4gKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjNCBtdWx0aXBseSAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlZlYzQg djIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzQgbmVnYXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IG9u ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWM0IHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzQgc3VidHJhY3QgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0b19mbG9hdCAoW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCBkZXN0WzRdKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0 PyB3X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8geF9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHlfYXhp cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBHcmFwaGVuZS5WZWM0PyB6X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gemVybyAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfZXVsZXJfb3JkZXJfdCIsIGNwcmVmaXggPSAiR1JBUEhFTkVfRVVMRVJf T1JERVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJcHVibGljIGVudW0gRXVsZXJPcmRlciB7CisrCQlERUZBVUxULAorKwkJWFlaLAorKwkJ WVpYLAorKwkJWlhZLAorKwkJWFpZLAorKwkJWVhaLAorKwkJWllYLAorKwkJU1hZWiwKKysJCVNY WVgsCisrCQlTWFpZLAorKwkJU1haWCwKKysJCVNZWlgsCisrCQlTWVpZLAorKwkJU1lYWiwKKysJ CVNZWFksCisrCQlTWlhZLAorKwkJU1pYWiwKKysJCVNaWVgsCisrCQlTWllaLAorKwkJUlpZWCwK KysJCVJYWVgsCisrCQlSWVpYLAorKwkJUlhaWCwKKysJCVJYWlksCisrCQlSWVpZLAorKwkJUlpY WSwKKysJCVJZWFksCisrCQlSWVhaLAorKwkJUlpYWiwKKysJCVJYWVosCisrCQlSWllaCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1l ID0gImdyYXBoZW5lX3JheV9pbnRlcnNlY3Rpb25fa2luZF90IiwgY3ByZWZpeCA9ICJHUkFQSEVO RV9SQVlfSU5URVJTRUNUSU9OX0tJTkRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIFJheUludGVyc2VjdGlvbktpbmQg eworKwkJTk9ORSwKKysJCUVOVEVSLAorKwkJTEVBVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX0dD QyIpXQorKwlwdWJsaWMgY29uc3QgaW50IEhBU19HQ0M7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfU0NBTEFS IildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFTX1NDQUxBUjsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19TU0Ui KV0KKysJcHVibGljIGNvbnN0IGludCBIQVNfU1NFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfUEkiKV0KKysJcHVi bGljIGNvbnN0IGRvdWJsZSBQSTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1BJXzIiKV0KKysJcHVibGljIGNvbnN0 IGRvdWJsZSBQSV8yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29i amVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfU0lNRF9TIildCisrCXB1YmxpYyBjb25zdCBzdHJp bmcgU0lNRF9TOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVj dC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfVkVDMl9MRU4iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZFQzJfTEVOOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfVkVDM19M RU4iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZF QzNfTEVOOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5o IiwgY25hbWUgPSAiR1JBUEhFTkVfVkVDNF9MRU4iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZFQzRfTEVOOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZmFsc2UiKV0KKysJcHVibGlj IGNvbnN0IGludCBAZmFsc2U7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVu ZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJ0cnVlIildCisrCXB1YmxpYyBjb25zdCBpbnQgQHRydWU7 CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVyLTYuZGVwcyBiL3ZhcGkvbGlibXV0dGVy LTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4yMjM1MjVlNAor LS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0ZXItNi5kZXBzCitAQCAtMCwwICsxLDYg QEAKKytndGsrLTMuMAorK2pzb24tZ2xpYi0xLjAKKyttdXR0ZXItY2x1dHRlci02CisreDExCisr eGZpeGVzLTQuMAorK2dyYXBoZW5lLWdvYmplY3QtMS4wCitkaWZmIC0tZ2l0IGEvdmFwaS9saWJt dXR0ZXItNi52YXBpIGIvdmFwaS9saWJtdXR0ZXItNi52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0 NAoraW5kZXggMDAwMDAwMDAuLjMxZjQ4MDFjCistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL2xp Ym11dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsMTQ3NSBAQAorKy8qIGxpYm11dHRlci02LnZhcGkg Z2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJl Zml4ID0gIk1ldGEiLCBnaXJfbmFtZXNwYWNlID0gIk1ldGEiLCBnaXJfdmVyc2lvbiA9ICI2Iiwg bG93ZXJfY2FzZV9jcHJlZml4ID0gIm1ldGFfIildCisrbmFtZXNwYWNlIE1ldGEgeworKwluYW1l c3BhY2UgQ29tcG9zaXRvciB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9j b21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9kaXNhYmxlX3VucmVkaXJlY3RfZm9y X2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBkaXNhYmxlX3VucmVkaXJlY3RfZm9y X2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2VuYWJsZV91 bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgZW5hYmxlX3Vu cmVkaXJlY3RfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJt ZXRhX2ZvY3VzX3N0YWdlX3dpbmRvdyIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGZvY3VzX3N0 YWdlX3dpbmRvdyAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIHVpbnQzMiB0aW1lc3RhbXApOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNu YW1lID0gIm1ldGFfZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZmVlZGJhY2tfZ3JvdXBfZm9yX2Rpc3Bs YXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9zdGFnZV9mb3Jf ZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3N0 YWdlX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9n ZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3RvcF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgKE1ldGEu RGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2Nv bXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF93aW5kb3dfYWN0b3JzIildCisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5MaXN0PENsdXR0ZXIuQWN0b3I+IGdldF93aW5k b3dfYWN0b3JzIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfd2lu ZG93X2dyb3VwX2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRl ci5BY3RvciBnZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxh eSk7CisrCX0KKysJbmFtZXNwYWNlIFByZWZzIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2JlbGxfaXNfYXVkaWJsZSIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2JlbGxfaXNfYXVkaWJsZSAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2NoYW5nZV93b3Jrc3BhY2VfbmFtZSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZz X2NoYW5nZV93b3Jrc3BhY2VfbmFtZSAoaW50IGksIHN0cmluZyBuYW1lKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dl dF9hY3Rpb25fZG91YmxlX2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNr dG9wLlRpdGxlYmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25fZG91YmxlX2NsaWNrX3RpdGxlYmFy ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9taWRkbGVfY2xpY2tfdGl0bGViYXIiKV0KKysJCXB1 YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24gcHJlZnNfZ2V0X2FjdGlvbl9taWRk bGVfY2xpY2tfdGl0bGViYXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX3JpZ2h0X2NsaWNrX3Rp dGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLlRpdGxlYmFyQWN0aW9uIHByZWZz X2dldF9hY3Rpb25fcmlnaHRfY2xpY2tfdGl0bGViYXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYXR0YWNo X21vZGFsX2RpYWxvZ3MiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfYXR0YWNo X21vZGFsX2RpYWxvZ3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYXV0b19tYXhpbWl6ZSIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdXRvX21heGltaXplICgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0 X2F1dG9fcmFpc2UiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfYXV0b19yYWlz ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX3JhaXNlX2RlbGF5IildCisrCQlwdWJsaWMgc3RhdGlj IGludCBwcmVmc19nZXRfYXV0b19yYWlzZV9kZWxheSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9idXR0b25f bGF5b3V0IildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuQnV0dG9uTGF5b3V0IHByZWZzX2dldF9i dXR0b25fbGF5b3V0ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2NlbnRlcl9uZXdfd2luZG93cyIpXQorKwkJ cHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9jZW50ZXJfbmV3X3dpbmRvd3MgKCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9w cmVmc19nZXRfY29tcG9zaXRpbmdfbWFuYWdlciIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHBy ZWZzX2dldF9jb21wb3NpdGluZ19tYW5hZ2VyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2N1cnNvcl9zaXpl IildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfY3Vyc29yX3NpemUgKCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9w cmVmc19nZXRfY3Vyc29yX3RoZW1lIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5n IHByZWZzX2dldF9jdXJzb3JfdGhlbWUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZGlzYWJsZV93b3JrYXJv dW5kcyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9kaXNhYmxlX3dvcmthcm91 bmRzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdfdGhyZXNob2xkIildCisrCQlwdWJsaWMgc3RhdGlj IGludCBwcmVmc19nZXRfZHJhZ190aHJlc2hvbGQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZHJhZ2dhYmxl X2JvcmRlcl93aWR0aCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2RyYWdnYWJs ZV9ib3JkZXJfd2lkdGggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZHluYW1pY193b3Jrc3BhY2VzIildCisr CQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2R5bmFtaWNfd29ya3NwYWNlcyAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9lZGdlX3RpbGluZyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dl dF9lZGdlX3RpbGluZyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1c19jaGFuZ2Vfb25fcG9pbnRlcl9y ZXN0IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2ZvY3VzX2NoYW5nZV9vbl9w b2ludGVyX3Jlc3QgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9jdXNfbW9kZSIpXQorKwkJcHVibGljIHN0 YXRpYyBHRGVza3RvcC5Gb2N1c01vZGUgcHJlZnNfZ2V0X2ZvY3VzX21vZGUgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19nZXRfZm9jdXNfbmV3X3dpbmRvd3MiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuRm9j dXNOZXdXaW5kb3dzIHByZWZzX2dldF9mb2N1c19uZXdfd2luZG93cyAoKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dl dF9mb3JjZV9mdWxsc2NyZWVuIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2Zv cmNlX2Z1bGxzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZ25vbWVfYWNjZXNzaWJpbGl0eSIpXQor KwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9nbm9tZV9hY2Nlc3NpYmlsaXR5ICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X2dub21lX2FuaW1hdGlvbnMiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBw cmVmc19nZXRfZ25vbWVfYW5pbWF0aW9ucyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9rZXliaW5kaW5nX2Fj dGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLktleUJpbmRpbmdBY3Rpb24gcHJlZnNfZ2V0 X2tleWJpbmRpbmdfYWN0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfbW91c2VfYnV0 dG9uX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9tb3VzZV9idXR0b25f bWVudSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBj bmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0b25fbW9kcyIpXQorKwkJcHVibGljIHN0 YXRpYyBNZXRhLlZpcnR1YWxNb2RpZmllciBwcmVmc19nZXRfbW91c2VfYnV0dG9uX21vZHMgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfbW91c2VfYnV0dG9uX3Jlc2l6ZSIpXQorKwkJcHVibGljIHN0YXRpYyBp bnQgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9yZXNpemUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfbnVtX3dv cmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9udW1fd29ya3NwYWNl cyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX2dldF9yYWlzZV9vbl9jbGljayIpXQorKwkJcHVibGljIHN0YXRpYyBi b29sIHByZWZzX2dldF9yYWlzZV9vbl9jbGljayAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9zaG93X2ZhbGxi YWNrX2FwcF9tZW51IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3Nob3dfZmFs bGJhY2tfYXBwX21lbnUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfdGl0bGViYXJfZm9udCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIFBhbmdvLkZvbnREZXNjcmlwdGlvbiBwcmVmc19nZXRfdGl0bGVi YXJfZm9udCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgi LCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF92aXN1YWxfYmVsbCIpXQorKwkJcHVibGljIHN0YXRp YyBib29sIHByZWZzX2dldF92aXN1YWxfYmVsbCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF92aXN1YWxfYmVs bF90eXBlIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLlZpc3VhbEJlbGxUeXBlIHByZWZz X2dldF92aXN1YWxfYmVsbF90eXBlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3dvcmtzcGFjZV9uYW1lIild CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIHByZWZzX2dldF93b3Jrc3BhY2VfbmFt ZSAoaW50IGkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3dvcmtzcGFjZXNfb25seV9vbl9wcmltYXJ5IildCisr CQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3dvcmtzcGFjZXNfb25seV9vbl9wcmltYXJ5 ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfaW5pdCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZzX2luaXQg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19zZXRfZm9yY2VfZnVsbHNjcmVlbiIpXQorKwkJcHVibGljIHN0YXRpYyB2 b2lkIHByZWZzX3NldF9mb3JjZV9mdWxsc2NyZWVuIChib29sIHdoZXRoZXIpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf c2V0X251bV93b3Jrc3BhY2VzIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfc2V0X251 bV93b3Jrc3BhY2VzIChpbnQgbl93b3Jrc3BhY2VzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9zaG93X2ZhbGxi YWNrX2FwcF9tZW51IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfc2V0X3Nob3dfZmFs bGJhY2tfYXBwX21lbnUgKGJvb2wgd2hldGhlcik7CisrCX0KKysJbmFtZXNwYWNlIFV0aWwgewor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0 YV9hZGRfdmVyYm9zZV90b3BpYyIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGFkZF92ZXJib3Nl X3RvcGljIChNZXRhLkRlYnVnVG9waWMgdG9waWMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9leHRlcm5hbF9iaW5kaW5nX25hbWVf Zm9yX2FjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBzdHJpbmcgZXh0ZXJuYWxfYmluZGluZ19u YW1lX2Zvcl9hY3Rpb24gKHVpbnQga2V5YmluZGluZ19hY3Rpb24pOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9nZXRfbG9jYWxlX2Rp cmVjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLkxvY2FsZURpcmVjdGlvbiBnZXRfbG9j YWxlX2RpcmVjdGlvbiAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0 aWwuaCIsIGNuYW1lID0gIm1ldGFfZ3Jhdml0eV90b19zdHJpbmciKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBzdHJpbmcgZ3Jhdml0eV90b19zdHJpbmcgKGludCBncmF2aXR5KTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNf ZGVidWdnaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZGVidWdnaW5nICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9p c19zeW5jaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfc3luY2luZyAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNf dmVyYm9zZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX3ZlcmJvc2UgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX3dh eWxhbmRfY29tcG9zaXRvciIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX3dheWxhbmRfY29t cG9zaXRvciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIs IGNuYW1lID0gIm1ldGFfbGF0ZXJfYWRkIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgbGF0ZXJf YWRkIChNZXRhLkxhdGVyVHlwZSB3aGVuLCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRh X2xhdGVyX3JlbW92ZSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGxhdGVyX3JlbW92ZSAodWlu dCBsYXRlcl9pZCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX3BvcF9ub19tc2dfcHJlZml4IildCisrCQlwdWJsaWMgc3RhdGljIHZv aWQgcG9wX25vX21zZ19wcmVmaXggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3B1c2hfbm9fbXNnX3ByZWZpeCIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIHB1c2hfbm9fbXNnX3ByZWZpeCAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcmVjdCIpXQorKwkJcHVi bGljIHN0YXRpYyBNZXRhLlJlY3RhbmdsZT8gcmVjdCAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgs IGludCBoZWlnaHQpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5o IiwgY25hbWUgPSAibWV0YV9yZW1vdmVfdmVyYm9zZV90b3BpYyIpXQorKwkJcHVibGljIHN0YXRp YyB2b2lkIHJlbW92ZV92ZXJib3NlX3RvcGljIChNZXRhLkRlYnVnVG9waWMgdG9waWMpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9z aG93X2RpYWxvZyIpXQorKwkJcHVibGljIHN0YXRpYyBHTGliLlBpZCBzaG93X2RpYWxvZyAoc3Ry aW5nIHR5cGUsIHN0cmluZyBtZXNzYWdlLCBzdHJpbmcgdGltZW91dCwgc3RyaW5nIGRpc3BsYXks IHN0cmluZyBva190ZXh0LCBzdHJpbmcgY2FuY2VsX3RleHQsIHN0cmluZyBpY29uX25hbWUsIGlu dCB0cmFuc2llbnRfZm9yLCBHTGliLlNMaXN0PHZvaWQqPiBjb2x1bW5zLCBHTGliLlNMaXN0PHZv aWQqPiBlbnRyaWVzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwu aCIsIGNuYW1lID0gIm1ldGFfdW5zaWduZWRfbG9uZ19lcXVhbCIpXQorKwkJcHVibGljIHN0YXRp YyBpbnQgdW5zaWduZWRfbG9uZ19lcXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfdW5zaWdu ZWRfbG9uZ19oYXNoIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgdW5zaWduZWRfbG9uZ19oYXNo ICh2b2lkKiB2KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIs IGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcG9wIildCisrCQlwdWJsaWMgc3RhdGljIHZv aWQgeDExX2Vycm9yX3RyYXBfcG9wIChNZXRhLlgxMURpc3BsYXkgeDExX2Rpc3BsYXkpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV94 MTFfZXJyb3JfdHJhcF9wb3Bfd2l0aF9yZXR1cm4iKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHgx MV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiAoTWV0YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5 KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0g Im1ldGFfeDExX2Vycm9yX3RyYXBfcHVzaCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHgxMV9l cnJvcl90cmFwX3B1c2ggKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZW5kLmgiLCB0eXBlX2lkID0g Im1ldGFfYmFja2VuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQmFj a2VuZCA6IEdMaWIuT2JqZWN0LCBHTGliLkluaXRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZW5kICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZW5kLmgiLCBjbmFtZSA9ICJt ZXRhX2dldF9iYWNrZW5kIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5CYWNrZW5k IGdldF9iYWNrZW5kICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EbmQgZ2V0X2RuZCAoKTsK KysJCXB1YmxpYyB1bm93bmVkIE1ldGEuUmVtb3RlQWNjZXNzQ29udHJvbGxlciBnZXRfcmVtb3Rl X2FjY2Vzc19jb250cm9sbGVyICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBn ZXRfc3RhZ2UgKCk7CisrCQlwdWJsaWMgdm9pZCBsb2NrX2xheW91dF9ncm91cCAodWludCBpZHgp OworKwkJcHVibGljIHZvaWQgc2V0X2tleW1hcCAoc3RyaW5nIGxheW91dHMsIHN0cmluZyB2YXJp YW50cywgc3RyaW5nIG9wdGlvbnMpOworKwkJcHVibGljIHZvaWQgc2V0X251bWxvY2sgKGJvb2wg bnVtbG9ja19zdGF0ZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2V5bWFwX2NoYW5nZWQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2V5bWFwX2xheW91dF9ncm91cF9jaGFuZ2VkICh1aW50 IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbGFzdF9kZXZpY2VfY2hhbmdlZCAoQ2x1 dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxpZF9pc19j bG9zZWRfY2hhbmdlZCAoYm9vbCBvYmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91 bmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmQgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJs aWMgQmFja2dyb3VuZCAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJcHVibGljIHN0YXRpYyB2 b2lkIHJlZnJlc2hfYWxsICgpOworKwkJcHVibGljIHZvaWQgc2V0X2JsZW5kIChHTGliLkZpbGUg ZmlsZTEsIEdMaWIuRmlsZSBmaWxlMiwgZG91YmxlIGJsZW5kX2ZhY3RvciwgR0Rlc2t0b3AuQmFj a2dyb3VuZFN0eWxlIHN0eWxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5D b2xvciBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmlsZSAoR0xpYi5GaWxlPyBmaWxlLCBH RGVza3RvcC5CYWNrZ3JvdW5kU3R5bGUgc3R5bGUpOworKwkJcHVibGljIHZvaWQgc2V0X2dyYWRp ZW50IChHRGVza3RvcC5CYWNrZ3JvdW5kU2hhZGluZyBzaGFkaW5nX2RpcmVjdGlvbiwgQ2x1dHRl ci5Db2xvciBjb2xvciwgQ2x1dHRlci5Db2xvciBzZWNvbmRfY29sb3IpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IG1ldGFfZGlzcGxheSB7IG93bmVkIGdl dDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2hhbmdlZCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQtYWN0b3Iu aCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2FjdG9yX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBCYWNrZ3JvdW5kQWN0b3IgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50 b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0 YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgQmFja2dyb3VuZEFjdG9yIChNZXRhLkRpc3Bs YXkgZGlzcGxheSwgaW50IG1vbml0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X2JhY2tncm91bmQg KE1ldGEuQmFja2dyb3VuZCBiYWNrZ3JvdW5kKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ncmFkaWVu dCAoYm9vbCBlbmFibGVkLCBpbnQgaGVpZ2h0LCBkb3VibGUgdG9uZV9zdGFydCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfbW9uaXRvciAoaW50IG1vbml0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X3Zp Z25ldHRlIChib29sIGVuYWJsZWQsIGRvdWJsZSBicmlnaHRuZXNzLCBkb3VibGUgc2hhcnBuZXNz KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuQmFja2dyb3VuZCBiYWNr Z3JvdW5kIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGRvdWJsZSBicmlnaHRuZXNzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGJvb2wgZ3JhZGllbnQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgaW50IGdyYWRpZW50X2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUgZ3JhZGllbnRfbWF4X2RhcmtuZXNz IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlz cGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgaW50IG1vbml0b3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB2aWduZXR0ZSB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUgdmlnbmV0dGVfc2hhcnBu ZXNzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tZXRhLWJhY2tncm91bmQtZ3JvdXAuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2dy b3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kR3JvdXAgOiBDbHV0 dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5D b250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgQmFj a2dyb3VuZEdyb3VwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfaW1h Z2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmRJbWFnZSA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBCYWNrZ3JvdW5kSW1hZ2UgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfc3VjY2Vz cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsKKysJ CXB1YmxpYyBib29sIGlzX2xvYWRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsb2FkZWQg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3Jv dW5kLWltYWdlLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9pbWFnZV9jYWNoZV9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEltYWdlQ2FjaGUgOiBHTGliLk9i amVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgQmFja2dyb3VuZEltYWdlQ2FjaGUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3du ZWQgTWV0YS5CYWNrZ3JvdW5kSW1hZ2VDYWNoZSBnZXRfZGVmYXVsdCAoKTsKKysJCXB1YmxpYyBN ZXRhLkJhY2tncm91bmRJbWFnZSBsb2FkIChHTGliLkZpbGUgZmlsZSk7CisrCQlwdWJsaWMgdm9p ZCBwdXJnZSAoR0xpYi5GaWxlIGZpbGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL2JhcnJpZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBCYXJyaWVyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhcnJpZXIgKCk7 CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIGJvb2wgaXNfYWN0aXZlICgp OworKwkJcHVibGljIHZvaWQgcmVsZWFzZSAoTWV0YS5CYXJyaWVyRXZlbnQgZXZlbnQpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5CYXJyaWVyRGlyZWN0aW9uIGRpcmVj dGlvbnMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHgxIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB4MiB7IGdldDsgY29uc3RydWN0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeTEgeyBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHkyIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBoaXQgKE1ldGEuQmFycmllckV2ZW50IGV2 ZW50KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsZWZ0IChNZXRhLkJhcnJpZXJFdmVudCBldmVu dCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvYmFycmllci5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2V2ZW50X2dldF90eXBlICgpIildCisrCVtD b21wYWN0XQorKwlwdWJsaWMgY2xhc3MgQmFycmllckV2ZW50IHsKKysJCXB1YmxpYyBpbnQgZHQ7 CisrCQlwdWJsaWMgZG91YmxlIGR4OworKwkJcHVibGljIGRvdWJsZSBkeTsKKysJCXB1YmxpYyBp bnQgZXZlbnRfaWQ7CisrCQlwdWJsaWMgYm9vbCBncmFiYmVkOworKwkJcHVibGljIGJvb2wgcmVs ZWFzZWQ7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgZG91YmxlIHg7CisrCQlw dWJsaWMgZG91YmxlIHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS1jdXJzb3ItdHJhY2tlci5oIiwgdHlwZV9pZCA9ICJtZXRhX2N1cnNvcl90cmFja2VyX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBDdXJzb3JUcmFja2VyIDogR0xpYi5PYmplY3Qg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIEN1cnNvclRyYWNrZXIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5DdXJz b3JUcmFja2VyIGdldF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJcHVi bGljIHZvaWQgZ2V0X2hvdCAob3V0IGludCB4LCBvdXQgaW50IHkpOworKwkJcHVibGljIHZvaWQg Z2V0X3BvaW50ZXIgKGludCB4LCBpbnQgeSwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kcyk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfcG9pbnRlcl92aXNpYmxlICgpOworKwkJcHVibGljIHVub3duZWQg Q29nbC5UZXh0dXJlIGdldF9zcHJpdGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRlcl92 aXNpYmxlIChib29sIHZpc2libGUpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNvcl9jaGFu Z2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNvcl9tb3ZlZCAoZmxvYXQgeCwgZmxv YXQgeSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdmlzaWJpbGl0eV9jaGFuZ2VkICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2Rpc3BsYXkuaCIsIHR5cGVfaWQg PSAibWV0YV9kaXNwbGF5X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBEaXNwbGF5IDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIERpc3BsYXkgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfaWdub3JlZF9j cm9zc2luZ19zZXJpYWwgKHVsb25nIHNlcmlhbCk7CisrCQlwdWJsaWMgdWludCBhZGRfa2V5Ymlu ZGluZyAoc3RyaW5nIG5hbWUsIEdMaWIuU2V0dGluZ3Mgc2V0dGluZ3MsIE1ldGEuS2V5QmluZGlu Z0ZsYWdzIGZsYWdzLCBvd25lZCBNZXRhLktleUhhbmRsZXJGdW5jIGhhbmRsZXIpOworKwkJcHVi bGljIGJvb2wgYmVnaW5fZ3JhYl9vcCAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLkdyYWJPcCBv cCwgYm9vbCBwb2ludGVyX2FscmVhZHlfZ3JhYmJlZCwgYm9vbCBmcmFtZV9hY3Rpb24sIGludCBi dXR0b24sIHVsb25nIG1vZG1hc2ssIHVpbnQzMiB0aW1lc3RhbXAsIGludCByb290X3gsIGludCBy b290X3kpOworKwkJcHVibGljIHZvaWQgY2xlYXJfbW91c2VfbW9kZSAoKTsKKysJCXB1YmxpYyB2 b2lkIGNsb3NlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGVuZF9ncmFiX29w ICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGZvY3VzX2RlZmF1bHRfd2luZG93 ICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGZyZWV6ZV9rZXlib2FyZCAodWlu dDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgaW50IGdldF9jdXJyZW50X21vbml0b3IgKCk7Cisr CQlwdWJsaWMgdWludDMyIGdldF9jdXJyZW50X3RpbWUgKCk7CisrCQlwdWJsaWMgdWludDMyIGdl dF9jdXJyZW50X3RpbWVfcm91bmR0cmlwICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5k b3cgZ2V0X2ZvY3VzX3dpbmRvdyAoKTsKKysJCXB1YmxpYyBNZXRhLkdyYWJPcCBnZXRfZ3JhYl9v cCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9rZXliaW5kaW5nX2FjdGlvbiAodWludCBrZXljb2Rl LCB1bG9uZyBtYXNrKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0X2xhc3RfdXNlcl90aW1lICgpOwor KwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9tb25pdG9yX2dlb21ldHJ5IChpbnQgbW9uaXRv cik7CisrCQlwdWJsaWMgYm9vbCBnZXRfbW9uaXRvcl9pbl9mdWxsc2NyZWVuIChpbnQgbW9uaXRv cik7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yX2luZGV4X2Zvcl9yZWN0IChNZXRhLlJlY3Rh bmdsZSByZWN0KTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3JfbmVpZ2hib3JfaW5kZXggKGlu dCB3aGljaF9tb25pdG9yLCBNZXRhLkRpc3BsYXlEaXJlY3Rpb24gZGlyKTsKKysJCXB1YmxpYyBm bG9hdCBnZXRfbW9uaXRvcl9zY2FsZSAoaW50IG1vbml0b3IpOworKwkJcHVibGljIGludCBnZXRf bl9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X3BhZF9hY3Rpb25fbGFiZWwgKENs dXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBNZXRhLlBhZEFjdGlvblR5cGUgYWN0aW9uX3R5cGUsIHVp bnQgYWN0aW9uX251bWJlcik7CisrCQlwdWJsaWMgaW50IGdldF9wcmltYXJ5X21vbml0b3IgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlNlbGVjdGlvbiBnZXRfc2VsZWN0aW9uICgpOworKwkJ cHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBpbnQgd2lkdGgsIG91dCBpbnQgaGVpZ2h0KTsKKysJ CXB1YmxpYyB1bm93bmVkIE1ldGEuU291bmRQbGF5ZXIgZ2V0X3NvdW5kX3BsYXllciAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJfY3VycmVudCAoTWV0YS5UYWJMaXN0 IHR5cGUsIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgR0xpYi5MaXN0PHdl YWsgTWV0YS5XaW5kb3c+IGdldF90YWJfbGlzdCAoTWV0YS5UYWJMaXN0IHR5cGUsIE1ldGEuV29y a3NwYWNlPyB3b3Jrc3BhY2UpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X3Rh Yl9uZXh0IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlLCBNZXRh LldpbmRvdz8gd2luZG93LCBib29sIGJhY2t3YXJkKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEu V29ya3NwYWNlTWFuYWdlciBnZXRfd29ya3NwYWNlX21hbmFnZXIgKCk7CisrCQlwdWJsaWMgdWlu dCBncmFiX2FjY2VsZXJhdG9yIChzdHJpbmcgYWNjZWxlcmF0b3IsIE1ldGEuS2V5QmluZGluZ0Zs YWdzIGZsYWdzKTsKKysJCXB1YmxpYyBib29sIGlzX3BvaW50ZXJfZW11bGF0aW5nX3NlcXVlbmNl IChDbHV0dGVyLkV2ZW50U2VxdWVuY2U/IHNlcXVlbmNlKTsKKysJCXB1YmxpYyBib29sIHJlbW92 ZV9rZXliaW5kaW5nIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgdm9pZCByZXF1ZXN0X3BhZF9v c2QgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBib29sIGVkaXRpb25fbW9kZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY3Vyc29yIChNZXRhLkN1cnNvciBjdXJzb3IpOworKwkJcHVibGljIHZvaWQg c2V0X2lucHV0X2ZvY3VzIChNZXRhLldpbmRvdyB3aW5kb3csIGJvb2wgZm9jdXNfZnJhbWUsIHVp bnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIEdMaWIuU0xpc3Q8d2VhayBNZXRhLldpbmRvdz4g c29ydF93aW5kb3dzX2J5X3N0YWNraW5nIChHTGliLlNMaXN0PE1ldGEuV2luZG93PiB3aW5kb3dz KTsKKysJCXB1YmxpYyBib29sIHN1cHBvcnRzX2V4dGVuZGVkX2JhcnJpZXJzICgpOworKwkJcHVi bGljIHZvaWQgdW5mcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGlj IGJvb2wgdW5ncmFiX2FjY2VsZXJhdG9yICh1aW50IGFjdGlvbl9pZCk7CisrCQlwdWJsaWMgdm9p ZCB1bmdyYWJfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgdW5z ZXRfaW5wdXRfZm9jdXMgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIGJvb2wgeHNlcnZl cl90aW1lX2lzX2JlZm9yZSAodWludDMyIHRpbWUxLCB1aW50MzIgdGltZTIpOworKwkJcHVibGlj IE1ldGEuV2luZG93IGZvY3VzX3dpbmRvdyB7IGdldDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lk IGFjY2VsZXJhdG9yX2FjdGl2YXRlZCAodWludCBvYmplY3QsIENsdXR0ZXIuSW5wdXREZXZpY2Ug cDAsIHVpbnQgcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGNsb3NpbmcgKCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgY3Vyc29yX3VwZGF0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg Z2xfdmlkZW9fbWVtb3J5X3B1cmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBncmFiX29w X2JlZ2luIChNZXRhLkRpc3BsYXkgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCwgTWV0YS5HcmFiT3Ag cDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdyYWJfb3BfZW5kIChNZXRhLkRpc3BsYXkgb2Jq ZWN0LCBNZXRhLldpbmRvdyBwMCwgTWV0YS5HcmFiT3AgcDEpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIGluX2Z1bGxzY3JlZW5fY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgYm9vbCBtb2Rp ZmllcnNfYWNjZWxlcmF0b3JfYWN0aXZhdGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG92 ZXJsYXlfa2V5ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHBhZF9tb2RlX3N3aXRjaCAoQ2x1 dHRlci5JbnB1dERldmljZSBvYmplY3QsIHVpbnQgcDAsIHVpbnQgcDEpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIHJlc3RhY2tlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgYm9vbCByZXN0YXJ0ICgp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dfb3NkIChpbnQgb2JqZWN0LCBzdHJpbmcgcDAs IHN0cmluZyBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHVub3duZWQgQ2x1dHRlci5BY3Rvcj8gc2hv d19wYWRfb3NkIChDbHV0dGVyLklucHV0RGV2aWNlIHBhZCwgR0xpYi5TZXR0aW5ncyBzZXR0aW5n cywgc3RyaW5nIGxheW91dF9wYXRoLCBib29sIGVkaXRpb25fbW9kZSwgaW50IG1vbml0b3JfaWR4 KTsKKysJCXB1YmxpYyBzaWduYWwgYm9vbCBzaG93X3Jlc2l6ZV9wb3B1cCAoYm9vbCBvYmplY3Qs IE1ldGEuUmVjdGFuZ2xlIHAwLCBpbnQgcDEsIGludCBwMik7CisrCQlwdWJsaWMgc2lnbmFsIGJv b2wgc2hvd19yZXN0YXJ0X21lc3NhZ2UgKHN0cmluZz8gbWVzc2FnZSk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgc2hvd2luZ19kZXNrdG9wX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgd2luZG93X2NyZWF0ZWQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgd2luZG93X2RlbWFuZHNfYXR0ZW50aW9uIChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19lbnRlcmVkX21vbml0b3IgKGludCBvYmplY3QsIE1l dGEuV2luZG93IHAwKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfbGVmdF9tb25pdG9y IChpbnQgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2lu ZG93X21hcmtlZF91cmdlbnQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgd29ya2FyZWFzX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgeDExX2Rp c3BsYXlfY2xvc2luZyAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFfZGlzcGxheV9vcGVu ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfc2V0dXAgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1kbmQuaCIsIHR5cGVfaWQg PSAibWV0YV9kbmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIERuZCA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBEbmQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX2VudGVyICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIGRuZF9sZWF2ZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBk bmRfcG9zaXRpb25fY2hhbmdlIChpbnQgb2JqZWN0LCBpbnQgcDApOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEZyYW1lIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWlkbGUtbW9uaXRvci5oIiwgdHlwZV9pZCA9ICJtZXRh X2lkbGVfbW9uaXRvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgSWRsZU1vbml0b3Ig OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgSWRsZU1vbml0b3IgKCk7CisrCQlwdWJsaWMgdWludCBhZGRfaWRs ZV93YXRjaCAodWludDY0IGludGVydmFsX21zZWMsIG93bmVkIE1ldGEuSWRsZU1vbml0b3JXYXRj aEZ1bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyB1aW50IGFkZF91c2VyX2FjdGl2ZV93YXRjaCAo b3duZWQgTWV0YS5JZGxlTW9uaXRvcldhdGNoRnVuYz8gY2FsbGJhY2spOworKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIE1ldGEuSWRsZU1vbml0b3IgZ2V0X2NvcmUgKCk7CisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgTWV0YS5JZGxlTW9uaXRvciBnZXRfZm9yX2RldmljZSAoQ2x1dHRlci5JbnB1 dERldmljZSBkZXZpY2UpOworKwkJcHVibGljIGludDY0IGdldF9pZGxldGltZSAoKTsKKysJCXB1 YmxpYyB2b2lkIHJlbW92ZV93YXRjaCAodWludCBpZCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSB7IG93bmVkIGdldDsgY29uc3Ry dWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmluZGluZ19nZXRfdHlwZSAoKSIpXQorKwlbQ29t cGFjdF0KKysJcHVibGljIGNsYXNzIEtleUJpbmRpbmcgeworKwkJcHVibGljIHVpbnQgZ2V0X21h c2sgKCk7CisrCQlwdWJsaWMgTWV0YS5WaXJ0dWFsTW9kaWZpZXIgZ2V0X21vZGlmaWVycyAoKTsK KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCXB1YmxpYyBib29sIGlz X2J1aWx0aW4gKCk7CisrCQlwdWJsaWMgYm9vbCBpc19yZXZlcnNlZCAoKTsKKysJCVtDQ29kZSAo Y25hbWUgPSAibWV0YV9rZXliaW5kaW5nc19zZXRfY3VzdG9tX2hhbmRsZXIiKV0KKysJCXB1Ymxp YyBzdGF0aWMgYm9vbCBzZXRfY3VzdG9tX2hhbmRsZXIgKHN0cmluZyBuYW1lLCBvd25lZCBNZXRh LktleUhhbmRsZXJGdW5jPyBoYW5kbGVyKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLWxhdW5jaC1jb250ZXh0LmgiLCB0eXBlX2lkID0gIm1ldGFfbGF1bmNo X2NvbnRleHRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIExhdW5jaENvbnRleHQgOiBH TGliLkFwcExhdW5jaENvbnRleHQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExhdW5jaENvbnRleHQgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfdGltZXN0YW1wICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHNldF93 b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHRpbWVzdGFtcCB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLldvcmtzcGFj ZSB3b3Jrc3BhY2UgeyBvd25lZCBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtbW9uaXRvci1tYW5hZ2VyLmgiLCB0eXBlX2lkID0gIm1ldGFf bW9uaXRvcl9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBNb25pdG9yTWFu YWdlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBNb25pdG9yTWFuYWdlciAoKTsKKysJCXB1YmxpYyBib29s IGNhbl9zd2l0Y2hfY29uZmlnICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuTW9u aXRvck1hbmFnZXIgQGdldCAoKTsKKysJCXB1YmxpYyBzdGF0aWMgaW50IGdldF9kaXNwbGF5X2Nv bmZpZ3VyYXRpb25fdGltZW91dCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pc19idWlsdGluX2Rp c3BsYXlfb24gKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yX2Zvcl9jb25uZWN0b3IgKHN0 cmluZyBjb25uZWN0b3IpOworKwkJcHVibGljIE1ldGEuTW9uaXRvclN3aXRjaENvbmZpZ1R5cGUg Z2V0X3N3aXRjaF9jb25maWcgKCk7CisrCQlwdWJsaWMgdm9pZCBzd2l0Y2hfY29uZmlnIChNZXRh Lk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGNvbmZpZ190eXBlKTsKKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIE1ldGEuQmFja2VuZCBiYWNrZW5kIHsgb3duZWQgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjb25maXJtX2Rpc3BsYXlfY2hhbmdlICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIG1vbml0b3JzX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgbW9uaXRvcnNfY2hhbmdlZF9pbnRlcm5hbCAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCBwb3dlcl9zYXZlX21vZGVfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tZXRhLXBsdWdpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3BsdWdpbl9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgUGx1Z2luIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIFBsdWdpbiAoKTsKKysJCXB1YmxpYyBib29sIGJlZ2luX21vZGFsIChNZXRhLk1vZGFs T3B0aW9ucyBvcHRpb25zLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGNvbXBs ZXRlX2Rpc3BsYXlfY2hhbmdlIChib29sIG9rKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGNvbmZpcm1fZGlzcGxheV9jaGFuZ2UgKCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXN0cm95IChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsK KysJCXB1YmxpYyB2b2lkIGRlc3Ryb3lfY29tcGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9y KTsKKysJCXB1YmxpYyB2b2lkIGVuZF9tb2RhbCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJs aWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3BsYXkgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBNZXRhLlBsdWdpbkluZm8/IGdldF9pbmZvICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgaGlkZV90aWxlX3ByZXZpZXcgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgYm9vbCBrZXliaW5kaW5nX2ZpbHRlciAoTWV0YS5LZXlCaW5kaW5nIGJp bmRpbmcpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQga2lsbF9zd2l0 Y2hfd29ya3NwYWNlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg a2lsbF93aW5kb3dfZWZmZWN0cyAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBsb2NhdGVfcG9pbnRlciAoKTsKKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCBtYW5hZ2VyX3NldF9wbHVnaW5fdHlwZSAoR0xpYi5UeXBlIGd0eXBlKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG1hcCAoTWV0YS5XaW5kb3dB Y3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBtYXBfY29tcGxldGVkIChNZXRhLldpbmRvd0Fj dG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG1pbmlt aXplIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIG1pbmltaXplX2Nv bXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdW5vd25lZCBNZXRhLlBsdWdpbkluZm8/IHBsdWdpbl9pbmZvICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd190aWxlX3ByZXZpZXcgKE1l dGEuV2luZG93IHdpbmRvdywgTWV0YS5SZWN0YW5nbGUgdGlsZV9yZWN0LCBpbnQgdGlsZV9tb25p dG9yX251bWJlcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93 X3dpbmRvd19tZW51IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuV2luZG93TWVudVR5cGUgbWVu dSwgaW50IHgsIGludCB5KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IHNob3dfd2luZG93X21lbnVfZm9yX3JlY3QgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5XaW5k b3dNZW51VHlwZSBtZW51LCBNZXRhLlJlY3RhbmdsZSByZWN0KTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHNpemVfY2hhbmdlIChNZXRhLldpbmRvd0FjdG9yIGFjdG9y LCBNZXRhLlNpemVDaGFuZ2Ugd2hpY2hfY2hhbmdlLCBNZXRhLlJlY3RhbmdsZSBvbGRfZnJhbWVf cmVjdCwgTWV0YS5SZWN0YW5nbGUgb2xkX2J1ZmZlcl9yZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNp emVfY2hhbmdlX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaXplX2NoYW5nZWQgKE1ldGEuV2luZG93QWN0 b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc3RhcnQg KCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzd2l0Y2hfd29ya3Nw YWNlIChpbnQgZnJvbSwgaW50IHRvLCBNZXRhLk1vdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24pOwor KwkJcHVibGljIHZvaWQgc3dpdGNoX3dvcmtzcGFjZV9jb21wbGV0ZWQgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1bm1pbmltaXplIChNZXRhLldpbmRvd0FjdG9y IGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHVubWluaW1pemVfY29tcGxldGVkIChNZXRhLldpbmRv d0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHhl dmVudF9maWx0ZXIgKFguRXZlbnQgZXZlbnQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9sbGVyLmgiLCB0eXBlX2lkID0g Im1ldGFfcmVtb3RlX2FjY2Vzc19jb250cm9sbGVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBSZW1vdGVBY2Nlc3NDb250cm9sbGVyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFJlbW90ZUFjY2Vz c0NvbnRyb2xsZXIgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbmV3X2hhbmRsZSAoTWV0YS5S ZW1vdGVBY2Nlc3NIYW5kbGUgb2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIiwgdHlwZV9pZCA9ICJt ZXRhX3JlbW90ZV9hY2Nlc3NfaGFuZGxlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBS ZW1vdGVBY2Nlc3NIYW5kbGUgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUmVtb3RlQWNjZXNzSGFuZGxlICgp OworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzdG9wICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHN0b3BwZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgU2VsZWN0aW9uIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNlbGVjdGlvbiAoTWV0YS5EaXNwbGF5IGRp c3BsYXkpOworKwkJcHVibGljIEdMaWIuTGlzdDxzdHJpbmc+IGdldF9taW1ldHlwZXMgKE1ldGEu U2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3duZXIg KE1ldGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgTWV0YS5TZWxlY3Rpb25Tb3VyY2Ug b3duZXIpOworKwkJcHVibGljIGFzeW5jIGJvb2wgdHJhbnNmZXJfYXN5bmMgKE1ldGEuU2VsZWN0 aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgc3RyaW5nIG1pbWV0eXBlLCBzc2l6ZV90IHNpemUsIEdM aWIuT3V0cHV0U3RyZWFtIG91dHB1dCwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUpIHRo cm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHZvaWQgdW5zZXRfb3duZXIgKE1ldGEuU2VsZWN0 aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgTWV0YS5TZWxlY3Rpb25Tb3VyY2Ugb3duZXIpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIG93bmVyX2NoYW5nZWQgKHVpbnQgb2JqZWN0LCBNZXRhLlNlbGVj dGlvblNvdXJjZSBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9zb3VyY2VfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIFNlbGVjdGlvblNvdXJjZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTZWxlY3Rp b25Tb3VyY2UgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBHTGliLkxpc3Q8c3RyaW5nPiBnZXRfbWlt ZXR5cGVzICgpOworKwkJcHVibGljIGJvb2wgaXNfYWN0aXZlICgpOworKwkJcHVibGljIHZpcnR1 YWwgYXN5bmMgR0xpYi5JbnB1dFN0cmVhbSByZWFkX2FzeW5jIChzdHJpbmcgbWltZXR5cGUsIEdM aWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGRlYWN0aXZhdGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fc291cmNlX21lbW9y eV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2VsZWN0aW9uU291cmNlTWVtb3J5IDog TWV0YS5TZWxlY3Rpb25Tb3VyY2UgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiTWV0YVNlbGVjdGlvblNvdXJjZSoiKV0KKysJCXB1YmxpYyBTZWxl Y3Rpb25Tb3VyY2VNZW1vcnkgKHN0cmluZyBtaW1ldHlwZSwgR0xpYi5CeXRlcyBjb250ZW50KTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNldHRpbmdzLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBTZXR0 aW5ncyB7CisrCQlwdWJsaWMgaW50IGdldF9mb250X2RwaSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0 X3VpX3NjYWxpbmdfZmFjdG9yICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIHJlZl9mdW5jdGlvbiA9ICJtZXRhX3NoYWRvd19yZWYiLCB0eXBlX2lk ID0gIm1ldGFfc2hhZG93X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAibWV0YV9zaGFk b3dfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkb3cgeworKwkJcHVi bGljIHZvaWQgZ2V0X2JvdW5kcyAoaW50IHdpbmRvd194LCBpbnQgd2luZG93X3ksIGludCB3aW5k b3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCBDYWlyby5SZWN0YW5nbGVJbnQgYm91bmRzKTsK KysJCXB1YmxpYyB2b2lkIHBhaW50IChDb2dsLkZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyLCBpbnQg d2luZG93X3gsIGludCB3aW5kb3dfeSwgaW50IHdpbmRvd193aWR0aCwgaW50IHdpbmRvd19oZWln aHQsIHVpbnQ4IG9wYWNpdHksIENhaXJvLlJlZ2lvbj8gY2xpcCwgYm9vbCBjbGlwX3N0cmljdGx5 KTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvdyBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zaGFkb3ct ZmFjdG9yeS5oIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRvd19mYWN0b3J5X2dldF90eXBlICgpIild CisrCXB1YmxpYyBjbGFzcyBTaGFkb3dGYWN0b3J5IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNoYWRvd0ZhY3Rv cnkgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5TaGFkb3dGYWN0b3J5IGdldF9k ZWZhdWx0ICgpOworKwkJcHVibGljIE1ldGEuU2hhZG93UGFyYW1zIGdldF9wYXJhbXMgKHN0cmlu ZyBjbGFzc19uYW1lLCBib29sIGZvY3VzZWQpOworKwkJcHVibGljIE1ldGEuU2hhZG93IGdldF9z aGFkb3cgKE1ldGEuV2luZG93U2hhcGUgc2hhcGUsIGludCB3aWR0aCwgaW50IGhlaWdodCwgc3Ry aW5nIGNsYXNzX25hbWUsIGJvb2wgZm9jdXNlZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFyYW1z IChzdHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2VkLCBNZXRhLlNoYWRvd1BhcmFtcyBAcGFy YW1zKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhcGVkLXRleHR1cmUuaCIsIHR5cGVfaWQg PSAibWV0YV9zaGFwZWRfdGV4dHVyZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hh cGVkVGV4dHVyZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLkNvbnRlbnQgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNoYXBlZFRleHR1 cmUgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uU3VyZmFjZT8gZ2V0X2ltYWdlIChDYWlyby5SZWN0YW5n bGVJbnQ/IGNsaXApOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF90ZXh0dXJl ICgpOworKwkJcHVibGljIHZvaWQgc2V0X2NyZWF0ZV9taXBtYXBzIChib29sIGNyZWF0ZV9taXBt YXBzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXNrX3RleHR1cmUgKENvZ2wuVGV4dHVyZSBtYXNr X3RleHR1cmUpOworKwkJcHVibGljIHZvaWQgc2V0X29wYXF1ZV9yZWdpb24gKG93bmVkIENhaXJv LlJlZ2lvbiBvcGFxdWVfcmVnaW9uKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaXplX2NoYW5n ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zb3Vu ZC1wbGF5ZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9zb3VuZF9wbGF5ZXJfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIFNvdW5kUGxheWVyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNvdW5kUGxheWVy ICgpOworKwkJcHVibGljIHZvaWQgcGxheV9mcm9tX2ZpbGUgKEdMaWIuRmlsZSBmaWxlLCBzdHJp bmcgZGVzY3JpcHRpb24sIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlID0gbnVsbCk7Cisr CQlwdWJsaWMgdm9pZCBwbGF5X2Zyb21fdGhlbWUgKHN0cmluZyBuYW1lLCBzdHJpbmcgZGVzY3Jp cHRpb24sIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlID0gbnVsbCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zdGFnZS5oIiwgdHlwZV9pZCA9ICJt ZXRhX3N0YWdlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZSA6IENsdXR0ZXIu U3RhZ2UsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRh aW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFnZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMg Ym9vbCBpc19mb2N1c2VkIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgYWN0b3JzX3BhaW50ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS1zdGFydHVwLW5vdGlmaWNhdGlvbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3N0 YXJ0dXBfbm90aWZpY2F0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTdGFydHVw Tm90aWZpY2F0aW9uIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YXJ0dXBOb3RpZmljYXRpb24gKCk7Cisr CQlwdWJsaWMgTWV0YS5MYXVuY2hDb250ZXh0IGNyZWF0ZV9sYXVuY2hlciAoKTsKKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNwbGF5IHsgb3duZWQgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2VkICh2b2lkKiBvYmpl Y3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5 cGVfaWQgPSAibWV0YV9zdGFydHVwX3NlcXVlbmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBTdGFydHVwU2VxdWVuY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhcnR1cFNlcXVlbmNlICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9hcHBsaWNhdGlvbl9pZCAoKTsKKysJCXB1 YmxpYyBib29sIGdldF9jb21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X2ljb25fbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfaWQgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlwdWJsaWMgdWludDY0IGdldF90 aW1lc3RhbXAgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3dtY2xhc3MgKCk7Cisr CQlwdWJsaWMgaW50IGdldF93b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGFwcGxpY2F0 aW9uX2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgaWNvbl9uYW1lIHsg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgaWQgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyB1 aW50NjQgdGltZXN0YW1wIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgd21j bGFzcyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgaW50IHdvcmtzcGFjZSB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjb21w bGV0ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS90aGVtZS5o IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgVGhl bWUgeworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS93aW5kb3cuaCIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFdpbmRvdyA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBX aW5kb3cgKCk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZSAodWludDMyIGN1cnJlbnRfdGltZSk7 CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZV93aXRoX3dvcmtzcGFjZSAodWludDMyIGN1cnJlbnRf dGltZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyBib29sIGFsbG93c19t b3ZlICgpOworKwkJcHVibGljIGJvb2wgYWxsb3dzX3Jlc2l6ZSAoKTsKKysJCXB1YmxpYyB2b2lk IGJlZ2luX2dyYWJfb3AgKE1ldGEuR3JhYk9wIG9wLCBib29sIGZyYW1lX2FjdGlvbiwgdWludDMy IHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fY2xvc2UgKCk7CisrCQlwdWJsaWMgYm9v bCBjYW5fbWF4aW1pemUgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fbWluaW1pemUgKCk7CisrCQlw dWJsaWMgYm9vbCBjYW5fc2hhZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBjaGFuZ2Vfd29ya3NwYWNl IChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIHZvaWQgY2hhbmdlX3dvcmtz cGFjZV9ieV9pbmRleCAoaW50IHNwYWNlX2luZGV4LCBib29sIGFwcGVuZCk7CisrCQlwdWJsaWMg dm9pZCBjaGVja19hbGl2ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0 YW5nbGUgY2xpZW50X3JlY3RfdG9fZnJhbWVfcmVjdCAoTWV0YS5SZWN0YW5nbGUgY2xpZW50X3Jl Y3QpOworKwkJcHVibGljIHZvaWQgY29tcHV0ZV9ncm91cCAoKTsKKysJCXB1YmxpYyB2b2lkIEBk ZWxldGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cg ZmluZF9yb290X2FuY2VzdG9yICgpOworKwkJcHVibGljIHZvaWQgZm9jdXMgKHVpbnQzMiB0aW1l c3RhbXApOworKwkJcHVibGljIHZvaWQgZm9yZWFjaF9hbmNlc3RvciAoTWV0YS5XaW5kb3dGb3Jl YWNoRnVuYyBmdW5jKTsKKysJCXB1YmxpYyB2b2lkIGZvcmVhY2hfdHJhbnNpZW50IChNZXRhLldp bmRvd0ZvcmVhY2hGdW5jIGZ1bmMpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGZyYW1lX3Jl Y3RfdG9fY2xpZW50X3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGZyYW1lX3JlY3QpOworKwkJcHVibGlj IE1ldGEuUmVjdGFuZ2xlIGdldF9idWZmZXJfcmVjdCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfY2xpZW50X21hY2hpbmUgKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dDbGllbnRU eXBlIGdldF9jbGllbnRfdHlwZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuT2JqZWN0IGdl dF9jb21wb3NpdG9yX3ByaXZhdGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2Rl c2NyaXB0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EaXNwbGF5IGdldF9kaXNwbGF5 ICgpOworKwkJcHVibGljIHVub3duZWQgQ2Fpcm8uUmVnaW9uPyBnZXRfZnJhbWVfYm91bmRzICgp OworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9mcmFtZV9yZWN0ICgpOworKwkJcHVibGlj IE1ldGEuRnJhbWVUeXBlIGdldF9mcmFtZV90eXBlICgpOworKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF9ndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X2d0a19hcHBsaWNhdGlvbl9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfZ3RrX2FwcGxpY2F0aW9uX29iamVjdF9wYXRoICgpOworKwkJcHVibGljIHVub3duZWQg c3RyaW5nIGdldF9ndGtfbWVudWJhcl9vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfZ3RrX3RoZW1lX3ZhcmlhbnQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X2d0a191bmlxdWVfYnVzX25hbWUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcg Z2V0X2d0a193aW5kb3dfb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaWNvbl9n ZW9tZXRyeSAob3V0IE1ldGEuUmVjdGFuZ2xlIHJlY3QpOworKwkJcHVibGljIHVpbnQ2NCBnZXRf aWQgKCk7CisrCQlwdWJsaWMgTWV0YS5TdGFja0xheWVyIGdldF9sYXllciAoKTsKKysJCXB1Ymxp YyBNZXRhLk1heGltaXplRmxhZ3MgZ2V0X21heGltaXplZCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0 X21vbml0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X211dHRlcl9oaW50cyAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X3BpZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfcm9sZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfc2FuZGJveGVkX2FwcF9p ZCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9zdGFibGVfc2VxdWVuY2UgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X3N0YXJ0dXBfaWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRh LldpbmRvdz8gZ2V0X3RpbGVfbWF0Y2ggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X3RpdGxlICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X3RyYW5zaWVudF9m b3IgKCk7CisrCQlwdWJsaWMgdWludDMyIGdldF91c2VyX3RpbWUgKCk7CisrCQlwdWJsaWMgTWV0 YS5XaW5kb3dUeXBlIGdldF93aW5kb3dfdHlwZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfd21fY2xhc3MgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3dtX2NsYXNz X2luc3RhbmNlICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93b3JrX2FyZWFfYWxs X21vbml0b3JzICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93b3JrX2FyZWFfY3Vy cmVudF9tb25pdG9yICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93b3JrX2FyZWFf Zm9yX21vbml0b3IgKGludCB3aGljaF9tb25pdG9yKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEu V29ya3NwYWNlIGdldF93b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgWC5XaW5kb3cgZ2V0X3h3aW5k b3cgKCk7CisrCQlwdWJsaWMgdm9pZCBncm91cF9sZWFkZXJfY2hhbmdlZCAoKTsKKysJCXB1Ymxp YyBib29sIGhhc19mb2N1cyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Fib3ZlICgpOworKwkJcHVi bGljIGJvb2wgaXNfYWx3YXlzX29uX2FsbF93b3Jrc3BhY2VzICgpOworKwkJcHVibGljIGJvb2wg aXNfYW5jZXN0b3Jfb2ZfdHJhbnNpZW50IChNZXRhLldpbmRvdyB0cmFuc2llbnQpOworKwkJcHVi bGljIGJvb2wgaXNfYXR0YWNoZWRfZGlhbG9nICgpOworKwkJcHVibGljIGJvb2wgaXNfY2xpZW50 X2RlY29yYXRlZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Z1bGxzY3JlZW4gKCk7CisrCQlwdWJs aWMgYm9vbCBpc19oaWRkZW4gKCk7CisrCQlwdWJsaWMgYm9vbCBpc19tb25pdG9yX3NpemVkICgp OworKwkJcHVibGljIGJvb2wgaXNfb25fYWxsX3dvcmtzcGFjZXMgKCk7CisrCQlwdWJsaWMgYm9v bCBpc19vbl9wcmltYXJ5X21vbml0b3IgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19vdmVycmlkZV9y ZWRpcmVjdCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3JlbW90ZSAoKTsKKysJCXB1YmxpYyBib29s IGlzX3NjcmVlbl9zaXplZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3NoYWRlZCAoKTsKKysJCXB1 YmxpYyBib29sIGlzX3NraXBfdGFza2JhciAoKTsKKysJCXB1YmxpYyB2b2lkIGtpbGwgKCk7Cisr CQlwdWJsaWMgYm9vbCBsb2NhdGVkX29uX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3Nw YWNlKTsKKysJCXB1YmxpYyB2b2lkIGxvd2VyICgpOworKwkJcHVibGljIHZvaWQgbWFrZV9hYm92 ZSAoKTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfZnVsbHNjcmVlbiAoKTsKKysJCXB1YmxpYyB2b2lk IG1heGltaXplIChNZXRhLk1heGltaXplRmxhZ3MgZGlyZWN0aW9ucyk7CisrCQlwdWJsaWMgdm9p ZCBtaW5pbWl6ZSAoKTsKKysJCXB1YmxpYyB2b2lkIG1vdmVfZnJhbWUgKGJvb2wgdXNlcl9vcCwg aW50IHJvb3RfeF9udywgaW50IHJvb3RfeV9udyk7CisrCQlwdWJsaWMgdm9pZCBtb3ZlX3Jlc2l6 ZV9mcmFtZSAoYm9vbCB1c2VyX29wLCBpbnQgcm9vdF94X253LCBpbnQgcm9vdF95X253LCBpbnQg dywgaW50IGgpOworKwkJcHVibGljIHZvaWQgbW92ZV90b19tb25pdG9yIChpbnQgbW9uaXRvcik7 CisrCQlwdWJsaWMgdm9pZCByYWlzZSAoKTsKKysJCXB1YmxpYyBib29sIHJlcXVlc3RlZF9ieXBh c3NfY29tcG9zaXRvciAoKTsKKysJCXB1YmxpYyBib29sIHJlcXVlc3RlZF9kb250X2J5cGFzc19j b21wb3NpdG9yICgpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbXBvc2l0b3JfcHJpdmF0ZSAoR0xp Yi5PYmplY3QgcHJpdik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZGVtYW5kc19hdHRlbnRpb24gKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfaWNvbl9nZW9tZXRyeSAoTWV0YS5SZWN0YW5nbGU/IHJlY3Qp OworKwkJcHVibGljIHZvaWQgc2hhZGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZv aWQgc2hvdmVfdGl0bGViYXJfb25zY3JlZW4gKCk7CisrCQlwdWJsaWMgYm9vbCBzaG93aW5nX29u X2l0c193b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzaHV0ZG93bl9ncm91cCAoKTsKKysJ CXB1YmxpYyB2b2lkIHN0aWNrICgpOworKwkJcHVibGljIGJvb2wgdGl0bGViYXJfaXNfb25zY3Jl ZW4gKCk7CisrCQlwdWJsaWMgdm9pZCB1bm1ha2VfYWJvdmUgKCk7CisrCQlwdWJsaWMgdm9pZCB1 bm1ha2VfZnVsbHNjcmVlbiAoKTsKKysJCXB1YmxpYyB2b2lkIHVubWF4aW1pemUgKE1ldGEuTWF4 aW1pemVGbGFncyBkaXJlY3Rpb25zKTsKKysJCXB1YmxpYyB2b2lkIHVubWluaW1pemUgKCk7Cisr CQlwdWJsaWMgdm9pZCB1bnNldF9kZW1hbmRzX2F0dGVudGlvbiAoKTsKKysJCXB1YmxpYyB2b2lk IHVuc2hhZGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgdW5zdGljayAoKTsK KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgYWJvdmUgeyBnZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgYXBwZWFyc19mb2N1c2VkIHsgZ2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGRlY29yYXRlZCB7IGdl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBkZW1hbmRzX2F0dGVu dGlvbiB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBmdWxs c2NyZWVuIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19hcHBfbWVudV9vYmplY3RfcGF0 aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfYXBwbGljYXRpb25faWQgeyBnZXQ7IH0K KysJCXB1YmxpYyBzdHJpbmcgZ3RrX2FwcGxpY2F0aW9uX29iamVjdF9wYXRoIHsgZ2V0OyB9Cisr CQlwdWJsaWMgc3RyaW5nIGd0a19tZW51YmFyX29iamVjdF9wYXRoIHsgZ2V0OyB9CisrCQlwdWJs aWMgc3RyaW5nIGd0a191bmlxdWVfYnVzX25hbWUgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcg Z3RrX3dpbmRvd19vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgdm9pZCogaWNvbiB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgYm9vbCBtYXhpbWl6ZWRfaG9yaXpvbnRhbGx5IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG1heGltaXplZF92ZXJ0aWNhbGx5IHsgZ2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB2b2lkKiBtaW5pX2ljb24geyBnZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWluaW1pemVkIHsgZ2V0OyB9 CisrCQlwdWJsaWMgc3RyaW5nIG11dHRlcl9oaW50cyB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgYm9vbCBvbl9hbGxfd29ya3NwYWNlcyB7IGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCByZXNpemVhYmxlIHsgZ2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHNraXBfdGFza2JhciB7IGdldDsgfQor KwkJcHVibGljIHN0cmluZyB0aXRsZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgYm9vbCB1cmdlbnQgeyBnZXQ7IH0KKysJCXB1YmxpYyB1aW50IHVzZXJfdGltZSB7 IGdldDsgfQorKwkJcHVibGljIE1ldGEuV2luZG93VHlwZSB3aW5kb3dfdHlwZSB7IGdldDsgfQor KwkJcHVibGljIHN0cmluZyB3bV9jbGFzcyB7IGdldDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lk IHBvc2l0aW9uX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmFpc2VkICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3duICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNp emVfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB1bm1hbmFnZWQgKCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13aW5kb3ctYWN0b3IuaCIsIHR5cGVfaWQgPSAi bWV0YV93aW5kb3dfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNz IFdpbmRvd0FjdG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFu aW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdpbmRv d0FjdG9yICgpOworKwkJcHVibGljIENhaXJvLlN1cmZhY2U/IGdldF9pbWFnZSAoQ2Fpcm8uUmVj dGFuZ2xlSW50PyBjbGlwKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF9tZXRh X3dpbmRvdyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuU2hhcGVkVGV4dHVyZSBnZXRfdGV4 dHVyZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Rlc3Ryb3llZCAoKTsKKysJCXB1YmxpYyB2b2lk IHN5bmNfdmlzaWJpbGl0eSAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvdyBtZXRhX3dpbmRvdyB7 IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGFtYWdlZCAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBlZmZlY3RzX2NvbXBsZXRlZCAoKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBmaXJzdF9mcmFtZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0aGF3ZWQgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13aW5kb3ctZ3Jv dXAuaCIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfZ3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIFdpbmRvd0dyb3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBD bHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIFdpbmRvd0dyb3VwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21ldGEtd2luZG93LXNoYXBlLmgiLCByZWZfZnVuY3Rpb24gPSAibWV0YV93aW5kb3dfc2hh cGVfcmVmIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19zaGFwZV9nZXRfdHlwZSAoKSIsIHVucmVm X2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3VucmVmIildCisrCVtDb21wYWN0XQorKwlw dWJsaWMgY2xhc3MgV2luZG93U2hhcGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFdpbmRvd1NoYXBlIChDYWlyby5SZWdpb24gcmVnaW9u KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChNZXRhLldpbmRvd1NoYXBlIHNoYXBlX2IpOworKwkJ cHVibGljIHZvaWQgZ2V0X2JvcmRlcnMgKGludCBib3JkZXJfdG9wLCBpbnQgYm9yZGVyX3JpZ2h0 LCBpbnQgYm9yZGVyX2JvdHRvbSwgaW50IGJvcmRlcl9sZWZ0KTsKKysJCXB1YmxpYyB1aW50IGhh c2ggKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dTaGFwZSBAcmVmICgpOworKwkJcHVibGljIENh aXJvLlJlZ2lvbiB0b19yZWdpb24gKGludCBjZW50ZXJfd2lkdGgsIGludCBjZW50ZXJfaGVpZ2h0 KTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3dvcmtzcGFjZS5oIiwgdHlwZV9pZCA9ICJtZXRhX3dvcmtzcGFjZV9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgV29ya3NwYWNlIDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdv cmtzcGFjZSAoKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlICh1aW50MzIgdGltZXN0YW1wKTsK KysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlX3dpdGhfZm9jdXMgKE1ldGEuV2luZG93IGZvY3VzX3Ro aXMsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EaXNwbGF5IGdl dF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2UgZ2V0X25laWdo Ym9yIChNZXRhLk1vdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJcHVibGljIE1ldGEuUmVj dGFuZ2xlIGdldF93b3JrX2FyZWFfYWxsX21vbml0b3JzICgpOworKwkJcHVibGljIE1ldGEuUmVj dGFuZ2xlIGdldF93b3JrX2FyZWFfZm9yX21vbml0b3IgKGludCB3aGljaF9tb25pdG9yKTsKKysJ CXB1YmxpYyBpbnQgaW5kZXggKCk7CisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgTWV0YS5XaW5k b3c+IGxpc3Rfd2luZG93cyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9idWlsdGluX3N0cnV0cyAo R0xpYi5TTGlzdDxNZXRhLlN0cnV0Pz4gc3RydXRzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIHVpbnQgbl93aW5kb3dzIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyB1aW50IHdvcmtzcGFjZV9pbmRleCB7IGdldDsgfQorKwkJcHVibGljIHNpZ25h bCB2b2lkIHdpbmRvd19hZGRlZCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCB3aW5kb3dfcmVtb3ZlZCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdvcmtzcGFjZS1tYW5hZ2VyLmgiLCB0 eXBlX2lkID0gIm1ldGFfd29ya3NwYWNlX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIFdvcmtzcGFjZU1hbmFnZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV29ya3NwYWNlTWFuYWdl ciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGFwcGVuZF9uZXdfd29ya3Nw YWNlIChib29sIGFjdGl2YXRlLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB1bm93bmVk IE1ldGEuV29ya3NwYWNlIGdldF9hY3RpdmVfd29ya3NwYWNlICgpOworKwkJcHVibGljIGludCBn ZXRfYWN0aXZlX3dvcmtzcGFjZV9pbmRleCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fd29ya3Nw YWNlcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlPyBnZXRfd29ya3NwYWNl X2J5X2luZGV4IChpbnQgaW5kZXgpOworKwkJcHVibGljIHZvaWQgb3ZlcnJpZGVfd29ya3NwYWNl X2xheW91dCAoTWV0YS5EaXNwbGF5Q29ybmVyIHN0YXJ0aW5nX2Nvcm5lciwgYm9vbCB2ZXJ0aWNh bF9sYXlvdXQsIGludCBuX3Jvd3MsIGludCBuX2NvbHVtbnMpOworKwkJcHVibGljIHZvaWQgcmVt b3ZlX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlLCB1aW50MzIgdGltZXN0YW1w KTsKKysJCXB1YmxpYyB2b2lkIHJlb3JkZXJfd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jr c3BhY2UsIGludCBuZXdfaW5kZXgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg aW50IGxheW91dF9jb2x1bW5zIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBpbnQgbGF5b3V0X3Jvd3MgeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQgbl93b3Jrc3BhY2Vz IHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgYWN0aXZlX3dvcmtzcGFjZV9jaGFuZ2Vk ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dpbmdfZGVza3RvcF9jaGFuZ2VkICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9hZGRlZCAoaW50IG9iamVjdCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX3JlbW92ZWQgKGludCBvYmplY3QpOworKwkJcHVi bGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9zd2l0Y2hlZCAoaW50IG9iamVjdCwgaW50IHAwLCBN ZXRhLk1vdGlvbkRpcmVjdGlvbiBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNl c19yZW9yZGVyZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS14MTEtZGlzcGxheS5oIiwgdHlwZV9pZCA9ICJtZXRhX3gxMV9kaXNwbGF5X2dldF90eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBYMTFEaXNwbGF5IDogR0xpYi5PYmplY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFgxMURp c3BsYXkgKCk7CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9zdGFnZV9pbnB1dF9yZWdpb24gKCk7Cisr CQlwdWJsaWMgaW50IGdldF9kYW1hZ2VfZXZlbnRfYmFzZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0 X3NjcmVlbl9udW1iZXIgKCk7CisrCQlwdWJsaWMgaW50IGdldF9zaGFwZV9ldmVudF9iYXNlICgp OworKwkJcHVibGljIGJvb2wgaGFzX3NoYXBlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2NtX3Nl bGVjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zdGFnZV9pbnB1dF9yZWdpb24gKFguWHNl cnZlclJlZ2lvbiByZWdpb24pOworKwkJcHVibGljIGJvb2wgeHdpbmRvd19pc19hX25vX2ZvY3Vz X3dpbmRvdyAoWC5XaW5kb3cgeHdpbmRvdyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWV0YS1jbG9zZS1kaWFsb2cuaCIsIHR5cGVfY25hbWUgPSAiTWV0YUNsb3Nl RGlhbG9nSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJtZXRhX2Nsb3NlX2RpYWxvZ19nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENsb3NlRGlhbG9nIDogR0xpYi5PYmplY3QgeworKwkJ cHVibGljIGFic3RyYWN0IHZvaWQgZm9jdXMgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBo aWRlICgpOworKwkJcHVibGljIGJvb2wgaXNfdmlzaWJsZSAoKTsKKysJCXB1YmxpYyBhYnN0cmFj dCB2b2lkIHNob3cgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBhYnN0cmFj dCBNZXRhLldpbmRvdyB3aW5kb3cgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW0hhc0Vt aXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzcG9uc2UgKE1ldGEuQ2xvc2VEaWFsb2dS ZXNwb25zZSByZXNwb25zZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWV0YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIsIHR5cGVfY25hbWUgPSAiTWV0YUlu aGliaXRTaG9ydGN1dHNEaWFsb2dJbnRlcmZhY2UiLCB0eXBlX2lkID0gIm1ldGFfaW5oaWJpdF9z aG9ydGN1dHNfZGlhbG9nX2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgSW5oaWJp dFNob3J0Y3V0c0RpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lk IGhpZGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93ICgpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0YS5XaW5kb3cgd2luZG93IHsgb3duZWQg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lk IHJlc3BvbnNlIChNZXRhLkluaGliaXRTaG9ydGN1dHNEaWFsb2dSZXNwb25zZSByZXNwb25zZSk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQnV0dG9uTGF5b3V0IHsKKysJCVtDQ29k ZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgTWV0YS5CdXR0b25GdW5j dGlvbiBsZWZ0X2J1dHRvbnNbNF07CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0K KysJCXB1YmxpYyB3ZWFrIGJvb2wgbGVmdF9idXR0b25zX2hhc19zcGFjZXJbNF07CisrCQlbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIE1ldGEuQnV0dG9uRnVu Y3Rpb24gcmlnaHRfYnV0dG9uc1s0XTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2Up XQorKwkJcHVibGljIHdlYWsgYm9vbCByaWdodF9idXR0b25zX2hhc19zcGFjZXJbNF07CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgRWRnZSB7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5n bGUgcmVjdDsKKysJCXB1YmxpYyBNZXRhLlNpZGUgc2lkZV90eXBlOworKwkJcHVibGljIE1ldGEu RWRnZVR5cGUgZWRnZV90eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IEZyYW1l Qm9yZGVycyB7CisrCQlwdWJsaWMgR3RrLkJvcmRlciB2aXNpYmxlOworKwkJcHVibGljIEd0ay5C b3JkZXIgaW52aXNpYmxlOworKwkJcHVibGljIEd0ay5Cb3JkZXIgdG90YWw7CisrCQlwdWJsaWMg dm9pZCBjbGVhciAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t ZXRhLXBsdWdpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGx1 Z2luSW5mbyB7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbmFtZTsKKysJCXB1YmxpYyB3ZWFrIHN0 cmluZyB2ZXJzaW9uOworKwkJcHVibGljIHdlYWsgc3RyaW5nIGF1dGhvcjsKKysJCXB1YmxpYyB3 ZWFrIHN0cmluZyBsaWNlbnNlOworKwkJcHVibGljIHdlYWsgc3RyaW5nIGRlc2NyaXB0aW9uOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdpblZlcnNpb24geworKwkJcHVibGlj IHVpbnQgdmVyc2lvbl9tYWpvcjsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fbWlub3I7CisrCQlw dWJsaWMgdWludCB2ZXJzaW9uX21pY3JvOworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9hcGk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY29weV9mdW5j dGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5 cGVfaWQgPSAibWV0YV9yZWN0YW5nbGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBS ZWN0YW5nbGUgeworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGludCB5OworKwkJcHVibGlj IGludCB3aWR0aDsKKysJCXB1YmxpYyBpbnQgaGVpZ2h0OworKwkJcHVibGljIGludCBhcmVhICgp OworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcmVjdCAoTWV0YS5SZWN0YW5nbGUgaW5uZXJfcmVj dCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGU/IGNvcHkgKCk7CisrCQlwdWJsaWMgYm9vbCBj b3VsZF9maXRfcmVjdCAoTWV0YS5SZWN0YW5nbGUgaW5uZXJfcmVjdCk7CisrCQlwdWJsaWMgYm9v bCBlcXVhbCAoTWV0YS5SZWN0YW5nbGUgc3JjMik7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOwor KwkJcHVibGljIGJvb2wgaG9yaXpfb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOworKwkJ cHVibGljIGJvb2wgaW50ZXJzZWN0IChNZXRhLlJlY3RhbmdsZSBzcmMyLCBvdXQgTWV0YS5SZWN0 YW5nbGUgZGVzdCk7CisrCQlwdWJsaWMgYm9vbCBvdmVybGFwIChNZXRhLlJlY3RhbmdsZSByZWN0 Mik7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgdW5pb24gKE1ldGEuUmVjdGFuZ2xlIHJlY3Qy KTsKKysJCXB1YmxpYyBib29sIHZlcnRfb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFNoYWRvd1BhcmFtcyB7CisrCQlwdWJsaWMg aW50IHJhZGl1czsKKysJCXB1YmxpYyBpbnQgdG9wX2ZhZGU7CisrCQlwdWJsaWMgaW50IHhfb2Zm c2V0OworKwkJcHVibGljIGludCB5X29mZnNldDsKKysJCXB1YmxpYyB1aW50OCBvcGFjaXR5Owor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFN0cnV0IHsKKysJCXB1YmxpYyBNZXRhLlJl Y3RhbmdsZSByZWN0OworKwkJcHVibGljIE1ldGEuU2lkZSBzaWRlOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9CQVJSSUVS X0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfYmFycmllcl9kaXJlY3Rpb25fZ2V0X3R5cGUg KCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBCYXJyaWVyRGlyZWN0aW9uIHsKKysJCVBP U0lUSVZFX1gsCisrCQlQT1NJVElWRV9ZLAorKwkJTkVHQVRJVkVfWCwKKysJCU5FR0FUSVZFX1kK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4 ID0gIk1FVEFfQlVUVE9OX0ZVTkNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9idXR0b25fZnVuY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQnV0dG9uRnVuY3Rpb24geworKwkJTUVO VSwKKysJCU1JTklNSVpFLAorKwkJTUFYSU1JWkUsCisrCQlDTE9TRSwKKysJCUxBU1QKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfQ0xPU0VfRElBTE9HX1JFU1BPTlNFXyIsIHR5cGVfaWQgPSAibWV0YV9jbG9zZV9kaWFsb2df cmVzcG9uc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQ2xvc2VEaWFsb2dSZXNwb25z ZSB7CisrCQlXQUlULAorKwkJRk9SQ0VfQ0xPU0UKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQ09NUF9FRkZFQ1RfIiwgdHlw ZV9pZCA9ICJtZXRhX2NvbXBfZWZmZWN0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIENv bXBFZmZlY3QgeworKwkJQ1JFQVRFLAorKwkJVU5NSU5JTUlaRSwKKysJCURFU1RST1ksCisrCQlN SU5JTUlaRSwKKysJCU5PTkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQ1VSU09SXyIsIHR5cGVfaWQgPSAibWV0YV9jdXJz b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQ3Vyc29yIHsKKysJCU5PTkUsCisrCQlE RUZBVUxULAorKwkJTk9SVEhfUkVTSVpFLAorKwkJU09VVEhfUkVTSVpFLAorKwkJV0VTVF9SRVNJ WkUsCisrCQlFQVNUX1JFU0laRSwKKysJCVNFX1JFU0laRSwKKysJCVNXX1JFU0laRSwKKysJCU5F X1JFU0laRSwKKysJCU5XX1JFU0laRSwKKysJCU1PVkVfT1JfUkVTSVpFX1dJTkRPVywKKysJCUJV U1ksCisrCQlETkRfSU5fRFJBRywKKysJCURORF9NT1ZFLAorKwkJRE5EX0NPUFksCisrCQlETkRf VU5TVVBQT1JURURfVEFSR0VULAorKwkJUE9JTlRJTkdfSEFORCwKKysJCUNST1NTSEFJUiwKKysJ CUlCRUFNLAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ERUJVR18iLCB0eXBlX2lkID0gIm1ldGFfZGVidWdf dG9waWNfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBEZWJ1Z1RvcGlj IHsKKysJCVZFUkJPU0UsCisrCQlGT0NVUywKKysJCVdPUktBUkVBLAorKwkJU1RBQ0ssCisrCQlU SEVNRVMsCisrCQlTTSwKKysJCUVWRU5UUywKKysJCVdJTkRPV19TVEFURSwKKysJCVdJTkRPV19P UFMsCisrCQlHRU9NRVRSWSwKKysJCVBMQUNFTUVOVCwKKysJCVBJTkcsCisrCQlYSU5FUkFNQSwK KysJCUtFWUJJTkRJTkdTLAorKwkJU1lOQywKKysJCUVSUk9SUywKKysJCVNUQVJUVVAsCisrCQlQ UkVGUywKKysJCUdST1VQUywKKysJCVJFU0laSU5HLAorKwkJU0hBUEVTLAorKwkJQ09NUE9TSVRP UiwKKysJCUVER0VfUkVTSVNUQU5DRSwKKysJCURCVVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRElSRUNUSU9OXyIsIHR5 cGVfaWQgPSAibWV0YV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJs aWMgZW51bSBEaXJlY3Rpb24geworKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVE9QLAorKwkJQk9U VE9NLAorKwkJVVAsCisrCQlET1dOLAorKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBX0RJU1BMQVlfIiwgdHlwZV9pZCA9ICJtZXRhX2Rpc3BsYXlfY29ybmVyX2dldF90eXBlICgp IildCisrCXB1YmxpYyBlbnVtIERpc3BsYXlDb3JuZXIgeworKwkJVE9QTEVGVCwKKysJCVRPUFJJ R0hULAorKwkJQk9UVE9NTEVGVCwKKysJCUJPVFRPTVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RJU1BMQVlfIiwg dHlwZV9pZCA9ICJtZXRhX2Rpc3BsYXlfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIERpc3BsYXlEaXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJ CVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y3ByZWZpeCA9ICJNRVRBX0VER0VfIiwgdHlwZV9pZCA9ICJtZXRhX2VkZ2VfdHlwZV9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgZW51bSBFZGdlVHlwZSB7CisrCQlXSU5ET1csCisrCQlNT05JVE9S LAorKwkJU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY3ByZWZpeCA9ICJNRVRBX0VYSVRfIiwgdHlwZV9pZCA9ICJtZXRhX2V4aXRfY29kZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBFeGl0Q29kZSB7CisrCQlTVUNDRVNTLAorKwkJ RVJST1IKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj cHJlZml4ID0gIk1FVEFfRlJBTUVfIiwgdHlwZV9pZCA9ICJtZXRhX2ZyYW1lX2ZsYWdzX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRnJhbWVGbGFncyB7CisrCQlBTExP V1NfREVMRVRFLAorKwkJQUxMT1dTX01FTlUsCisrCQlBTExPV1NfTUlOSU1JWkUsCisrCQlBTExP V1NfTUFYSU1JWkUsCisrCQlBTExPV1NfVkVSVElDQUxfUkVTSVpFLAorKwkJQUxMT1dTX0hPUkla T05UQUxfUkVTSVpFLAorKwkJSEFTX0ZPQ1VTLAorKwkJU0hBREVELAorKwkJU1RVQ0ssCisrCQlN QVhJTUlaRUQsCisrCQlBTExPV1NfU0hBREUsCisrCQlBTExPV1NfTU9WRSwKKysJCUZVTExTQ1JF RU4sCisrCQlBQk9WRSwKKysJCVRJTEVEX0xFRlQsCisrCQlUSUxFRF9SSUdIVAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9G UkFNRV9UWVBFXyIsIHR5cGVfaWQgPSAibWV0YV9mcmFtZV90eXBlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIEZyYW1lVHlwZSB7CisrCQlOT1JNQUwsCisrCQlESUFMT0csCisrCQlNT0RB TF9ESUFMT0csCisrCQlVVElMSVRZLAorKwkJTUVOVSwKKysJCUJPUkRFUiwKKysJCUFUVEFDSEVE LAorKwkJTEFTVDsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBX0dSQUJfT1BfIiwgdHlwZV9pZCA9ICJtZXRhX2dyYWJfb3BfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gR3JhYk9wIHsKKysJCU5PTkUsCisrCQlXSU5ET1dfQkFTRSwKKysJCUNPTVBP U0lUT1IsCisrCQlXQVlMQU5EX1BPUFVQLAorKwkJRlJBTUVfQlVUVE9OLAorKwkJTU9WSU5HLAor KwkJUkVTSVpJTkdfTlcsCisrCQlSRVNJWklOR19OLAorKwkJUkVTSVpJTkdfTkUsCisrCQlSRVNJ WklOR19FLAorKwkJUkVTSVpJTkdfU1csCisrCQlSRVNJWklOR19TLAorKwkJUkVTSVpJTkdfU0Us CisrCQlSRVNJWklOR19XLAorKwkJS0VZQk9BUkRfTU9WSU5HLAorKwkJS0VZQk9BUkRfUkVTSVpJ TkdfVU5LTk9XTiwKKysJCUtFWUJPQVJEX1JFU0laSU5HX05XLAorKwkJS0VZQk9BUkRfUkVTSVpJ TkdfTiwKKysJCUtFWUJPQVJEX1JFU0laSU5HX05FLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfRSwK KysJCUtFWUJPQVJEX1JFU0laSU5HX1NXLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfUywKKysJCUtF WUJPQVJEX1JFU0laSU5HX1NFLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfVworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9JTkhJ QklUX1NIT1JUQ1VUU19ESUFMT0dfUkVTUE9OU0VfIiwgdHlwZV9pZCA9ICJtZXRhX2luaGliaXRf c2hvcnRjdXRzX2RpYWxvZ19yZXNwb25zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJ bmhpYml0U2hvcnRjdXRzRGlhbG9nUmVzcG9uc2UgeworKwkJQUxMT1csCisrCQlERU5ZCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBX0tFWUJJTkRJTkdfQUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmluZGluZ19hY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gS2V5QmluZGluZ0FjdGlvbiB7CisrCQlO T05FLAorKwkJV09SS1NQQUNFXzEsCisrCQlXT1JLU1BBQ0VfMiwKKysJCVdPUktTUEFDRV8zLAor KwkJV09SS1NQQUNFXzQsCisrCQlXT1JLU1BBQ0VfNSwKKysJCVdPUktTUEFDRV82LAorKwkJV09S S1NQQUNFXzcsCisrCQlXT1JLU1BBQ0VfOCwKKysJCVdPUktTUEFDRV85LAorKwkJV09SS1NQQUNF XzEwLAorKwkJV09SS1NQQUNFXzExLAorKwkJV09SS1NQQUNFXzEyLAorKwkJV09SS1NQQUNFX0xF RlQsCisrCQlXT1JLU1BBQ0VfUklHSFQsCisrCQlXT1JLU1BBQ0VfVVAsCisrCQlXT1JLU1BBQ0Vf RE9XTiwKKysJCVdPUktTUEFDRV9MQVNULAorKwkJU1dJVENIX0FQUExJQ0FUSU9OUywKKysJCVNX SVRDSF9BUFBMSUNBVElPTlNfQkFDS1dBUkQsCisrCQlTV0lUQ0hfR1JPVVAsCisrCQlTV0lUQ0hf R1JPVVBfQkFDS1dBUkQsCisrCQlTV0lUQ0hfV0lORE9XUywKKysJCVNXSVRDSF9XSU5ET1dTX0JB Q0tXQVJELAorKwkJU1dJVENIX1BBTkVMUywKKysJCVNXSVRDSF9QQU5FTFNfQkFDS1dBUkQsCisr CQlDWUNMRV9HUk9VUCwKKysJCUNZQ0xFX0dST1VQX0JBQ0tXQVJELAorKwkJQ1lDTEVfV0lORE9X UywKKysJCUNZQ0xFX1dJTkRPV1NfQkFDS1dBUkQsCisrCQlDWUNMRV9QQU5FTFMsCisrCQlDWUNM RV9QQU5FTFNfQkFDS1dBUkQsCisrCQlTSE9XX0RFU0tUT1AsCisrCQlQQU5FTF9NQUlOX01FTlUs CisrCQlQQU5FTF9SVU5fRElBTE9HLAorKwkJVE9HR0xFX1JFQ09SRElORywKKysJCVNFVF9TUEVX X01BUkssCisrCQlBQ1RJVkFURV9XSU5ET1dfTUVOVSwKKysJCVRPR0dMRV9GVUxMU0NSRUVOLAor KwkJVE9HR0xFX01BWElNSVpFRCwKKysJCVRPR0dMRV9USUxFRF9MRUZULAorKwkJVE9HR0xFX1RJ TEVEX1JJR0hULAorKwkJVE9HR0xFX0FCT1ZFLAorKwkJTUFYSU1JWkUsCisrCQlVTk1BWElNSVpF LAorKwkJVE9HR0xFX1NIQURFRCwKKysJCU1JTklNSVpFLAorKwkJQ0xPU0UsCisrCQlCRUdJTl9N T1ZFLAorKwkJQkVHSU5fUkVTSVpFLAorKwkJVE9HR0xFX09OX0FMTF9XT1JLU1BBQ0VTLAorKwkJ TU9WRV9UT19XT1JLU1BBQ0VfMSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzIsCisrCQlNT1ZFX1RP X1dPUktTUEFDRV8zLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfNCwKKysJCU1PVkVfVE9fV09SS1NQ QUNFXzUsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV82LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfNywK KysJCU1PVkVfVE9fV09SS1NQQUNFXzgsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV85LAorKwkJTU9W RV9UT19XT1JLU1BBQ0VfMTAsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xMSwKKysJCU1PVkVfVE9f V09SS1NQQUNFXzEyLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfTEVGVCwKKysJCU1PVkVfVE9fV09S S1NQQUNFX1JJR0hULAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfVVAsCisrCQlNT1ZFX1RPX1dPUktT UEFDRV9ET1dOLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfTEFTVCwKKysJCU1PVkVfVE9fTU9OSVRP Ul9MRUZULAorKwkJTU9WRV9UT19NT05JVE9SX1JJR0hULAorKwkJTU9WRV9UT19NT05JVE9SX1VQ LAorKwkJTU9WRV9UT19NT05JVE9SX0RPV04sCisrCQlSQUlTRV9PUl9MT1dFUiwKKysJCVJBSVNF LAorKwkJTE9XRVIsCisrCQlNQVhJTUlaRV9WRVJUSUNBTExZLAorKwkJTUFYSU1JWkVfSE9SSVpP TlRBTExZLAorKwkJTU9WRV9UT19DT1JORVJfTlcsCisrCQlNT1ZFX1RPX0NPUk5FUl9ORSwKKysJ CU1PVkVfVE9fQ09STkVSX1NXLAorKwkJTU9WRV9UT19DT1JORVJfU0UsCisrCQlNT1ZFX1RPX1NJ REVfTiwKKysJCU1PVkVfVE9fU0lERV9TLAorKwkJTU9WRV9UT19TSURFX0UsCisrCQlNT1ZFX1RP X1NJREVfVywKKysJCU1PVkVfVE9fQ0VOVEVSLAorKwkJT1ZFUkxBWV9LRVksCisrCQlMT0NBVEVf UE9JTlRFUl9LRVksCisrCQlJU09fTkVYVF9HUk9VUCwKKysJCUFMV0FZU19PTl9UT1AsCisrCQlT V0lUQ0hfTU9OSVRPUiwKKysJCVJPVEFURV9NT05JVE9SLAorKwkJTEFTVAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9LRVlf QklORElOR18iLCB0eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfZmxhZ3NfZ2V0X3R5cGUgKCki KV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBLZXlCaW5kaW5nRmxhZ3MgeworKwkJTk9ORSwK KysJCVBFUl9XSU5ET1csCisrCQlCVUlMVElOLAorKwkJSVNfUkVWRVJTRUQsCisrCQlOT05fTUFT S0FCTEUsCisrCQlJR05PUkVfQVVUT1JFUEVBVCwKKysJCU5PX0FVVE9fR1JBQgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9M QVRFUl8iLCB0eXBlX2lkID0gIm1ldGFfbGF0ZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBMYXRlclR5cGUgeworKwkJUkVTSVpFLAorKwkJQ0FMQ19TSE9XSU5HLAorKwkJQ0hF Q0tfRlVMTFNDUkVFTiwKKysJCVNZTkNfU1RBQ0ssCisrCQlCRUZPUkVfUkVEUkFXLAorKwkJSURM RQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVm aXggPSAiTUVUQV9MT0NBTEVfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9sb2NhbGVfZGly ZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIExvY2FsZURpcmVjdGlvbiB7Cisr CQlMVFIsCisrCQlSVEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTUFYSU1JWkVfIiwgdHlwZV9pZCA9ICJtZXRhX21heGlt aXplX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gTWF4aW1p emVGbGFncyB7CisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwsCisrCQlCT1RICisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X01PREFMXyIsIHR5cGVfaWQgPSAibWV0YV9tb2RhbF9vcHRpb25zX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJcHVibGljIGVudW0gTW9kYWxPcHRpb25zIHsKKysJCVBPSU5URVJfQUxSRUFE WV9HUkFCQkVELAorKwkJS0VZQk9BUkRfQUxSRUFEWV9HUkFCQkVECisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX01PTklUT1Jf U1dJVENIX0NPTkZJR18iLCB0eXBlX2lkID0gIm1ldGFfbW9uaXRvcl9zd2l0Y2hfY29uZmlnX3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTW9uaXRvclN3aXRjaENvbmZpZ1R5cGUg eworKwkJQUxMX01JUlJPUiwKKysJCUFMTF9MSU5FQVIsCisrCQlFWFRFUk5BTCwKKysJCUJVSUxU SU4sCisrCQlVTktOT1dOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX01PVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfbW90aW9u X2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBNb3Rpb25EaXJlY3Rpb24g eworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVVBfTEVGVCwKKysJ CVVQX1JJR0hULAorKwkJRE9XTl9MRUZULAorKwkJRE9XTl9SSUdIVAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9QQURfQUNU SU9OXyIsIHR5cGVfaWQgPSAibWV0YV9wYWRfYWN0aW9uX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gUGFkQWN0aW9uVHlwZSB7CisrCQlCVVRUT04sCisrCQlSSU5HLAorKwkJU1RS SVAKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY3By ZWZpeCA9ICJNRVRBX1BSRUZfIiwgdHlwZV9pZCA9ICJtZXRhX3ByZWZlcmVuY2VfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gUHJlZmVyZW5jZSB7CisrCQlNT1VTRV9CVVRUT05fTU9EUywK KysJCUZPQ1VTX01PREUsCisrCQlGT0NVU19ORVdfV0lORE9XUywKKysJCUFUVEFDSF9NT0RBTF9E SUFMT0dTLAorKwkJUkFJU0VfT05fQ0xJQ0ssCisrCQlBQ1RJT05fRE9VQkxFX0NMSUNLX1RJVExF QkFSLAorKwkJQUNUSU9OX01JRERMRV9DTElDS19USVRMRUJBUiwKKysJCUFDVElPTl9SSUdIVF9D TElDS19USVRMRUJBUiwKKysJCUFVVE9fUkFJU0UsCisrCQlBVVRPX1JBSVNFX0RFTEFZLAorKwkJ Rk9DVVNfQ0hBTkdFX09OX1BPSU5URVJfUkVTVCwKKysJCVRJVExFQkFSX0ZPTlQsCisrCQlOVU1f V09SS1NQQUNFUywKKysJCURZTkFNSUNfV09SS1NQQUNFUywKKysJCUtFWUJJTkRJTkdTLAorKwkJ RElTQUJMRV9XT1JLQVJPVU5EUywKKysJCUJVVFRPTl9MQVlPVVQsCisrCQlXT1JLU1BBQ0VfTkFN RVMsCisrCQlWSVNVQUxfQkVMTCwKKysJCUFVRElCTEVfQkVMTCwKKysJCVZJU1VBTF9CRUxMX1RZ UEUsCisrCQlHTk9NRV9BQ0NFU1NJQklMSVRZLAorKwkJR05PTUVfQU5JTUFUSU9OUywKKysJCUNV UlNPUl9USEVNRSwKKysJCUNVUlNPUl9TSVpFLAorKwkJUkVTSVpFX1dJVEhfUklHSFRfQlVUVE9O LAorKwkJRURHRV9USUxJTkcsCisrCQlGT1JDRV9GVUxMU0NSRUVOLAorKwkJV09SS1NQQUNFU19P TkxZX09OX1BSSU1BUlksCisrCQlEUkFHR0FCTEVfQk9SREVSX1dJRFRILAorKwkJQVVUT19NQVhJ TUlaRSwKKysJCUNFTlRFUl9ORVdfV0lORE9XUywKKysJCURSQUdfVEhSRVNIT0xELAorKwkJTE9D QVRFX1BPSU5URVI7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV8iLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gU2VsZWN0aW9uVHlwZSB7CisrCQlTRUxFQ1RJT05fUFJJTUFSWSwKKysJCVNF TEVDVElPTl9DTElQQk9BUkQsCisrCQlTRUxFQ1RJT05fRE5ELAorKwkJTl9TRUxFQ1RJT05fVFlQ RVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJl Zml4ID0gIk1FVEFfU0hBRE9XX01PREVfIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRvd19tb2RlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNoYWRvd01vZGUgeworKwkJQVVUTywKKysJCUZP UkNFRF9PRkYsCisrCQlGT1JDRURfT04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfU0lERV8iLCB0eXBlX2lkID0gIm1ldGFf c2lkZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTaWRlIHsKKysJCUxFRlQsCisrCQlS SUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9TSVpFX0NIQU5HRV8iLCB0eXBlX2lk ID0gIm1ldGFfc2l6ZV9jaGFuZ2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gU2l6ZUNo YW5nZSB7CisrCQlNQVhJTUlaRSwKKysJCVVOTUFYSU1JWkUsCisrCQlGVUxMU0NSRUVOLAorKwkJ VU5GVUxMU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY3ByZWZpeCA9ICJNRVRBX0xBWUVSXyIsIHR5cGVfaWQgPSAibWV0YV9zdGFja19sYXll cl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTdGFja0xheWVyIHsKKysJCURFU0tUT1As CisrCQlCT1RUT00sCisrCQlOT1JNQUwsCisrCQlUT1AsCisrCQlET0NLLAorKwkJT1ZFUlJJREVf UkVESVJFQ1QsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1RBQl9MSVNUXyIsIHR5cGVfaWQgPSAibWV0YV90 YWJfbGlzdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBUYWJMaXN0IHsKKysJCU5PUk1B TCwKKysJCURPQ0tTLAorKwkJR1JPVVAsCisrCQlOT1JNQUxfQUxMCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1RBQl9TSE9X XyIsIHR5cGVfaWQgPSAibWV0YV90YWJfc2hvd190eXBlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIFRhYlNob3dUeXBlIHsKKysJCUlDT04sCisrCQlJTlNUQU5UTFkKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfVklS VFVBTF8iLCB0eXBlX2lkID0gIm1ldGFfdmlydHVhbF9tb2RpZmllcl9nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFZpcnR1YWxNb2RpZmllciB7CisrCQlTSElGVF9NQVNL LAorKwkJQ09OVFJPTF9NQVNLLAorKwkJQUxUX01BU0ssCisrCQlNRVRBX01BU0ssCisrCQlTVVBF Ul9NQVNLLAorKwkJSFlQRVJfTUFTSywKKysJCU1PRDJfTUFTSywKKysJCU1PRDNfTUFTSywKKysJ CU1PRDRfTUFTSywKKysJCU1PRDVfTUFTSworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9XSU5ET1dfQ0xJRU5UX1RZUEVfIiwg dHlwZV9pZCA9ICJtZXRhX3dpbmRvd19jbGllbnRfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBXaW5kb3dDbGllbnRUeXBlIHsKKysJCVdBWUxBTkQsCisrCQlYMTEKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFf V0lORE9XX01FTlVfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19tZW51X3R5cGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gV2luZG93TWVudVR5cGUgeworKwkJV00sCisrCQlBUFAKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfV0lORE9XXyIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfdHlwZV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgZW51bSBXaW5kb3dUeXBlIHsKKysJCU5PUk1BTCwKKysJCURFU0tUT1AsCisr CQlET0NLLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElBTE9HLAorKwkJVE9PTEJBUiwKKysJCU1F TlUsCisrCQlVVElMSVRZLAorKwkJU1BMQVNIU0NSRUVOLAorKwkJRFJPUERPV05fTUVOVSwKKysJ CVBPUFVQX01FTlUsCisrCQlUT09MVElQLAorKwkJTk9USUZJQ0FUSU9OLAorKwkJQ09NQk8sCisr CQlETkQsCisrCQlPVkVSUklERV9PVEhFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDIuOSldCisrCXB1YmxpYyBkZWxlZ2F0 ZSB2b2lkIElkbGVNb25pdG9yV2F0Y2hGdW5jIChNZXRhLklkbGVNb25pdG9yIG1vbml0b3IsIHVp bnQgd2F0Y2hfaWQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBpbnN0YW5jZV9wb3MgPSA0LjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBLZXlIYW5kbGVy RnVuYyAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIE1ldGEuV2luZG93IHdpbmRvdywgW0NDb2RlICh0 eXBlID0gIkNsdXR0ZXJLZXlFdmVudCoiKV0gQ2x1dHRlci5LZXlFdmVudD8gZXZlbnQsIE1ldGEu S2V5QmluZGluZyBiaW5kaW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgUHJl ZnNDaGFuZ2VkRnVuYyAoTWV0YS5QcmVmZXJlbmNlIHByZWYpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlwdWJsaWMg ZGVsZWdhdGUgYm9vbCBXaW5kb3dGb3JlYWNoRnVuYyAoTWV0YS5XaW5kb3cgd2luZG93KTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9D VVJSRU5UX1RJTUUiKV0KKysJcHVibGljIGNvbnN0IGludCBDVVJSRU5UX1RJTUU7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfREVGQVVM VF9JQ09OX05BTUUiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBERUZBVUxUX0lDT05fTkFNRTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVU QV9JQ09OX0hFSUdIVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IElDT05fSEVJR0hUOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0lDT05f V0lEVEgiKV0KKysJcHVibGljIGNvbnN0IGludCBJQ09OX1dJRFRIOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01BSk9SX1ZFUlNJT04i KV0KKysJcHVibGljIGNvbnN0IGludCBNQUpPUl9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JQ1JPX1ZFUlNJT04iKV0K KysJcHVibGljIGNvbnN0IGludCBNSUNST19WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JTklfSUNPTl9IRUlHSFQiKV0K KysJcHVibGljIGNvbnN0IGludCBNSU5JX0lDT05fSEVJR0hUOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JTklfSUNPTl9XSURUSCIp XQorKwlwdWJsaWMgY29uc3QgaW50IE1JTklfSUNPTl9XSURUSDsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSU5PUl9WRVJTSU9OIild CisrCXB1YmxpYyBjb25zdCBpbnQgTUlOT1JfVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QTFVHSU5fQVBJX1ZFUlNJT04i KV0KKysJcHVibGljIGNvbnN0IGludCBQTFVHSU5fQVBJX1ZFUlNJT047CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJT1JJVFlfQkVG T1JFX1JFRFJBVyIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX0JFRk9SRV9SRURSQVc7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1F VEFfUFJJT1JJVFlfUFJFRlNfTk9USUZZIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlf UFJFRlNfTk9USUZZOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1JFRFJBVyIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBS SU9SSVRZX1JFRFJBVzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9SRVNJWkUiKV0KKysJcHVibGljIGNvbnN0IGludCBQ UklPUklUWV9SRVNJWkU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNuYW1lID0gIk1FVEFfVklSVFVBTF9DT1JFX0tFWUJPQVJEX0lEIildCisrCXB1YmxpYyBj b25zdCBpbnQgVklSVFVBTF9DT1JFX0tFWUJPQVJEX0lEOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1ZJUlRVQUxfQ09SRV9QT0lOVEVS X0lEIildCisrCXB1YmxpYyBjb25zdCBpbnQgVklSVFVBTF9DT1JFX1BPSU5URVJfSUQ7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgYWN0aXZhdGVfc2Vzc2lvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBhZGRfY2x1dHRlcl9kZWJ1Z19m bGFncyAoQ2x1dHRlci5EZWJ1Z0ZsYWcgZGVidWdfZmxhZ3MsIENsdXR0ZXIuRHJhd0RlYnVnRmxh ZyBkcmF3X2ZsYWdzLCBDbHV0dGVyLlBpY2tEZWJ1Z0ZsYWcgcGlja19mbGFncyk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgZXhpdCAoTWV0YS5FeGl0Q29kZSBjb2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgc3RyaW5nIGdfdXRmOF9zdHJuZHVw IChzdHJpbmcgc3JjLCBzaXplX3Qgbik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5PcHRpb25Db250ZXh0 IGdldF9vcHRpb25fY29udGV4dCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfcmVwbGFjZV9jdXJyZW50X3dt ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVi bGljIHN0YXRpYyB2b2lkIGluaXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfcmVzdGFydCAoKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMg dm9pZCBxdWl0IChNZXRhLkV4aXRDb2RlIGNvZGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHJlZ2lzdGVyX3dpdGhf c2Vzc2lvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIild CisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVfY2x1dHRlcl9kZWJ1Z19mbGFncyAoQ2x1dHRl ci5EZWJ1Z0ZsYWcgZGVidWdfZmxhZ3MsIENsdXR0ZXIuRHJhd0RlYnVnRmxhZyBkcmF3X2ZsYWdz LCBDbHV0dGVyLlBpY2tEZWJ1Z0ZsYWcgcGlja19mbGFncyk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcmVzdGFydCAo c3RyaW5nPyBtZXNzYWdlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIildCisrCXB1YmxpYyBzdGF0aWMgaW50IHJ1biAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfZ25vbWVf d21fa2V5YmluZGluZ3MgKHN0cmluZyB3bV9rZXliaW5kaW5ncyk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3dt X25hbWUgKHN0cmluZyB3bV9uYW1lKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCB0ZXN0X2luaXQgKCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIGJv b2wgeDExX2luaXRfZ2RrX2Rpc3BsYXkgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrfQorZGlmZiAt LWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYSBiL3ZhcGkvbXV0dGVyLWNs dXR0ZXItNi1jdXN0b20udmFsYQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAw Li44OTIyNGJlNgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1 c3RvbS52YWxhCitAQCAtMCwwICsxLDE0NyBAQAorK25hbWVzcGFjZSBDbHV0dGVyIHsKKysKKysg IHB1YmxpYyBzdHJ1Y3QgTWF0cml4IDogQ29nbC5NYXRyaXggeworKyAgfQorKworKyAgcHVibGlj IGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCB7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyB2aXJ0dWFsIHZvaWQgYWRkX29wdGlvbnMgKEdMaWIuT3B0aW9uR3JvdXAgZ3JvdXApOwor KyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIGNyZWF0ZV9jb250ZXh0 ICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmly dHVhbCB1bm93bmVkIENsdXR0ZXIuU3RhZ2VXaW5kb3cgY3JlYXRlX3N0YWdlIChDbHV0dGVyLlN0 YWdlIHdyYXBwZXIpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBw dWJsaWMgdmlydHVhbCB2b2lkIGVuc3VyZV9jb250ZXh0IChDbHV0dGVyLlN0YWdlIHN0YWdlKTsK KysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgQ2x1dHRlci5GZWF0dXJlRmxh Z3MgZ2V0X2ZlYXR1cmVzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVh bCB2b2lkIGluaXRfZXZlbnRzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmly dHVhbCB2b2lkIGluaXRfZmVhdHVyZXMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1Ymxp YyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysgICAgW05v V3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgYm9vbCBwcmVfcGFyc2UgKCkgdGhyb3dzIEdM aWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgcmVk cmF3IChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysgIH0KKysKKysgIFtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfZ2V0 X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBjbGFzcyBCb3ggOiBDbHV0dGVyLkFjdG9yIHsKKysgICAg cHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdldDsgc2V0OyB9 CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX0NPTE9SIiwgY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIHN0cnVjdCBD b2xvciB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX2hscyIpXQor KyAgICBwdWJsaWMgQ29sb3IuZnJvbV9obHMgKGZsb2F0IGh1ZSwgZmxvYXQgbHVtaW5hbmNlLCBm bG9hdCBzYXR1cmF0aW9uKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zy b21fcGl4ZWwiKV0KKysgICAgcHVibGljIENvbG9yLmZyb21fcGl4ZWwgKHVpbnQzMiBwaXhlbCk7 CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKyAg ICBwdWJsaWMgQ29sb3IuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgICBbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysgICAgcHVibGljIGJvb2wgcGFy c2Vfc3RyaW5nIChzdHJpbmcgc3RyKTsKKysgICAgcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuQ29sb3I/IGdldF9zdGF0aWMgKENsdXR0ZXIuU3RhdGljQ29sb3IgY29sb3IpOworKyAgfQor KworKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5lcl9nZXRfdHlwZSAoKSIpXQorKyAgcHVibGljIGludGVy ZmFjZSBDb250YWluZXIgOiBHTGliLk9iamVjdCB7CisrICAgIHB1YmxpYyB2b2lkIGFkZCAocGFy YW1zIENsdXR0ZXIuQWN0b3JbXSBhY3RvcnMpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkiKV0KKysgICAgcHVibGljIGNs YXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3RyaW5nIHBy b3BlcnR5X25hbWUpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2Ns YXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyIpXQorKyAgICBwdWJsaWMgY2xhc3MgdW5vd25lZCBH TGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsKKysgIH0KKysKKysgIFtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rp b24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBl X2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysgIFtDb21wYWN0XQorKyAgcHVi bGljIGNsYXNzIEV2ZW50IHsKKysgICAgcHVibGljIENsdXR0ZXIuQW55RXZlbnQgYW55IHsgW0ND b2RlIChjbmFtZSA9ICIoQ2x1dHRlckFueUV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMg Q2x1dHRlci5CdXR0b25FdmVudCBidXR0b24geyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQnV0 dG9uRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLkNyb3NzaW5nRXZlbnQg Y3Jvc3NpbmcgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQ3Jvc3NpbmdFdmVudCAqKSIpXSBn ZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuS2V5RXZlbnQga2V5IHsgW0NDb2RlIChjbmFtZSA9 ICIoQ2x1dHRlcktleUV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Nb3Rp b25FdmVudCBtb3Rpb24geyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyTW90aW9uRXZlbnQgKiki KV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlNjcm9sbEV2ZW50IHNjcm9sbCB7IFtDQ29k ZSAoY25hbWUgPSAiKENsdXR0ZXJTY3JvbGxFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGlj IENsdXR0ZXIuU3RhZ2VTdGF0ZUV2ZW50IHN0YWdlX3N0YXRlIHsgW0NDb2RlIChjbmFtZSA9ICIo Q2x1dHRlclN0YWdlU3RhdGVFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIu VG91Y2hFdmVudCB0b3VjaCB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaEV2ZW50ICop IildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFBpbmNoRXZlbnQgdG91Y2hw YWRfcGluY2ggeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRQaW5jaEV2ZW50ICop IildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFN3aXBlRXZlbnQgdG91Y2hw YWRfc3dpcGUgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRTd2lwZUV2ZW50ICop IildIGdldDsgfQorKyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vf Z2V0X3R5cGUgKCkiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr ICBwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLkdyb3VwIHsKKysgICAgW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3JlZHJhdyIpXQorKyAgICBwdWJsaWMgdm9pZCByZWRyYXcgKCk7CisrICB9 CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysgIHB1YmxpYyBpbnRlcmZhY2UgU3RhZ2VXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrICAgIFtO b1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCBpbnQgZ2V0X3BlbmRpbmdfc3dhcHMgKCk7 CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X3dyYXBwZXIgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0 cmFjdCBib29sIGhhc19yZWRyYXdfY2xpcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1Ymxp YyBhYnN0cmFjdCBib29sIGlnbm9yaW5nX3JlZHJhd19jbGlwcyAoKTsKKysgICAgW05vV3JhcHBl cl0KKysgICAgcHVibGljIGFic3RyYWN0IGJvb2wgcmVhbGl6ZSAoKTsKKysgICAgW05vV3JhcHBl cl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgcmVzaXplIChpbnQgd2lkdGgsIGludCBoZWln aHQpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfY3Vy c29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOworKyAgICBbTm9XcmFwcGVyXQorKyAg ICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfZnVsbHNjcmVlbiAoYm9vbCBpc19mdWxsc2NyZWVu KTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3RpdGxl IChzdHJpbmcgdGl0bGUpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qg dm9pZCBzZXRfdXNlcl9yZXNpemFibGUgKGJvb2wgaXNfcmVzaXphYmxlKTsKKysgICAgW05vV3Jh cHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2hvdyAoYm9vbCBkb19yYWlzZSk7Cisr ICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHVucmVhbGl6ZSAoKTsK KysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfZ2V0X3R5cGUg KCkiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMg Y2xhc3MgVGV4dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKyAgICBwdWJsaWMgQ29nbC5NYXRlcmlh bCBjb2dsX21hdGVyaWFsIHsgZ2V0OyBzZXQ7IH0KKysgICAgcHVibGljIENvZ2wuVGV4dHVyZSBj b2dsX3RleHR1cmUgeyBnZXQ7IHNldDsgfQorKyAgfQorKworKyAgW0NvbXBhY3RdCisrICBbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBj bGFzcyBUaW1lb3V0UG9vbCB7CisrICAgIFtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysgICAgcHVibGljIFRpbWVvdXRQb29sIChpbnQgcHJpb3JpdHkpOworKyAgfQor KworKyAgW0NDb2RlIChjcHJlZml4ID0gIkNMVVRURVJfRkVBVFVSRV8iLCBjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBbRmxhZ3NdCisrICBwdWJsaWMgZW51bSBG ZWF0dXJlRmxhZ3MgeworKyAgICBURVhUVVJFX05QT1Q7CisrICAgIFtDQ29kZSAoY25hbWUgPSAi Y2x1dHRlcl9mZWF0dXJlX2F2YWlsYWJsZSIpXQorKyAgICBwdWJsaWMgYm9vbCBpc19hdmFpbGFi bGUgKCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2dldF9hbGwiKV0K KysgICAgcHVibGljIHN0YXRpYyBDbHV0dGVyLkZlYXR1cmVGbGFncyBAZ2V0ICgpOworKyAgfQor KworKyAgW0NDb2RlICh0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9VTklUUyIsIGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBzdHJ1Y3QgVW5pdHMgewor KyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9jbSIpXQorKyAgICBwdWJs aWMgVW5pdHMuZnJvbV9jbSAoZmxvYXQgY20pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfdW5pdHNfZnJvbV9lbSIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9lbSAoZmxvYXQgZW0p OworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbV9mb3JfZm9udCIp XQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9lbV9mb3JfZm9udCAoc3RyaW5nIGZvbnRfbmFtZSwg ZmxvYXQgZW0pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9tbSIp XQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9tbSAoZmxvYXQgbW0pOworKyAgICBbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9waXhlbHMiKV0KKysgICAgcHVibGljIFVuaXRzLmZy b21fcGl4ZWxzIChpbnQgcHgpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNf ZnJvbV9wdCIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9wdCAoZmxvYXQgcHQpOworKyAgICBb Q0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9zdHJpbmciKV0KKysgICAgcHVibGlj IFVuaXRzLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysgIH0KKyt9CitkaWZmIC0tZ2l0IGEv dmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMgYi92YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcwor bmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi43YTcwZDZkZgorLS0tIC9kZXYv bnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKK0BAIC0wLDAgKzEsNCBAQAor K2F0aworK2NhaXJvCisranNvbi1nbGliLTEuMAorK211dHRlci1jb2dsLTYKK2RpZmYgLS1naXQg YS92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaSBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBp CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLmQ2NmY5YWM4CistLS0gL2Rl di9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorQEAgLTAsMCArMSw4Njg3 IEBACisrLyogbXV0dGVyLWNsdXR0ZXItNi52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBu b3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJDbHV0dGVyIiwgZ2lyX25hbWVz cGFjZSA9ICJDbHV0dGVyIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9 ICJjbHV0dGVyXyIpXQorK25hbWVzcGFjZSBDbHV0dGVyIHsKKysJbmFtZXNwYWNlIEtleSB7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAxOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQWx0Q3Vyc29yIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9BbHRDdXJzb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0F0dG4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0F0dG47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcw X0JhY2tUYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0JhY2tUYWI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX0NoYW5nZVNjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf Q2hhbmdlU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9Db3B5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBAMzI3MF9Db3B5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DdXJzb3JCbGluayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQ3Vyc29yQmxpbms7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX0N1cnNvclNlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQ3Vyc29yU2Vs ZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9EZWxldGVXb3JkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMzI3MF9EZWxldGVXb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9EdXBsaWNhdGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0R1cGxpY2F0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMy NzBfRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0VudGVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfMzI3MF9FcmFzZUVPRiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRXJhc2VF T0Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VyYXNlSW5wdXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEAzMjcwX0VyYXNlSW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0V4U2VsZWN0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FeFNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBf RmllbGRNYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9GaWVsZE1hcms7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX0lkZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9JZGVu dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfSnVtcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMy NzBfSnVtcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfS2V5Q2xpY2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEAzMjcwX0tleUNsaWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9MZWZ0MiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQDMyNzBfTGVmdDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BBMSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEExOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9Q QTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BBMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMy NzBfUEEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QQTM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV8zMjcwX1BsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BsYXk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX1ByaW50U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9Q cmludFNjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUXVpdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfUXVpdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUmVjb3JkIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9SZWNvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1Jlc2V0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SZXNldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBf UmlnaHQyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SaWdodDI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV8zMjcwX1J1bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1J1bGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX1NldHVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9TZXR1 cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfVGVzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMy NzBfVGVzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEA3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfOCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV85IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQUU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFhY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJlbG93ZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BYnJldmVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZlYWN1dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BYnJldmViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJy ZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmVncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQWJyZXZlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmVob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBYnJldmVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZldGlsZGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNj ZXNzWF9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjY2Vzc1hfRW5hYmxlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQWNjZXNzWF9GZWVkYmFja19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFjY2Vzc1hfRmVlZGJhY2tfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNp cmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleGdyYXZl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGhv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWRkRmF2b3JpdGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFkZEZhdm9yaXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWRpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fn cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWhv b2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWx0X0wi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFsdF9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWx0X1IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFsdF9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQW1hY3JvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FvZ29uZWsiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcHBsaWNhdGlv bkxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFwcGxpY2F0aW9uTGVmdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FwcGxpY2F0aW9uUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFwcGxpY2F0 aW9uUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfNCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfNSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfNiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfNyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfYWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYWluOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX2FsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19hbGVmOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FsZWZtYWtzdXJhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfYWxlZm1ha3N1cmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfYmVoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfYmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2NvbW1h IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfZGFkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFkOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX2RhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RhbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19kYW1tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X2RhbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhbW1hdGFuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfZGFtbWF0YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGRhbCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RkYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf ZmFyc2lfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZmFyc2lfeWVoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2ZhdGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf ZmF0aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmF0aGF0YW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19mYXRoYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mZWgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZnVs bHN0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mdWxsc3RvcDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY19nYWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19nYWY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfZ2hhaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19naGFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2hhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hh bXphX2Fib3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFfYWJvdmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFfYmVsb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19oYW16YV9iZWxvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YW9uYWxlZiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphb25hbGVmOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX2hhbXphb253YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16 YW9ud2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphb255ZWgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19oYW16YW9ueWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXph dW5kZXJhbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemF1bmRlcmFsZWY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfaGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hlaF9kb2FjaGFzaG1lZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaF9kb2FjaGFzaG1lZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19oZWhfZ29hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaF9nb2FsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2plZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19qZWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2plaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2plaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rYWYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19rYWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FzcmEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rYXNyYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19r YXNyYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2thc3JhdGFuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2tlaGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2Vo ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2hhaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX2toYWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbGFtIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfbGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21hZGRhX2Fib3ZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFfYWJvdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfbWFkZGFvbmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19tYWRk YW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19tZWVtIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfbWVlbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19ub29uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfbm9vbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19ub29uX2do dW5uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX25vb25fZ2h1bm5hOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3BlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3BlaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19wZXJjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfcGVyY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19xYWYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19xYWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcXVlc3Rpb25fbWFy ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3F1ZXN0aW9uX21hcms7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19yYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19ycmVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf cnJlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zYWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19zYWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2VlbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX3NlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2VtaWNvbG9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2VtaWNvbG9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX3NoYWRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3NoYWRkYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19zaGVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X3NoZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N1a3VuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfc3VrdW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc3VwZXJzY3JpcHRfYWxl ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N1cGVyc2NyaXB0X2FsZWY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf c3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RhaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3RhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190YXR3ZWVsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfdGF0d2VlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190Y2hl aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RjaGVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX3RlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RlaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY190ZWhtYXJidXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf dGVobWFyYnV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190aGFsIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfdGhhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190aGVoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGhlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190dGVo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdHRlaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY192ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY192ZWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfd2F3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfd2F3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3llaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3ll aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY195ZWhfYmFyZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY195ZWhfYmFyZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfemFoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfemFoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3phaW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY196YWluOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJp bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fQVQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0FUOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fQVlCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9BWUI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9CRU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX0JFTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0NIQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fQ0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fREEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0RBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fRFpB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9EWkE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9FOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fRkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0ZFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fR0hBVCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fR0hBVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0dJTSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fR0lNOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fSEkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f SE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0hPOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fSU5JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9JTkk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f SkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fS0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LRU4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX0tFTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0tIRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fS0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fTFlVTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fTFlVTjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX01FTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fTUVO OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX05VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1BFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9QRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1BZVVIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1BZVVI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9SQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUkE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9SRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUkU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9TRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9TSEEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX1NIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RDSEUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RDSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9UTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVE87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9UU0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RTQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX1RTTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fVFNPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFlVTiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fVFlVTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZFViIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVkVWOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f Vk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1ZPOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fVllVTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVllVTjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX1lFQ0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX1lFQ0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9aQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fWkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9aSEUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1pIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2Fj Y2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYWNjZW50OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fYW1hbmFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9h bWFuYWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hcG9zdHJvcGhlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9hcG9zdHJvcGhlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f YXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2F0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fYXliIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9heWI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9iZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2JlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2J1dCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fYnV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fY2hhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9jaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9kYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9kemEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2R6YTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9leGNsYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2V4Y2xhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2ZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9mZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2Z1bGxfc3Rv cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZnVsbF9zdG9wOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fZ2hhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZ2hh dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2dpbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fZ2ltOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5faGkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2hpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5faG8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2hvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f aHlwaGVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9oeXBoZW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9pbmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2lu aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2tlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2tlbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f a2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9raGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9saWdhdHVyZV9ldyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f bGlnYXR1cmVfZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9seXVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9seXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbWVuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9tZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9udSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbnU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9vOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fcGFydXlrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9wYXJ1eWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9wZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9weXVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9weXVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fcXVlc3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3F1ZXN0aW9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fc2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX3NlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fc2VwYXJh dGlvbl9tYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zZXBhcmF0aW9uX21h cms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NoZXNodCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2hlc2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f dGNoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdGNoZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX3RvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90bzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX3RzYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fdHNhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHNvIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl90c287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90eXVuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90eXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f dmVyamFrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3Zlcmpha2V0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fdmV2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl92ZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92byIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fdm87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92eXVuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl92eXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5feWVj aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5feWVjaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX3llbnRhbW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl95ZW50 YW1uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3phIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl96YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3poZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5femhlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpYmxlQmVsbF9FbmFi bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlibGVCZWxsX0VuYWJsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0F1ZGlvQ3ljbGVUcmFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9DeWNs ZVRyYWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9Gb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBdWRpb0ZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0xvd2VyVm9sdW1lIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBdWRpb0xvd2VyVm9sdW1lOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVk aW9NZWRpYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NZWRpYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0F1ZGlvTWljTXV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NaWNNdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXVkaW9NdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb011 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb05leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1 ZGlvTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUGF1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEF1ZGlvUGF1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1BsYXkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEF1ZGlvUGxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUHJldiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXVkaW9QcmV2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SYWlzZVZvbHVt ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SYWlzZVZvbHVtZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0F1ZGlvUmFuZG9tUGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SYW5kb21Q bGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SZWNvcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEF1ZGlvUmVjb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SZXBlYXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEF1ZGlvUmVwZWF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SZXdpbmQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmV3aW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9TdG9w IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1N0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bd2F5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBd2F5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhYm92ZWRvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFjayIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQmFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhY2tGb3J3YXJkIildCisrCQlw dWJsaWMgY29uc3QgdWludCBCYWNrRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhY2tTcGFjZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFja1NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmF0dGVy eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmF0dGVyeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JlZ2lu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCZWdpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JsdWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEJsdWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CbHVldG9vdGgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEJsdWV0b290aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Jvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEJvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Cb3VuY2VLZXlzX0Vu YWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQm91bmNlS2V5c19FbmFibGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9CcmVhayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnJlYWs7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9CcmlnaHRuZXNzQWRqdXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCcmlnaHRuZXNz QWRqdXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnllbG9ydXNzaWFuX1NIT1JUVSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQnllbG9ydXNzaWFuX1NIT1JUVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0J5ZWxvcnVz c2lhbl9zaG9ydHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJ5ZWxvcnVzc2lhbl9zaG9ydHU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ0QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENEOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ0gi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ19IIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDX0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DX2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IENfaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhYm92ZWRvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2FjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWxjdWxhdG9yIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDYWxjdWxhdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2FsZW5kYXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IENhbGVuZGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2FuY2VsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDYW5jZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYXBzX0xvY2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IENhcHNfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2NlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2NpcmN1 bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENjaXJjdW1mbGV4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2xlYXIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENsZWFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2xlYXJHcmFi IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDbGVhckdyYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DbG9z ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2xvc2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db2RlaW5w dXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvZGVpbnB1dDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Nv bG9uU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29sb25TaWduOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ29tbXVuaXR5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb21tdW5pdHk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Db250cmFzdEFkanVzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29udHJhc3RB ZGp1c3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db250cm9sX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IENvbnRyb2xfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyb2xfUiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ29udHJvbF9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29weSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ29weTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NydXplaXJvU2lnbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3J1emVpcm9TaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3V0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeWNsZUFuZ2xlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeWNsZUFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0JF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19CRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0NIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQ0hFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfQ0hFX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfQ0hFX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0NIRV92ZXJ0 c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19DSEVfdmVydHN0cm9rZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0RFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19ERTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0RaSEUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0RaSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRUYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VGOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfRUwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VMOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfRU0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VNOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0VOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU5fZGVzY2VuZGVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19FTl9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19FUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRVI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19FUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRVM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19HSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0dIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0dIRV9iYXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX0dIRV9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19IQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19IQVJEU0lHTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSEFSRFNJR047 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19IQV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0hBX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0ki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19JRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSUU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19JTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSU87Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfSV9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19KRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19LQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19LQV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0tBX2Rl c2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0tBX3ZlcnRzdHJva2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0tBX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19MSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0xKRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX05KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf TkpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX09fYmFyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19PX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1BFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19QRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1NDSFdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TQ0hXQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1NIQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf U0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hDSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1NIQ0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hIQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X1NIT1JUSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hPUlRJOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfU09GVFNJR04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX1NPRlRTSUdOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVEUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX1RFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVFNFIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19UU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfVV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1VfbWFj cm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVV9zdHJhaWdodCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1Vf c3RyYWlnaHRfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VX3N0cmFpZ2h0 X2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1ZFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19WRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1lBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19ZQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1lFUlUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1lFUlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19ZVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWVU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19aRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWkU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19aSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX1pIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1pIRV9kZXNjZW5kZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pIRV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19hOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfYmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2JlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfY2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19jaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19jaGVfZGVzY2VuZGVyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfY2hlX3ZlcnRzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2NoZV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZHpoZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZHpoZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19lZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZWY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbl9kZXNj ZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VuX2Rlc2NlbmRlcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19lczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2doZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfZ2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZ2hlX2Jh ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZ2hlX2JhcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19oYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2hhX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfaGFfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaGFyZHNp Z24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhcmRzaWduOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2lfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19pX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2llIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19pZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2lvIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19qZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX2thIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19rYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2thX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfa2FfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfa2FfdmVy dHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2FfdmVydHN0cm9rZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2xqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfbGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbmplIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19uamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19vIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfb19i YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX29fYmFyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3BlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX3NjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19zaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zaGNoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hjaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19zaGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zaGhhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfc2hvcnRpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19zaG9ydGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zb2Z0c2lnbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfc29mdHNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY190 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY190c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3RzZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191X21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfdV9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191X3N0cmFpZ2h0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X3N0cmFpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodF9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX3Vfc3RyYWlnaHRfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf eWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3lhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfeWVydSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeWVydTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX3l1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y195dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3plIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY196ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3poZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfemhlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfemhlX2Rl c2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfemhlX2Rlc2NlbmRlcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ET1MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERPUzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Rh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEY2Fyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9EZWxldGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERlbGV0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0Rpc3BsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERpc3BsYXk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Eb2N1bWVudHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERvY3VtZW50czsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0RvbmdTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEb25nU2lnbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERvd247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Ec3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEc3Ryb2tlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VORyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRU5HOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRVRIIildCisrCQlw dWJsaWMgY29uc3QgdWludCBFVEg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FWkgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEVaSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VhYm92ZWRvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWFjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FYmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjYXJvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRWNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZs ZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhhY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0VjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVj aXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleGdyYXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNp cmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGhvb2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBF Y2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWN1U2lnbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRWN1U2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VkaWFlcmVzaXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FZ3JhdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vob29rIildCisrCQlwdWJs aWMgY29uc3QgdWludCBFaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vpc3VfU2hpZnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEVpc3VfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FaXN1X3RvZ2dsZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWlzdV90b2dnbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FamVj dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWplY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FbWFjcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW5kIild CisrCQlwdWJsaWMgY29uc3QgdWludCBFbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Fb2dvbmVrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBFb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXNjYXBlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBFc2NhcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FdGgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V0aWxkZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXVyb1NpZ24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEV1cm9TaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXhjZWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEV4Y2VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXhlY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRXhlY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V4cGxvcmVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBFeHBsb3JlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YxMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjExOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRjEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9G MTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjE0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBGMTU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEYxNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjE3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GMTkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxOTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Yy MCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIxIildCisr CQlwdWJsaWMgY29uc3QgdWludCBGMjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEYyMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRjIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBG MjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GMjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyNTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YyNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRjI3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9G MjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyOSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjI5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEYzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGMzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYz MTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0YzMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjMzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzNDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Yz NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEY0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEY1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEY2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY5OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRkZyYW5j U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRkZyYW5jU2lnbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0ZhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFib3ZlZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRmFyc2lfMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0ZhcnNpXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GYXJzaV8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8yOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRmFyc2lfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0ZhcnNpXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GYXJzaV81IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV81OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRmFyc2lfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0ZhcnNpXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GYXJzaV84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV84Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRmFyc2lfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfOTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0ZhcnNpX3llaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lf eWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRmF2b3JpdGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG YXZvcml0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaW5hbmNlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGaW5hbmNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmluZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RmluZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0ZpcnN0X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGaXJzdF9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZvcndhcmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GcmFtZUJh Y2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZyYW1lQmFjazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Zy YW1lRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRnJhbWVGb3J3YXJkOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Fib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2FtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2FtZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0di cmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2JyZXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Nh cm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HY2Vk aWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2NpcmN1bWZsZXg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9hbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fYW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9iYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2JhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2NhbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fY2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2hhciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2hhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX2NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2NoaW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9jaWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2Np bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2RvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5fZG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX2VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZmkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2ZpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f Z2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9nYW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl9naGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9naGFuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9y Z2lhbl9oYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oYXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdlb3JnaWFuX2hhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hp ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGllOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5faG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9ob2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl9pbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9qaGFuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl9qaGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5famlsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHZW9yZ2lhbl9qaWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9rYW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2thbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dl b3JnaWFuX2toYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2toYXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl9sYXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFu X2xhczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX21hbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2VvcmdpYW5fbWFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fbmFyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHZW9yZ2lhbl9uYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9vbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl9wYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3BhcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dlb3JnaWFuX3BoYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3Bo YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9xYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX3FhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3JhZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5fcmFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fc2FuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9zYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl9zaGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9zaGluOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5fdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl90 YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl90YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX3RhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3VuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHZW9yZ2lhbl91bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3ZpbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdmluOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5fd2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3dlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5feGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl94YW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl96ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX3plbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3poYXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdlb3JnaWFuX3poYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HbyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19BTFBIQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfQUxQSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19BTFBIQWFjY2VudCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQUxQSEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19CRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19CRVRBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfQ0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19DSEk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19ERUxUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf REVMVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FUFNJTE9OIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19FUFNJTE9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfRVBTSUxPTmFjY2VudCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVBTSUxPTmFjY2VudDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0VUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVRBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfRVRBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19F VEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19HQU1NQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfR0FNTUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19JT1RBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQWFjY2Vu dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQWFjY2VudDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0lPVEFkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0lP VEFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBZGllcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX0lPVEFkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X0tBUFBBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19LQVBQQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0xBTUJEQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfTEFNQkRBOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfTEFNREEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X0xBTURBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX01VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTlUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX05VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01FR0EiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX09NRUdBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01FR0FhY2NlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NRUdBYWNjZW50OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfT01JQ1JPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01JQ1JPTjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX09NSUNST05hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX09NSUNST05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QSEkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1BISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1BJIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19QSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1BT SSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUFNJOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfUkhPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19SSE87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19TSUdNQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfU0lHTUE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19UQVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1RBVTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX1RIRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19USEVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT04iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX1VQU0lMT047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19VUFNJTE9OYWNjZW50 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19VUFNJTE9OYWNjZW50OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfVVBTSUxPTmRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19VUFNJTE9OZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19YSSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfWEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19aRVRBIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19aRVRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfYWNjZW50 ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2FjY2VudGRpZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfYWxwaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X2FscGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfYWxwaGFhY2NlbnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX2FscGhhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfYmV0YSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYmV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2NoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfY2hpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfZGVsdGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2RlbHRhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfZXBzaWxvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXBz aWxvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2Vwc2lsb25hY2NlbnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX2Vwc2lsb25hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ldGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2V0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2V0YWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXRhYWNjZW50OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfZmluYWxzbWFsbHNpZ21hIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19maW5hbHNtYWxsc2lnbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19nYW1tYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZ2FtbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19o b3JpemJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaG9yaXpiYXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19pb3RhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19pb3RhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfaW90YWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGFhY2NlbnRkaWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YWFjY2VudGRpZXJlc2lzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfaW90YWRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19pb3RhZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19rYXBwYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfa2FwcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19sYW1iZGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2xhbWJkYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX2xhbWRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19sYW1kYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX211IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19tdTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19udTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX29tZWdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19v bWVnYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX29tZWdhYWNjZW50IildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19vbWVnYWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX29taWNyb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29taWNyb247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19vbWljcm9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19vbWljcm9u YWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcGhpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19waGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19waSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfcGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19wc2kiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX3BzaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3JobyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfcmhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfc2lnbWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3NpZ21hOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf c3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19zd2l0Y2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla190YXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3RhdTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX3RoZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla190aGV0 YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX3Vwc2lsb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla191cHNpbG9uYWNjZW50IildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uYWNjZW50OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfdXBzaWxvbmFjY2VudGRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a191cHNpbG9uYWNjZW50ZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla191cHNpbG9uZGll cmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb25kaWVyZXNpczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX3hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla194aTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX3pldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X3pldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BcmFlQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0FyYWVBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FyYWVBRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0FyYWVBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9CYW5qYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0JhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X0NpZXVjIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQ2lldWM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfQ29kZWlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQ29k ZWlucHV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0Rpa2V1ZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0Rpa2V1ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FTyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0VPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VVIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf RW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRW5kOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0hhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSGFuamE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9I aWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9JZXVuZyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0lldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfQ2lldWMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0NpZXVjOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X0pfRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9EaWtldWQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfSl9IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0pfSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9JZXVuZyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0pfSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9KaWV1aiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSl9LaGlldXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0toaWV1cTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0tpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2l5ZW9nU2lvcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2l5ZW9nU2lvczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9KX0trb2dqaURhbHJpbklldW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9La29namlEYWxyaW5JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX01pZXVtIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9NaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9KX05pZXVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9OaWV1bjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9KX05pZXVuSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9KX05pZXVuSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9OaWV1bkppZXVq IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9OaWV1bkppZXVqOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0pfUGFuU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pf UGFuU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BoaWV1ZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0pfUGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUGlldWIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BpZXViOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfUGlldWJTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9QaWV1 YlNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfUmlldWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bEhpZXVo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bEhpZXVoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0pfUmlldWxLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX1JpZXVsS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxNaWV1bSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxNaWV1bTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9KX1JpZXVsUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9S aWV1bFBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsUGlldWIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9SaWV1bFNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsU2lv czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsVGlldXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9KX1JpZXVsVGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9TaW9z IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9TaW9zOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfU3NhbmdLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Nz YW5nS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU3NhbmdTaW9zIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9UaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfVGlldXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9ZZW9yaW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfWWVvcmluSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSmFtbyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0phbW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSmVvbmph IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSmVvbmphOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0ppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSmlldWo7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfS2hpZXVxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf S2hpZXVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0tpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0tpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9LaXllb2dTaW9zIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfS2l5ZW9nU2lvczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9La29namlEYWxyaW5JZXVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0trb2dqaURhbHJpbklldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX01pZXVtIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTXVs dGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9NdWx0aXBsZUNh bmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1biIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX05pZXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX05pZXVuSGlldWgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9OaWV1bkhpZXVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX05pZXVuSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9OaWV1bkpp ZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX09FIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfT0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUGFuU2lvcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1BhblNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUGhpZXVm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUGhpZXVmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUGlldWI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfUGlldWJTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfUGlldWJTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Bvc3RIYW5qYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1Bvc3RIYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Q cmVIYW5qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1ByZUhhbmphOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1ByZXZpb3VzQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9SaWV1bEhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxIaWV1 aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bEtpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1JpZXVsS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsTWll dW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bE1pZXVtOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX1JpZXVsUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf UmlldWxQaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxQaWV1YiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf UmlldWxTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxTaW9zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsVGlldXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9SaWV1bFRpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsWWVvcmluSGlldWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFllb3JpbkhpZXVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1JvbWFqYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1Jv bWFqYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TaW5nbGVDYW5kaWRhdGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9TaW5nbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1Npb3M7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfU3BlY2lhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NwZWNp YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdEaWtldWQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9Tc2FuZ0Rpa2V1ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ0pp ZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdKaWV1ajsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9Tc2FuZ0tpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X1NzYW5nS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5nUGlldWIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ1BpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nU2lvczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9TdGFydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X1N0YXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1bmt5ZW9uZ2V1bU1pZXVtIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Vua3llb25nZXVtTWlldW07CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfU3Vua3llb25nZXVtUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfU3Vua3llb25nZXVtUGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1bmt5ZW9uZ2V1 bVBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Vua3llb25nZXVtUGlldWI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfVGlldXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9UaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9VIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1dBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dBRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dF TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dFTzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9XSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dJOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1lBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWUE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfWUFFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWUFFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf WUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUVPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfWUVPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lJIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfWUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWU8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9ZTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZVSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1llb3Jpbkhp ZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWWVvcmluSGlldWg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfc3dp dGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu a2FrdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlYnJld19zd2l0Y2giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhlYnJld19zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IZWxwIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIZWxwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVua2FuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIZW5rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IZW5rYW5fTW9kZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGVua2FuX01vZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaWJlcm5hdGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpYmVybmF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hpcmFn YW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXJhZ2FuYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hp cmFnYW5hX0thdGFrYW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXJhZ2FuYV9LYXRha2Fu YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hpc3RvcnkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpc3Rv cnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Ib21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb21lOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSG9tZVBhZ2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhvbWVQYWdl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSG90TGlua3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhvdExp bmtzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHN0 cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0h5cGVyX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEh5 cGVyX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IeXBlcl9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI eXBlcl9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19DZW50ZXJfT2JqZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fQ2VudGVyX09iamVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Db250aW51b3VzX1VuZGVybGlu ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0NvbnRpbnVvdXNfVW5kZXJsaW5lOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX0Rpc2NvbnRpbnVvdXNfVW5kZXJsaW5lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fRGlzY29udGludW91c19VbmRlcmxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f RW1waGFzaXplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRW1waGFzaXplOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSVNPX0VudGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRW50ZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX0Zhc3RfQ3Vyc29yX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3Jf TGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX0xlZnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19GYXN0X0N1cnNvcl9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9V cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX1VwOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX0ZpcnN0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmlyc3Rf R3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmlyc3RfR3JvdXBfTG9jayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fR3Jv dXBfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Hcm91cF9MYXRjaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lTT19Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fR3Jv dXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Hcm91cF9TaGlmdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX0dyb3VwX1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xhc3RfR3JvdXAi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dyb3VwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX0xhc3RfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xhc3RfR3Jv dXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZWZ0X1RhYiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSVNPX0xlZnRfVGFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsMl9MYXRjaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsMl9MYXRjaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19MZXZlbDNfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDNfTGF0Y2g7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19MZXZlbDNfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDNfU2hpZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDNfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TGV2ZWw1X0xhdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWw1X0xhdGNoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fTGV2ZWw1X0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWw1X1NoaWZ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWw1X1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xv Y2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X01vdmVfTGluZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTW92ZV9MaW5lX0Rv d247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTW92ZV9MaW5lX1VwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fTW92ZV9MaW5lX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX05leHRfR3JvdXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19OZXh0X0dyb3VwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X05leHRfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX05leHRfR3JvdXBf TG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX0xpbmVfRG93biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX1BhcnRpYWxfTGluZV9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1Bh cnRpYWxfTGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1BhcnRpYWxfTGluZV9V cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX1NwYWNlX0xlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUGFy dGlhbF9TcGFjZV9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1BhcnRpYWxfU3Bh Y2VfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUHJldl9Hcm91cCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX1ByZXZfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUHJldl9Hcm91cF9M b2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUHJldl9Hcm91cF9Mb2NrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSVNPX1JlbGVhc2VfQm90aF9NYXJnaW5zIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fUmVsZWFzZV9Cb3RoX01hcmdpbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUmVsZWFzZV9N YXJnaW5fTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1JlbGVhc2VfTWFyZ2luX0xl ZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUmVsZWFzZV9NYXJnaW5fUmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19TZXRfTWFyZ2luX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19TZXRfTWFyZ2lu X0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0X01hcmdpbl9SaWdodCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX1NldF9NYXJnaW5fUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYWJvdmVk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lh Y3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWJl bG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElicmV2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJY2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElkaWFlcmVzaXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElncmF2ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0lob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJaG9vazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0ltYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEltYWNyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JbnNlcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEluc2VydDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElvZ29uZWs7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEl0aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEo7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9KY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSmNpcmN1bWZsZXg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8yIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF8yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS1BfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEtQXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF81IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S1BfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF84OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS1BfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfOTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX0FkZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfQWRkOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfQmVnaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0JlZ2luOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS1BfRGVjaW1hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRGVjaW1hbDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX0RlbGV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRGVs ZXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRGl2aWRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9EaXZpZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRW5kIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9FbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS1BfRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FcXVhbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfRXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfRjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS1BfRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S1BfRjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf RjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9Ib21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9I b21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfSW5zZXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9JbnNlcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfTXVsdGlwbHkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEtQX011bHRpcGx5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfTmV4dCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS1BfTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1BhZ2VfRG93biIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgS1BfUGFnZV9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfUGFnZV9V cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUGFnZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ X1ByaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9QcmlvcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9SaWdodDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0tQX1NlcGFyYXRvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfU2VwYXJhdG9yOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfU3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1NwYWNl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfU3VidHJhY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X1N1YnRyYWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfVGFiIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9UYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S1BfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5hX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEthbmFfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmFfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEthbmFfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5qaSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS2Fuamk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5qaV9CYW5nb3UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEthbmppX0JhbmdvdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thdGFrYW5hIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLYXRha2FuYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tiZEJyaWdodG5l c3NEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRCcmlnaHRuZXNzRG93bjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tiZEJyaWdodG5lc3NVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2JkQnJp Z2h0bmVzc1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkTGlnaHRPbk9mZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS2JkTGlnaHRPbk9mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tjZWRpbGxhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBLY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tvcmVhbl9Xb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtvcmVhbl9Xb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MIildCisr CQlwdWJsaWMgY29uc3QgdWludCBMOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEwxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDEwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9MNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MNSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MNiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MNyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9MYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xhc3RfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhc3Rf VmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBMYXVuY2gwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGF1bmNoMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IExhdW5jaDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMYXVuY2gzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTGF1bmNoNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IExhdW5jaDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBMYXVuY2g2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTGF1bmNoNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IExhdW5jaDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g5IildCisrCQlw dWJsaWMgY29uc3QgdWludCBMYXVuY2g5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTGF1bmNoQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hDIildCisr CQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hDOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hGIild CisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hGOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGJlbG93ZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MY2Fy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xjZWRp bGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xl ZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaWdodEJ1 bGIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpZ2h0QnVsYjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xp bmVmZWVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMaW5lZmVlZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0xpcmFTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMaXJhU2lnbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0xvZ0dyYWJJbmZvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dHcmFiSW5mbzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0xvZ09mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTG9nT2ZmOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTG9nV2luZG93VHJlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTG9nV2lu ZG93VHJlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IExzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfRFNFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNYWNlZG9uaWFfRFNFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX0dKRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0dKRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9L SkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9LSkU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9NYWNlZG9uaWFfZHNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfZHNlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2dqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFj ZWRvbmlhX2dqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9ramUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1hY2Vkb25pYV9ramU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWVfS29obyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTWFlX0tvaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWlsIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNYWlsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFpbEZvcndhcmQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE1haWxGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFya2V0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBNYXJrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYXNzeW8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE1hc3N5bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lZXRpbmciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE1lZXRpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW1vIildCisr CQlwdWJsaWMgY29uc3QgdWludCBNZW1vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVudSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTWVudTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbnVLQiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTWVudUtCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVudVBCIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBNZW51UEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZXNzZW5nZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE1lc3NlbmdlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01ldGFfTCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTWV0YV9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWV0YV9SIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNZXRhX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NaWxsU2lnbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTWlsbFNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb2RlTG9jayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTW9kZUxvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb2RlX3N3aXRjaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9kZV9zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb25C cmlnaHRuZXNzRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9uQnJpZ2h0bmVzc0Rvd247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Nb25CcmlnaHRuZXNzVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE1vbkJyaWdodG5lc3NVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vdXNlS2V5c19BY2NlbF9FbmFibGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vdXNlS2V5c19BY2NlbF9FbmFibGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Nb3VzZUtleXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb3VzZUtl eXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVoZW5rYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE11aGVua2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVsdGlfa2V5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBNdWx0aV9rZXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWx0aXBsZUNhbmRpZGF0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTXVsdGlwbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N dXNpYyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVzaWM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NeUNv bXB1dGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNeUNvbXB1dGVyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTXlTaXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXlTaXRlczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05haXJhU2ln biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmFpcmFTaWduOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmNh cm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OY2Vk aWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9O ZXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ldzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05ld1NoZXFl bFNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ld1NoZXFlbFNpZ247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9OZXdzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXdzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05leHRf Vk1vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5leHRfVk1vZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9OZXh0X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXh0X1ZpcnR1 YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBOdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OdW1fTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTnVtX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBP OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfT0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9FOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPYWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PYmFycmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPYmFycmVkOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2JlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPYmVsb3dkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9PY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jYXJvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX09jaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3Vt ZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE9jaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleGJlbG93 ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1 bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXh0 aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX09kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9kaWFlcmVzaXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9PZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9kb3Vi bGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09mZmljZUhvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9mZmljZUhvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob29rIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBPaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBPaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9ob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmJlbG93ZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBPaG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5ncmF2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3Ju aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5ob29rOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf T2hvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm50aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX09tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9tYWNyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Pb2JsaXF1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT29ibGlxdWU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9PcGVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPcGVuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT3BlblVSTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3BlblVSTDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX09wdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3B0aW9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPc2xhc2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE90aWxkZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX092ZXJsYXkxX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3ZlcmxheTFfRW5h YmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfT3ZlcmxheTJfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBPdmVybGF5Ml9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWdlX0Rvd24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBhZ2VfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhZ2VfVXAiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBhZ2VfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYXN0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUGFzdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYXVzZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUGF1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QZXNldGFTaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQZXNldGFTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGhvbmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBob25lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGljdHVyZXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBpY3R1cmVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9BY2NlbGVyYXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0FjY2VsZXJhdGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX0J1dHRvbjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0 dG9uMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUG9pbnRlcl9CdXR0b24yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b24zIild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q b2ludGVyX0J1dHRvbjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uNDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UG9pbnRlcl9CdXR0b241OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b25fRGZsdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b25fRGZsdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfRGJsQ2xpY2sxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENs aWNrMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2syIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb2ludGVyX0RibENsaWNrMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xp Y2szIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2s0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVy X0RibENsaWNrNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2s1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf RGJsQ2xpY2tfRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGlja19E Zmx0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EZmx0QnRuTmV4dCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUG9pbnRlcl9EZmx0QnRuTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGZs dEJ0blByZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGZsdEJ0blByZXY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93bkxlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfRG93bkxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Rvd25S aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9Eb3duUmlnaHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX0RyYWcxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Ry YWcxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUG9pbnRlcl9EcmFnMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Ry YWc0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWc0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9EcmFnNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnNTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZ19EZmx0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQb2ludGVyX0RyYWdfRGZsdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRW5hYmxlS2V5cyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9FbmFibGVLZXlzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0xlZnQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2lu dGVyX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9VcCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUG9pbnRlcl9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfVXBMZWZ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBQb2ludGVyX1VwTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf VXBSaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9VcFJpZ2h0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG93ZXJEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb3dlckRvd247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb3dlck9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG93ZXJPZmY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9QcmV2X1ZNb2RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmV2 X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldl9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUHJldl9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ByZXZpb3Vz Q2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmV2aW91c0NhbmRpZGF0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1ByaW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmludDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1ByaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmlvcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SIild CisrCQlwdWJsaWMgY29uc3QgdWludCBSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFIxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBSMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIx MTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1IxMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUjEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9SMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxNDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ix NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFIyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFI5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBSYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SY2Fyb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFJjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JjZWRpbGxhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBSY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVkbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UmVkbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1JlZnJlc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJl ZnJlc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWxvYWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJl bG9hZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1JlcGVhdEtleXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBSZXBlYXRLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlcGx5IildCisrCQlw dWJsaWMgY29uc3QgdWludCBSZXBseTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JldHVybiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUmV0dXJuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9ja2VyRG93biIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUm9ja2VyRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvY2tlckVudGVyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBSb2NrZXJFbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvY2tl clVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb2NrZXJVcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Jv bWFqaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9tYWppOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm90 YXRlV2luZG93cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRlV2luZG93czsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1JvdGF0aW9uS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvdGF0aW9uS0I7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Sb3RhdGlvblBCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb3Rh dGlvblBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUnVwZWVTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSdXBlZVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU0NIV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNDSFdBOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNhdmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjYXJvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY2VkaWxsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY2ly Y3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjcmVlblNhdmVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTY3JlZW5TYXZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9sbENsaWNrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTY3JvbGxDbGljazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9sbERvd24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9sbERvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxV cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3Jv bGxfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsX0xvY2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TZWFyY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlYXJjaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VsZWN0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2VsZWN0QnV0dG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZWxlY3RCdXR0b247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TZW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZW5kOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2VyYmlhbl9ESkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fREpF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9EWkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNl cmJpYW5fRFpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9KRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2VyYmlhbl9KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fTEpFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTZXJiaWFuX0xKRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fTkpFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX05KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJp YW5fVFNIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9UU0hFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2VyYmlhbl9kamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fZGplOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9kemUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJp YW5fZHplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9qZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2VyYmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fbGplIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTZXJiaWFuX2xqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fbmplIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX25qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5f dHNoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl90c2hlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2hpZnRfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfTDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NoaWZ0X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNoaWZ0X0xvY2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaGlmdF9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaGlmdF9SOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2hvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hvcDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmdsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luZ2xlQ2Fu ZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2FhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hYTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfYWEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9hZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWUyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2FlMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWVlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2FlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWVlMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9hZWUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9haSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9haTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWkyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2FpMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2F1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2F1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hdTIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9iYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9iYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYmhh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2JoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf Y2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfY2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9jaGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2RkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kZGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2RkaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGRoYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RoYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfZGhoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kaGhhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2UyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2UyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9lZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfZWUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2Vl MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf ZmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2dhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2dhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9naGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfZ2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9oMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9oMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfaTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2lpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2lpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9paTIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfaWkyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9qYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfamhhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2poYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfam55YSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9qbnlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9rYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9rYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfa2hhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2toYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfa3VuZGRhbGl5 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9rdW5kZGFsaXlhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9sYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2xsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfbHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2x1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sdTI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2x1dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sdXU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2x1dTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHV1 MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf bWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX21iYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9tYmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX25hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZGRhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX25kZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25kaGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfbmRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25nMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9uZzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25nYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9uZ2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25qYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9uamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25uYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ubmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX255YSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ueWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX28i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbzIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX29v IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX29vOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9v bzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfb28yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9wYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9wYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfcGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3BoYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcmE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX3JpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3JpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9yaWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcmlpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9ydTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcnUyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9ydXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3J1dTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX3NhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3NhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9zaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfc2hh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9zc2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X3NzaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3RoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF90aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3RoaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfdGhoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdHRhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX3R0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdHRoYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF90dGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91IildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3UyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX3UyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91dSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF91dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdXUyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX3V1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdmEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3lhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3lhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2xlZXAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNsZWVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2xvd0tleXNfRW5hYmxl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTbG93S2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TcGVsbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3BlbGw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T cGxpdFNjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3BsaXRTY3JlZW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TdGFuZGJ5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdGFuZGJ5OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3RhcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0YXJ0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU3RpY2t5S2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0aWNreUtl eXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1N1YnRpdGxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT dWJ0aXRsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1cGVyX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN1cGVyX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBlcl9SIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTdXBlcl9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VwcG9ydCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU3VwcG9ydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1c3BlbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFN1c3BlbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU3dpdGNoX1ZUXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9W VF8xMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzExOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3dpdGNoX1ZUXzEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNo X1ZUXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU3dpdGNoX1ZUXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfNCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfNSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hf VlRfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Td2l0Y2hfVlRfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Td2l0Y2hfVlRfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZU Xzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3dpdGNoX1ZUXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TeXNfUmVxIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTeXNfUmVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RIT1JOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUSE9STjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGFiOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYWJvdmVkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UYXNrUGFuZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGFza1BhbmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRjYXJvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUY2VkaWxs YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1Rlcm1pbmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUZXJt aW5hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1Rlcm1pbmF0ZV9TZXJ2ZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRlcm1pbmF0ZV9TZXJ2ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2JhaHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfYmFodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfYm9iYWlt YWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfYm9iYWltYWk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2Nob2NoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfY2hvY2hhbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfY2hvY2hhbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf Y2hvY2hhbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2NoaW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2Nob2NoaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaG9lIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2Nob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Rv Y2hhZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfZG9jaGFkYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfZG9kZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfZG9kZWs7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2ZvZmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfZm9mYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfZm9mYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf Zm9mYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2hvaGlwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX2hvaGlwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ob25va2h1ayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9ob25va2h1azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2hhaSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raGFpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9raG9raG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2tob247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX2tob2todWF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2to dWF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raHdhaSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9raG9raHdhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hvcmFraGFuZyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9yYWtoYW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9r b2thaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9rb2thaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbGFra2hhbmd5YW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGFra2hhbmd5 YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2NoZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfbGVrY2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVraGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfbGVraGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2hvayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtob2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2th byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtrYW87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX2xla251bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrbnVuZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfbGVrcGFldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtw YWV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfbGVrc2FtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzaSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9sZWtzaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc29uZyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzb25nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtz dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrc3VuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9sb2NodWxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xvY2h1bGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2xvbGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sb2xp bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2x1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X2x1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWljaGF0dGF3YSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9tYWljaGF0dGF3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpZWsiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWhh bmFrYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpaGFuYWthdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfbWFpaGFuYWthdF9tYWl0aG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbWFpaGFuYWthdF9tYWl0aG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haXRhaWtodSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl0YWlraHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X21haXRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl0aG87CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX21haXRyaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl0cmk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX21haXlhbW9rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X21haXlhbW9rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tb21hIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX21vbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25nb25ndSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9uZ29uZ3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25pa2hhaGl0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25pa2hhaGl0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9ub25lbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ub25lbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfbm9udSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ub251OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9vYW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX29hbmc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX3BhaXlhbm5vaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9wYWl5YW5ub2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3BoaW50aHUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfcGhpbnRodTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvcGhhbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waG9waGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9w aG9waHVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waG9waHVuZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfcGhvc2FtcGhhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waG9z YW1waGFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9wb3BsYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9wb3BsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcm9ydWEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfcm9ydWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3J1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3J1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWFh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfc2FyYWFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfc2FyYWFpbWFpbWFsYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf c2FyYWFpbWFpbWFsYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhaW1haW11YW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFpbWFpbXVhbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfc2FyYWFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhbTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfc2FyYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Nh cmFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhaWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfc2FyYWlpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhbyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9zYXJhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3NhcmF1ZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXVlZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfc2FyYXV1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1dTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfc29ydXNpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X3NvcnVzaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zYWxhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3Nvc2FsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zbyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9zb3NvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3N1YSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3N1YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhhbnRo YWtoYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhhbnRoYWtoYXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX3Rob25hbmdtb250aG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf dGhvbmFuZ21vbnRobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvcGh1dGhhbyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV90aG9waHV0aGFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG90 aGFoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGhhaGFuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV90aG90aGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob3RoYW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3Rob25nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3Rob3Rob25nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG90aHVuZyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV90aG90aHVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdG9wYXRhayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90b3BhdGFrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV90b3RhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90b3RhbzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfd293YWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3dvd2FlbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfeW95YWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfeW95 YWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3lveWluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV95b3lpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aW1lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9Eb0xpc3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRv RG9MaXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9vbHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRv b2xzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9wTWVudSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG9w TWVudTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkT2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUb3VjaHBhZE9mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkT24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRvdWNocGFkT247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3VjaHBhZFRvZ2dsZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRUb2dnbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3Vy b2t1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3Vyb2t1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVHJh dmVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUcmF2ZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Uc2xh c2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRzbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VV0IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFVXQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VhY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWJlbG93ZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VYnJldmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFVicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VjaXJjdW1mbGV4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBVY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VkaWFlcmVzaXMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZG91 YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVkb3VibGVhY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWdyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVWhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VWhvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5hY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1Vob3JuYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuYmVsb3dk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV aG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5ob29rIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybnRpbGRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVaG9ybnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX0dIRV9XSVRI X1VQVFVSTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0dIRV9XSVRIX1VQVFVS TjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV a3JhaW5pYW5fSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9JRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVWtyYWluaWFuX0lFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX1lJIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fWUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5p YW5fZ2hlX3dpdGhfdXB0dXJuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fZ2hl X3dpdGhfdXB0dXJuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2kiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVrcmFpbmlhbl9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2llIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5faWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5p YW5feWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl95aTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1VrcmFuaWFuX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX0k7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Va3Jhbmlhbl9KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5f SkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWtyYW5pYW5fWUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9pIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVa3Jhbmlhbl9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5famUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5feWki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX3lpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW1h Y3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vu ZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVuZG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbmdyYWIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVuZ3JhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VvZ29uZWsi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VcCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VcmluZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyMUtCIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVc2VyMUtCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXNlcjJLQiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVXNlcjJLQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VzZXJQQiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVXNlclBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXRpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WIildCisrCQlwdWJsaWMgY29u c3QgdWludCBWOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmVuZG9ySG9tZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVmVuZG9ySG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZpZGVvIildCisrCQlwdWJsaWMgY29u c3QgdWludCBWaWRlbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZpZXciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFZpZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Wb2lkU3ltYm9sIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBWb2lkU3ltYm9sOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1dMQU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdMQU47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9XV1ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdXVzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1dhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2FjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfV2FrZVVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXYWtlVXA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9XY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2NpcmN1bWZsZXg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9XZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXZGlh ZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2ViQ2FtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBX ZWJDYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdn cmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1doZWVsQnV0dG9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBXaGVlbEJ1dHRvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dpbmRvd0NsZWFyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBXaW5kb3dDbGVhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dvblNpZ24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFdvblNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Xb3JkIildCisrCQlwdWJs aWMgY29uc3QgdWludCBXb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1hhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgWGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWGZlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgWGZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ZYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlhY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWJlbG93ZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfWWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlj aXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1llbGxvdyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgWWVsbG93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWdyYXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBZZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZaG9vayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFo7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9aYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFphYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1phY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfWmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaY2Fy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5fS29obyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVu X0tvaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5rYWt1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBa ZW5rYWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmVua2FrdV9IYW5rYWt1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBaZW5rYWt1X0hhbmtha3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ab29tSW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFpvb21JbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pvb21PdXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFpvb21PdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ac3Ryb2tlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBac3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJlbG93ZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBhYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYm92ZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGFicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZWFjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhYnJldmVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZWJlbG93 ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmViZWxvd2RvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2FicmV2ZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVncmF2ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2FicmV2ZWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWhv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmV0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YWJyZXZldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleGFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXhi ZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleGhv b2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2FjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4 dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWN1 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhZ3JhdmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9haG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWhvb2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9hbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhbWFjcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYW1wZXJzYW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhbXBlcnNh bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhb2dv bmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBvc3Ryb3BoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YXBvc3Ryb3BoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FwcHJveGVxIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBhcHByb3hlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FwcHJveGltYXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBhcHByb3hpbWF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FyaW5nIildCisrCQlwdWJs aWMgY29uc3QgdWludCBhcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FzY2lpY2lyY3VtIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhc2NpaWNpcmN1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FzY2lpdGlsZGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFzY2lpdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hc3Rl cmlzayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXN0ZXJpc2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hdGlsZGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGF0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhY2tzbGFzaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYmFja3NsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFsbG90Y3Jvc3Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhbGxvdGNyb3NzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iZWNhdXNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBiZWNhdXNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmxhbmsiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJsYW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90aW50ZWdyYWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90 bGVmdHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90bGVmdHBhcmVuczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JvdGxlZnRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGxl ZnRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RsZWZ0c3VtbWF0aW9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBib3RsZWZ0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90cmlnaHRw YXJlbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHJpZ2h0cGFyZW5zOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYm90cmlnaHRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHJpZ2h0 c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90cmlnaHRzdW1tYXRpb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJvdHJpZ2h0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90dCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYm90dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHZlcnRzdW1tYXRp b25jb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHZlcnRzdW1tYXRpb25jb25u ZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFjZWxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWNlbGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNlcmlnaHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWNlcmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFja2V0bGVmdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhY2tldGxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFja2V0cmlnaHQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNrZXRyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfYmxhbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfYmxhbms7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdF8xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfMTAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90XzEwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90XzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF83OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90Xzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Njc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTY4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy MzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyMzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjM0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU2Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Njc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy MzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyMzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNjc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNjc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyMzY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTI0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1Njci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTI1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTI1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTI2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU2OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEzNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEzNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1Njc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1 Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTM0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTM1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1Njc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEzNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU3ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1 Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1Njc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzE0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1Njg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzE0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ2NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0Njc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzE0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzE1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzE1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU2Nzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yMzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzIzNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NjgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzIzNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yMzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Njc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjM1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjM1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTY4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjM1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yMzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y MzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzY3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yMzY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1 Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTY4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzI0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDY3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU2 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzI1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1Njg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU2IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU2OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzM0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18z NDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ2Nzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c180NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU2NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180 NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTY4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180 NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ2NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c180Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c180NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Njc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNjc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c183 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c184IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyZXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jyb2tlbmJhciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJva2VuYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NfaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY19o OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfY2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYWJv dmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2NhcmVvZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fy ZW9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhcmV0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfY2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjY2Fyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9jY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2NlZGlsbGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Np cmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Y2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2NoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2NoZWNrZXJib2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2hlY2tl cmJvYXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2hlY2ttYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjaGVja21hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NsdWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGNsdWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb2xvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29s b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9jb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29tbWE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jb250YWluc2FzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjb250 YWluc2FzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29weXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjb3B5cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Y3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9jcm9zc2luZ2xpbmVzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjcm9zc2luZ2xpbmVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3ViZXJvb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGN1YmVyb290OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3VycmVuY3kiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGN1cnJlbmN5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3Vyc29yIildCisrCQlwdWJs aWMgY29uc3QgdWludCBjdXJzb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kYWdnZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRhZ2dlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9BIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfSSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9PIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZWNvbW1hIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWFkX2Fib3ZlY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9hYm92ZXJldmVyc2VkY29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVy ZXZlcnNlZGNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZXJpbmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfYWJvdmVyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZXZl cnRpY2FsbGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZXZlcnRpY2FsbGlu ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93YnJldmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfYmVsb3dicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3djaXJj dW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93Y2lyY3VtZmxleDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlYWRfYmVsb3djb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9iZWxvd2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2RpYWVyZXNpcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2JlbG93bWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2JlbG93bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd3JpbmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfYmVsb3dyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd3Rp bGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93dGlsZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2JlbG93dmVydGljYWxsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2JlbG93dmVydGljYWxsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9icmV2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9icmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY2FwaXRhbF9z Y2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9jYXBpdGFsX3NjaHdhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9jYXJvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jaXJjdW1mbGV4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2N1cnJlbmN5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2N1cnJlbmN5OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9kYXNpYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kYXNpYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2RpYWVy ZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2RvdWJsZWdyYXZl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2RvdWJsZWdyYXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGVhZF9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2dyYXZlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9ncmVlayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9ncmVlazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9o b29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ob3JuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2hvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW52ZXJ0ZWRicmV2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9pbnZlcnRlZGJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9pb3Rh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2lvdGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2xvbmdzb2xpZHVzb3ZlcmxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9sb25nc29s aWR1c292ZXJsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2xvd2xpbmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfbG93bGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfbWFjcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfbyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9vZ29u ZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfb2dvbmVrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9wZXJpc3BvbWVuaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9wZXJpc3BvbWVu aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfcHNpbGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfcHNpbGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3NlbWl2b2ljZWRfc291bmQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfc2VtaXZvaWNlZF9zb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfc21hbGxfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc21hbGxfc2Nod2E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3N0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9zdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3RpbGRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF91IildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWFkX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3ZvaWNlZF9zb3VuZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF92b2ljZWRfc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWNp bWFscG9pbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlY2ltYWxwb2ludDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlZ3JlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVncmVlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaWFlcmVzaXM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kaWFtb25kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaWFtb25kOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGlnaXRzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGlnaXRzcGFj ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGlu dGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGl2aXNpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRpdmlzaW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG9sbGFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkb2xsYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3ViYmFzZWxpbmVkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRvdWJiYXNlbGluZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJsZWFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJs ZWRhZ2dlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmxlZGFnZ2VyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZG91YmxlbG93cXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3VibGVs b3dxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duYXJyb3ciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRvd25hcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25jYXJldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZG93bmNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnNob2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRvd25zaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnN0aWxlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkb3duc3RpbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3dudGFjayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bnRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kc3Ryb2tl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VhYm92ZWRvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lYmVsb3dkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleGdy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxl eGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWRpYWVyZXNpcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VncmF2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWhvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWlnaHRzdWJzY3Jp cHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVpZ2h0c3Vic2NyaXB0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZWlnaHRzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWlnaHRzdXBlcmlvcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VsZW1lbnRvZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWxlbWVu dG9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZWxsaXBzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVs bGlwc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW0zc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVtM3NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW00c3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGVtNHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtZGFzaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW1kYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1maWxsZWRjaXJjbGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVtZmlsbGVkY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1maWxsZWRyZWN0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWZpbGxlZHJlY3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9l bW9wZW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtb3BlbmNpcmNsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2Vtb3BlbnJlY3RhbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1vcGVu cmVjdGFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1wdHlzZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGVtcHR5c2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW1zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZGFzaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW5kYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxsZWRjaXJjYnVsbGV0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBlbmZpbGxlZGNpcmNidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbmZp bGxlZHNxYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbmZpbGxlZHNxYnVsbGV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbmc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lbm9wZW5jaXJjYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbm9wZW5j aXJjYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5vcGVuc3F1YXJlYnVsbGV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBlbm9wZW5zcXVhcmVidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbnNwYWNl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbnNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW9nb25l ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VxdWFs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V0aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9leGNsYW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGV4Y2xhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V4Y2xhbWRvd24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGV4Y2xhbWRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lemgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGV6aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2YiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZlbWFsZXN5bWJvbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZmVtYWxlc3ltYm9sOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlnZGFzaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZmlnZGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZGxlZnR0cmlidWxsZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZGxlZnR0cmlidWxsZXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9maWxsZWRyZWN0YnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWRyZWN0 YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkcmlnaHR0cmlidWxsZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGZpbGxlZHJpZ2h0dHJpYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVk dHJpYnVsbGV0ZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkdHJpYnVsbGV0ZG93 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1bGxldHVwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBmaWxsZWR0cmlidWxsZXR1cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpdmVlaWdodGhzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBmaXZlZWlnaHRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpdmVzaXh0 aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVzaXh0aHM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9m aXZlc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaXZlc3Vic2NyaXB0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZml2ZXN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaXZlc3Vw ZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3VyZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBmb3VyZmlmdGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91cnN1YnNjcmlwdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZm91cnN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJzdXBlcmlvciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cnN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91 cnRocm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cnRocm9vdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2Z1bmN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmdW5jdGlvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nYWJv dmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2dicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2JyZXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Z2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9n Y2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9nY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2NpcmN1bWZsZXg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ncmVhdGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBncmVhdGVyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZ3JlYXRlcnRoYW5lcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3JlYXRl cnRoYW5lcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2d1aWxsZW1vdGxlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGd1aWxsZW1vdGxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ndWlsbGVtb3RyaWdodCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3VpbGxlbW90cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGFpcnNwYWNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoYWlyc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oY2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWFydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVhcnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfYWxlcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19hbGVwaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld19heWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYXlp bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19iZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld19iZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYmV0aCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2JldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfY2hldCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X2NoZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZGFsZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kYWxldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19kYWxldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kYWxldGg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfZG91YmxlbG93bGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aGVicmV3X2RvdWJsZWxvd2xpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxrYXBoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxrYXBoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X2ZpbmFsbWVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxtZW07 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxudW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld19maW5hbG51bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbHBlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxwZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19m aW5hbHphZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbHphZGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6YWRpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfZmluYWx6YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2dpbWVsIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfZ2ltZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZ2ltbWVsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZ2ltbWVsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfaGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfaGV0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X2thcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19rYXBo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2t1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X2t1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19sYW1lZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2xhbWVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X21lbSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X21lbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19udW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19udW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdf cGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19wZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19xb3BoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfcW9waDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld19yZXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfcmVzaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld19zYW1lY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld19zYW1lY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfc2FtZWtoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfc2FtZWtoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3NoaW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19zaGluOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3 X3RhZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RhZjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYnJld190YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld190YXc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfdGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d190ZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3dhdyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGVicmV3X3dhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld195b2QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld195b2Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfemFkZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3phZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfemFk aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3phZGk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfemFpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3phaW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfemF5aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld196YXlp bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hleGFncmFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZXhh Z3JhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6Y29ubmVjdG9yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBob3JpemNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNjYW4xIildCisr CQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6 bGluZXNjYW4zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuMzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hvcml6bGluZXNjYW41IildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3Jpemxp bmVzY2FuNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNjYW43IildCisrCQlwdWJsaWMgY29u c3QgdWludCBob3JpemxpbmVzY2FuNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNjYW45Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuOTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hz dHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oeXBoZW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGh5cGhlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2kiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pVG91Y2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGlUb3VjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lhY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWJlbG93ZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBpYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pYnJldmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGlicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ljaXJjdW1mbGV4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBpY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lkZW50aWNhbCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRlbnRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWRpYWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2lkb3RsZXNzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZG90bGVzczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2lmb25seWlmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZm9ubHlpZjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWdyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW1hY3JvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2ltcGxpZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGltcGxpZXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9pbmNsdWRlZGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmNsdWRlZGluOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaW5jbHVkZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGluY2x1ZGVzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaW5maW5pdHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGluZmluaXR5 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGludGVn cmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaW50ZXJzZWN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBpbnRlcnNlY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pb2dvbmVrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBpb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaXRpbGRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBpdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfamNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGpjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfam90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBqb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX0NISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9DSEk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfRTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfRlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfRlU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hBOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9IRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9IRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hP OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9IVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9I VTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9J OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9L QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf S0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X0tJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9LTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfS1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX01BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9NRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfTUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01PIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX01POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9NVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9OQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTkUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfTkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05JIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX05JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OTyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9OTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTlUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX08iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUkEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfUkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX1JFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SSSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9SSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUk8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfUk87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JVIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX1JVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9TQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU0UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NISSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9TSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NPIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX1NPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TVSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9TVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RFIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9USSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9USTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVE8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RTVSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UU1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RV IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RVOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9V IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1dB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1dBOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9X TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9XTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf WUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfWUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X1lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1lPOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9ZVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ZVTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9hOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9jbG9zaW5nYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9jbG9zaW5nYnJh Y2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Nvbmp1bmN0aXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrYW5hX2Nvbmp1bmN0aXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9lIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Z1bGxz dG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Z1bGxzdG9wOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2k7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX21pZGRsZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9taWRkbGVkb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfbzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfb3BlbmluZ2JyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfb3BlbmluZ2JyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3N3aXRjaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3Rz dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV90c3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X3R1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3R1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV91IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X3lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3lhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV95byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV95bzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfeXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfeXU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YXBwYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FwcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rY2Vk aWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r cmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGtyYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2wiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sYWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGxhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xhdGluY3Jvc3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGxhdGluY3Jvc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sYmVsb3dkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGxiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xjYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGNlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGFu Z2xlYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGFuZ2xlYnJhY2tldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2xlZnRhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGFycm93 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGNhcmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0 Y2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0ZG91YmxlcXVvdGVtYXJrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBsZWZ0ZG91YmxlcXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdG1pZGRs ZWN1cmx5YnJhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRtaWRkbGVjdXJseWJyYWNl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGVmdG9wZW50cmlhbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgbGVmdG9wZW50cmlhbmdsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRwb2ludGVyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBsZWZ0cG9pbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRyYWRpY2Fs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0cmFkaWNhbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xl ZnRzaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0c2hvZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2xlZnRzaW5nbGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRzaW5nbGVx dW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bGVmdHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0dGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bGVmdHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZXNzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBs ZXNzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVzc3RoYW5lcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgbGVzc3RoYW5lcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xmIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvZ2ljYWxhbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGxvZ2ljYWxhbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sb2dpY2Fsb3IiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGxvZ2ljYWxvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvd2xlZnRjb3JuZXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGxvd2xlZnRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sb3dyaWdo dGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbG93cmlnaHRjb3JuZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsc3Ryb2tlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21h Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWNyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9tYWxlc3ltYm9sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWxlc3ltYm9sOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbWFsdGVzZWNyb3NzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWx0ZXNlY3Jv c3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9tYXJrZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hcmtl cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX21hc2N1bGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFz Y3VsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWludXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1p bnVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbWludXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWlu dXRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX211IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtdTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX211bHRpcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtdWx0aXBseTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX211c2ljYWxmbGF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtdXNp Y2FsZmxhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211c2ljYWxzaGFycCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbXVzaWNhbHNoYXJwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25hYmxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBu YWJsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX25hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBuY2Fy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9uY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmNl ZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uaW5lc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBuaW5lc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmluZXN1cGVyaW9yIildCisrCQlw dWJsaWMgY29uc3QgdWludCBuaW5lc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ubCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbmw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub2JyZWFrc3BhY2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG5vYnJlYWtzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGFwcHJv eGVxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RhcHByb3hlcTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X25vdGVsZW1lbnRvZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90ZWxlbWVudG9mOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbm90ZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGVxdWFsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbm90aWRlbnRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3Rp ZGVudGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RzaWduIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBub3RzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udW1iZXJzaWduIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBudW1iZXJzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbnVtZXJvc2lnbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbnVtZXJvc2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX28iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29iYXJyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9iYXJyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9jaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXhhY3V0 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX29jaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1m bGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZs ZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGhvb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3Vt ZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29kb3VibGVhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgb2RvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2dvbmVrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZ3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBvaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuYWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9ob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmJlbG93ZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBvaG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm5ncmF2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29o b3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5ob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfb2hvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm50aWxkZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9tYWNyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9vbmVlaWdodGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZWVpZ2h0aDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29uZWZpZnRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVmaWZ0 aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29uZWhhbGYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZWhh bGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVxdWFydGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv bmVxdWFydGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc2l4dGgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9uZXNpeHRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc3Vic2NyaXB0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBvbmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzdXBlcmlvciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb25lc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmV0aGly ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25ldGhpcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vb2Js aXF1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb29ibGlxdWU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v cGVucmVjdGJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3BlbnJlY3RidWxsZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vcGVuc3RhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3BlbnN0YXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9vcGVudHJpYnVsbGV0ZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb3BlbnRyaWJ1bGxldGRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcGVudHJpYnVsbGV0dXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW50cmlidWxsZXR1cDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29y ZGZlbWluaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcmRmZW1pbmluZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29zbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3NsYXNoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb3RpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvdGlsZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vdmVyYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvdmVyYmFyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb3ZlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG92ZXJsaW5lOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcGFyYWdyYXBoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJhZ3JhcGg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9wYXJlbmxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcmVubGVmdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3BhcmVucmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcmVucmln aHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJ0ZGlmZmVyZW50aWFsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBwYXJ0ZGlmZmVyZW50aWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFydGlhbGRlcml2YXRpdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcnRpYWxkZXJpdmF0aXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcGVyY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVyY2VudDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3BlcmlvZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVyaW9kOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcGVyaW9kY2VudGVyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBlcmlvZGNlbnRlcmVk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcGVybWlsbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBlcm1p bGxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcGhvbm9ncmFwaGNvcHlyaWdodCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcGhvbm9ncmFwaGNvcHlyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BsdXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHBsdXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wbHVzbWludXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHBsdXNtaW51czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ByZXNjcmlwdGlv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcHJlc2NyaXB0aW9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cHJvbG9uZ2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHByb2xvbmdlZHNvdW5kOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcHVuY3RzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcHVuY3Rz cGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9xdWFkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdWFkOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcXVlc3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1ZXN0aW9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcXVlc3Rpb25kb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdWVzdGlvbmRv d247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9xdW90ZWRibCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVv dGVkYmw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdW90ZWxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHF1b3RlbGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3RlcmlnaHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHF1b3RlcmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCByOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yYWRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy YWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cmNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yZWdpc3RlcmVkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCByZWdpc3RlcmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRhbmdsZWJyYWNrZXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0YW5nbGVicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmln aHRhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRhcnJvdzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3JpZ2h0Y2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0Y2FyZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9yaWdodGRvdWJsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cmlnaHRkb3VibGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodG1pZGRsZWN1cmx5YnJh Y2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0bWlkZGxlY3VybHlicmFjZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3JpZ2h0bWlkZGxlc3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy aWdodG1pZGRsZXN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0b3BlbnRyaWFuZ2xlIild CisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodG9wZW50cmlhbmdsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3JpZ2h0cG9pbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRwb2ludGVyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcmlnaHRzaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHNob2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9yaWdodHNpbmdsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgcmlnaHRzaW5nbGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0dGFjayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHR0YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NhYm92ZWRvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgc2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2FjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2Fyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjZWRpbGxhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjaHdhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjaXJjdW1mbGV4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBzY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjcmlwdF9z d2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjcmlwdF9zd2l0Y2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9zZWNvbmRzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZWNvbmRzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfc2VjdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VjdGlvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3NlbWljb2xvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VtaWNvbG9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfc2VtaXZvaWNlZHNvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZW1p dm9pY2Vkc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbmVpZ2h0aHMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHNldmVuZWlnaHRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NldmVuc3Vic2NyaXB0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbnN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Nl dmVuc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNldmVuc3VwZXJpb3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9zaWduYXR1cmVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaWduYXR1 cmVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2lnbmlmYmxhbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHNpZ25pZmJsYW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2ltaWxhcmVxdWFsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBzaW1pbGFyZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaW5nbGVsb3dxdW90 ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpbmdsZWxvd3F1b3RlbWFyazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3NpeHN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2l4c3Vic2Ny aXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfc2l4c3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHNpeHN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc29saWRkaWFtb25kIildCisrCQlwdWJsaWMgY29u c3QgdWludCBzb2xpZGRpYW1vbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zcGFjZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zcXVhcmVyb290IildCisrCQlwdWJs aWMgY29uc3QgdWludCBzcXVhcmVyb290OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3NoYXJwIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzc2hhcnA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zdGVybGluZyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgc3Rlcmxpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zdHJpY3RlcSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgc3RyaWN0ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90IildCisrCQlw dWJsaWMgY29uc3QgdWludCB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCB0YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90Y2Fyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RjZWRpbGxhIildCisrCQlw dWJsaWMgY29uc3QgdWludCB0Y2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RlbGVwaG9uZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdGVsZXBob25lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGVsZXBob25l cmVjb3JkZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRlbGVwaG9uZXJlY29yZGVyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdGhlcmVmb3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aGVyZWZvcmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90aGluc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRoaW5z cGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3Rob3JuIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aG9y bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3RocmVlZWlnaHRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dGhyZWVlaWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVmaWZ0aHMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRocmVlZmlmdGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVxdWFydGVycyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVxdWFydGVyczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RocmVl c3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXN1YnNjcmlwdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RocmVlc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlc3Vw ZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHRpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGludGVncmFsIildCisrCQlwdWJsaWMgY29u c3QgdWludCB0b3BpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxlZnRwYXJlbnMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0 cmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHJhZGljYWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV90b3BsZWZ0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0 c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHN1bW1hdGlvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdG9wbGVmdHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHJpZ2h0cGFy ZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3ByaWdodHBhcmVuczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3RvcHJpZ2h0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3ByaWdodHNx YnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHJpZ2h0c3VtbWF0aW9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB0b3ByaWdodHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHRvcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3B2ZXJ0c3VtbWF0aW9u Y29ubmVjdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3B2ZXJ0c3VtbWF0aW9uY29ubmVj dG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdHJhZGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 cmFkZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90cmFkZW1hcmtpbmNpcmNsZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdHJhZGVtYXJraW5jaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90c2xhc2giKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHRzbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b2ZpZnRocyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvZmlmdGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvc3Vi c2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d29zdWJzY3JpcHQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV90d29zdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvc3VwZXJpb3I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90d290aGlyZHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3b3RoaXJk czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVhY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWJlbG93ZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1YnJldmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWNpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV91ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1 ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWRvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCB1ZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91Z3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB1aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuIildCisrCQlwdWJsaWMgY29u c3QgdWludCB1aG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmJlbG93ZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5n cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5ncmF2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3Vob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5ob29rOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm50aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVtYWNyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV91bmRlcmJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5kZXJiYXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV91bmRlcnNjb3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmRl cnNjb3JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5pb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVu aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW9n b25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3VwYXJyb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVw YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGNhcmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1 cGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBsZWZ0Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB1cGxlZnRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHJpZ2h0Y29ybmVyIildCisrCQlw dWJsaWMgY29uc3QgdWludCB1cHJpZ2h0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBzaG9lIild CisrCQlwdWJsaWMgY29uc3QgdWludCB1cHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHN0aWxlIild CisrCQlwdWJsaWMgY29uc3QgdWludCB1cHN0aWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXB0YWNrIild CisrCQlwdWJsaWMgY29uc3QgdWludCB1cHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cmluZyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91dGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3YiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92YXJpYXRpb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHZhcmlhdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZlcnRiYXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHZlcnRiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92ZXJ0Y29ubmVjdG9yIildCisr CQlwdWJsaWMgY29uc3QgdWludCB2ZXJ0Y29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdm9pY2Vk c291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZvaWNlZHNvdW5kOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3dhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgd2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfd2NpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfd2RpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3dn cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgeDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3hhYm92ZWRvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgeGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgeWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWJlbG93ZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCB5YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95Y2lyY3VtZmxleCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgeWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95ZGlhZXJl c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf eWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95Z3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lob29rIild CisrCQlwdWJsaWMgY29uc3QgdWludCB5aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3l0aWxkZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgeXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgejsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3phYm92ZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgemFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCB6YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96Y2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHpjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3plcm9zdWJzY3JpcHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHplcm9zdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96ZXJvc3Vw ZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHplcm9zdXBlcmlvcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3pzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHpzdHJva2U7CisrCX0KKysJbmFt ZXNwYWNlIFRocmVhZHMgeworKwkJbmFtZXNwYWNlIElkbGUgeworKwkJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFk c19hZGRfaWRsZSIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCQlwdWJsaWMg c3RhdGljIHVpbnQgYWRkIChHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJl YWRzX2FkZF9pZGxlX2Z1bGwiKV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQkJ cHVibGljIHN0YXRpYyB1aW50IGFkZF9mdWxsIChpbnQgcHJpb3JpdHksIG93bmVkIEdMaWIuU291 cmNlRnVuYyBmdW5jKTsKKysJCX0KKysJCW5hbWVzcGFjZSBUaW1lb3V0IHsKKysJCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVy X3RocmVhZHNfYWRkX3RpbWVvdXQiKV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisr CQkJcHVibGljIHN0YXRpYyB1aW50IGFkZCAodWludCBpbnRlcnZhbCwgR0xpYi5Tb3VyY2VGdW5j IGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIildCisrCQkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBhZGRfZnVsbCAo aW50IHByaW9yaXR5LCB1aW50IGludGVydmFsLCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7 CisrCQl9CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCBh ZGRfcmVwYWludF9mdW5jIChvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX3JlcGFpbnRfZnVuY19m dWxsIChDbHV0dGVyLlJlcGFpbnRGbGFncyBmbGFncywgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1 bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcmVt b3ZlX3JlcGFpbnRfZnVuYyAodWludCBoYW5kbGVfaWQpOworKwl9CisrCW5hbWVzcGFjZSBWYWx1 ZSB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIu UGFpbnROb2RlIGR1cF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/IGdl dF9jb2xvciAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5QYWludE5vZGUgZ2V0X3BhaW50X25vZGUg KEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBh cnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBmbG9hdFtdIGdldF9zaGFkZXJfZmxvYXQgKEdMaWIuVmFsdWUgdmFsdWUpOwor KwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJn c2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBpbnRbXSBnZXRf c2hhZGVyX2ludCAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9w b3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIiwgY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIGZsb2F0W10gZ2V0X3NoYWRlcl9tYXRyaXggKEdMaWIuVmFs dWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgQ2x1dHRlci5Vbml0cz8gZ2V0X3VuaXRzIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9jb2xvciAoR0xp Yi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3BhaW50X25vZGUgKEdMaWIuVmFsdWUg dmFsdWUsIENsdXR0ZXIuUGFpbnROb2RlPyBub2RlKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9zaGFkZXJfZmxvYXQgKEdMaWIuVmFsdWUgdmFs dWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUiLCBhcnJheV9sZW5ndGhfcG9z ID0gMS41KV0gZmxvYXRbXSBmbG9hdHMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9pbnQgKEdMaWIuVmFsdWUgdmFsdWUsIFtDQ29k ZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41KV0g aW50W10gaW50cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMg dm9pZCBzZXRfc2hhZGVyX21hdHJpeCAoR0xpYi5WYWx1ZSB2YWx1ZSwgW0NDb2RlIChhcnJheV9s ZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUpXSBmbG9hdFtdIG1h dHJpeCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBz ZXRfdW5pdHMgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIuVW5pdHMgdW5pdHMpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHRha2VfcGFpbnRfbm9k ZSAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5QYWludE5vZGU/IG5vZGUpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQWN0aW9uIDogQ2x1dHRlci5BY3Rvck1ldGEgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVk IEFjdGlvbiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIEFjdG9yIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBBdGsuSW1wbGVtZW50b3Is IENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJs ZSB7CisrCQlwdWJsaWMgdWludDMyIGZsYWdzOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBBY3RvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IGFkZF9hY3Rpb24gKENsdXR0ZXIuQWN0aW9uIGFjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfYWN0aW9uX3dpdGhfbmFtZSAoc3RyaW5nIG5h bWUsIENsdXR0ZXIuQWN0aW9uIGFjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgYWRkX2NoaWxkIChDbHV0dGVyLkFjdG9yIGNoaWxkKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9jb25zdHJhaW50IChD bHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCBhZGRfY29uc3RyYWludF93aXRoX25hbWUgKHN0cmluZyBuYW1l LCBDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfZWZmZWN0IChDbHV0dGVyLkVmZmVjdCBlZmZlY3Qp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2VmZmVj dF93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVyLkVmZmVjdCBlZmZlY3QpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF90cmFuc2l0aW9uIChz dHJpbmcgbmFtZSwgQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhbGxvY2F0ZSAoQ2x1dHRl ci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX2FsaWduX2ZpbGwg KENsdXR0ZXIuQWN0b3JCb3ggYm94LCBkb3VibGUgeF9hbGlnbiwgZG91YmxlIHlfYWxpZ24sIGJv b2wgeF9maWxsLCBib29sIHlfZmlsbCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgYWxsb2NhdGVfYXZh aWxhYmxlX3NpemUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IGF2YWlsYWJsZV93aWR0aCwgZmxv YXQgYXZhaWxhYmxlX2hlaWdodCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWxsb2NhdGVfcHJlZmVy cmVkX3NpemUgKENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1hdGlvbiBhbmltYXRlICh1bG9uZyBt b2RlLCB1aW50IGR1cmF0aW9uLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGVfd2l0aF90aW1lbGluZSAodWxvbmcgbW9k ZSwgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGFwcGx5X3JlbGF0aXZlX3RyYW5zZm9ybV90b19wb2lu dCAoQ2x1dHRlci5BY3Rvcj8gYW5jZXN0b3IsIEdyYXBoZW5lLlBvaW50M0QgcG9pbnQsIG91dCB1 bm93bmVkIEdyYXBoZW5lLlBvaW50M0QgdmVydGV4KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIGFwcGx5X3RyYW5zZm9ybSAocmVmIENsdXR0ZXIuTWF0cml4IG1hdHJp eCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBhcHBseV90 cmFuc2Zvcm1fdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQsIG91dCB1bm93bmVkIEdy YXBoZW5lLlBvaW50M0QgdmVydGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisr CQlwdWJsaWMgdm9pZCBiaW5kX21vZGVsIChHTGliLkxpc3RNb2RlbD8gbW9kZWwsIG93bmVkIENs dXR0ZXIuQWN0b3JDcmVhdGVDaGlsZEZ1bmMgY3JlYXRlX2NoaWxkX2Z1bmMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXJfYWN0aW9ucyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2NvbnN0cmFp bnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgY2xl YXJfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBi b29sIGNvbnRhaW5zIChDbHV0dGVyLkFjdG9yIGRlc2NlbmRhbnQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgY29udGludWVfcGFpbnQgKENsdXR0ZXIuUGFp bnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJcHVibGljIHZvaWQgY29udGludWVfcGljayAo Q2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIFBhbmdvLkNvbnRleHQgY3JlYXRlX3BhbmdvX2NvbnRleHQgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgUGFuZ28uTGF5b3V0IGNy ZWF0ZV9wYW5nb19sYXlvdXQgKHN0cmluZz8gdGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgZGVzdHJveV9hbGxfY2hpbGRyZW4gKCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0b3JfZXZlbnQiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGVtaXRfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQs IGJvb2wgY2FwdHVyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMg dm9pZCBnZXRfYWJzX2FsbG9jYXRpb25fdmVydGljZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0g ZmFsc2UpXSBHcmFwaGVuZS5Qb2ludDNEIHZlcnRzWzRdKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVu b3duZWQgQXRrLk9iamVjdCBnZXRfYWNjZXNzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0aW9uIGdldF9hY3Rpb24gKHN0 cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGli Lkxpc3Q8d2VhayBDbHV0dGVyLkFjdGlvbj4gZ2V0X2FjdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBnZXRfYWxsb2NhdGlv bl9ib3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBn ZXRfYWxsb2NhdGlvbl92ZXJ0aWNlcyAoQ2x1dHRlci5BY3Rvcj8gYW5jZXN0b3IsIFtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHcmFwaGVuZS5Qb2ludDNEIHZlcnRzWzRdKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGdldF9hbmNob3JfcG9pbnRf Z3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBnZXRfYmFja2dyb3VuZF9jb2xvciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y2x1dHRlcl9nZXRfYWN0b3JfYnlfZ2lkIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS44Iiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYnlfZ2lkICh1aW50MzIgaWRfKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFj dG9yIGdldF9jaGlsZF9hdF9pbmRleCAoaW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuTWF0cml4IGdldF9jaGlsZF90cmFuc2Zvcm0g KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3 ZWFrIENsdXR0ZXIuQWN0b3I+IGdldF9jaGlsZHJlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jbGlwIChvdXQgZmxvYXQgeG9mZiwgb3V0IGZs b2F0IHlvZmYsIG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBnZXRfY2xpcF90b19hbGxvY2F0aW9u ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5Db25zdHJhaW50IGdldF9jb25zdHJhaW50IChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5Db25z dHJhaW50PiBnZXRfY29uc3RyYWludHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db250ZW50IGdldF9jb250ZW50ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGdl dF9jb250ZW50X2JveCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgQ2x1dHRlci5Db250ZW50R3Jhdml0eSBnZXRfY29udGVudF9ncmF2aXR5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRSZXBlYXQg Z2V0X2NvbnRlbnRfcmVwZWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGdldF9jb250ZW50X3NjYWxpbmdfZmlsdGVycyAob3V0IENsdXR0ZXIuU2Nh bGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBvdXQgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ19maWx0 ZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuUGFpbnRWb2x1bWUgZ2V0X2RlZmF1bHRfcGFpbnRfdm9sdW1lICgpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfZGVwdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kZWxheSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2R1cmF0aW9uICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGlvbk1vZGUg Z2V0X2Vhc2luZ19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5FZmZlY3QgZ2V0X2VmZmVjdCAoc3RyaW5nIG5hbWUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0 ZXIuRWZmZWN0PiBnZXRfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9maXJzdF9jaGlsZCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGdldF9maXhlZF9wb3Np dGlvbl9zZXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1 dHRlci5BY3RvckZsYWdzIGdldF9mbGFncyAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9hY3Rvcl9oYXNfcG9pbnRlciIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIGJvb2wgZ2V0X2hhc19wb2ludGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9oZWln aHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5BY3RvciBnZXRfbGFzdF9jaGlsZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFnZXIgZ2V0X2xheW91 dF9tYW5hZ2VyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIGdldF9tYXJnaW4gKENsdXR0ZXIuTWFyZ2luIG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5fYm90dG9tICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX2xl ZnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF9tYXJnaW5fcmlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF9tYXJnaW5fdG9wICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fY2hpbGRyZW4gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X25hbWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfbmV4dF9zaWJsaW5nICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJlY3Qg Z2V0X29mZnNjcmVlbl9yZWRpcmVjdCAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRfb3BhY2l0eSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgaW50IGdldF9vcGFj aXR5X292ZXJyaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IGJvb2wgZ2V0X3BhaW50X2JveCAob3V0IENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1aW50OCBnZXRfcGFpbnRfb3BhY2l0eSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGdldF9wYWlu dF92aXNpYmlsaXR5ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wg Z2V0X3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5QYWludFZvbHVtZSB2b2x1bWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgUGFuZ28uQ29udGV4dCBnZXRf cGFuZ29fY29udGV4dCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3I/IGdldF9w YXJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg Z2V0X3Bpdm90X3BvaW50IChvdXQgZmxvYXQgcGl2b3RfeCwgb3V0IGZsb2F0IHBpdm90X3kpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfcGl2b3Rf cG9pbnRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lk IGdldF9wb3NpdGlvbiAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF9oZWln aHQgKGZsb2F0IGZvcl93aWR0aCwgb3V0IGZsb2F0IG1pbl9oZWlnaHRfcCwgb3V0IGZsb2F0IG5h dHVyYWxfaGVpZ2h0X3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZvaWQgZ2V0X3ByZWZlcnJlZF9zaXplIChvdXQgZmxvYXQgbWluX3dpZHRoX3AsIG91dCBmbG9h dCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFsX3dpZHRoX3AsIG91dCBmbG9hdCBuYXR1 cmFsX2hlaWdodF9wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF93aWR0aCAoZmxvYXQgZm9yX2hlaWdodCwgb3V0IGZs b2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF93aWR0aF9wKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9w cmV2aW91c19zaWJsaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X3JlYWN0aXZlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIENsdXR0ZXIuUmVxdWVzdE1vZGUgZ2V0X3JlcXVlc3RfbW9kZSAoKTsKKysJCXB1 YmxpYyBib29sIGdldF9yZXNvdXJjZV9zY2FsZSAob3V0IGZsb2F0IHJlc291cmNlX3NjYWxlKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9yb3RhdGlvbiAoQ2x1dHRl ci5Sb3RhdGVBeGlzIGF4aXMsIG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSwgb3V0IGZsb2F0IHop OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3Jv dGF0aW9uX2FuZ2xlIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2NhbGUgKG91dCBkb3VibGUgc2NhbGVf eCwgb3V0IGRvdWJsZSBzY2FsZV95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCBnZXRfc2NhbGVfY2VudGVyIChvdXQgZmxvYXQgY2VudGVyX3gsIG91dCBmbG9hdCBjZW50ZXJf eSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBnZXRfc2Nh bGVfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg ZG91YmxlIGdldF9zY2FsZV96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LlN0YWdlIGdldF9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gZ2V0X3RleHRfZGlyZWN0aW9uICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1hdHJpeCBnZXRfdHJh bnNmb3JtICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5QYWludFZvbHVtZSBnZXRfdHJhbnNmb3JtZWRfcGFpbnRfdm9sdW1lIChDbHV0 dGVyLkFjdG9yIHJlbGF0aXZlX3RvX2FuY2VzdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2Zvcm1lZF9wb3NpdGlvbiAob3V0IGZsb2F0 IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyB2b2lkIGdldF90cmFuc2Zvcm1lZF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBo ZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuVHJhbnNpdGlvbiBnZXRfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2xhdGlvbiAo b3V0IGZsb2F0IHRyYW5zbGF0ZV94LCBvdXQgZmxvYXQgdHJhbnNsYXRlX3ksIG91dCBmbG9hdCB0 cmFuc2xhdGVfeik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJcHVibGljIGZs b2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkFjdG9yQWxpZ24gZ2V0X3hfYWxpZ24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3hfZXhwYW5kICgpOworKwkJcHVibGljIGZsb2F0 IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLkFjdG9yQWxpZ24gZ2V0X3lfYWxpZ24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3lfZXhwYW5kICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfel9wb3NpdGlvbiAoKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGdldF96X3JvdGF0aW9uX2dyYXZp dHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBncmFi X2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Ym9vbCBoYXNfYWN0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBib29sIGhhc19hbGxvY2F0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBib29sIGhhc19jb25zdHJhaW50cyAoKTsKKysJCXB1YmxpYyBib29sIGhh c19kYW1hZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJv b2wgaGFzX2VmZmVjdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgYm9vbCBoYXNfa2V5X2ZvY3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0K KysJCXB1YmxpYyBib29sIGhhc19tYXBwZWRfY2xvbmVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBoYXNfb3ZlcmxhcHMgKCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBoaWRlX2FsbCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRfYWJvdmUg KENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGluc2VydF9jaGlsZF9hdF9pbmRl eCAoQ2x1dHRlci5BY3RvciBjaGlsZCwgaW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2JlbG93IChDbHV0dGVyLkFj dG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX2luX2Nsb25lX3BhaW50ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX21hcHBlZCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgYm9vbCBpc19yZWFsaXplZCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGlzX3JvdGF0ZWQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBpc19zY2Fs ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGJvb2wgaXNf dmlzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgbWFwICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIG1vdmVf YW5jaG9yX3BvaW50IChmbG9hdCBhbmNob3JfeCwgZmxvYXQgYW5jaG9yX3kpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIG1vdmVfYW5jaG9yX3BvaW50X2Zyb21fZ3Jhdml0eSAo Q2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwkJcHVibGljIHZvaWQgbW92ZV9ieSAoZmxvYXQgZHgsIGZsb2F0IGR5KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBuZWVkc19leHBhbmQgKENsdXR0ZXIu T3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgcGFpbnRfbm9kZSAoQ2x1dHRlci5QYWludE5vZGUgcm9vdCk7CisrCQlwdWJsaWMg dm9pZCBwaWNrX2JveCAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2NvbnRleHQsIENsdXR0ZXIu QWN0b3JCb3ggYm94KTsKKysJCXB1YmxpYyB2b2lkIHBvcF9pbnRlcm5hbCAoKTsKKysJCXB1Ymxp YyB2b2lkIHB1c2hfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZWRyYXcgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcXVldWVfcmVk cmF3X3dpdGhfY2xpcCAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlwKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hY3Rpb24gKENsdXR0ZXIuQWN0 aW9uIGFjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCByZW1vdmVfYWN0aW9uX2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsX2NoaWxkcmVuICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGxfdHJh bnNpdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2NoaWxkIChDbHV0dGVyLkFjdG9yIGNoaWxkKTsKKysJCXB1YmxpYyB2b2lkIHJl bW92ZV9jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2NvbnN0cmFpbnQgKENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jb25zdHJh aW50X2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIHJlbW92ZV9lZmZlY3QgKENsdXR0ZXIuRWZmZWN0IGVmZmVjdCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfZWZmZWN0 X2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCByZW1vdmVfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlcGxhY2VfY2hpbGQgKENsdXR0 ZXIuQWN0b3Igb2xkX2NoaWxkLCBDbHV0dGVyLkFjdG9yIG5ld19jaGlsZCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVzdG9yZV9lYXNpbmdfc3RhdGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2F2ZV9l YXNpbmdfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0dGVyLkFsbG9j YXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2FuY2hvcl9wb2ludCAoZmxvYXQgYW5jaG9yX3gsIGZsb2F0IGFuY2hvcl95KTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYW5jaG9yX3BvaW50X2Zyb21fZ3Jhdml0eSAo Q2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kX2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xv cik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2No aWxkX2Fib3ZlX3NpYmxpbmcgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNp YmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9jaGlsZF9hdF9pbmRleCAoQ2x1dHRlci5BY3RvciBjaGlsZCwgaW50IGluZGV4Xyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NoaWxkX2JlbG93 X3NpYmxpbmcgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF90 cmFuc2Zvcm0gKENsdXR0ZXIuTWF0cml4PyB0cmFuc2Zvcm0pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NsaXAgKGZsb2F0IHhvZmYsIGZsb2F0IHlv ZmYsIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NsaXBfdG9fYWxsb2NhdGlvbiAoYm9vbCBjbGlwX3Nl dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nv bnRlbnQgKENsdXR0ZXIuQ29udGVudD8gY29udGVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRfZ3Jhdml0eSAoQ2x1dHRlci5Db250 ZW50R3Jhdml0eSBncmF2aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdm9pZCBzZXRfY29udGVudF9yZXBlYXQgKENsdXR0ZXIuQ29udGVudFJlcGVhdCByZXBl YXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9j b250ZW50X3NjYWxpbmdfZmlsdGVycyAoQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1pbl9maWx0ZXIs IENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfZGVwdGggKGZsb2F0IGRlcHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX2RlbGF5ICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX2R1cmF0aW9uICh1 aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfZWFzaW5nX21vZGUgKENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9maXhlZF9wb3NpdGlvbl9z ZXQgKGJvb2wgaXNfc2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9mbGFncyAoQ2x1dHRlci5BY3RvckZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9oZWlnaHQgKGZsb2F0IGhlaWdo dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xh eW91dF9tYW5hZ2VyIChDbHV0dGVyLkxheW91dE1hbmFnZXI/IG1hbmFnZXIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW4gKENsdXR0ZXIu TWFyZ2luIG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X21hcmdpbl9ib3R0b20gKGZsb2F0IG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl9sZWZ0IChmbG9hdCBtYXJn aW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9t YXJnaW5fcmlnaHQgKGZsb2F0IG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl90b3AgKGZsb2F0IG1hcmdpbik7CisrCQlwdWJs aWMgdm9pZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIHZvaWQgc2V0X29mZnNjcmVlbl9yZWRpcmVjdCAoQ2x1dHRlci5PZmZz Y3JlZW5SZWRpcmVjdCByZWRpcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3BhY2l0eSAodWlu dDggb3BhY2l0eSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3BhY2l0eV9vdmVycmlkZSAoaW50IG9w YWNpdHkpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wYXJlbnQgKENsdXR0ZXIuQWN0b3IgcGFy ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRf cGl2b3RfcG9pbnQgKGZsb2F0IHBpdm90X3gsIGZsb2F0IHBpdm90X3kpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9waXZvdF9wb2ludF96IChmbG9h dCBwaXZvdF96KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb3NpdGlvbiAoZmxvYXQgeCwgZmxvYXQg eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVh Y3RpdmUgKGJvb2wgcmVhY3RpdmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3JlcXVlc3RfbW9kZSAoQ2x1dHRlci5SZXF1ZXN0TW9kZSBtb2RlKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcm90YXRpb24gKENsdXR0ZXIu Um90YXRlQXhpcyBheGlzLCBkb3VibGUgYW5nbGUsIGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHop OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yb3Rh dGlvbl9hbmdsZSAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMsIGRvdWJsZSBhbmdsZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGUgKGRvdWJs ZSBzY2FsZV94LCBkb3VibGUgc2NhbGVfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3NjYWxlX2Z1bGwgKGRvdWJsZSBzY2FsZV94LCBkb3VibGUgc2NhbGVfeSwgZmxv YXQgY2VudGVyX3gsIGZsb2F0IGNlbnRlcl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGVfeiAoZG91YmxlIHNjYWxlX3opOworKwkJcHVi bGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RleHRfZGlyZWN0aW9uIChD bHV0dGVyLlRleHREaXJlY3Rpb24gdGV4dF9kaXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90cmFuc2Zvcm0gKENsdXR0ZXIuTWF0cml4PyB0cmFu c2Zvcm0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF90cmFuc2xhdGlvbiAoZmxvYXQgdHJhbnNsYXRlX3gsIGZsb2F0IHRyYW5zbGF0ZV95LCBmbG9h dCB0cmFuc2xhdGVfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMg dm9pZCBzZXRfd2lkdGggKGZsb2F0IHdpZHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB2b2lkIHNldF94IChmbG9hdCB4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeF9hbGlnbiAoQ2x1dHRlci5BY3RvckFsaWdu IHhfYWxpZ24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF94X2V4cGFuZCAoYm9vbCBleHBhbmQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3kgKGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95X2FsaWduIChDbHV0dGVyLkFjdG9yQWxpZ24g eV9hbGlnbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3lfZXhwYW5kIChib29sIGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3pfcG9zaXRpb24gKGZsb2F0IHpfcG9zaXRpb24pOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF96X3JvdGF0aW9uX2Zyb21fZ3Jhdml0 eSAoZG91YmxlIGFuZ2xlLCBDbHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlwdWJsaWMgYm9v bCBzaG91bGRfcGlja19wYWludCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHNob3dfYWxsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIGJvb2wgdHJhbnNmb3JtX3N0YWdlX3BvaW50IChmbG9hdCB4LCBmbG9hdCB5LCBvdXQg ZmxvYXQgeF9vdXQsIG91dCBmbG9hdCB5X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVubWFwICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0K KysJCXB1YmxpYyB2b2lkIHVucGFyZW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHZvaWQgdW5zZXRfZmxhZ3MgKENsdXR0ZXIuQWN0b3JGbGFncyBmbGFncyk7 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkFjdGlvbiBhY3Rpb25zIHsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yQm94IGFsbG9jYXRpb24geyBvd25lZCBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgYW5jaG9yX2dyYXZp dHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIGZsb2F0IGFuY2hvcl94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBhbmNob3JfeSB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuQ29sb3IgYmFja2dyb3VuZF9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBiYWNr Z3JvdW5kX2NvbG9yX3NldCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgY2hpbGRfdHJhbnNmb3JtX3Nl dCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgY2xpcF9yZWN0IHsgb3duZWQgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGNsaXBf dG9fYWxsb2NhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnN0cmFpbnQgY29u c3RyYWludHMgeyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgQ2x1dHRlci5Db250ZW50IGNvbnRlbnQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGNvbnRlbnRfYm94IHsg Z2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIu Q29udGVudEdyYXZpdHkgY29udGVudF9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50UmVwZWF0IGNvbnRl bnRfcmVwZWF0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZmxv YXQgZGVwdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5FZmZlY3QgZWZmZWN0IHsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0 b3IgZmlyc3RfY2hpbGQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBib29sIGZpeGVkX3Bvc2l0aW9uX3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9h dCBmaXhlZF94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGZpeGVkX3kgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBoYXNfY2xpcCB7IGdldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgYm9vbCBoYXNfcG9pbnRlciB7IGdldDsgfQorKwkJcHVibGljIGZsb2F0IGhlaWdo dCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQWN0b3IgbGFzdF9jaGlsZCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFnZXIgbGF5b3V0X21hbmFnZXIg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5T Y2FsaW5nRmlsdGVyIG1hZ25pZmljYXRpb25fZmlsdGVyIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJv b2wgbWFwcGVkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGZsb2F0IG1hcmdpbl9ib3R0b20geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fbGVmdCB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IG1hcmdpbl9yaWdo dCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGZsb2F0IG1hcmdpbl90b3AgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbWluX2hlaWdodCB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG1pbl9oZWlnaHRfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIGZsb2F0IG1pbl93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG1pbl93aWR0aF9z ZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRl ci5TY2FsaW5nRmlsdGVyIG1pbmlmaWNhdGlvbl9maWx0ZXIgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIGZsb2F0IG5hdHVyYWxfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wg bmF0dXJhbF9oZWlnaHRfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG5hdHVyYWxfd2lk dGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBuYXR1cmFsX3dpZHRoX3NldCB7IGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5PZmZz Y3JlZW5SZWRpcmVjdCBvZmZzY3JlZW5fcmVkaXJlY3QgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHVpbnQgb3BhY2l0eSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgcGl2b3Rf cG9pbnQgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBmbG9hdCBwaXZvdF9wb2ludF96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5Qb2ludCBwb3NpdGlvbiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCByZWFjdGl2ZSB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBib29sIHJlYWxpemVkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgQ2x1dHRlci5SZXF1ZXN0TW9kZSByZXF1ZXN0X21vZGUgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgcmVzb3VyY2Vfc2NhbGUgeyBn ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIGRvdWJsZSByb3RhdGlvbl9hbmdsZV94IHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IGRvdWJsZSByb3RhdGlvbl9hbmdsZV95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSByb3Rh dGlvbl9hbmdsZV96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJvdGF0aW9uX2NlbnRlcl94 IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJvdGF0aW9uX2NlbnRlcl95IHsgb3du ZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJvdGF0aW9uX2NlbnRlcl96IHsgb3duZWQgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkdyYXZpdHkgcm90YXRpb25fY2VudGVyX3pfZ3Jhdml0eSB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgc2NhbGVfY2VudGVyX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2NlbnRlcl95IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkdyYXZpdHkgc2NhbGVfZ3Jhdml0eSB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBk b3VibGUgc2NhbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVfeSB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBz Y2FsZV96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgc2hvd19vbl9zZXRfcGFyZW50IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIHNpemUgeyBvd25lZCBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuVGV4dERpcmVj dGlvbiB0ZXh0X2RpcmVjdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB0cmFuc2Zvcm1f c2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgdHJhbnNsYXRpb25feCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgZmxvYXQgdHJhbnNsYXRpb25feSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgdHJh bnNsYXRpb25feiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBib29sIHZpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHdpZHRoIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB4IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIHhfYWxpZ24geyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29s IHhfZXhwYW5kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB5IHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFs aWduIHlfYWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBib29sIHlfZXhwYW5kIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgel9wb3NpdGlvbiB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgYWxsb2Nh dGlvbl9jaGFuZ2VkIChDbHV0dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxh Z3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIGJvb2wgYnV0dG9uX3ByZXNzX2V2ZW50IChDbHV0dGVyLkJ1dHRvbkV2ZW50IGV2 ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCBib29sIGJ1dHRvbl9yZWxlYXNlX2V2ZW50IChDbHV0dGVyLkJ1dHRvbkV2ZW50IGV2ZW50 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCBib29sIGNhcHR1cmVkX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0 dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgZGVzdHJveSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGVudGVyX2V2ZW50IChDbHV0dGVyLkNyb3NzaW5nRXZl bnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIGJvb2wgZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW0hhc0VtaXR0 ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBoaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQga2V5X2ZvY3VzX2luICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQga2V5X2ZvY3VzX291dCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCBib29sIGtleV9wcmVzc19ldmVudCAoQ2x1dHRlci5LZXlFdmVudCBldmVudCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBrZXlf cmVsZWFzZV9ldmVudCAoQ2x1dHRlci5LZXlFdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBsZWF2ZV9ldmVudCAo Q2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIG1vdGlvbl9ldmVudCAoQ2x1dHRlci5N b3Rpb25FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWludCAoQ2x1dHRlci5QYWludENvbnRleHQg cGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBwYXJlbnRfc2V0IChDbHV0dGVyLkFjdG9yPyBvbGRfcGFyZW50 KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGljayAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2Nv bnRleHQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBxdWV1ZV9yZWxheW91dCAoKTsKKysJCVtIYXNF bWl0dGVyXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IHJlYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgYm9vbCBzY3JvbGxfZXZlbnQgKENsdXR0ZXIuU2Nyb2xsRXZlbnQgZXZlbnQp OworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBzaG93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHRvdWNoX2V2ZW50IChDbHV0dGVy LkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgdHJhbnNpdGlvbl9zdG9wcGVkIChzdHJpbmcgbmFtZSwgYm9vbCBpc19maW5p c2hlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHNpZ25hbCB2 b2lkIHRyYW5zaXRpb25zX2NvbXBsZXRlZCAoKTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHVucmVhbGl6ZSAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfYWN0b3JfbWV0YV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBBY3Rvck1ldGEgOiBHTGliLklu aXRpYWxseVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIEFjdG9yTWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2FjdG9yICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2VuYWJsZWQgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBzZXRfYWN0b3IgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9lbmFibGVkIChib29sIGlzX2VuYWJsZWQpOworKwkJcHVibGljIHZv aWQgc2V0X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGFjdG9y IHsgZ2V0OyB9CisrCQlwdWJsaWMgYm9vbCBlbmFibGVkIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX25vZGVf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEFjdG9yTm9kZSA6IENsdXR0ZXIuUGFpbnRO b2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgQWN0b3JOb2RlIChDbHV0dGVyLkFjdG9y IGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxpZ25fY29uc3RyYWludF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBBbGlnbkNvbnN0 cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisrCQlwdWJsaWMg QWxpZ25Db25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UsIENsdXR0ZXIuQWxpZ25BeGlz IGF4aXMsIGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgQ2x1dHRlci5BbGlnbkF4aXMgZ2V0X2Fs aWduX2F4aXMgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2ZhY3RvciAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9h bGlnbl9heGlzIChDbHV0dGVyLkFsaWduQXhpcyBheGlzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9m YWN0b3IgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0dGVy LkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIuQWxpZ25BeGlzIGFsaWduX2F4aXMg eyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCBmYWN0b3IgeyBnZXQ7IHNl dCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdldDsgc2V0 IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbHBoYV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQWxwaGEgOiBHTGliLkluaXRpYWxseVVub3du ZWQsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwdWJsaWMgQWxwaGEgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgQWxwaGEuZnVsbCAoQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgdWxvbmcgbW9kZSk7 CisrCQlwdWJsaWMgZG91YmxlIGdldF9hbHBoYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bG9uZyBnZXRfbW9kZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuVGltZWxpbmUgZ2V0X3RpbWVsaW5lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nsb3N1cmUgKEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsK KysJCXB1YmxpYyB2b2lkIHNldF9mdW5jIChvd25lZCBDbHV0dGVyLkFscGhhRnVuYyBmdW5jKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tb2RlICh1 bG9uZyBtb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW1lbGluZSAoQ2x1dHRlci5UaW1lbGlu ZSB0aW1lbGluZSk7CisrCQlwdWJsaWMgZG91YmxlIGFscGhhIHsgZ2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWxvbmcgbW9kZSB7IGdldDsgc2V0IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUgeyBnZXQ7IHNldDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9hbmltYXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIGNsYXNzIEFuaW1hdGlvbiA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLlNj cmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHVibGljIEFuaW1hdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9kdXJhdGlvbiAoKTsK KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW50ZXJ2YWwgZ2V0X2ludGVydmFsIChzdHJpbmcg cHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfbG9vcCAoKTsKKysJCXB1YmxpYyB1 bG9uZyBnZXRfbW9kZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgZ2V0 X3RpbWVsaW5lICgpOworKwkJcHVibGljIGJvb2wgaGFzX3Byb3BlcnR5IChzdHJpbmcgcHJvcGVy dHlfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJ cHVibGljIHZvaWQgc2V0X2xvb3AgKGJvb2wgbG9vcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbW9k ZSAodWxvbmcgbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb2JqZWN0IChHTGliLk9iamVjdCBv YmplY3QpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVsaW5lIChDbHV0dGVyLlRpbWVsaW5lPyB0 aW1lbGluZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgQ2x1dHRlci5BbHBoYSBhbHBoYSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlwdWJsaWMg dWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBsb29wIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyB1bG9uZyBtb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIEdMaWIuT2JqZWN0IG9iamVjdCB7IG93bmVkIGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjb21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCBzdGFydGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFj dF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQW55RXZlbnQg OiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudFR5cGUgdHlwZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmFja2VuZF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjbGFzcyBCYWNrZW5kIDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIEJhY2tlbmQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBhZGRfb3B0aW9ucyAoR0xpYi5PcHRpb25Hcm91cCBncm91cCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBjcmVhdGVfY29udGV4dCAoKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENs dXR0ZXIuU3RhZ2VXaW5kb3cgY3JlYXRlX3N0YWdlIChDbHV0dGVyLlN0YWdlIHdyYXBwZXIpIHRo cm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg ZW5zdXJlX2NvbnRleHQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5TZWF0IGdldF9kZWZhdWx0X3NlYXQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgZ2V0X2ZlYXR1cmVzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2Fpcm8uRm9udE9wdGlv bnMgZ2V0X2ZvbnRfb3B0aW9ucyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXRN ZXRob2QgZ2V0X2lucHV0X21ldGhvZCAoKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X3Jlc29sdXRp b24gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2V2ZW50 cyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGluaXRfZmVhdHVy ZXMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBwb3N0X3BhcnNl ICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmVkcmF3IChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mb250X29wdGlvbnMg KENhaXJvLkZvbnRPcHRpb25zIG9wdGlvbnMpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X21l dGhvZCAoQ2x1dHRlci5JbnB1dE1ldGhvZCBtZXRob2QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGZvbnRfY2hhbmdlZCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNvbHV0aW9uX2No YW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgc2V0dGluZ3NfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluX2xheW91dF9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFz cyBCaW5MYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIild CisrCQlwdWJsaWMgQmluTGF5b3V0IChDbHV0dGVyLkJpbkFsaWdubWVudCB4X2FsaWduID0gQ2x1 dHRlci5CaW5BbGlnbm1lbnQuU1RBUlQsIENsdXR0ZXIuQmluQWxpZ25tZW50IHlfYWxpZ24gPSBD bHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeF9hbGlnbiB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeV9hbGlnbiB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2JpbmRfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCaW5kQ29uc3RyYWludCA6IENsdXR0ZXIuQ29u c3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBCaW5kQ29uc3RyYWludCAoQ2x1 dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLkJpbmRDb29yZGluYXRlIGNvb3JkaW5hdGUsIGZs b2F0IG9mZnNldCk7CisrCQlwdWJsaWMgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBnZXRfY29vcmRp bmF0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfb2Zmc2V0ICgpOworKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2Nvb3Jk aW5hdGUgKENsdXR0ZXIuQmluZENvb3JkaW5hdGUgY29vcmRpbmF0ZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfb2Zmc2V0IChmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAo Q2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkJpbmRDb29yZGluYXRl IGNvb3JkaW5hdGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCBvZmZz ZXQgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJj ZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kaW5nX3Bvb2xf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xh c3MgQmluZGluZ1Bvb2wgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgQmluZGluZ1Bvb2wgKHN0cmluZyBuYW1lKTsK KysJCXB1YmxpYyBib29sIGFjdGl2YXRlICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVycywgR0xpYi5PYmplY3QgZ29iamVjdCk7CisrCQlwdWJsaWMgdm9pZCBibG9j a19hY3Rpb24gKHN0cmluZyBhY3Rpb25fbmFtZSk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg Q2x1dHRlci5CaW5kaW5nUG9vbCBmaW5kIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgdW5vd25l ZCBzdHJpbmcgZmluZF9hY3Rpb24gKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUg bW9kaWZpZXJzKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkJpbmRpbmdQb29s IGdldF9mb3JfY2xhc3MgKHZvaWQqIGtsYXNzKTsKKysJCXB1YmxpYyB2b2lkIGluc3RhbGxfYWN0 aW9uIChzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbW9kaWZpZXJzLCBvd25lZCBDbHV0dGVyLkJpbmRpbmdBY3Rpb25GdW5jIGNhbGxiYWNrKTsK KysJCXB1YmxpYyB2b2lkIGluc3RhbGxfY2xvc3VyZSAoc3RyaW5nIGFjdGlvbl9uYW1lLCB1aW50 IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgR0xpYi5DbG9zdXJlIGNs b3N1cmUpOworKwkJcHVibGljIHZvaWQgb3ZlcnJpZGVfYWN0aW9uICh1aW50IGtleV92YWwsIENs dXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgb3duZWQgR0xpYi5DYWxsYmFjayBjYWxsYmFj ayk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV9jbG9zdXJlICh1aW50IGtleV92YWwsIENsdXR0 ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgR0xpYi5DbG9zdXJlIGNsb3N1cmUpOworKwkJcHVi bGljIHZvaWQgcmVtb3ZlX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlw ZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZvaWQgdW5ibG9ja19hY3Rpb24gKHN0cmluZyBhY3Rp b25fbmFtZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7 IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JsdXJfZWZmZWN0X2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNz IEJsdXJFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJ cHVibGljIEJsdXJFZmZlY3QgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBCb3ggOiBDbHV0 dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5D b250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIEJveCAoQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFnZXIg Z2V0X2xheW91dF9tYW5hZ2VyICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHBhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgcGFja19hZnRlciAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5BY3Rv cj8gc2libGluZywgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNr X2F0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBpbnQgcG9zaXRpb24sIC4uLik7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19iZWZvcmUgKENsdXR0ZXIuQWN0b3IgYWN0b3Is IENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZvaWQgcGFja3YgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIFtDQ29kZSAoYXJyYXlfbGVuZ3Ro X2NuYW1lID0gIm5fcHJvcGVydGllcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUsIGFycmF5X2xl bmd0aF90eXBlID0gImd1aW50IildIHN0cmluZ1tdIHByb3BlcnRpZXMsIFtDQ29kZSAoYXJyYXlf bGVuZ3RoX2NuYW1lID0gIm5fcHJvcGVydGllcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUsIGFy cmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdMaWIuVmFsdWVbXSB2YWx1ZXMpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29s b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXlvdXRfbWFuYWdl ciAoQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGNvbG9yX3NldCB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2Vy IHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2xheW91dF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBCb3hMYXlvdXQg OiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIildCisrCQlwdWJsaWMg Qm94TGF5b3V0ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9hbGln bm1lbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIG91dCBDbHV0dGVyLkJveEFsaWdubWVudCB4X2Fs aWduLCBvdXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGlnbik7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdWxvbmcgZ2V0X2Vhc2luZ19tb2RlICgpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBib29sIGdldF9leHBhbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9maWxsIChDbHV0dGVyLkFjdG9yIGFj dG9yLCBvdXQgYm9vbCB4X2ZpbGwsIG91dCBib29sIHlfZmlsbCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBnZXRfaG9tb2dlbmVvdXMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gZ2V0 X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3BhY2tfc3RhcnQgKCk7CisrCQlw dWJsaWMgdWludCBnZXRfc3BhY2luZyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg Ym9vbCBnZXRfdXNlX2FuaW1hdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IGJvb2wgZ2V0X3ZlcnRpY2FsICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHBhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgZXhwYW5kLCBib29sIHhfZmlsbCwgYm9v bCB5X2ZpbGwsIENsdXR0ZXIuQm94QWxpZ25tZW50IHhfYWxpZ24sIENsdXR0ZXIuQm94QWxpZ25t ZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbGln bm1lbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQm94QWxpZ25tZW50IHhfYWxpZ24s IENsdXR0ZXIuQm94QWxpZ25tZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9lYXNpbmdfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfbW9kZSAodWxvbmcgbW9kZSk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2V4cGFuZCAoQ2x1dHRlci5BY3RvciBh Y3RvciwgYm9vbCBleHBhbmQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9maWxsIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBib29sIHhfZmlsbCwgYm9vbCB5X2ZpbGwpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2hvbW9nZW5l b3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50 YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3BhY2tfc3RhcnQgKGJvb2wgcGFja19zdGFydCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX2FuaW1hdGlvbnMgKGJvb2wgYW5pbWF0ZSk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ZlcnRpY2FsIChib29sIHZl cnRpY2FsKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWludCBlYXNpbmdfZHVyYXRp b24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bG9uZyBlYXNp bmdfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24geyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcGFja19zdGFydCB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdWludCBzcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgYm9vbCB1c2VfYW5pbWF0aW9ucyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIGJvb2wgdmVydGljYWwgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9icmlnaHRuZXNzX2NvbnRyYXN0X2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQnJpZ2h0bmVzc0NvbnRyYXN0RWZmZWN0 IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBCcmln aHRuZXNzQ29udHJhc3RFZmZlY3QgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfYnJpZ2h0bmVzcyAo b3V0IGZsb2F0IHJlZCwgb3V0IGZsb2F0IGdyZWVuLCBvdXQgZmxvYXQgYmx1ZSk7CisrCQlwdWJs aWMgdm9pZCBnZXRfY29udHJhc3QgKG91dCBmbG9hdCByZWQsIG91dCBmbG9hdCBncmVlbiwgb3V0 IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2JyaWdodG5lc3MgKGZsb2F0IGJyaWdo dG5lc3MpOworKwkJcHVibGljIHZvaWQgc2V0X2JyaWdodG5lc3NfZnVsbCAoZmxvYXQgcmVkLCBm bG9hdCBncmVlbiwgZmxvYXQgYmx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29udHJhc3QgKGZs b2F0IGNvbnRyYXN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250cmFzdF9mdWxsIChmbG9hdCBy ZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIENsdXR0ZXIuQ29sb3IgYnJpZ2h0bmVzcyB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbnRyYXN0IHsgb3du ZWQgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEJ1dHRvbkV2ZW50IDogQ2x1dHRl ci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgdWludDMyIGJ1dHRv bjsKKysJCXB1YmxpYyB1aW50IGNsaWNrX2NvdW50OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5J bnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOwor KwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdl IHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRU eXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9jYW52YXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGNsYXNzIENhbnZhcyA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLkNvbnRl bnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckNvbnRlbnQqIildCisrCQlwdWJsaWMgQ2FudmFzICgpOworKwkJcHVibGljIGZsb2F0 IGdldF9zY2FsZV9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGVfZmFjdG9yIChm bG9hdCBzY2FsZSk7CisrCQlwdWJsaWMgYm9vbCBzZXRfc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVp Z2h0KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBoZWlnaHQgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2ZhY3RvciB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZHJhdyAoQ2Fpcm8uQ29udGV4dCBjciwgaW50IHdp ZHRoLCBpbnQgaGVpZ2h0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2hpbGRfbWV0YV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFz cyBDaGlsZE1ldGEgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ2hpbGRNZXRhICgpOworKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkNvbnRhaW5lciBnZXRfY29udGFpbmVyICgpOworKwkJcHVibGljIENsdXR0ZXIuQWN0b3Ig YWN0b3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29udGFpbmVyIGNv bnRhaW5lciB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NsaWNrX2FjdGlv bl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBj bGFzcyBDbGlja0FjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJs aWMgQ2xpY2tBY3Rpb24gKCk7CisrCQlwdWJsaWMgdWludCBnZXRfYnV0dG9uICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Nvb3JkcyAob3V0IGZs b2F0IHByZXNzX3gsIG91dCBmbG9hdCBwcmVzc195KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBnZXRfc3RhdGUgKCk7CisrCQlw dWJsaWMgdm9pZCByZWxlYXNlICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Ym9vbCBoZWxkIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc19kdXJhdGlvbiB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc190aHJlc2hvbGQgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBwcmVzc2VkIHsgZ2V0OyB9CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjbGlja2VkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBi b29sIGxvbmdfcHJlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuTG9uZ1ByZXNzU3Rh dGUgc3RhdGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jbGlwX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIENsaXBOb2RlIDogQ2x1 dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBDbGlwTm9kZSAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfY2xvbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xvbmUgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1w bGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIu U2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgQ2xvbmUgKENsdXR0ZXIuQWN0b3Ig c291cmNlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsK KysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlw dWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfY29sb3Jfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ29sb3JOb2RlIDogQ2x1dHRlci5QaXBlbGluZU5v ZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBDb2xvck5vZGUgKENsdXR0ZXIuQ29sb3I/ IGNvbG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29sb3JpemVfZWZmZWN0X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIENvbG9yaXplRWZm ZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBD b2xvcml6ZUVmZmVjdCAoQ2x1dHRlci5Db2xvciB0aW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGdldF90aW50ICgpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbnQgKENsdXR0ZXIuQ29sb3Ig dGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciB0aW50IHsgZ2V0OyBzZXQ7IH0KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBDb25zdHJhaW50IDogQ2x1dHRlci5B Y3Rvck1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIENvbnN0cmFpbnQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCB1cGRhdGVfYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRl ci5BY3RvckJveCBhbGxvY2F0aW9uKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIHVwZGF0ZV9wcmVmZXJyZWRfc2l6ZSAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRl ci5PcmllbnRhdGlvbiBkaXJlY3Rpb24sIGZsb2F0IGZvcl9zaXplLCBmbG9hdCBtaW5pbXVtX3Np emUsIGZsb2F0IG5hdHVyYWxfc2l6ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0 XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBDcm9zc2luZ0V2 ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNl IGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMg d2VhayBDbHV0dGVyLkFjdG9yIHJlbGF0ZWQ7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkV2ZW50 U2VxdWVuY2Ugc2VxdWVuY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRp bWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4 OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RlZm9ybV9lZmZlY3RfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJh Y3QgY2xhc3MgRGVmb3JtRWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIERlZm9y bUVmZmVjdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlZm9y bV92ZXJ0ZXggKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQsIENvZ2wuVGV4dHVyZVZlcnRleCB2 ZXJ0ZXgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X2JhY2tfbWF0ZXJpYWwg KCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbl90aWxlcyAob3V0IHVpbnQgeF90aWxlcywgb3V0IHVp bnQgeV90aWxlcyk7CisrCQlwdWJsaWMgdm9pZCBpbnZhbGlkYXRlICgpOworKwkJcHVibGljIHZv aWQgc2V0X2JhY2tfbWF0ZXJpYWwgKENvZ2wuSGFuZGxlPyBtYXRlcmlhbCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfbl90aWxlcyAodWludCB4X3RpbGVzLCB1aW50IHlfdGlsZXMpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB4X3RpbGVzIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgeV90aWxlcyB7IGdldDsgc2V0OyB9Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2Rlc2F0dXJhdGVfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIERlc2F0dXJhdGVFZmZlY3QgOiBD bHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIERlc2F0dXJh dGVFZmZlY3QgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGRvdWJsZSBnZXRfZmFjdG9yICgp OworKwkJcHVibGljIHZvaWQgc2V0X2ZhY3RvciAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMg ZG91YmxlIGZhY3RvciB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RyYWdfYWN0aW9u X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNs YXNzIERyYWdBY3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGlj IERyYWdBY3Rpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZHJhZ19hcmVhIChHcmFwaGVuZS5S ZWN0IGRyYWdfYXJlYSk7CisrCQlwdWJsaWMgQ2x1dHRlci5EcmFnQXhpcyBnZXRfZHJhZ19heGlz ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZHJhZ19oYW5kbGUgKCk7 CisrCQlwdWJsaWMgdm9pZCBnZXRfZHJhZ190aHJlc2hvbGQgKG91dCB1aW50IHhfdGhyZXNob2xk LCBvdXQgdWludCB5X3RocmVzaG9sZCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbW90aW9uX2Nvb3Jk cyAob3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9uX3kpOworKwkJcHVibGljIHZv aWQgZ2V0X3ByZXNzX2Nvb3JkcyAob3V0IGZsb2F0IHByZXNzX3gsIG91dCBmbG9hdCBwcmVzc195 KTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX2FyZWEgKEdyYXBoZW5lLlJlY3Q/IGRyYWdfYXJl YSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19heGlzIChDbHV0dGVyLkRyYWdBeGlzIGF4aXMp OworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfaGFuZGxlIChDbHV0dGVyLkFjdG9yPyBoYW5kbGUp OworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfdGhyZXNob2xkIChpbnQgeF90aHJlc2hvbGQsIGlu dCB5X3RocmVzaG9sZCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBkcmFnX2FyZWEgeyBvd25lZCBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGJvb2wgZHJhZ19hcmVhX3NldCB7IGdldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuRHJhZ0F4aXMgZHJhZ19heGlzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0 dGVyLkFjdG9yIGRyYWdfaGFuZGxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGludCB4X2RyYWdfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5X2RyYWdfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyYWdfYmVnaW4gKENsdXR0ZXIuQWN0 b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3ksIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFnX2VuZCAo Q2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSwgQ2x1dHRl ci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGRyYWdfbW90aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBkZWx0YV94LCBmbG9hdCBk ZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgYm9vbCBkcmFnX3Byb2dyZXNzIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBk ZWx0YV94LCBmbG9hdCBkZWx0YV95KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJvcF9hY3Rpb25fZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgY2xhc3Mg RHJvcEFjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgRHJv cEFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGNhbl9kcm9wIChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95KTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyb3AgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2 ZW50X3gsIGZsb2F0IGV2ZW50X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBkcm9wX2NhbmNlbCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxv YXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBvdmVyX2luIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIG92ZXJfb3V0IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf ZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGFic3RyYWN0IGNsYXNzIEVmZmVjdCA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBFZmZlY3Qg KCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBtb2RpZnlfcGFpbnRf dm9sdW1lIChDbHV0dGVyLlBhaW50Vm9sdW1lIHZvbHVtZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBwYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29u dGV4dCwgQ2x1dHRlci5FZmZlY3RQYWludEZsYWdzIGZsYWdzKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHBpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250 ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBvc3RfcGFpbnQg KENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIGJvb2wgcHJlX3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWlu dF9jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHF1ZXVlX3JlcGFpbnQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1 bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9nZXRfdHlw ZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJs aWMgY2xhc3MgRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgRXZlbnQg KENsdXR0ZXIuRXZlbnRUeXBlIHR5cGUpOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnQgY29weSAo KTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGRvdWJsZSBnZXRfYW5nbGUgKENsdXR0ZXIuRXZlbnQgdGFyZ2V0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X2F4ZXMgKG91 dCB1aW50IG5fYXhlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dWludDMyIGdldF9idXR0b24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdWludCBnZXRfY2xpY2tfY291bnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40 IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29vcmRzIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5JbnB1dERldmljZSBnZXRfZGV2aWNlICgpOworKwkJcHVibGljIGludCBnZXRfZGV2aWNlX2lk ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuSW5wdXREZXZpY2VUb29sIGdldF9kZXZpY2VfdG9vbCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBnZXRfZGV2 aWNlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZs b2F0IGdldF9kaXN0YW5jZSAoQ2x1dHRlci5FdmVudCB0YXJnZXQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBn ZXRfZXZlbnRfc2VxdWVuY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGdldF9mbGFncyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjI0IildCisrCQlwdWJsaWMgdm9pZCBnZXRfZ2VzdHVyZV9tb3Rpb25fZGVsdGEgKG91 dCBkb3VibGUgZHgsIG91dCBkb3VibGUgZHkpOworKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRH ZXN0dXJlUGhhc2UgZ2V0X2dlc3R1cmVfcGhhc2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yNCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVyZV9waW5jaF9hbmdsZV9kZWx0YSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9n ZXN0dXJlX3BpbmNoX3NjYWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVpbnQxNiBnZXRfa2V5X2NvZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdWludCBnZXRfa2V5X3N5bWJvbCAoKTsKKysJCXB1YmxpYyB1bmljaGFy IGdldF9rZXlfdW5pY29kZSAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9tb2RlX2dyb3VwICgpOwor KwkJcHVibGljIGJvb2wgZ2V0X3BhZF9ldmVudF9kZXRhaWxzIChvdXQgdWludCBudW1iZXIsIG91 dCB1aW50IG1vZGUsIG91dCBkb3VibGUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9wb3NpdGlvbiAoR3JhcGhlbmUuUG9pbnQgcG9zaXRp b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5BY3RvciBnZXRfcmVsYXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBnZXRfc2Nyb2xsX2RlbHRhIChvdXQgZG91YmxlIGR4LCBvdXQgZG91 YmxlIGR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVy LlNjcm9sbERpcmVjdGlvbiBnZXRfc2Nyb2xsX2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjI2IildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxGaW5pc2hGbGFncyBnZXRf c2Nyb2xsX2ZpbmlzaF9mbGFncyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisr CQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxTb3VyY2UgZ2V0X3Njcm9sbF9zb3VyY2UgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGdldF9zb3VyY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9zb3VyY2VfZGV2aWNlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBn ZXRfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgQ2x1 dHRlci5Nb2RpZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zdGF0ZV9mdWxsIChvdXQgQ2x1dHRlci5Nb2RpZmll clR5cGUgYnV0dG9uX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgYmFzZV9zdGF0ZSwg b3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGxhdGNoZWRfc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlm aWVyVHlwZSBsb2NrZWRfc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBlZmZlY3RpdmVf c3RhdGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHVpbnQzMiBn ZXRfdGltZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgdWlu dCBnZXRfdG91Y2hwYWRfZ2VzdHVyZV9maW5nZXJfY291bnQgKCk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfZXZlbnRfdHlwZSIpXQorKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIGdl dF90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29s IGhhc19jb250cm9sX21vZGlmaWVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBib29sIGhhc19zaGlmdF9tb2RpZmllciAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc19wb2ludGVyX2VtdWxhdGVkICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgcHV0ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2J1dHRvbiAodWludDMy IGJ1dHRvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfY29vcmRzIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2U/IGRldmlj ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Rl dmljZV90b29sIChDbHV0dGVyLklucHV0RGV2aWNlVG9vbD8gdG9vbCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmxhZ3MgKENsdXR0ZXIuRXZlbnRG bGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfa2V5X2NvZGUgKHVpbnQxNiBrZXlfY29kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X3N5bWJvbCAodWludCBrZXlfc3ltKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfdW5pY29k ZSAodW5pY2hhciBrZXlfdW5pY29kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgdm9pZCBzZXRfcmVsYXRlZCAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY3JvbGxfZGVsdGEg KGRvdWJsZSBkeCwgZG91YmxlIGR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9zY3JvbGxfZGlyZWN0aW9uIChDbHV0dGVyLlNjcm9sbERpcmVjdGlv biBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZV9kZXZpY2UgKENsdXR0ZXIuSW5w dXREZXZpY2U/IGRldmljZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBzZXRfc3RhZ2UgKENsdXR0ZXIuU3RhZ2U/IHN0YWdlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGF0ZSAoQ2x1dHRlci5Nb2RpZmll clR5cGUgc3RhdGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3RpbWUgKHVpbnQzMiB0aW1lXyk7CisrCQlwdWJsaWMgQ2x1dHRlci5BbnlFdmVudCBh bnkge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJBbnlFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlw dWJsaWMgQ2x1dHRlci5CdXR0b25FdmVudCBidXR0b24ge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0 ZXJCdXR0b25FdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Dcm9zc2luZ0V2 ZW50IGNyb3NzaW5nIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQ3Jvc3NpbmdFdmVudCAqKSIp XSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5LZXlFdmVudCBrZXkge1tDQ29kZSAoY25hbWUg PSAiKENsdXR0ZXJLZXlFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Nb3Rp b25FdmVudCBtb3Rpb24ge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJNb3Rpb25FdmVudCAqKSIp XSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxFdmVudCBzY3JvbGwge1tDQ29kZSAo Y25hbWUgPSAiKENsdXR0ZXJTY3JvbGxFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5TdGFnZVN0YXRlRXZlbnQgc3RhZ2Vfc3RhdGUge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0 ZXJTdGFnZVN0YXRlRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuVG91Y2hF dmVudCB0b3VjaCB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNoRXZlbnQgKikiKV0gIGdl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRQaW5jaEV2ZW50IHRvdWNocGFkX3BpbmNo IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRQaW5jaEV2ZW50ICopIildICBnZXQ7 IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkU3dpcGVFdmVudCB0b3VjaHBhZF9zd2lwZSB7 W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkU3dpcGVFdmVudCAqKSIpXSAgZ2V0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9zZXF1ZW5jZV9nZXRfdHlwZSAoKSIpXQor KwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNz IEV2ZW50U2VxdWVuY2UgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9maXhlZF9sYXlvdXRfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgRml4ZWRM YXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIildCisrCQlw dWJsaWMgRml4ZWRMYXlvdXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Zsb3dfbGF5b3V0X2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEZs b3dMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIildCisr CQlwdWJsaWMgRmxvd0xheW91dCAoQ2x1dHRlci5GbG93T3JpZW50YXRpb24gb3JpZW50YXRpb24p OworKwkJcHVibGljIGZsb2F0IGdldF9jb2x1bW5fc3BhY2luZyAoKTsKKysJCXB1YmxpYyB2b2lk IGdldF9jb2x1bW5fd2lkdGggKG91dCBmbG9hdCBtaW5fd2lkdGgsIG91dCBmbG9hdCBtYXhfd2lk dGgpOworKwkJcHVibGljIGJvb2wgZ2V0X2hvbW9nZW5lb3VzICgpOworKwkJcHVibGljIENsdXR0 ZXIuRmxvd09yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIGdl dF9yb3dfaGVpZ2h0IChvdXQgZmxvYXQgbWluX2hlaWdodCwgb3V0IGZsb2F0IG1heF9oZWlnaHQp OworKwkJcHVibGljIGZsb2F0IGdldF9yb3dfc3BhY2luZyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBnZXRfc25hcF90b19ncmlkICgpOworKwkJcHVi bGljIHZvaWQgc2V0X2NvbHVtbl9zcGFjaW5nIChmbG9hdCBzcGFjaW5nKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9jb2x1bW5fd2lkdGggKGZsb2F0IG1pbl93aWR0aCwgZmxvYXQgbWF4X3dpZHRoKTsK KysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlw dWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVu dGF0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfaGVpZ2h0IChmbG9hdCBtaW5faGVpZ2h0 LCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfc3BhY2luZyAoZmxv YXQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZv aWQgc2V0X3NuYXBfdG9fZ3JpZCAoYm9vbCBzbmFwX3RvX2dyaWQpOworKwkJcHVibGljIGZsb2F0 IGNvbHVtbl9zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGhvbW9nZW5lb3Vz IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1h eF9jb2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgZmxvYXQgbWF4X3Jvd19oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWluX2NvbHVtbl93aWR0aCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtaW5fcm93X2hlaWdodCB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5GbG93T3JpZW50YXRpb24gb3JpZW50YXRpb24g eyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCByb3dfc3BhY2luZyB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGJvb2wg c25hcF90b19ncmlkIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ2VzdHVyZV9hY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMg Y2xhc3MgR2VzdHVyZUFjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlw dWJsaWMgR2VzdHVyZUFjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgdm9pZCBjYW5jZWwgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgYm9vbCBnZXN0dXJlX3ByZXBhcmUgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZp Y2UgZ2V0X2RldmljZSAodWludCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudCBnZXRfbGFzdF9ldmVudCAodWludCBw b2ludCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbW90aW9uX2Nvb3JkcyAodWludCBwb2ludCwgb3V0 IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9uX3kpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbW90aW9uX2RlbHRhICh1aW50IHBvaW50 LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9uX2N1cnJlbnRfcG9pbnRzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fdG91Y2hf cG9pbnRzICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3ByZXNzX2Nvb3JkcyAodWludCBwb2ludCwg b3V0IGZsb2F0IHByZXNzX3gsIG91dCBmbG9hdCBwcmVzc195KTsKKysJCXB1YmxpYyB2b2lkIGdl dF9yZWxlYXNlX2Nvb3JkcyAodWludCBwb2ludCwgb3V0IGZsb2F0IHJlbGVhc2VfeCwgb3V0IGZs b2F0IHJlbGVhc2VfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5FdmVudFNlcXVlbmNlIGdldF9zZXF1ZW5jZSAodWludCBwb2ludCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RocmVz aG9sZF90cmlnZ2VyX2Rpc3RhbmNlIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdlc3R1cmVUcmlnZ2Vy RWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWRnZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIwIiwgc2luY2UgPSAiMS4xOCIpXQor KwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIGdldF90aHJlc2hvbGRfdHJpZ2dl cl9lZ2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfdmVsb2NpdHkgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCB2ZWxvY2l0eV94LCBvdXQgZmxv YXQgdmVsb2NpdHlfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X25fdG91Y2hfcG9pbnRzIChpbnQgbmJfcG9pbnRzKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGhyZXNob2xkX3RyaWdnZXJfZGlz dGFuY2UgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF90aHJlc2hvbGRfdHJpZ2dlcl9lZGdlIChDbHV0dGVyLkdlc3R1 cmVUcmlnZ2VyRWRnZSBlZGdlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlw dWJsaWMgaW50IG5fdG91Y2hfcG9pbnRzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBmbG9hdCB0aHJl c2hvbGRfdHJpZ2dlcl9kaXN0YW5jZV94IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBmbG9h dCB0aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZV95IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dl ckVkZ2UgdGhyZXNob2xkX3RyaWdnZXJfZWRnZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJlX2JlZ2luIChDbHV0dGVyLkFjdG9yIGFjdG9y KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGdlc3R1cmVfY2FuY2VsIChDbHV0dGVy LkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGdlc3R1cmVfZW5k IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGdl c3R1cmVfcHJvZ3Jlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9n cmlkX2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwlwdWJsaWMgY2xhc3MgR3JpZExheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5 b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBHcmlkTGF5b3V0ICgpOworKwkJcHVibGljIHZvaWQg YXR0YWNoIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgbGVmdCwgaW50IHRvcCwgaW50IHdpZHRo LCBpbnQgaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaF9uZXh0X3RvIChDbHV0dGVyLkFj dG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nLCBDbHV0dGVyLkdyaWRQb3NpdGlvbiBz aWRlLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5B Y3RvciBnZXRfY2hpbGRfYXQgKGludCBsZWZ0LCBpbnQgdG9wKTsKKysJCXB1YmxpYyBib29sIGdl dF9jb2x1bW5faG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfY29sdW1uX3NwYWNp bmcgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBnZXRfb3JpZW50YXRpb24gKCk7 CisrCQlwdWJsaWMgYm9vbCBnZXRfcm93X2hvbW9nZW5lb3VzICgpOworKwkJcHVibGljIHVpbnQg Z2V0X3Jvd19zcGFjaW5nICgpOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NvbHVtbiAoaW50IHBv c2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9uZXh0X3RvIChDbHV0dGVyLkFjdG9yIHNp YmxpbmcsIENsdXR0ZXIuR3JpZFBvc2l0aW9uIHNpZGUpOworKwkJcHVibGljIHZvaWQgaW5zZXJ0 X3JvdyAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5faG9tb2dlbmVv dXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl9zcGFjaW5n ICh1aW50IHNwYWNpbmcpOworKwkJcHVibGljIHZvaWQgc2V0X29yaWVudGF0aW9uIChDbHV0dGVy Lk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfaG9tb2dl bmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19zcGFjaW5n ICh1aW50IHNwYWNpbmcpOworKwkJcHVibGljIGJvb2wgY29sdW1uX2hvbW9nZW5lb3VzIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGNvbHVtbl9zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBib29sIHJvd19ob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWlu dCByb3dfc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyb3VwX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEdy b3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUs IENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBHcm91cCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgaW50IGdl dF9uX2NoaWxkcmVuICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuQWN0b3IgZ2V0X250aF9jaGlsZCAoaW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2FsbCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW1hZ2VfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIEltYWdlIDogR0xp Yi5PYmplY3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29udGVudCoiKV0KKysJCXB1YmxpYyBJbWFn ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsKKysJ CXB1YmxpYyBib29sIHNldF9hcmVhIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gdWlu dDhbXSBkYXRhLCBDb2dsLlBpeGVsRm9ybWF0IHBpeGVsX2Zvcm1hdCwgQ2Fpcm8uUmVjdGFuZ2xl SW50IHJlY3QsIHVpbnQgcm93X3N0cmlkZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgc2V0X2J5dGVzIChHTGliLkJ5dGVz IGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCB1aW50IHdpZHRoLCB1aW50IGhl aWdodCwgdWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyBib29s IHNldF9kYXRhIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gdWludDhbXSBkYXRhLCBD b2dsLlBpeGVsRm9ybWF0IHBpeGVsX2Zvcm1hdCwgdWludCB3aWR0aCwgdWludCBoZWlnaHQsIHVp bnQgcm93X3N0cmlkZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0 X2RldmljZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgSW5wdXREZXZpY2UgOiBHTGli Lk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgSW5wdXREZXZpY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9hc3NvY2lhdGVkX2Rl dmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVy LklucHV0QXhpcyBnZXRfYXhpcyAodWludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2F4aXNfdmFsdWUgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UpXSBkb3VibGVbXSBheGVzLCBDbHV0dGVyLklucHV0QXhpcyBheGlzLCBvdXQg ZG91YmxlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg Ym9vbCBnZXRfY29vcmRzIChDbHV0dGVyLkV2ZW50U2VxdWVuY2U/IHNlcXVlbmNlLCBHcmFwaGVu ZS5Qb2ludCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg aW50IGdldF9kZXZpY2VfaWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgQ2x1dHRlci5JbnB1dE1vZGUgZ2V0X2RldmljZV9tb2RlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXZpY2VfbmFt ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZGV2aWNlX25vZGUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5 cGUgZ2V0X2RldmljZV90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJ cHVibGljIGJvb2wgZ2V0X2VuYWJsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZ3JhYmJlZF9hY3RvciAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIGludCBnZXRfZ3JvdXBfbl9tb2RlcyAoaW50IGdyb3VwKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9oYXNfY3Vyc29y ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2tl eSAodWludCBpbmRleF8sIG91dCB1aW50IGtleXZhbCwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBl IG1vZGlmaWVycyk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZU1hcHBpbmcgZ2V0X21h cHBpbmdfbW9kZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vZGVfc3dpdGNoX2J1dHRvbl9ncm91 cCAodWludCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBnZXRfbW9kaWZpZXJfc3RhdGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBnZXRfbl9heGVzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X25fa2V5cyAoKTsKKysJ CXB1YmxpYyBpbnQgZ2V0X25fbW9kZV9ncm91cHMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3Jp bmdzICgpOworKwkJcHVibGljIGludCBnZXRfbl9zdHJpcHMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9wb2ludGVy X2FjdG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5TdGFnZSBnZXRfcG9pbnRlcl9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIyIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Byb2R1Y3RfaWQgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlNlYXQgZ2V0X3NlYXQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5JbnB1 dERldmljZT4gZ2V0X3NsYXZlX2RldmljZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y MiIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF92ZW5kb3JfaWQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ3JhYiAoQ2x1dHRlci5BY3Rv ciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGlzX2dyb3VwZWQgKENsdXR0ZXIuSW5w dXREZXZpY2Ugb3RoZXJfZGV2aWNlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgaXNfbW9kZV9z d2l0Y2hfYnV0dG9uICh1aW50IGdyb3VwLCB1aW50IGJ1dHRvbik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBrZXljb2RlX3RvX2V2ZGV2ICh1 aW50IGhhcmR3YXJlX2tleWNvZGUsIHVpbnQgZXZkZXZfa2V5Y29kZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBzZXF1ZW5j ZV9nZXRfZ3JhYmJlZF9hY3RvciAoQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXF1ZW5jZV9ncmFi IChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UsIENsdXR0ZXIuQWN0b3IgYWN0b3IpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNlcXVlbmNlX3Vu Z3JhYiAoQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lbmFibGVkIChib29sIGVuYWJsZWQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleSAodWlu dCBpbmRleF8sIHVpbnQga2V5dmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOwor KwkJcHVibGljIHZvaWQgc2V0X21hcHBpbmdfbW9kZSAoQ2x1dHRlci5JbnB1dERldmljZU1hcHBp bmcgbWFwcGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgdW5ncmFiICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZv aWQgdXBkYXRlX2Zyb21fZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQsIGJvb2wgdXBkYXRlX3N0 YWdlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9mcm9t X3Rvb2wgKENsdXR0ZXIuSW5wdXREZXZpY2VUb29sIHRvb2wpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5CYWNr ZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIu SW5wdXRNb2RlIGRldmljZV9tb2RlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJp bmcgZGV2aWNlX25vZGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGRldmljZV90eXBlIHsg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBib29sIGVuYWJsZWQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIGJvb2wgaGFzX2N1cnNvciB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBp bnQgaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VN YXBwaW5nIG1hcHBpbmdfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgdWludCBuX2F4ZXMgeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQgbl9t b2RlX2dyb3VwcyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgaW50IG5fcmluZ3MgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGludCBuX3N0cmlwcyB7IGdldDsgY29uc3RydWN0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHN0cmluZyBwcm9kdWN0X2lkIHsgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlNlYXQgc2VhdCB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHN0cmluZyB2 ZW5kb3JfaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZp Y2VfdG9vbF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgSW5wdXREZXZp Y2VUb29sIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0RGV2aWNlVG9vbCAoKTsKKysJCXB1YmxpYyB1 aW50NjQgZ2V0X2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJCXB1Ymxp YyB1aW50NjQgZ2V0X3NlcmlhbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisr CQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVRvb2xUeXBlIGdldF90b29sX3R5cGUgKCk7Cisr CQlwdWJsaWMgdWludDY0IGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyB1aW50NjQg c2VyaWFsIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sVHlwZSB0eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZm9jdXNfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFi c3RyYWN0IGNsYXNzIElucHV0Rm9jdXMgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXRGb2N1cyAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbW1pdF90ZXh0IChzdHJp bmcgdGV4dCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZWxldGVf c3Vycm91bmRpbmcgKHVpbnQgb2Zmc2V0LCB1aW50IGxlbik7CisrCQlwdWJsaWMgYm9vbCBmaWx0 ZXJfa2V5X2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGtleSk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRlci5JbnB1dE1ldGhvZCBpbnB1dF9t ZXRob2QpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfb3V0 ICgpOworKwkJcHVibGljIGJvb2wgaXNfZm9jdXNlZCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIHJlcXVlc3Rfc3Vycm91bmRpbmcgKCk7CisrCQlwdWJsaWMgdm9p ZCByZXNldCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jYW5fc2hvd19wcmVlZGl0IChib29sIGNh bl9zaG93X3ByZWVkaXQpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRfaGludHMgKENsdXR0 ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnQpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRl bnRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJcHVi bGljIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCXB1 YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1dHRlci5JbnB1dFBhbmVsU3RhdGUg c3RhdGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X3ByZWVk aXRfdGV4dCAoc3RyaW5nIHByZWVkaXQsIHVpbnQgY3Vyc29yKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9zdXJyb3VuZGluZyAoc3RyaW5nIHRleHQsIHVpbnQgY3Vyc29yLCB1aW50IGFuY2hvcik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2lucHV0X21ldGhvZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJz dHJhY3QgY2xhc3MgSW5wdXRNZXRob2QgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXRNZXRob2QgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBmaWx0ZXJfa2V5X2V2ZW50 IChDbHV0dGVyLkV2ZW50IGtleSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX2luIChD bHV0dGVyLklucHV0Rm9jdXMgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19v dXQgKCk7CisrCQlwdWJsaWMgdm9pZCBmb3J3YXJkX2tleSAodWludDMyIGtleXZhbCwgdWludDMy IGtleWNvZGUsIHVpbnQzMiBzdGF0ZSwgdWludDY0IHRpbWVfLCBib29sIHByZXNzKTsKKysJCXB1 YmxpYyB2b2lkIG5vdGlmeV9rZXlfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQsIGJvb2wgZmls dGVyZWQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmVzZXQgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfY3Vyc29yX2xvY2F0 aW9uIChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X3BhbmVs X3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0ZSBzdGF0ZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcHJlZWRpdF90ZXh0IChzdHJpbmc/IHByZWVkaXQsIHVpbnQgY3Vyc29yKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9zdXJyb3VuZGluZyAoc3RyaW5nIHRl eHQsIHVpbnQgY3Vyc29yLCB1aW50IGFuY2hvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCB1cGRhdGVfY29udGVudF9oaW50cyAoQ2x1dHRlci5JbnB1dENvbnRlbnRI aW50RmxhZ3MgaGludCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1 cGRhdGVfY29udGVudF9wdXJwb3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgcHVycG9z ZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGNhbl9zaG93X3ByZWVk aXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRl ci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgY29udGVudF9oaW50cyB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2Ug Y29udGVudF9wdXJwb3NlIHsgZ2V0OyBzZXQ7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIGNvbW1pdCAoc3RyaW5nIHRleHQpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IGN1cnNvcl9sb2NhdGlvbl9jaGFuZ2VkIChHcmFwaGVuZS5SZWN0IG9iamVjdCk7CisrCQlbSGFz RW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZWxldGVfc3Vycm91bmRpbmcgKHVpbnQg b2Zmc2V0LCB1aW50IGxlbik7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgaW5wdXRfcGFuZWxfc3Rh dGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIG9iamVjdCk7CisrCQlbSGFzRW1pdHRlcl0KKysJ CXB1YmxpYyBzaWduYWwgdm9pZCByZXF1ZXN0X3N1cnJvdW5kaW5nICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9pbnRlcnZhbF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBjbGFzcyBJbnRlcnZhbCA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCwgQ2x1dHRl ci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXB1YmxpYyBJbnRlcnZhbCAoR0xpYi5UeXBlIGd0eXBlLCAuLi4pOworKwkJcHVibGlj IENsdXR0ZXIuSW50ZXJ2YWwgY2xvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBjb21wdXRlIChkb3VibGUgZmFjdG9yKTsK KysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgY29tcHV0ZV92YWx1ZSAoZG91YmxlIGZhY3Rvciwgb3V0 IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIEdMaWIuVmFsdWUgZ2V0X2ZpbmFsX3ZhbHVl ICgpOworKwkJcHVibGljIEdMaWIuVmFsdWUgZ2V0X2luaXRpYWxfdmFsdWUgKCk7CisrCQlwdWJs aWMgdm9pZCBnZXRfaW50ZXJ2YWwgKC4uLik7CisrCQlwdWJsaWMgR0xpYi5UeXBlIGdldF92YWx1 ZV90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29s IGlzX3ZhbGlkICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5WYWx1ZT8gcGVla19maW5hbF92 YWx1ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IHBlZWtfaW5pdGlhbF92YWx1 ZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZWdpc3Rlcl9wcm9ncmVzc19mdW5jIChHTGli LlR5cGUgdmFsdWVfdHlwZSwgQ2x1dHRlci5Qcm9ncmVzc0Z1bmMgZnVuYyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZpbmFsICguLi4pOworKwkJ cHVibGljIHZvaWQgc2V0X2ZpbmFsX3ZhbHVlIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfaW5pdGlhbCAoLi4uKTsK KysJCXB1YmxpYyB2b2lkIHNldF9pbml0aWFsX3ZhbHVlIChHTGliLlZhbHVlIHZhbHVlKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoLi4uKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wg dmFsaWRhdGUgKEdMaWIuUGFyYW1TcGVjIHBzcGVjKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBJbnRlcnZhbC53aXRoX3ZhbHVlcyAoR0xp Yi5UeXBlIGd0eXBlLCBHTGliLlZhbHVlPyBpbml0aWFsLCBHTGliLlZhbHVlPyBmaW5hbCk7Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgR0xpYi5WYWx1ZSBmaW5hbCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR0xpYi5W YWx1ZSBpbml0aWFsIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBHTGliLlR5cGUgdmFs dWVfdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21w YWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBLZXlFdmVu dCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBk ZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHVp bnQxNiBoYXJkd2FyZV9rZXljb2RlOworKwkJcHVibGljIHVpbnQga2V5dmFsOworKwkJcHVibGlj IENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1 dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOwor KwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7 CisrCQlwdWJsaWMgdW5pY2hhciB1bmljb2RlX3ZhbHVlOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rZXlm cmFtZV90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCXB1YmxpYyBjbGFzcyBLZXlmcmFtZVRyYW5zaXRpb24gOiBDbHV0dGVyLlByb3BlcnR5 VHJhbnNpdGlvbiwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVi bGljIEtleWZyYW1lVHJhbnNpdGlvbiAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJcHVibGlj IHZvaWQgY2xlYXIgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfa2V5X2ZyYW1lICh1aW50IGluZGV4 Xywgb3V0IGRvdWJsZSBrZXksIG91dCBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSwgb3V0IEdM aWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHVpbnQgZ2V0X25fa2V5X2ZyYW1lcyAoKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9rZXlfZnJhbWUgKHVpbnQgaW5kZXhfLCBkb3VibGUga2V5LCBDbHV0 dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfa2V5X2ZyYW1lcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9rZXlfZnJh bWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQi KV0gZG91YmxlW10ga2V5X2ZyYW1lcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZXMgKFtDQ29k ZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fbW9kZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41 LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBDbHV0dGVyLkFuaW1hdGlvbk1vZGVbXSBt b2Rlcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdmFsdWVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9j bmFtZSA9ICJuX3ZhbHVlcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90 eXBlID0gImd1aW50IildIEdMaWIuVmFsdWVbXSB2YWx1ZXMpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9r ZXltYXBfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEtleW1hcCA6IEdM aWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBLZXltYXAgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9jYXBz X2xvY2tfc3RhdGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBQYW5nby5EaXJlY3Rpb24gZ2V0X2Rp cmVjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2V0X251bV9sb2NrX3N0YXRlICgp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHN0YXRlX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2xheWVyX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIExheWVyTm9kZSA6 IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgTGF5ZXJOb2Rl IChDb2dsLk1hdHJpeCBwcm9qZWN0aW9uLCBDYWlyby5SZWN0YW5nbGUgdmlld3BvcnQsIGZsb2F0 IHdpZHRoLCBmbG9hdCBoZWlnaHQsIHVpbnQ4IG9wYWNpdHkpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9s YXlvdXRfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBMYXlvdXRNYW5hZ2VyIDogR0xpYi5Jbml0aWFsbHlV bm93bmVkIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBMYXlvdXRNYW5hZ2VyICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhbGxv Y2F0ZSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yQm94IGFsbG9j YXRpb24sIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCXB1YmxpYyB2b2lkIGNo aWxkX2dldCAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9y LCAuLi4pOworKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0X3Byb3BlcnR5IChDbHV0dGVyLkNvbnRh aW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IsIHN0cmluZyBwcm9wZXJ0eV9uYW1l LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldCAoQ2x1dHRlci5D b250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4pOworKwkJcHVibGlj IHZvaWQgY2hpbGRfc2V0X3Byb3BlcnR5IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENs dXR0ZXIuQWN0b3IgYWN0b3IsIHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVl KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuTGF5 b3V0TWV0YSBjcmVhdGVfY2hpbGRfbWV0YSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBD bHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGVuZF9hbmltYXRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBm aW5kX2NoaWxkX3Byb3BlcnR5IChzdHJpbmcgbmFtZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgZG91YmxlIGdldF9hbmltYXRpb25fcHJvZ3Jlc3MgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1ldGEg Z2V0X2NoaWxkX21ldGEgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3Rv ciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgR0xpYi5UeXBlIGdl dF9jaGlsZF9tZXRhX3R5cGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJy ZWRfaGVpZ2h0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIGZsb2F0IGZvcl93aWR0aCwg b3V0IGZsb2F0IG1pbl9oZWlnaHRfcCwgb3V0IGZsb2F0IG5hdF9oZWlnaHRfcCk7CisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfd2lkdGggKENsdXR0ZXIuQ29udGFpbmVyIGNv bnRhaW5lciwgZmxvYXQgZm9yX2hlaWdodCwgb3V0IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxv YXQgbmF0X3dpZHRoX3ApOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMC4xLCBhcnJh eV9sZW5ndGhfdHlwZSA9ICJndWludCIpXQorKwkJcHVibGljIEdMaWIuUGFyYW1TcGVjW10gbGlz dF9jaGlsZF9wcm9wZXJ0aWVzICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfY29udGFp bmVyIChDbHV0dGVyLkNvbnRhaW5lcj8gY29udGFpbmVyKTsKKysJCVtIYXNFbWl0dGVyXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbGF5b3V0X2NoYW5nZWQgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2xheW91dF9tZXRhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIExheW91dE1ldGEgOiBDbHV0dGVyLkNoaWxk TWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgTGF5b3V0TWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0 TWFuYWdlciBnZXRfbWFuYWdlciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFnZXIg bWFuYWdlciB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHki LCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9tYXJn aW5fZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBjbGFzcyBNYXJnaW4geworKwkJcHVibGljIGZsb2F0IGJvdHRvbTsKKysJ CXB1YmxpYyBmbG9hdCBsZWZ0OworKwkJcHVibGljIGZsb2F0IHJpZ2h0OworKwkJcHVibGljIGZs b2F0IHRvcDsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXB1YmxpYyBNYXJnaW4gKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5NYXJnaW4gY29weSAoKTsKKysJ CXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBNb3Rpb25FdmVudCA6 IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdz IGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5 OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9vZmZzY3JlZW5fZWZmZWN0X2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIE9mZnNjcmVl bkVmZmVjdCA6IENsdXR0ZXIuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPZmZzY3JlZW5FZmZlY3QgKCk7CisrCQlwdWJs aWMgdmlydHVhbCBDb2dsLkhhbmRsZSBjcmVhdGVfdGV4dHVyZSAoZmxvYXQgd2lkdGgsIGZsb2F0 IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGJvb2wg Z2V0X3RhcmdldF9yZWN0IChvdXQgdW5vd25lZCBHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTQiLCBzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGdldF90YXJnZXRfc2l6ZSAob3V0IGZsb2F0IHdp ZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgcGFpbnRfdGFyZ2V0IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250 ZXh0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFnZV90dXJuX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBQYWdlVHVybkVmZmVj dCA6IENsdXR0ZXIuRGVmb3JtRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgUGFnZVR1 cm5FZmZlY3QgKGRvdWJsZSBwZXJpb2QsIGRvdWJsZSBhbmdsZSwgZmxvYXQgcmFkaXVzKTsKKysJ CXB1YmxpYyBkb3VibGUgZ2V0X2FuZ2xlICgpOworKwkJcHVibGljIGRvdWJsZSBnZXRfcGVyaW9k ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yYWRpdXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf YW5nbGUgKGRvdWJsZSBhbmdsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGVyaW9kIChkb3VibGUg cGVyaW9kKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yYWRpdXMgKGZsb2F0IHJhZGl1cyk7CisrCQlw dWJsaWMgZG91YmxlIGFuZ2xlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBkb3VibGUgcGVyaW9k IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCByYWRpdXMgeyBnZXQ7IHNldDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHJlZl9m dW5jdGlvbiA9ICJjbHV0dGVyX3BhaW50X2NvbnRleHRfcmVmIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3BhaW50X2NvbnRleHRfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJjbHV0dGVyX3Bh aW50X2NvbnRleHRfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYWludENv bnRleHQgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENv Z2wuRnJhbWVidWZmZXIgZ2V0X2ZyYW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgcG9wX2Zy YW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgcHVzaF9mcmFtZWJ1ZmZlciAoQ29nbC5GcmFt ZWJ1ZmZlciBmcmFtZWJ1ZmZlcik7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Q29u dGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3BhaW50X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJcHVibGljIGFic3RyYWN0IGNsYXNzIFBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGFpbnROb2RlICgpOworKwkJ cHVibGljIHZvaWQgYWRkX2NoaWxkIChDbHV0dGVyLlBhaW50Tm9kZSBjaGlsZCk7CisrCQlwdWJs aWMgdm9pZCBhZGRfbXVsdGl0ZXh0dXJlX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3RvckJveCByZWN0 LCBmbG9hdCB0ZXh0X2Nvb3JkcywgdWludCB0ZXh0X2Nvb3Jkc19sZW4pOworKwkJcHVibGljIHZv aWQgYWRkX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3RvckJveCByZWN0KTsKKysJCXB1YmxpYyB2b2lk IGFkZF90ZXh0dXJlX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3RvckJveCByZWN0LCBmbG9hdCB4XzEs IGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJcHVibGljIHVub3duZWQgQ29n bC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwYWludCAo Q2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLlBhaW50Tm9kZSBAcmVmICgpOworKwkJcHVibGljIHZvaWQgc2V0X25hbWUgKHN0cmlu ZyBuYW1lKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hl ZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0 ZXJfcGFpbnRfdm9sdW1lX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBQYWludFZvbHVtZSB7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5QYWludFZvbHVtZSBjb3B5ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgZnJlZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZGVwdGgg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hl aWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIGdl dF9vcmlnaW4gKG91dCB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0QgdmVydGV4KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVwdGggKGZsb2F0 IGRlcHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIHNl dF9mcm9tX2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2hlaWdodCAoZmxvYXQgaGVpZ2h0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9vcmlnaW4g KEdyYXBoZW5lLlBvaW50M0Qgb3JpZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyB2b2lkIHNldF93aWR0aCAoZmxvYXQgd2lkdGgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgdW5pb24gKENsdXR0ZXIuUGFpbnRWb2x1bWUg YW5vdGhlcl9wdik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgdW5pb25fYm94IChDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bh bl9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ cHVibGljIGNsYXNzIFBhbkFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9u KiIpXQorKwkJcHVibGljIFBhbkFjdGlvbiAoKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2FjY2Vs ZXJhdGlvbl9mYWN0b3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF9jb25zdHJhaW5lZF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9pbnQsIG91dCBm bG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9k ZWNlbGVyYXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaW50ZXJwb2xhdGUgKCk7CisrCQlw dWJsaWMgdm9pZCBnZXRfaW50ZXJwb2xhdGVkX2Nvb3JkcyAob3V0IGZsb2F0IGludGVycG9sYXRl ZF94LCBvdXQgZmxvYXQgaW50ZXJwb2xhdGVkX3kpOworKwkJcHVibGljIGZsb2F0IGdldF9pbnRl cnBvbGF0ZWRfZGVsdGEgKG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X21vdGlvbl9j b29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBtb3Rpb25feCwgb3V0IGZsb2F0IG1vdGlvbl95 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21v dGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0 YV95KTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhbkF4aXMgZ2V0X3Bhbl9heGlzICgpOworKwkJcHVi bGljIHZvaWQgc2V0X2FjY2VsZXJhdGlvbl9mYWN0b3IgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVi bGljIHZvaWQgc2V0X2RlY2VsZXJhdGlvbiAoZG91YmxlIHJhdGUpOworKwkJcHVibGljIHZvaWQg c2V0X2ludGVycG9sYXRlIChib29sIHNob3VsZF9pbnRlcnBvbGF0ZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfcGFuX2F4aXMgKENsdXR0ZXIuUGFuQXhpcyBheGlzKTsKKysJCXB1YmxpYyBkb3VibGUg YWNjZWxlcmF0aW9uX2ZhY3RvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZG91YmxlIGRlY2Vs ZXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBpbnRlcnBvbGF0ZSB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5QYW5BeGlzIHBhbl9heGlzIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHBhbiAoQ2x1dHRlci5BY3RvciBhY3Rvciwg Ym9vbCBpc19pbnRlcnBvbGF0ZWQpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGFu X3N0b3BwZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9ICJwYXJh bV91bml0cyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXJhbV91bml0c19nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgUGFyYW1TcGVjVW5pdCA6IEdMaWIuUGFyYW1TcGVjIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQYXJhbVNw ZWNVbml0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIFBhdGggOiBHTGliLkluaXRpYWxs eVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHVibGljIFBhdGggKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY2Fpcm9fcGF0aCAoQ2Fpcm8u UGF0aCBjcGF0aCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY2xvc2UgKCk7CisrCQlwdWJsaWMgdm9p ZCBhZGRfY3VydmVfdG8gKGludCB4XzEsIGludCB5XzEsIGludCB4XzIsIGludCB5XzIsIGludCB4 XzMsIGludCB5XzMpOworKwkJcHVibGljIHZvaWQgYWRkX2xpbmVfdG8gKGludCB4LCBpbnQgeSk7 CisrCQlwdWJsaWMgdm9pZCBhZGRfbW92ZV90byAoaW50IHgsIGludCB5KTsKKysJCXB1YmxpYyB2 b2lkIGFkZF9ub2RlIChDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwkJcHVibGljIHZvaWQgYWRk X3JlbF9jdXJ2ZV90byAoaW50IHhfMSwgaW50IHlfMSwgaW50IHhfMiwgaW50IHlfMiwgaW50IHhf MywgaW50IHlfMyk7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVsX2xpbmVfdG8gKGludCB4LCBpbnQg eSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVsX21vdmVfdG8gKGludCB4LCBpbnQgeSk7CisrCQlw dWJsaWMgYm9vbCBhZGRfc3RyaW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFy ICgpOworKwkJcHVibGljIHZvaWQgQGZvcmVhY2ggKENsdXR0ZXIuUGF0aENhbGxiYWNrIGNhbGxi YWNrKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2Rlc2NyaXB0aW9uICgpOworKwkJcHVibGljIHVp bnQgZ2V0X2xlbmd0aCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX25vZGVzICgpOworKwkJcHVi bGljIENsdXR0ZXIuUGF0aE5vZGUgZ2V0X25vZGUgKHVpbnQgaW5kZXhfKTsKKysJCXB1YmxpYyBH TGliLlNMaXN0PHdlYWsgQ2x1dHRlci5QYXRoTm9kZT8+IGdldF9ub2RlcyAoKTsKKysJCXB1Ymxp YyB1aW50IGdldF9wb3NpdGlvbiAoZG91YmxlIHByb2dyZXNzLCBvdXQgQ2x1dHRlci5Lbm90IHBv c2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9ub2RlIChpbnQgaW5kZXhfLCBDbHV0dGVy LlBhdGhOb2RlIG5vZGUpOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX25vZGUgKHVpbnQgaW5kZXhf KTsKKysJCXB1YmxpYyB2b2lkIHJlcGxhY2Vfbm9kZSAodWludCBpbmRleF8sIENsdXR0ZXIuUGF0 aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGVzY3JpcHRpb24gKHN0cmluZyBzdHIp OworKwkJcHVibGljIHZvaWQgdG9fY2Fpcm9fcGF0aCAoQ2Fpcm8uQ29udGV4dCBjcik7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgUGF0aC53 aXRoX2Rlc2NyaXB0aW9uIChzdHJpbmcgZGVzYyk7CisrCQlwdWJsaWMgc3RyaW5nIGRlc2NyaXB0 aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGxlbmd0aCB7IGdldDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9wYXRoX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgY2xhc3MgUGF0aENvbnN0cmFpbnQgOiBDbHV0 dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisrCQlwdWJsaWMgUGF0aENvbnN0cmFp bnQgKENsdXR0ZXIuUGF0aD8gcGF0aCwgZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfb2Zmc2V0ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYXRoIGdldF9wYXRoICgp OworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2 b2lkIHNldF9wYXRoIChDbHV0dGVyLlBhdGg/IHBhdGgpOworKwkJcHVibGljIGZsb2F0IG9mZnNl dCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoIHBhdGggeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIHNpZ25hbCB2b2lkIG5vZGVfcmVhY2hlZCAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgdWludCBpbmRleCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgcmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJfcGlja19jb250ZXh0X3JlZiIs IHR5cGVfaWQgPSAiY2x1dHRlcl9waWNrX2NvbnRleHRfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5j dGlvbiA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVi bGljIGNsYXNzIFBpY2tDb250ZXh0IHsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLlBpY2tDb250ZXh0IEByZWYgKCk7CisrCQlwdWJsaWMgdm9p ZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGlwZWxpbmVfbm9kZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgUGlwZWxpbmVO b2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBpcGVsaW5lTm9kZSAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfcHJvcGVydHlfdHJhbnNpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgUHJvcGVydHlUcmFuc2l0aW9uIDogQ2x1dHRl ci5UcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclRyYW5zaXRpb24qIildCisrCQlw dWJsaWMgUHJvcGVydHlUcmFuc2l0aW9uIChzdHJpbmc/IHByb3BlcnR5X25hbWUpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF9wcm9wZXJ0eV9uYW1lICgpOworKwkJcHVibGljIHZvaWQg c2V0X3Byb3BlcnR5X25hbWUgKHN0cmluZz8gcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgc3Ry aW5nIHByb3BlcnR5X25hbWUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yZWN0YW5n bGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMg Y2xhc3MgUmVjdGFuZ2xlIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVy LkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFj dG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBSZWN0YW5nbGUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQor KwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2JvcmRlcl9jb2xvciAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC4yIildCisrCQlwdWJsaWMgdWludCBnZXRfYm9yZGVyX3dpZHRoICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYm9y ZGVyX2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlw dWJsaWMgdm9pZCBzZXRfYm9yZGVyX3dpZHRoICh1aW50IHdpZHRoKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBSZWN0YW5nbGUud2l0aF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlw dWJsaWMgQ2x1dHRlci5Db2xvciBib3JkZXJfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHVpbnQgYm9yZGVyX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9y IGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgaGFzX2JvcmRlciB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Jvb3Rfbm9kZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUm9vdE5vZGUgOiBDbHV0dGVyLlBhaW50Tm9k ZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFJvb3ROb2RlIChDb2dsLkZyYW1lYnVmZmVy IGZyYW1lYnVmZmVyLCBDbHV0dGVyLkNvbG9yIGNsZWFyX2NvbG9yLCBDb2dsLkJ1ZmZlckJpdCBj bGVhcl9mbGFncyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9hY3Rpb25fZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFJvdGF0ZUFj dGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFJv dGF0ZUFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHJvdGF0ZSAoQ2x1 dHRlci5BY3RvciBhY3RvciwgZG91YmxlIGFuZ2xlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2NyaXB0 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGNs YXNzIFNjcmlwdCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBTY3JpcHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfc2VhcmNoX3BhdGhzIChbQ0NvZGUgKGFycmF5 X2xlbmd0aF9jbmFtZSA9ICJuX3BhdGhzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlf bGVuZ3RoX3R5cGUgPSAiZ3NpemUiKV0gc3RyaW5nW10gcGF0aHMpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIGFkZF9zdGF0ZXMgKHN0cmluZz8gbmFtZSwgQ2x1dHRlci5TdGF0 ZSBzdGF0ZSk7CisrCQlwdWJsaWMgdm9pZCBjb25uZWN0X3NpZ25hbHMgKHZvaWQqIHVzZXJfZGF0 YSk7CisrCQlwdWJsaWMgdm9pZCBjb25uZWN0X3NpZ25hbHNfZnVsbCAoQ2x1dHRlci5TY3JpcHRD b25uZWN0RnVuYyBmdW5jKTsKKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9vYmplY3RzICgpOworKwkJ cHVibGljIHVub3duZWQgR0xpYi5PYmplY3QgZ2V0X29iamVjdCAoc3RyaW5nIG5hbWUpOworKwkJ cHVibGljIGludCBnZXRfb2JqZWN0cyAoLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLlN0YXRlIGdldF9zdGF0ZXMgKHN0cmluZz8gbmFtZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90 cmFuc2xhdGlvbl9kb21haW4gKCk7CisrCQlwdWJsaWMgdmlydHVhbCBHTGliLlR5cGUgZ2V0X3R5 cGVfZnJvbV9uYW1lIChzdHJpbmcgdHlwZV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBHTGliLk9iamVjdD4gbGlzdF9vYmplY3Rz ICgpOworKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2RhdGEgKHN0cmluZyBkYXRhLCBzc2l6ZV90 IGxlbmd0aCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdWludCBsb2FkX2Zyb21fZmls ZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBsb2FkX2Zyb21fcmVzb3VyY2UgKHN0cmluZyBy ZXNvdXJjZV9wYXRoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBzdHJpbmcgbG9va3VwX2ZpbGVuYW1lIChzdHJpbmcgZmlsZW5hbWUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90cmFu c2xhdGlvbl9kb21haW4gKHN0cmluZz8gZG9tYWluKTsKKysJCXB1YmxpYyB2b2lkIHVubWVyZ2Vf b2JqZWN0cyAodWludCBtZXJnZV9pZCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBzdHJpbmcgZmlsZW5hbWUgeyBvd25lZCBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGJvb2wgZmlsZW5hbWVfc2V0IHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHN0cmluZyB0cmFuc2xhdGlvbl9kb21haW4geyBnZXQ7IHNl dDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFNjcm9sbEFjdG9yIDogQ2x1 dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIu Q29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFNj cm9sbEFjdG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsTW9kZSBnZXRfc2Nyb2xsX21v ZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzY3JvbGxfdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHBv aW50KTsKKysJCXB1YmxpYyB2b2lkIHNjcm9sbF90b19yZWN0IChHcmFwaGVuZS5SZWN0IHJlY3Qp OworKwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9tb2RlIChDbHV0dGVyLlNjcm9sbE1vZGUgbW9k ZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxNb2RlIHNjcm9sbF9tb2RlIHsgZ2V0OyBzZXQ7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFNjcm9sbEV2ZW50IDogQ2x1dHRlci5FdmVudCB7Cisr CQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNl IGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbERpcmVjdGlvbiBkaXJlY3Rpb247Cisr CQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxGaW5pc2hGbGFncyBmaW5pc2hfZmxhZ3M7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsU291cmNlIHNjcm9s bF9zb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1Ymxp YyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlw dWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVi bGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NlYXRfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGFic3RyYWN0IGNsYXNzIFNlYXQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2VhdCAoKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFwcGx5X2tiZF9hMTF5X3NldHRpbmdz IChDbHV0dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGJlbGxfbm90aWZ5ICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb21wcmVzc19tb3Rp b24gKENsdXR0ZXIuRXZlbnQgZXZlbnQsIENsdXR0ZXIuRXZlbnQgdG9fZGlzY2FyZCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb3B5X2V2ZW50X2RhdGEgKENsdXR0 ZXIuRXZlbnQgc3JjLCBDbHV0dGVyLkV2ZW50IGRlc3QpOworKwkJcHVibGljIHZpcnR1YWwgQ2x1 dHRlci5WaXJ0dWFsSW5wdXREZXZpY2UgY3JlYXRlX3ZpcnR1YWxfZGV2aWNlIChDbHV0dGVyLklu cHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfYTExeV9z dGF0ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZyZWVfZXZl bnRfZGF0YSAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfa2JkX2Ex MXlfc2V0dGluZ3MgKENsdXR0ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfa2V5Ym9hcmQgKCk7Cisr CQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuS2V5bWFwIGdldF9rZXltYXAgKCk7Cisr CQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X3BvaW50ZXIg KCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRlcl9hMTF5X3NldHRpbmdzIChDbHV0dGVyLlBv aW50ZXJBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgQ2x1dHRlci5W aXJ0dWFsRGV2aWNlVHlwZSBnZXRfc3VwcG9ydGVkX3ZpcnR1YWxfZGV2aWNlX3R5cGVzICgpOwor KwkJcHVibGljIHZpcnR1YWwgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5JbnB1dERldmljZT4gbGlz dF9kZXZpY2VzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2tiZF9hMTF5X3NldHRpbmdzIChDbHV0 dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRl cl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGUgKENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbENsaWNrVHlw ZSBjbGlja190eXBlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludGVyX2ExMXlfc2V0dGluZ3Mg KENsdXR0ZXIuUG9pbnRlckExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIHdhcnBfcG9pbnRlciAoaW50IHgsIGludCB5KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgb3duZWQgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZXZpY2VfYWRkZWQgKENsdXR0ZXIuSW5wdXRE ZXZpY2Ugb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZXZpY2VfcmVtb3ZlZCAoQ2x1 dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGtiZF9hMTF5 X2ZsYWdzX2NoYW5nZWQgKHVpbnQgc2V0dGluZ3NfZmxhZ3MsIHVpbnQgY2hhbmdlZF9tYXNrKTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9tb2RzX3N0YXRlX2NoYW5nZWQgKHVpbnQg bGF0Y2hlZF9tYXNrLCB1aW50IGxvY2tlZF9tYXNrKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBw dHJfYTExeV9kd2VsbF9jbGlja190eXBlX2NoYW5nZWQgKENsdXR0ZXIuUG9pbnRlckExMXlEd2Vs bENsaWNrVHlwZSBjbGlja190eXBlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwdHJfYTExeV90 aW1lb3V0X3N0YXJ0ZWQgKENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlLCBDbHV0dGVyLlBvaW50 ZXJBMTF5VGltZW91dFR5cGUgdGltZW91dF90eXBlLCB1aW50IGRlbGF5KTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBwdHJfYTExeV90aW1lb3V0X3N0b3BwZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlLCBDbHV0dGVyLlBvaW50ZXJBMTF5VGltZW91dFR5cGUgdGltZW91dF90eXBlLCBib29s IGNsaWNrZWQpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHRvb2xfY2hhbmdlZCAoQ2x1dHRlci5J bnB1dERldmljZSBvYmplY3QsIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sIHAwKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfc2V0dGluZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3MgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2V0dGluZ3Mg KCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5TZXR0aW5ncyBnZXRfZGVmYXVs dCAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLkJhY2tlbmQgYmFja2VuZCB7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGRuZF9k cmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBpbnQgZG91YmxlX2NsaWNrX2Rpc3RhbmNlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGludCBkb3VibGVfY2xpY2tfdGltZSB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZm9udF9hbnRpYWxpYXMgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGZvbnRfZHBp IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBm b250X2hpbnRfc3R5bGUgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgaW50IGZvbnRfaGludGluZyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9uYW1lIHsgb3duZWQgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBmb250X3N1YnBpeGVsX29y ZGVyIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IHVpbnQgZm9udGNvbmZpZ190aW1lc3RhbXAgeyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBsb25nX3ByZXNz X2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IHVpbnQgcGFzc3dvcmRfaGludF90aW1lIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGludCB1bnNjYWxlZF9mb250X2RwaSB7IHNldDsgfQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNoYWRlciB7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3NoYWRlcl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyRWZmZWN0IDogQ2x1dHRlci5PZmZzY3Jl ZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyBTaGFkZXJFZmZlY3QgKENsdXR0ZXIuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSk7Cisr CQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfcHJvZ3JhbSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIENvZ2wuSGFuZGxlIGdldF9zaGFkZXIgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgc3RyaW5nIGdldF9zdGF0aWNfc2hhZGVyX3NvdXJjZSAoKTsKKysJCXB1Ymxp YyBib29sIHNldF9zaGFkZXJfc291cmNlIChzdHJpbmcgc291cmNlKTsKKysJCXB1YmxpYyB2b2lk IHNldF91bmlmb3JtX3ZhbHVlIChzdHJpbmcgbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNoYWRlclR5cGUgc2hhZGVyX3R5 cGUgeyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX2Zsb2F0X2dldF90eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJGbG9hdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhZGVyRmxvYXQgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9pbnRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IFNoYWRlckludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwcm90ZWN0ZWQgU2hhZGVySW50ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfbWF0 cml4X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJNYXRyaXggeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNoYWRl ck1hdHJpeCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc25hcF9jb25zdHJhaW50X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGNsYXNzIFNuYXBDb25z dHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGlj IFNuYXBDb25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UsIENsdXR0ZXIuU25hcEVkZ2Ug ZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UsIGZsb2F0IG9mZnNldCk7CisrCQlw dWJsaWMgdm9pZCBnZXRfZWRnZXMgKG91dCBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwgb3V0 IENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X29mZnNldCAo KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9lZGdlcyAoQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIENsdXR0ZXIu U25hcEVkZ2UgdG9fZWRnZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2V0IChmbG9hdCBvZmZz ZXQpOworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsK KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9l ZGdlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0IHsgZ2V0 OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7 IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0 ZXIuU25hcEVkZ2UgdG9fZWRnZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zdGFnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CXB1YmxpYyBjbGFzcyBTdGFnZSA6IENsdXR0ZXIuR3JvdXAsIEF0ay5JbXBsZW1lbnRvciwgQ2x1 dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBTdGFn ZSAoKTsKKysJCXB1YmxpYyBib29sIGNhcHR1cmUgKGJvb2wgcGFpbnQsIENhaXJvLlJlY3Rhbmds ZUludCByZWN0LCBDbHV0dGVyLkNhcHR1cmUgY2FwdHVyZXMsIGludCBuX2NhcHR1cmVzKTsKKysJ CXB1YmxpYyB2b2lkIGNhcHR1cmVfaW50byAoYm9vbCBwYWludCwgQ2Fpcm8uUmVjdGFuZ2xlSW50 IHJlY3QsIHVpbnQ4IGRhdGEpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3N0YWdlX2V2 ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgYm9vbCBlbWl0 X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfY3VycmVudCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9yZWRy YXcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBlbnN1 cmVfdmlld3BvcnQgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlemVfdXBkYXRlcyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9hY2NlcHRfZm9jdXMg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3Rvcl9hdF9wb3MgKENs dXR0ZXIuUGlja01vZGUgcGlja19tb2RlLCBmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1YmxpYyBi b29sIGdldF9jYXB0dXJlX2ZpbmFsX3NpemUgKENhaXJvLlJlY3RhbmdsZUludCByZWN0LCBpbnQg d2lkdGgsIGludCBoZWlnaHQsIGZsb2F0IHNjYWxlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5D b2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIu U3RhZ2UgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgaW50NjQgZ2V0X2ZyYW1lX2NvdW50ZXIg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9rZXlfZm9jdXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCBnZXRfbWluaW11bV9zaXplIChvdXQgdWludCB3aWR0aCwgb3V0IHVp bnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29s IGdldF9tb3Rpb25fZXZlbnRzX2VuYWJsZWQgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5QZXJzcGVj dGl2ZSBnZXRfcGVyc3BlY3RpdmUgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uUmVnaW9uIGdldF9yZWRy YXdfY2xpcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29s IGdldF90aHJvdHRsZV9tb3Rpb25fZXZlbnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90aXRsZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF91c2VfYWxwaGEgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBoaWRlX2N1cnNvciAoKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBpc19kZWZhdWx0ICgpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhdyAoKTsKKysJCVtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHVpbnQ4W10gcmVhZF9waXhlbHMgKGlu dCB4LCBpbnQgeSwgaW50IHdpZHRoID0gLTEsIGludCBoZWlnaHQgPSAtMSk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNsdXR0ZXJfcmVkcmF3IildCisrCQlwdWJsaWMgdm9pZCByZWRyYXcgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWNjZXB0X2Zv Y3VzIChib29sIGFjY2VwdF9mb2N1cyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChD bHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9rZXlfZm9jdXMgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9taW5pbXVtX3NpemUgKHVp bnQgd2lkdGgsIHVpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9tb3Rpb25fZXZlbnRzX2VuYWJsZWQgKGJvb2wgZW5hYmxlZCk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfcGVyc3BlY3RpdmUgKENsdXR0ZXIuUGVyc3BlY3RpdmUgcGVyc3Bl Y3RpdmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3Rocm90dGxlX21vdGlvbl9ldmVudHMgKGJvb2wgdGhyb3R0bGUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VzZV9hbHBo YSAoYm9vbCB1c2VfYWxwaGEpOworKwkJcHVibGljIHZvaWQgc2hvd19jdXJzb3IgKCk7CisrCQlw dWJsaWMgdm9pZCB0aGF3X3VwZGF0ZXMgKCk7CisrCQlwdWJsaWMgdm9pZCB1cGRhdGVfcmVzb3Vy Y2Vfc2NhbGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJv b2wgYWNjZXB0X2ZvY3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xv ciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBi b29sIGN1cnNvcl92aXNpYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGtleV9mb2N1cyB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5QZXJzcGVjdGl2 ZSBwZXJzcGVjdGl2ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40Iild CisrCQlwdWJsaWMgc3RyaW5nIHRpdGxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHVzZV9hbHBoYSB7IGdldDsgc2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBh Y3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgYWZ0ZXJfcGFpbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWFjdGl2YXRlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZGVsZXRlX2V2 ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IHBhaW50X3ZpZXcgKENsdXR0ZXIuU3RhZ2VWaWV3IHZpZXcpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9z dGFnZV9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJcHVibGljIGNsYXNzIFN0YWdlTWFuYWdlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFnZU1hbmFn ZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgQ2x1dHRlci5TdGFnZU1hbmFnZXIgZ2V0X2RlZmF1bHQgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9kZWZh dWx0X3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIEdM aWIuU0xpc3Q8d2VhayBDbHV0dGVyLlN0YWdlPiBsaXN0X3N0YWdlcyAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdMaWIuU0xpc3Q8Q2x1dHRlci5TdGFnZT4gcGVla19zdGFnZXMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5TdGFnZSBkZWZhdWx0X3N0 YWdlIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCBzdGFnZV9hZGRlZCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBz dGFnZV9yZW1vdmVkIChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNz IFN0YWdlU3RhdGVFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuU3Rh Z2VTdGF0ZSBjaGFuZ2VkX21hc2s7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdz OworKwkJcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZSBuZXdfc3RhdGU7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3Rh Z2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUg dHlwZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vfdmlld19nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgU3RhZ2VWaWV3IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlVmlldyAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2ZyYW1lYnVmZmVyICgpOworKwkJcHVi bGljIHZvaWQgZ2V0X2xheW91dCAoQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QpOworKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBnZXRfb2Zmc2NyZWVuX3RyYW5zZm9ybWF0aW9uX21hdHJpeCAoQ29nbC5N YXRyaXggbWF0cml4KTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X29u c2NyZWVuICgpOworKwkJcHVibGljIGZsb2F0IGdldF9zY2FsZSAoKTsKKysJCXB1YmxpYyB2b2lk IGludmFsaWRhdGVfb2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUgKCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXR1cF9vZmZzY3JlZW5fYmxpdF9waXBlbGluZSAoQ29n bC5QaXBlbGluZSBwaXBlbGluZSk7CisrCQlwdWJsaWMgdm9pZCB0cmFuc2Zvcm1fdG9fb25zY3Jl ZW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Q2Fpcm8uUmVjdGFuZ2xlSW50IGxheW91dCB7IG93bmVkIGdldDsgc2V0IGNvbnN0cnVjdDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgc2NhbGUgeyBnZXQ7IHNldCBj b25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU3RhdGUgOiBHTGliLk9iamVj dCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgU3RhdGUgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uIChzdHJpbmc/IHNvdXJj ZV9zdGF0ZV9uYW1lLCBzdHJpbmc/IHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3N0YXRlICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBzdHJpbmc+IGdldF9zdGF0ZXMgKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2R1cmF0aW9uIChzdHJpbmc/IHNv dXJjZV9zdGF0ZV9uYW1lLCBzdHJpbmc/IHRhcmdldF9zdGF0ZV9uYW1lLCB1aW50IGR1cmF0aW9u KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YXRlIHNl dF9rZXkgKHN0cmluZz8gc291cmNlX3N0YXRlX25hbWUsIHN0cmluZyB0YXJnZXRfc3RhdGVfbmFt ZSwgR0xpYi5PYmplY3Qgb2JqZWN0LCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgdWludCBtb2RlLCBH TGliLlZhbHVlIHZhbHVlLCBkb3VibGUgcHJlX2RlbGF5LCBkb3VibGUgcG9zdF9kZWxheSk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSBzZXRf c3RhdGUgKHN0cmluZyB0YXJnZXRfc3RhdGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSB3YXJwX3RvX3N0YXRlIChzdHJpbmcgdGFy Z2V0X3N0YXRlX25hbWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHN0cmluZyBzdGF0ZSB7IG93bmVk IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgY29tcGxldGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9m dW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhdGVfa2V5X2dl dF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBjbGFzcyBTdGF0ZUtleSB7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdM aWIuVHlwZSBnZXRfcHJvcGVydHlfdHlwZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3dpcGVfYWN0 aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGlj IGNsYXNzIFN3aXBlQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIild CisrCQlwdWJsaWMgU3dpcGVBY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNCIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgc3dlcHQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIu U3dpcGVEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0Iild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBzd2lwZSAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgQ2x1dHRlci5Td2lwZURpcmVjdGlvbiBkaXJlY3Rpb24pOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90 YXBfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisr CXB1YmxpYyBjbGFzcyBUYXBBY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlv bioiKV0KKysJCXB1YmxpYyBUYXBBY3Rpb24gKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCB0YXAgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNz IFRleHQgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJs ZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisr CQlwdWJsaWMgVGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgaW50IGNvb3Jkc190b19wb3NpdGlvbiAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMg dm9pZCBkZWxldGVfY2hhcnMgKHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgYm9vbCBkZWxldGVf c2VsZWN0aW9uICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRleHQuZnVsbCAoc3RyaW5nIGZv bnRfbmFtZSwgc3RyaW5nIHRleHQsIENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIGJv b2wgZ2V0X2FjdGl2YXRhYmxlICgpOworKwkJcHVibGljIHVub3duZWQgUGFuZ28uQXR0ckxpc3Qg Z2V0X2F0dHJpYnV0ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5UZXh0QnVmZmVyIGdldF9idWZmZXIgKCk7CisrCQlwdWJsaWMg c3RyaW5nIGdldF9jaGFycyAoc3NpemVfdCBzdGFydF9wb3MsIHNzaXplX3QgZW5kX3Bvcyk7Cisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5D b2xvciBnZXRfY3Vyc29yX2NvbG9yICgpOworKwkJcHVibGljIGludCBnZXRfY3Vyc29yX3Bvc2l0 aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIGdl dF9jdXJzb3JfcmVjdCAob3V0IHVub3duZWQgR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCXB1Ymxp YyB1aW50IGdldF9jdXJzb3Jfc2l6ZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9jdXJzb3Jfdmlz aWJsZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9lZGl0YWJsZSAoKTsKKysJCXB1YmxpYyBQYW5n by5FbGxpcHNpemVNb2RlIGdldF9lbGxpcHNpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgUGFuZ28uRm9udERlc2NyaXB0aW9uIGdldF9mb250X2Rlc2NyaXB0 aW9uICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9mb250X25hbWUgKCk7CisrCQlw dWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgZ2V0X2lucHV0X2hpbnRzICgpOwor KwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBnZXRfaW5wdXRfcHVycG9zZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9qdXN0 aWZ5ICgpOworKwkJcHVibGljIHVub3duZWQgUGFuZ28uTGF5b3V0IGdldF9sYXlvdXQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfbGF5b3V0X29m ZnNldHMgKG91dCBpbnQgeCwgb3V0IGludCB5KTsKKysJCXB1YmxpYyBQYW5nby5BbGlnbm1lbnQg Z2V0X2xpbmVfYWxpZ25tZW50ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2xpbmVfd3JhcCAoKTsK KysJCXB1YmxpYyBQYW5nby5XcmFwTW9kZSBnZXRfbGluZV93cmFwX21vZGUgKCk7CisrCQlwdWJs aWMgaW50IGdldF9tYXhfbGVuZ3RoICgpOworKwkJcHVibGljIHVuaWNoYXIgZ2V0X3Bhc3N3b3Jk X2NoYXIgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfc2VsZWN0YWJsZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9zZWxlY3RlZF90 ZXh0X2NvbG9yICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfc2VsZWN0aW9uICgpOworKwkJcHVi bGljIGludCBnZXRfc2VsZWN0aW9uX2JvdW5kICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig Z2V0X3NlbGVjdGlvbl9jb2xvciAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zaW5nbGVfbGluZV9t b2RlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90ZXh0ICgpOworKwkJcHVibGlj IGJvb2wgZ2V0X3VzZV9tYXJrdXAgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfcHJlZWRpdCAoKTsK KysJCXB1YmxpYyB2b2lkIGluc2VydF90ZXh0IChzdHJpbmcgdGV4dCwgc3NpemVfdCBwb3NpdGlv bik7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfdW5pY2hhciAodW5pY2hhciB3Yyk7CisrCQlwdWJs aWMgYm9vbCBwb3NpdGlvbl90b19jb29yZHMgKGludCBwb3NpdGlvbiwgb3V0IGZsb2F0IHgsIG91 dCBmbG9hdCB5LCBvdXQgZmxvYXQgbGluZV9oZWlnaHQgPSBudWxsKTsKKysJCXB1YmxpYyB2b2lk IHNldF9hY3RpdmF0YWJsZSAoYm9vbCBhY3RpdmF0YWJsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRf YXR0cmlidXRlcyAoUGFuZ28uQXR0ckxpc3Q/IGF0dHJzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYnVmZmVyIChDbHV0dGVyLlRleHRCdWZmZXIg YnVmZmVyKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7 CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7 CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX3Bvc2l0aW9uIChpbnQgcG9zaXRpb24pOworKwkJ cHVibGljIHZvaWQgc2V0X2N1cnNvcl9zaXplIChpbnQgc2l6ZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfY3Vyc29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOworKwkJcHVibGljIHZvaWQg c2V0X2VkaXRhYmxlIChib29sIGVkaXRhYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lbGxpcHNp emUgKFBhbmdvLkVsbGlwc2l6ZU1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9kZXNjcmlwdGlvbiAoUGFuZ28uRm9udERlc2Ny aXB0aW9uIGZvbnRfZGVzYyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9uYW1lIChzdHJpbmc/ IGZvbnRfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfaGludHMgKENsdXR0ZXIuSW5w dXRDb250ZW50SGludEZsYWdzIGhpbnRzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wdXJw b3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgcHVycG9zZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfanVzdGlmeSAoYm9vbCBqdXN0aWZ5KTsKKysJCXB1YmxpYyB2b2lkIHNldF9saW5lX2Fs aWdubWVudCAoUGFuZ28uQWxpZ25tZW50IGFsaWdubWVudCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf bGluZV93cmFwIChib29sIGxpbmVfd3JhcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGluZV93cmFw X21vZGUgKFBhbmdvLldyYXBNb2RlIHdyYXBfbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbWFy a3VwIChzdHJpbmc/IG1hcmt1cCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbWF4X2xlbmd0aCAoaW50 IG1heCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFzc3dvcmRfY2hhciAodW5pY2hhciB3Yyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJlZWRpdF9z dHJpbmcgKHN0cmluZz8gcHJlZWRpdF9zdHIsIFBhbmdvLkF0dHJMaXN0PyBwcmVlZGl0X2F0dHJz LCB1aW50IGN1cnNvcl9wb3MpOworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGFibGUgKGJvb2wg c2VsZWN0YWJsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfc2VsZWN0ZWRfdGV4dF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJcHVi bGljIHZvaWQgc2V0X3NlbGVjdGlvbiAoc3NpemVfdCBzdGFydF9wb3MsIHNzaXplX3QgZW5kX3Bv cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0aW9uX2JvdW5kIChpbnQgc2VsZWN0aW9uX2Jv dW5kKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb25fY29sb3IgKENsdXR0ZXIuQ29sb3I/ IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zaW5nbGVfbGluZV9tb2RlIChib29sIHNpbmds ZV9saW5lKTsKKysJCXB1YmxpYyB2b2lkIHNldF90ZXh0IChzdHJpbmc/IHRleHQpOworKwkJcHVi bGljIHZvaWQgc2V0X3VzZV9tYXJrdXAgKGJvb2wgc2V0dGluZyk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfdGV4dF9hY3RpdmF0ZSIpXQorKwkJcHVibGljIGJvb2wgdHJ5X2FjdGl2YXRl ICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBUZXh0LndpdGhfYnVmZmVyIChDbHV0dGVyLlRleHRCdWZmZXIgYnVmZmVyKTsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rvcioi KV0KKysJCXB1YmxpYyBUZXh0LndpdGhfdGV4dCAoc3RyaW5nPyBmb250X25hbWUsIHN0cmluZyB0 ZXh0KTsKKysJCXB1YmxpYyBib29sIGFjdGl2YXRhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBQYW5nby5BdHRyTGlzdCBhdHRyaWJ1dGVzIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHRCdWZmZXIgYnVmZmVyIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGN1cnNvcl9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGN1cnNvcl9jb2xvcl9zZXQgeyBnZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgaW50IGN1cnNvcl9wb3Np dGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgaW50IGN1cnNvcl9zaXplIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBib29sIGN1cnNvcl92aXNpYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBib29sIGVkaXRhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBQYW5nby5FbGxpcHNpemVN b2RlIGVsbGlwc2l6ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgUGFuZ28uRm9udERlc2NyaXB0aW9uIGZvbnRfZGVzY3JpcHRpb24geyBvd25l ZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyBmb250X25hbWUgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGlucHV0X2hpbnRzIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgaW5wdXRfcHVy cG9zZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBqdXN0aWZ5IHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBQYW5nby5BbGlnbm1lbnQgbGluZV9hbGlnbm1lbnQgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIGJvb2wgbGluZV93cmFwIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBQYW5nby5X cmFwTW9kZSBsaW5lX3dyYXBfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgaW50IG1heF9s ZW5ndGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgcGFzc3dvcmRfY2hhciB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgaW50IHBvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHNlbGVjdGFibGUg eyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENs dXR0ZXIuQ29sb3Igc2VsZWN0ZWRfdGV4dF9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29s IHNlbGVjdGVkX3RleHRfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IHNlbGVjdGlv bl9ib3VuZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBzZWxlY3Rpb25f Y29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9v bCBzZWxlY3Rpb25fY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlwdWJsaWMgYm9vbCBzaW5nbGVfbGlu ZV9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGV4dCB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgYm9vbCB1c2VfbWFya3VwIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGN1cnNvcl9jaGFuZ2VkICgpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGN1cnNvcl9ldmVu dCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRlbGV0ZV90ZXh0IChpbnQgc3Rh cnRfcG9zLCBpbnQgZW5kX3Bvcyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCB0ZXh0 X2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRfYnVmZmVyX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUZXh0QnVmZmVy IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHVibGljIFRleHRCdWZmZXIgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB1aW50IGRl bGV0ZV90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZvaWQg ZW1pdF9kZWxldGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHVpbnQgbl9jaGFycyk7CisrCQlwdWJs aWMgdm9pZCBlbWl0X2luc2VydGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHN0cmluZyBjaGFycywg dWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyBzaXplX3QgZ2V0X2J5dGVzICgpOworKwkJcHVibGlj IHZpcnR1YWwgdWludCBnZXRfbGVuZ3RoICgpOworKwkJcHVibGljIGludCBnZXRfbWF4X2xlbmd0 aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdGV4dCAoKTsKKysJCVtDQ29kZSAo dmZ1bmNfbmFtZSA9ICJnZXRfdGV4dCIpXQorKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHVub3duZWQgc3RyaW5nIGdldF90ZXh0X3dpdGhfbGVuZ3RoIChzaXplX3Qgbl9ieXRlcyk7 CisrCQlwdWJsaWMgdmlydHVhbCB1aW50IGluc2VydF90ZXh0ICh1aW50IHBvc2l0aW9uLCBzdHJp bmcgY2hhcnMsIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbWF4X2xlbmd0aCAo aW50IG1heF9sZW5ndGgpOworKwkJcHVibGljIHZvaWQgc2V0X3RleHQgKHN0cmluZyBjaGFycywg aW50IG5fY2hhcnMpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHVibGljIFRleHRCdWZmZXIud2l0aF90ZXh0IChzdHJpbmc/IHRleHQsIHNzaXplX3Qg dGV4dF9sZW4pOworKwkJcHVibGljIHVpbnQgbGVuZ3RoIHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50 IG1heF9sZW5ndGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyB0ZXh0IHsgZ2V0OyB9 CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWxldGVkX3RleHQgKHVpbnQgcG9zaXRp b24sIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBpbnNlcnRl ZF90ZXh0ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFycyk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3RleHRfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dE5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFRleHROb2RlIChQYW5nby5MYXlvdXQ/IGxheW91 dCwgQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlIDogQ2x1dHRlci5BY3RvciB7CisrCQlw dWJsaWMgQ29nbC5NYXRlcmlhbCBjb2dsX21hdGVyaWFsIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBDb2dsLlRleHR1cmUgY29nbF90ZXh0dXJlIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfdGV4dHVyZV9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlTm9kZSA6IENsdXR0ZXIuUGlwZWxpbmVOb2RlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVGV4dHVyZU5vZGUgKENvZ2wuVGV4dHVyZSB0ZXh0 dXJlLCBDbHV0dGVyLkNvbG9yPyBjb2xvciwgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1pbl9maWx0 ZXIsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf dGltZWxpbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlw dWJsaWMgY2xhc3MgVGltZWxpbmUgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBUaW1lbGluZSAodWludCBtc2Vjcyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX21hcmtlciAoc3Ry aW5nIG1hcmtlcl9uYW1lLCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWRkX21hcmtlcl9hdF90aW1lIChzdHJpbmcgbWFya2Vy X25hbWUsIHVpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgYWR2YW5jZSAodWludCBtc2Vjcyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhZHZhbmNlX3Rv X21hcmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlwdWJs aWMgQ2x1dHRlci5UaW1lbGluZSBjbG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyBib29sIGdldF9hdXRvX3JldmVyc2UgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2N1YmljX2Jlemllcl9wcm9ncmVzcyAo R3JhcGhlbmUuUG9pbnQgY18xLCBHcmFwaGVuZS5Qb2ludCBjXzIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnJlbnRfcmVwZWF0ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2RlbGF5ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2RlbHRhICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxp bmVEaXJlY3Rpb24gZ2V0X2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB1aW50IGdldF9kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgaW50NjQgZ2V0X2R1cmF0aW9uX2hpbnQgKCk7CisrCQlwdWJs aWMgdWludCBnZXRfZWxhcHNlZF90aW1lICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGdldF9sb29w ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRf cHJvZ3Jlc3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQW5pbWF0aW9uTW9kZSBnZXRfcHJvZ3Jlc3NfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9yZXBlYXRfY291bnQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3N0ZXBfcHJvZ3Jl c3MgKG91dCBpbnQgbl9zdGVwcywgb3V0IENsdXR0ZXIuU3RlcE1vZGUgc3RlcF9tb2RlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGhhc19tYXJrZXIgKHN0 cmluZyBtYXJrZXJfbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBpc19wbGF5aW5nICgpOworKwkJW0ND b2RlIChhcnJheV9sZW5ndGggPSB0cnVlLCBhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9s ZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGFycmF5X251bGxfdGVybWluYXRlZCA9IHRydWUpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0cmluZ1tdIGxpc3RfbWFya2Vy cyAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHBhdXNlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX21hcmtlciAoc3RyaW5nIG1hcmtl cl9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHJld2luZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hdXRvX3JldmVyc2UgKGJvb2wgcmV2ZXJzZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2N1Ymlj X2Jlemllcl9wcm9ncmVzcyAoR3JhcGhlbmUuUG9pbnQgY18xLCBHcmFwaGVuZS5Qb2ludCBjXzIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlbGF5 ICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9kaXJlY3Rpb24gKENsdXR0ZXIuVGltZWxpbmVEaXJlY3Rpb24gZGlyZWN0aW9uKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kdXJhdGlv biAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xvb3AgKGJvb2wgbG9vcCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Byb2dy ZXNzX2Z1bmMgKG93bmVkIENsdXR0ZXIuVGltZWxpbmVQcm9ncmVzc0Z1bmM/IGZ1bmMpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9ncmVzc19t b2RlIChDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlcGVhdF9jb3VudCAoaW50IGNvdW50KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc3RlcF9wcm9n cmVzcyAoaW50IG5fc3RlcHMsIENsdXR0ZXIuU3RlcE1vZGUgc3RlcF9tb2RlKTsKKysJCXB1Ymxp YyB2b2lkIHNraXAgKHVpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgc3RhcnQgKCk7CisrCQlw dWJsaWMgdm9pZCBzdG9wICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIGJvb2wgYXV0b19yZXZlcnNlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50IGRlbGF5IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9uIGRp cmVjdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgbG9v cCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBwcm9ncmVzc19tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IHJlcGVhdF9jb3VudCB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjb21wbGV0ZWQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBtYXJrZXJfcmVhY2hlZCAoc3RyaW5nIG1hcmtlcl9uYW1lLCBpbnQgbXNlY3MpOworKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbmV3X2ZyYW1lIChpbnQgbXNlY3MpOworKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgcGF1c2VkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgc3RhcnRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdG9wcGVkIChib29sIGlzX2ZpbmlzaGVkKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBUaW1lb3V0UG9vbCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVGltZW91dFBvb2wgKGludCBwcmlv cml0eSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVG91Y2hFdmVudCA6IENsdXR0ZXIuRXZlbnQg eworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERl dmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVi bGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5B Y3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVi bGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlw dWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGljIGNsYXNz IFRvdWNocGFkUGluY2hFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGZsb2F0IGFu Z2xlX2RlbHRhOworKwkJcHVibGljIGZsb2F0IGR4OworKwkJcHVibGljIGZsb2F0IGR5OworKwkJ cHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1aW50IG5fZmluZ2Vy czsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVyZVBoYXNlIHBoYXNlOworKwkJcHVi bGljIGZsb2F0IHNjYWxlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1l OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsK KysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGljIGNsYXNzIFRvdWNocGFkU3dpcGVF dmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGZsb2F0IGR4OworKwkJcHVibGljIGZs b2F0IGR5OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1 aW50IG5fZmluZ2VyczsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVyZVBoYXNlIHBo YXNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGlj IENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBm bG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90cmFuc2Zvcm1fbm9kZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgVHJhbnNmb3JtTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWlu dE5vZGUqIildCisrCQlwdWJsaWMgVHJhbnNmb3JtTm9kZSAoQ29nbC5NYXRyaXggcHJvamVjdGlv bik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFRyYW5zaXRpb24g OiBDbHV0dGVyLlRpbWVsaW5lLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFRyYW5zaXRpb24gKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhdHRhY2hlZCAoQ2x1dHRl ci5BbmltYXRhYmxlIGFuaW1hdGFibGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgY29tcHV0ZV92YWx1ZSAoQ2x1dHRlci5BbmltYXRhYmxlIGFuaW1hdGFibGUsIENs dXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXRhY2hlZCAoQ2x1dHRlci5BbmltYXRhYmxlIGFu aW1hdGFibGUpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BbmltYXRhYmxlIGdldF9hbmlt YXRhYmxlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnRlcnZhbCBnZXRfaW50ZXJ2 YWwgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcmVtb3ZlX29uX2NvbXBsZXRlICgpOworKwkJcHVi bGljIHZvaWQgc2V0X2FuaW1hdGFibGUgKENsdXR0ZXIuQW5pbWF0YWJsZT8gYW5pbWF0YWJsZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Zyb21f dmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2ludGVydmFsIChD bHV0dGVyLkludGVydmFsPyBpbnRlcnZhbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcmVtb3ZlX29u X2NvbXBsZXRlIChib29sIHJlbW92ZV9jb21wbGV0ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RvX3ZhbHVlIChHTGliLlZhbHVlIHZhbHVlKTsK KysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5JbnRlcnZhbCBpbnRlcnZhbCB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgYm9vbCByZW1vdmVfb25fY29tcGxldGUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl90cmFuc2l0aW9uX2dyb3VwX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCXB1YmxpYyBjbGFzcyBUcmFuc2l0aW9uR3JvdXAgOiBDbHV0dGVyLlRyYW5zaXRp b24sIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1YmxpYyBUcmFu c2l0aW9uR3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfdHJhbnNpdGlvbiAoQ2x1dHRlci5U cmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FsbCAoKTsKKysJ CXB1YmxpYyB2b2lkIHJlbW92ZV90cmFuc2l0aW9uIChDbHV0dGVyLlRyYW5zaXRpb24gdHJhbnNp dGlvbik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3ZpcnR1YWxfaW5wdXRfZGV2aWNlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBWaXJ0dWFsSW5wdXREZXZpY2UgOiBHTGliLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg VmlydHVhbElucHV0RGV2aWNlICgpOworKwkJcHVibGljIGludCBnZXRfZGV2aWNlX3R5cGUgKCk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9hYnNvbHV0ZV9tb3Rpb24gKHVpbnQ2NCB0 aW1lX3VzLCBkb3VibGUgeCwgZG91YmxlIHkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3Rp ZnlfYnV0dG9uICh1aW50NjQgdGltZV91cywgdWludDMyIGJ1dHRvbiwgQ2x1dHRlci5CdXR0b25T dGF0ZSBidXR0b25fc3RhdGUpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfZGlzY3Jl dGVfc2Nyb2xsICh1aW50NjQgdGltZV91cywgQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0 aW9uLCBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgbm90aWZ5X2tleSAodWludDY0IHRpbWVfdXMsIHVpbnQzMiBrZXksIENsdXR0ZXIu S2V5U3RhdGUga2V5X3N0YXRlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2tleXZh bCAodWludDY0IHRpbWVfdXMsIHVpbnQzMiBrZXl2YWwsIENsdXR0ZXIuS2V5U3RhdGUga2V5X3N0 YXRlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3JlbGF0aXZlX21vdGlvbiAodWlu dDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91YmxlIGR5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgbm90aWZ5X3Njcm9sbF9jb250aW51b3VzICh1aW50NjQgdGltZV91cywgZG91YmxlIGR4LCBk b3VibGUgZHksIENsdXR0ZXIuU2Nyb2xsU291cmNlIHNjcm9sbF9zb3VyY2UsIENsdXR0ZXIuU2Ny b2xsRmluaXNoRmxhZ3MgZmluaXNoX2ZsYWdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90 aWZ5X3RvdWNoX2Rvd24gKHVpbnQ2NCB0aW1lX3VzLCBpbnQgc2xvdCwgZG91YmxlIHgsIGRvdWJs ZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3RvdWNoX21vdGlvbiAodWludDY0 IHRpbWVfdXMsIGludCBzbG90LCBkb3VibGUgeCwgZG91YmxlIHkpOworKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBub3RpZnlfdG91Y2hfdXAgKHVpbnQ2NCB0aW1lX3VzLCBpbnQgc2xvdCk7CisrCQlw dWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNlX3R5cGUgeyBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TZWF0IHNlYXQg eyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl96b29tX2FjdGlvbl9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xh c3MgWm9vbUFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJ cHVibGljIFpvb21BY3Rpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfZm9jYWxfcG9pbnQgKEdy YXBoZW5lLlBvaW50IHBvaW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2Zvcm1lZF9mb2Nh bF9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJcHVibGljIENsdXR0ZXIuWm9vbUF4 aXMgZ2V0X3pvb21fYXhpcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF96b29tX2F4aXMgKENsdXR0 ZXIuWm9vbUF4aXMgYXhpcyk7CisrCQlwdWJsaWMgQ2x1dHRlci5ab29tQXhpcyB6b29tX2F4aXMg eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgem9vbSAoQ2x1dHRl ci5BY3RvciBhY3RvciwgR3JhcGhlbmUuUG9pbnQgZm9jYWxfcG9pbnQsIGRvdWJsZSBmYWN0b3Ip OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfY25hbWUgPSAiQ2x1dHRlckFuaW1hdGFibGVJbnRlcmZhY2UiLCB0eXBlX2lkID0gImNs dXR0ZXJfYW5pbWF0YWJsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIEFuaW1h dGFibGUgOiBHTGliLk9iamVjdCB7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0 IGJvb2wgYW5pbWF0ZV9wcm9wZXJ0eSAoQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0aW9uLCBzdHJp bmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSBpbml0aWFsX3ZhbHVlLCBHTGliLlZhbHVlIGZp bmFsX3ZhbHVlLCBkb3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgR0xpYi5QYXJh bVNwZWMgZmluZF9wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgZ2V0X2luaXRpYWxfc3Rh dGUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGludGVycG9sYXRlX3Zh bHVlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwgQ2x1dHRlci5JbnRlcnZhbCBpbnRlcnZhbCwgZG91 YmxlIHByb2dyZXNzLCBvdXQgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfZmluYWxfc3RhdGUgKHN0cmlu ZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29u dGFpbmVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVi bGljIGludGVyZmFjZSBDb250YWluZXIgOiBHTGliLk9iamVjdCB7CisrCQlwdWJsaWMgdm9pZCBh ZGQgKHBhcmFtcyBDbHV0dGVyLkFjdG9yW10gYWN0b3JzKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFt ZSA9ICJhZGQiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBh ZGRfYWN0b3IgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0 X3Byb3BlcnR5IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBzdHJpbmcgcHJvcGVydHksIEdMaWIuVmFs dWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQg Y2hpbGRfc2V0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0X3Byb3BlcnR5IChDbHV0dGVyLkFj dG9yIGNoaWxkLCBzdHJpbmcgcHJvcGVydHksIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdMaWIuUGFyYW1T cGVjIGNsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkgKEdMaWIuT2JqZWN0Q2xhc3Mga2xhc3MsIHN0 cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwg YXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5QYXJhbVNwZWNbXSBjbGFzc19saXN0X2NoaWxkX3By b3BlcnRpZXMgKEdMaWIuT2JqZWN0Q2xhc3Mga2xhc3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjcmVhdGVfY2hpbGRfbWV0YSAoQ2x1dHRl ci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGRlc3Ryb3lfY2hpbGRfbWV0YSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFj dG9yIGZpbmRfY2hpbGRfYnlfbmFtZSAoc3RyaW5nIGNoaWxkX25hbWUpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19maW5kX2NoaWxkX3Byb3BlcnR5IildCisr CQlwdWJsaWMgY2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX2NoaWxkX3Byb3BlcnR5 IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuQ2hpbGRNZXRhIGdldF9jaGlsZF9tZXRh IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgR0xp Yi5MaXN0PHdlYWsgQ2x1dHRlci5BY3Rvcj4gZ2V0X2NoaWxkcmVuICgpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19saXN0X2NoaWxkX3Byb3BlcnRpZXMiKV0K KysJCXB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjW10gbGlzdF9jaGlsZF9wcm9w ZXJ0aWVzICgpOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gImxvd2VyIildCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBsb3dlcl9jaGlsZCAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyA9IG51bGwpOworKwkJW0NDb2RlICh2ZnVu Y19uYW1lID0gInJhaXNlIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCByYWlzZV9jaGlsZCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5BY3Rvcj8gc2li bGluZyA9IG51bGwpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZSAo Li4uKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJyZW1vdmUiKV0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40 IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZW1vdmVfYWN0b3IgKENsdXR0ZXIuQWN0b3Ig YWN0b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNvcnRf ZGVwdGhfb3JkZXIgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhY3Rvcl9hZGRl ZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBh Y3Rvcl9yZW1vdmVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtIYXNFbWl0dGVyXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg Y2hpbGRfbm90aWZ5IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBHTGliLlBhcmFtU3BlYyBwc3BlYyk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9jbmFtZSA9ICJDbHV0dGVyQ29udGVudEludGVyZmFjZSIsIHR5cGVfaWQgPSAiY2x1dHRl cl9jb250ZW50X2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ29udGVudCA6IEdM aWIuT2JqZWN0IHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYWJz dHJhY3QgYm9vbCBnZXRfcHJlZmVycmVkX3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0 IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGFic3Ry YWN0IHZvaWQgaW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGludmFsaWRh dGVfc2l6ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBwYWlu dF9jb250ZW50IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlBhaW50Tm9kZSBub2RlLCBD bHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhdHRhY2hlZCAoQ2x1dHRl ci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgZGV0YWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9zY3JpcHRhYmxlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJcHVibGljIGludGVyZmFjZSBTY3JpcHRhYmxlIDogR0xpYi5PYmplY3Qg eworKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgc3RyaW5nIGdldF9pZCAoKTsKKysJCXB1Ymxp YyBhYnN0cmFjdCBib29sIHBhcnNlX2N1c3RvbV9ub2RlIChDbHV0dGVyLlNjcmlwdCBzY3JpcHQs IEdMaWIuVmFsdWUgdmFsdWUsIHN0cmluZyBuYW1lLCBKc29uLk5vZGUgbm9kZSk7CisrCQlwdWJs aWMgYWJzdHJhY3Qgdm9pZCBzZXRfY3VzdG9tX3Byb3BlcnR5IChDbHV0dGVyLlNjcmlwdCBzY3Jp cHQsIHN0cmluZyBuYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2 b2lkIHNldF9pZCAoc3RyaW5nIGlkXyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBpbnRlcmZhY2UgU3RhZ2VXaW5kb3cg OiBHTGliLk9iamVjdCB7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGludCBn ZXRfcGVuZGluZ19zd2FwcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qg dW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93cmFwcGVyICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyBhYnN0cmFjdCBib29sIGhhc19yZWRyYXdfY2xpcHMgKCk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgYWJzdHJhY3QgYm9vbCBpZ25vcmluZ19yZWRyYXdfY2xpcHMgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgcmVhbGl6ZSAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZXNpemUgKGludCB3aWR0aCwgaW50IGhlaWdodCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1cnNvcl92aXNp YmxlIChib29sIGN1cnNvcl92aXNpYmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJz dHJhY3Qgdm9pZCBzZXRfZnVsbHNjcmVlbiAoYm9vbCBpc19mdWxsc2NyZWVuKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdGl0bGUgKHN0cmluZyB0aXRsZSk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3VzZXJfcmVzaXph YmxlIChib29sIGlzX3Jlc2l6YWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3Ry YWN0IHZvaWQgc2hvdyAoYm9vbCBkb19yYWlzZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IGFic3RyYWN0IHZvaWQgdW5yZWFsaXplICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5 IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0 b3JfYm94X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgQWN0b3JCb3ggeworKwkJcHVi bGljIGZsb2F0IHgxOworKwkJcHVibGljIGZsb2F0IHkxOworKwkJcHVibGljIGZsb2F0IHgyOwor KwkJcHVibGljIGZsb2F0IHkyOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBzdGF0aWMgQ2x1dHRlci5BY3RvckJveD8gYWxsb2MgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgY2xhbXBfdG9fcGl4ZWwgKHJlZiBD bHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgYm9vbCBjb250YWlucyAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveD8gY29weSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLkFj dG9yQm94IGJveF9iKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2 b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X2FyZWEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2b2lkIGdldF9vcmlnaW4gKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2l6ZSAob3V0IGZsb2F0 IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvckJveD8gaW5pdCAoZmxvYXQgeF8x LCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbml0X3JlY3QgKGZsb2F0IHgsIGZsb2F0IHksIGZs b2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggaW50ZXJwb2xhdGUgKENsdXR0ZXIuQWN0b3JCb3gg ZmluYWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgc2NhbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWdpbiAoZmxvYXQgeCwgZmxvYXQgeSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2l6ZSAoZmxv YXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCB1bmlvbiAoQ2x1dHRlci5BY3RvckJveCBiKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IHN0cnVjdCBBY3Rvckl0ZXIgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsKKysJCXB1Ymxp YyB2b2lkIGluaXQgKENsdXR0ZXIuQWN0b3Igcm9vdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGJvb2wgaXNfdmFsaWQgKCk7CisrCQlwdWJsaWMgYm9vbCBuZXh0 IChvdXQgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGNoaWxkKTsKKysJCXB1YmxpYyBib29sIHByZXYg KG91dCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIHZvaWQgcmVtb3Zl ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IENhcHR1cmUgeworKwkJ cHVibGljIHdlYWsgQ2Fpcm8uU3VyZmFjZSBpbWFnZTsKKysJCXB1YmxpYyBDYWlyby5SZWN0YW5n bGVJbnQgcmVjdDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24g PSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfQ09MT1IiKV0KKysJcHVi bGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgdWludDggcmVkOworKwkJcHVibGljIHVpbnQ4 IGdyZWVuOworKwkJcHVibGljIHVpbnQ4IGJsdWU7CisrCQlwdWJsaWMgdWludDggYWxwaGE7Cisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBhZGQgKENsdXR0ZXIuQ29sb3IgYik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLkNvbG9yPyBhbGxv YyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yPyBjb3B5ICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZGFya2VuICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuQ29s b3IgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgZnJl ZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX2hscyIpXQorKwkJ cHVibGljIENvbG9yLmZyb21faGxzIChmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQg c2F0dXJhdGlvbik7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9waXhl bCIpXQorKwkJcHVibGljIENvbG9yLmZyb21fcGl4ZWwgKHVpbnQzMiBwaXhlbCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysJCXB1YmxpYyBDb2xv ci5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1 dHRlci5Db2xvcj8gZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xvcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWludCBoYXNoICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/ IGluaXQgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGlu dGVycG9sYXRlIChDbHV0dGVyLkNvbG9yIGZpbmFsLCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJcHVi bGljIENsdXR0ZXIuQ29sb3IgbGlnaHRlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIGJvb2wgcGFyc2Vfc3RyaW5nIChzdHJp bmcgc3RyKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNoYWRlIChkb3VibGUgZmFjdG9yKTsK KysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHN1YnRyYWN0IChDbHV0dGVyLkNvbG9yIGIpOworKwkJ cHVibGljIHZvaWQgdG9faGxzIChvdXQgZmxvYXQgaHVlLCBvdXQgZmxvYXQgbHVtaW5hbmNlLCBv dXQgZmxvYXQgc2F0dXJhdGlvbik7CisrCQlwdWJsaWMgdWludDMyIHRvX3BpeGVsICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHN0cmluZyB0b19zdHJpbmcgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgS2JkQTExeVNldHRpbmdzIHsK KysJCXB1YmxpYyBDbHV0dGVyLktleWJvYXJkQTExeUZsYWdzIGNvbnRyb2xzOworKwkJcHVibGlj IGludCBzbG93a2V5c19kZWxheTsKKysJCXB1YmxpYyBpbnQgZGVib3VuY2VfZGVsYXk7CisrCQlw dWJsaWMgaW50IHRpbWVvdXRfZGVsYXk7CisrCQlwdWJsaWMgaW50IG1vdXNla2V5c19pbml0X2Rl bGF5OworKwkJcHVibGljIGludCBtb3VzZWtleXNfbWF4X3NwZWVkOworKwkJcHVibGljIGludCBt b3VzZWtleXNfYWNjZWxfdGltZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVf ZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tub3RfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgc3RydWN0IEtu b3QgeworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGludCB5OworKwkJcHVibGljIENsdXR0 ZXIuS25vdD8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLktub3Qga25v dF9iKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4IDog Q29nbC5NYXRyaXggeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBhZEJ1 dHRvbkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFj dG9yIHNvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgYnV0dG9uOworKwkJcHVibGljIHVpbnQzMiBn cm91cDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVi bGljIHVpbnQzMiBtb2RlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBh ZFJpbmdFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1Ymxp YyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5B Y3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsK KysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlUGFkU291cmNlIHJpbmdfc291cmNlOworKwkJ cHVibGljIHVpbnQzMiByaW5nX251bWJlcjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlw dWJsaWMgZG91YmxlIGFuZ2xlOworKwkJcHVibGljIHVpbnQzMiBtb2RlOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBhZFN0cmlwRXZlbnQgeworKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFn ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmlj ZVBhZFNvdXJjZSBzdHJpcF9zb3VyY2U7CisrCQlwdWJsaWMgdWludDMyIHN0cmlwX251bWJlcjsK KysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlwdWJsaWMgZG91YmxlIHZhbHVlOworKwkJcHVi bGljIHVpbnQzMiBtb2RlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5j dGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9ub2RlX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBQ YXRoTm9kZSB7CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoTm9kZVR5cGUgdHlwZTsKKysJCVtDQ29k ZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgQ2x1dHRlci5Lbm90IHBv aW50c1szXTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2RlPyBjb3B5ICgpOworKwkJcHVibGlj IGJvb2wgZXF1YWwgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZV9iKTsKKysJCXB1YmxpYyB2b2lkIGZy ZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdf Ym94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wZXJzcGVjdGl2ZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdHJ1Y3QgUGVyc3BlY3Rp dmUgeworKwkJcHVibGljIGZsb2F0IGZvdnk7CisrCQlwdWJsaWMgZmxvYXQgYXNwZWN0OworKwkJ cHVibGljIGZsb2F0IHpfbmVhcjsKKysJCXB1YmxpYyBmbG9hdCB6X2ZhcjsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQb2ludGVyQTExeVNldHRpbmdzIHsKKysJCXB1Ymxp YyBDbHV0dGVyLlBvaW50ZXJBMTF5RmxhZ3MgY29udHJvbHM7CisrCQlwdWJsaWMgQ2x1dHRlci5Q b2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIGR3ZWxsX2NsaWNrX3R5cGU7CisrCQlwdWJsaWMgQ2x1 dHRlci5Qb2ludGVyQTExeUR3ZWxsTW9kZSBkd2VsbF9tb2RlOworKwkJcHVibGljIENsdXR0ZXIu UG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX3NpbmdsZTsKKysJCXB1Ymxp YyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2VzdHVyZV9kb3VibGU7 CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1 cmVfZHJhZzsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdl bGxfZ2VzdHVyZV9zZWNvbmRhcnk7CisrCQlwdWJsaWMgaW50IHNlY29uZGFyeV9jbGlja19kZWxh eTsKKysJCXB1YmxpYyBpbnQgZHdlbGxfZGVsYXk7CisrCQlwdWJsaWMgaW50IGR3ZWxsX3RocmVz aG9sZDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0K KysJcHVibGljIHN0cnVjdCBQcm94aW1pdHlFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVu dFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LklucHV0RGV2aWNlIGRldmljZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVf ZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfVU5JVFMi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFVuaXRzIHsK KysJCXB1YmxpYyBDbHV0dGVyLlVuaXRzPyBjb3B5ICgpOworKwkJcHVibGljIHZvaWQgZnJlZSAo KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2NtIildCisrCQlwdWJs aWMgVW5pdHMuZnJvbV9jbSAoZmxvYXQgY20pOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X3VuaXRzX2Zyb21fZW0iKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX2VtIChmbG9hdCBlbSk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbV9mb3JfZm9udCIpXQorKwkJ cHVibGljIFVuaXRzLmZyb21fZW1fZm9yX2ZvbnQgKHN0cmluZyBmb250X25hbWUsIGZsb2F0IGVt KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX21tIildCisrCQlwdWJs aWMgVW5pdHMuZnJvbV9tbSAoZmxvYXQgbW0pOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X3VuaXRzX2Zyb21fcGl4ZWxzIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9waXhlbHMgKGludCBw eCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9wdCIpXQorKwkJcHVi bGljIFVuaXRzLmZyb21fcHQgKGZsb2F0IHB0KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl91bml0c19mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fc3RyaW5nIChzdHJp bmcgc3RyKTsKKysJCXB1YmxpYyBDbHV0dGVyLlVuaXRUeXBlIGdldF91bml0X3R5cGUgKCk7Cisr CQlwdWJsaWMgZmxvYXQgZ2V0X3VuaXRfdmFsdWUgKCk7CisrCQlwdWJsaWMgZmxvYXQgdG9fcGl4 ZWxzICgpOworKwkJcHVibGljIHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0FDVE9SX0FMSUdOXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9hbGlnbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBBY3RvckFs aWduIHsKKysJCUZJTEwsCisrCQlTVEFSVCwKKysJCUNFTlRFUiwKKysJCUVORAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9BQ1RPUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfZmxhZ3NfZ2V0X3R5cGUg KCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBBY3RvckZsYWdzIHsKKysJCU1BUFBFRCwK KysJCVJFQUxJWkVELAorKwkJUkVBQ1RJVkUsCisrCQlWSVNJQkxFLAorKwkJTk9fTEFZT1VUCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0FMSUdOXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbGlnbl9heGlzX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0g QWxpZ25BeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FsbG9jYXRpb25fZmxhZ3NfZ2V0X3R5cGUgKCki KV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVt IEFsbG9jYXRpb25GbGFncyB7CisrCQlBTExPQ0FUSU9OX05PTkUsCisrCQlBQlNPTFVURV9PUklH SU5fQ0hBTkdFRCwKKysJCURFTEVHQVRFX0xBWU9VVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBl X2lkID0gImNsdXR0ZXJfYW5pbWF0aW9uX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbmltYXRpb25Nb2RlIHsKKysJCUNVU1RP TV9NT0RFLAorKwkJTElORUFSLAorKwkJRUFTRV9JTl9RVUFELAorKwkJRUFTRV9PVVRfUVVBRCwK KysJCUVBU0VfSU5fT1VUX1FVQUQsCisrCQlFQVNFX0lOX0NVQklDLAorKwkJRUFTRV9PVVRfQ1VC SUMsCisrCQlFQVNFX0lOX09VVF9DVUJJQywKKysJCUVBU0VfSU5fUVVBUlQsCisrCQlFQVNFX09V VF9RVUFSVCwKKysJCUVBU0VfSU5fT1VUX1FVQVJULAorKwkJRUFTRV9JTl9RVUlOVCwKKysJCUVB U0VfT1VUX1FVSU5ULAorKwkJRUFTRV9JTl9PVVRfUVVJTlQsCisrCQlFQVNFX0lOX1NJTkUsCisr CQlFQVNFX09VVF9TSU5FLAorKwkJRUFTRV9JTl9PVVRfU0lORSwKKysJCUVBU0VfSU5fRVhQTywK KysJCUVBU0VfT1VUX0VYUE8sCisrCQlFQVNFX0lOX09VVF9FWFBPLAorKwkJRUFTRV9JTl9DSVJD LAorKwkJRUFTRV9PVVRfQ0lSQywKKysJCUVBU0VfSU5fT1VUX0NJUkMsCisrCQlFQVNFX0lOX0VM QVNUSUMsCisrCQlFQVNFX09VVF9FTEFTVElDLAorKwkJRUFTRV9JTl9PVVRfRUxBU1RJQywKKysJ CUVBU0VfSU5fQkFDSywKKysJCUVBU0VfT1VUX0JBQ0ssCisrCQlFQVNFX0lOX09VVF9CQUNLLAor KwkJRUFTRV9JTl9CT1VOQ0UsCisrCQlFQVNFX09VVF9CT1VOQ0UsCisrCQlFQVNFX0lOX09VVF9C T1VOQ0UsCisrCQlTVEVQUywKKysJCVNURVBfU1RBUlQsCisrCQlTVEVQX0VORCwKKysJCUNVQklD X0JFWklFUiwKKysJCUVBU0UsCisrCQlFQVNFX0lOLAorKwkJRUFTRV9PVVQsCisrCQlFQVNFX0lO X09VVCwKKysJCUFOSU1BVElPTl9MQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JJTl9BTElHTk1FTlRf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Jpbl9hbGlnbm1lbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBCaW5BbGlnbm1lbnQgeworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUZJWEVELAorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlKV0KKysJCUZJTEwsCisrCQlTVEFSVCwKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSldCisrCQlFTkQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUp XQorKwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JJTkRfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2JpbmRfY29vcmRpbmF0ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBlbnVtIEJpbmRDb29yZGluYXRlIHsKKysJCVgsCisrCQlZLAorKwkJV0lE VEgsCisrCQlIRUlHSFQsCisrCQlQT1NJVElPTiwKKysJCVNJWkUsCisrCQlBTEwKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfQk9YX0FMSUdOTUVOVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2FsaWdubWVu dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBl bnVtIEJveEFsaWdubWVudCB7CisrCQlTVEFSVCwKKysJCUVORCwKKysJCUNFTlRFUgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9CVVRUT05fU1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2J1dHRvbl9zdGF0 ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBCdXR0b25TdGF0ZSB7CisrCQlSRUxFQVNF RCwKKysJCVBSRVNTRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQ09OVEVOVF9HUkFWSVRZXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9jb250ZW50X2dyYXZpdHlfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gQ29udGVudEdyYXZpdHkgeworKwkJVE9Q X0xFRlQsCisrCQlUT1AsCisrCQlUT1BfUklHSFQsCisrCQlMRUZULAorKwkJQ0VOVEVSLAorKwkJ UklHSFQsCisrCQlCT1RUT01fTEVGVCwKKysJCUJPVFRPTSwKKysJCUJPVFRPTV9SSUdIVCwKKysJ CVJFU0laRV9GSUxMLAorKwkJUkVTSVpFX0FTUEVDVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9SRVBFQVRf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRlbnRfcmVwZWF0X2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gQ29udGVu dFJlcGVhdCB7CisrCQlOT05FLAorKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQk9USAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9ERUJVR18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZGVidWdfZmxhZ19nZXRf dHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERlYnVnRmxhZyB7CisrCQlNSVND LAorKwkJQUNUT1IsCisrCQlURVhUVVJFLAorKwkJRVZFTlQsCisrCQlQQUlOVCwKKysJCVBBTkdP LAorKwkJQkFDS0VORCwKKysJCVNDSEVEVUxFUiwKKysJCVNDUklQVCwKKysJCVNIQURFUiwKKysJ CU1VTFRJU1RBR0UsCisrCQlBTklNQVRJT04sCisrCQlMQVlPVVQsCisrCQlQSUNLLAorKwkJRVZF TlRMT09QLAorKwkJQ0xJUFBJTkcsCisrCQlPT0JfVFJBTlNGT1JNUworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9EUkFHXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBEcmFnQXhpcyB7CisrCQlB WElTX05PTkUsCisrCQlYX0FYSVMsCisrCQlZX0FYSVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfREVCVUdf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RyYXdfZGVidWdfZmxhZ19nZXRfdHlwZSAoKSIpXQorKwlb RmxhZ3NdCisrCXB1YmxpYyBlbnVtIERyYXdEZWJ1Z0ZsYWcgeworKwkJRElTQUJMRV9TV0FQX0VW RU5UUywKKysJCURJU0FCTEVfQ0xJUFBFRF9SRURSQVdTLAorKwkJUkVEUkFXUywKKysJCVBBSU5U X1ZPTFVNRVMsCisrCQlESVNBQkxFX0NVTExJTkcsCisrCQlESVNBQkxFX09GRlNDUkVFTl9SRURJ UkVDVCwKKysJCUNPTlRJTlVPVVNfUkVEUkFXLAorKwkJUEFJTlRfREVGT1JNX1RJTEVTLAorKwkJ UEFJTlRfREFNQUdFX1JFR0lPTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9FRkZFQ1RfUEFJTlRfQUNUT1Jf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVjdF9wYWludF9mbGFnc19nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEVmZmVjdFBhaW50RmxhZ3MgeworKwkJW0NDb2RlIChj bmFtZSA9ICJDTFVUVEVSX0VGRkVDVF9QQUlOVF9BQ1RPUl9ESVJUWSIpXQorKwkJQUNUT1JfRElS VFkKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfRVZFTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X2Zs YWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwlwdWJsaWMgZW51bSBFdmVudEZsYWdzIHsKKysJCU5PTkUsCisrCQlGTEFHX1NZTlRIRVRJ QywKKysJCUZMQUdfSU5QVVRfTUVUSE9ELAorKwkJRkxBR19SRVBFQVRFRAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIEV2ZW50VHlwZSB7CisrCQlO T1RISU5HLAorKwkJS0VZX1BSRVNTLAorKwkJS0VZX1JFTEVBU0UsCisrCQlNT1RJT04sCisrCQlF TlRFUiwKKysJCUxFQVZFLAorKwkJQlVUVE9OX1BSRVNTLAorKwkJQlVUVE9OX1JFTEVBU0UsCisr CQlTQ1JPTEwsCisrCQlTVEFHRV9TVEFURSwKKysJCURFU1RST1lfTk9USUZZLAorKwkJQ0xJRU5U X01FU1NBR0UsCisrCQlERUxFVEUsCisrCQlUT1VDSF9CRUdJTiwKKysJCVRPVUNIX1VQREFURSwK KysJCVRPVUNIX0VORCwKKysJCVRPVUNIX0NBTkNFTCwKKysJCVRPVUNIUEFEX1BJTkNILAorKwkJ VE9VQ0hQQURfU1dJUEUsCisrCQlQUk9YSU1JVFlfSU4sCisrCQlQUk9YSU1JVFlfT1VULAorKwkJ UEFEX0JVVFRPTl9QUkVTUywKKysJCVBBRF9CVVRUT05fUkVMRUFTRSwKKysJCVBBRF9TVFJJUCwK KysJCVBBRF9SSU5HLAorKwkJRVZFTlRfTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9GRUFUVVJFXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9mZWF0dXJlX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBGZWF0dXJlRmxh Z3MgeworKwkJVEVYVFVSRV9OUE9ULAorKwkJU1dBUF9USFJPVFRMRSwKKysJCVNUQUdFX1NUQVRJ QywKKysJCVNUQUdFX0NVUlNPUiwKKysJCVNIQURFUlNfR0xTTCwKKysJCU9GRlNDUkVFTiwKKysJ CVNUQUdFX01VTFRJUExFLAorKwkJU1dBUF9FVkVOVFM7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfZmVhdHVyZV9hdmFpbGFibGUiKV0KKysJCXB1YmxpYyBib29sIGlzX2F2YWlsYWJsZSAo KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2dldF9hbGwiKV0KKysJCXB1 YmxpYyBzdGF0aWMgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgQGdldCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfRkxPV18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZmxvd19vcmllbnRhdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEZsb3dPcmll bnRhdGlvbiB7CisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf R0VTVFVSRV9UUklHR0VSX0VER0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dlc3R1cmVfdHJpZ2dl cl9lZGdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCXB1 YmxpYyBlbnVtIEdlc3R1cmVUcmlnZ2VyRWRnZSB7CisrCQlOT05FLAorKwkJQUZURVIsCisrCQlC RUZPUkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfR1JBVklUWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3Jh dml0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgZW51bSBHcmF2 aXR5IHsKKysJCU5PTkUsCisrCQlOT1JUSCwKKysJCU5PUlRIX0VBU1QsCisrCQlFQVNULAorKwkJ U09VVEhfRUFTVCwKKysJCVNPVVRILAorKwkJU09VVEhfV0VTVCwKKysJCVdFU1QsCisrCQlOT1JU SF9XRVNULAorKwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dSSURfUE9TSVRJT05fIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2dyaWRfcG9zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gR3JpZFBvc2l0aW9uIHsKKysJCUxFRlQs CisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTklUXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9pbml0X2Vycm9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGVudW0gSW5pdEVycm9yIHsKKysJCVNVQ0NFU1Ms CisrCQlFUlJPUl9VTktOT1dOLAorKwkJRVJST1JfVEhSRUFEUywKKysJCUVSUk9SX0JBQ0tFTkQs CisrCQlFUlJPUl9JTlRFUk5BTDsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFyayBxdWFyayAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfQVhJU18iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5w dXRfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1 YmxpYyBlbnVtIElucHV0QXhpcyB7CisrCQlJR05PUkUsCisrCQlYLAorKwkJWSwKKysJCVBSRVNT VVJFLAorKwkJWFRJTFQsCisrCQlZVElMVCwKKysJCVdIRUVMLAorKwkJRElTVEFOQ0UsCisrCQlS T1RBVElPTiwKKysJCVNMSURFUiwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfQ09O VEVOVF9ISU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9jb250ZW50X2hpbnRfZmxhZ3Nf Z2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBJbnB1dENvbnRlbnRIaW50 RmxhZ3MgeworKwkJQ09NUExFVElPTiwKKysJCVNQRUxMQ0hFQ0ssCisrCQlBVVRPX0NBUElUQUxJ WkFUSU9OLAorKwkJTE9XRVJDQVNFLAorKwkJVVBQRVJDQVNFLAorKwkJVElUTEVDQVNFLAorKwkJ SElEREVOX1RFWFQsCisrCQlTRU5TSVRJVkVfREFUQSwKKysJCUxBVElOLAorKwkJTVVMVElMSU5F CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRfUFVSUE9TRV8iLCB0eXBlX2lkID0gImNs dXR0ZXJfaW5wdXRfY29udGVudF9wdXJwb3NlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IElucHV0Q29udGVudFB1cnBvc2UgeworKwkJTk9STUFMLAorKwkJQUxQSEEsCisrCQlESUdJVFMs CisrCQlOVU1CRVIsCisrCQlQSE9ORSwKKysJCVVSTCwKKysJCUVNQUlMLAorKwkJTkFNRSwKKysJ CVBBU1NXT1JELAorKwkJREFURSwKKysJCVRJTUUsCisrCQlEQVRFVElNRSwKKysJCVRFUk1JTkFM CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0RFVklDRV9NQVBQSU5HXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9pbnB1dF9kZXZpY2VfbWFwcGluZ19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJ bnB1dERldmljZU1hcHBpbmcgeworKwkJQUJTT0xVVEUsCisrCQlSRUxBVElWRQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9JTlBVVF9ERVZJQ0VfUEFEX1NPVVJDRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5w dXRfZGV2aWNlX3BhZF9zb3VyY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXRE ZXZpY2VQYWRTb3VyY2UgeworKwkJVU5LTk9XTiwKKysJCUZJTkdFUgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9JTlBVVF9ERVZJQ0VfVE9PTF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3Rv b2xfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwlw dWJsaWMgZW51bSBJbnB1dERldmljZVRvb2xUeXBlIHsKKysJCU5PTkUsCisrCQlQRU4sCisrCQlF UkFTRVIsCisrCQlCUlVTSCwKKysJCVBFTkNJTCwKKysJCUFJUkJSVVNILAorKwkJTU9VU0UsCisr CQlMRU5TCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZp Y2VfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBlbnVtIElucHV0RGV2aWNlVHlwZSB7CisrCQlQT0lOVEVSX0RFVklDRSwKKysJCUtFWUJP QVJEX0RFVklDRSwKKysJCUVYVEVOU0lPTl9ERVZJQ0UsCisrCQlKT1lTVElDS19ERVZJQ0UsCisr CQlUQUJMRVRfREVWSUNFLAorKwkJVE9VQ0hQQURfREVWSUNFLAorKwkJVE9VQ0hTQ1JFRU5fREVW SUNFLAorKwkJUEVOX0RFVklDRSwKKysJCUVSQVNFUl9ERVZJQ0UsCisrCQlDVVJTT1JfREVWSUNF LAorKwkJUEFEX0RFVklDRSwKKysJCU5fREVWSUNFX1RZUEVTCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lO UFVUX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X21vZGVfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBJbnB1dE1vZGUgewor KwkJTUFTVEVSLAorKwkJU0xBVkUsCisrCQlGTE9BVElORworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBV VF9QQU5FTF9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfcGFuZWxfc3RhdGVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXRQYW5lbFN0YXRlIHsKKysJCU9GRiwKKysJ CU9OLAorKwkJVE9HR0xFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOVEVSUE9MQVRJT05fIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2ludGVycG9sYXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIxLjIi KV0KKysJcHVibGljIGVudW0gSW50ZXJwb2xhdGlvbiB7CisrCQlMSU5FQVIsCisrCQlDVUJJQwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9LRVlfU1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleV9zdGF0 ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBLZXlTdGF0ZSB7CisrCQlSRUxFQVNFRCwK KysJCVBSRVNTRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJf a2V5Ym9hcmRfYTExeV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBl bnVtIEtleWJvYXJkQTExeUZsYWdzIHsKKysJCUtFWUJPQVJEX0VOQUJMRUQsCisrCQlUSU1FT1VU X0VOQUJMRUQsCisrCQlNT1VTRV9LRVlTX0VOQUJMRUQsCisrCQlTTE9XX0tFWVNfRU5BQkxFRCwK KysJCVNMT1dfS0VZU19CRUVQX1BSRVNTLAorKwkJU0xPV19LRVlTX0JFRVBfQUNDRVBULAorKwkJ U0xPV19LRVlTX0JFRVBfUkVKRUNULAorKwkJQk9VTkNFX0tFWVNfRU5BQkxFRCwKKysJCUJPVU5D RV9LRVlTX0JFRVBfUkVKRUNULAorKwkJVE9HR0xFX0tFWVNfRU5BQkxFRCwKKysJCVNUSUNLWV9L RVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19UV09fS0VZX09GRiwKKysJCVNUSUNLWV9LRVlT X0JFRVAsCisrCQlGRUFUVVJFX1NUQVRFX0NIQU5HRV9CRUVQCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0xP TkdfUFJFU1NfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2xvbmdfcHJlc3Nfc3RhdGVfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZW51bSBMb25nUHJl c3NTdGF0ZSB7CisrCQlRVUVSWSwKKysJCUFDVElWQVRFLAorKwkJQ0FOQ0VMCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9tb2RpZmllcl90eXBlX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBN b2RpZmllclR5cGUgeworKwkJU0hJRlRfTUFTSywKKysJCUxPQ0tfTUFTSywKKysJCUNPTlRST0xf TUFTSywKKysJCU1PRDFfTUFTSywKKysJCU1PRDJfTUFTSywKKysJCU1PRDNfTUFTSywKKysJCU1P RDRfTUFTSywKKysJCU1PRDVfTUFTSywKKysJCUJVVFRPTjFfTUFTSywKKysJCUJVVFRPTjJfTUFT SywKKysJCUJVVFRPTjNfTUFTSywKKysJCUJVVFRPTjRfTUFTSywKKysJCUJVVFRPTjVfTUFTSywK KysJCU1PRElGSUVSX1JFU0VSVkVEXzEzX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNF9N QVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTVfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVE XzE2X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xN19NQVNLLAorKwkJTU9ESUZJRVJfUkVT RVJWRURfMThfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE5X01BU0ssCisrCQlNT0RJRklF Ul9SRVNFUlZFRF8yMF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjFfTUFTSywKKysJCU1P RElGSUVSX1JFU0VSVkVEXzIyX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yM19NQVNLLAor KwkJTU9ESUZJRVJfUkVTRVJWRURfMjRfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzI1X01B U0ssCisrCQlTVVBFUl9NQVNLLAorKwkJSFlQRVJfTUFTSywKKysJCU1FVEFfTUFTSywKKysJCU1P RElGSUVSX1JFU0VSVkVEXzI5X01BU0ssCisrCQlSRUxFQVNFX01BU0ssCisrCQlNT0RJRklFUl9N QVNLCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX09GRlNDUkVFTl9SRURJUkVDVF8iLCB0eXBlX2lkID0gImNs dXR0ZXJfb2Zmc2NyZWVuX3JlZGlyZWN0X2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZW51bSBPZmZzY3JlZW5SZWRpcmVjdCB7 CisrCQlBVVRPTUFUSUNfRk9SX09QQUNJVFksCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf T1JJRU5UQVRJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29yaWVudGF0aW9uX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIE9yaWVudGF0 aW9uIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QQU5f IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bhbl9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFBhbkF4aXMgeworKwkJQVhJU19OT05F LAorKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQVhJU19BVVRPCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X1BBVEhfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfbm9kZV90eXBlX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gUGF0aE5vZGVUeXBl IHsKKysJCU1PVkVfVE8sCisrCQlMSU5FX1RPLAorKwkJQ1VSVkVfVE8sCisrCQlDTE9TRSwKKysJ CVJFTF9NT1ZFX1RPLAorKwkJUkVMX0xJTkVfVE8sCisrCQlSRUxfQ1VSVkVfVE8KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfREVCVUdfTk9QXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waWNrX2RlYnVnX2ZsYWdf Z2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBQaWNrRGVidWdGbGFnIHsK KysJCVBJQ0tJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUElDS18iLCB0eXBlX2lkID0gImNsdXR0ZXJf cGlja19tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIGVudW0gUGlja01vZGUgeworKwkJTk9ORSwKKysJCVJFQUNUSVZFLAorKwkJQUxMCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExfQ0xJQ0tfVFlQRV8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gUG9pbnRlckExMXlEd2VsbENsaWNrVHlwZSB7CisrCQlOT05FLAorKwkJUFJJTUFSWSwK KysJCVNFQ09OREFSWSwKKysJCU1JRERMRSwKKysJCURPVUJMRSwKKysJCURSQUcKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfQTExWV9EV0VMTF9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50 ZXJfYTExeV9kd2VsbF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9p bnRlckExMXlEd2VsbERpcmVjdGlvbiB7CisrCQlOT05FLAorKwkJTEVGVCwKKysJCVJJR0hULAor KwkJVVAsCisrCQlET1dOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExfTU9ERV8iLCB0eXBl X2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gUG9pbnRlckExMXlEd2VsbE1vZGUgeworKwkJV0lORE9XLAorKwkJR0VTVFVS RQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2Ex MXlfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBQb2ludGVy QTExeUZsYWdzIHsKKysJCVNFQ09OREFSWV9DTElDS19FTkFCTEVELAorKwkJRFdFTExfRU5BQkxF RAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX1RJTUVPVVRfVFlQRV8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfcG9pbnRlcl9hMTF5X3RpbWVvdXRfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBQb2ludGVyQTExeVRpbWVvdXRUeXBlIHsKKysJCVNFQ09OREFSWV9DTElDSywKKysJCURXRUxM LAorKwkJR0VTVFVSRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9SRVBBSU5UX0ZMQUdTXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9yZXBhaW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gUmVwYWludEZsYWdzIHsKKysJ CVBSRV9QQUlOVCwKKysJCVBPU1RfUEFJTlQsCisrCQlRVUVVRV9SRURSQVdfT05fQURECisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX1JFUVVFU1RfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JlcXVlc3RfbW9kZV9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBlbnVt IFJlcXVlc3RNb2RlIHsKKysJCUhFSUdIVF9GT1JfV0lEVEgsCisrCQlXSURUSF9GT1JfSEVJR0hU LAorKwkJQ09OVEVOVF9TSVpFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9yb3RhdGVfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40Iild CisrCXB1YmxpYyBlbnVtIFJvdGF0ZUF4aXMgeworKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJ Wl9BWElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JPVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90 YXRlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMg ZW51bSBSb3RhdGVEaXJlY3Rpb24geworKwkJQ1csCisrCQlDQ1cKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf U0NBTElOR19GSUxURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjYWxpbmdfZmlsdGVyX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIFNj YWxpbmdGaWx0ZXIgeworKwkJTElORUFSLAorKwkJTkVBUkVTVCwKKysJCVRSSUxJTkVBUgorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9TQ1JPTExfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9kaXJlY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMg ZW51bSBTY3JvbGxEaXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJ R0hULAorKwkJU01PT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF9GSU5JU0hFRF8iLCB0eXBl X2lkID0gImNsdXR0ZXJfc2Nyb2xsX2ZpbmlzaF9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxh Z3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisrCXB1YmxpYyBlbnVtIFNjcm9sbEZp bmlzaEZsYWdzIHsKKysJCU5PTkUsCisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfU0NST0xMXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfbW9kZV9nZXRf dHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1 YmxpYyBlbnVtIFNjcm9sbE1vZGUgeworKwkJTk9ORSwKKysJCUhPUklaT05UQUxMWSwKKysJCVZF UlRJQ0FMTFksCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF9TT1VSQ0VfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9zb3VyY2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMjYiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsU291cmNlIHsKKysJCVVOS05P V04sCisrCQlXSEVFTCwKKysJCUZJTkdFUiwKKysJCUNPTlRJTlVPVVMKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl90eXBlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gU2hhZGVyVHlwZSB7CisrCQlW RVJURVhfU0hBREVSLAorKwkJRlJBR01FTlRfU0hBREVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NOQVBf RURHRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc25hcF9lZGdlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gU25hcEVkZ2UgeworKwkJVE9Q LAorKwkJUklHSFQsCisrCQlCT1RUT00sCisrCQlMRUZUCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NUQUdF X1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV9zdGF0ZV9nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gU3Rh Z2VTdGF0ZSB7CisrCQlBQ1RJVkFURUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQ09MT1JfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3N0YXRpY19jb2xvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIFN0YXRpY0NvbG9yIHsKKysJCVdISVRFLAorKwkJ QkxBQ0ssCisrCQlSRUQsCisrCQlEQVJLX1JFRCwKKysJCUdSRUVOLAorKwkJREFSS19HUkVFTiwK KysJCUJMVUUsCisrCQlEQVJLX0JMVUUsCisrCQlDWUFOLAorKwkJREFSS19DWUFOLAorKwkJTUFH RU5UQSwKKysJCURBUktfTUFHRU5UQSwKKysJCVlFTExPVywKKysJCURBUktfWUVMTE9XLAorKwkJ R1JBWSwKKysJCURBUktfR1JBWSwKKysJCUxJR0hUX0dSQVksCisrCQlCVVRURVIsCisrCQlCVVRU RVJfTElHSFQsCisrCQlCVVRURVJfREFSSywKKysJCU9SQU5HRSwKKysJCU9SQU5HRV9MSUdIVCwK KysJCU9SQU5HRV9EQVJLLAorKwkJQ0hPQ09MQVRFLAorKwkJQ0hPQ09MQVRFX0xJR0hULAorKwkJ Q0hPQ09MQVRFX0RBUkssCisrCQlDSEFNRUxFT04sCisrCQlDSEFNRUxFT05fTElHSFQsCisrCQlD SEFNRUxFT05fREFSSywKKysJCVNLWV9CTFVFLAorKwkJU0tZX0JMVUVfTElHSFQsCisrCQlTS1lf QkxVRV9EQVJLLAorKwkJUExVTSwKKysJCVBMVU1fTElHSFQsCisrCQlQTFVNX0RBUkssCisrCQlT Q0FSTEVUX1JFRCwKKysJCVNDQVJMRVRfUkVEX0xJR0hULAorKwkJU0NBUkxFVF9SRURfREFSSywK KysJCUFMVU1JTklVTV8xLAorKwkJQUxVTUlOSVVNXzIsCisrCQlBTFVNSU5JVU1fMywKKysJCUFM VU1JTklVTV80LAorKwkJQUxVTUlOSVVNXzUsCisrCQlBTFVNSU5JVU1fNiwKKysJCVRSQU5TUEFS RU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NURVBfTU9ERV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc3Rl cF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1 YmxpYyBlbnVtIFN0ZXBNb2RlIHsKKysJCVNUQVJULAorKwkJRU5ECisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X1NXSVBFX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc3dpcGVfZGlyZWN0aW9uX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlw dWJsaWMgZW51bSBTd2lwZURpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAor KwkJUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVF9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3RleHRfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJcHVibGljIGVudW0gVGV4dERpcmVjdGlvbiB7CisrCQlERUZBVUxULAorKwkJ TFRSLAorKwkJUlRMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RFWFRVUkVfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3RleHR1cmVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjAu NCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlRmxhZ3MgeworKwkJTk9ORSwKKysJCVJHQl9GTEFH X0JHUiwKKysJCVJHQl9GTEFHX1BSRU1VTFQsCisrCQlZVVZfRkxBR19ZVVYyCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX1RFWFRVUkVfUVVBTElUWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9xdWFs aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBlbnVtIFRleHR1 cmVRdWFsaXR5IHsKKysJCUxPVywKKysJCU1FRElVTSwKKysJCUhJR0gKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfVElNRUxJTkVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RpbWVsaW5lX2RpcmVjdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBlbnVtIFRp bWVsaW5lRGlyZWN0aW9uIHsKKysJCUZPUldBUkQsCisrCQlCQUNLV0FSRAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9UT1VDSFBBRF9HRVNUVVJFX1BIQVNFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90b3VjaHBh ZF9nZXN0dXJlX3BoYXNlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0 IildCisrCXB1YmxpYyBlbnVtIFRvdWNocGFkR2VzdHVyZVBoYXNlIHsKKysJCUJFR0lOLAorKwkJ VVBEQVRFLAorKwkJRU5ELAorKwkJQ0FOQ0VMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1VOSVRfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3VuaXRfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFVuaXRUeXBlIHsKKysJCVBJWEVMLAorKwkJRU0s CisrCQlNTSwKKysJCVBPSU5ULAorKwkJQ00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVklSVFVBTF9ERVZJ Q0VfVFlQRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdmlydHVhbF9kZXZpY2VfdHlwZV9nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFZpcnR1YWxEZXZpY2VUeXBlIHsKKysJ CU5PTkUsCisrCQlLRVlCT0FSRCwKKysJCVBPSU5URVIsCisrCQlUT1VDSFNDUkVFTgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9aT09NXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl96b29tX2F4aXNfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gWm9vbUF4 aXMgeworKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9J TUFHRV9FUlJPUl9JTlZBTElEXyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlw dWJsaWMgZXJyb3Jkb21haW4gSW1hZ2VFcnJvciB7CisrCQlEQVRBOworKwkJcHVibGljIHN0YXRp YyBHTGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JJUFRfRVJST1JfSU5W QUxJRF8iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZXJyb3Jkb21h aW4gU2NyaXB0RXJyb3IgeworKwkJVFlQRV9GVU5DVElPTiwKKysJCVBST1BFUlRZLAorKwkJVkFM VUU7CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0g MS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGljIGRlbGVnYXRlIENs dXR0ZXIuQWN0b3IgQWN0b3JDcmVhdGVDaGlsZEZ1bmMgKEdMaWIuT2JqZWN0IGl0ZW0pOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9w b3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgZGVsZWdhdGUgZG91YmxlIEFs cGhhRnVuYyAoQ2x1dHRlci5BbHBoYSBhbHBoYSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDQuOSldCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgQmluZGluZ0FjdGlvbkZ1 bmMgKEdMaWIuT2JqZWN0IGdvYmplY3QsIHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFs LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlwdWJs aWMgZGVsZWdhdGUgdm9pZCBDYWxsYmFjayAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190YXJnZXQgPSBm YWxzZSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIEVtaXRJbnB1dERldmljZUV2ZW50IChDbHV0 dGVyLkV2ZW50IGV2ZW50LCBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEu OSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29s IEV2ZW50RmlsdGVyRnVuYyAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgUGF0aENh bGxiYWNrIChDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFByb2dyZXNzRnVuYyAo R0xpYi5WYWx1ZSBhLCBHTGliLlZhbHVlIGIsIGRvdWJsZSBwcm9ncmVzcywgR0xpYi5WYWx1ZSBy ZXR2YWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBpbnN0YW5jZV9wb3MgPSA2LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1 YmxpYyBkZWxlZ2F0ZSB2b2lkIFNjcmlwdENvbm5lY3RGdW5jIChDbHV0dGVyLlNjcmlwdCBzY3Jp cHQsIEdMaWIuT2JqZWN0IG9iamVjdCwgc3RyaW5nIHNpZ25hbF9uYW1lLCBzdHJpbmcgaGFuZGxl cl9uYW1lLCBHTGliLk9iamVjdCBjb25uZWN0X29iamVjdCwgR0xpYi5Db25uZWN0RmxhZ3MgZmxh Z3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBp bnN0YW5jZV9wb3MgPSAzLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJs aWMgZGVsZWdhdGUgZG91YmxlIFRpbWVsaW5lUHJvZ3Jlc3NGdW5jIChDbHV0dGVyLlRpbWVsaW5l IHRpbWVsaW5lLCBkb3VibGUgZWxhcHNlZCwgZG91YmxlIHRvdGFsKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9DT0dM IildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjb25zdCBzdHJpbmcgQ09HTDsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9DVVJSRU5UX1RJTUUiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJs aWMgY29uc3QgaW50IENVUlJFTlRfVElNRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9GTEFWT1VSIildCisrCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2Ug PSAiMC40IildCisrCXB1YmxpYyBjb25zdCBzdHJpbmcgRkxBVk9VUjsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9QQVRI X1JFTEFUSVZFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUEFUSF9SRUxBVElWRTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9QUklPUklUWV9SRURSQVciKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJs aWMgY29uc3QgaW50IFBSSU9SSVRZX1JFRFJBVzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBiYXNlX2luaXQg KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY2Fpcm9f Y2xlYXIgKENhaXJvLkNvbnRleHQgY3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgY2Fpcm9fc2V0X3NvdXJjZV9jb2xvciAoQ2Fpcm8uQ29udGV4dCBjciwg Q2x1dHRlci5Db2xvciBjb2xvcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMg c3RhdGljIGJvb2wgY2hlY2tfd2luZG93aW5nX2JhY2tlbmQgKHN0cmluZyBiYWNrZW5kX3R5cGUp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIGNvbG9yX2Zyb21faGxzIChvdXQgQ2x1dHRlci5Db2xvciBjb2xv ciwgZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24pOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIGNvbG9yX2Zyb21fcGl4ZWwgKG91dCBDbHV0dGVyLkNvbG9yIGNvbG9yLCB1aW50 MzIgcGl4ZWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wg Y29sb3JfZnJvbV9zdHJpbmcgKG91dCBDbHV0dGVyLkNvbG9yIGNvbG9yLCBzdHJpbmcgc3RyKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIu Q29sb3I/IGNvbG9yX2dldF9zdGF0aWMgKENsdXR0ZXIuU3RhdGljQ29sb3IgY29sb3IpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRpc2FibGVfYWNjZXNz aWJpbGl0eSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyB2b2lk IGRvX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4Iild CisrCXB1YmxpYyBzdGF0aWMgdWludCBldmVudF9hZGRfZmlsdGVyIChDbHV0dGVyLlN0YWdlPyBz dGFnZSwgW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMi4yLCBkZXN0cm95X25vdGlmeV9w b3MgPSAyLjEpXSBvd25lZCBDbHV0dGVyLkV2ZW50RmlsdGVyRnVuYyBmdW5jKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkV2ZW50IGV2ZW50X2dldCAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuRXZlbnQgZXZlbnRfcGVlayAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBldmVudF9yZW1vdmVfZmlsdGVyICh1aW50IGlkKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGV2ZW50c19wZW5kaW5nICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X2FjY2Vzc2liaWxp dHlfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0YXRpYyB1 bm93bmVkIENsdXR0ZXIuRXZlbnQgZ2V0X2N1cnJlbnRfZXZlbnQgKCk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIGdldF9jdXJyZW50X2V2ZW50X3RpbWUg KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0 dGVyLkJhY2tlbmQgZ2V0X2RlZmF1bHRfYmFja2VuZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJcHVibGljIHN0YXRpYyB1aW50IGdldF9kZWZhdWx0X2ZyYW1lX3JhdGUgKCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5UZXh0RGlyZWN0aW9u IGdldF9kZWZhdWx0X3RleHRfZGlyZWN0aW9uICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RhdGljIHVub3duZWQgUGFuZ28uRm9udE1hcCBnZXRfZm9udF9tYXAgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5PcHRpb25Hcm91cCBn ZXRfb3B0aW9uX2dyb3VwICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3Rh dGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91cF93aXRob3V0X2luaXQgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcgZ2V0 X3NjcmlwdF9pZCAoR0xpYi5PYmplY3QgZ29iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuSW5p dEVycm9yIGluaXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gImFyZ2MiLCBhcnJheV9s ZW5ndGhfcG9zID0gMC41KV0gcmVmIHVub3duZWQgc3RyaW5nW10/IGFyZ3YpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuMiIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuSW5pdEVycm9yIGluaXRfd2l0 aF9hcmdzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJhcmdjIiwgYXJyYXlfbGVuZ3Ro X3BvcyA9IDAuNSldIHJlZiB1bm93bmVkIHN0cmluZ1tdPyBhcmd2LCBzdHJpbmc/IHBhcmFtZXRl cl9zdHJpbmcsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHTGliLk9wdGlvbkVudHJ5 W10/IGVudHJpZXMsIHN0cmluZz8gdHJhbnNsYXRpb25fZG9tYWluKSB0aHJvd3MgR0xpYi5FcnJv cjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CXB1YmxpYyBzdGF0aWMgdWludDMyIGtleXN5bV90b191bmljb2RlICh1aW50IGtleXZhbCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgbWFpbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgaW50IG1haW5fbGV2ZWwgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgbWFpbl9xdWl0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9jdXN0b21f YmFja2VuZF9mdW5jICh2b2lkKiBmdW5jKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBzdGF0aWMgdWludCB1bmljb2RlX3RvX2tleXN5bSAodWludDMyIHdjKTsKKyt9CitkaWZm IC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhIGIvdmFwaS9tdXR0ZXItY29n bC02LWN1c3RvbS52YWxhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLmEy YzEwNjQ1CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZh bGEKK0BAIC0wLDAgKzEsMTI1IEBACisrbmFtZXNwYWNlIENvZ2wgeworKwlbQ29tcGFjdF0KKysJ W0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCXB1YmxpYyBjbGFzcyBCaXRtYXA6IEhh bmRsZSB7CisrCQlwdWJsaWMgc3RhdGljIEJpdG1hcCBuZXdfZnJvbV9maWxlIChzdHJpbmcgZmls ZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUg KGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNzIEJ1ZmZlcjogSGFuZGxlIHsK KysJCXB1YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKHNp emVfdCBvZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5cGUgPSAic2l6ZV90IildIHVpbnQ4 W10gZGF0YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsKKysJfQorKworKwlbQ0NvZGUgKGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsKKysJCXB1YmxpYyBD b2xvci5mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBh bHBoYSk7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4s IHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2Rl IChyZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29n bF9oYW5kbGVfdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIEhhbmRsZSB7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfaXNfYml0bWFwIildCisrCQlwdWJsaWMgYm9vbCBpc19iaXRtYXAgKCk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19i dWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfbWF0ZXJpYWwiKV0KKysJCXB1 YmxpYyBib29sIGlzX21hdGVyaWFsICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX29m ZnNjcmVlbiIpXQorKwkJcHVibGljIGJvb2wgaXNfb2Zmc2NyZWVuICgpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjb2dsX2lzX3BpeGVsX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfcGl4ZWxf YnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3Byb2dyYW0iKV0KKysJCXB1 YmxpYyBib29sIGlzX3Byb2dyYW0gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfc2hh ZGVyIildCisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0g ImNvZ2xfaXNfdGV4dHVyZSIpXQorKwkJcHVibGljIGJvb2wgaXNfdGV4dHVyZSAoKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY29nbF9pc192ZXJ0ZXhfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBp c192ZXJ0ZXhfYnVmZmVyICgpOworKwl9CisrCisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29nbF9wYXRoX2NvcHkiKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBAbmV3 ICgpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGl4ZWxCdWZmZXI6IEhh bmRsZSB7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIgKHVpbnQgc2l6ZSk7CisrCQlwdWJsaWMgUGl4 ZWxCdWZmZXIuZm9yX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9y bWF0IGZvcm1hdCwgdWludCBzdHJpZGUpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUg KGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3JlZiIs IHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3Mg UHJvZ3JhbTogSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfcHJvZ3Jh bSIsIHR5cGUgPSAiQ29nbEhhbmRsZSoiLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHVibGljIFByb2dyYW0gKCk7CisrCQlwdWJsaWMgdm9pZCBhdHRhY2hfc2hhZGVyIChD b2dsLlNoYWRlciBzaGFkZXJfaGFuZGxlKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3VuaWZvcm1fbG9j YXRpb24gKHN0cmluZyB1bmlmb3JtX25hbWUpOworKwkJcHVibGljIHZvaWQgbGluayAoKTsKKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFmIChpbnQgdW5pZm9ybV9ubywgZmxvYXQgdmFs dWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fMWkgKGludCB1bmlmb3JtX25vLCBp bnQgdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fZmxvYXQgKGludCB1bmlm b3JtX25vLCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRb XSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9pbnQgKGludCB1bmlmb3Jt X25vLCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gaW50W10gdmFs dWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fbWF0cml4IChpbnQgdW5pZm9ybV9u bywgaW50IHNpemUsIGJvb2wgdHJhbnNwb3NlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAy LjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIHVzZSAoKTsKKysJfQorKworKwlb Q29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0g ImNvZ2xfc2hhZGVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfc2hhZGVyX3VucmVmIild CisrCXB1YmxpYyBjbGFzcyBTaGFkZXI6IEhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNv Z2xfY3JlYXRlX3NoYWRlciIsIHR5cGUgPSAiQ29nbEhhbmRsZSoiLCBoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNoYWRlciAoQ29nbC5TaGFkZXJUeXBlIHNoYWRl cl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGNvbXBpbGUgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdl dF9pbmZvX2xvZyAoKTsKKysJCXB1YmxpYyBDb2dsLlNoYWRlclR5cGUgZ2V0X3R5cGUgKCk7Cisr CQlwdWJsaWMgYm9vbCBpc19jb21waWxlZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNvdXJjZSAoc3Ry aW5nIHNvdXJjZSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29n bEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfcmVmIiwgdW5yZWZf ZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVmIildCisrCXB1YmxpYyBjbGFzcyBW ZXJ0ZXhCdWZmZXI6IEhhbmRsZSB7CisrCQlbQ0NvZGUgKHR5cGUgPSAiQ29nbEhhbmRsZSoiLCBo YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFZlcnRleEJ1ZmZlciAo dWludCBuX3ZlcnRpY2VzKTsKKysJCXB1YmxpYyB2b2lkIGFkZCAoc3RyaW5nIGF0dHJpYnV0ZV9u YW1lLCB1Y2hhciBuX2NvbXBvbmVudHMsIENvZ2wuQXR0cmlidXRlVHlwZSB0eXBlLCBib29sIG5v cm1hbGl6ZWQsIHVpbnQxNiBzdHJpZGUsIHZvaWQqIHBvaW50ZXIpOworKwkJcHVibGljIHZvaWQg ZGVsZXRlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZGlzYWJsZSAo c3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRyYXcgKENvZ2wuVmVydGlj ZXNNb2RlIG1vZGUsIGludCBmaXJzdCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGRyYXdf ZWxlbWVudHMgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIFZlcnRleEJ1ZmZlckluZGljZXMgaW5k aWNlcywgaW50IG1pbl9pbmRleCwgaW50IG1heF9pbmRleCwgaW50IGluZGljZXNfb2Zmc2V0LCBp bnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZW5hYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUp OworKwkJcHVibGljIHVpbnQgZ2V0X25fdmVydGljZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzdWJt aXQgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRs ZSIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVySW5kaWNlczogSGFuZGxlIHsKKysJCXB1 YmxpYyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIChDb2dsLkluZGljZXNUeXBlIGluZGljZXNfdHlwZSwg dm9pZCogaW5kaWNlc19hcnJheSwgaW50IGluZGljZXNfbGVuKTsKKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMgZ2V0X2Zvcl9xdWFkcyAodWludCBuX2lu ZGljZXMpOworKwkJcHVibGljIENvZ2wuSW5kaWNlc1R5cGUgZ2V0X3R5cGUgKCk7CisrCX0KKysK KysJW0NDb2RlICh0eXBlX2lkID0gIkNPR0xfVFlQRV9NQVRSSVgiLCBjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4IHsKKysJCVtDQ29kZSAo Y25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9mcm9tX2FycmF5IiwgYXJyYXlfbGVuZ3RoID0gZmFs c2UsIGFycmF5X251bGxfdGVybWluYXRlZCA9IGZhbHNlKV0KKysJCXB1YmxpYyBNYXRyaXguZnJv bV9hcnJheSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gYXJyYXkpOwor KwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9pbml0X2lkZW50aXR5IildCisrCQlwdWJs aWMgTWF0cml4LmlkZW50aXR5ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9t dWx0aXBseSIpXQorKwkJcHVibGljIE1hdHJpeC5tdWx0aXBseSAoQ29nbC5NYXRyaXggYSwgQ29n bC5NYXRyaXggYik7CisrCX0KKysKKysJW1NpbXBsZVR5cGVdCisrCVtHSVIgKG5hbWUgPSAiQm9v bCIpXQorKwlbQm9vbGVhblR5cGVdCisrCXB1YmxpYyBzdHJ1Y3QgQm9vbCA6IGJvb2wgeworKwl9 CisrCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5DYWxsYmFjayBnZXRfcHJvY19hZGRyZXNzKHN0cmlu ZyBzKTsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LmRlcHMgYi92YXBpL211 dHRlci1jb2dsLTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi45 OGNjYWM1YgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY29nbC02LmRlcHMKK0BA IC0wLDAgKzEgQEAKKytwYW5nbworZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNvZ2wtNi52YXBp IGIvdmFwaS9tdXR0ZXItY29nbC02LnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAw MDAwMDAwMC4uYzlhYjVkNTcKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNvZ2wt Ni52YXBpCitAQCAtMCwwICsxLDEwNzcgQEAKKysvKiBtdXR0ZXItY29nbC02LnZhcGkgZ2VuZXJh dGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJlZml4ID0g IkNvZ2wiLCBnaXJfbmFtZXNwYWNlID0gIkNvZ2wiLCBnaXJfdmVyc2lvbiA9ICI2IiwgbG93ZXJf Y2FzZV9jcHJlZml4ID0gImNvZ2xfIildCisrbmFtZXNwYWNlIENvZ2wgeworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgdHlw ZV9pZCA9ICJjb2dsX2JpdG1hcF9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1Ymxp YyBjbGFzcyBCaXRtYXAgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBl cnJvcl9xdWFyayAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNvZ2xCaXRtYXAqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgQml0bWFwLmZyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5QaXhl bEZvcm1hdCBnZXRfZm9ybWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBpbnQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgaW50IGdldF9yb3dzdHJpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X3NpemVfZnJvbV9maWxlIChzdHJpbmcg ZmlsZW5hbWUsIG91dCBpbnQgd2lkdGgsIG91dCBpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBz dGF0aWMgQ29nbC5CaXRtYXAgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3Mg QnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIHVpbnQgZ2V0X3NpemUgKCk7CisrCQlw dWJsaWMgYm9vbCBzZXRfZGF0YSAoc2l6ZV90IG9mZnNldCwgW0NDb2RlIChhcnJheV9sZW5ndGhf dHlwZSA9ICJzaXplX3QiKV0gdWludDhbXSBkYXRhKTsKKysJCXB1YmxpYyB2b2lkIHVubWFwICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVf aWQgPSAiY29nbF9jb250ZXh0X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQ29udGV4 dCA6IENvZ2wuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBDb250ZXh0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5Iiwg ZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xfZnJhbWVfY2xv c3VyZV9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE0IildCisrCXB1YmxpYyBjbGFzcyBGcmFtZUNsb3N1cmUgeworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRs ZV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRsZV91bnJlZiIpXQorKwlbQ29tcGFj dF0KKysJcHVibGljIGNsYXNzIEhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNf Yml0bWFwIildCisrCQlwdWJsaWMgYm9vbCBpc19iaXRtYXAgKCk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNvZ2xfaXNfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19idWZmZXIgKCk7CisrCQlb Q0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfbWF0ZXJpYWwiKV0KKysJCXB1YmxpYyBib29sIGlzX21h dGVyaWFsICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX29mZnNjcmVlbiIpXQorKwkJ cHVibGljIGJvb2wgaXNfb2Zmc2NyZWVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lz X3BpeGVsX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfcGl4ZWxfYnVmZmVyICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3Byb2dyYW0iKV0KKysJCXB1YmxpYyBib29sIGlzX3By b2dyYW0gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfc2hhZGVyIildCisrCQlwdWJs aWMgYm9vbCBpc19zaGFkZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdGV4dHVy ZSIpXQorKwkJcHVibGljIGJvb2wgaXNfdGV4dHVyZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y29nbF9pc192ZXJ0ZXhfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc192ZXJ0ZXhfYnVmZmVy ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNv cHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2Zy ZWUiLCB0eXBlX2lkID0gImNvZ2xfbWF0ZXJpYWxfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3Rd CisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIE1hdGVyaWFsICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV90ZXN0X2Z1bmN0aW9uIChDb2dsLk1hdGVy aWFsQWxwaGFGdW5jIGFscGhhX2Z1bmMsIGZsb2F0IGFscGhhX3JlZmVyZW5jZSk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2JsZW5kIChzdHJpbmcgYmxlbmRfc3RyaW5n KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYmxlbmRfY29uc3RhbnQgKENvZ2wuQ29sb3IgY29uc3RhbnRfY29sb3IpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ29nbC5Db2xvciBjb2xvcik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIs IHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yNHViICh1aW50OCByZWQs IHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuSGFuZGxl IHRleHR1cmUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9sYXllcl9j b21iaW5lIChpbnQgbGF5ZXJfaW5kZXgsIHN0cmluZyBibGVuZF9zdHJpbmcpIHRocm93cyBHTGli LkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9jb21i aW5lX2NvbnN0YW50IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuQ29sb3IgY29uc3RhbnQpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9maWx0ZXJzIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wu TWF0ZXJpYWxGaWx0ZXIgbWluX2ZpbHRlciwgQ29nbC5NYXRlcmlhbEZpbHRlciBtYWdfZmlsdGVy KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjE2IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfbWF0cml4IChpbnQgbGF5ZXJfaW5kZXgs IENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wg c2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2luZGV4LCBi b29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3BvaW50X3NpemUgKGZsb2F0IHBvaW50X3NpemUpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VyX3Byb2dyYW0gKENvZ2wuSGFuZGxlIHByb2dy YW0pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIE1hdGVyaWFs TGF5ZXIgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IHR5cGVfaWQgPSAiY29nbF9vYmplY3RfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFj dCBjbGFzcyBPYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIE9iamVjdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfb2Zmc2NyZWVuX2dldF9ndHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgT2Zmc2NyZWVuIDogQ29nbC5PYmplY3QsIENvZ2wuRnJh bWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIE9mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgT2Zmc2NyZWVuLnRvX3RleHR1cmUgKENvZ2wu VGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXB1YmxpYyBPZmZzY3JlZW4ud2l0aF90ZXh0dXJlIChDb2dsLlRleHR1cmUgdGV4 dHVyZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg dHlwZV9pZCA9ICJjb2dsX29uc2NyZWVuX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg T25zY3JlZW4gOiBDb2dsLk9iamVjdCwgQ29nbC5GcmFtZWJ1ZmZlciB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgT25zY3JlZW4gKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIENvZ2wuT25zY3JlZW5E aXJ0eUNsb3N1cmUgYWRkX2RpcnR5X2NhbGxiYWNrIChbQ0NvZGUgKGRlbGVnYXRlX3RhcmdldF9w b3MgPSAxLjUpXSBDb2dsLk9uc2NyZWVuRGlydHlDYWxsYmFjayBjYWxsYmFjaywgQ29nbC5Vc2Vy RGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgQ29nbC5PbnNjcmVlblJlc2l6ZUNsb3N1cmUgYWRkX3Jlc2l6ZV9jYWxs YmFjayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMS41KV0gQ29nbC5PbnNjcmVlblJl c2l6ZUNhbGxiYWNrIGNhbGxiYWNrLCBDb2dsLlVzZXJEYXRhRGVzdHJveUNhbGxiYWNrPyBkZXN0 cm95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgaW50IGdldF9i dWZmZXJfYWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBp bnQ2NCBnZXRfZnJhbWVfY291bnRlciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyBib29sIGdldF9yZXNpemFibGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgdm9pZCBoaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTYiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9kaXJ0eV9jYWxsYmFjayAoQ29nbC5PbnNjcmVl bkRpcnR5Q2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisr CQlwdWJsaWMgdm9pZCByZW1vdmVfZnJhbWVfY2FsbGJhY2sgKENvZ2wuRnJhbWVDbG9zdXJlIGNs b3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgcmVt b3ZlX3Jlc2l6ZV9jYWxsYmFjayAoQ29nbC5PbnNjcmVlblJlc2l6ZUNsb3N1cmUgY2xvc3VyZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVzaXph YmxlIChib29sIHJlc2l6YWJsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdm9pZCBzaG93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHN3YXBfYnVmZmVycyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2Iild CisrCQlwdWJsaWMgdm9pZCBzd2FwX2J1ZmZlcnNfd2l0aF9kYW1hZ2UgKGludCByZWN0YW5nbGVz LCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzd2FwX3JlZ2lvbiAoaW50IHJlY3RhbmdsZXMsIGludCBuX3JlY3RhbmdsZXMp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlf ZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUi LCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fZGlydHlfY2xvc3VyZV9nZXRfZ3R5cGUgKCkiKV0K KysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBjbGFz cyBPbnNjcmVlbkRpcnR5Q2xvc3VyZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1 bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9vbnNjcmVlbl9yZXNpemVf Y2xvc3VyZV9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuUmVzaXplQ2xvc3VyZSB7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9 ICJjb2dsX3BhdGhfY29weSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBhdGggewor KwkJcHVibGljIHN0YXRpYyB2b2lkIEBuZXcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX3BpcGVsaW5lX2dldF9ndHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUGlwZWxpbmUgOiBDb2dsLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgUGlwZWxpbmUgKENvZ2wuQ29udGV4dCBjb250ZXh0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lIGNvcHkg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBmb3JlYWNo X2xheWVyIChDb2dsLlBpcGVsaW5lTGF5ZXJDYWxsYmFjayBjYWxsYmFjayk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUFscGhhRnVuYyBnZXRf YWxwaGFfdGVzdF9mdW5jdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFfdGVzdF9yZWZlcmVuY2UgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUN1bGxGYWNl TW9kZSBnZXRfY3VsbF9mYWNlX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgQ29nbC5XaW5kaW5nIGdldF9mcm9udF9mYWNlX3dpbmRpbmcgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVGaWx0ZXIg Z2V0X2xheWVyX21hZ19maWx0ZXIgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVGaWx0ZXIgZ2V0X2xheWVyX21p bl9maWx0ZXIgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgYm9vbCBnZXRfbGF5ZXJfcG9pbnRfc3ByaXRlX2Nvb3Jkc19lbmFibGVkIChp bnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfbGF5ZXJfdGV4dHVyZSAoaW50IGxheWVyX2luZGV4 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5l V3JhcE1vZGUgZ2V0X2xheWVyX3dyYXBfbW9kZV9zIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBn ZXRfbGF5ZXJfd3JhcF9tb2RlX3QgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgaW50IGdldF9uX2xheWVycyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIGdldF9wZXJfdmVydGV4X3BvaW50X3Np emUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0 X3BvaW50X3NpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg aW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF91 c2VyX3Byb2dyYW0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgcmVtb3ZlX2xheWVyIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX3Rlc3RfZnVuY3Rpb24gKENvZ2wu UGlwZWxpbmVBbHBoYUZ1bmMgYWxwaGFfZnVuYywgZmxvYXQgYWxwaGFfcmVmZXJlbmNlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9ibGVuZCAoc3Ry aW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmxlbmRfY29uc3RhbnQgKENvZ2wuQ29sb3Ig Y29uc3RhbnRfY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2NvbG9yIChDb2dsLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjRmIChmbG9hdCByZWQsIGZsb2F0IGdy ZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4s IHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jdWxsX2ZhY2VfbW9kZSAoQ29nbC5QaXBlbGluZUN1bGxGYWNl TW9kZSBjdWxsX2ZhY2VfbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdm9pZCBzZXRfZnJvbnRfZmFjZV93aW5kaW5nIChDb2dsLldpbmRpbmcgZnJvbnRfd2lu ZGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRf bGF5ZXJfY29tYmluZSAoaW50IGxheWVyX2luZGV4LCBzdHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJv d3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9sYXllcl9jb21iaW5lX2NvbnN0YW50IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuQ29s b3IgY29uc3RhbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9sYXllcl9maWx0ZXJzIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVGaWx0 ZXIgbWluX2ZpbHRlciwgQ29nbC5QaXBlbGluZUZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfbWF0cml4IChp bnQgbGF5ZXJfaW5kZXgsIENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX251bGxfdGV4dHVyZSAoaW50IGxh eWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29s IHNldF9sYXllcl9wb2ludF9zcHJpdGVfY29vcmRzX2VuYWJsZWQgKGludCBsYXllcl9pbmRleCwg Ym9vbCBlbmFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHZvaWQgc2V0X2xheWVy X3RleHR1cmUgKGludCBsYXllcl9pbmRleCwgQ29nbC5UZXh0dXJlIHRleHR1cmUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX3dyYXBfbW9k ZSAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfd3JhcF9tb2Rl X3MgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX3dyYXBfbW9k ZV90IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9wZXJfdmVydGV4X3Bv aW50X3NpemUgKGJvb2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludF9zaXplIChmbG9hdCBwb2lu dF9zaXplKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF91bmlmb3JtXzFmIChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgZmxvYXQgdmFsdWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fMWkgKGlu dCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fZmxvYXQgKGludCB1bmlmb3JtX2xvY2F0 aW9uLCBpbnQgbl9jb21wb25lbnRzLCBpbnQgY291bnQsIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3JtX2ludCAoaW50 IHVuaWZvcm1fbG9jYXRpb24sIGludCBuX2NvbXBvbmVudHMsIGludCBjb3VudCwgaW50IHZhbHVl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlm b3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGludCBkaW1lbnNpb25zLCBpbnQgY291 bnQsIGJvb2wgdHJhbnNwb3NlLCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlcl9wcm9ncmFtIChDb2dsLkhhbmRsZSBwcm9n cmFtKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaXhlbEJ1ZmZlciA6IENvZ2wuSGFuZGxlIHsK KysJCXB1YmxpYyBQaXhlbEJ1ZmZlciAodWludCBzaXplKTsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZl ci5mb3Jfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9y bWF0LCB1aW50IHN0cmlkZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3By b2dyYW1fcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3VucmVmIildCisrCVtD b21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUHJvZ3JhbSA6IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfcHJvZ3JhbSIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJcHVibGljIFByb2dyYW0gKCk7Cisr CQlwdWJsaWMgdm9pZCBhdHRhY2hfc2hhZGVyIChDb2dsLlNoYWRlciBzaGFkZXJfaGFuZGxlKTsK KysJCXB1YmxpYyBpbnQgZ2V0X3VuaWZvcm1fbG9jYXRpb24gKHN0cmluZyB1bmlmb3JtX25hbWUp OworKwkJcHVibGljIHZvaWQgbGluayAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3Jt XzFmIChpbnQgdW5pZm9ybV9ubywgZmxvYXQgdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lk IHVuaWZvcm1fMWkgKGludCB1bmlmb3JtX25vLCBpbnQgdmFsdWUpOworKwkJcHVibGljIHN0YXRp YyB2b2lkIHVuaWZvcm1fZmxvYXQgKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgW0NDb2RlIChh cnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgdW5pZm9ybV9pbnQgKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJh eV9sZW5ndGhfcG9zID0gMi45KV0gaW50W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lk IHVuaWZvcm1fbWF0cml4IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIGJvb2wgdHJhbnNwb3Nl LCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1 YmxpYyB2b2lkIHVzZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfc2hh ZGVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfc2hhZGVyX3VucmVmIildCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyIDogQ29nbC5IYW5kbGUgeworKwkJW0NDb2RlIChj bmFtZSA9ICJjb2dsX2NyZWF0ZV9zaGFkZXIiLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1YmxpYyBTaGFkZXIgKENvZ2wuU2hhZGVy VHlwZSBzaGFkZXJfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBjb21waWxlICgpOworKwkJcHVibGlj IHN0cmluZyBnZXRfaW5mb19sb2cgKCk7CisrCQlwdWJsaWMgQ29nbC5TaGFkZXJUeXBlIGdldF90 eXBlICgpOworKwkJcHVibGljIGJvb2wgaXNfY29tcGlsZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBz b3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9ICJ0ZXh0dXJlXzJkIiwgdHlwZV9p ZCA9ICJjb2dsX3RleHR1cmVfMmRfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUZXh0 dXJlMkQgOiBDb2dsLk9iamVjdCwgQ29nbC5UZXh0dXJlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBUZXh0dXJlMkQgKCk7CisrCQlw dWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0ZXJuYWxfYWxsb2NfZmluaXNoICh2b2lkKiB1c2VyX2Rh dGEsIEdMaWIuRGVzdHJveU5vdGlmeSBkZXN0cm95KTsKKysJCXB1YmxpYyB2b2lkIGVnbF9pbWFn ZV9leHRlcm5hbF9iaW5kICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIFRleHR1cmUy RC5mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAidGV4dHVy ZV8yZF9zbGljZWQiLCB0eXBlX2lkID0gImNvZ2xfdGV4dHVyZV8yZF9zbGljZWRfZ2V0X2d0eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlMkRTbGljZWQgOiBDb2dsLk9iamVjdCwgQ29n bC5UZXh0dXJlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBUZXh0dXJlMkRTbGljZWQgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJ cHVibGljIFRleHR1cmUyRFNsaWNlZC5mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYm1wLCBpbnQg bWF4X3dhc3RlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1 ZmZlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfdW5yZWYiKV0K KysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXIgOiBDb2dsLkhhbmRsZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2ds SGFuZGxlKiIpXQorKwkJcHVibGljIFZlcnRleEJ1ZmZlciAodWludCBuX3ZlcnRpY2VzKTsKKysJ CXB1YmxpYyB2b2lkIGFkZCAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lLCB1Y2hhciBuX2NvbXBvbmVu dHMsIENvZ2wuQXR0cmlidXRlVHlwZSB0eXBlLCBib29sIG5vcm1hbGl6ZWQsIHVpbnQxNiBzdHJp ZGUsIHZvaWQqIHBvaW50ZXIpOworKwkJcHVibGljIHZvaWQgQGRlbGV0ZSAoc3RyaW5nIGF0dHJp YnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFt ZSk7CisrCQlwdWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBpbnQgZmly c3QsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3X2VsZW1lbnRzIChDb2dsLlZlcnRp Y2VzTW9kZSBtb2RlLCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMgaW5kaWNlcywgaW50IG1pbl9p bmRleCwgaW50IG1heF9pbmRleCwgaW50IGluZGljZXNfb2Zmc2V0LCBpbnQgY291bnQpOworKwkJ cHVibGljIHZvaWQgZW5hYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHVp bnQgZ2V0X25fdmVydGljZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzdWJtaXQgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhh bmRsZSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZlckluZGljZXMg OiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgVmVydGV4QnVmZmVySW5kaWNlcyAoQ29nbC5JbmRp Y2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQqIGluZGljZXNfYXJyYXksIGludCBpbmRpY2VzX2xl bik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ29nbC5WZXJ0ZXhCdWZmZXJJbmRpY2VzIGdl dF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2VzKTsKKysJCXB1YmxpYyBDb2dsLkluZGljZXNUeXBl IGdldF90eXBlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIHR5cGVfaWQgPSAiY29nbF9mcmFtZWJ1ZmZlcl9nZXRfZ3R5cGUgKCkiKV0KKysJcHVi bGljIGludGVyZmFjZSBGcmFtZWJ1ZmZlciA6IENvZ2wuT2JqZWN0IHsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGFsbG9jYXRlICgpIHRocm93cyBHTGliLkVy cm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXIg KHVsb25nIGJ1ZmZlcnMsIENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXI0ZiAodWxvbmcgYnVmZmVycywgZmxvYXQgcmVk LCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZGlzY2FyZF9idWZmZXJzICh1bG9uZyBidWZm ZXJzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3 X211bHRpdGV4dHVyZWRfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBmbG9hdCB4 XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIFtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXSBmbG9hdFtdIHRleF9jb29yZHMsIGludCB0ZXhfY29vcmRzX2xlbik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19yZWN0YW5nbGUg KENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIs IGZsb2F0IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgZHJhd19yZWN0YW5nbGVzIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBjb29yZGluYXRlcywgdWludCBuX3JlY3RhbmdsZXMp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfdGV4 dHVyZWRfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBmbG9hdCB4XzEsIGZsb2F0 IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIGZsb2F0IHNfMSwgZmxvYXQgdF8xLCBmbG9hdCBz XzIsIGZsb2F0IHRfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgZHJhd190ZXh0dXJlZF9yZWN0YW5nbGVzIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBb Q0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBjb29yZGluYXRlcywgdWludCBu X3JlY3RhbmdsZXMpOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3JfcXVhcmsgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZmluaXNoICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGZydXN0dW0gKGZs b2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQgel9u ZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgaW50IGdldF9hbHBoYV9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIGludCBnZXRfYmx1ZV9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5Db250ZXh0IGdldF9jb250ZXh0ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBnZXRfZGVwdGhfYml0cyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZGVw dGhfd3JpdGVfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBib29sIGdldF9kaXRoZXJfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2dyZWVuX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgYm9v bCBnZXRfaXNfc3RlcmVvICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBDb2dsLk1hdHJpeCBnZXRfbW9kZWx2aWV3X21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5NYXRyaXggZ2V0X3Byb2plY3Rpb25fbWF0 cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRf cmVkX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGlu dCBnZXRfc2FtcGxlc19wZXJfcGl4ZWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMCIp XQorKwkJcHVibGljIENvZ2wuU3RlcmVvTW9kZSBnZXRfc3RlcmVvX21vZGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdmlld3BvcnQ0ZnYgKFtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBvdXQgdW5vd25lZCBmbG9hdCB2aWV3cG9ydFs0 XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Zp ZXdwb3J0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfdmlld3BvcnRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X3kgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF93aWR0aCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpZGVudGl0eV9tYXRyaXgg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgb3J0aG9n cmFwaGljIChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIGZsb2F0 IG5lYXIsIGZsb2F0IGZhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgcGVyc3BlY3RpdmUgKGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpf bmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHBvcF9jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHBvcF9tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgcHVzaF9tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9yZWN0YW5nbGVfY2xpcCAoZmxvYXQgeF8xLCBm bG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCXB1YmxpYyB2b2lkIHB1c2hfcmVn aW9uX2NsaXAgKENhaXJvLlJlZ2lvbiByZWdpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1c2hfc2Npc3Nvcl9jbGlwIChpbnQgeCwgaW50IHksIGlu dCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGJvb2wgcmVhZF9waXhlbHMgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVp Z2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludDggcGl4ZWxzKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCByZWFkX3BpeGVsc19pbnRvX2JpdG1h cCAoaW50IHgsIGludCB5LCBDb2dsLlJlYWRQaXhlbHNGbGFncyBzb3VyY2UsIENvZ2wuQml0bWFw IGJpdG1hcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBy ZXNvbHZlX3NhbXBsZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCByZXNvbHZlX3NhbXBsZXNfcmVnaW9uIChpbnQgeCwgaW50IHksIGludCB3aWR0aCwg aW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgcm90YXRlIChmbG9hdCBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfZXVsZXIgKEdy YXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoX3dyaXRlX2VuYWJs ZWQgKGJvb2wgZGVwdGhfd3JpdGVfZW5hYmxlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGl0aGVyX2VuYWJsZWQgKGJvb2wgZGl0aGVyX2VuYWJs ZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9t b2RlbHZpZXdfbWF0cml4IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9qZWN0aW9uX21hdHJpeCAoQ29nbC5N YXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9zYW1wbGVzX3Blcl9waXhlbCAoaW50IHNhbXBsZXNfcGVyX3BpeGVsKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc3RlcmVvX21vZGUg KENvZ2wuU3RlcmVvTW9kZSBzdGVyZW9fbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdmlld3BvcnQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0 IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHRyYW5zZm9ybSAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2xhdGUgKGZsb2F0IHgsIGZs b2F0IHksIGZsb2F0IHopOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlX2dldF9ndHlwZSAoKSIpXQorKwlwdWJs aWMgaW50ZXJmYWNlIFRleHR1cmUgOiBDb2dsLk9iamVjdCB7CisrCQlwdWJsaWMgYm9vbCBhbGxv Y2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIGVycm9y X3F1YXJrICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBDb2ds LlRleHR1cmVDb21wb25lbnRzIGdldF9jb21wb25lbnRzICgpOworKwkJcHVibGljIGludCBnZXRf ZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRh KTsKKysJCXB1YmxpYyBib29sIGdldF9nbF90ZXh0dXJlIChvdXQgdWludCBvdXRfZ2xfaGFuZGxl LCBvdXQgdWludCBvdXRfZ2xfdGFyZ2V0KTsKKysJCXB1YmxpYyB1aW50IGdldF9oZWlnaHQgKCk7 CisrCQlwdWJsaWMgaW50IGdldF9tYXhfd2FzdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3ByZW11bHRpcGxpZWQgKCk7CisrCQlwdWJsaWMg dWludCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zbGljZWQgKCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fYml0bWFw IChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVs Rm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0 YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZGF0YSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBD b2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIENvZ2wuUGl4 ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0LCBpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwg c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9m aWxlIChzdHJpbmcgZmlsZW5hbWUsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVs Rm9ybWF0IGludGVybmFsX2Zvcm1hdCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9zdWJfdGV4dHVyZSAoaW50IHN1 Yl94LCBpbnQgc3ViX3ksIGludCBzdWJfd2lkdGgsIGludCBzdWJfaGVpZ2h0KTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfd2l0aF9zaXplICh1 aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4 ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfY29tcG9uZW50cyAoQ29nbC5UZXh0dXJlQ29tcG9uZW50cyBj b21wb25lbnRzKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChDb2dsLlBpeGVsRm9ybWF0IGZv cm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSwgaW50IGxldmVsKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRf cHJlbXVsdGlwbGllZCAoYm9vbCBwcmVtdWx0aXBsaWVkKTsKKysJCXB1YmxpYyBib29sIHNldF9y ZWdpb24gKGludCBzcmNfeCwgaW50IHNyY195LCBpbnQgZHN0X3gsIGludCBkc3RfeSwgdWludCBk c3Rfd2lkdGgsIHVpbnQgZHN0X2hlaWdodCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBDb2dsLlBp eGVsRm9ybWF0IGZvcm1hdCwgdWludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgc2V0X3JlZ2lvbl9mcm9tX2JpdG1h cCAoaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCB1aW50IGRzdF93 aWR0aCwgdWludCBkc3RfaGVpZ2h0LCBDb2dsLkJpdG1hcCBiaXRtYXApOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbU2ltcGxlVHlwZV0KKysJ cHVibGljIHN0cnVjdCBBbmdsZSA6IGludDMyIHsKKysJfQorKwlbQm9vbGVhblR5cGVdCisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbR0lSIChuYW1lID0g IkJvb2wiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1YmxpYyBzdHJ1Y3QgQm9vbCA6IGJvb2wgewor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1 Y3QgQ29sb3IgeworKwkJcHVibGljIENvZ2wuQ29sb3I/IGNvcHkgKCk7CisrCQlwdWJsaWMgQ29s b3IuZnJvbV80ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxw aGEpOworKwkJcHVibGljIENvbG9yLmZyb21fNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1 aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FscGhhICgpOwor KwkJcHVibGljIHVpbnQ4IGdldF9hbHBoYV9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9h bHBoYV9mbG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYmx1ZSAoKTsKKysJCXB1YmxpYyB1 aW50OCBnZXRfYmx1ZV9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ibHVlX2Zsb2F0ICgp OworKwkJcHVibGljIGZsb2F0IGdldF9ncmVlbiAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRfZ3Jl ZW5fYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZ3JlZW5fZmxvYXQgKCk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X3JlZCAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRfcmVkX2J5dGUgKCk7Cisr CQlwdWJsaWMgZmxvYXQgZ2V0X3JlZF9mbG9hdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVl biwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tXzRmdiAoZmxvYXQgY29sb3JfYXJyYXkpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tXzR1YiAo dWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJcHVi bGljIHZvaWQgcHJlbXVsdGlwbHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCBzZXRfYWxwaGEgKGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV9ieXRlICh1aW50OCBhbHBoYSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGFf ZmxvYXQgKGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9ibHVlIChmbG9hdCBibHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlX2J5dGUgKHVpbnQ4IGJsdWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsdWVfZmxvYXQgKGZs b2F0IGJsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2dyZWVuIChmbG9hdCBncmVlbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW5fYnl0ZSAodWludDggZ3JlZW4pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2dyZWVuX2Zsb2F0IChmbG9hdCBn cmVlbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRf cmVkIChmbG9hdCByZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3JlZF9ieXRlICh1aW50OCByZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZF9mbG9hdCAoZmxvYXQgcmVkKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCB0b19oc2wgKG91dCBmbG9hdCBo dWUsIG91dCBmbG9hdCBzYXR1cmF0aW9uLCBvdXQgZmxvYXQgbHVtaW5hbmNlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHVucHJlbXVsdGlwbHkgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIHN0cnVj dCBEZWJ1Z09iamVjdFR5cGVJbmZvIHsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBuYW1lOworKwkJ cHVibGljIHVsb25nIGluc3RhbmNlX2NvdW50OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJl ZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNPR0xfVFlQRV9NQVRSSVgi KV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVibGljIGZsb2F0IHh4OworKwkJcHVi bGljIGZsb2F0IHl4OworKwkJcHVibGljIGZsb2F0IHp4OworKwkJcHVibGljIGZsb2F0IHd4Owor KwkJcHVibGljIGZsb2F0IHh5OworKwkJcHVibGljIGZsb2F0IHl5OworKwkJcHVibGljIGZsb2F0 IHp5OworKwkJcHVibGljIGZsb2F0IHd5OworKwkJcHVibGljIGZsb2F0IHh6OworKwkJcHVibGlj IGZsb2F0IHl6OworKwkJcHVibGljIGZsb2F0IHp6OworKwkJcHVibGljIGZsb2F0IHd6OworKwkJ cHVibGljIGZsb2F0IHh3OworKwkJcHVibGljIGZsb2F0IHl3OworKwkJcHVibGljIGZsb2F0IHp3 OworKwkJcHVibGljIGZsb2F0IHd3OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJ cHVibGljIENvZ2wuTWF0cml4PyBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFs c2UsIGFycmF5X251bGxfdGVybWluYXRlZCA9IGZhbHNlLCBjbmFtZSA9ICJjb2dsX21hdHJpeF9p bml0X2Zyb21fYXJyYXkiKV0KKysJCXB1YmxpYyBNYXRyaXguZnJvbV9hcnJheSAoW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gYXJyYXkpOworKwkJcHVibGljIHZvaWQgZnJ1 c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBm bG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1YmxpYyB1bm93bmVkIGZsb2F0W10gZ2V0 X2FycmF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wg Z2V0X2ludmVyc2UgKG91dCBDb2dsLk1hdHJpeCBpbnZlcnNlKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9tYXRyaXhfaW5pdF9pZGVudGl0eSIpXQorKwkJcHVibGljIE1hdHJpeC5pZGVudGl0 eSAoKTsKKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZXVs ZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF90 cmFuc2xhdGlvbiAoZmxvYXQgdHgsIGZsb2F0IHR5LCBmbG9hdCB0eik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBpc19pZGVudGl0eSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGxvb2tfYXQgKGZsb2F0IGV5ZV9w b3NpdGlvbl94LCBmbG9hdCBleWVfcG9zaXRpb25feSwgZmxvYXQgZXllX3Bvc2l0aW9uX3osIGZs b2F0IG9iamVjdF94LCBmbG9hdCBvYmplY3RfeSwgZmxvYXQgb2JqZWN0X3osIGZsb2F0IHdvcmxk X3VwX3gsIGZsb2F0IHdvcmxkX3VwX3ksIGZsb2F0IHdvcmxkX3VwX3opOworKwkJW0NDb2RlIChj bmFtZSA9ICJjb2dsX21hdHJpeF9tdWx0aXBseSIpXQorKwkJcHVibGljIE1hdHJpeC5tdWx0aXBs eSAoQ29nbC5NYXRyaXggYSwgQ29nbC5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgb3J0aG9ncmFwaGljIChmbG9hdCB4XzEsIGZsb2F0IHlf MSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIGZsb2F0IG5lYXIsIGZsb2F0IGZhcik7CisrCQlwdWJs aWMgdm9pZCBwZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9u ZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlwdWJsaWMgdm9pZCBwcm9qZWN0X3BvaW50cyAoaW50IG5f Y29tcG9uZW50cywgc2l6ZV90IHN0cmlkZV9pbiwgdm9pZCogcG9pbnRzX2luLCBzaXplX3Qgc3Ry aWRlX291dCwgdm9pZCogcG9pbnRzX291dCwgaW50IG5fcG9pbnRzKTsKKysJCXB1YmxpYyB2b2lk IHJvdGF0ZSAoZmxvYXQgYW5nbGUsIGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFw aGVuZS5FdWxlciBldWxlcik7CisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgc3gsIGZsb2F0 IHN5LCBmbG9hdCBzeik7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdHJhbnNmb3JtX3BvaW50IChy ZWYgQ29nbC5NYXRyaXggbWF0cml4LCByZWYgZmxvYXQgeCwgcmVmIGZsb2F0IHksIHJlZiBmbG9h dCB6LCByZWYgZmxvYXQgdyk7CisrCQlwdWJsaWMgdm9pZCB0cmFuc2Zvcm1fcG9pbnRzIChpbnQg bl9jb21wb25lbnRzLCBzaXplX3Qgc3RyaWRlX2luLCB2b2lkKiBwb2ludHNfaW4sIHNpemVfdCBz dHJpZGVfb3V0LCB2b2lkKiBwb2ludHNfb3V0LCBpbnQgbl9wb2ludHMpOworKwkJcHVibGljIHZv aWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc3Bvc2UgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCB2aWV3XzJkX2luX2ZydXN0dW0gKGZs b2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQgel9u ZWFyLCBmbG9hdCB6XzJkLCBmbG9hdCB3aWR0aF8yZCwgZmxvYXQgaGVpZ2h0XzJkKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHZpZXdfMmRfaW5fcGVyc3Bl Y3RpdmUgKGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel8y ZCwgZmxvYXQgd2lkdGhfMmQsIGZsb2F0IGhlaWdodF8yZCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdHJ1Y3QgT25zY3JlZW5EaXJ0eUlu Zm8geworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGludCB5OworKwkJcHVibGljIGludCB3 aWR0aDsKKysJCXB1YmxpYyBpbnQgaGVpZ2h0OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3Ry dWN0IFRleHR1cmVWZXJ0ZXggeworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQg eTsKKysJCXB1YmxpYyBmbG9hdCB6OworKwkJcHVibGljIGZsb2F0IHR4OworKwkJcHVibGljIGZs b2F0IHR5OworKwkJcHVibGljIENvZ2wuQ29sb3IgY29sb3I7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0cnVjdCBVc2VyRGF0YUtleSB7Cisr CQlwdWJsaWMgaW50IHVudXNlZDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbENvbG9yU2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgX0NvbG9yU2l6ZUNoZWNrIHsKKysJCVtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgY2hhcltdIGNvbXBpbGVfdGlt ZV9hc3NlcnRfQ29nbENvbG9yX3NpemU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0NvZ2xNYXRyaXhTaXplQ2hlY2siLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfTWF0cml4U2l6ZUNoZWNrIHsKKysJCVtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgY2hhcltdIGNvbXBp bGVfdGltZV9hc3NlcnRfQ29nbE1hdHJpeF9zaXplOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9Db2dsVGV4dHVyZVZlcnRleFNpemVD aGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IF9UZXh0dXJlVmVy dGV4U2l6ZUNoZWNrIHsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVi bGljIHdlYWsgY2hhcltdIGNvbXBpbGVfdGltZV9hc3NlcnRfQ29nbFRleHR1cmVWZXJ0ZXhfc2l6 ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfQVRUUklCVVRFX1RZUEVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQXR0cmlidXRlVHlwZSB7Cisr CQlCWVRFLAorKwkJVU5TSUdORURfQllURSwKKysJCVNIT1JULAorKwkJVU5TSUdORURfU0hPUlQs CisrCQlGTE9BVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNwcmVmaXggPSAiQ09HTF9CSVRNQVBfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gQml0bWFwRXJyb3Ig eworKwkJRkFJTEVELAorKwkJVU5LTk9XTl9UWVBFLAorKwkJQ09SUlVQVF9JTUFHRQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09H TF9CTEVORF9TVFJJTkdfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQmxlbmRTdHJpbmdFcnJvciB7CisrCQlQ QVJTRV9FUlJPUiwKKysJCUFSR1VNRU5UX1BBUlNFX0VSUk9SLAorKwkJSU5WQUxJRF9FUlJPUiwK KysJCUdQVV9VTlNVUFBPUlRFRF9FUlJPUjsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJr ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9CVUZGRVJfQklUXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxh Z3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQnVmZmVyQml0 IHsKKysJCUNPTE9SLAorKwkJREVQVEgsCisrCQlTVEVOQ0lMCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMXyIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ cHVibGljIGVudW0gQnVmZmVyVGFyZ2V0IHsKKysJCVdJTkRPV19CVUZGRVIsCisrCQlPRkZTQ1JF RU5fQlVGRkVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX0RFUFRIX1RFU1RfRlVOQ1RJT05fIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCXB1YmxpYyBlbnVtIERlcHRoVGVzdEZ1bmN0aW9uIHsKKysJCU5FVkVSLAorKwkJ TEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRFUiwKKysJCU5PVEVRVUFMLAor KwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0VHTF9JTUFHRV9GTEFHXyIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEVnbEltYWdlRmxhZ3Mgewor KwkJTk9ORSwKKysJCU5PX0dFVF9EQVRBCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZFQVRVUkVfSURfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVt IEZlYXR1cmVJRCB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9VTlNJR05F RF9JTlRfSU5ESUNFUyIpXQorKwkJT0dMX0ZFQVRVUkVfSURfVU5TSUdORURfSU5UX0lORElDRVMs CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9SRUFE IildCisrCQlPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9SRUFELAorKwkJW0NDb2RlIChj bmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfV1JJVEUiKV0KKysJCU9HTF9G RUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1dSSVRFLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dM X0ZFQVRVUkVfSURfU1dBUF9CVUZGRVJTX0VWRU5UIildCisrCQlPR0xfRkVBVFVSRV9JRF9TV0FQ X0JVRkZFUlNfRVZFTlQsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9QUkVT RU5UQVRJT05fVElNRSIpXQorKwkJT0dMX0ZFQVRVUkVfSURfUFJFU0VOVEFUSU9OX1RJTUUsCisr CQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9GRU5DRSIpXQorKwkJT0dMX0ZFQVRV UkVfSURfRkVOQ0UsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9URVhUVVJF X1JHIildCisrCQlPR0xfRkVBVFVSRV9JRF9URVhUVVJFX1JHLAorKwkJW0NDb2RlIChjbmFtZSA9 ICJDT0dMX0ZFQVRVUkVfSURfQlVGRkVSX0FHRSIpXQorKwkJT0dMX0ZFQVRVUkVfSURfQlVGRkVS X0FHRSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1RFWFRVUkVfRUdMX0lN QUdFX0VYVEVSTkFMIildCisrCQlPR0xfRkVBVFVSRV9JRF9URVhUVVJFX0VHTF9JTUFHRV9FWFRF Uk5BTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9GSUxURVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBl bnVtIEZpbHRlclJldHVybiB7CisrCQlDT05USU5VRSwKKysJCVJFTU9WRQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9GUkFN RV9FVkVOVF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTQiKV0KKysJcHVibGljIGVudW0gRnJhbWVFdmVudCB7CisrCQlTWU5DLAorKwkJQ09NUExFVEUK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfRlJBTUVCVUZGRVJfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBlbnVtIEZyYW1lYnVmZmVyRXJyb3IgeworKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZS QU1FQlVGRkVSX0VSUk9SX0FMTE9DQVRFIildCisrCQlGUkFNRUJVRkZFUl9FUlJPUl9BTExPQ0FU RTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9HUkFQSElDU19S RVNFVF9TVEFUVVNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIEdyYXBo aWNzUmVzZXRTdGF0dXMgeworKwkJTk9fRVJST1IsCisrCQlHVUlMVFlfQ09OVEVYVF9SRVNFVCwK KysJCUlOTk9DRU5UX0NPTlRFWFRfUkVTRVQsCisrCQlVTktOT1dOX0NPTlRFWFRfUkVTRVQsCisr CQlQVVJHRURfQ09OVEVYVF9SRVNFVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9JTkRJQ0VTX1RZUEVfVU5TSUdORURfIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIEluZGljZXNUeXBlIHsKKysJCUJZ VEUsCisrCQlTSE9SVCwKKysJCUlOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRFUklBTF9BTFBIQV9GVU5DXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbEFscGhhRnVuYyB7Cisr CQlORVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJCUxFUVVBTCwKKysJCUdSRUFURVIsCisr CQlOT1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRFUklBTF9GSUxU RVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIE1hdGVyaWFsRmlsdGVy IHsKKysJCU5FQVJFU1QsCisrCQlMSU5FQVIsCisrCQlORUFSRVNUX01JUE1BUF9ORUFSRVNULAor KwkJTElORUFSX01JUE1BUF9ORUFSRVNULAorKwkJTkVBUkVTVF9NSVBNQVBfTElORUFSLAorKwkJ TElORUFSX01JUE1BUF9MSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfV1JBUF9NT0RFXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBl bnVtIE1hdGVyaWFsV3JhcE1vZGUgeworKwkJUkVQRUFULAorKwkJQ0xBTVBfVE9fRURHRSwKKysJ CUFVVE9NQVRJQworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9BTFBIQV9GVU5DXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZUFscGhhRnVuYyB7CisrCQlORVZFUiwKKysJ CUxFU1MsCisrCQlFUVVBTCwKKysJCUxFUVVBTCwKKysJCUdSRUFURVIsCisrCQlOT1RFUVVBTCwK KysJCUdFUVVBTCwKKysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9DVUxMX0ZBQ0VfTU9ERV8i LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVDdWxsRmFjZU1v ZGUgeworKwkJTk9ORSwKKysJCUZST05ULAorKwkJQkFDSywKKysJCUJPVEgKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUElQ RUxJTkVfRklMVEVSXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBQaXBl bGluZUZpbHRlciB7CisrCQlORUFSRVNULAorKwkJTElORUFSLAorKwkJTkVBUkVTVF9NSVBNQVBf TkVBUkVTVCwKKysJCUxJTkVBUl9NSVBNQVBfTkVBUkVTVCwKKysJCU5FQVJFU1RfTUlQTUFQX0xJ TkVBUiwKKysJCUxJTkVBUl9NSVBNQVBfTElORUFSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX1dSQVBfTU9E RV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwlwdWJsaWMgZW51bSBQaXBlbGluZVdyYXBNb2RlIHsKKysJCVJFUEVBVCwKKysJCU1JUlJPUkVE X1JFUEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRPTUFUSUMKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUElYRUxf Rk9STUFUXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gUGl4ZWxGb3JtYXQgeworKwkJQU5ZLAorKwkJ QV84LAorKwkJUkdCXzU2NSwKKysJCVJHQkFfNDQ0NCwKKysJCVJHQkFfNTU1MSwKKysJCVlVViwK KysJCUdfOCwKKysJCVJHXzg4LAorKwkJUkdCXzg4OCwKKysJCUJHUl84ODgsCisrCQlSR0JBXzg4 ODgsCisrCQlCR1JBXzg4ODgsCisrCQlBUkdCXzg4ODgsCisrCQlBQkdSXzg4ODgsCisrCQlSR0JB XzEwMTAxMDIsCisrCQlCR1JBXzEwMTAxMDIsCisrCQlBUkdCXzIxMDEwMTAsCisrCQlBQkdSXzIx MDEwMTAsCisrCQlSR0JBXzg4ODhfUFJFLAorKwkJQkdSQV84ODg4X1BSRSwKKysJCUFSR0JfODg4 OF9QUkUsCisrCQlBQkdSXzg4ODhfUFJFLAorKwkJUkdCQV80NDQ0X1BSRSwKKysJCVJHQkFfNTU1 MV9QUkUsCisrCQlSR0JBXzEwMTAxMDJfUFJFLAorKwkJQkdSQV8xMDEwMTAyX1BSRSwKKysJCUFS R0JfMjEwMTAxMF9QUkUsCisrCQlBQkdSXzIxMDEwMTBfUFJFLAorKwkJREVQVEhfMTYsCisrCQlE RVBUSF8zMiwKKysJCURFUFRIXzI0X1NURU5DSUxfODsKKysJCXB1YmxpYyBpbnQgZ2V0X2J5dGVz X3Blcl9waXhlbCAoaW50IHBsYW5lKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fcGxhbmVzICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUkVBRF9QSVhF TFNfQ09MT1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBSZWFkUGl4ZWxzRmxhZ3MgeworKwkJW0ND b2RlIChjbmFtZSA9ICJDT0dMX1JFQURfUElYRUxTX0NPTE9SX0JVRkZFUiIpXQorKwkJUkVBRF9Q SVhFTFNfQ09MT1JfQlVGRkVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1JFTkRFUkVSX0VSUk9SXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBSZW5kZXJlckVycm9yIHsKKysJCVhMSUJfRElTUExB WV9PUEVOLAorKwkJQkFEX0NPTlNUUkFJTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU0hBREVSX1RZUEVfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVu dW0gU2hhZGVyVHlwZSB7CisrCQlWRVJURVgsCisrCQlGUkFHTUVOVAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9TVEVSRU9f IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFN0ZXJlb01vZGUgeworKwkJ Qk9USCwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9TWVNURU1fRVJST1JfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVu dW0gU3lzdGVtRXJyb3IgeworKwkJVU5TVVBQT1JURUQsCisrCQlOT19NRU1PUlkKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf VEVYVFVSRV9DT01QT05FTlRTXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlQ29tcG9uZW50cyB7CisrCQlB LAorKwkJUkcsCisrCQlSR0IsCisrCQlSR0JBLAorKwkJREVQVEgKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfVEVYVFVSRV9F UlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwlwdWJsaWMgZW51bSBUZXh0dXJlRXJyb3IgeworKwkJU0laRSwKKysJCUZPUk1BVCwKKysJ CUJBRF9QQVJBTUVURVIsCisrCQlUWVBFOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgcXVhcmsg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX1RFWFRVUkVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlRmxhZ3Mg eworKwkJTk9ORSwKKysJCU5PX0FVVE9fTUlQTUFQLAorKwkJTk9fU0xJQ0lORywKKysJCU5PX0FU TEFTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX1ZFUlRJQ0VTX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gVmVydGljZXNNb2RlIHsKKysJ CVBPSU5UUywKKysJCUxJTkVTLAorKwkJTElORV9MT09QLAorKwkJTElORV9TVFJJUCwKKysJCVRS SUFOR0xFUywKKysJCVRSSUFOR0xFX1NUUklQLAorKwkJVFJJQU5HTEVfRkFOCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1dJ TkRJTkdfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFdpbmRpbmcgewor KwkJQ0xPQ0tXSVNFLAorKwkJQ09VTlRFUl9DTE9DS1dJU0UKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfV0lOU1lTX0ZFQVRV UkVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFdpbnN5c0ZlYXR1cmUg eworKwkJTVVMVElQTEVfT05TQ1JFRU4sCisrCQlTV0FQX1RIUk9UVExFLAorKwkJVkJMQU5LX0NP VU5URVIsCisrCQlWQkxBTktfV0FJVCwKKysJCVRFWFRVUkVfRlJPTV9QSVhNQVAsCisrCQlTV0FQ X0JVRkZFUlNfRVZFTlQsCisrCQlTV0FQX1JFR0lPTiwKKysJCVNXQVBfUkVHSU9OX1RIUk9UVExF LAorKwkJU1dBUF9SRUdJT05fU1lOQ0hST05JWkVELAorKwkJQlVGRkVSX0FHRSwKKysJCVNZTkNf QU5EX0NPTVBMRVRFX0VWRU5ULAorKwkJTl9GRUFUVVJFUworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgRGVidWdPYmplY3RG b3JlYWNoVHlwZUNhbGxiYWNrIChDb2dsLkRlYnVnT2JqZWN0VHlwZUluZm8gaW5mbyk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDEu OSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjEwIildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lk IEZlYXR1cmVDYWxsYmFjayAoQ29nbC5GZWF0dXJlSUQgZmVhdHVyZSk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDIuOSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIE9uc2NyZWVu RGlydHlDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbiwgQ29nbC5PbnNjcmVlbkRpcnR5 SW5mbyBpbmZvKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg aW5zdGFuY2VfcG9zID0gMy45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJs aWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlblJlc2l6ZUNhbGxiYWNrIChDb2dsLk9uc2NyZWVuIG9u c2NyZWVuLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFBpcGVsaW5lTGF5ZXJDYWxsYmFj ayAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgaW50IGxheWVyX2luZGV4KTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJ cHVibGljIGRlbGVnYXRlIGJvb2wgVGV4dHVyZTJERUdMSW1hZ2VFeHRlcm5hbEFsbG9jIChDb2ds LlRleHR1cmUyRCB0ZXhfMmQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQorKwlwdWJsaWMg ZGVsZWdhdGUgdm9pZCBVc2VyRGF0YURlc3Ryb3lDYWxsYmFjayAodm9pZCogZGF0YSk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfQUZJ UlNUX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEFGSVJTVF9CSVQ7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfQV9CSVQiKV0KKysJ cHVibGljIGNvbnN0IGludCBBX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9CR1JfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQg QkdSX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25h bWUgPSAiQ09HTF9ERVBUSF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBERVBUSF9CSVQ7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xf UElYRUxfRk9STUFUX01BWF9QTEFORVMiKV0KKysJcHVibGljIGNvbnN0IGludCBQSVhFTF9GT1JN QVRfTUFYX1BMQU5FUzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY25hbWUgPSAiQ09HTF9QUkVNVUxUX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSRU1V TFRfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFt ZSA9ICJDT0dMX1NURU5DSUxfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgU1RFTkNJTF9CSVQ7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNP R0xfVEVYVFVSRV9NQVhfV0FTVEUiKV0KKysJcHVibGljIGNvbnN0IGludCBURVhUVVJFX01BWF9X QVNURTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1 YmxpYyBzdGF0aWMgYm9vbCBibGl0X2ZyYW1lYnVmZmVyIChDb2dsLkZyYW1lYnVmZmVyIHNyYywg Q29nbC5GcmFtZWJ1ZmZlciBkZXN0LCBpbnQgc3JjX3gsIGludCBzcmNfeSwgaW50IGRzdF94LCBp bnQgZHN0X3ksIGludCB3aWR0aCwgaW50IGhlaWdodCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgY2x1dHRlcl93aW5zeXNfaGFzX2ZlYXR1cmVfQ0xVVFRFUiAoQ29nbC5XaW5zeXNGZWF0 dXJlIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgY29s b3JfZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgY29sb3JfaW5pdF9mcm9tX2hzbCAob3V0IENvZ2wuQ29sb3IgY29sb3Is IGZsb2F0IGh1ZSwgZmxvYXQgc2F0dXJhdGlvbiwgZmxvYXQgbHVtaW5hbmNlKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX21hdHJpeF9wcmludCAoQ29nbC5N YXRyaXggbWF0cml4KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRl YnVnX29iamVjdF9mb3JlYWNoX3R5cGUgKENvZ2wuRGVidWdPYmplY3RGb3JlYWNoVHlwZUNhbGxi YWNrIGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGVidWdf b2JqZWN0X3ByaW50X2luc3RhbmNlcyAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIGZsdXNoICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyB2 b2lkIGZvcmVhY2hfZmVhdHVyZSAoQ29nbC5Db250ZXh0IGNvbnRleHQsIENvZ2wuRmVhdHVyZUNh bGxiYWNrIGNhbGxiYWNrKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfYmFja2ZhY2VfY3VsbGluZ19lbmFi bGVkICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIHN0YXRpYyBpbnQ2NCBnZXRfY2xv Y2tfdGltZSAoQ29nbC5Db250ZXh0IGNvbnRleHQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9kZXB0aF90 ZXN0X2VuYWJsZWQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuR3JhcGhpY3NSZXNldFN0YXR1cyBnZXRfZ3JhcGhp Y3NfcmVzZXRfc3RhdHVzIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg c3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91cCAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5D YWxsYmFjayBnZXRfcHJvY19hZGRyZXNzIChzdHJpbmcgcyk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuVHlwZSBn dHlwZV9tYXRyaXhfZ2V0X3R5cGUgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3Rh dGljIGJvb2wgaGFzX2ZlYXR1cmUgKENvZ2wuQ29udGV4dCBjb250ZXh0LCBDb2dsLkZlYXR1cmVJ RCBmZWF0dXJlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19j b250ZXh0ICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRp YyBib29sIGlzX2ZyYW1lYnVmZmVyICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJcHVibGljIHN0YXRpYyBib29sIGlzX29uc2NyZWVuICh2b2lkKiBvYmplY3QpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfcGlwZWxpbmUgKHZvaWQqIG9iamVj dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJs aWMgc3RhdGljIGJvb2wgaXNfdGV4dHVyZV8yZCAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc190ZXh0dXJlXzJkX3NsaWNlZCAodm9pZCog b2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0YXRpYyBib29sIG1hdHJpeF9l cXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfYmFja2ZhY2VfY3Vs bGluZ19lbmFibGVkIChib29sIHNldHRpbmcpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9kZXB0aF90ZXN0 X2VuYWJsZWQgKGJvb2wgc2V0dGluZyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2hhZGVyX2NvbXBpbGUgKENv Z2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHN0cmluZyBzaGFkZXJfZ2V0X2luZm9fbG9nIChD b2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlNoYWRlclR5cGUgc2hhZGVyX2dldF90 eXBlIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBib29sIHNoYWRlcl9pc19jb21waWxl ZCAoQ29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzaGFkZXJfc291cmNlIChDb2ds LkhhbmRsZSBzaGFkZXIsIHN0cmluZyBzb3VyY2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBD b2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFwIGJpdG1hcCwg Q29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0 KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2Ug PSAiMC44IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X2Zyb21f ZGF0YSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29n bC5QaXhlbEZvcm1hdCBmb3JtYXQsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0LCBp bnQgcm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5U ZXh0dXJlIHRleHR1cmVfbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBDb2dsLlRleHR1 cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpIHRocm93cyBH TGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgi LCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9u ZXdfd2l0aF9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3Mg ZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIHgxMV9vbnNjcmVlbl9nZXRfd2luZG93X3hpZCAo Q29nbC5PbnNjcmVlbiBvbnNjcmVlbik7CisrfQorLS0gCisyLjI1LjAKKwpkaWZmIC0tZ2l0IGEv c3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZSBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3Av dGVtcGxhdGUKaW5kZXggYjMyZTc3MzRkM2IuLjE4MGNkYzAyZjFmIDEwMDY0NAotLS0gYS9zcmNw a2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3Av dGVtcGxhdGUKQEAgLTEsMjEgKzEsMjIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2J1ZGdpZS1k ZXNrdG9wJwogcGtnbmFtZT1idWRnaWUtZGVza3RvcAogdmVyc2lvbj0xMC41LjEKLXJldmlzaW9u PTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9Z2lyCiBjb25m aWd1cmVfYXJncz0iLUR3aXRoLWd0ay1kb2M9ZmFsc2UgLUR3aXRoLWRlc2t0b3AtaWNvbnM9bm9u ZSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCB2YWxhIGdsaWItZGV2ZWwg Z29iamVjdC1pbnRyb3NwZWN0aW9uIHNhc3NjIgogbWFrZWRlcGVuZHM9ImFsc2EtbGliLWRldmVs IGxpYm5vdGlmeS1kZXZlbCBhY2NvdW50c3NlcnZpY2UtZGV2ZWwgbGlicGVhcy1kZXZlbCBsaWJ3 bmNrLWRldmVsCi1tdXR0ZXItZGV2ZWwgaWJ1cy1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIHB1 bHNlYXVkaW8tZGV2ZWwgdXBvd2VyLWRldmVsIGd0ayszLWRldmVsIHBvbGtpdC1kZXZlbAotZ25v bWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLW1lbnVzLWRldmVsIGdub21lLXNldHRpbmdzLWRhZW1v bi1kZXZlbCB2YWxhIGxpYnV1aWQtZGV2ZWwgbGlidXBvd2VyLWdsaWIzIgotZGVwZW5kcz0iZ25v bWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtY29udHJvbC1jZW50ZXIgZWxv Z2luZCIKKyBtdXR0ZXItZGV2ZWwgaWJ1cy1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIHB1bHNl YXVkaW8tZGV2ZWwgdXBvd2VyLWRldmVsIGd0ayszLWRldmVsIHBvbGtpdC1kZXZlbAorIGdub21l LWJsdWV0b290aC1kZXZlbCBnbm9tZS1tZW51cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVtb24t ZGV2ZWwgdmFsYSBsaWJ1dWlkLWRldmVsIGxpYnVwb3dlci1nbGliMyIKK2RlcGVuZHM9Imdub21l LXNlc3Npb24gZ25vbWUtc2V0dGluZ3MtZGFlbW9uIGdub21lLWNvbnRyb2wtY2VudGVyIGdub21l LXRoZW1lcy1leHRyYSBlbG9naW5kIgogc2hvcnRfZGVzYz0iTW9kZXJuIGRlc2t0b3AgZW52aXJv bm1lbnQgZnJvbSB0aGUgU29sdXMgUHJvamVjdCIKIG1haW50YWluZXI9IkxvcmVtIDxub3Rsb3Jl bWlwc3VtQHByb3Rvbm1haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb25seSwgTEdQTC0yLjEt b25seSIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJvamVjdC9idWRnaWUt ZGVza3RvcCIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVk Z2llLWRlc2t0b3AvcmVsZWFzZXMvZG93bmxvYWQvdiR7dmVyc2lvbn0vYnVkZ2llLWRlc2t0b3At JHt2ZXJzaW9ufS50YXIueHoiCiBjaGVja3N1bT1kMDM1ZWM3NjRlMDA5MzcyMmE4MzI0MTFhZWI2 YWJhMjk2YzA5OTVkOTI3ZWEwNjliMjA1YjE5Yzg1YWFlNTY1CitwYXRjaF9hcmdzPSItTnAxIgog CiBwcmVfY29uZmlndXJlKCkgewogCXZzZWQgLWkgJ3MvZXhlYyBnbm9tZS1zZXNzaW9uL2V4ZWMg Z25vbWUtc2Vzc2lvbiAtLWJ1aWx0aW4vJyBzcmMvc2Vzc2lvbi9idWRnaWUtZGVza3RvcC5pbgoK RnJvbSA3NzljZjhhNjJjNjllNDY5ZjAzMGRiOGY3YTU5YjEzZGZhMTZiYTVmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBU aHUsIDMwIEFwciAyMDIwIDEzOjQ2OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0NC81NF0geGRn LWRlc2t0b3AtcG9ydGFsLWd0azogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMu c28uMTkKCi0tLQogc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlIGIvc3JjcGtncy94 ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlCmluZGV4IGRlZTBlNDYzMzg2Li41NThjNzVm NTM5ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsnCiBwa2du YW1lPXhkZy1kZXNrdG9wLXBvcnRhbC1ndGsKIHZlcnNpb249MS42LjAKLXJldmlzaW9uPTEKK3Jl dmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtlZGVwZW5kcz0icGtn LWNvbmZpZyBsaWJ4c2x0IGdsaWItZGV2ZWwgeGRnLWRlc2t0b3AtcG9ydGFsIGdldHRleHQiCiBt YWtlZGVwZW5kcz0iZmxhdHBhay1kZXZlbCBndGsrMy1kZXZlbCBsaWJ4c2x0LWRldmVsIGxpYmds aWItZGV2ZWwKCkZyb20gODYzYTU1OWViYzA5OTdiN2MzODFkZDk1OTk0ZDEwZDliZDM1ZjI4OSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo0OToxMyArMDYwMApTdWJqZWN0OiBbUEFUQ0gg NDUvNTRdIGNoZWVzZTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoK LS0tCiBzcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hlZXNlL3Rl bXBsYXRlIGIvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKaW5kZXggN2E1NmJhMDM5ZmIuLjAzN2Nk YTQ5Yzk4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2NoZWVzZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2No ZWVzZScKIHBrZ25hbWU9Y2hlZXNlCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MQorcmV2aXNp b249MgogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2Fy Z3M9Ii1EZ3RrX2RvYz0kKHZvcHRfaWYgZ3RrX2RvYyAndHJ1ZScgJ2ZhbHNlJykKCkZyb20gZTNm YmYyODU2MDI5OGE3ZjcxMjNlNTgzYTczZTY1NmM1ZmMzYTJkNyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBB cHIgMjAyMCAwMjozNDo1NCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDYvNTRdIGdub21lLWJvb2tz OiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3Mv Z25vbWUtYm9va3MvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBs YXRlIGIvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQppbmRleCAxMTRiOWUwMzRjMi4uMWQ0 OTc0ZmUxODMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2dub21lLWJvb2tzJwogcGtnbmFtZT1nbm9tZS1ib29rcwogdmVyc2lvbj0zLjM0 LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyB2YWxhIGdsaWItZGV2ZWwgbGli cnN2ZyBkb2Nib29rLXhzbCBsaWJ4c2x0CgpGcm9tIGVmY2UzN2FmMThmODE1ZjFhODg1MWY3Mzgy NTY3N2QyMWI4Zjc2YjIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6NDc6MzEgKzA2MDAK U3ViamVjdDogW1BBVENIIDQ3LzU0XSBnbm9tZS1jaGFyYWN0ZXJzOiByZWJ1aWxkIGFnYWluc3QK IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWNoYXJhY3RlcnMv dGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRp b24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVtcGxhdGUgYi9z cmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVtcGxhdGUKaW5kZXggODk4NjhmNGJjMDQuLmFjMjY0 ZTUxYTZhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY2hhcmFjdGVycycKIHBrZ25hbWU9Z25vbWUtY2hhcmFj dGVycwogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxl PW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnanMg Z2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWciCgpGcm9tIGZjNjMwYzZhMDI5ZTBlNzM0ZmNl MmJjNzI3YzM4ZDk5NGNhNDFhYTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6NTU6MTgg KzA2MDAKU3ViamVjdDogW1BBVENIIDQ4LzU0XSBnbm9tZS1kb2N1bWVudHM6IHJlYnVpbGQgYWdh aW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtZG9jdW1l bnRzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQppbmRleCA5N2I1M2Q2MzVkNy4uN2U0 NWI4MjVlNzEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZG9jdW1lbnRzJwogcGtnbmFtZT1nbm9tZS1kb2N1bWVu dHMKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9oZWxwZXI9 ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRvY2Jvb2steHNsIGdl dHRleHQgaXRzdG9vbCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgbGlieHNsdCBnZGstcGl4YnVmCgpG cm9tIDZiZjBmODNhYzFmMjMxZGVhZWRkOGM3NTc2MzY1OTRiZDJkYzljMGQgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRo dSwgMzAgQXByIDIwMjAgMDI6NTY6NTYgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ5LzU0XSBnbm9t ZS1mb250LXZpZXdlcjogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkK Ci0tLQogc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWZvbnQtdmlld2Vy L3RlbXBsYXRlCmluZGV4IDZkMDM1MzY2ZDQ0Li5mNzRmY2JjYjAwMCAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWZvbnQt dmlld2VyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25v bWUtZm9udC12aWV3ZXInCiBwa2duYW1lPWdub21lLWZvbnQtdmlld2VyCiB2ZXJzaW9uPTMuMzQu MAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImZvbnRjb25maWctZGV2 ZWwgZnJlZXR5cGUtZGV2ZWwgZ2xpYi1kZXZlbCBndGsrMy1kZXZlbAoKRnJvbSA0YjE1NjJhMzBi YTUyZjRjZWMxYjc3ZmJiMDUzMDg3M2E1MjNiZDg4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBTdW4sIDMgTWF5IDIwMjAg MDI6Mjc6MTcgKzA2MDAKU3ViamVjdDogW1BBVENIIDUwLzU0XSBnbm9tZS1zY3JlZW5zYXZlcjog cmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogLi4uL3BhdGNo ZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoICAgICAgICAgICAgICAgIHwgMTMgKysrKysrKysr KysrKwogc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAg IHwgIDMgKystCiAyIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24o LSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMv Z25vbWUtZGVza3RvcC0zLjM2LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zY3Jl ZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaCBiL3NyY3BrZ3MvZ25vbWUt c2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2gKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjU4ZDkyZTQ2M2EzCi0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5w YXRjaApAQCAtMCwwICsxLDEzIEBACitkaWZmIC1OYXVyIGdub21lLXNjcmVlbnNhdmVyLTMuNi4x Lm9yaWcvc3JjL2dzLW1hbmFnZXIuYyBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS9zcmMvZ3MtbWFu YWdlci5jCistLS0gZ25vbWUtc2NyZWVuc2F2ZXItMy42LjEub3JpZy9zcmMvZ3MtbWFuYWdlci5j CTIwMjAtMDMtMDggMDg6NTM6NDYuNDA4NDMxNTc4ICswMDAwCisrKysgZ25vbWUtc2NyZWVuc2F2 ZXItMy42LjEvc3JjL2dzLW1hbmFnZXIuYwkyMDIwLTAzLTA4IDA4OjU0OjMxLjg3NTczODczMiAr MDAwMAorQEAgLTc4OCw4ICs3ODgsNyBAQAorICAgICAgICAgc3VyZmFjZSA9IGdub21lX2JnX2Ny ZWF0ZV9zdXJmYWNlIChtYW5hZ2VyLT5wcml2LT5iZywKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZ2RrX3dpbmRvdywKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgd2lkdGgsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGhlaWdodCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgRkFMU0UpOworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBoZWlnaHQpOworICAgICAgICAgZ3Nfd2luZG93X3NldF9iYWNrZ3JvdW5kX3N1cmZh Y2UgKHdpbmRvdywgc3VyZmFjZSk7CisgICAgICAgICBjYWlyb19zdXJmYWNlX2Rlc3Ryb3kgKHN1 cmZhY2UpOworIH0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxh dGUgYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlCmluZGV4IDM2M2ZjZjEyZTEw Li4yMDBjNjkxZjUxZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2NyZWVuc2F2ZXInCiBwa2duYW1lPWdu b21lLXNjcmVlbnNhdmVyCiB2ZXJzaW9uPTMuNi4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29tcGls ZS13YXJuaW5ncz1taW5pbXVtIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9tYWtl IGludGx0b29sIGdsaWItZGV2ZWwiCkBAIC0xMywzICsxMyw0IEBAIGxpY2Vuc2U9IkdQTC0zLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9t ZVNjcmVlbnNhdmVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09ZjM5Yjc4ZDRm N2ZlZDc0OGM3ZjBhMzFkNjk0MTEyZmI5MDdjNmQzYzRlNjNkYjIyZWI4NThkZjA3ZTk2MmNkMAor cGF0Y2hfYXJncz0iLU5wMSIKCkZyb20gNzgyOTU4YzliYTg5M2ZhZmRjMTRhYTM3NzAxNWNmOWY2 MGU1NjNhOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBv dXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDExOjQzOjE5ICswNjAwClN1YmplY3Q6 IFtQQVRDSCA1MS81NF0gZ25vbWUtd2VhdGhlcjogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRl c2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXdlYXRo ZXIvdGVtcGxhdGUKaW5kZXggZDMwYmU5YmYxOTIuLmMwMjhlNDZiYTY1IDEwMDY0NAotLS0gYS9z cmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS13ZWF0aGVy L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtd2Vh dGhlcicKIHBrZ25hbWU9Z25vbWUtd2VhdGhlcgogdmVyc2lvbj0zLjM2LjEKLXJldmlzaW9uPTEK K3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3Rt YWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGl0c3Rvb2wgZ2xpYi1kZXZlbCBnanMiCgpG cm9tIGIzNDFjMzkwOTUyMTllNGZlNjA5YjlhZmMwNjUyNGMzZWYwMjgzZTUgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRo dSwgMzAgQXByIDIwMjAgMDI6NTc6NTcgKzA2MDAKU3ViamVjdDogW1BBVENIIDUyLzU0XSB0b3Rl bTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dz L3RvdGVtL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90b3RlbS90ZW1wbGF0ZSBiL3NyY3Br Z3MvdG90ZW0vdGVtcGxhdGUKaW5kZXggODE1MjJiMzE0ODguLmU0MTg2NjMyMTUzIDEwMDY0NAot LS0gYS9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0b3RlbScKIHBrZ25hbWU9dG90 ZW0KIHZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1t ZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURlbmFibGUtcHl0aG9u PW5vIC1EZW5hYmxlLW5hdXRpbHVzPXllcwoKRnJvbSA2NTI4ZTg3ZmY1MjBmYTM1YzdiYThjMTM1 YTAyNGRiYjNjMGUyMDU2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAzOjA0OjA3ICswNjAw ClN1YmplY3Q6IFtQQVRDSCA1My81NF0gbHV0cmlzOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUt ZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlIHwgMiArLQogMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9sdXRyaXMvdGVtcGxhdGUgYi9zcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZQppbmRleCBm ODAxODQ0Yzc3YS4uMzk2MjI5YWU2MjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbHV0cmlzL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbHV0cmlzJwogcGtnbmFtZT1sdXRyaXMKIHZlcnNpb249MC41LjYKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGFyY2hzPW5vYXJjaAogYnVpbGRfc3R5bGU9cHl0aG9uMy1t b2R1bGUKIGJ1aWxkX2hlbHBlcj0iZ2lyIgoKRnJvbSBhZjk4MDc3YzczZjlkNTljM2ZjNTNjY2Q0 OTg4ZDY5MDhhNTYxOTc5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDE2OjA4OjIzICswNjAw ClN1YmplY3Q6IFtQQVRDSCA1NC81NF0gZXZpbmNlOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUt ZGVza3RvcC0zLnNvLjE5CgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZSB8 IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIvc3JjcGtncy9ldmluY2UvdGVtcGxh dGUKaW5kZXggYzMzN2EyNjZjZTAuLjE3MzA3MWE5Y2FkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2 aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBrZ25hbWU9ZXZpbmNlCiB2ZXJzaW9u PTMuMzYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iJCh2b3B0X2VuYWJsZSBnaXIg aW50cm9zcGVjdGlvbikgLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZQo= --===============3921915650690020501==--