From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 18096 invoked from network); 11 May 2020 22:01:26 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 11 May 2020 22:01:26 -0000 Content-Type: multipart/mixed; boundary="===============4080199632847968432==" 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: Tue, 12 May 2020 00:01:26 +0200 List-Id: Message-ID: <20200511220126.LVQpYJe7l_JuuThmw3lftcRIWXFLUzSQFFZWtuiH7mA@z> GitHub notification mails are now in MIME to allow UTF8. --===============4080199632847968432== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW5hYmlkIGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFi aWQvdm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjEzODIKCltXSVBdIGdub21lIDMuMzYgdXBkYXRlcwoqKldhaXRpbmcg Zm9yIFtgcGlwZXdpcmUtMC4zLjRgXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjA0MTMpIGFuZCBbYGdqcy0xLjY1LjJgXShodHRwczovL2dpdGh1Yi5j b20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMjE3MTYpIHRvIGJlIG1lcmdlZC4qKgoK QSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNr YWdlcy9wdWxsLzIxMzgyLnBhdGNoIGlzIGF0dGFjaGVk --===============4080199632847968432== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSA2NTJlMDFkZmU0OTk0Njg2ZTg0NTM3MWNiYzM2MzgyYjEzOWZjYjYxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS81NF0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIHwgOCArKysr LS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggNzY5MzA1M2U0 NmIuLjBiMDkwZGM2NDJhIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z 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 Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDI0NTVlNjllNzcwNGQ0ZGZi NTkyYzc3MWQ2ZGQ4MjZmODdlNTMxNjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTRdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi4wMjliODdmZjIyYiAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisgICAgICAgcm0gLXJm ICR7REVTVERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIDRlMjAyYTYyM2E2N2JmNzE4Njg4 ZjcwZjdjMjFmZTE1YWI2ODY1NzkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUg KzA2MDAKU3ViamVjdDogW1BBVENIIDAzLzU0XSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMi4K Ci0tLQogc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bmF1dGlsdXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4 NTE5NzNmLi4xMDEwODczZjRmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYu MS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxk X2hlbHBlcj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1h bmFnZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS8ke3BrZ25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNh ZjMzODAzYTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7 dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPTI2Njcz Yzk1OTk1MDI0NTJjZjI5OTM1ODcyOWJlOGI1NTQwNjZhOWI2NzBkODliMjRlMjQ1MTYwZDE1Nzc2 ZmEKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpG cm9tIDE2YjY3N2FhNGYwNDc0MDk5NmYyOWY2OTMxNDY3ZWUxMzk2YWU5NzUgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1v biwgMjcgQXByIDIwMjAgMTI6MjY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzU0XSBnbm9t ZS0yMDQ4OiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS0yMDQ4L3RlbXBsYXRlCmluZGV4IGI1OWNjZjZkZTQ2Li45ODliNmZmMTI1YiAxMDA2NDQK LS0tIGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0 OC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIw NDgnCiBwa2duYW1lPWdub21lLTIwNDgKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgog cmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBn bGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0 OCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25v bWUtMjA0OC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5 YzE2YTcwNjc0ODA3MzQ0ZWQxMTgzMWU4YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTI5 ZGE3NDk5Yzg5ZWU3NGY5ODM0ZThkZTJiODU2MzMyMzlhNjZlNWM1M2Q5NTZhOGU5NWE5ODdiZGI0 YjMzMjEKCkZyb20gYmU0ZGZmYWMwY2RmMzM2NjQwZDA2ZWQyZDU3ODZkZTA3NTFjNzFhZSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDUv NTRdIGdub21lLW11c2ljOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLW11 c2ljL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlCmluZGV4IDEyNTExNzM2NDA3Li44MDJiY2Vh ODkxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2dub21lLW11c2ljL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZ25vbWUtbXVzaWMnCiBwa2duYW1lPWdub21lLW11c2ljCi12ZXJzaW9uPTMuMzYuMQor dmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KQEAgLTE1LDUgKzE1LDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL011c2ljIgogZGlzdGZpbGVzPSIke0dOT01FX1NJ VEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6 IgotY2hlY2tzdW09N2I4MGY2MzBkMTU4MzM0OTM1YTg3NjAyOTY1NTBjYzkxYjUwZDYwNGZhNjhi NDAyZmU1MTY1YjE1MzFlYzMzMgorY2hlY2tzdW09YWJhZDQxM2FlYmZhOGY4MTQxYWJjNzE2NDgw OWU4YzQ2NzdmOGI2NTM4Zjg5MjEyODE5M2UwOTdlMGU5ODJhNQogbGliMzJkaXNhYmxlZD15ZXMK CkZyb20gOGYwNjQxNmFjZTA3M2MyMzhmNWI3M2JmZWFjN2E0N2E2ZTdjODk2NSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCAyNyBBcHIgMjAyMCAxMzowMjo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTRdIGRl dmhlbHA6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgYi9zcmNwa2dzL2RldmhlbHAv dGVtcGxhdGUKaW5kZXggYTFjMmRjYmI3NjIuLmJhNzVkZmZkY2U3IDEwMDY0NAotLS0gYS9zcmNw a2dzL2RldmhlbHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCkBAIC0x LDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGV2aGVscCcKIHBrZ25hbWU9ZGV2aGVs cAotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxw ZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9EZXZoZWxwIgog ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGNmOGVjOTMwMmJjNGE3OWUwMWFjNTNi ZDljOGI5NWE1OTZmNzFmMzUzNTFmNDhiNjMyNjMyMjdmMDlhOGEzZAorY2hlY2tzdW09OGI1YTg0 MzE5ZWZiYjJlZjFiYzQwMjJlZTNlZDJkNjY3ODc5NGViYTJkZmE5OTNlNTBlMDNkNmU3YjkzMGM1 ZQogCiBkZXZoZWxwLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3Bt ZW50IGZpbGVzIgoKRnJvbSA1YWMzZGE5NzYwNDY1ZjM2N2NhN2I3YWVmZWMzZGQ2ZTUxZDM0MDRl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDEzOjE3OjQyICswNjAwClN1YmplY3Q6IFtQQVRD SCAwNy81NF0gZW9nOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2VvZy90ZW1wbGF0 ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9nL3RlbXBs YXRlCmluZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9l b2cvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2LjEKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxl PW1lc29uCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3Vt PWU0NTRhMWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVkYTFhN2Jl MTg3YzljOTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4YzE5YWJk YjdiZWFlMWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cuc28iCiBs aWIzMmRpc2FibGVkPXllcwogCgpGcm9tIDYwNzU5YTE4MTI0NDhiOGQ4ZDA0M2VmOWQ3NGZkMTQz MjAzNmNiNTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTM6MzA6NTYgKzA2MDAKU3ViamVj dDogW1BBVENIIDA4LzU0XSBnbm9tZS1tYXBzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNw a2dzL2dub21lLW1hcHMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tYXBz L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlCmluZGV4IDAzMDBiZTYwNTk5 Li45ZmRkMjdkYjNiZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLW1hcHMnCiBwa2duYW1lPWdub21lLW1hcHMKLXZlcnNpb249My4z Ni4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3Rt YWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBnb2JqZWN0LWludHJvc3BlY3Rpb24gaW50bHRvb2wgcGtn LWNvbmZpZyBBcHBTdHJlYW0iCkBAIC0xMiw1ICsxMiw1IEBAIG1haW50YWluZXI9IkVubm8gQm9s YW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9NYXBzIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09MWEzMmVmZDk2YWQ4OThmNzdhNjM2ZDJkMDQ2M2Q3NTcwMDli NGI4MTIyNTljODlmZmRjYjkxZDZhZmMwNTJmOQorY2hlY2tzdW09NWJhMjE5YjlkZTk4Njc4Y2Vm YTU4NDhmNjUzOGRiOGRiZDA3ZjZjNzQ3ZmQ0M2E5OTE2N2EyNjY4NzhhOTc4NAogbm9jcm9zcz0i ZXZvbHV0aW9uLWRhdGFzZXJ2ZXIgY3Jvc3MgZ2lyIGRvZXNuJ3Qgd29yayIKCkZyb20gYWYwZTBm ZjBkODMxYmJkMzBlOTMzNTQwZDRmY2NiNGMxMWM0MDc5YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIg MjAyMCAxNDoyNzoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDkvNTRdIGdlZGl0OiB1cGRhdGUg dG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dlZGl0L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUg Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ2VkaXQvdGVtcGxhdGUgYi9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCmluZGV4IDRlMjcz YWFmMTgyLi5lM2ViZWEwNWVhNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nZWRpdC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ2VkaXQnCiBwa2duYW1lPWdlZGl0Ci12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0z LjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24K QEAgLTE3LDcgKzE3LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93 aWtpLmdub21lLm9yZy9BcHBzL0dlZGl0IgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtn bmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09NmRjMzhlZGEyMjdkMWMzNjhlMDM5ZTliZmY0ODVkMGJlZTlhNDlkNWY5NTYwYzM4N2VlMDhm NTgxOGE0ZTM4NworY2hlY2tzdW09Njg4NzU1NDY0M2M1YjFiMzg2MmFjMzY0ZDk3YjdiNTAyMjRi ZmY5NWU2NzU4YWVhYTA4ZjRhNDgyYjU1NDE5Nwogc2hsaWJfcHJvdmlkZXM9ImxpYmdlZGl0LTMu MzYuc28iCiBweXRob25fdmVyc2lvbj0zCiAKCkZyb20gNmQxM2Y3NGRjM2JjNjg5YmFiZTVlNTI0 YTBhNGM5OGQ1NjFjYTZjOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u YWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxNTowMjoxNCArMDYw MApTdWJqZWN0OiBbUEFUQ0ggMTAvNTRdIGdub21lLWNvbnRhY3RzOiB1cGRhdGUgdG8gMy4zNi4x LgoKLS0tCiBzcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRlIHwgMTAgKysrKysrKy0tLQog MSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jb250 YWN0cy90ZW1wbGF0ZQppbmRleCAyYTgyMTNhNzI0MC4uNzFkMTVjOGUzZjcgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1jb250 YWN0cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LWNvbnRhY3RzJwogcGtnbmFtZT1nbm9tZS1jb250YWN0cwotdmVyc2lvbj0zLjM0LjAKLXJldmlz aW9uPTIKK3ZlcnNpb249My4zNi4xCityZXZpc2lvbj0xCiB3cmtzcmM9Imdub21lLWNvbnRhY3Rz LSR7dmVyc2lvbiUuKn0iCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Ni b29rLXhzbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCkBAIC0x Myw0ICsxMyw4IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9Db250YWN0cyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25h bWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb24lLip9LnRhci54eiIKLWNoZWNr c3VtPTk5NjAyZWM4ZDY2MGMxZjNjOTJjYWU2MzU2ZjY0ZjcyZmI2ZGI1OGU1NWJjZTI3YTU5OTMz MGJmN2I2MjJmMTIKK2NoZWNrc3VtPWVlY2JkMjIwOWQ5M2M4ZDMxZGY5MmY2Y2NmNzkxODNiNDU2 YzZlMDdhMjhhZTAxNTVjYmRhMThhYWJkMzZmN2IKKworaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0 aGVuCisJaG9zdG1ha2VkZXBlbmRzKz0iIGZvbGtzLWRldmVsIgorZmkKCkZyb20gNDdmMDk0NmJh NTcyM2YxMjY4YzZiMTVkOTg3MTBmNzBkNWIwMzM0ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAy MCAwMjo1MjoxMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTEvNTRdIGdub21lLWNsb2NrczogdXBk YXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgfCA0ICsr LS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNs b2Nrcy90ZW1wbGF0ZQppbmRleCAzZTA0OWI0MmZiMS4uMzRiMTU5YWU2YTYgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY2xvY2tz L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY2xv Y2tzJwogcGtnbmFtZT1nbm9tZS1jbG9ja3MKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYu MgogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAt MTUsNCArMTUsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5v cmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2ku Z25vbWUub3JnL0FwcHMvQ2xvY2tzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFt ZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09 NGM5NzhiMGM3ZjdiOWRhZWJkMjcyZDAxNzVmOGE1NDQxNWUyMDc4ZjEzNGY0OGFkZDVjZjI0MzYy ZWVmNDljNgorY2hlY2tzdW09ZjExYjFiMjJlYzFmMjg1ZTUwOTg4MzY4NGMwYjFmNGE1MTQ5NmFl YTEwNTU5MTIzOWU1YjI2Zjg5ODY3NTFlNgoKRnJvbSBlNTE1MmJjM2NkMjZjOGY0NThiOTcwMWE4 ZDdkOWY0ODYyOWI3ZmRlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjI5OjMwICswNjAw ClN1YmplY3Q6IFtQQVRDSCAxMi81NF0gZ25vbWUtZXB1Yi10aHVtYm5haWxlcjogdXBkYXRlIHRv IDEuNi4KCi0tLQogc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIHwgNiAr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIGIvc3Jj cGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCmluZGV4IGIxNmU3MDU0NzVmLi5k NjdiNzdmMWU0MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQpAQCAt MSwxMyArMSwxMyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZXB1Yi10aHVtYm5haWxl cicKIHBrZ25hbWU9Z25vbWUtZXB1Yi10aHVtYm5haWxlcgotdmVyc2lvbj0xLjUKK3ZlcnNpb249 MS42CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0iZ2RrLXBpeGJ1Zi1kZXZlbCBsaWJhcmNoaXZl LWRldmVsIGxpYnhtbDItZGV2ZWwiCiBzaG9ydF9kZXNjPSJUaHVtYm5haWxlciBmb3IgRVB1YiBh bmQgTU9CSSBib29rcyIKIG1haW50YWluZXI9IkFsaWYgUmFjaG1hd2FkaSA8YXJjaEBzdWJvc2l0 by5jb20+IgotbGljZW5zZT0iR1BMLTMiCitsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHBzOi8vZ2l0Lmdub21lLm9yZy9icm93c2UvZ25vbWUtZXB1Yi10aHVtYm5haWxl ciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbn0vJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTMwODIxMGY1ODAwMjE5ZjY0Y2FlNDgy OGU1OWJiOGU2ZTRjNTNiODg4MDQ4Y2Y0ODcyMjFhZWI0MzM3ZDc5MWEKK2NoZWNrc3VtPWI1MDI0 MjBkOWIwMmVhMGIwZmM3OTg2ZWY1YTA5MWExMmIyMjg2YmUxNGZlZDllNDc1OTRmZTlmYTBjNTg5 OGUKCkZyb20gMDA2ZmZhODk3Mjc5NmU5ZTFmZWEzMjE2MGIyM2JmNzIzMzI1OGFmNyBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogTW9uLCAyNyBBcHIgMjAyMCAxNjoyMzo0NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTMvNTRd IGdub21lLXRlcm1pbmFsOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXRl cm1pbmFsL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS10ZXJtaW5hbC90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKaW5kZXggYmYzZDViY2Rk NDIuLjIyZGJjMTFiYWRhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS10ZXJtaW5hbCcKIHBrZ25hbWU9Z25vbWUtdGVy bWluYWwKLXZlcnNpb249My4zNi4xLjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyAt LXdpdGgtbmF1dGlsdXMtZXh0ZW5zaW9uIgpAQCAtMTMsOCArMTMsOCBAQCBzaG9ydF9kZXNjPSJH Tk9NRSB0ZXJtaW5hbCBlbXVsYXRvciBhcHBsaWNhdGlvbiIKIG1haW50YWluZXI9IkVubm8gQm9s YW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBH RkRMLTEuMy1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9UZXJt aW5hbCIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbjowOjR9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mM2Q3MDhhMWU3NmQ3N2Mx Yzg1YjEyNmY2ZTAwMzIyMGExNWQ0YTQ2YTUwZmQ4MDcwZTFhM2FhYmU2NzhhMzc2CitkaXN0Zmls ZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2 ZXJzaW9ufS50YXIueHoiCitjaGVja3N1bT00MWQxYjZhM2RjOTdjMDY2ZTI5NGFjZGI3ZjM2OTMx ZTgxNjY4NjM4ZGNjOTJmZmEyNWJjYTNkZGViYWNkZjQ2CiBsaWIzMmRpc2FibGVkPXllcwogCiBp ZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KCkZyb20gMGMxMTViNzg5ZWM5ZTM2MDc1MDczYTk5 Y2MyY2JjOWFhYmNiMzQ4MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u 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 JworCX0KK2ZpCgpGcm9tIDhkMzIzZmI5MDljMjJiMjNlYTYzOWQ3MzYyOTVlNTFlNTNiM2RmYTQg 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 bnNfZGVmYXVsdCs9IiBjaGVlc2UiCiBmaQoKRnJvbSBkZjVkYjg5ZTAwYjNkNWJlMzQ0OWFiYzc1 MTU3MTZjODY3MDQwYzgxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h 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 c3RtYWtlZGVwZW5kcys9IiBwb2xraXQiCgpGcm9tIGRlZDA4M2NkMWUxMzBhNmMyYzk4NDRiMmRj ZTk4NTU2MzkwOTk3ZTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAxMDoxMTo1NCArMDYwMApT dWJqZWN0OiBbUEFUQ0ggMTcvNTRdIGdub21lLXVzZXItZG9jczogdXBkYXRlIHRvIDMuMzYuMi4K Ci0tLQogc3JjcGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZp bGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS11c2VyLWRv Y3MvdGVtcGxhdGUKaW5kZXggNGNiNTUzOTZlMzcuLmNhOTkzMzQ2ZTNhIDEwMDY0NAotLS0gYS9z cmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXVzZXIt ZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXVzZXItZG9jcycKIHBrZ25hbWU9Z25vbWUtdXNlci1kb2NzCi12ZXJzaW9uPTMuMzQuMAordmVy c2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFyY2hzPW5vYXJjaAogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQpAQCAtMTAsNyArMTAsNyBAQCBkZXBlbmRzPSJ5ZWxwIgogc2hvcnRfZGVzYz0iVXNl ciBkb2N1bWVudGF0aW9uIGZvciBHTk9NRSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJDQy1CWS0zLjAiCi1ob21lcGFnZT0iaHR0cHM6 Ly9naXRodWIuY29tL0dOT01FL2dub21lLXVzZXItZG9jcyIKLSNjaGFuZ2Vsb2c9Imh0dHBzOi8v cmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9nbm9tZS11c2VyLWRvY3MvbWFzdGVyL05F V1MiCitob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXVzZXIt ZG9jcyIKK2NoYW5nZWxvZz0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXVz ZXItZG9jcy8tL3Jhdy8zLjM2LjIvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPThmOTkwN2ZmMTVmZmY5N2RhNzVlY2U2NDVjYzg2NzY2NzAzYWM1NGQ3MTZkMjU1NjNiYTY3 ZmZlZDFhZjI0ZWQKK2NoZWNrc3VtPTE5OGZlNGM4MzY3NzVhNWRjMjU0M2E2YTUyMGRmYjBhYzVi ZjI5MmNkY2IzNThhNTdjODZmMzVmNzA1ZTk5NTgKCkZyb20gZDdjYmMzOGZiYjNlYTM5OWNhZmNk NjFlMjExNzUzYTM4M2Y5NmM0NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg 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 ZTIzNTRkMmQxYWMwNWNmMWM3OWEwMWNjOTc1YzZhYTg5MTQ1NzU2CgpGcm9tIGYyNjU2MzQ4ZWJl N2YwNWYyOTg5OWY2MjFhZmNkZTFkMGUzYjg4ZTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAw ODozODoxNSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTkvNTRdIGV2b2x1dGlvbi1kYXRhLXNlcnZl cjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIv dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVt cGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA4ODVh MTE1ZjQ5Yi4uZGVjNzJlN2M0MjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEt c2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBs YXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRhdGEt c2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4zNi4xCit2 ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBl cj1naXIKQEAgLTE3LDcgKzE3LDcgQEAgbGljZW5zZT0iTEdQTC0yLjEtb25seSIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRXZvbHV0aW9uIgogY2hhbmdlbG9nPSJodHRw czovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZXZvbHV0aW9uLWRhdGEtc2VydmVy L2dub21lLTMtMzYvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7 dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTEzMTIy YjJlZGRkYjk4MzA2MjA3ZDJhMzVkNWNjYWUyNWE5MDcwMjc2OWNhMGEwYjUxNjUzYjU5ODQ5ODY3 OTYKK2NoZWNrc3VtPTk4ZTI3NGNmZWMxNmNlZTZhNGIzYjljNzg5N2Y2ZTExMzZkMDBlNGYzMWEw ZDY2MjE0OTI1YWJiYWM3NmU5N2IKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogaWYgWyAteiAiJENS T1NTX0JVSUxEIiBdOyB0aGVuCgpGcm9tIDliZDJhNjRjOTRmYzQ1MTNkMmI3MzY3YmMyODIyZDM0 YmE0NzdhZDQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwODozODoyMyArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMjAvNTRdIGV2b2x1dGlvbjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtn cy9ldm9sdXRpb24vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlv bnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24vdGVt cGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQppbmRleCA1NjBlZDkzZGEwMi4uYzlj M2FmYjdmNmYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZXZvbHV0aW9uJwogcGtnbmFtZT1ldm9sdXRpb24KLXZlcnNpb249My4zNi4xCit2ZXJz aW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdz PSItREVOQUJMRV9BVVRPQVI9T0ZGIC1ERU5BQkxFX0xJQkNSWVBUVUk9T0ZGIC1ERU5BQkxFX0dU S1NQRUxMPU9GRgpAQCAtMTksNyArMTksNyBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciwg TEdQTC0zLjAtb3ItbGF0ZXIsIEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93 aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0 aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi9nbm9tZS0zLTM2L05FV1MiCiBkaXN0 ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT04NzNhY2YxZGJlYzM4ZTY3ZTE2OTA2NDY0NWFj M2E5YjlhOTQ0YmQyYjYzMzE2MWRmNmU1ZjA1NzAwZTM2Y2I4CitjaGVja3N1bT1jNTA5NDhjMWEz ZGRiMzliNzJhY2Q5M2RlNzdmOTQ3ODdjZGMxYmVmMzMwYjk2N2JiYjhiNmM3MjMzNDMzMThhCiBz aGxpYl9wcm92aWRlcz0ibGliZXZvbHV0aW9uLWNhbGVuZGFyLnNvIGxpYmV2b2x1dGlvbi11dGls LnNvIGxpYmVtYWlsLWVuZ2luZS5zbwogIGxpYmV2b2x1dGlvbi1tYWlsLnNvIGxpYmV2b2x1dGlv bi1zaGVsbC5zbyIKIAoKRnJvbSBlMzA4YzYyMWJhY2I4MGQyNzY4ZmVjZDY0ZGRhMGEwM2FjYmQ4 NTNkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6Mzg6MjcgKzA2MDAKU3ViamVjdDogW1BB VENIIDIxLzU0XSBldm9sdXRpb24tZXdzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dz L2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24t ZXdzL3RlbXBsYXRlIGIvc3JjcGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCmluZGV4IDRmZjgx MTY0NjZjLi5hMTcxZjRjNGEwOCAxMDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZXdzL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2b2x1dGlvbi1ld3MnCiBwa2duYW1lPWV2b2x1dGlv bi1ld3MKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRExJQkVYRUNfSU5TVEFMTF9ESVI9L3Vzci9s aWIvZXZvbHV0aW9uIgpAQCAtMTIsNCArMTIsNCBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRXZvbHV0aW9uIgogY2hh bmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZXZvbHV0aW9u LWV3cy9nbm9tZS0zLTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1k MDg4M2M3ZDIyNzgyN2NjNWM0NDY4YjdlMzFhM2VlMzcwYmNkN2Q0MWE0ZGJiOTUwYWI1ZGIzNmM5 NTUxYWMxCitjaGVja3N1bT0yZTQyZTQ4OTA0ODdmOGM3ZjlkNzc2YTQ0NDRkZjZlZmQ1Mjk5Y2Ew MDNhMzAwMDJlYjVmMDIyMDkxZGMzNTlkCgpGcm9tIGZhMGY5NmJhOGMxZTgzNjVhMDRjMDAxN2Ey OGYzNmMzMDdiYTA3YmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMToyMDoyMyArMDYwMApT dWJqZWN0OiBbUEFUQ0ggMjIvNTRdIGF0azogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtn cy9hdGsvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0ay90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYXRrL3RlbXBsYXRlCmluZGV4IDdjMTRiMTE2NTk4Li5jYTIyZDM2NjE5OCAxMDA2NDQK LS0tIGEvc3JjcGtncy9hdGsvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdGsvdGVtcGxhdGUKQEAg LTEsMTggKzEsMTggQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F0aycKIHBrZ25hbWU9YXRrCi12 ZXJzaW9uPTIuMzQuMQordmVyc2lvbj0yLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGludHJvc3BlY3Rpb249 JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBn bGliLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgZ2xpYi1kZXZl bCIKIG1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIgogc2hvcnRfZGVzYz0iU2V0IG9mIGludGVy ZmFjZXMgZm9yIGFjY2Vzc2liaWxpdHkiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94 QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly9kZXZlbG9wZXIuZ25vbWUub3JnL2F0ay8iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vYXRrLyR7dmVyc2lvbiUuKn0vYXRrLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDRm MGUzYjNkMjEyNjVmY2YyYmMzNzFlMTE3ZGE1MWM0MmVkZTFhNzFmNmRiMWM4MzRlNjk3NmJiMjA5 OTdjYgorY2hlY2tzdW09ZmI3NjI0N2UzNjk0MDJiZTIzZjFmNWM2NWQzOGE5NjM5YzExNjRkOTM0 ZTQwZjZhOWNmM2M5ZTk2YjY1Mjc4OAogCiAjIFBhY2thZ2UgYnVpbGQgb3B0aW9ucwogYnVpbGRf b3B0aW9ucz0iZ2lyIgoKRnJvbSBiZDM1Njg2NjRiMTFkMTExNDg2ZGYxNGYxNDVlMjBjNWE3NzMz ZDMzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTI6NDM6NTIgKzA2MDAKU3ViamVjdDogW1BB VENIIDIzLzU0XSBhdC1zcGkyLWNvcmU6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3Mv YXQtc3BpMi1jb3JlL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2Vy dGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdC1zcGkyLWNv cmUvdGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQppbmRleCBiMzgzZmU5 OWJlZC4uYTEzYzU2MDBkNzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdC1zcGkyLWNvcmUnCiBwa2duYW1lPWF0LXNwaTItY29y ZQotdmVyc2lvbj0yLjM0LjAKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcg ZGJ1cyBnbGliLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgZGJ1 cyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImxpYmdsaWItZGV2ZWwgbGliWGV4dC1kZXZlbCBs aWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsCiAgbGliWGV2aWUtZGV2ZWwgZGJ1cy1kZXZlbCIKIHNo b3J0X2Rlc2M9IkFzc2lzdGl2ZSBUZWNobm9sb2d5IFNlcnZpY2UgUHJvdmlkZXIgSW50ZXJmYWNl IgpAQCAtMTIsNyArMTIsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczov L2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvYXQtc3BpMi1jb3JlIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09ZDYyOWNkYmQ2NzRlNTM5Zjg5MTIwMjg1MTJhZjU4Mzk5MDkzOGM3YjQ5 ZTI1MTg0YzEyNmIwMDEyMWVmMTFjNgorY2hlY2tzdW09ODhkYTU3ZGUwYTdlM2M2MGJjMzQxYTk3 NGE4MGZkYmEwOTE2MTJkYjM1NDdjNDEwZDZkZWFiMDM5Y2E1YzA1YQogCiAjIFBhY2thZ2UgYnVp bGQgb3B0aW9ucwogYnVpbGRfb3B0aW9ucz0iZ2lyIgoKRnJvbSBjYzM1Nzc2ZTYyYjRkZmJkNDhl ZWUzMTM2MjRmMjJkZDExMWY5YmE5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTI6NDQ6MDAg KzA2MDAKU3ViamVjdDogW1BBVENIIDI0LzU0XSBhdC1zcGkyLWF0azogdXBkYXRlIHRvIDIuMzQu Mi4KCi0tLQogc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNo YW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlIGIvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQpp bmRleCA0MzUxYjc5OTZmMy4uYWE3Yjg4MzljOWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXQtc3Bp Mi1hdGsvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQpAQCAtMSw2 ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F0LXNwaTItYXRrJwogcGtnbmFtZT1hdC1z cGkyLWF0awotdmVyc2lvbj0yLjM0LjEKK3ZlcnNpb249Mi4zNC4yCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJsaWJ0b29sIHBrZy1jb25maWcgaW50bHRv b2wgZ2xpYi1kZXZlbCIKQEAgLTEwLDcgKzEwLDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQg PGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4wLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHA6Ly93d3cuZ25vbWUub3JnIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09Nzc2ZGY5MzA3NDhmZGU3MWMxMjhiZTZjMzY2YTk4N2I5OGI2ZWU2NmQ1MDhlZDljOGRi MjM1NWJmNGI5Y2MxNgorY2hlY2tzdW09OTAxMzIzY2VlMGVlZjA1YzAxZWM0ZGVlMDZjNzAxYWVl Y2E4MWEzMTRhN2Q2MDIxNmZhMzYzMDA1ZTI3ZjRmMAogCiBhdC1zcGkyLWF0ay1kZXZlbF9wYWNr YWdlKCkgewogCWRlcGVuZHM9IiR7bWFrZWRlcGVuZHN9ICR7c291cmNlcGtnfT49JHt2ZXJzaW9u fV8ke3JldmlzaW9ufSIKCkZyb20gOTEyZTUwMGE1ZDQzNzYwODg3NDQzMTNmODQxMDViZjBjNWU1 NTJkZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs 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 JHtzaG9ydF9kZXNjL1B5dGhvbjIvUHl0aG9uM30iCiAJcGtnX2luc3RhbGwoKSB7CgpGcm9tIGFi OGRlYWY3MWUzZGNjOTI2YTE0YmIyOWRhYzM5ODlkYjNhNzU4MDcgTW9uIFNlcCAxNyAwMDowMDow 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 b20gZTFmY2FjZjkwZDM3ZWFmYjA4NTk1MzAyZThlOGY1MWIyZTE3OWM2NiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJp LCAxIE1heSAyMDIwIDA4OjQxOjU2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNy81NF0gZmlsZS1y b2xsZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZSBiL3NyY3BrZ3Mv ZmlsZS1yb2xsZXIvdGVtcGxhdGUKaW5kZXggNWZiNzZkOTczMDcuLjZhMGMyODBmMGQ1IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmlsZS1y b2xsZXIvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmaWxl LXJvbGxlcicKIHBrZ25hbWU9ZmlsZS1yb2xsZXIKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMu MzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0 dGV4dCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyIKQEAgLTEyLDQgKzEyLDQgQEAgbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0Zp bGVSb2xsZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iOTE0NGRlOGY1MzZm NTgzZWMyOWQ3MDNjMmMxNzBiZjJkMDBjNmMxNjZjZDVlM2Y3ZWZhYmRhNTUxZjEwNDc4CitjaGVj a3N1bT0yNjhmN2ZkYWQ4ZDJhNzhkZmVkNWU4MmViODcxMGJhZDM4OWMzMTFiNzIwNjY2ZDZmMDdh MDRlZDUxMDU2YmQyCgpGcm9tIGU0MDNmNDcwYzE0ZGVkYjUyOGU5MjNhNzFiZDM3NWZiNzFlMjBj ZTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwOToxNDoxMCArMDYwMApTdWJqZWN0OiBbUEFU Q0ggMjgvNTRdIHBvbGFyaTogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9wb2xhcmkv dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wb2xhcmkvdGVtcGxhdGUgYi9zcmNwa2dz L3BvbGFyaS90ZW1wbGF0ZQppbmRleCA1ZDFjNzFiMGY5MS4uNjhhMGViMWVhYWUgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvcG9sYXJpL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcG9sYXJpL3RlbXBsYXRl CkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncG9sYXJpJwogcGtnbmFtZT1w b2xhcmkKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpdHN0b29sIGdvYmplY3Qt aW50cm9zcGVjdGlvbiBnZXR0ZXh0IgpAQCAtMTMsNSArMTMsNSBAQCBtYWludGFpbmVyPSJPcnBo YW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIK IGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvUG9sYXJpIgogZGlzdGZpbGVz PSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzRjMmFhYTY2YjIwMmVlYzNhYjdkYmZlMDhiOGJiNzMw ZTQwY2FmYzc3Y2IwYTllYWUxOTBiZjFjOGMxYjVlNgorY2hlY2tzdW09YWNmY2RiMTY1M2JmMmU0 N2JkNWFiODkxZTM4YTAwMDJjMmY5M2MxNjAzOTcxMTljM2EwYjVjM2VjNTdkMjA4YQogbm9jcm9z cz0idGVsZXBhdGh5LWlkbGU6ICAgRmlsZSAnLi4vdG9vbHMvZ2xpYi1naW50ZXJmYWNlLWdlbi5w eScsIGxpbmUgNzkxIFN5bnRheEVycm9yOiBpbnZhbGlkIHN5bnRheCIKCkZyb20gZmIxOGU2NmU3 YmM4ZWQ1N2ZjZGM4MmZjNmI0MDE3ZmMxNjlmMWQ5YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIw IDA3OjU4OjAyICswNjAwClN1YmplY3Q6IFtQQVRDSCAyOS81NF0gZGNvbmYtZWRpdG9yOiB1cGRh dGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGNvbmYtZWRp dG9yL3RlbXBsYXRlCmluZGV4IGRlMjUwYmJjOGE5Li4zYjhjZDhjYjcyZiAxMDA2NDQKLS0tIGEv c3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kY29uZi1lZGl0b3Iv dGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkY29uZi1lZGl0 b3InCiBwa2duYW1lPWRjb25mLWVkaXRvcgotdmVyc2lvbj0zLjM2LjAKK3ZlcnNpb249My4zNi4y CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29r LXhzbCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTAsNCArMTAsNCBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1By b2plY3RzL2Rjb25mIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NzJlZWQwNTY3 MDkxN2Y4ZTQzMjAwZTQwY2NjNmJlNjAyMTFmMGE4N2IwMTc1MzRlYWMxZmQ2YzcxNzNhMDY5Mwor Y2hlY2tzdW09ZWRjZWM4ODY3ZjAxODU4OTEyNWYxNzc0MDc3NjBjNjQyYmJiYjUyZmU1MTIyZGFh YzU5MDUyMjNkNmIzZTFjNwoKRnJvbSA5MDAxNzg4YWYzNTQ3ZjllY2Q5Njg0NWVkZmI5OTA5ZTEw Y2JmYzhhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTA6MjA6NTYgKzA2MDAKU3ViamVjdDog W1BBVENIIDMwLzU0XSB0cmFja2VyOiB1cGRhdGUgdG8gMi4zLjQuCgotLS0KIHNyY3BrZ3MvdHJh Y2tlci90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCsp LCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZSBi L3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQppbmRleCA4NzAyYmNmNWYzMy4uZTgxNGY3N2M3MTEg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RyYWNr ZXIvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3RyYWNr ZXInCiBwa2duYW1lPXRyYWNrZXIKLXZlcnNpb249Mi4zLjEKK3ZlcnNpb249Mi4zLjQKIHJldmlz aW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9h cmdzPSItRGRvY3M9ZmFsc2UgLURmdHM9dHJ1ZSAtRGZ1bmN0aW9uYWxfdGVzdHM9ZmFsc2UKICAt RGpvdXJuYWw9dHJ1ZSAtRG1hbj10cnVlIC1EbmV0d29ya19tYW5hZ2VyPWVuYWJsZWQgLURzdGVt bWVyPWRpc2FibGVkCiAgLURzeXN0ZW1kX3VzZXJfc2VydmljZXM9bm8iCi1ob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCB2YWxhIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0 IHBrZy1jb25maWcgZ2xpYi1kZXZlbCB2YWxhIgogbWFrZWRlcGVuZHM9ImRidXMtZGV2ZWwgbGli Z2xpYi1kZXZlbCBpY3UtZGV2ZWwganNvbi1nbGliLWRldmVsCiAgbGlic291cC1kZXZlbCBsaWJ4 bWwyLWRldmVsIHNxbGl0ZS1kZXZlbCBOZXR3b3JrTWFuYWdlci1kZXZlbAogIGJhc2gtY29tcGxl dGlvbiIKQEAgLTE2LDcgKzE2LDcgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly9saXZlLmdub21lLm9yZy9UcmFja2VyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L3RyYWNr ZXIvJHt2ZXJzaW9uJS4qfS90cmFja2VyLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjY3 NDg3MjZlNDY1YWQyZjRkOTkxNTYwNjM0YjFmZDBkZjg4NDFmM2Q5ODFiM2I4MzdjNDE2MmFiZWRm MDhhMQorY2hlY2tzdW09NTc3OTUyMjQ0YWI5NzdjNzhiMGI4OGUyZjYzYzQxOTdlYWJhMTZlNGQ2 NmJmZjY5MmI3ZjU4OTkzZTA2NTE2ZAogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlo b3N0bWFrZWRlcGVuZHMrPSIgZGJ1cyIKCkZyb20gZWNiNzEzZDE3MzNlNWFlNjU1MzBmZDJiNjc2 M2JiODk5ZjVkMzllYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDEwOjQ4OjQ2ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAzMS81NF0gc2ltcGxlLXNjYW46IHVwZGF0ZSB0byAzLjM2LjIuMS4KCi0t LQogc3JjcGtncy9zaW1wbGUtc2Nhbi90ZW1wbGF0ZSB8IDcgKysrLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L3NpbXBsZS1zY2FuL3RlbXBsYXRlIGIvc3JjcGtncy9zaW1wbGUtc2Nhbi90ZW1wbGF0ZQppbmRl eCBkMGZjOTc5MDNlNS4uNWUwN2Q2M2YwOGQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2ltcGxlLXNj YW4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zaW1wbGUtc2Nhbi90ZW1wbGF0ZQpAQCAtMSw3ICsx LDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NpbXBsZS1zY2FuJwogcGtnbmFtZT1zaW1wbGUt c2NhbgotX2dub21lX3ZlcnNpb249My4zNgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4y LjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRl eHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgdmFsYSIKQEAgLTExLDUgKzEwLDUgQEAg c2hvcnRfZGVzYz0iR1RLIFNpbXBsZSBzY2FubmluZyB1dGlsaXR5IgogbWFpbnRhaW5lcj0iRW5u byBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0 ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL3NpbXBsZS1zY2Fu IgotZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHtfZ25vbWVfdmVyc2lvbn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTc0MjdmMDkwMjI1M2UwMTM4 Mzk0MTI0M2Y1NmVmOTg3NjA5OTQzYzUzN2Y5MmRkMTA0M2E1M2ViNWVhYWY5MmUKK2Rpc3RmaWxl cz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKi4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgorY2hlY2tzdW09YmI4Y2U1NzUwY2QwNDA1ZTE0ZTRhYzhiMDlmNGE1 ODdjMmZhM2E0MTg2MTRhZDQyNWE2Njk0Yzk4MWJiMDEyYgoKRnJvbSAxYWY5MmMzNGY1OWJjMWEz ZjFmMDI2MjJiYWVlNWYyMDM5NzJiZWY3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDYgTWF5IDIwMjAgMTk6NTY6 MTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDMyLzU0XSBvcmNhOiB1cGRhdGUgdG8gMy4zNi4yLgoK LS0tCiBzcmNwa2dzL29yY2EvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcmNhL3Rl bXBsYXRlIGIvc3JjcGtncy9vcmNhL3RlbXBsYXRlCmluZGV4IGY3MDIwMmU2ZDc2Li44YTcwYzg0 OWY2ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9vcmNhL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3Jj YS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ29yY2EnCiBw a2duYW1lPW9yY2EKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQog YXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMyw3ICsxMyw3IEBA IG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNl PSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJv amVjdHMvT3JjYSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWMxYWM2NDhiNmJl MzE0ODhjMjZmZjk1OTExNDI4Nzg2OWRmOWNlM2NhMjE5OTllNDBkZWQ4Nzc0MWM5ODgzMWYKK2No ZWNrc3VtPWNmMDA1NWI3NmYyMTU5YzMzYzlkOWY3ZGViYjc2OTQzNWMyMDFiYmZhNmRjZjBmMDFm ZGM1OGU5Mjk0N2JmNDMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2Vk ZXBlbmRzKz0iIHB5dGhvbjMtZ29iamVjdC1kZXZlbCIKCkZyb20gYWM2MmJjMjliYTMwZGUxMTU5 ZDg2MjgwMjc3YmNiODYwZDc2YWM4ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDExOjAzOjI5 ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzMy81NF0gZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3M6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRv Y3MvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQt ZG9jcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxh dGUKaW5kZXggNWJlYzkzNDkwYmEuLmJlZDliNjk2MTYyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2du b21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZ2V0 dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcycKIHBrZ25hbWU9Z25vbWUtZ2V0dGlu Zy1zdGFydGVkLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249 MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMSw0ICsxMSw0 IEBAIGxpY2Vuc2U9IkNDLUJZLVNBLTMuMCIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9t ZS5vcmcvR05PTUUvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MiCiAjY2hhbmdlbG9nPSJodHRw czovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvcmF3 L21hc3Rlci9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjcwY2UyY2Ey M2FkNzg2MjE1ZjNjOTJlYzg1NzgzZTNhYWJlZDA3ZTRmNzg3MDBmYTI3ZjliMmNmNzZlMDNkYgor Y2hlY2tzdW09MDQ5NGI4OTEzYTk0NmI2NDUwNTM2ZTEyMGMxNTRhYmQyOTIzOGViYmEyZjUyNzM0 NTkyYjFmNjQ1ZTUyMWRjNgoKRnJvbSA5M2E3ZjZiOGY5NDYwYWE5YWRhZmQ5YWFjN2E1NmNmMjBk MThlOTZjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBTdW4sIDE5IEFwciAyMDIwIDE2OjUxOjQyICswNjAwClN1YmplY3Q6 IFtQQVRDSCAzNC81NF0gZ25vbWUtcGFuZWw6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIGNvbW1v bi9zaGxpYnMgICAgICAgICAgICAgICAgfCAzICsrLQogc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1w bGF0ZSB8IDYgKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRl eCAwYjA5MGRjNjQyYS4uYTE5YmYzNGUxNzIgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysr IGIvY29tbW9uL3NobGlicwpAQCAtNTY1LDcgKzU2NSw4IEBAIGxpYnBhY2thZ2VraXQtZ2xpYjIu c28uMTggUGFja2FnZUtpdC0xLjEuMTJfMQogbGlicHNsLnNvLjUgbGlicHNsLTAuMjAuMl8xCiBs aWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4zNC4wXzEKIGxpYnNvdXAtZ25vbWUtMi40LnNvLjEg bGlic291cC1nbm9tZS0yLjM0LjBfMQotbGlicGFuZWwtYXBwbGV0LnNvLjMgZ25vbWUtcGFuZWwt My4zMC4wXzEKK2xpYmdub21lLXBhbmVsLnNvLjAgZ25vbWUtcGFuZWwtMy4zNi4xXzEKK2xpYnBh bmVsLWFwcGxldC5zby4zIGdub21lLXBhbmVsLTMuMzYuMV8xCiBsaWJ1bmludW0uc28uNSBsaWJ1 bmludW0tMi43XzEKIGxpYnVuaXF1ZS0zLjAuc28uMCBsaWJ1bmlxdWUtMi45MS40XzEKIGxpYndl YmtpdDJndGstNC4wLnNvLjM3IHdlYmtpdDJndGstMi42LjJfMQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nbm9tZS1wYW5lbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtcGFuZWwvdGVtcGxhdGUKaW5k ZXggNzBmMjNiOGI1NTEuLjliMDBiZmFiNjU4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXBh bmVsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtcGFuZWwvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1wYW5lbCcKIHBrZ25hbWU9Z25vbWUt cGFuZWwKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0zCit2ZXJzaW9uPTMuMzYuMQorcmV2aXNp b249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9ImF4X2N2X3pv bmVpbmZvX3R6ZGlyPS91c3Ivc2hhcmUvem9uZWluZm8iCiBob3N0bWFrZWRlcGVuZHM9ImdldHRl eHQtZGV2ZWwgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgdHpkYXRhIGdldHRleHQiCkBA IC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4 Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBHRkRMLTEuMS1vci1sYXRlciwgTEdQ TC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0 cy9Hbm9tZVBhbmVsIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YTZiYzAyNTUy NTJlZWI0Yjk2NGJjYmU1NWZkNzkwOGI2OWY5MTRjMDYyYzVlYzhkZmY1YWMwMjYyZDI5YjkwZAor Y2hlY2tzdW09MWUyMWI3MjZkZDM5NzUyM2FlNzlkMjllYjUzOGJjYWUwOWUzNDI3ZTIzY2NkNjNm MjhlYjI1ZWYzNTUyYWJkMwogcGF0Y2hfYXJncz0iLU5wMSIKIAogZ25vbWUtcGFuZWwtZGV2ZWxf cGFja2FnZSgpIHsKCkZyb20gNTBjNjdlMDM5MmI3MzQ4NWUxZDIwM2U0OGY5Y2U1MWU3YjhmMjlk OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29r LmNvbT4KRGF0ZTogU3VuLCAxOSBBcHIgMjAyMCAxNzoyNjozNiArMDYwMApTdWJqZWN0OiBbUEFU Q0ggMzUvNTRdIG1ldGFjaXR5OiB1cGRhdGUgdG8gMy4zNi4xLgoKLS0tCiBjb21tb24vc2hsaWJz ICAgICAgICAgICAgIHwgMSArCiBzcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlIHwgNiArKystLS0K IDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGExOWJmMzRlMTcyLi5m NGJiZTMwOTU2MyAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJz CkBAIC01NjcsNiArNTY3LDcgQEAgbGlic291cC0yLjQuc28uMSBsaWJzb3VwLTIuMzQuMF8xCiBs aWJzb3VwLWdub21lLTIuNC5zby4xIGxpYnNvdXAtZ25vbWUtMi4zNC4wXzEKIGxpYmdub21lLXBh bmVsLnNvLjAgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnBhbmVsLWFwcGxldC5zby4zIGdub21l LXBhbmVsLTMuMzYuMV8xCitsaWJtZXRhY2l0eS5zby4xIG1ldGFjaXR5LTMuMzYuMV8xCiBsaWJ1 bmludW0uc28uNSBsaWJ1bmludW0tMi43XzEKIGxpYnVuaXF1ZS0zLjAuc28uMCBsaWJ1bmlxdWUt Mi45MS40XzEKIGxpYndlYmtpdDJndGstNC4wLnNvLjM3IHdlYmtpdDJndGstMi42LjJfMQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbWV0YWNpdHkvdGVt cGxhdGUKaW5kZXggMWQ0MTkyNjc2NjguLmJiN2RmYzBiZmM5IDEwMDY0NAotLS0gYS9zcmNwa2dz L21ldGFjaXR5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUKQEAgLTEs OSArMSw5IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtZXRhY2l0eScKIHBrZ25hbWU9bWV0YWNp dHkKLXZlcnNpb249My4zMC4xCit2ZXJzaW9uPTMuMzYuMQogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Z251LWNvbmZpZ3VyZQotaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRldmVsIGdsaWItZGV2 ZWwgaXRzdG9vbCBwa2ctY29uZmlnIHllbHAtdG9vbHMgemVuaXR5IgoraG9zdG1ha2VkZXBlbmRz PSJnZXR0ZXh0IGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmlnIHllbHAtdG9vbHMgemVuaXR5 IgogbWFrZWRlcGVuZHM9ImdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZ3RrKzMtZGV2 ZWwgbGliY2FuYmVycmEtZGV2ZWwKICBsaWJnbGliLWRldmVsIGxpYmd0b3AtZGV2ZWwgbGliU00t ZGV2ZWwgbGliWGNvbXBvc2l0ZS1kZXZlbCBsaWJYZGFtYWdlLWRldmVsCiAgbGliWGZpeGVzLWRl dmVsIGxpYlhpbmVyYW1hLWRldmVsIGxpYlhyZW5kZXItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdv LWRldmVsCkBAIC0xNCw0ICsxNCw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9tZXRhY2l0eSIKIGRpc3RmaWxlcz0iJHtHTk9N RV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRh ci54eiIKLWNoZWNrc3VtPTBmMTMxMWI3YWEzOGRlNzFjNjYwODBiZDJiNzQ0ZGUyY2Q5NTgwYWZj YWVlOWM2MDk3YTdkM2Y1YzQyMTc5OGEKK2NoZWNrc3VtPTExZjA3NjkzZTJiMjY2ODQwNzU5MDYz YTRiYzgwNzM0NjA3MGU4ZTdmZWM4ZjUzY2QwNzU3ZjY2NjJjMWIzMjMKCkZyb20gZmU0MGQ0MWU1 MDY1MTBhM2U1ZmU0MDY2Mzc3OTA5MDFkZWM5MzA1MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCAyOSBBcHIgMjAy MCAwNTozMjoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzYvNTRdIGdub21lLW1lbnVzOiB1cGRh dGUgdG8gMy4zNi4wLgoKLS0tCiBzcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlIHwgNiArKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtbWVu dXMvdGVtcGxhdGUKaW5kZXggMjkxMDIxMjljMzguLmU3ODdmYjhkZTZiIDEwMDY0NAotLS0gYS9z cmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1tZW51cycK IHBrZ25hbWU9Z25vbWUtbWVudXMKLXZlcnNpb249My4zMi4wCi1yZXZpc2lvbj0yCit2ZXJzaW9u PTMuMzYuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogYnVpbGRfaGVs cGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyIKQEAgLTEyLDcgKzEy LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1tZW51cyIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKLWNoZWNrc3VtPWM4NTBjNjRiMjA3NDI2NWZlNTllMDk5YTM0MGI4Njg5Y2YzZGQ0 NjU4ZGM5ZmVkZGQyYWI1ZTk1ZjFhNzRiNzQKK2NoZWNrc3VtPWQ5MzQ4ZjM4YmRlOTU2ZmMzMjc1 M2IyOGMxY2RlMTljMTc1YmZkYmYxZjRkNWIwNjAwM2IzYWEwOTE1M2JiMWYKIAogYnVpbGRfb3B0 aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIGU1OGNjYjFhZmRi YWEyYTM1YWNmYzdmZjhiZGNiZTI5M2E1ZmQxOTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAw NjowMzo1NSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzcvNTRdIGdub21lLWZsYXNoYmFjazogdXBk YXRlIHRvIDMuMzYuMy4KCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0w LjgucGF0Y2ggIHwgMjggKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1mbGFzaGJh Y2svdGVtcGxhdGUgICAgICAgICAgICAgIHwgMjYgKysrKysrKysrKystLS0tLS0KIDIgZmlsZXMg Y2hhbmdlZCwgNDUgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0 Y2ggYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjJhMDBkY2VmZjcwCi0tLSAvZGV2 L251bGwKKysrIGIvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svcGF0Y2hlcy9jb21waXotMC44LnBh dGNoCkBAIC0wLDAgKzEsMjggQEAKK2RpZmYgLS1naXQgY29uZmlndXJlIGNvbmZpZ3VyZQoraW5k ZXggMjZjZWE1MS4uZDI0NjNjYyAxMDA3NTUKKy0tLSBjb25maWd1cmUKKysrKyBjb25maWd1cmUK K0BAIC0yMDg0Miw4ICsyMDg0Miw4IEBAIGZpCisgaWYgdGVzdCAieCR3aXRoX2NvbXBpel9zZXNz aW9uIiAhPSAieG5vIjsgdGhlbiA6CisgCisgICBpZiB0ZXN0IC1uICIkUEtHX0NPTkZJRyIgJiYg XAorLSAgICB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCRQS0df Q09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzIFwibGliY29tcGl6Y29uZmlnID49IDAuOS4x NC4wXCIiOyB9ID4mNQorLSAgKCRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzICJs aWJjb21waXpjb25maWcgPj0gMC45LjE0LjAiKSAyPiY1CisrICAgIHsgeyAkYXNfZWNobyAiJGFz X21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1l cnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC44LjE4LjBcIiI7IH0gPiY1CisrICAoJFBLR19D T05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNvbXBpemNvbmZpZyA+PSAwLjguMTYu MCIpIDI+JjUKKyAgIGFjX3N0YXR1cz0kPworICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVu by0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgICB0ZXN0ICRhY19zdGF0dXMgPSAw OyB9OyB0aGVuCitkaWZmIC0tZ2l0IGNvbmZpZ3VyZS5hYyBjb25maWd1cmUuYWMKK2luZGV4IGI2 ZTE0NzAuLmQyOGE3MGIgMTAwNjQ0CistLS0gY29uZmlndXJlLmFjCisrKysgY29uZmlndXJlLmFj CitAQCAtMzQwLDcgKzM0MCw3IEBAIEFDX0FSR19XSVRIKFtjb21waXotc2Vzc2lvbl0sCisgICAg ICAgICAgICAgW3dpdGhfY29tcGl6X3Nlc3Npb249IiR3aXRodmFsIl0sIFt3aXRoX2NvbXBpel9z ZXNzaW9uPSJhdXRvIl0pCisgCisgQVNfSUYoW3Rlc3QgIngkd2l0aF9jb21waXpfc2Vzc2lvbiIg IT0gInhubyJdLCBbCistICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0gMC45 LjE0LjBdLAorKyAgUEtHX0NIRUNLX0VYSVNUUyhbbGliY29tcGl6Y29uZmlnID49IDAuOC4xNi4w XSwKKyAgICAgICAgICAgICAgICAgICAgW2ZvdW5kX2NvbXBpej0ieWVzIl0sIFtmb3VuZF9jb21w aXo9Im5vIl0pCisgCisgICBBU19JRihbdGVzdCAieCRmb3VuZF9jb21waXoiID0gInh5ZXMiXSwg WwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUgYi9zcmNwa2dz L2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZQppbmRleCBkMzIxMjBjYWI2Zi4uYTI5ZmYwMTY0OWUg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlCkBAIC0xLDIwICsxLDI4IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdnbm9tZS1mbGFzaGJhY2snCiBwa2duYW1lPWdub21lLWZsYXNoYmFjawotdmVy c2lvbj0zLjM0LjIKK3ZlcnNpb249My4zNi4zCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9Z2ly CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCi1jb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29t cGlsZS13YXJuaW5ncz1taW5pbXVtIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9t YWtlIGdsaWItZGV2ZWwgZ2V0dGV4dCIKLW1ha2VkZXBlbmRzPSJndGsrMy1kZXZlbCBnc2V0dGlu Z3MtZGVza3RvcC1zY2hlbWFzLWRldmVsCi0gbGliZ2xpYi1kZXZlbCBnZGstcGl4YnVmLWRldmVs IHVwb3dlci1kZXZlbCBpYnVzLWRldmVsIHBvbGtpdC1kZXZlbAotIHB1bHNlYXVkaW8tZGV2ZWwg bGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxpYlgxMS1kZXZlbCBwYW5nby1kZXZlbAot IGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRlc2t0b3AtZGV2 ZWwiCitjb25maWd1cmVfYXJncz0iLS13aXRoLWNvbXBpei1zZXNzaW9uIC0tZW5hYmxlLWNvbXBp bGUtd2FybmluZ3M9bWluaW11bSIKK2hvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBhdXRvbWFr ZSBnbGliLWRldmVsIGdldHRleHQgbGlidG9vbCIKK21ha2VkZXBlbmRzPSJndGsrMy1kZXZlbCBw YW0tZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbCBlbG9naW5kLWRldmVsCisg Z2RtLWRldmVsIGxpYmNvbXBpemNvbmZpZy1kZXZlbCBsaWJnbGliLWRldmVsIGdkay1waXhidWYt ZGV2ZWwgdXBvd2VyLWRldmVsIGlidXMtZGV2ZWwKKyBwb2xraXQtZGV2ZWwgcHVsc2VhdWRpby1k ZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRl dmVsCisgbGlieGtiZmlsZS1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3Rv cC1kZXZlbCBnbm9tZS1wYW5lbC1kZXZlbCIKIGRlcGVuZHM9Imdub21lLWJsdWV0b290aCBnbm9t ZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRhZW1vbgotIGdub21lLXBhbmVsIGdub21lLXRoZW1l cy1zdGFuZGFyZCBtZXRhY2l0eSIKKyBnbm9tZS1wYW5lbCBnbm9tZS10aGVtZXMtZXh0cmEgbWV0 YWNpdHkiCiBzaG9ydF9kZXNjPSJHTk9NRSAzIHNlc3Npb24gd2l0aCBzaW1pbGFyIHVzZXIgZXhw ZXJpZW5jZSB0byB0aGUgR05PTUUgMi54IHNlcmllcyIKIG1haW50YWluZXI9InNoaXpvbmljIDxy ZWFsdGlhekBnbWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dub21lRmxhc2hiYWNrIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09M2JlNjUzODhjZDJjOGYzOTc0MWJjYzA1ZGE4N2Vm NDAwMzUxODNhOWEzOTUwMmQ2NzY5NjI0MmMyYWViNDY5YworY2hlY2tzdW09MmRiYTllYTQwZjJk YTgxYzIyOTU0YThjY2MyOWY4ZjFmYTRjYTgzOTVhNmJiNTUyNTA2NjM1ODMyNzUxYzFhNworCitw cmVfY29uZmlndXJlKCkgeworCWF1dG9yZWNvbmYgLXZmaQorfQorCitwb3N0X2luc3RhbGwoKSB7 CisJdnNlZCAtaSAtZSAicy8gLS1zeXN0ZW1kLy9nIiAke0RFU1RESVJ9L3Vzci9saWJleGVjL2du b21lLWZsYXNoYmFjay17Y29tcGl6LG1ldGFjaXR5fQorfQoKRnJvbSAzZjJkMzlmYmUwZDA4NzY3 Y2I2ODBiODk3ZTU1ZDEzMDkyNzdjY2ZlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDA2OjU5 OjQwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzOC81NF0gZ3JhcGhlbmU6IHVwZGF0ZSB0byAxLjEw LjAuCgotLS0KIHNyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgfCAxMCArKysrKy0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlCmlu ZGV4IGYyZmU4MWEzZjQ3Li5jYjczODVmZWRiNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9ncmFwaGVu ZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEw IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdncmFwaGVuZScKIHBrZ25hbWU9Z3JhcGhlbmUKLXZl cnNpb249MS44LjIKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4xMC4wCityZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1jb25maWd1cmVfYXJncz0iLUR0ZXN0 cz1mYWxzZSAtRGJlbmNobWFya3M9ZmFsc2UKK2NvbmZpZ3VyZV9hcmdzPSItRHRlc3RzPWZhbHNl IC1EYXJtX25lb249ZmFsc2UKICAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZh bHNlKSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJsaWJnbGli LWRldmVsIgpAQCAtMTMsMTMgKzEzLDEzIEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRo dWIuY29tL2ViYXNzaS9ncmFwaGVuZSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9ncmFwaGVu ZS8ke3ZlcnNpb24lLip9L2dyYXBoZW5lLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjNm Y2YyMDk5NmU1N2IxZjRkZjM5NDFjYWFjMTBmMTQzYmIyOTg5MGE0MmY3YTY1NDA3Y2QxOTI3MWZj ODlmNworY2hlY2tzdW09NDA2ZDk3ZjUxZGQ0Y2E2MWU5MWY4NDY2NmEwMGMzZTk3NmQzZTY2N2Nk MjQ4Yjc2ZDkyZmRiMzVjZTg3NjQ5OQogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRp b25zX2RlZmF1bHQ9ImdpciIKIAogcG9zdF9pbnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VOU0UK Kwl2bGljZW5zZSBMSUNFTlNFLnR4dCBMSUNFTlNFCiB9CiAKIGdyYXBoZW5lLWRldmVsX3BhY2th Z2UoKSB7CgpGcm9tIDk5ZTVmMDMyMWFhNTRmYmU0YmRhMmI1NjcxMjc2ZGNkZThlMjE1NDUgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+ CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMTE6NTM6MjkgKzA2MDAKU3ViamVjdDogW1BBVENIIDM5 LzU0XSBtdXR0ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrKy0tLS0tLQogLi4uL3BhdGNoZXMv Zml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoICAgICAgIHwgMTEgLS0tLS0tLS0KIHNyY3BrZ3Mv bXV0dGVyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICB8IDI4ICsrKysrKysrKy0tLS0t LS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0p CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9maXgtY29nbC1lZ2wt aW5jbHVkZXMucGF0Y2gKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGli cwppbmRleCBmNGJiZTMwOTU2My4uZmU5ZTZhMGI1NDcgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxp YnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtMjkzNCwxNSArMjkzNCwxNSBAQCBsaWJkZWNvcmF0 aW9uLnNvLjAgY29tcGl6LWNvcmUtMC44LjE0XzEKIGxpYmNvbXBpemNvbmZpZy5zby4wIGxpYmNv bXBpemNvbmZpZy0wLjguMTRfMQogbGliZW1lcmFsZGVuZ2luZS5zby4wIGVtZXJhbGQtMC44LjE0 XzEKIGxpYmhhbmd1bC5zby4xIGxpYmhhbmd1bC0wLjEuMF8xCi1saWJtdXR0ZXItNS5zby4wIG11 dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNsdXR0ZXItNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxp Ym11dHRlci1jbHV0dGVyLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLXBh dGgtNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLXBhdGgtNS5zby4wIG11dHRl ci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRl ci1jb2dsLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLXBhbmdvLTUuc28g bXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1wYW5nby01LnNvLjAgbXV0dGVyLTMuMzQu MV8xCitsaWJtdXR0ZXItNi5zby4wIG11dHRlci0zLjM2LjFfMQorbGlibXV0dGVyLWNsdXR0ZXIt Ni5zbyBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jbHV0dGVyLTYuc28uMCBtdXR0ZXItMy4z Ni4xXzEKK2xpYm11dHRlci1jb2dsLXBhdGgtNi5zbyBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRl ci1jb2dsLXBhdGgtNi5zby4wIG11dHRlci0zLjM2LjFfMQorbGlibXV0dGVyLWNvZ2wtNi5zbyBt dXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xp Ym11dHRlci1jb2dsLXBhbmdvLTYuc28gbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC1w YW5nby02LnNvLjAgbXV0dGVyLTMuMzYuMV8xCiBsaWJnZW9jbHVlLTIuc28uMCBnZW9jbHVlMi0y LjQuNF8xCiBsaWJnZXB1Yi5zby4wIGxpYmdlcHViLTAuNF8xCiBsaWJzbG9weS5zby43LjUgc2xv cC03LjVfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9maXgtY29nbC1lZ2wt aW5jbHVkZXMucGF0Y2ggYi9zcmNwa2dzL211dHRlci9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNs dWRlcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDkwOTg4ODg3YzMuLjAw MDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1 ZGVzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLS0tIGNvZ2wvY29nbC9t ZXNvbi5idWlsZAkyMDE5LTEwLTA4IDE5OjE1OjEwLjAwMDAwMDAwMCArMDIwMAotKysrIGNvZ2wv Y29nbC9tZXNvbi5idWlsZAkyMDE5LTEyLTE2IDE1OjQ1OjQ0LjAzNzY0MDU0OCArMDEwMAotQEAg LTQ4LDcgKzQ4LDcgQEAKLSBidWlsdF9oZWFkZXJzICs9IFtjb2dsX2dsX2hlYWRlcl9oXQotIAot IGlmIGhhdmVfZWdsCi0tICBjb2dsX2VnbF9pbmNsdWRlc19zdHJpbmcgPSAnI2luY2x1ZGUgPEVH TC9lZ2wuaD5cbiNpbmNsdWRlIDxFR0wvZWdsZXh0Lmg+JwotKyAgY29nbF9lZ2xfaW5jbHVkZXNf c3RyaW5nID0gJyNpbmNsdWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPlxu I2luY2x1ZGUgPEVHTC9lZ2xtZXNhZXh0Lmg+JwotIGVsc2UKLSAgIGNvZ2xfZWdsX2luY2x1ZGVz X3N0cmluZyA9ICcnCi0gZW5kaWYKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRl IGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKaW5kZXggNGUwYmQzMmI2N2QuLjdjMTQ4MjlhZjll IDEwMDY0NAotLS0gYS9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL211dHRl ci90ZW1wbGF0ZQpAQCAtMSwzNCArMSwzNCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbXV0dGVy JwogcGtnbmFtZT1tdXR0ZXIKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTMu MzYuMgorcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgot Y29uZmlndXJlX2FyZ3M9Ii1EZWdsX2RldmljZT10cnVlIC1EdWRldj10cnVlIC1EbmF0aXZlX2Jh Y2tlbmQ9dHJ1ZQotIC1EcHJvZmlsZXI9ZmFsc2UgLURpbnRyb3NwZWN0aW9uPXRydWUgLUR4d2F5 bGFuZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kIgorY29uZmlndXJlX2FyZ3M9Ii1EZWdsX2Rldmlj ZT10cnVlIC1EdWRldj10cnVlIC1EbmF0aXZlX2JhY2tlbmQ9dHJ1ZSAtRHByb2ZpbGVyPWZhbHNl CisgLURpbnRyb3NwZWN0aW9uPXRydWUgLUR4d2F5bGFuZF9pbml0ZmQ9ZGlzYWJsZWQgLUR4d2F5 bGFuZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGds aWItZGV2ZWwgcGtnLWNvbmZpZyB6ZW5pdHkgd2F5bGFuZC1kZXZlbCB4b3JnLXNlcnZlciIKLW1h a2VkZXBlbmRzPSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBq c29uLWdsaWItZGV2ZWwKLSBsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwg bGliY2FuYmVycmEtZGV2ZWwgbGliaW5wdXQtZGV2ZWwKLSBNZXNhTGliLWRldmVsIHBpcGV3aXJl LWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsIHdheWxhbmQtcHJvdG9jb2xzCi0gZ25v bWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIgorbWFrZWRlcGVuZHM9ImVsb2dpbmQtZGV2ZWwgZ2xp Yi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdyYXBoZW5lLWRldmVsCisganNvbi1nbGliLWRl dmVsIGxpYmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBsaWJjYW5iZXJyYS1k ZXZlbAorIGxpYmlucHV0LWRldmVsIE1lc2FMaWItZGV2ZWwgcGlwZXdpcmUtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKKyB3YXlsYW5kLXByb3RvY29scyBnbm9tZS1zZXR0aW5ncy1k YWVtb24tZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMgemVuaXR5Igogc2hvcnRf ZGVzYz0iTGlnaHR3ZWlnaHQgR1RLKzMgd2luZG93IG1hbmFnZXIiCiBtYWludGFpbmVyPSJFbm5v IEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL011dHRlci8iCiBk aXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFt ZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iYTE4MjZjZjg4YmRiODFlNjM5NDNjYWMw MTRhOGU4YmNmMzVlYzE3OGM1MzI2NDQwMWY5YzcyZmRlYWI3NThlCi1zaGxpYl9wcm92aWRlcz0i bGlibXV0dGVyLWNsdXR0ZXItNS5zbyBsaWJtdXR0ZXItY29nbC01LnNvCi0gbGlibXV0dGVyLWNv Z2wtcGFuZ28tNS5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTUuc28iCitjaGVja3N1bT03NWIzNzY0 ZWIwNTlmYzkzNWE1NDUyM2E2MmJlYzFiZWRiOTM1Mjg0MDQ2YjZkYWE1MDg2OWIxOTVhZGRkYWY0 CitzaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNi5zbyBsaWJtdXR0ZXItY29nbC02 LnNvCisgbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28i CiAKIG11dHRlci1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9ImdzZXR0aW5ncy1kZXNrdG9w LXNjaGVtYXMgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbCBsaWJYMTEtZGV2ZWwKLQkgbGliWHRz dC1kZXZlbCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlkZXBlbmRzPSJnc2V0dGlu Z3MtZGVza3RvcC1zY2hlbWFzIGdyYXBoZW5lLWRldmVsIGd0ayszLWRldmVsIGNsdXR0ZXItZGV2 ZWwKKwkgbGliWDExLWRldmVsIGxpYlh0c3QtZGV2ZWwgbXV0dGVyLSR7dmVyc2lvbn1fJHtyZXZp c2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCXBrZ19pbnN0YWxs KCkgewogCQl2bW92ZSB1c3IvaW5jbHVkZQogCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZwotCQl2 bW92ZSAidXNyL2xpYi9tdXR0ZXItNS8qLmdpciIKKwkJdm1vdmUgInVzci9saWIvbXV0dGVyLTYv Ki5naXIiCiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJfQogfQoKRnJvbSAxNmZiMTlkNWY4YmZh Y2M3ZDNlNTZmMDJhMjU2MjM0N2M0MTgwZGQ4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDQgTWF5IDIwMjAgMTQ6 Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENIIDQwLzU0XSBnbm9tZS1zaGVsbDogdXBkYXRlIHRv IDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAx IGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNoZWxsL3Rl bXBsYXRlCmluZGV4IDk2YzViODBhMTk0Li5mNTljNDZhNTYxZiAxMDA2NDQKLS0tIGEvc3JjcGtn cy9nbm9tZS1zaGVsbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRl CkBAIC0xLDExICsxLDExIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zaGVsbCcKIHBr Z25hbWU9Z25vbWUtc2hlbGwKLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdz PSItRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9ImdvYmplY3QtaW50cm9zcGVjdGlv biBndGstZG9jIGxpYnhzbHQgcGtnLWNvbmZpZyBweXRob24zIHNhc3NjCitob3N0bWFrZWRlcGVu ZHM9ImdldHRleHQgZ29iamVjdC1pbnRyb3NwZWN0aW9uIGd0ay1kb2MgbGlieHNsdCBwa2ctY29u ZmlnIHB5dGhvbjMgc2Fzc2MKICBhc2NpaWRvYyBwZXJsIGdsaWItZGV2ZWwgbXV0dGVyLWRldmVs IgogbWFrZWRlcGVuZHM9ImF0LXNwaTItYXRrIGNhcmlib3UtZGV2ZWwgZXZvbHV0aW9uLWRhdGEt c2VydmVyLWRldmVsIGZvbGtzLWRldmVsCiAgZ2NyLWRldmVsIGdqcy1kZXZlbCBnbm9tZS1ibHVl dG9vdGgtZGV2ZWwgZ25vbWUtY29udHJvbC1jZW50ZXItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZl bApAQCAtMjEsNCArMjEsNCBAQCBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9 Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25vbWVTaGVsbCIKIGNoYW5nZWxvZz0i aHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2dub21lLXNoZWxsL2dub21l LTMtMzAvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWNjZDg2NTU5Yjlj ODk3YzIxOWQyZDJlYmZkYjg0MTNlZmE0YzFiZWU4NDY0MjdjNzUwY2I4YTMwMWIzZjZkMWUKK2No ZWNrc3VtPTNiMTI5YjJhMWYxZjE2NTRhMTAxMDk4ZWE4YjkxYTczYTgzNmFhZDdkMTY2ZjUyZGQ0 NmIxYzYwMzdlYzE3NTMKCkZyb20gZGMxMjNhZWVkYzE1NjMzN2FkNDBkYjlmMGU3YzEzNTVmMmZm ZWE5YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogTW9uLCA0IE1heSAyMDIwIDE0OjM4OjMyICswNjAwClN1YmplY3Q6IFtQ QVRDSCA0MS81NF0gZ25vbWUtc2hlbGwtZXh0ZW5zaW9uczogdXBkYXRlIHRvIDMuMzYuMi4KCi0t LQogc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlIHwgNiArKystLS0KIDEg ZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCmluZGV4IDk3MTY4YjQwZjY2Li5lMWRkNDNiYjE1 MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZQpAQCAtMSwxNSArMSwx NSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucycKIHBrZ25h bWU9Z25vbWUtc2hlbGwtZXh0ZW5zaW9ucwotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4zNi4y CiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPW1lc29uCiBjb25maWd1cmVf YXJncz0iLURleHRlbnNpb25fc2V0PWFsbCIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIK K2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIgogZGVwZW5kcz0iZ25vbWUtc2hl bGw+PSR7dmVyc2lvbn0gbmF1dGlsdXMgdW56aXAiCiBzaG9ydF9kZXNjPSJFeHRlbnNpb25zIGZv ciBHTk9NRSBzaGVsbCwgaW5jbHVkaW5nIGNsYXNzaWMgbW9kZSIKIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25vbWVTaGVsbC9F eHRlbnNpb25zIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjBhZDUxMTQzYjFi ZjQwZGVmNGExMGY4ZmQwYWIwZmZiNDcyMTgzMDQ4MDA3OTRlNjJjYWRkMjlkMGFjYzc1YgorY2hl Y2tzdW09OTc4MjAyZGU1MTVjZGIwM2E1ODg1ODU5YzUzODM2NmJjYThmZDc4NzYyY2U5OGIxNzJh YzJjMDEyNmY4MDAzZgoKRnJvbSAyZmYwMzI5MmEwOWIwN2NkZDEyMzFlNzM5YzU3MDBkMGJlYWJl ODI5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUaHUsIDcgTWF5IDIwMjAgMTI6Mjc6NTUgKzA2MDAKU3ViamVjdDogW1BB VENIIDQyLzU0XSBnZG06IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ2RtL3RlbXBs YXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dkbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2Rt L3RlbXBsYXRlCmluZGV4IGJiNWI0ODY5MmQ0Li4wOTljNGNjOWQ0ZCAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nZG0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nZG0vdGVtcGxhdGUKQEAgLTEsMTEgKzEs MTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dkbScKIHBrZ25hbWU9Z2RtCi12ZXJzaW9uPTMu MzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9IiQodm9wdF9lbmFibGUgZ2ly IGludHJvc3BlY3Rpb24pCi0gLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZSAtLWRpc2FibGUtc3Rh dGljIC0td2l0aC1kZWZhdWx0LXBhbS1jb25maWc9YXJjaAorIC0tZGlzYWJsZS1zdGF0aWMgLS13 aXRoLWRlZmF1bHQtcGFtLWNvbmZpZz1hcmNoCiAgLS13aXRoLWF0LXNwaS1yZWdpc3RyeWQtZGly ZWN0b3J5PS91c3IvbGliZXhlYyAtLXdpdGhvdXQtdGNwLXdyYXBwZXJzCiAgLS13aXRoLXNjcmVl bnNob3QtZGlyPS92YXIvbGliL2dkbS9ncmVldGVyIC0tc2JpbmRpcj0vdXNyL2JpbiAtLXdpdGhv dXQtcGx5bW91dGgKICAtLXdpdGgteGF1dGgtZGlyPS9ydW4vZ2RtIC0td2l0aC1waWQtZmlsZT0v cnVuL2dkbS9nZG0ucGlkCkBAIC0xNCwxNCArMTQsMTQgQEAgaG9zdG1ha2VkZXBlbmRzPSJkY29u ZiBnZXR0ZXh0IGl0c3Rvb2wgcGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJhY2NvdW50c3NlcnZp Y2UtZGV2ZWwgZWxvZ2luZC1kZXZlbCBnZXR0ZXh0LWRldmVsIGdsaWItZGV2ZWwKICBpc28tY29k ZXMgbGliU00tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbnNzLWRldmVsIHBhbS1kZXZlbCB1cG93 ZXItZGV2ZWwiCiBkZXBlbmRzPSJnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtc2hlbGwgeG9y Zy1zZXJ2ZXIgeG9yZy1zZXJ2ZXIteHdheWxhbmQKLSB4cmRiIgorIHhyZGIgZ3NldHRpbmdzLWRl c2t0b3Atc2NoZW1hcyIKIGNoZWNrZGVwZW5kcz0iY2hlY2stZGV2ZWwiCiBzaG9ydF9kZXNjPSJH Tk9NRSBEaXNwbGF5IE1hbmFnZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dETSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPWU4NWRmNjU3YWE4ZDkzNjFhZjRmYjEyMjAxNGQ4ZjEyM2E5M2JmZTQ1YTc2NjJm YmEyYjM3M2Q4MzlkYmQ4ZDMKK2NoZWNrc3VtPTNmNTYxYzEwYWUyZTU5NDJiMDMwMjZmMDJjMGFh N2Q4NzEyZTM4MjcwOGIxN2EwOTcwODc0ZGY4MTc1YjgzYTgKIAogY29uZl9maWxlcz0iCiAJL2V0 Yy9nZG0vY3VzdG9tLmNvbmYKCkZyb20gNWU4ZTkwYzJiYmE1NDFiNzNkODE3NWUxNWRjN2QzZDE1 NjIxZWVmMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBv dXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDE4OjI0OjAyICswNTMwClN1YmplY3Q6 IFtQQVRDSCA0My81NF0gYnVkZ2llLWRlc2t0b3A6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUt ZGVza3RvcC0zLnNvLjE5CgotLS0KIC4uLi9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQt MTkxOC5wYXRjaCB8IDEyNzEzICsrKysrKysrKysrKysrKysKIHNyY3BrZ3MvYnVkZ2llLWRlc2t0 b3AvdGVtcGxhdGUgICAgICAgICAgICAgICB8ICAgICA5ICstCiAyIGZpbGVzIGNoYW5nZWQsIDEy NzE4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5w YXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXIt My4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2ggYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNo ZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwLi5iZmYxYmFkMDM5ZgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgucGF0 Y2gKQEAgLTAsMCArMSwxMjcxMyBAQAorRnJvbSA5ZDA5YTFiMTViYmY2Njc4MGNjODllZmYzYzRi ODRlNjY2YjBiZmRhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGF2aWQgTW9oYW1t ZWQgPGZvc3NmcmVlZG9tQHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4KK0RhdGU6IFR1ZSwgMTgg RmViIDIwMjAgMDY6NDA6MTIgKzAwMDAKK1N1YmplY3Q6IFtQQVRDSF0gTXV0dGVyIDMuMzYgc3Vw cG9ydCAoIzE5MTgpCisKKyogQWRkIG11dHRlciAzLjM1LjIgc3VwcG9ydAorCisqIE11dHRlciBj b21waWxlciBmbGFncyBuZWVkcyB0byBiZSBzcGVjaWZpZWQgYmVmb3JlIGRlcGVuZGVuY3kgY2hl Y2tzCisKKyogUmVnZW5lcmF0ZSB2YXBpIGZvciAzLjM1LjkwCisKK09yaWdpbjogaHR0cHM6Ly9n aXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3AvY29tbWl0cy85ZDA5YTFiMTVi CistLS0KKyBzcmMvd20vbWVzb24uYnVpbGQgICAgICAgICAgICAgICAgfCAgIDEyICstCisgc3Jj L3dtL3dtLnZhbGEgICAgICAgICAgICAgICAgICAgIHwgICAxNiArLQorIHZhcGkvQ2x1dHRlci02 Lm1ldGFkYXRhICAgICAgICAgICB8ICAyMDQgKworIHZhcGkvQ29nbC02Lm1ldGFkYXRhICAgICAg ICAgICAgICB8ICAgMjcgKworIHZhcGkvTWV0YS02Lm1ldGFkYXRhICAgICAgICAgICAgICB8ICAg ODAgKworIHZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSAgICB8ICA2OTEgKysrCisgdmFw aS9saWJtdXR0ZXItNi5kZXBzICAgICAgICAgICAgIHwgICAgNiArCisgdmFwaS9saWJtdXR0ZXIt Ni52YXBpICAgICAgICAgICAgIHwgMTQ3NSArKysrKworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi1j dXN0b20udmFsYSB8ICAxNDcgKworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzICAgICAgICB8 ICAgIDQgKworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpICAgICAgICB8IDg2ODcgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysKKyB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEg ICAgfCAgMTI1ICsKKyB2YXBpL211dHRlci1jb2dsLTYuZGVwcyAgICAgICAgICAgfCAgICAxICsK KyB2YXBpL211dHRlci1jb2dsLTYudmFwaSAgICAgICAgICAgfCAxMDc3ICsrKysKKyAxNCBmaWxl cyBjaGFuZ2VkLCAxMjU0OSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorIGNyZWF0ZSBt b2RlIDEwMDY0NCB2YXBpL0NsdXR0ZXItNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2 YXBpL0NvZ2wtNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL01ldGEtNi5tZXRh ZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkK KyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9saWJtdXR0ZXItNi5kZXBzCisgY3JlYXRlIG1vZGUg MTAwNjQ0IHZhcGkvbGlibXV0dGVyLTYudmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211 dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0 ZXItY2x1dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY2x1dHRl ci02LnZhcGkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52 YWxhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCisgY3JlYXRl IG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wtNi52YXBpCisKK2RpZmYgLS1naXQgYS9zcmMv d20vbWVzb24uYnVpbGQgYi9zcmMvd20vbWVzb24uYnVpbGQKK2luZGV4IGUzOWI4Njc4Li40YmNj MGY5ZSAxMDA2NDQKKy0tLSBhL3NyYy93bS9tZXNvbi5idWlsZAorKysrIGIvc3JjL3dtL21lc29u LmJ1aWxkCitAQCAtMjUsMTEgKzI1LDE5IEBAIGlmIG5vdCBkZXBfbXV0dGVyLmZvdW5kKCkKKyAg ICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXItNCBBQkkgZnJvbSBHTk9NRSAzLjMy JykKKyAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xpYm11dHRlci00JworICAgICBlbHNlCistICAg ICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGlibXV0dGVyLTUnLCB2ZXJzaW9uOiBnbm9t ZV9taW5pbXVtX3ZlcnNpb24pCisrICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGli bXV0dGVyLTUnLCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNpb24sIHJlcXVpcmVkOiBmYWxz ZSkKKysgICAgICAgIGJ1ZGdpZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFWRV9N VVRURVJfNSddCisgICAgICAgICBpZiBkZXBfbXV0dGVyLmZvdW5kKCkKKyAgICAgICAgICAgICBt ZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVyLTUgQUJJIGZyb20gR05PTUUgMy4zNCcpCisgICAg ICAgICAgICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVyLTUnCistICAgICAgICAgICAgYnVkZ2ll X3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl81J10KKysgICAgICAg IGVsc2UKKysgICAgICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGlibXV0dGVyLTYn LCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNpb24pCisrICAgICAgICAgICAgYnVkZ2llX3dt X3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl82J10KKysgICAgICAgICAg ICBpZiBkZXBfbXV0dGVyLmZvdW5kKCkKKysgICAgICAgICAgICAgICAgZGVwX2dyYXBoZW5lID0g ZGVwZW5kZW5jeSgnZ3JhcGhlbmUtZ29iamVjdC0xLjAnLCB2ZXJzaW9uOiAnPj0gMS4xMCcpCisr ICAgICAgICAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXItNiBBQkkgZnJvbSBH Tk9NRSAzLjM2JykKKysgICAgICAgICAgICAgICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVyLTYn CisrICAgICAgICAgICAgZW5kaWYKKyAgICAgICAgIGVuZGlmCisgICAgIGVuZGlmCisgZW5kaWYK K2RpZmYgLS1naXQgYS9zcmMvd20vd20udmFsYSBiL3NyYy93bS93bS52YWxhCitpbmRleCBmZWU4 OTQ0My4uYmI0NmNkMDYgMTAwNjQ0CistLS0gYS9zcmMvd20vd20udmFsYQorKysrIGIvc3JjL3dt L3dtLnZhbGEKK0BAIC0xMzcsOCArMTM3LDEzIEBAIHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1l dGEuUGx1Z2luCisgICAgIHB1YmxpYyBzdGF0aWMgc3RyaW5nW10/IG9sZF9hcmdzOworICAgICBw dWJsaWMgc3RhdGljIGJvb2wgd2F5bGFuZCA9IGZhbHNlOworIAorKyNpZiBIQVZFX01VVFRFUl82 CisrICAgIHN0YXRpYyBHcmFwaGVuZS5Qb2ludCBQVl9DRU5URVI7CisrICAgIHN0YXRpYyBHcmFw aGVuZS5Qb2ludCBQVl9OT1JNOworKyNlbHNlCisgICAgIHN0YXRpYyBDbHV0dGVyLlBvaW50IFBW X0NFTlRFUjsKKyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZfTk9STTsKKysjZW5kaWYKKyAK KyAgICAgcHJpdmF0ZSBNZXRhLkJhY2tncm91bmRHcm91cD8gYmFja2dyb3VuZF9ncm91cDsKKyAK K0BAIC0xNzEsMTAgKzE3NiwxNSBAQCBwdWJsaWMgY2xhc3MgQnVkZ2llV00gOiBNZXRhLlBsdWdp bgorICAgICAgICAgICAgIGxpY2Vuc2UgPSAiR1BMLTIuMCIsCisgICAgICAgICAgICAgZGVzY3Jp cHRpb24gPSAiQnVkZ2llIFdpbmRvdyBNYW5hZ2VyIgorICAgICAgICAgfTsKKysjaWYgSEFWRV9N VVRURVJfNgorKyAgICAgICAgUFZfQ0VOVEVSID0gR3JhcGhlbmUuUG9pbnQoKTsKKysgICAgICAg IFBWX05PUk0gPSBHcmFwaGVuZS5Qb2ludCgpOworKyNlbHNlCisgICAgICAgICBQVl9DRU5URVIg PSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7CisrICAgICAgICBQVl9OT1JNID0gQ2x1dHRlci5Qb2lu dC5hbGxvYygpOworKyNlbmRpZgorICAgICAgICAgUFZfQ0VOVEVSLnggPSAwLjVmOworICAgICAg ICAgUFZfQ0VOVEVSLnkgPSAwLjVmOworLSAgICAgICAgUFZfTk9STSA9IENsdXR0ZXIuUG9pbnQu YWxsb2MoKTsKKyAgICAgICAgIFBWX05PUk0ueCA9IDAuMGY7CisgICAgICAgICBQVl9OT1JNLnkg PSAwLjBmOworICAgICB9CitAQCAtMTAwMSw3ICsxMDExLDExIEBAIHB1YmxpYyBjbGFzcyBCdWRn aWVXTSA6IE1ldGEuUGx1Z2luCisgICAgICAgICB0aWxlX3ByZXZpZXcuc2V0KCJzY2FsZS14Iiwg Tk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9YLCAic2NhbGUteSIsIE5PVElGSUNBVElPTl9NQVBfU0NB TEVfWSwKKyAgICAgICAgICAgICAicGl2b3QtcG9pbnQiLCBQVl9DRU5URVIpOworIAorKyNpZiBI QVZFX01VVFRFUl82CisrICAgICAgICAvL3RpbGVfcHJldmlldy5sb3dlcih3aW5fYWN0b3IpOwor KyNlbHNlCisgICAgICAgICB0aWxlX3ByZXZpZXcubG93ZXIod2luX2FjdG9yKTsKKysjZW5kaWYK KyAgICAgICAgIHRpbGVfcHJldmlldy50aWxlX3JlY3QgPSB0aWxlX3JlY3Q7CisgCisgICAgICAg ICB0aWxlX3ByZXZpZXcuc2hvdygpOworZGlmZiAtLWdpdCBhL3ZhcGkvQ2x1dHRlci02Lm1ldGFk YXRhIGIvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRl eCAwMDAwMDAwMC4uOGMyNmExMjIKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvQ2x1dHRlci02 Lm1ldGFkYXRhCitAQCAtMCwwICsxLDIwNCBAQAorKy8vIE5vbiBtaW5pLW9iamVjdAorK0FjdG9y Qm94IHN0cnVjdAorK0NvbG9yIHN0cnVjdAorK0ZvZyBzdHJ1Y3QKKytHZW9tZXRyeSBzdHJ1Y3QK KytLbm90IHN0cnVjdAorK1BhdGhOb2RlIHN0cnVjdAorK1BlcnNwZWN0aXZlIHN0cnVjdAorK1Vu aXRzIHN0cnVjdAorK1ZlcnRleCBzdHJ1Y3QKKysKKysqLnJlZiB1bm93bmVkCisrCisraW5pdC5h cmd2IHVub3duZWQKKytpbml0X3dpdGhfYXJncworKwkuYXJndiB1bm93bmVkCisrQWN0b3IKKysJ LmFwcGx5X3RyYW5zZm9ybS5tYXRyaXggcmVmCisrCS5nZXRfYWJzX2FsbG9jYXRpb25fdmVydGlj ZXMudmVydHMgb3V0PWZhbHNlCisrCS5nZXRfYWxsb2NhdGlvbl92ZXJ0aWNlcy52ZXJ0cyBvdXQ9 ZmFsc2UKKytDYW52YXMKKysJLm5ldyBzeW1ib2xfdHlwZT0iY29uc3RydWN0b3IiCisrRXZlbnQu dHlwZSNtZXRob2QgbmFtZT0iZ2V0X3R5cGUiCisrSW1hZ2UKKysJLm5ldyBzeW1ib2xfdHlwZT0i Y29uc3RydWN0b3IiCisrCisrLy8gPz8/CisrQWN0b3IuaGFzX3BvaW50ZXIjbWV0aG9kIG5hbWU9 ImdldF9oYXNfcG9pbnRlciIKKytJbml0RXJyb3IgZXJyb3Jkb21haW49ZmFsc2UKKysKKysvLyBO b3QgYWxsIGJhY2tpbmcgc3ltYm9scyBhcmUgZGVwcmVjYXRlZAorK0FjdG9yLnBpY2sgZGVwcmVj YXRlZD1mYWxzZQorKworKy8vIE51bGxhYmxlIHJldHVybiB2YWx1ZXMKKytBY3RvcgorKwkuZ2V0 X3BhcmVudCBudWxsYWJsZQorK3ZhbHVlX2dldF9jb2xvciBudWxsYWJsZQorKworKy8vIG1ldGhv ZC92aXJ0dWFsLW1ldGhvZC9zaWduYWwgZG9uJ3QgbWF0Y2gKKytBY3RvcgorKwkuZXZlbnQjbWV0 aG9kIG5hbWU9ImVtaXRfZXZlbnQiCisrCS5nZXRfcGFpbnRfdm9sdW1lI21ldGhvZCBza2lwCisr CS5xdWV1ZV9yZWRyYXcjc2lnbmFsIHNraXAKKysJLnF1ZXVlX3JlZHJhdyN2aXJ0dWFsX21ldGhv ZCBza2lwCisrQ29udGFpbmVyCisrCS5hZGRfYWN0b3Igc2tpcD1mYWxzZQorK1RleHQKKysJLmFj dGl2YXRlI21ldGhvZCBuYW1lPSJ0cnlfYWN0aXZhdGUiCisrCS5pbnNlcnRfdGV4dCNzaWduYWwg c2tpcAorK1RleHRCdWZmZXIuZ2V0X3RleHQjdmlydHVhbF9tZXRob2QgbmFtZT0iZ2V0X3RleHRf d2l0aF9sZW5ndGgiCisrCisrLy8gdmlydHVhbC9hYnN0cmFjdCBkaXN0aW5jdGlvbgorK0NvbnRh aW5lcgorKwkubG93ZXIgdmlydHVhbAorKwkucmFpc2UgdmlydHVhbAorKwkuKl9jaGlsZF9tZXRh I3ZpcnR1YWxfbWV0aG9kIHZpcnR1YWwKKysJLmZvcmVhY2hfd2l0aF9pbnRlcm5hbHMjdmlydHVh bF9tZXRob2QgdmlydHVhbAorKworKy8vIERlZmF1bHQgdmFsdWVzCisrQ29udGFpbmVyCisrCS5s b3dlci5zaWJsaW5nIG51bGxhYmxlIGRlZmF1bHQ9bnVsbAorKwkucmFpc2Uuc2libGluZyBudWxs YWJsZSBkZWZhdWx0PW51bGwKKytTdGFnZS5yZWFkX3BpeGVscworKwkud2lkdGggZGVmYXVsdD0t MQorKwkuaGVpZ2h0IGRlZmF1bHQ9LTEKKytUZXh0CisrCS5wb3NpdGlvbl90b19jb29yZHMubGlu ZV9oZWlnaHQgZGVmYXVsdD1udWxsCisrCisrLy8gUmVwYXJlbnRlZCBmdW5jcyBtZXRob2RzIGNh bid0IGJlIGluc3RhbmNlIG1ldGhvZHMKKytmZWF0dXJlX2F2YWlsYWJsZSBza2lwCisrZmVhdHVy ZV9nZXRfYWxsIHNraXAKKysKKysvLyBTa2lwcGVkIGJ5IGctaSBmb3IgdW5rbm93biByZWFzb25z CisrTGF5b3V0TWFuYWdlcgorKwkuY3JlYXRlX2NoaWxkX21ldGEgc2tpcD1mYWxzZQorKworKy8v IFZhcmlhZGljIGFyZ3VtZW50cworK0FjdG9yCisrCS5hbmltYXRlIHNraXA9ZmFsc2UKKysJLmFu aW1hdGVfd2l0aF9hbHBoYSBza2lwPWZhbHNlCisrCS5hbmltYXRlX3dpdGhfdGltZWxpbmUgc2tp cD1mYWxzZQorK0JveAorKwkucGFjayBza2lwPWZhbHNlCisrCS5wYWNrX2FmdGVyIHNraXA9ZmFs c2UKKysJLnBhY2tfYXQgc2tpcD1mYWxzZQorKwkucGFja19iZWZvcmUgc2tpcD1mYWxzZQorK0Nv bnRhaW5lcgorKwkuYWRkX3ZhbGlzdCBza2lwPWZhbHNlCisrCS5jaGlsZF9nZXQgc2tpcD1mYWxz ZQorKwkuY2hpbGRfc2V0IHNraXA9ZmFsc2UKKysJLnJlbW92ZSBza2lwPWZhbHNlCisrCS5yZW1v dmVfdmFsaXN0IHNraXA9ZmFsc2UKKytJbnRlcnZhbAorKwkubmV3IHNraXA9ZmFsc2UKKysJLmdl dF9pbnRlcnZhbCBza2lwPWZhbHNlCisrCS5zZXRfZmluYWwgc2tpcD1mYWxzZQorKwkuc2V0X2lu aXRpYWwgc2tpcD1mYWxzZQorKwkuc2V0X2ludGVydmFsIHNraXA9ZmFsc2UKKytMYXlvdXRNYW5h Z2VyCisrCS5jaGlsZF9nZXQgc2tpcD1mYWxzZQorKwkuY2hpbGRfc2V0IHNraXA9ZmFsc2UKKytT Y3JpcHQKKysJLmdldF9vYmplY3RzIHNraXA9ZmFsc2UKKysKKysvLyBDaGFuZ2luZyBlcnJvciBk b21haW5zCisrVGV4dHVyZQorKwkubmV3X2Zyb21fZmlsZSB0aHJvd3M9IkNsdXR0ZXIuVGV4dHVy ZUVycm9yIgorKworKy8vIFNraXBwZWQgdXBzdHJlYW0gZm9yIHVua25vd24gcmVhc29ucworK0Fs cGhhLnJlZ2lzdGVyX2Z1bmMgc2tpcD1mYWxzZQorK0ludGVydmFsLnJlZ2lzdGVyX3Byb2dyZXNz X2Z1bmMgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fZ3JvdXAgc2tpcD1mYWxzZQorK2dldF9vcHRp b25fZ3JvdXBfd2l0aG91dF9pbml0IHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF9pZGxlIHNraXA9 ZmFsc2UKKyt0aHJlYWRzX2FkZF9pZGxlX2Z1bGwgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX3Rp bWVvdXQgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCBza2lwPWZhbHNlCisr CisrLy8gc3RydWN0L2NsYXNzIGNvbmZ1c2lvbgorK0FjdG9yQm94CisrCS5uZXcgc2tpcAorKwku ZnJvbV92ZXJ0aWNlcyBza2lwCisrVW5pdHMuZnJvbV8qIHNraXAKKytDb2xvcgorKwkubmV3IHNr aXAKKytWZXJ0ZXgubmV3IHNraXAKKysKKysvLyBDbGFzcyBtZXRob2RzCisrY29udGFpbmVyX2Ns YXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkgc2tpcAorK2NvbnRhaW5lcl9jbGFzc19saXN0X2NoaWxk X3Byb3BlcnRpZXMgc2tpcAorKworKy8vIE1vdmUgc3ltYm9scworK2dldF9hY3Rvcl9ieV9naWQg cGFyZW50PSJDbHV0dGVyLkFjdG9yIiBuYW1lPSJnZXRfYnlfZ2lkIgorK3VuaXRzX2Zyb21fKiBz a2lwCisrCisrLy8gQ2xhc3NlcyBtYXJrZWQgYXMgb3V0IGJ1dCBub3QgZG91YmxlIHB0cgorK0Fj dG9yCisrCS5nZXRfbWFyZ2luLm1hcmdpbiBvdXQ9ZmFsc2UKKytEcmFnQWN0aW9uCisrCS5nZXRf ZHJhZ19hcmVhLmRyYWdfYXJlYSBvdXQ9ZmFsc2UKKytJbnB1dERldmljZQorKwkuZ2V0X2Nvb3Jk cy5wb2ludCBvdXQ9ZmFsc2UKKytSZWN0CisrCS5nZXRfY2VudGVyLmNlbnRlciBvdXQ9ZmFsc2UK KysJLmludGVyc2VjdGlvbi5yZXMgb3V0PWZhbHNlCisrCS51bmlvbi5yZXMgb3V0PWZhbHNlCisr VGltZWxpbmUKKysJLmdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MuY18qIG91dD1mYWxzZQorK1pv b21BY3Rpb24KKysJLmdldF9mb2NhbF9wb2ludC5wb2ludCBvdXQ9ZmFsc2UKKysJLmdldF90cmFu c2Zvcm1lZF9mb2NhbF9wb2ludC5wb2ludCBvdXQ9ZmFsc2UKKysKKysvLyBTdHJ1Y3QgcmV0dXJu IHZhbHVlcworK2NvbG9yX2dldF9zdGF0aWMgbnVsbGFibGUKKysKKysvLyBSZW1vdmUgZm9yIGNs dXR0ZXItMi4wCisrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLworKworK1N0YWdlCisrIAkuZXZl bnQgbmFtZT0iZW1pdF9ldmVudCIKKysKKysvLyAqRXZlbnQgc2hvdWxkIGJlIGNvbXBhY3QgY2xh c3NlcyBkZXJpdmVkIGZyb20gQ2x1dHRlci5FdmVudAorK0V2ZW50LnR5cGUgc2tpcD1mYWxzZQor K0FueUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrQnV0dG9u RXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytDcm9zc2luZ0V2 ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrS2V5RXZlbnQgc3Ry dWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytNb3Rpb25FdmVudCBzdHJ1Y3Q9 ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1Njcm9sbEV2ZW50IHN0cnVjdD1mYWxz ZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrU3RhZ2VTdGF0ZUV2ZW50IHN0cnVjdD1mYWxz ZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrVG91Y2hFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFz ZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNocGFkUGluY2hFdmVudCBzdHJ1Y3Q9ZmFsc2Ug YmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNocGFkU3dpcGVFdmVudCBzdHJ1Y3Q9ZmFs c2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorKworKy8vIEtleXN5bXMgdXNlZCB0byBiZSBD TFVUVEVSX1ggaW5zdGVhZCBvZiBDTFVUVEVSX0tFWV9YCisrKiNjb25zdGFudCBza2lwCisrQ09H TCBza2lwPWZhbHNlCisrQ1VSUkVOVF9USU1FIHNraXA9ZmFsc2UKKytGTEFWT1VSIHNraXA9ZmFs c2UKKytQQVRIX1JFTEFUSVZFIHNraXA9ZmFsc2UKKytQUklPUklUWV9SRURSQVcgc2tpcD1mYWxz ZQorKworKy8vIENsdXR0ZXIgZGV2cyBkb24ndCBsaWtlIHVzIGNyZWF0aW5nIG5lc3RlZCBuYW1l c3BhY2VzCisrdmFsdWVfKiBuYW1lPSJ2YWx1ZV8oLispIiBwYXJlbnQ9IkNsdXR0ZXIuVmFsdWUi CisrdGhyZWFkc18qIG5hbWU9InRocmVhZHNfKC4rKSIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMi CisrdGhyZWFkc19hZGRfaWRsZSBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLklk bGUiCisrdGhyZWFkc19hZGRfaWRsZV9mdWxsIG5hbWU9ImFkZF9mdWxsIiBwYXJlbnQ9IkNsdXR0 ZXIuVGhyZWFkcy5JZGxlIgorK3RocmVhZHNfYWRkX3RpbWVvdXQgbmFtZT0iYWRkIiBwYXJlbnQ9 IkNsdXR0ZXIuVGhyZWFkcy5UaW1lb3V0IgorK3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCBuYW1l PSJhZGRfZnVsbCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuVGltZW91dCIKKysKKysvLyBCYWNr d2FyZHMgY29tcGF0aWJpbGl0eQorK0NvbG9yLmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIK KytQb2ludC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrUmVjdC5hbGxvYyBzeW1ib2xf dHlwZT0iZnVuY3Rpb24iCisrU2l6ZS5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrVmVy dGV4LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKysKKytCaW5BbGlnbm1lbnQgZGVwcmVj YXRlZD1mYWxzZSBkZXByZWNhdGVkX3NpbmNlPW51bGwKKytCaW5BbGlnbm1lbnQuKiBkZXByZWNh dGVkCisrQmluQWxpZ25tZW50LnN0YXJ0IGRlcHJlY2F0ZWQ9ZmFsc2UKKytCaW5MYXlvdXQubmV3 LipfYWxpZ24gZGVmYXVsdD1DbHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVAorKworKy8vIFBvc3Np Ymx5IGtlZXAKKytLRVlfKiBza2lwPWZhbHNlIG5hbWU9IktFWV8oLispIiB0eXBlPSJ1aW50IiBw YXJlbnQ9IkNsdXR0ZXIuS2V5IgorZGlmZiAtLWdpdCBhL3ZhcGkvQ29nbC02Lm1ldGFkYXRhIGIv dmFwaS9Db2dsLTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAw MC4uMDkyYjVlMjkKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvQ29nbC02Lm1ldGFkYXRhCitA QCAtMCwwICsxLDI3IEBACisrQ29nbCBjaGVhZGVyX2ZpbGVuYW1lPSJjb2dsL2NvZ2wuaCIKKysK KytDb2xvciBzdHJ1Y3QKKysgIC5uZXcgc2tpcAorKyAgLmZyZWUgc2tpcAorKworK2NyZWF0ZV9w cm9ncmFtIHNraXAKKytjcmVhdGVfc2hhZGVyIHNraXAKKysKKysKKytpc19iaXRtYXAgc2tpcAor K2lzX21hdGVyaWFsIHNraXAKKytpc19vZmZzY3JlZW4gc2tpcAorK2lzX3Byb2dyYW0gc2tpcAor K2lzX3NoYWRlciBza2lwCisraXNfdGV4dHVyZSBza2lwCisraXNfdmVydGV4X2J1ZmZlciBza2lw CisrCisrTWF0cml4IHN0cnVjdAorKyAgLmdldF9hcnJheSBhcnJheT10cnVlIGFycmF5X2xlbmd0 aF9pZHg9LTEKKysgIC5nZXRfaW52ZXJzZS5pbnZlcnNlIG91dD10cnVlCisrICAubXVsdGlwbHkg c2tpcAorKyAgLmluaXRfZnJvbV9hcnJheSBza2lwCisrICAuaW5pdF9pZGVudGl0eSBza2lwCisr ICAudHJhbnNmb3JtX3BvaW50LiogcmVmPXRydWUKKysKKytwcm9ncmFtXyogc2tpcAorZGlmZiAt LWdpdCBhL3ZhcGkvTWV0YS02Lm1ldGFkYXRhIGIvdmFwaS9NZXRhLTYubWV0YWRhdGEKK25ldyBm aWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMWQ5ODQ3NzgKKy0tLSAvZGV2L251bGwK KysrKyBiL3ZhcGkvTWV0YS02Lm1ldGFkYXRhCitAQCAtMCwwICsxLDgwIEBACisrQmFja2VuZCBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2VuZC5oIgorK0JhY2tncm91bmQgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQuaCIKKytCYWNrZ3JvdW5kQWN0b3IgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtYWN0b3IuaCIKKytCYWNrZ3JvdW5k R3JvdXAgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtZ3JvdXAuaCIKKytC YWNrZ3JvdW5kSW1hZ2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtaW1h Z2UuaCIKKytCYWNrZ3JvdW5kSW1hZ2VDYWNoZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEt YmFja2dyb3VuZC1pbWFnZS5oIgorK0JhcnJpZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9iYXJy aWVyLmgiCisrQmFycmllckV2ZW50IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvYmFycmllci5oIgor K0Nsb3NlRGlhbG9nIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1jbG9zZS1kaWFsb2cuaCIK KytDdXJzb3JUcmFja2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1jdXJzb3ItdHJhY2tl ci5oIgorK0Rpc3BsYXkgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9kaXNwbGF5LmgiCisrRG5kIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1kbmQuaCIKKytJZGxlTW9uaXRvciBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtaWRsZS1tb25pdG9yLmgiCisrSW5oaWJpdFNob3J0Y3V0c0RpYWxv ZyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtaW5oaWJpdC1zaG9ydGN1dHMtZGlhbG9nLmgi CisrTGF1bmNoQ29udGV4dCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtbGF1bmNoLWNvbnRl eHQuaCIKKytNZXRhIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWFpbi5oIgorK01vbml0b3JNYW5h Z2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1tb25pdG9yLW1hbmFnZXIuaCIKKytQcmVm ZXJlbmNlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvcHJlZnMuaCIKKytSZW1vdGVBY2Nlc3NDb250 cm9sbGVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xs ZXIuaCIKKytSZW1vdGVBY2Nlc3NIYW5kbGUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXJl bW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIgorK1NldHRpbmdzIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1zZXR0aW5ncy5oIgorK1NoYWRvd0ZhY3RvcnkgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLXNoYWRvdy1mYWN0b3J5LmgiCisrU2hhcGVkVGV4dHVyZSBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL21ldGEtc2hhcGVkLXRleHR1cmUuaCIKKytTb3VuZFBsYXllciBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL21ldGEtc291bmQtcGxheWVyLmgiCisrU3RhZ2UgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9tZXRhLXN0YWdlLmgiCisrU3RhcnR1cE5vdGlmaWNhdGlvbiBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL21ldGEtc3RhcnR1cC1ub3RpZmljYXRpb24uaCIKKytUaGVtZSBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL3RoZW1lLmgiCisrV2luZG93IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvd2luZG93 LmgiCisrV2luZG93QWN0b3IgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1hY3Rv ci5oIgorK1dpbmRvd0dyb3VwIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctZ3Jv dXAuaCIKKytXaW5kb3dTaGFwZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93LXNo YXBlLmgiCisrV29ya3NwYWNlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvd29ya3NwYWNlLmgiCisr V29ya3NwYWNlTWFuYWdlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd29ya3NwYWNlLW1h bmFnZXIuaCIKKytYMTFEaXNwbGF5IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS14MTEtZGlz cGxheS5oIgorK1JlY3RhbmdsZSBzdHJ1Y3QKKytQbHVnaW4gY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLXBsdWdpbi5oIgorK1BsdWdpbkluZm8gY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRh LXBsdWdpbi5oIgorK3ByZWZzXyogY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9wcmVmcy5oIiBwYXJl bnQ9Ik1ldGEuUHJlZnMiCisrYWRkX3ZlcmJvc2VfdG9waWMgcGFyZW50PSJNZXRhLlV0aWwiIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3gxMV9lcnJvcl90cmFwX3BvcCBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisreDExX2Vycm9yX3Ry YXBfcHVzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgi CisreDExX2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJuIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytleHRlcm5hbF9iaW5kaW5nX25hbWVfZm9yX2Fj dGlvbiBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisr Z2V0X2xvY2FsZV9kaXJlY3Rpb24gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvdXRpbC5oIgorK2dyYXZpdHlfdG9fc3RyaW5nIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc19kZWJ1Z2dpbmcgcGFyZW50PSJNZXRhLlV0 aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3N5bmNpbmcgcGFyZW50PSJN ZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3ZlcmJvc2UgcGFy ZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3dheWxh bmRfY29tcG9zaXRvciBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91 dGlsLmgiCisrbGF0ZXJfYWRkIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL3V0aWwuaCIKKytsYXRlcl9yZW1vdmUgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvdXRpbC5oIgorK3BvcF9ub19tc2dfcHJlZml4IHBhcmVudD0iTWV0YS5VdGls IiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytwdXNoX25vX21zZ19wcmVmaXggcGFy ZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3JlY3QgcGFy ZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3JlbW92ZV92 ZXJib3NlX3RvcGljIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0 aWwuaCIKKyt1bnNpZ25lZF9sb25nX2VxdWFsIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt1bnNpZ25lZF9sb25nX2hhc2ggcGFyZW50PSJNZXRhLlV0 aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Nob3dfZGlhbG9nIHBhcmVudD0i TWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRfc3RhZ2VfZm9y X2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv Y29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfd2luZG93X2FjdG9ycyBwYXJlbnQ9Ik1ldGEuQ29t cG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dl dF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfdG9wX3dpbmRvd19n cm91cF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dldF9mZWVkYmFja19ncm91cF9mb3JfZGlz cGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21w b3NpdG9yLW11dHRlci5oIgorK2Rpc2FibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSBwYXJlbnQ9 Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRl ci5oIgorK2VuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3Np dG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrc2V0X3N0 YWdlX2lucHV0X3JlZ2lvbiBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2VtcHR5X3N0YWdlX2lucHV0X3JlZ2lvbiBw YXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9y LW11dHRlci5oIgorK2ZvY3VzX3N0YWdlX3dpbmRvdyBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2tleWJpbmRpbmdz X3NldF9jdXN0b21faGFuZGxlciBwYXJlbnQ9Ik1ldGEuS2V5QmluZGluZyIgbmFtZT0ic2V0X2N1 c3RvbV9oYW5kbGVyIgorK0tleUhhbmRsZXJGdW5jLmV2ZW50IHR5cGU9IkNsdXR0ZXIuS2V5RXZl bnQ/IgorK2dldF9iYWNrZW5kIHBhcmVudD0iTWV0YS5CYWNrZW5kIgorK1dpbmRvdy5mb2N1cyNz aWduYWwgc2tpcD10cnVlCisrV2luZG93LmdldF94d2luZG93IHNraXA9ZmFsc2UKKytnZXRfb3B0 aW9uX2NvbnRleHQgc2tpcD1mYWxzZQorK3NldF9nbm9tZV93bV9rZXliaW5kaW5ncyBza2lwPWZh bHNlCisrc2V0X3dtX25hbWUgc2tpcD1mYWxzZQorK2luaXQgc2tpcD1mYWxzZQorK3J1biBza2lw PWZhbHNlCisrc2hvd19kaWFsb2cgc2tpcD1mYWxzZQorK2dldF9iYWNrZW5kIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvbWV0YS1iYWNrZW5kLmgiCitkaWZmIC0tZ2l0IGEvdmFwaS9ncmFwaGVuZS1n b2JqZWN0LTEuMC52YXBpIGIvdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpCituZXcgZmls ZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjY5ODAxNTM1CistLS0gL2Rldi9udWxsCisr KysgYi92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKK0BAIC0wLDAgKzEsNjkxIEBACisr LyogZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90 IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAiR3JhcGhlbmUiLCBnaXJfbmFtZXNw YWNlID0gIkdyYXBoZW5lIiwgZ2lyX3ZlcnNpb24gPSAiMS4wIiwgbG93ZXJfY2FzZV9jcHJlZml4 ID0gImdyYXBoZW5lXyIpXQorK25hbWVzcGFjZSBHcmFwaGVuZSB7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9ib3hf dCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfYm94X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBCb3ggeworKwkJcHVibGljIGJvb2wgY29u dGFpbnNfYm94IChHcmFwaGVuZS5Cb3ggYik7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2lu dCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuQm94PyBlbXB0eSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Cb3gg Yik7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZCAoR3JhcGhlbmUuUG9pbnQzRCBwb2lu dCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZF9zY2FsYXIgKGZsb2F0IHNjYWxhcik7 CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZF92ZWMzIChHcmFwaGVuZS5WZWMzIHZlYyk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIGdldF9ib3VuZGluZ19zcGhlcmUgKCk7CisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdl dF9kZXB0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIEdy YXBoZW5lLlBvaW50M0QgZ2V0X21heCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdl dF9taW4gKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfc2l6ZSAoKTsKKysJCXB1Ymxp YyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBH cmFwaGVuZS5WZWMzIHZlcnRpY2VzWzhdKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7 CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbmZpbml0ZSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdCAoR3JhcGhlbmUuUG9pbnQzRD8gbWlu LCBHcmFwaGVuZS5Qb2ludDNEPyBtYXgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94 PyBpbml0X2Zyb21fYm94IChHcmFwaGVuZS5Cb3ggc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLkJveD8gaW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUg PSAibl9wb2ludHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9 ICJndWludCIpXSBHcmFwaGVuZS5Qb2ludDNEW10gcG9pbnRzKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLkJveD8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IG1pbiwgR3JhcGhl bmUuVmVjMz8gbWF4KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9mcm9t X3ZlY3RvcnMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmVjdG9ycyIsIGFycmF5 X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5l LlZlYzNbXSB2ZWN0b3JzKTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdGlvbiAoR3JhcGhlbmUu Qm94IGIsIG91dCBHcmFwaGVuZS5Cb3ggcmVzKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBH cmFwaGVuZS5Cb3g/IG1pbnVzX29uZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFw aGVuZS5Cb3g/IG9uZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/ IG9uZV9taW51c19vbmUgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IHVuaW9uIChHcmFwaGVu ZS5Cb3ggYik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyB6ZXJvICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0Lmgi LCBjbmFtZSA9ICJncmFwaGVuZV9ldWxlcl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9ldWxlcl9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1 Y3QgRXVsZXIgeworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkV1bGVyIGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGEgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9iZXRh ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRf Z2FtbWEgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXJPcmRlciBnZXRfb3JkZXIgKCk7Cisr CQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlw dWJsaWMgZmxvYXQgZ2V0X3ogKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8g aW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5FdWxlcj8gaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlcj8gc3JjKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVuZS5N YXRyaXg/IG0sIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9xdWF0ZXJuaW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9u PyBxLCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX3JhZGlh bnMgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIp OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV92ZWMzIChHcmFw aGVuZS5WZWMzPyB2LCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X3dpdGhfb3JkZXIgKGZsb2F0IHgsIGZsb2F0IHksIGZs b2F0IHosIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIEdyYXBoZW5lLkV1 bGVyIHJlb3JkZXIgKEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIEdyYXBo ZW5lLk1hdHJpeCB0b19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gdG9fcXVhdGVybmlvbiAoKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMzIHRvX3ZlYzMgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2ZydXN0dW1fdCIs IHR5cGVfaWQgPSAiZ3JhcGhlbmVfZnJ1c3R1bV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgRnJ1c3R1bSB7CisrCQlwdWJsaWMgYm9v bCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuRnJ1c3R1bSBi KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wbGFuZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFs c2UpXSByZWYgR3JhcGhlbmUuUGxhbmUgcGxhbmVzWzZdKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLkZydXN0dW0/IGluaXQgKEdyYXBoZW5lLlBsYW5lIHAwLCBHcmFwaGVuZS5QbGFuZSBw MSwgR3JhcGhlbmUuUGxhbmUgcDIsIEdyYXBoZW5lLlBsYW5lIHAzLCBHcmFwaGVuZS5QbGFuZSBw NCwgR3JhcGhlbmUuUGxhbmUgcDUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1c3R1 bT8gaW5pdF9mcm9tX2ZydXN0dW0gKEdyYXBoZW5lLkZydXN0dW0gc3JjKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLkZydXN0dW0/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJp eCBtYXRyaXgpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19ib3ggKEdyYXBoZW5lLkJveCBi b3gpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBz cGhlcmUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2Jq ZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9tYXRyaXhfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVf bWF0cml4X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4IHsKKysJCXB1Ymxp YyBib29sIGRlY29tcG9zZSAob3V0IEdyYXBoZW5lLlZlYzMgdHJhbnNsYXRlLCBvdXQgR3JhcGhl bmUuVmVjMyBzY2FsZSwgb3V0IEdyYXBoZW5lLlF1YXRlcm5pb24gcm90YXRlLCBvdXQgR3JhcGhl bmUuVmVjMyBzaGVhciwgb3V0IEdyYXBoZW5lLlZlYzQgcGVyc3BlY3RpdmUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRldGVybWluYW50ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVu ZS5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJv b2wgZXF1YWxfZmFzdCAoR3JhcGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3JvdyAodWludCBpbmRleF8pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92YWx1ZSAo dWludCByb3csIHVpbnQgY29sKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfeF9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3hfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3lfc2NhbGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95X3RyYW5zbGF0aW9uICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3Nj YWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfel90cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tXzJkIChkb3VibGUgeHgsIGRv dWJsZSB5eCwgZG91YmxlIHh5LCBkb3VibGUgeXksIGRvdWJsZSB4XzAsIGRvdWJsZSB5XzApOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu TWF0cml4PyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBm bG9hdCB2WzE2XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeCBz cmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuTWF0cml4PyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCB2MCwgR3JhcGhlbmUu VmVjNCB2MSwgR3JhcGhlbmUuVmVjNCB2MiwgR3JhcGhlbmUuVmVjNCB2Myk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGlu aXRfZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQg dG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9pZGVudGl0eSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLk1hdHJpeD8gaW5pdF9sb29rX2F0IChHcmFwaGVuZS5WZWMzIGV5ZSwgR3JhcGhlbmUuVmVj MyBjZW50ZXIsIEdyYXBoZW5lLlZlYzMgdXApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X29ydGhvIChmbG9hdCBs ZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgdG9wLCBmbG9hdCBib3R0b20sIGZsb2F0IHpfbmVhciwg ZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3BlcnNwZWN0aXZlIChmbG9hdCBmb3Z5LCBmbG9h dCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3JvdGF0 ZSAoZmxvYXQgYW5nbGUsIEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfc2NhbGUg KGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3NrZXcgKGZsb2F0IHhf c2tldywgZmxvYXQgeV9za2V3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF90cmFuc2xhdGUgKEdyYXBoZW5lLlBv aW50M0QgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuTWF0cml4IGludGVycG9sYXRlIChHcmFwaGVuZS5NYXRyaXggYiwgZG91YmxlIGZhY3Rvcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpbnZlcnNlIChv dXQgR3JhcGhlbmUuTWF0cml4IHJlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgYm9vbCBpc18yZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBib29sIGlzX2JhY2tmYWNlX3Zpc2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19pZGVudGl0eSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX3Npbmd1bGFyICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBtdWx0aXBseSAo R3JhcGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLk1hdHJpeCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggbm9ybWFs aXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l Lk1hdHJpeCBwZXJzcGVjdGl2ZSAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgcHJpbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgcHJvamVjdF9wb2ludCAoR3JhcGhlbmUu UG9pbnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUXVhZCBwcm9qZWN0X3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBwcm9qZWN0X3JlY3RfYm91bmRz IChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgcm90YXRlIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVjMyBheGlzKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3Jh cGhlbmUuRXVsZXIgZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCByb3RhdGVfcXVhdGVybmlvbiAoR3JhcGhlbmUuUXVhdGVybmlvbiBxKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV94IChmbG9hdCBhbmds ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVf eSAoZmxvYXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgcm90YXRlX3ogKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBmYWN0b3JfeCwgZmxvYXQgZmFjdG9yX3ks IGZsb2F0IGZhY3Rvcl96KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNrZXdfeHkgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBza2V3X3h6IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld195eiAoZmxvYXQgZmFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHRvXzJkIChvdXQg ZG91YmxlIHh4LCBvdXQgZG91YmxlIHl4LCBvdXQgZG91YmxlIHh5LCBvdXQgZG91YmxlIHl5LCBv dXQgZG91YmxlIHhfMCwgb3V0IGRvdWJsZSB5XzApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFs c2UpXSByZWYgZmxvYXQgdlsxNl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlJlY3QgdHJhbnNmb3JtX2JvdW5kcyAoR3JhcGhlbmUuUmVjdCByKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggdHJh bnNmb3JtX2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHRyYW5zZm9ybV9wb2ludCAoR3JhcGhlbmUuUG9p bnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQzRCB0cmFuc2Zvcm1fcG9pbnQzZCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXkgdHJhbnNmb3JtX3Jh eSAoR3JhcGhlbmUuUmF5IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlF1YWQgdHJhbnNmb3JtX3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIHRyYW5z Zm9ybV9zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHRyYW5zZm9ybV92ZWMzIChHcmFwaGVuZS5W ZWMzIHYpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzQgdHJhbnNmb3JtX3ZlYzQgKEdyYXBoZW5lLlZlYzQgdik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2xhdGUgKEdyYXBoZW5lLlBvaW50M0Qg cG9zKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5N YXRyaXggdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlBvaW50M0QgdW5wcm9qZWN0X3BvaW50M2QgKEdyYXBoZW5lLk1hdHJpeCBt b2RlbHZpZXcsIEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgdW50cmFuc2Zvcm1fYm91bmRzIChHcmFw aGVuZS5SZWN0IHIsIEdyYXBoZW5lLlJlY3QgYm91bmRzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHVudHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Qb2lu dCBwLCBHcmFwaGVuZS5SZWN0IGJvdW5kcywgb3V0IEdyYXBoZW5lLlBvaW50IHJlcyk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1l ID0gImdyYXBoZW5lX3BsYW5lX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BsYW5lX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBQbGFu ZSB7CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOwor KwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlBsYW5lIGIpOworKwkJcHVibGljIGZsb2F0 IGdldF9jb25zdGFudCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9ub3JtYWwgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdCAoR3JhcGhlbmUuVmVjMz8g bm9ybWFsLCBmbG9hdCBjb25zdGFudCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFu ZT8gaW5pdF9mcm9tX3BsYW5lIChHcmFwaGVuZS5QbGFuZSBzcmMpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV9wb2ludCAoR3JhcGhlbmUuVmVjMyBub3JtYWws IEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxh bmU/IGluaXRfZnJvbV9wb2ludHMgKEdyYXBoZW5lLlBvaW50M0QgYSwgR3JhcGhlbmUuUG9pbnQz RCBiLCBHcmFwaGVuZS5Qb2ludDNEIGMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxh bmU/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlwdWJsaWMgR3JhcGhl bmUuUGxhbmUgbmVnYXRlICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIG5vcm1hbGl6ZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUGxh bmUgdHJhbnNmb3JtIChHcmFwaGVuZS5NYXRyaXggbWF0cml4LCBHcmFwaGVuZS5NYXRyaXg/IG5v cm1hbF9tYXRyaXgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVu ZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9wb2ludF90IiwgdHlwZV9pZCA9ICJncmFw aGVuZV9wb2ludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBzdHJ1Y3QgUG9pbnQgeworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxv YXQgeTsKKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQgYiwgb3V0IGZs b2F0IGRfeCwgb3V0IGZsb2F0IGRfeSk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUu UG9pbnQgYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdCAoZmxvYXQg eCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdF9mcm9t X3BvaW50IChHcmFwaGVuZS5Qb2ludCBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGluaXRfZnJvbV92ZWMyIChHcmFw aGVuZS5WZWMyIHNyYyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgaW50ZXJwb2xhdGUgKEdy YXBoZW5lLlBvaW50IGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGJvb2wgbmVhciAoR3Jh cGhlbmUuUG9pbnQgYiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiB0b192ZWMyICgpOworKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9wb2lu dDNkX3QiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicG9pbnQzZCIsIHR5cGVfaWQgPSAiZ3JhcGhl bmVfcG9pbnQzZF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBzdHJ1Y3QgUG9pbnQzRCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBm bG9hdCB5OworKwkJcHVibGljIGZsb2F0IHo7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBj cm9zcyAoR3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBiLCBvdXQgR3JhcGhl bmUuVmVjMyBkZWx0YSk7CisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5Qb2ludDNEIGIp OworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6 KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/IGluaXRfZnJvbV9wb2ludCAo R3JhcGhlbmUuUG9pbnQzRCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQz RD8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdik7CisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQzRCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBiLCBkb3VibGUgZmFjdG9yKTsK KysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVu ZS5Qb2ludDNEIGIsIGZsb2F0IGVwc2lsb24pOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qg bm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlBvaW50M0Qgbm9ybWFsaXplX3ZpZXdwb3J0IChHcmFwaGVuZS5SZWN0IHZpZXdwb3J0 LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNE IHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgdG9fdmVjMyAo KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyB6ZXJvICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBj bmFtZSA9ICJncmFwaGVuZV9xdWFkX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3F1YWRfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFF1 YWQgeworKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgYm91bmRzICgpOworKwkJcHVibGljIGJvb2wg Y29udGFpbnMgKEdyYXBoZW5lLlBvaW50IHApOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu UG9pbnQ/IGdldF9wb2ludCAodWludCBpbmRleF8pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUXVhZD8gaW5pdCAoR3JhcGhlbmUuUG9pbnQgcDEsIEdyYXBoZW5lLlBvaW50IHAyLCBHcmFw aGVuZS5Qb2ludCBwMywgR3JhcGhlbmUuUG9pbnQgcDQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhZD8gaW5pdF9mcm9tX3BvaW50 cyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBvaW50IHBvaW50c1s0 XSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcmVjdCAoR3Jh cGhlbmUuUmVjdCByKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcXVhdGVybmlvbl90IiwgdHlwZV9pZCA9 ICJncmFwaGVuZV9xdWF0ZXJuaW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBRdWF0ZXJuaW9uIHsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBhZGQgKEdyYXBoZW5l LlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5RdWF0ZXJuaW9u IGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5 LCBmbG9hdCB6LCBmbG9hdCB3KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5p b24/IGluaXRfZnJvbV9hbmdsZV92ZWMzIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVjMyBheGlz KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9hbmds ZXMgKGZsb2F0IGRlZ194LCBmbG9hdCBkZWdfeSwgZmxvYXQgZGVnX3opOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8g aW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlciBlKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeCBtKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9xdWF0ZXJu aW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9uIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fcmFkaWFucyAoZmxvYXQgcmFkX3gsIGZsb2F0IHJhZF95 LCBmbG9hdCByYWRfeik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBp bml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUXVhdGVybmlvbj8gaW5pdF9pZGVudGl0eSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5R dWF0ZXJuaW9uIGludmVydCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBtdWx0aXBseSAoR3JhcGhlbmUuUXVhdGVybmlvbiBi KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBzY2Fs ZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNsZXJwIChH cmFwaGVuZS5RdWF0ZXJuaW9uIGIsIGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCB0b19h bmdsZV92ZWMzIChvdXQgZmxvYXQgYW5nbGUsIG91dCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgdG9fYW5nbGVzIChvdXQg ZmxvYXQgZGVnX3gsIG91dCBmbG9hdCBkZWdfeSwgb3V0IGZsb2F0IGRlZ196KTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5NYXRyaXggdG9fbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHZvaWQgdG9fcmFkaWFucyAob3V0IGZsb2F0IHJhZF94LCBvdXQgZmxv YXQgcmFkX3ksIG91dCBmbG9hdCByYWRfeik7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCB0b192 ZWM0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2Jq ZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yYXlfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcmF5 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0 cnVjdCBSYXkgeworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlJheSBiKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9jbG9zZXN0X3BvaW50X3RvX3BvaW50IChHcmFwaGVu ZS5Qb2ludDNEIHApOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X2RpcmVjdGlvbiAoKTsK KysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2VfdG9fcGxhbmUgKEdyYXBoZW5lLlBsYW5lIHAp OworKwkJcHVibGljIGZsb2F0IGdldF9kaXN0YW5jZV90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQz RCBwKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9vcmlnaW4gKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfcG9zaXRpb25fYXQgKGZsb2F0IHQpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUmF5PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBvcmlnaW4sIEdy YXBoZW5lLlZlYzM/IGRpcmVjdGlvbik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/ IGluaXRfZnJvbV9yYXkgKEdyYXBoZW5lLlJheSBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUmF5PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gb3JpZ2luLCBHcmFwaGVu ZS5WZWMzPyBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVyc2VjdF9ib3ggKEdyYXBoZW5l LkJveCBiLCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVyc2VjdF9zcGhlcmUg KEdyYXBoZW5lLlNwaGVyZSBzLCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVy c2VjdF90cmlhbmdsZSAoR3JhcGhlbmUuVHJpYW5nbGUgdCwgb3V0IGZsb2F0IHRfb3V0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX2Jv eCAoR3JhcGhlbmUuQm94IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBib29sIGludGVyc2VjdHNfc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c190cmlhbmds ZSAoR3JhcGhlbmUuVHJpYW5nbGUgdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3JlY3RfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfcmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdCB7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQg b3JpZ2luOworKwkJcHVibGljIEdyYXBoZW5lLlNpemUgc2l6ZTsKKysJCXB1YmxpYyBzdGF0aWMg R3JhcGhlbmUuUmVjdD8gYWxsb2MgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2ludCAo R3JhcGhlbmUuUG9pbnQgcCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19yZWN0IChHcmFwaGVu ZS5SZWN0IGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlJlY3QgYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBleHBhbmQg KEdyYXBoZW5lLlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfYXJlYSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfYm90 dG9tX2xlZnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X2JvdHRvbV9yaWdodCAo KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZs b2F0IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X3RvcF9sZWZ0 ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF90b3BfcmlnaHQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKFtDQ29k ZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgR3JhcGhlbmUuVmVjMiB2ZXJ0aWNlc1s0XSk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJcHVibGljIGZsb2F0IGdldF94ICgp OworKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu UmVjdD8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbml0X2Zyb21fcmVjdCAoR3JhcGhl bmUuUmVjdCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gaW5zZXQgKGZs b2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5SZWN0IGluc2V0X3IgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5SZWN0IGludGVycG9sYXRlIChHcmFwaGVuZS5SZWN0IGIsIGRvdWJsZSBm YWN0b3IpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5SZWN0IGIsIG91 dCBHcmFwaGVuZS5SZWN0IHJlcyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBu b3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUmVjdCBub3JtYWxpemVfciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJl Y3Q/IG9mZnNldCAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgb2Zmc2V0X3IgKGZsb2F0IGRfeCwgZmxv YXQgZF95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCByb3Vu ZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUu UmVjdCByb3VuZF9leHRlbnRzICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuNCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuUmVjdD8gcm91bmRfdG9fcGl4ZWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgc2NhbGUgKGZsb2F0IHNfaCwgZmxv YXQgc192KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHVuaW9uIChHcmFwaGVuZS5SZWN0IGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlJlY3Q/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NpbWQ0Zl90IiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2ltZDRGIHsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3Jh cGhlbmVfc2ltZDR4NGZfdCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0 IFNpbWQ0WDRGIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUt Z29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2l6ZV90IiwgdHlwZV9pZCA9ICJncmFwaGVu ZV9zaXplX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIHN0cnVjdCBTaXplIHsKKysJCXB1YmxpYyBmbG9hdCB3aWR0aDsKKysJCXB1YmxpYyBmbG9h dCBoZWlnaHQ7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuU2l6ZSBiKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNpemU/IGluaXQgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWln aHQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU2l6ZT8gaW5pdF9mcm9tX3NpemUgKEdy YXBoZW5lLlNpemUgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIGludGVycG9sYXRlIChH cmFwaGVuZS5TaXplIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlNpemUg c2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUu U2l6ZT8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc3BoZXJlX3QiLCB0eXBlX2lkID0gImdy YXBoZW5lX3NwaGVyZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCXB1YmxpYyBzdHJ1Y3QgU3BoZXJlIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50 IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3Jh cGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuU3Bo ZXJlIGIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBnZXRfYm91bmRpbmdfYm94ICgpOworKwkJ cHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X2NlbnRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfcmFkaXVzICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0IChH cmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5TcGhlcmU/IGluaXRfZnJvbV9wb2ludHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3Ro X2NuYW1lID0gIm5fcG9pbnRzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3Ro X3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuUG9pbnQzRFtdIHBvaW50cywgR3JhcGhlbmUuUG9p bnQzRD8gY2VudGVyKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVyZT8gaW5pdF9m cm9tX3ZlY3RvcnMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmVjdG9ycyIsIGFy cmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBo ZW5lLlZlYzNbXSB2ZWN0b3JzLCBHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIpOworKwkJcHVibGlj IGJvb2wgaXNfZW1wdHkgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIHRyYW5zbGF0ZSAo R3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3RyaWFuZ2xlX3QiLCB0 eXBlX2lkID0gImdyYXBoZW5lX3RyaWFuZ2xlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBUcmlhbmdsZSB7CisrCQlwdWJsaWMgYm9v bCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBib29sIGVx dWFsIChHcmFwaGVuZS5UcmlhbmdsZSBiKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYXJlYSAoKTsK KysJCXB1YmxpYyBib29sIGdldF9iYXJ5Y29vcmRzIChHcmFwaGVuZS5Qb2ludDNEPyBwLCBvdXQg R3JhcGhlbmUuVmVjMiByZXMpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBnZXRfYm91bmRpbmdf Ym94ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21pZHBvaW50ICgpOworKwkJ cHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Q bGFuZSBnZXRfcGxhbmUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRzIChvdXQgR3JhcGhl bmUuUG9pbnQzRCBhLCBvdXQgR3JhcGhlbmUuUG9pbnQzRCBiLCBvdXQgR3JhcGhlbmUuUG9pbnQz RCBjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBnZXRf dXYgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIEdyYXBoZW5lLlZlYzIgdXZfYSwgR3JhcGhlbmUuVmVj MiB1dl9iLCBHcmFwaGVuZS5WZWMyIHV2X2MsIG91dCBHcmFwaGVuZS5WZWMyIHJlcyk7CisrCQlw dWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKG91dCBHcmFwaGVuZS5WZWMzIGEsIG91dCBHcmFwaGVu ZS5WZWMzIGIsIG91dCBHcmFwaGVuZS5WZWMzIGMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlRyaWFuZ2xlPyBpbml0X2Zyb21fZmxv YXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBhWzNdLCBbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgYlszXSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldIGZsb2F0IGNbM10pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/ IGluaXRfZnJvbV9wb2ludDNkIChHcmFwaGVuZS5Qb2ludDNEPyBhLCBHcmFwaGVuZS5Qb2ludDNE PyBiLCBHcmFwaGVuZS5Qb2ludDNEPyBjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlRy aWFuZ2xlPyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gYSwgR3JhcGhlbmUuVmVjMz8g YiwgR3JhcGhlbmUuVmVjMz8gYyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzJfdCIsIHR5cGVfaWQg PSAiZ3JhcGhlbmVfdmVjMl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzIgewor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgYWRk IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzIgZGl2aWRlIChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMiBiKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFw aGVuZS5WZWMyIHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlZlYzI/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gaW5p dF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzJd KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlZlYzI/IGluaXRfZnJvbV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgaW50ZXJwb2xhdGUg KEdyYXBoZW5lLlZlYzIgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG1heCAoR3JhcGhlbmUuVmVjMiBiKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG1p biAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMyIG11bHRpcGx5IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVjMiB2 MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMiBuZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gb25l ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZl YzIgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBzdWJ0cmFjdCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3RbMl0pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/ IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gemVybyAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5o IiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjM190IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWMzX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMyB7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBhZGQgKEdyYXBoZW5lLlZlYzMgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBj cm9zcyAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWMzIGRpdmlkZSAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlZlYzMg Yik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAo R3JhcGhlbmUuVmVjMyB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMiBnZXRfeHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfeHkwICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5ejAgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfeHl6MSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0 IGdldF94eXp3IChmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0 IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuVmVjMz8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gZmxvYXQgc3JjWzNdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzIHNy Yyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZl YzMgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlZlYzMgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG1heCAoR3Jh cGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMzIG1pbiAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG11bHRpcGx5IChHcmFwaGVuZS5WZWMz IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVhciAo R3JhcGhlbmUuVmVjMyB2MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBuZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBub3JtYWxpemUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuVmVjMz8gb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzMgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBzdWJ0cmFjdCAoR3JhcGhlbmUu VmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRv X2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3RbM10p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzM/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB5X2F4aXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhl bmUuVmVjMz8gel9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHplcm8gKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBo ZW5lX3ZlYzRfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdmVjNF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgc3RydWN0IFZlYzQgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzQgYWRkIChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZGl2aWRlIChHcmFwaGVuZS5W ZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRv dCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWM0IHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGdldF94eSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF94eXogKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ogKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5W ZWM0PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBmbG9hdCB3KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGlu aXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHNyY1s0 XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5WZWM0PyBpbml0X2Zyb21fdmVjMiAoR3JhcGhlbmUuVmVjMiBzcmMsIGZsb2F0IHosIGZs b2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjLCBmbG9hdCB3 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgaW50ZXJwb2xhdGUg KEdyYXBoZW5lLlZlYzQgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG1heCAoR3JhcGhlbmUuVmVjNCBiKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG1p biAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWM0IG11bHRpcGx5IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVjNCB2 MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjNCBuZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gb25l ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZl YzQgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBzdWJ0cmFjdCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3RbNF0pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/ IHdfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8geV9heGlz ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzQ/IHpfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB6ZXJvICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV9ldWxlcl9vcmRlcl90IiwgY3ByZWZpeCA9ICJHUkFQSEVORV9FVUxFUl9P UkRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwlwdWJsaWMgZW51bSBFdWxlck9yZGVyIHsKKysJCURFRkFVTFQsCisrCQlYWVosCisrCQlZ WlgsCisrCQlaWFksCisrCQlYWlksCisrCQlZWFosCisrCQlaWVgsCisrCQlTWFlaLAorKwkJU1hZ WCwKKysJCVNYWlksCisrCQlTWFpYLAorKwkJU1laWCwKKysJCVNZWlksCisrCQlTWVhaLAorKwkJ U1lYWSwKKysJCVNaWFksCisrCQlTWlhaLAorKwkJU1pZWCwKKysJCVNaWVosCisrCQlSWllYLAor KwkJUlhZWCwKKysJCVJZWlgsCisrCQlSWFpYLAorKwkJUlhaWSwKKysJCVJZWlksCisrCQlSWlhZ LAorKwkJUllYWSwKKysJCVJZWFosCisrCQlSWlhaLAorKwkJUlhZWiwKKysJCVJaWVoKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUg PSAiZ3JhcGhlbmVfcmF5X2ludGVyc2VjdGlvbl9raW5kX3QiLCBjcHJlZml4ID0gIkdSQVBIRU5F X1JBWV9JTlRFUlNFQ1RJT05fS0lORF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gUmF5SW50ZXJzZWN0aW9uS2luZCB7 CisrCQlOT05FLAorKwkJRU5URVIsCisrCQlMRUFWRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfR0ND IildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFTX0dDQzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19TQ0FMQVIi KV0KKysJcHVibGljIGNvbnN0IGludCBIQVNfU0NBTEFSOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX1NTRSIp XQorKwlwdWJsaWMgY29uc3QgaW50IEhBU19TU0U7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9QSSIpXQorKwlwdWJs aWMgY29uc3QgZG91YmxlIFBJOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfUElfMiIpXQorKwlwdWJsaWMgY29uc3Qg ZG91YmxlIFBJXzI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2Jq ZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9TSU1EX1MiKV0KKysJcHVibGljIGNvbnN0IHN0cmlu ZyBTSU1EX1M7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUMyX0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVDMl9MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUMzX0xF TiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVD M19MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0Lmgi LCBjbmFtZSA9ICJHUkFQSEVORV9WRUM0X0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVDNF9MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJmYWxzZSIpXQorKwlwdWJsaWMg Y29uc3QgaW50IEBmYWxzZTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5l LWdvYmplY3QuaCIsIGNuYW1lID0gInRydWUiKV0KKysJcHVibGljIGNvbnN0IGludCBAdHJ1ZTsK Kyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9saWJtdXR0ZXItNi5kZXBzIGIvdmFwaS9saWJtdXR0ZXIt Ni5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjIyMzUyNWU0Cist LS0gL2Rldi9udWxsCisrKysgYi92YXBpL2xpYm11dHRlci02LmRlcHMKK0BAIC0wLDAgKzEsNiBA QAorK2d0aystMy4wCisranNvbi1nbGliLTEuMAorK211dHRlci1jbHV0dGVyLTYKKyt4MTEKKyt4 Zml4ZXMtNC4wCisrZ3JhcGhlbmUtZ29iamVjdC0xLjAKK2RpZmYgLS1naXQgYS92YXBpL2xpYm11 dHRlci02LnZhcGkgYi92YXBpL2xpYm11dHRlci02LnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0 CitpbmRleCAwMDAwMDAwMC4uMzFmNDgwMWMKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbGli bXV0dGVyLTYudmFwaQorQEAgLTAsMCArMSwxNDc1IEBACisrLyogbGlibXV0dGVyLTYudmFwaSBn ZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVm aXggPSAiTWV0YSIsIGdpcl9uYW1lc3BhY2UgPSAiTWV0YSIsIGdpcl92ZXJzaW9uID0gIjYiLCBs b3dlcl9jYXNlX2NwcmVmaXggPSAibWV0YV8iKV0KKytuYW1lc3BhY2UgTWV0YSB7CisrCW5hbWVz cGFjZSBDb21wb3NpdG9yIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2Nv bXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2Rpc2FibGVfdW5yZWRpcmVjdF9mb3Jf ZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGRpc2FibGVfdW5yZWRpcmVjdF9mb3Jf ZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZW5hYmxlX3Vu cmVkaXJlY3RfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBlbmFibGVfdW5y ZWRpcmVjdF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1l dGFfZm9jdXNfc3RhZ2Vfd2luZG93IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgZm9jdXNfc3Rh Z2Vfd2luZG93IChNZXRhLkRpc3BsYXkgZGlzcGxheSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25h bWUgPSAibWV0YV9nZXRfZmVlZGJhY2tfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9mZWVkYmFja19ncm91cF9mb3JfZGlzcGxh eSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3N0YWdlX2Zvcl9k aXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc3Rh Z2VfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dl dF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3du ZWQgQ2x1dHRlci5BY3RvciBnZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSAoTWV0YS5E aXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29t cG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19hY3RvcnMiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLkxpc3Q8Q2x1dHRlci5BY3Rvcj4gZ2V0X3dpbmRv d19hY3RvcnMgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF93aW5k b3dfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVy LkFjdG9yIGdldF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5 KTsKKysJfQorKwluYW1lc3BhY2UgUHJlZnMgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfYmVsbF9pc19hdWRpYmxlIild CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfYmVsbF9pc19hdWRpYmxlICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfY2hhbmdlX3dvcmtzcGFjZV9uYW1lIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNf Y2hhbmdlX3dvcmtzcGFjZV9uYW1lIChpbnQgaSwgc3RyaW5nIG5hbWUpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0 X2FjdGlvbl9kb3VibGVfY2xpY2tfdGl0bGViYXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0 b3AuVGl0bGViYXJBY3Rpb24gcHJlZnNfZ2V0X2FjdGlvbl9kb3VibGVfY2xpY2tfdGl0bGViYXIg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX21pZGRsZV9jbGlja190aXRsZWJhciIpXQorKwkJcHVi bGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX21pZGRs ZV9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hY3Rpb25fcmlnaHRfY2xpY2tfdGl0 bGViYXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24gcHJlZnNf Z2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdHRhY2hf bW9kYWxfZGlhbG9ncyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdHRhY2hf bW9kYWxfZGlhbG9ncyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX21heGltaXplIildCisrCQlwdWJs aWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fbWF4aW1pemUgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf YXV0b19yYWlzZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdXRvX3JhaXNl ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X2F1dG9fcmFpc2VfZGVsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMg aW50IHByZWZzX2dldF9hdXRvX3JhaXNlX2RlbGF5ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2J1dHRvbl9s YXlvdXQiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5CdXR0b25MYXlvdXQgcHJlZnNfZ2V0X2J1 dHRvbl9sYXlvdXQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY2VudGVyX25ld193aW5kb3dzIildCisrCQlw dWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2NlbnRlcl9uZXdfd2luZG93cyAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9jb21wb3NpdGluZ19tYW5hZ2VyIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJl ZnNfZ2V0X2NvbXBvc2l0aW5nX21hbmFnZXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY3Vyc29yX3NpemUi KV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9jdXJzb3Jfc2l6ZSAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9jdXJzb3JfdGhlbWUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcg cHJlZnNfZ2V0X2N1cnNvcl90aGVtZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kaXNhYmxlX3dvcmthcm91 bmRzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fyb3Vu ZHMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfZHJhZ190aHJlc2hvbGQiKV0KKysJCXB1YmxpYyBzdGF0aWMg aW50IHByZWZzX2dldF9kcmFnX3RocmVzaG9sZCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kcmFnZ2FibGVf Ym9yZGVyX3dpZHRoIildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfZHJhZ2dhYmxl X2JvcmRlcl93aWR0aCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9keW5hbWljX3dvcmtzcGFjZXMiKV0KKysJ CXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZHluYW1pY193b3Jrc3BhY2VzICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfZ2V0X2VkZ2VfdGlsaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0 X2VkZ2VfdGlsaW5nICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX2NoYW5nZV9vbl9wb2ludGVyX3Jl c3QiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZm9jdXNfY2hhbmdlX29uX3Bv aW50ZXJfcmVzdCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1c19tb2RlIildCisrCQlwdWJsaWMgc3Rh dGljIEdEZXNrdG9wLkZvY3VzTW9kZSBwcmVmc19nZXRfZm9jdXNfbW9kZSAoKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZz X2dldF9mb2N1c19uZXdfd2luZG93cyIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5Gb2N1 c05ld1dpbmRvd3MgcHJlZnNfZ2V0X2ZvY3VzX25ld193aW5kb3dzICgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0 X2ZvcmNlX2Z1bGxzY3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZm9y Y2VfZnVsbHNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9nbm9tZV9hY2Nlc3NpYmlsaXR5IildCisr CQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2dub21lX2FjY2Vzc2liaWxpdHkgKCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0 YV9wcmVmc19nZXRfZ25vbWVfYW5pbWF0aW9ucyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHBy ZWZzX2dldF9nbm9tZV9hbmltYXRpb25zICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2tleWJpbmRpbmdfYWN0 aW9uIildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuS2V5QmluZGluZ0FjdGlvbiBwcmVmc19nZXRf a2V5YmluZGluZ19hY3Rpb24gKHN0cmluZyBuYW1lKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0 b25fbWVudSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9t ZW51ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2RzIildCisrCQlwdWJsaWMgc3Rh dGljIE1ldGEuVmlydHVhbE1vZGlmaWVyIHByZWZzX2dldF9tb3VzZV9idXR0b25fbW9kcyAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0b25fcmVzaXplIildCisrCQlwdWJsaWMgc3RhdGljIGlu dCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX3Jlc2l6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9udW1fd29y a3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X251bV93b3Jrc3BhY2Vz ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X3JhaXNlX29uX2NsaWNrIildCisrCQlwdWJsaWMgc3RhdGljIGJv b2wgcHJlZnNfZ2V0X3JhaXNlX29uX2NsaWNrICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Nob3dfZmFsbGJh Y2tfYXBwX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfc2hvd19mYWxs YmFja19hcHBfbWVudSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF90aXRsZWJhcl9mb250IildCisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgUGFuZ28uRm9udERlc2NyaXB0aW9uIHByZWZzX2dldF90aXRsZWJh cl9mb250ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsIildCisrCQlwdWJsaWMgc3RhdGlj IGJvb2wgcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Zpc3VhbF9iZWxs X3R5cGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVmlzdWFsQmVsbFR5cGUgcHJlZnNf Z2V0X3Zpc3VhbF9iZWxsX3R5cGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfd29ya3NwYWNlX25hbWUiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcgcHJlZnNfZ2V0X3dvcmtzcGFjZV9uYW1l IChpbnQgaSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwg Y25hbWUgPSAibWV0YV9wcmVmc19nZXRfd29ya3NwYWNlc19vbmx5X29uX3ByaW1hcnkiKV0KKysJ CXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfd29ya3NwYWNlc19vbmx5X29uX3ByaW1hcnkg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19pbml0IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfaW5pdCAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9 ICJtZXRhX3ByZWZzX3NldF9mb3JjZV9mdWxsc2NyZWVuIildCisrCQlwdWJsaWMgc3RhdGljIHZv aWQgcHJlZnNfc2V0X2ZvcmNlX2Z1bGxzY3JlZW4gKGJvb2wgd2hldGhlcik7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19z ZXRfbnVtX3dvcmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfbnVt X3dvcmtzcGFjZXMgKGludCBuX3dvcmtzcGFjZXMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfc2V0X3Nob3dfZmFsbGJh Y2tfYXBwX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfc2hvd19mYWxs YmFja19hcHBfbWVudSAoYm9vbCB3aGV0aGVyKTsKKysJfQorKwluYW1lc3BhY2UgVXRpbCB7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRh X2FkZF92ZXJib3NlX3RvcGljIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgYWRkX3ZlcmJvc2Vf dG9waWMgKE1ldGEuRGVidWdUb3BpYyB0b3BpYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2V4dGVybmFsX2JpbmRpbmdfbmFtZV9m b3JfYWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIHN0cmluZyBleHRlcm5hbF9iaW5kaW5nX25h bWVfZm9yX2FjdGlvbiAodWludCBrZXliaW5kaW5nX2FjdGlvbik7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9sb2NhbGVfZGly ZWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuTG9jYWxlRGlyZWN0aW9uIGdldF9sb2Nh bGVfZGlyZWN0aW9uICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRp bC5oIiwgY25hbWUgPSAibWV0YV9ncmF2aXR5X3RvX3N0cmluZyIpXQorKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIHN0cmluZyBncmF2aXR5X3RvX3N0cmluZyAoaW50IGdyYXZpdHkpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc19k ZWJ1Z2dpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19kZWJ1Z2dpbmcgKCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lz X3N5bmNpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19zeW5jaW5nICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc192 ZXJib3NlIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfdmVyYm9zZSAoKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNfd2F5 bGFuZF9jb21wb3NpdG9yIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfd2F5bGFuZF9jb21w b3NpdG9yICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwg Y25hbWUgPSAibWV0YV9sYXRlcl9hZGQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCBsYXRlcl9h ZGQgKE1ldGEuTGF0ZXJUeXBlIHdoZW4sIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFf bGF0ZXJfcmVtb3ZlIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgbGF0ZXJfcmVtb3ZlICh1aW50 IGxhdGVyX2lkKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIs IGNuYW1lID0gIm1ldGFfcG9wX25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCBwb3Bfbm9fbXNnX3ByZWZpeCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcHVzaF9ub19tc2dfcHJlZml4IildCisrCQlwdWJs aWMgc3RhdGljIHZvaWQgcHVzaF9ub19tc2dfcHJlZml4ICgpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9yZWN0IildCisrCQlwdWJs aWMgc3RhdGljIE1ldGEuUmVjdGFuZ2xlPyByZWN0IChpbnQgeCwgaW50IHksIGludCB3aWR0aCwg aW50IGhlaWdodCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX3JlbW92ZV92ZXJib3NlX3RvcGljIildCisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgcmVtb3ZlX3ZlcmJvc2VfdG9waWMgKE1ldGEuRGVidWdUb3BpYyB0b3BpYyk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3No b3dfZGlhbG9nIildCisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUGlkIHNob3dfZGlhbG9nIChzdHJp bmcgdHlwZSwgc3RyaW5nIG1lc3NhZ2UsIHN0cmluZyB0aW1lb3V0LCBzdHJpbmcgZGlzcGxheSwg c3RyaW5nIG9rX3RleHQsIHN0cmluZyBjYW5jZWxfdGV4dCwgc3RyaW5nIGljb25fbmFtZSwgaW50 IHRyYW5zaWVudF9mb3IsIEdMaWIuU0xpc3Q8dm9pZCo+IGNvbHVtbnMsIEdMaWIuU0xpc3Q8dm9p ZCo+IGVudHJpZXMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5o IiwgY25hbWUgPSAibWV0YV91bnNpZ25lZF9sb25nX2VxdWFsIildCisrCQlwdWJsaWMgc3RhdGlj IGludCB1bnNpZ25lZF9sb25nX2VxdWFsICh2b2lkKiB2MSwgdm9pZCogdjIpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV91bnNpZ25l ZF9sb25nX2hhc2giKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCB1bnNpZ25lZF9sb25nX2hhc2gg KHZvaWQqIHYpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwg Y25hbWUgPSAibWV0YV94MTFfZXJyb3JfdHJhcF9wb3AiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCB4MTFfZXJyb3JfdHJhcF9wb3AgKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gx MV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgeDEx X2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJuIChNZXRhLlgxMURpc3BsYXkgeDExX2Rpc3BsYXkp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAi bWV0YV94MTFfZXJyb3JfdHJhcF9wdXNoIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgeDExX2Vy cm9yX3RyYXBfcHVzaCAoTWV0YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tlbmQuaCIsIHR5cGVfaWQgPSAi bWV0YV9iYWNrZW5kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBCYWNr ZW5kIDogR0xpYi5PYmplY3QsIEdMaWIuSW5pdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tlbmQgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tlbmQuaCIsIGNuYW1lID0gIm1l dGFfZ2V0X2JhY2tlbmQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkJhY2tlbmQg Z2V0X2JhY2tlbmQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRuZCBnZXRfZG5kICgpOwor KwkJcHVibGljIHVub3duZWQgTWV0YS5SZW1vdGVBY2Nlc3NDb250cm9sbGVyIGdldF9yZW1vdGVf YWNjZXNzX2NvbnRyb2xsZXIgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdl dF9zdGFnZSAoKTsKKysJCXB1YmxpYyB2b2lkIGxvY2tfbGF5b3V0X2dyb3VwICh1aW50IGlkeCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5bWFwIChzdHJpbmcgbGF5b3V0cywgc3RyaW5nIHZhcmlh bnRzLCBzdHJpbmcgb3B0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbnVtbG9jayAoYm9vbCBu dW1sb2NrX3N0YXRlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrZXltYXBfY2hhbmdlZCAoKTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBrZXltYXBfbGF5b3V0X2dyb3VwX2NoYW5nZWQgKHVpbnQg b2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsYXN0X2RldmljZV9jaGFuZ2VkIChDbHV0 dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbGlkX2lzX2Ns b3NlZF9jaGFuZ2VkIChib29sIG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3Vu ZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZCA6IEdMaWIuT2JqZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1Ymxp YyBCYWNrZ3JvdW5kIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJsaWMgc3RhdGljIHZv aWQgcmVmcmVzaF9hbGwgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYmxlbmQgKEdMaWIuRmlsZSBm aWxlMSwgR0xpYi5GaWxlIGZpbGUyLCBkb3VibGUgYmxlbmRfZmFjdG9yLCBHRGVza3RvcC5CYWNr Z3JvdW5kU3R5bGUgc3R5bGUpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNv bG9yIGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9maWxlIChHTGliLkZpbGU/IGZpbGUsIEdE ZXNrdG9wLkJhY2tncm91bmRTdHlsZSBzdHlsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JhZGll bnQgKEdEZXNrdG9wLkJhY2tncm91bmRTaGFkaW5nIHNoYWRpbmdfZGlyZWN0aW9uLCBDbHV0dGVy LkNvbG9yIGNvbG9yLCBDbHV0dGVyLkNvbG9yIHNlY29uZF9jb2xvcik7CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgbWV0YV9kaXNwbGF5IHsgb3duZWQgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2VkICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1hY3Rvci5o IiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIEJhY2tncm91bmRBY3RvciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRv ciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRh YmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBCYWNrZ3JvdW5kQWN0b3IgKE1ldGEuRGlzcGxh eSBkaXNwbGF5LCBpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfYmFja2dyb3VuZCAo TWV0YS5CYWNrZ3JvdW5kIGJhY2tncm91bmQpOworKwkJcHVibGljIHZvaWQgc2V0X2dyYWRpZW50 IChib29sIGVuYWJsZWQsIGludCBoZWlnaHQsIGRvdWJsZSB0b25lX3N0YXJ0KTsKKysJCXB1Ymxp YyB2b2lkIHNldF9tb25pdG9yIChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfdmln bmV0dGUgKGJvb2wgZW5hYmxlZCwgZG91YmxlIGJyaWdodG5lc3MsIGRvdWJsZSBzaGFycG5lc3Mp OworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5CYWNrZ3JvdW5kIGJhY2tn cm91bmQgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgZG91YmxlIGJyaWdodG5lc3MgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgYm9vbCBncmFkaWVudCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBpbnQgZ3JhZGllbnRfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGRvdWJsZSBncmFkaWVudF9tYXhfZGFya25lc3Mg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNw bGF5IG1ldGFfZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgbW9uaXRvciB7IGdldDsgY29uc3RydWN0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHZpZ25ldHRlIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGRvdWJsZSB2aWduZXR0ZV9zaGFycG5l c3MgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtYmFja2dyb3VuZC1ncm91cC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfZ3Jv dXBfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmRHcm91cCA6IENsdXR0 ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNv bnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBCYWNr Z3JvdW5kR3JvdXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9pbWFn ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEltYWdlIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIEJhY2tncm91bmRJbWFnZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zdWNjZXNz ICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF90ZXh0dXJlICgpOworKwkJ cHVibGljIGJvb2wgaXNfbG9hZGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxvYWRlZCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91 bmQtaW1hZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2NhY2hlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kSW1hZ2VDYWNoZSA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBCYWNrZ3JvdW5kSW1hZ2VDYWNoZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBNZXRhLkJhY2tncm91bmRJbWFnZUNhY2hlIGdldF9kZWZhdWx0ICgpOworKwkJcHVibGljIE1l dGEuQmFja2dyb3VuZEltYWdlIGxvYWQgKEdMaWIuRmlsZSBmaWxlKTsKKysJCXB1YmxpYyB2b2lk IHB1cmdlIChHTGliLkZpbGUgZmlsZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvYmFycmllci5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIEJhcnJpZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFycmllciAoKTsK KysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hY3RpdmUgKCk7 CisrCQlwdWJsaWMgdm9pZCByZWxlYXNlIChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhcnJpZXJEaXJlY3Rpb24gZGlyZWN0 aW9ucyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeDEgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHgyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5MSB7IGdldDsgY29uc3RydWN0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeTIgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGhpdCAoTWV0YS5CYXJyaWVyRXZlbnQgZXZl bnQpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxlZnQgKE1ldGEuQmFycmllckV2ZW50IGV2ZW50 KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9iYXJyaWVyLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBCYXJyaWVyRXZlbnQgeworKwkJcHVibGljIGludCBkdDsK KysJCXB1YmxpYyBkb3VibGUgZHg7CisrCQlwdWJsaWMgZG91YmxlIGR5OworKwkJcHVibGljIGlu dCBldmVudF9pZDsKKysJCXB1YmxpYyBib29sIGdyYWJiZWQ7CisrCQlwdWJsaWMgYm9vbCByZWxl YXNlZDsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBkb3VibGUgeDsKKysJCXB1 YmxpYyBkb3VibGUgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t ZXRhLWN1cnNvci10cmFja2VyLmgiLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX3RyYWNrZXJfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEN1cnNvclRyYWNrZXIgOiBHTGliLk9iamVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgQ3Vyc29yVHJhY2tlciAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkN1cnNv clRyYWNrZXIgZ2V0X2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJs aWMgdm9pZCBnZXRfaG90IChvdXQgaW50IHgsIG91dCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBn ZXRfcG9pbnRlciAoaW50IHgsIGludCB5LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RzKTsKKysJ CXB1YmxpYyBib29sIGdldF9wb2ludGVyX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBD b2dsLlRleHR1cmUgZ2V0X3Nwcml0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludGVyX3Zp c2libGUgKGJvb2wgdmlzaWJsZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX2NoYW5n ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX21vdmVkIChmbG9hdCB4LCBmbG9h dCB5KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB2aXNpYmlsaXR5X2NoYW5nZWQgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvZGlzcGxheS5oIiwgdHlwZV9pZCA9 ICJtZXRhX2Rpc3BsYXlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIERpc3BsYXkgOiBH TGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwcm90ZWN0ZWQgRGlzcGxheSAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9pZ25vcmVkX2Ny b3NzaW5nX3NlcmlhbCAodWxvbmcgc2VyaWFsKTsKKysJCXB1YmxpYyB1aW50IGFkZF9rZXliaW5k aW5nIChzdHJpbmcgbmFtZSwgR0xpYi5TZXR0aW5ncyBzZXR0aW5ncywgTWV0YS5LZXlCaW5kaW5n RmxhZ3MgZmxhZ3MsIG93bmVkIE1ldGEuS2V5SGFuZGxlckZ1bmMgaGFuZGxlcik7CisrCQlwdWJs aWMgYm9vbCBiZWdpbl9ncmFiX29wIChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuR3JhYk9wIG9w LCBib29sIHBvaW50ZXJfYWxyZWFkeV9ncmFiYmVkLCBib29sIGZyYW1lX2FjdGlvbiwgaW50IGJ1 dHRvbiwgdWxvbmcgbW9kbWFzaywgdWludDMyIHRpbWVzdGFtcCwgaW50IHJvb3RfeCwgaW50IHJv b3RfeSk7CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9tb3VzZV9tb2RlICgpOworKwkJcHVibGljIHZv aWQgY2xvc2UgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZW5kX2dyYWJfb3Ag KHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZm9jdXNfZGVmYXVsdF93aW5kb3cg KHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZnJlZXplX2tleWJvYXJkICh1aW50 MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnJlbnRfbW9uaXRvciAoKTsKKysJ CXB1YmxpYyB1aW50MzIgZ2V0X2N1cnJlbnRfdGltZSAoKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0 X2N1cnJlbnRfdGltZV9yb3VuZHRyaXAgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRv dyBnZXRfZm9jdXNfd2luZG93ICgpOworKwkJcHVibGljIE1ldGEuR3JhYk9wIGdldF9ncmFiX29w ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2tleWJpbmRpbmdfYWN0aW9uICh1aW50IGtleWNvZGUs IHVsb25nIG1hc2spOworKwkJcHVibGljIHVpbnQzMiBnZXRfbGFzdF91c2VyX3RpbWUgKCk7Cisr CQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X21vbml0b3JfZ2VvbWV0cnkgKGludCBtb25pdG9y KTsKKysJCXB1YmxpYyBib29sIGdldF9tb25pdG9yX2luX2Z1bGxzY3JlZW4gKGludCBtb25pdG9y KTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3JfaW5kZXhfZm9yX3JlY3QgKE1ldGEuUmVjdGFu Z2xlIHJlY3QpOworKwkJcHVibGljIGludCBnZXRfbW9uaXRvcl9uZWlnaGJvcl9pbmRleCAoaW50 IHdoaWNoX21vbml0b3IsIE1ldGEuRGlzcGxheURpcmVjdGlvbiBkaXIpOworKwkJcHVibGljIGZs b2F0IGdldF9tb25pdG9yX3NjYWxlIChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGdldF9u X21vbml0b3JzICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfcGFkX2FjdGlvbl9sYWJlbCAoQ2x1 dHRlci5JbnB1dERldmljZSBwYWQsIE1ldGEuUGFkQWN0aW9uVHlwZSBhY3Rpb25fdHlwZSwgdWlu dCBhY3Rpb25fbnVtYmVyKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3ByaW1hcnlfbW9uaXRvciAoKTsK KysJCXB1YmxpYyB1bm93bmVkIE1ldGEuU2VsZWN0aW9uIGdldF9zZWxlY3Rpb24gKCk7CisrCQlw dWJsaWMgdm9pZCBnZXRfc2l6ZSAob3V0IGludCB3aWR0aCwgb3V0IGludCBoZWlnaHQpOworKwkJ cHVibGljIHVub3duZWQgTWV0YS5Tb3VuZFBsYXllciBnZXRfc291bmRfcGxheWVyICgpOworKwkJ cHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X3RhYl9jdXJyZW50IChNZXRhLlRhYkxpc3Qg dHlwZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8d2Vh ayBNZXRhLldpbmRvdz4gZ2V0X3RhYl9saXN0IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5Xb3Jr c3BhY2U/IHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfdGFi X25leHQgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UsIE1ldGEu V2luZG93PyB3aW5kb3csIGJvb2wgYmFja3dhcmQpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5X b3Jrc3BhY2VNYW5hZ2VyIGdldF93b3Jrc3BhY2VfbWFuYWdlciAoKTsKKysJCXB1YmxpYyB1aW50 IGdyYWJfYWNjZWxlcmF0b3IgKHN0cmluZyBhY2NlbGVyYXRvciwgTWV0YS5LZXlCaW5kaW5nRmxh Z3MgZmxhZ3MpOworKwkJcHVibGljIGJvb2wgaXNfcG9pbnRlcl9lbXVsYXRpbmdfc2VxdWVuY2Ug KENsdXR0ZXIuRXZlbnRTZXF1ZW5jZT8gc2VxdWVuY2UpOworKwkJcHVibGljIGJvb2wgcmVtb3Zl X2tleWJpbmRpbmcgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB2b2lkIHJlcXVlc3RfcGFkX29z ZCAoQ2x1dHRlci5JbnB1dERldmljZSBwYWQsIGJvb2wgZWRpdGlvbl9tb2RlKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9jdXJzb3IgKE1ldGEuQ3Vyc29yIGN1cnNvcik7CisrCQlwdWJsaWMgdm9pZCBz ZXRfaW5wdXRfZm9jdXMgKE1ldGEuV2luZG93IHdpbmRvdywgYm9vbCBmb2N1c19mcmFtZSwgdWlu dDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBz b3J0X3dpbmRvd3NfYnlfc3RhY2tpbmcgKEdMaWIuU0xpc3Q8TWV0YS5XaW5kb3c+IHdpbmRvd3Mp OworKwkJcHVibGljIGJvb2wgc3VwcG9ydHNfZXh0ZW5kZWRfYmFycmllcnMgKCk7CisrCQlwdWJs aWMgdm9pZCB1bmZyZWV6ZV9rZXlib2FyZCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMg Ym9vbCB1bmdyYWJfYWNjZWxlcmF0b3IgKHVpbnQgYWN0aW9uX2lkKTsKKysJCXB1YmxpYyB2b2lk IHVuZ3JhYl9rZXlib2FyZCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCB1bnNl dF9pbnB1dF9mb2N1cyAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgYm9vbCB4c2VydmVy X3RpbWVfaXNfYmVmb3JlICh1aW50MzIgdGltZTEsIHVpbnQzMiB0aW1lMik7CisrCQlwdWJsaWMg TWV0YS5XaW5kb3cgZm9jdXNfd2luZG93IHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg YWNjZWxlcmF0b3JfYWN0aXZhdGVkICh1aW50IG9iamVjdCwgQ2x1dHRlci5JbnB1dERldmljZSBw MCwgdWludCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2xvc2luZyAoKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBjdXJzb3JfdXBkYXRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBn bF92aWRlb19tZW1vcnlfcHVyZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdyYWJfb3Bf YmVnaW4gKE1ldGEuRGlzcGxheSBvYmplY3QsIE1ldGEuV2luZG93IHAwLCBNZXRhLkdyYWJPcCBw MSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9lbmQgKE1ldGEuRGlzcGxheSBvYmpl Y3QsIE1ldGEuV2luZG93IHAwLCBNZXRhLkdyYWJPcCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgaW5fZnVsbHNjcmVlbl9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCBib29sIG1vZGlm aWVyc19hY2NlbGVyYXRvcl9hY3RpdmF0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgb3Zl cmxheV9rZXkgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcGFkX21vZGVfc3dpdGNoIChDbHV0 dGVyLklucHV0RGV2aWNlIG9iamVjdCwgdWludCBwMCwgdWludCBwMSk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgcmVzdGFja2VkICgpOworKwkJcHVibGljIHNpZ25hbCBib29sIHJlc3RhcnQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd19vc2QgKGludCBvYmplY3QsIHN0cmluZyBwMCwg c3RyaW5nIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdW5vd25lZCBDbHV0dGVyLkFjdG9yPyBzaG93 X3BhZF9vc2QgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBHTGliLlNldHRpbmdzIHNldHRpbmdz LCBzdHJpbmcgbGF5b3V0X3BhdGgsIGJvb2wgZWRpdGlvbl9tb2RlLCBpbnQgbW9uaXRvcl9pZHgp OworKwkJcHVibGljIHNpZ25hbCBib29sIHNob3dfcmVzaXplX3BvcHVwIChib29sIG9iamVjdCwg TWV0YS5SZWN0YW5nbGUgcDAsIGludCBwMSwgaW50IHAyKTsKKysJCXB1YmxpYyBzaWduYWwgYm9v bCBzaG93X3Jlc3RhcnRfbWVzc2FnZSAoc3RyaW5nPyBtZXNzYWdlKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBzaG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCB3aW5kb3dfY3JlYXRlZCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCB3aW5kb3dfZGVtYW5kc19hdHRlbnRpb24gKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2VudGVyZWRfbW9uaXRvciAoaW50IG9iamVjdCwgTWV0 YS5XaW5kb3cgcDApOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19sZWZ0X21vbml0b3Ig KGludCBvYmplY3QsIE1ldGEuV2luZG93IHAwKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5k b3dfbWFya2VkX3VyZ2VudCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCB3b3JrYXJlYXNfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFfZGlz cGxheV9jbG9zaW5nICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X29wZW5l ZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFfZGlzcGxheV9zZXR1cCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWRuZC5oIiwgdHlwZV9pZCA9 ICJtZXRhX2RuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgRG5kIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIERuZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkbmRfZW50ZXIgKCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgZG5kX2xlYXZlICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRu ZF9wb3NpdGlvbl9jaGFuZ2UgKGludCBvYmplY3QsIGludCBwMCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgRnJhbWUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtaWRsZS1tb25pdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFf aWRsZV9tb25pdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBJZGxlTW9uaXRvciA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBJZGxlTW9uaXRvciAoKTsKKysJCXB1YmxpYyB1aW50IGFkZF9pZGxl X3dhdGNoICh1aW50NjQgaW50ZXJ2YWxfbXNlYywgb3duZWQgTWV0YS5JZGxlTW9uaXRvcldhdGNo RnVuYz8gY2FsbGJhY2spOworKwkJcHVibGljIHVpbnQgYWRkX3VzZXJfYWN0aXZlX3dhdGNoIChv d25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5jPyBjYWxsYmFjayk7CisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgTWV0YS5JZGxlTW9uaXRvciBnZXRfY29yZSAoKTsKKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBNZXRhLklkbGVNb25pdG9yIGdldF9mb3JfZGV2aWNlIChDbHV0dGVyLklucHV0 RGV2aWNlIGRldmljZSk7CisrCQlwdWJsaWMgaW50NjQgZ2V0X2lkbGV0aW1lICgpOworKwkJcHVi bGljIHZvaWQgcmVtb3ZlX3dhdGNoICh1aW50IGlkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlIHsgb3duZWQgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2dldF90eXBlICgpIildCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgS2V5QmluZGluZyB7CisrCQlwdWJsaWMgdWludCBnZXRfbWFz ayAoKTsKKysJCXB1YmxpYyBNZXRhLlZpcnR1YWxNb2RpZmllciBnZXRfbW9kaWZpZXJzICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJcHVibGljIGJvb2wgaXNf YnVpbHRpbiAoKTsKKysJCXB1YmxpYyBib29sIGlzX3JldmVyc2VkICgpOworKwkJW0NDb2RlIChj bmFtZSA9ICJtZXRhX2tleWJpbmRpbmdzX3NldF9jdXN0b21faGFuZGxlciIpXQorKwkJcHVibGlj IHN0YXRpYyBib29sIHNldF9jdXN0b21faGFuZGxlciAoc3RyaW5nIG5hbWUsIG93bmVkIE1ldGEu S2V5SGFuZGxlckZ1bmM/IGhhbmRsZXIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtbGF1bmNoLWNvbnRleHQuaCIsIHR5cGVfaWQgPSAibWV0YV9sYXVuY2hf Y29udGV4dF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTGF1bmNoQ29udGV4dCA6IEdM aWIuQXBwTGF1bmNoQ29udGV4dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTGF1bmNoQ29udGV4dCAoKTsKKysJCXB1YmxpYyB2b2lk IHNldF90aW1lc3RhbXAgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgc2V0X3dv cmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgdGltZXN0YW1wIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuV29ya3NwYWNl IHdvcmtzcGFjZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWV0YS1tb25pdG9yLW1hbmFnZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9t b25pdG9yX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE1vbml0b3JNYW5h Z2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIE1vbml0b3JNYW5hZ2VyICgpOworKwkJcHVibGljIGJvb2wg Y2FuX3N3aXRjaF9jb25maWcgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5Nb25p dG9yTWFuYWdlciBAZ2V0ICgpOworKwkJcHVibGljIHN0YXRpYyBpbnQgZ2V0X2Rpc3BsYXlfY29u ZmlndXJhdGlvbl90aW1lb3V0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2lzX2J1aWx0aW5fZGlz cGxheV9vbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3JfZm9yX2Nvbm5lY3RvciAoc3Ry aW5nIGNvbm5lY3Rvcik7CisrCQlwdWJsaWMgTWV0YS5Nb25pdG9yU3dpdGNoQ29uZmlnVHlwZSBn ZXRfc3dpdGNoX2NvbmZpZyAoKTsKKysJCXB1YmxpYyB2b2lkIHN3aXRjaF9jb25maWcgKE1ldGEu TW9uaXRvclN3aXRjaENvbmZpZ1R5cGUgY29uZmlnX3R5cGUpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgTWV0YS5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNvbmZpcm1fZGlzcGxheV9jaGFuZ2UgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgbW9uaXRvcnNfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBtb25pdG9yc19jaGFuZ2VkX2ludGVybmFsICgpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIHBvd2VyX3NhdmVfbW9kZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtcGx1Z2luLmgiLCB0eXBlX2lkID0gIm1ldGFfcGx1Z2luX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBQbHVnaW4gOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgUGx1Z2luICgpOworKwkJcHVibGljIGJvb2wgYmVnaW5fbW9kYWwgKE1ldGEuTW9kYWxP cHRpb25zIG9wdGlvbnMsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgY29tcGxl dGVfZGlzcGxheV9jaGFuZ2UgKGJvb2wgb2spOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgY29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlc3Ryb3kgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOwor KwkJcHVibGljIHZvaWQgZGVzdHJveV9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3Ip OworKwkJcHVibGljIHZvaWQgZW5kX21vZGFsICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1Ymxp YyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IE1ldGEuUGx1Z2luSW5mbz8gZ2V0X2luZm8gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBoaWRlX3RpbGVfcHJldmlldyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCBib29sIGtleWJpbmRpbmdfZmlsdGVyIChNZXRhLktleUJpbmRpbmcgYmlu ZGluZyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBraWxsX3N3aXRj aF93b3Jrc3BhY2UgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBr aWxsX3dpbmRvd19lZmZlY3RzIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGxvY2F0ZV9wb2ludGVyICgpOworKwkJcHVibGlj IHN0YXRpYyB2b2lkIG1hbmFnZXJfc2V0X3BsdWdpbl90eXBlIChHTGliLlR5cGUgZ3R5cGUpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbWFwIChNZXRhLldpbmRvd0Fj dG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIG1hcF9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0 b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbWluaW1p emUgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgbWluaW1pemVfY29t cGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB1bm93bmVkIE1ldGEuUGx1Z2luSW5mbz8gcGx1Z2luX2luZm8gKCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X3RpbGVfcHJldmlldyAoTWV0 YS5XaW5kb3cgd2luZG93LCBNZXRhLlJlY3RhbmdsZSB0aWxlX3JlY3QsIGludCB0aWxlX21vbml0 b3JfbnVtYmVyKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNob3df d2luZG93X21lbnUgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5XaW5kb3dNZW51VHlwZSBtZW51 LCBpbnQgeCwgaW50IHkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg c2hvd193aW5kb3dfbWVudV9mb3JfcmVjdCAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLldpbmRv d01lbnVUeXBlIG1lbnUsIE1ldGEuUmVjdGFuZ2xlIHJlY3QpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2l6ZV9jaGFuZ2UgKE1ldGEuV2luZG93QWN0b3IgYWN0b3Is IE1ldGEuU2l6ZUNoYW5nZSB3aGljaF9jaGFuZ2UsIE1ldGEuUmVjdGFuZ2xlIG9sZF9mcmFtZV9y ZWN0LCBNZXRhLlJlY3RhbmdsZSBvbGRfYnVmZmVyX3JlY3QpOworKwkJcHVibGljIHZvaWQgc2l6 ZV9jaGFuZ2VfY29tcGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNpemVfY2hhbmdlZCAoTWV0YS5XaW5kb3dBY3Rv ciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzdGFydCAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN3aXRjaF93b3Jrc3Bh Y2UgKGludCBmcm9tLCBpbnQgdG8sIE1ldGEuTW90aW9uRGlyZWN0aW9uIGRpcmVjdGlvbik7Cisr CQlwdWJsaWMgdm9pZCBzd2l0Y2hfd29ya3NwYWNlX2NvbXBsZXRlZCAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVubWluaW1pemUgKE1ldGEuV2luZG93QWN0b3Ig YWN0b3IpOworKwkJcHVibGljIHZvaWQgdW5taW5pbWl6ZV9jb21wbGV0ZWQgKE1ldGEuV2luZG93 QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgeGV2 ZW50X2ZpbHRlciAoWC5FdmVudCBldmVudCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQgPSAi bWV0YV9yZW1vdGVfYWNjZXNzX2NvbnRyb2xsZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFJlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUmVtb3RlQWNjZXNz Q29udHJvbGxlciAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBuZXdfaGFuZGxlIChNZXRhLlJl bW90ZUFjY2Vzc0hhbmRsZSBvYmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9sbGVyLmgiLCB0eXBlX2lkID0gIm1l dGFfcmVtb3RlX2FjY2Vzc19oYW5kbGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFJl bW90ZUFjY2Vzc0hhbmRsZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NIYW5kbGUgKCk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0b3AgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg c3RvcHBlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBTZWxlY3Rpb24gOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2VsZWN0aW9uIChNZXRhLkRpc3BsYXkgZGlz cGxheSk7CisrCQlwdWJsaWMgR0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBlcyAoTWV0YS5T ZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vd25lciAo TWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlLCBNZXRhLlNlbGVjdGlvblNvdXJjZSBv d25lcik7CisrCQlwdWJsaWMgYXN5bmMgYm9vbCB0cmFuc2Zlcl9hc3luYyAoTWV0YS5TZWxlY3Rp b25UeXBlIHNlbGVjdGlvbl90eXBlLCBzdHJpbmcgbWltZXR5cGUsIHNzaXplX3Qgc2l6ZSwgR0xp Yi5PdXRwdXRTdHJlYW0gb3V0cHV0LCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSkgdGhy b3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdm9pZCB1bnNldF9vd25lciAoTWV0YS5TZWxlY3Rp b25UeXBlIHNlbGVjdGlvbl90eXBlLCBNZXRhLlNlbGVjdGlvblNvdXJjZSBvd25lcik7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgb3duZXJfY2hhbmdlZCAodWludCBvYmplY3QsIE1ldGEuU2VsZWN0 aW9uU291cmNlIHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgU2VsZWN0aW9uU291cmNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNlbGVjdGlv blNvdXJjZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuTGlzdDxzdHJpbmc+IGdldF9taW1l dHlwZXMgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hY3RpdmUgKCk7CisrCQlwdWJsaWMgdmlydHVh bCBhc3luYyBHTGliLklucHV0U3RyZWFtIHJlYWRfYXN5bmMgKHN0cmluZyBtaW1ldHlwZSwgR0xp Yi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGVkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgZGVhY3RpdmF0ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9zb3VyY2VfbWVtb3J5 X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxlY3Rpb25Tb3VyY2VNZW1vcnkgOiBN ZXRhLlNlbGVjdGlvblNvdXJjZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJNZXRhU2VsZWN0aW9uU291cmNlKiIpXQorKwkJcHVibGljIFNlbGVj dGlvblNvdXJjZU1lbW9yeSAoc3RyaW5nIG1pbWV0eXBlLCBHTGliLkJ5dGVzIGNvbnRlbnQpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2V0dGluZ3MuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNldHRp bmdzIHsKKysJCXB1YmxpYyBpbnQgZ2V0X2ZvbnRfZHBpICgpOworKwkJcHVibGljIGludCBnZXRf dWlfc2NhbGluZ19mYWN0b3IgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgcmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3JlZiIsIHR5cGVfaWQg PSAibWV0YV9zaGFkb3dfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJtZXRhX3NoYWRv d191bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNoYWRvdyB7CisrCQlwdWJs aWMgdm9pZCBnZXRfYm91bmRzIChpbnQgd2luZG93X3gsIGludCB3aW5kb3dfeSwgaW50IHdpbmRv d193aWR0aCwgaW50IHdpbmRvd19oZWlnaHQsIENhaXJvLlJlY3RhbmdsZUludCBib3VuZHMpOwor KwkJcHVibGljIHZvaWQgcGFpbnQgKENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIsIGludCB3 aW5kb3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dpZHRoLCBpbnQgd2luZG93X2hlaWdo dCwgdWludDggb3BhY2l0eSwgQ2Fpcm8uUmVnaW9uPyBjbGlwLCBib29sIGNsaXBfc3RyaWN0bHkp OworKwkJcHVibGljIE1ldGEuU2hhZG93IEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNoYWRvdy1m YWN0b3J5LmgiLCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X2ZhY3RvcnlfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIFNoYWRvd0ZhY3RvcnkgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2hhZG93RmFjdG9y eSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLlNoYWRvd0ZhY3RvcnkgZ2V0X2Rl ZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3dQYXJhbXMgZ2V0X3BhcmFtcyAoc3RyaW5n IGNsYXNzX25hbWUsIGJvb2wgZm9jdXNlZCk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3cgZ2V0X3No YWRvdyAoTWV0YS5XaW5kb3dTaGFwZSBzaGFwZSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBzdHJp bmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2VkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYXJhbXMg KHN0cmluZyBjbGFzc19uYW1lLCBib29sIGZvY3VzZWQsIE1ldGEuU2hhZG93UGFyYW1zIEBwYXJh bXMpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zaGFwZWQtdGV4dHVyZS5oIiwgdHlwZV9pZCA9 ICJtZXRhX3NoYXBlZF90ZXh0dXJlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFw ZWRUZXh0dXJlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhcGVkVGV4dHVy ZSAoKTsKKysJCXB1YmxpYyBDYWlyby5TdXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3Rhbmds ZUludD8gY2xpcCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUg KCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3JlYXRlX21pcG1hcHMgKGJvb2wgY3JlYXRlX21pcG1h cHMpOworKwkJcHVibGljIHZvaWQgc2V0X21hc2tfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIG1hc2tf dGV4dHVyZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3BhcXVlX3JlZ2lvbiAob3duZWQgQ2Fpcm8u UmVnaW9uIG9wYXF1ZV9yZWdpb24pOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNpemVfY2hhbmdl ZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNvdW5k LXBsYXllci5oIiwgdHlwZV9pZCA9ICJtZXRhX3NvdW5kX3BsYXllcl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgU291bmRQbGF5ZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU291bmRQbGF5ZXIg KCk7CisrCQlwdWJsaWMgdm9pZCBwbGF5X2Zyb21fZmlsZSAoR0xpYi5GaWxlIGZpbGUsIHN0cmlu ZyBkZXNjcmlwdGlvbiwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUgPSBudWxsKTsKKysJ CXB1YmxpYyB2b2lkIHBsYXlfZnJvbV90aGVtZSAoc3RyaW5nIG5hbWUsIHN0cmluZyBkZXNjcmlw dGlvbiwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUgPSBudWxsKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXN0YWdlLmgiLCB0eXBlX2lkID0gIm1l dGFfc3RhZ2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlIDogQ2x1dHRlci5T dGFnZSwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFp bmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlICgpOworKwkJcHVibGljIHN0YXRpYyBi b29sIGlzX2ZvY3VzZWQgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCBhY3RvcnNfcGFpbnRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tZXRhLXN0YXJ0dXAtbm90aWZpY2F0aW9uLmgiLCB0eXBlX2lkID0gIm1ldGFfc3Rh cnR1cF9ub3RpZmljYXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YXJ0dXBO b3RpZmljYXRpb24gOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhcnR1cE5vdGlmaWNhdGlvbiAoKTsKKysJ CXB1YmxpYyBNZXRhLkxhdW5jaENvbnRleHQgY3JlYXRlX2xhdW5jaGVyICgpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKHZvaWQqIG9iamVj dCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgdHlw ZV9pZCA9ICJtZXRhX3N0YXJ0dXBfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFN0YXJ0dXBTZXF1ZW5jZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFydHVwU2VxdWVuY2UgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2FwcGxpY2F0aW9uX2lkICgpOworKwkJcHVi bGljIGJvb2wgZ2V0X2NvbXBsZXRlZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRf aWNvbl9uYW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pZCAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X3Rp bWVzdGFtcCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfd21jbGFzcyAoKTsKKysJ CXB1YmxpYyBpbnQgZ2V0X3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgYXBwbGljYXRp b25faWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBpY29uX25hbWUgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBpZCB7IGdldDsgY29uc3RydWN0OyB9 CisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHVp bnQ2NCB0aW1lc3RhbXAgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyB3bWNs YXNzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBpbnQgd29ya3NwYWNlIHsgZ2V0OyBj b25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNvbXBs ZXRlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3RoZW1lLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBUaGVt ZSB7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3dpbmRvdy5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgV2luZG93IDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdp bmRvdyAoKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlICh1aW50MzIgY3VycmVudF90aW1lKTsK KysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlX3dpdGhfd29ya3NwYWNlICh1aW50MzIgY3VycmVudF90 aW1lLCBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIGJvb2wgYWxsb3dzX21v dmUgKCk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfcmVzaXplICgpOworKwkJcHVibGljIHZvaWQg YmVnaW5fZ3JhYl9vcCAoTWV0YS5HcmFiT3Agb3AsIGJvb2wgZnJhbWVfYWN0aW9uLCB1aW50MzIg dGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIGNhbl9jbG9zZSAoKTsKKysJCXB1YmxpYyBib29s IGNhbl9tYXhpbWl6ZSAoKTsKKysJCXB1YmxpYyBib29sIGNhbl9taW5pbWl6ZSAoKTsKKysJCXB1 YmxpYyBib29sIGNhbl9zaGFkZSAoKTsKKysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3BhY2Ug KE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdm9pZCBjaGFuZ2Vfd29ya3Nw YWNlX2J5X2luZGV4IChpbnQgc3BhY2VfaW5kZXgsIGJvb2wgYXBwZW5kKTsKKysJCXB1YmxpYyB2 b2lkIGNoZWNrX2FsaXZlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBNZXRhLlJlY3Rh bmdsZSBjbGllbnRfcmVjdF90b19mcmFtZV9yZWN0IChNZXRhLlJlY3RhbmdsZSBjbGllbnRfcmVj dCk7CisrCQlwdWJsaWMgdm9pZCBjb21wdXRlX2dyb3VwICgpOworKwkJcHVibGljIHZvaWQgQGRl bGV0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBm aW5kX3Jvb3RfYW5jZXN0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBmb2N1cyAodWludDMyIHRpbWVz dGFtcCk7CisrCQlwdWJsaWMgdm9pZCBmb3JlYWNoX2FuY2VzdG9yIChNZXRhLldpbmRvd0ZvcmVh Y2hGdW5jIGZ1bmMpOworKwkJcHVibGljIHZvaWQgZm9yZWFjaF90cmFuc2llbnQgKE1ldGEuV2lu ZG93Rm9yZWFjaEZ1bmMgZnVuYyk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZnJhbWVfcmVj dF90b19jbGllbnRfcmVjdCAoTWV0YS5SZWN0YW5nbGUgZnJhbWVfcmVjdCk7CisrCQlwdWJsaWMg TWV0YS5SZWN0YW5nbGUgZ2V0X2J1ZmZlcl9yZWN0ICgpOworKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF9jbGllbnRfbWFjaGluZSAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd0NsaWVudFR5 cGUgZ2V0X2NsaWVudF90eXBlICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5PYmplY3QgZ2V0 X2NvbXBvc2l0b3JfcHJpdmF0ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZGVz Y3JpcHRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3BsYXkg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDYWlyby5SZWdpb24/IGdldF9mcmFtZV9ib3VuZHMgKCk7 CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X2ZyYW1lX3JlY3QgKCk7CisrCQlwdWJsaWMg TWV0YS5GcmFtZVR5cGUgZ2V0X2ZyYW1lX3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X2d0a19hcHBfbWVudV9vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfZ3RrX2FwcGxpY2F0aW9uX2lkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF9ndGtfYXBwbGljYXRpb25fb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X2d0a19tZW51YmFyX29iamVjdF9wYXRoICgpOworKwkJcHVibGljIHVub3duZWQg c3RyaW5nIGdldF9ndGtfdGhlbWVfdmFyaWFudCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfZ3RrX3VuaXF1ZV9idXNfbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfZ3RrX3dpbmRvd19vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pY29uX2dl b21ldHJ5IChvdXQgTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlwdWJsaWMgdWludDY0IGdldF9p ZCAoKTsKKysJCXB1YmxpYyBNZXRhLlN0YWNrTGF5ZXIgZ2V0X2xheWVyICgpOworKwkJcHVibGlj IE1ldGEuTWF4aW1pemVGbGFncyBnZXRfbWF4aW1pemVkICgpOworKwkJcHVibGljIGludCBnZXRf bW9uaXRvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbXV0dGVyX2hpbnRzICgp OworKwkJcHVibGljIGludCBnZXRfcGlkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdl dF9yb2xlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9zYW5kYm94ZWRfYXBwX2lk ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3N0YWJsZV9zZXF1ZW5jZSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfc3RhcnR1cF9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEu V2luZG93PyBnZXRfdGlsZV9tYXRjaCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRf dGl0bGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfdHJhbnNpZW50X2Zv ciAoKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0X3VzZXJfdGltZSAoKTsKKysJCXB1YmxpYyBNZXRh LldpbmRvd1R5cGUgZ2V0X3dpbmRvd190eXBlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF93bV9jbGFzcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfd21fY2xhc3Nf aW5zdGFuY2UgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9hbGxf bW9uaXRvcnMgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9jdXJy ZW50X21vbml0b3IgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9m b3JfbW9uaXRvciAoaW50IHdoaWNoX21vbml0b3IpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5X b3Jrc3BhY2UgZ2V0X3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBYLldpbmRvdyBnZXRfeHdpbmRv dyAoKTsKKysJCXB1YmxpYyB2b2lkIGdyb3VwX2xlYWRlcl9jaGFuZ2VkICgpOworKwkJcHVibGlj IGJvb2wgaGFzX2ZvY3VzICgpOworKwkJcHVibGljIGJvb2wgaXNfYWJvdmUgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19hbHdheXNfb25fYWxsX3dvcmtzcGFjZXMgKCk7CisrCQlwdWJsaWMgYm9vbCBp c19hbmNlc3Rvcl9vZl90cmFuc2llbnQgKE1ldGEuV2luZG93IHRyYW5zaWVudCk7CisrCQlwdWJs aWMgYm9vbCBpc19hdHRhY2hlZF9kaWFsb2cgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jbGllbnRf ZGVjb3JhdGVkICgpOworKwkJcHVibGljIGJvb2wgaXNfZnVsbHNjcmVlbiAoKTsKKysJCXB1Ymxp YyBib29sIGlzX2hpZGRlbiAoKTsKKysJCXB1YmxpYyBib29sIGlzX21vbml0b3Jfc2l6ZWQgKCk7 CisrCQlwdWJsaWMgYm9vbCBpc19vbl9hbGxfd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyBib29s IGlzX29uX3ByaW1hcnlfbW9uaXRvciAoKTsKKysJCXB1YmxpYyBib29sIGlzX292ZXJyaWRlX3Jl ZGlyZWN0ICgpOworKwkJcHVibGljIGJvb2wgaXNfcmVtb3RlICgpOworKwkJcHVibGljIGJvb2wg aXNfc2NyZWVuX3NpemVkICgpOworKwkJcHVibGljIGJvb2wgaXNfc2hhZGVkICgpOworKwkJcHVi bGljIGJvb2wgaXNfc2tpcF90YXNrYmFyICgpOworKwkJcHVibGljIHZvaWQga2lsbCAoKTsKKysJ CXB1YmxpYyBib29sIGxvY2F0ZWRfb25fd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3Bh Y2UpOworKwkJcHVibGljIHZvaWQgbG93ZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBtYWtlX2Fib3Zl ICgpOworKwkJcHVibGljIHZvaWQgbWFrZV9mdWxsc2NyZWVuICgpOworKwkJcHVibGljIHZvaWQg bWF4aW1pemUgKE1ldGEuTWF4aW1pemVGbGFncyBkaXJlY3Rpb25zKTsKKysJCXB1YmxpYyB2b2lk IG1pbmltaXplICgpOworKwkJcHVibGljIHZvaWQgbW92ZV9mcmFtZSAoYm9vbCB1c2VyX29wLCBp bnQgcm9vdF94X253LCBpbnQgcm9vdF95X253KTsKKysJCXB1YmxpYyB2b2lkIG1vdmVfcmVzaXpl X2ZyYW1lIChib29sIHVzZXJfb3AsIGludCByb290X3hfbncsIGludCByb290X3lfbncsIGludCB3 LCBpbnQgaCk7CisrCQlwdWJsaWMgdm9pZCBtb3ZlX3RvX21vbml0b3IgKGludCBtb25pdG9yKTsK KysJCXB1YmxpYyB2b2lkIHJhaXNlICgpOworKwkJcHVibGljIGJvb2wgcmVxdWVzdGVkX2J5cGFz c19jb21wb3NpdG9yICgpOworKwkJcHVibGljIGJvb2wgcmVxdWVzdGVkX2RvbnRfYnlwYXNzX2Nv bXBvc2l0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29tcG9zaXRvcl9wcml2YXRlIChHTGli Lk9iamVjdCBwcml2KTsKKysJCXB1YmxpYyB2b2lkIHNldF9kZW1hbmRzX2F0dGVudGlvbiAoKTsK KysJCXB1YmxpYyB2b2lkIHNldF9pY29uX2dlb21ldHJ5IChNZXRhLlJlY3RhbmdsZT8gcmVjdCk7 CisrCQlwdWJsaWMgdm9pZCBzaGFkZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9p ZCBzaG92ZV90aXRsZWJhcl9vbnNjcmVlbiAoKTsKKysJCXB1YmxpYyBib29sIHNob3dpbmdfb25f aXRzX3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNodXRkb3duX2dyb3VwICgpOworKwkJ cHVibGljIHZvaWQgc3RpY2sgKCk7CisrCQlwdWJsaWMgYm9vbCB0aXRsZWJhcl9pc19vbnNjcmVl biAoKTsKKysJCXB1YmxpYyB2b2lkIHVubWFrZV9hYm92ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHVu bWFrZV9mdWxsc2NyZWVuICgpOworKwkJcHVibGljIHZvaWQgdW5tYXhpbWl6ZSAoTWV0YS5NYXhp bWl6ZUZsYWdzIGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQgdW5taW5pbWl6ZSAoKTsKKysJ CXB1YmxpYyB2b2lkIHVuc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJcHVibGljIHZvaWQg dW5zaGFkZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCB1bnN0aWNrICgpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBhYm92ZSB7IGdldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBhcHBlYXJzX2ZvY3VzZWQgeyBnZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZGVjb3JhdGVkIHsgZ2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGRlbWFuZHNfYXR0ZW50 aW9uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGZ1bGxz Y3JlZW4geyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX2FwcF9tZW51X29iamVjdF9wYXRo IHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19hcHBsaWNhdGlvbl9pZCB7IGdldDsgfQor KwkJcHVibGljIHN0cmluZyBndGtfYXBwbGljYXRpb25fb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJ CXB1YmxpYyBzdHJpbmcgZ3RrX21lbnViYXJfb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCXB1Ymxp YyBzdHJpbmcgZ3RrX3VuaXF1ZV9idXNfbmFtZSB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBn dGtfd2luZG93X29iamVjdF9wYXRoIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyB2b2lkKiBpY29uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBib29sIG1heGltaXplZF9ob3Jpem9udGFsbHkgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWF4aW1pemVkX3ZlcnRpY2FsbHkgeyBnZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHZvaWQqIG1pbmlfaWNvbiB7IGdldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBtaW5pbWl6ZWQgeyBnZXQ7IH0K KysJCXB1YmxpYyBzdHJpbmcgbXV0dGVyX2hpbnRzIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBib29sIG9uX2FsbF93b3Jrc3BhY2VzIHsgZ2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHJlc2l6ZWFibGUgeyBnZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2tpcF90YXNrYmFyIHsgZ2V0OyB9Cisr CQlwdWJsaWMgc3RyaW5nIHRpdGxlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIHVyZ2VudCB7IGdldDsgfQorKwkJcHVibGljIHVpbnQgdXNlcl90aW1lIHsg Z2V0OyB9CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dUeXBlIHdpbmRvd190eXBlIHsgZ2V0OyB9Cisr CQlwdWJsaWMgc3RyaW5nIHdtX2NsYXNzIHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg cG9zaXRpb25fY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCByYWlzZWQgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd24gKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2l6 ZV9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHVubWFuYWdlZCAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1hY3Rvci5oIiwgdHlwZV9pZCA9ICJt ZXRhX3dpbmRvd19hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3Mg V2luZG93QWN0b3IgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5p bWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93 QWN0b3IgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uU3VyZmFjZT8gZ2V0X2ltYWdlIChDYWlyby5SZWN0 YW5nbGVJbnQ/IGNsaXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X21ldGFf d2luZG93ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5TaGFwZWRUZXh0dXJlIGdldF90ZXh0 dXJlICgpOworKwkJcHVibGljIGJvb2wgaXNfZGVzdHJveWVkICgpOworKwkJcHVibGljIHZvaWQg c3luY192aXNpYmlsaXR5ICgpOworKwkJcHVibGljIE1ldGEuV2luZG93IG1ldGFfd2luZG93IHsg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkYW1hZ2VkICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIGVmZmVjdHNfY29tcGxldGVkICgpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIGZpcnN0X2ZyYW1lICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHRoYXdlZCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1ncm91 cC5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgV2luZG93R3JvdXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENs dXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgV2luZG93R3JvdXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWV0YS13aW5kb3ctc2hhcGUuaCIsIHJlZl9mdW5jdGlvbiA9ICJtZXRhX3dpbmRvd19zaGFw ZV9yZWYiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X3NoYXBlX2dldF90eXBlICgpIiwgdW5yZWZf ZnVuY3Rpb24gPSAibWV0YV93aW5kb3dfc2hhcGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1 YmxpYyBjbGFzcyBXaW5kb3dTaGFwZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwdWJsaWMgV2luZG93U2hhcGUgKENhaXJvLlJlZ2lvbiByZWdpb24p OworKwkJcHVibGljIGJvb2wgZXF1YWwgKE1ldGEuV2luZG93U2hhcGUgc2hhcGVfYik7CisrCQlw dWJsaWMgdm9pZCBnZXRfYm9yZGVycyAoaW50IGJvcmRlcl90b3AsIGludCBib3JkZXJfcmlnaHQs IGludCBib3JkZXJfYm90dG9tLCBpbnQgYm9yZGVyX2xlZnQpOworKwkJcHVibGljIHVpbnQgaGFz aCAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd1NoYXBlIEByZWYgKCk7CisrCQlwdWJsaWMgQ2Fp cm8uUmVnaW9uIHRvX3JlZ2lvbiAoaW50IGNlbnRlcl93aWR0aCwgaW50IGNlbnRlcl9oZWlnaHQp OworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvd29ya3NwYWNlLmgiLCB0eXBlX2lkID0gIm1ldGFfd29ya3NwYWNlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXb3Jrc3BhY2UgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV29y a3NwYWNlICgpOworKwkJcHVibGljIHZvaWQgYWN0aXZhdGUgKHVpbnQzMiB0aW1lc3RhbXApOwor KwkJcHVibGljIHZvaWQgYWN0aXZhdGVfd2l0aF9mb2N1cyAoTWV0YS5XaW5kb3cgZm9jdXNfdGhp cywgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0 X2Rpc3BsYXkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfbmVpZ2hi b3IgKE1ldGEuTW90aW9uRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlwdWJsaWMgTWV0YS5SZWN0 YW5nbGUgZ2V0X3dvcmtfYXJlYV9hbGxfbW9uaXRvcnMgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0 YW5nbGUgZ2V0X3dvcmtfYXJlYV9mb3JfbW9uaXRvciAoaW50IHdoaWNoX21vbml0b3IpOworKwkJ cHVibGljIGludCBpbmRleCAoKTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBNZXRhLldpbmRv dz4gbGlzdF93aW5kb3dzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2J1aWx0aW5fc3RydXRzIChH TGliLlNMaXN0PE1ldGEuU3RydXQ/PiBzdHJ1dHMpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgdWludCBuX3dpbmRvd3MgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIHVpbnQgd29ya3NwYWNlX2luZGV4IHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgd2luZG93X2FkZGVkIChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHdpbmRvd19yZW1vdmVkIChNZXRhLldpbmRvdyBvYmplY3QpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd29ya3NwYWNlLW1hbmFnZXIuaCIsIHR5 cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgV29ya3NwYWNlTWFuYWdlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3BhY2VNYW5hZ2Vy ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2UgYXBwZW5kX25ld193b3Jrc3Bh Y2UgKGJvb2wgYWN0aXZhdGUsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQg TWV0YS5Xb3Jrc3BhY2UgZ2V0X2FjdGl2ZV93b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgaW50IGdl dF9hY3RpdmVfd29ya3NwYWNlX2luZGV4ICgpOworKwkJcHVibGljIGludCBnZXRfbl93b3Jrc3Bh Y2VzICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2U/IGdldF93b3Jrc3BhY2Vf YnlfaW5kZXggKGludCBpbmRleCk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV93b3Jrc3BhY2Vf bGF5b3V0IChNZXRhLkRpc3BsYXlDb3JuZXIgc3RhcnRpbmdfY29ybmVyLCBib29sIHZlcnRpY2Fs X2xheW91dCwgaW50IG5fcm93cywgaW50IG5fY29sdW1ucyk7CisrCQlwdWJsaWMgdm9pZCByZW1v dmVfd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UsIHVpbnQzMiB0aW1lc3RhbXAp OworKwkJcHVibGljIHZvaWQgcmVvcmRlcl93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtz cGFjZSwgaW50IG5ld19pbmRleCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBp bnQgbGF5b3V0X2NvbHVtbnMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGludCBsYXlvdXRfcm93cyB7IGdldDsgfQorKwkJcHVibGljIGludCBuX3dvcmtzcGFjZXMg eyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY3RpdmVfd29ya3NwYWNlX2NoYW5nZWQg KCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd2luZ19kZXNrdG9wX2NoYW5nZWQgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX2FkZGVkIChpbnQgb2JqZWN0KTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VfcmVtb3ZlZCAoaW50IG9iamVjdCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX3N3aXRjaGVkIChpbnQgb2JqZWN0LCBpbnQgcDAsIE1l dGEuTW90aW9uRGlyZWN0aW9uIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2Vz X3Jlb3JkZXJlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t ZXRhLXgxMS1kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1ldGFfeDExX2Rpc3BsYXlfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFgxMURpc3BsYXkgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgWDExRGlz cGxheSAoKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFyX3N0YWdlX2lucHV0X3JlZ2lvbiAoKTsKKysJ CXB1YmxpYyBpbnQgZ2V0X2RhbWFnZV9ldmVudF9iYXNlICgpOworKwkJcHVibGljIGludCBnZXRf c2NyZWVuX251bWJlciAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3NoYXBlX2V2ZW50X2Jhc2UgKCk7 CisrCQlwdWJsaWMgYm9vbCBoYXNfc2hhcGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY21fc2Vs ZWN0aW9uICgpOworKwkJcHVibGljIHZvaWQgc2V0X3N0YWdlX2lucHV0X3JlZ2lvbiAoWC5Yc2Vy dmVyUmVnaW9uIHJlZ2lvbik7CisrCQlwdWJsaWMgYm9vbCB4d2luZG93X2lzX2Ffbm9fZm9jdXNf d2luZG93IChYLldpbmRvdyB4d2luZG93KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIiwgdHlwZV9jbmFtZSA9ICJNZXRhQ2xvc2VE aWFsb2dJbnRlcmZhY2UiLCB0eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX2dldF90eXBlICgp IildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ2xvc2VEaWFsb2cgOiBHTGliLk9iamVjdCB7CisrCQlw dWJsaWMgYWJzdHJhY3Qgdm9pZCBmb2N1cyAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGhp ZGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc192aXNpYmxlICgpOworKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGFic3RyYWN0 IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbSGFzRW1p dHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNwb25zZSAoTWV0YS5DbG9zZURpYWxvZ1Jl c3BvbnNlIHJlc3BvbnNlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tZXRhLWluaGliaXQtc2hvcnRjdXRzLWRpYWxvZy5oIiwgdHlwZV9jbmFtZSA9ICJNZXRhSW5o aWJpdFNob3J0Y3V0c0RpYWxvZ0ludGVyZmFjZSIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0X3No b3J0Y3V0c19kaWFsb2dfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBJbmhpYml0 U2hvcnRjdXRzRGlhbG9nIDogR0xpYi5PYmplY3QgeworKwkJcHVibGljIGFic3RyYWN0IHZvaWQg aGlkZSAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKCk7CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBhYnN0cmFjdCBNZXRhLldpbmRvdyB3aW5kb3cgeyBvd25lZCBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg cmVzcG9uc2UgKE1ldGEuSW5oaWJpdFNob3J0Y3V0c0RpYWxvZ1Jlc3BvbnNlIHJlc3BvbnNlKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBCdXR0b25MYXlvdXQgeworKwkJW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1bmN0 aW9uIGxlZnRfYnV0dG9uc1s0XTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQor KwkJcHVibGljIHdlYWsgYm9vbCBsZWZ0X2J1dHRvbnNfaGFzX3NwYWNlcls0XTsKKysJCVtDQ29k ZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgTWV0YS5CdXR0b25GdW5j dGlvbiByaWdodF9idXR0b25zWzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSld CisrCQlwdWJsaWMgd2VhayBib29sIHJpZ2h0X2J1dHRvbnNfaGFzX3NwYWNlcls0XTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBFZGdlIHsKKysJCXB1YmxpYyBNZXRhLlJlY3Rhbmds ZSByZWN0OworKwkJcHVibGljIE1ldGEuU2lkZSBzaWRlX3R5cGU7CisrCQlwdWJsaWMgTWV0YS5F ZGdlVHlwZSBlZGdlX3R5cGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgRnJhbWVC b3JkZXJzIHsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIHZpc2libGU7CisrCQlwdWJsaWMgR3RrLkJv cmRlciBpbnZpc2libGU7CisrCQlwdWJsaWMgR3RrLkJvcmRlciB0b3RhbDsKKysJCXB1YmxpYyB2 b2lkIGNsZWFyICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21l dGEtcGx1Z2luLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQbHVn aW5JbmZvIHsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBuYW1lOworKwkJcHVibGljIHdlYWsgc3Ry aW5nIHZlcnNpb247CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgYXV0aG9yOworKwkJcHVibGljIHdl YWsgc3RyaW5nIGxpY2Vuc2U7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgZGVzY3JpcHRpb247Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGx1Z2luVmVyc2lvbiB7CisrCQlwdWJsaWMg dWludCB2ZXJzaW9uX21ham9yOworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9taW5vcjsKKysJCXB1 YmxpYyB1aW50IHZlcnNpb25fbWljcm87CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX2FwaTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjb3B5X2Z1bmN0 aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlw ZV9pZCA9ICJtZXRhX3JlY3RhbmdsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFJl Y3RhbmdsZSB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMg aW50IHdpZHRoOworKwkJcHVibGljIGludCBoZWlnaHQ7CisrCQlwdWJsaWMgaW50IGFyZWEgKCk7 CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19yZWN0IChNZXRhLlJlY3RhbmdsZSBpbm5lcl9yZWN0 KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGNv dWxkX2ZpdF9yZWN0IChNZXRhLlJlY3RhbmdsZSBpbm5lcl9yZWN0KTsKKysJCXB1YmxpYyBib29s IGVxdWFsIChNZXRhLlJlY3RhbmdsZSBzcmMyKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7Cisr CQlwdWJsaWMgYm9vbCBob3Jpel9vdmVybGFwIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCQlw dWJsaWMgYm9vbCBpbnRlcnNlY3QgKE1ldGEuUmVjdGFuZ2xlIHNyYzIsIG91dCBNZXRhLlJlY3Rh bmdsZSBkZXN0KTsKKysJCXB1YmxpYyBib29sIG92ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3Qy KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSB1bmlvbiAoTWV0YS5SZWN0YW5nbGUgcmVjdDIp OworKwkJcHVibGljIGJvb2wgdmVydF9vdmVybGFwIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2hhZG93UGFyYW1zIHsKKysJCXB1YmxpYyBp bnQgcmFkaXVzOworKwkJcHVibGljIGludCB0b3BfZmFkZTsKKysJCXB1YmxpYyBpbnQgeF9vZmZz ZXQ7CisrCQlwdWJsaWMgaW50IHlfb2Zmc2V0OworKwkJcHVibGljIHVpbnQ4IG9wYWNpdHk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU3RydXQgeworKwkJcHVibGljIE1ldGEuUmVj dGFuZ2xlIHJlY3Q7CisrCQlwdWJsaWMgTWV0YS5TaWRlIHNpZGU7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0JBUlJJRVJf RElSRUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2RpcmVjdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEJhcnJpZXJEaXJlY3Rpb24geworKwkJUE9T SVRJVkVfWCwKKysJCVBPU0lUSVZFX1ksCisrCQlORUdBVElWRV9YLAorKwkJTkVHQVRJVkVfWQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXgg PSAiTUVUQV9CVVRUT05fRlVOQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2J1dHRvbl9mdW5jdGlv bl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBCdXR0b25GdW5jdGlvbiB7CisrCQlNRU5V LAorKwkJTUlOSU1JWkUsCisrCQlNQVhJTUlaRSwKKysJCUNMT1NFLAorKwkJTEFTVAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9DTE9TRV9ESUFMT0dfUkVTUE9OU0VfIiwgdHlwZV9pZCA9ICJtZXRhX2Nsb3NlX2RpYWxvZ19y ZXNwb25zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDbG9zZURpYWxvZ1Jlc3BvbnNl IHsKKysJCVdBSVQsCisrCQlGT1JDRV9DTE9TRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9DT01QX0VGRkVDVF8iLCB0eXBl X2lkID0gIm1ldGFfY29tcF9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQ29t cEVmZmVjdCB7CisrCQlDUkVBVEUsCisrCQlVTk1JTklNSVpFLAorKwkJREVTVFJPWSwKKysJCU1J TklNSVpFLAorKwkJTk9ORQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9DVVJTT1JfIiwgdHlwZV9pZCA9ICJtZXRhX2N1cnNv cl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDdXJzb3IgeworKwkJTk9ORSwKKysJCURF RkFVTFQsCisrCQlOT1JUSF9SRVNJWkUsCisrCQlTT1VUSF9SRVNJWkUsCisrCQlXRVNUX1JFU0la RSwKKysJCUVBU1RfUkVTSVpFLAorKwkJU0VfUkVTSVpFLAorKwkJU1dfUkVTSVpFLAorKwkJTkVf UkVTSVpFLAorKwkJTldfUkVTSVpFLAorKwkJTU9WRV9PUl9SRVNJWkVfV0lORE9XLAorKwkJQlVT WSwKKysJCURORF9JTl9EUkFHLAorKwkJRE5EX01PVkUsCisrCQlETkRfQ09QWSwKKysJCURORF9V TlNVUFBPUlRFRF9UQVJHRVQsCisrCQlQT0lOVElOR19IQU5ELAorKwkJQ1JPU1NIQUlSLAorKwkJ SUJFQU0sCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RFQlVHXyIsIHR5cGVfaWQgPSAibWV0YV9kZWJ1Z190 b3BpY19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERlYnVnVG9waWMg eworKwkJVkVSQk9TRSwKKysJCUZPQ1VTLAorKwkJV09SS0FSRUEsCisrCQlTVEFDSywKKysJCVRI RU1FUywKKysJCVNNLAorKwkJRVZFTlRTLAorKwkJV0lORE9XX1NUQVRFLAorKwkJV0lORE9XX09Q UywKKysJCUdFT01FVFJZLAorKwkJUExBQ0VNRU5ULAorKwkJUElORywKKysJCVhJTkVSQU1BLAor KwkJS0VZQklORElOR1MsCisrCQlTWU5DLAorKwkJRVJST1JTLAorKwkJU1RBUlRVUCwKKysJCVBS RUZTLAorKwkJR1JPVVBTLAorKwkJUkVTSVpJTkcsCisrCQlTSEFQRVMsCisrCQlDT01QT1NJVE9S LAorKwkJRURHRV9SRVNJU1RBTkNFLAorKwkJREJVUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVJFQ1RJT05fIiwgdHlw ZV9pZCA9ICJtZXRhX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1Ymxp YyBlbnVtIERpcmVjdGlvbiB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlCT1RU T00sCisrCQlVUCwKKysJCURPV04sCisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfRElTUExBWV8iLCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9jb3JuZXJfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGVudW0gRGlzcGxheUNvcm5lciB7CisrCQlUT1BMRUZULAorKwkJVE9QUklH SFQsCisrCQlCT1RUT01MRUZULAorKwkJQk9UVE9NUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRElTUExBWV8iLCB0 eXBlX2lkID0gIm1ldGFfZGlzcGxheV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gRGlzcGxheURpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJ UklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj cHJlZml4ID0gIk1FVEFfRURHRV8iLCB0eXBlX2lkID0gIm1ldGFfZWRnZV90eXBlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIEVkZ2VUeXBlIHsKKysJCVdJTkRPVywKKysJCU1PTklUT1Is CisrCQlTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfRVhJVF8iLCB0eXBlX2lkID0gIm1ldGFfZXhpdF9jb2RlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEV4aXRDb2RlIHsKKysJCVNVQ0NFU1MsCisrCQlF UlJPUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV9GUkFNRV8iLCB0eXBlX2lkID0gIm1ldGFfZnJhbWVfZmxhZ3NfZ2V0X3R5 cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBGcmFtZUZsYWdzIHsKKysJCUFMTE9X U19ERUxFVEUsCisrCQlBTExPV1NfTUVOVSwKKysJCUFMTE9XU19NSU5JTUlaRSwKKysJCUFMTE9X U19NQVhJTUlaRSwKKysJCUFMTE9XU19WRVJUSUNBTF9SRVNJWkUsCisrCQlBTExPV1NfSE9SSVpP TlRBTF9SRVNJWkUsCisrCQlIQVNfRk9DVVMsCisrCQlTSEFERUQsCisrCQlTVFVDSywKKysJCU1B WElNSVpFRCwKKysJCUFMTE9XU19TSEFERSwKKysJCUFMTE9XU19NT1ZFLAorKwkJRlVMTFNDUkVF TiwKKysJCUFCT1ZFLAorKwkJVElMRURfTEVGVCwKKysJCVRJTEVEX1JJR0hUCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0ZS QU1FX1RZUEVfIiwgdHlwZV9pZCA9ICJtZXRhX2ZyYW1lX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gRnJhbWVUeXBlIHsKKysJCU5PUk1BTCwKKysJCURJQUxPRywKKysJCU1PREFM X0RJQUxPRywKKysJCVVUSUxJVFksCisrCQlNRU5VLAorKwkJQk9SREVSLAorKwkJQVRUQUNIRUQs CisrCQlMQVNUOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfR1JBQl9PUF8iLCB0eXBlX2lkID0gIm1ldGFfZ3JhYl9vcF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBHcmFiT3AgeworKwkJTk9ORSwKKysJCVdJTkRPV19CQVNFLAorKwkJQ09NUE9T SVRPUiwKKysJCVdBWUxBTkRfUE9QVVAsCisrCQlGUkFNRV9CVVRUT04sCisrCQlNT1ZJTkcsCisr CQlSRVNJWklOR19OVywKKysJCVJFU0laSU5HX04sCisrCQlSRVNJWklOR19ORSwKKysJCVJFU0la SU5HX0UsCisrCQlSRVNJWklOR19TVywKKysJCVJFU0laSU5HX1MsCisrCQlSRVNJWklOR19TRSwK KysJCVJFU0laSU5HX1csCisrCQlLRVlCT0FSRF9NT1ZJTkcsCisrCQlLRVlCT0FSRF9SRVNJWklO R19VTktOT1dOLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfTlcsCisrCQlLRVlCT0FSRF9SRVNJWklO R19OLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfTkUsCisrCQlLRVlCT0FSRF9SRVNJWklOR19FLAor KwkJS0VZQk9BUkRfUkVTSVpJTkdfU1csCisrCQlLRVlCT0FSRF9SRVNJWklOR19TLAorKwkJS0VZ Qk9BUkRfUkVTSVpJTkdfU0UsCisrCQlLRVlCT0FSRF9SRVNJWklOR19XCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0lOSElC SVRfU0hPUlRDVVRTX0RJQUxPR19SRVNQT05TRV8iLCB0eXBlX2lkID0gIm1ldGFfaW5oaWJpdF9z aG9ydGN1dHNfZGlhbG9nX3Jlc3BvbnNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElu aGliaXRTaG9ydGN1dHNEaWFsb2dSZXNwb25zZSB7CisrCQlBTExPVywKKysJCURFTlkKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfS0VZQklORElOR19BQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2FjdGlv bl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBLZXlCaW5kaW5nQWN0aW9uIHsKKysJCU5P TkUsCisrCQlXT1JLU1BBQ0VfMSwKKysJCVdPUktTUEFDRV8yLAorKwkJV09SS1NQQUNFXzMsCisr CQlXT1JLU1BBQ0VfNCwKKysJCVdPUktTUEFDRV81LAorKwkJV09SS1NQQUNFXzYsCisrCQlXT1JL U1BBQ0VfNywKKysJCVdPUktTUEFDRV84LAorKwkJV09SS1NQQUNFXzksCisrCQlXT1JLU1BBQ0Vf MTAsCisrCQlXT1JLU1BBQ0VfMTEsCisrCQlXT1JLU1BBQ0VfMTIsCisrCQlXT1JLU1BBQ0VfTEVG VCwKKysJCVdPUktTUEFDRV9SSUdIVCwKKysJCVdPUktTUEFDRV9VUCwKKysJCVdPUktTUEFDRV9E T1dOLAorKwkJV09SS1NQQUNFX0xBU1QsCisrCQlTV0lUQ0hfQVBQTElDQVRJT05TLAorKwkJU1dJ VENIX0FQUExJQ0FUSU9OU19CQUNLV0FSRCwKKysJCVNXSVRDSF9HUk9VUCwKKysJCVNXSVRDSF9H Uk9VUF9CQUNLV0FSRCwKKysJCVNXSVRDSF9XSU5ET1dTLAorKwkJU1dJVENIX1dJTkRPV1NfQkFD S1dBUkQsCisrCQlTV0lUQ0hfUEFORUxTLAorKwkJU1dJVENIX1BBTkVMU19CQUNLV0FSRCwKKysJ CUNZQ0xFX0dST1VQLAorKwkJQ1lDTEVfR1JPVVBfQkFDS1dBUkQsCisrCQlDWUNMRV9XSU5ET1dT LAorKwkJQ1lDTEVfV0lORE9XU19CQUNLV0FSRCwKKysJCUNZQ0xFX1BBTkVMUywKKysJCUNZQ0xF X1BBTkVMU19CQUNLV0FSRCwKKysJCVNIT1dfREVTS1RPUCwKKysJCVBBTkVMX01BSU5fTUVOVSwK KysJCVBBTkVMX1JVTl9ESUFMT0csCisrCQlUT0dHTEVfUkVDT1JESU5HLAorKwkJU0VUX1NQRVdf TUFSSywKKysJCUFDVElWQVRFX1dJTkRPV19NRU5VLAorKwkJVE9HR0xFX0ZVTExTQ1JFRU4sCisr CQlUT0dHTEVfTUFYSU1JWkVELAorKwkJVE9HR0xFX1RJTEVEX0xFRlQsCisrCQlUT0dHTEVfVElM RURfUklHSFQsCisrCQlUT0dHTEVfQUJPVkUsCisrCQlNQVhJTUlaRSwKKysJCVVOTUFYSU1JWkUs CisrCQlUT0dHTEVfU0hBREVELAorKwkJTUlOSU1JWkUsCisrCQlDTE9TRSwKKysJCUJFR0lOX01P VkUsCisrCQlCRUdJTl9SRVNJWkUsCisrCQlUT0dHTEVfT05fQUxMX1dPUktTUEFDRVMsCisrCQlN T1ZFX1RPX1dPUktTUEFDRV8xLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMiwKKysJCU1PVkVfVE9f V09SS1NQQUNFXzMsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV80LAorKwkJTU9WRV9UT19XT1JLU1BB Q0VfNSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzYsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV83LAor KwkJTU9WRV9UT19XT1JLU1BBQ0VfOCwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzksCisrCQlNT1ZF X1RPX1dPUktTUEFDRV8xMCwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzExLAorKwkJTU9WRV9UT19X T1JLU1BBQ0VfMTIsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9MRUZULAorKwkJTU9WRV9UT19XT1JL U1BBQ0VfUklHSFQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9VUCwKKysJCU1PVkVfVE9fV09SS1NQ QUNFX0RPV04sCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9MQVNULAorKwkJTU9WRV9UT19NT05JVE9S X0xFRlQsCisrCQlNT1ZFX1RPX01PTklUT1JfUklHSFQsCisrCQlNT1ZFX1RPX01PTklUT1JfVVAs CisrCQlNT1ZFX1RPX01PTklUT1JfRE9XTiwKKysJCVJBSVNFX09SX0xPV0VSLAorKwkJUkFJU0Us CisrCQlMT1dFUiwKKysJCU1BWElNSVpFX1ZFUlRJQ0FMTFksCisrCQlNQVhJTUlaRV9IT1JJWk9O VEFMTFksCisrCQlNT1ZFX1RPX0NPUk5FUl9OVywKKysJCU1PVkVfVE9fQ09STkVSX05FLAorKwkJ TU9WRV9UT19DT1JORVJfU1csCisrCQlNT1ZFX1RPX0NPUk5FUl9TRSwKKysJCU1PVkVfVE9fU0lE RV9OLAorKwkJTU9WRV9UT19TSURFX1MsCisrCQlNT1ZFX1RPX1NJREVfRSwKKysJCU1PVkVfVE9f U0lERV9XLAorKwkJTU9WRV9UT19DRU5URVIsCisrCQlPVkVSTEFZX0tFWSwKKysJCUxPQ0FURV9Q T0lOVEVSX0tFWSwKKysJCUlTT19ORVhUX0dST1VQLAorKwkJQUxXQVlTX09OX1RPUCwKKysJCVNX SVRDSF9NT05JVE9SLAorKwkJUk9UQVRFX01PTklUT1IsCisrCQlMQVNUCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0tFWV9C SU5ESU5HXyIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmluZGluZ19mbGFnc19nZXRfdHlwZSAoKSIp XQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEtleUJpbmRpbmdGbGFncyB7CisrCQlOT05FLAor KwkJUEVSX1dJTkRPVywKKysJCUJVSUxUSU4sCisrCQlJU19SRVZFUlNFRCwKKysJCU5PTl9NQVNL QUJMRSwKKysJCUlHTk9SRV9BVVRPUkVQRUFULAorKwkJTk9fQVVUT19HUkFCCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0xB VEVSXyIsIHR5cGVfaWQgPSAibWV0YV9sYXRlcl90eXBlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIExhdGVyVHlwZSB7CisrCQlSRVNJWkUsCisrCQlDQUxDX1NIT1dJTkcsCisrCQlDSEVD S19GVUxMU0NSRUVOLAorKwkJU1lOQ19TVEFDSywKKysJCUJFRk9SRV9SRURSQVcsCisrCQlJRExF CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZp eCA9ICJNRVRBX0xPQ0FMRV9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2xvY2FsZV9kaXJl Y3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTG9jYWxlRGlyZWN0aW9uIHsKKysJ CUxUUiwKKysJCVJUTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NQVhJTUlaRV8iLCB0eXBlX2lkID0gIm1ldGFfbWF4aW1p emVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBNYXhpbWl6 ZUZsYWdzIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTCwKKysJCUJPVEgKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFf TU9EQUxfIiwgdHlwZV9pZCA9ICJtZXRhX21vZGFsX29wdGlvbnNfZ2V0X3R5cGUgKCkiKV0KKysJ W0ZsYWdzXQorKwlwdWJsaWMgZW51bSBNb2RhbE9wdGlvbnMgeworKwkJUE9JTlRFUl9BTFJFQURZ X0dSQUJCRUQsCisrCQlLRVlCT0FSRF9BTFJFQURZX0dSQUJCRUQKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTU9OSVRPUl9T V0lUQ0hfQ09ORklHXyIsIHR5cGVfaWQgPSAibWV0YV9tb25pdG9yX3N3aXRjaF9jb25maWdfdHlw ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBNb25pdG9yU3dpdGNoQ29uZmlnVHlwZSB7 CisrCQlBTExfTUlSUk9SLAorKwkJQUxMX0xJTkVBUiwKKysJCUVYVEVSTkFMLAorKwkJQlVJTFRJ TiwKKysJCVVOS05PV04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTU9USU9OXyIsIHR5cGVfaWQgPSAibWV0YV9tb3Rpb25f ZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIE1vdGlvbkRpcmVjdGlvbiB7 CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJUklHSFQsCisrCQlVUF9MRUZULAorKwkJ VVBfUklHSFQsCisrCQlET1dOX0xFRlQsCisrCQlET1dOX1JJR0hUCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1BBRF9BQ1RJ T05fIiwgdHlwZV9pZCA9ICJtZXRhX3BhZF9hY3Rpb25fdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBQYWRBY3Rpb25UeXBlIHsKKysJCUJVVFRPTiwKKysJCVJJTkcsCisrCQlTVFJJ UAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjcHJl Zml4ID0gIk1FVEFfUFJFRl8iLCB0eXBlX2lkID0gIm1ldGFfcHJlZmVyZW5jZV9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgZW51bSBQcmVmZXJlbmNlIHsKKysJCU1PVVNFX0JVVFRPTl9NT0RTLAor KwkJRk9DVVNfTU9ERSwKKysJCUZPQ1VTX05FV19XSU5ET1dTLAorKwkJQVRUQUNIX01PREFMX0RJ QUxPR1MsCisrCQlSQUlTRV9PTl9DTElDSywKKysJCUFDVElPTl9ET1VCTEVfQ0xJQ0tfVElUTEVC QVIsCisrCQlBQ1RJT05fTUlERExFX0NMSUNLX1RJVExFQkFSLAorKwkJQUNUSU9OX1JJR0hUX0NM SUNLX1RJVExFQkFSLAorKwkJQVVUT19SQUlTRSwKKysJCUFVVE9fUkFJU0VfREVMQVksCisrCQlG T0NVU19DSEFOR0VfT05fUE9JTlRFUl9SRVNULAorKwkJVElUTEVCQVJfRk9OVCwKKysJCU5VTV9X T1JLU1BBQ0VTLAorKwkJRFlOQU1JQ19XT1JLU1BBQ0VTLAorKwkJS0VZQklORElOR1MsCisrCQlE SVNBQkxFX1dPUktBUk9VTkRTLAorKwkJQlVUVE9OX0xBWU9VVCwKKysJCVdPUktTUEFDRV9OQU1F UywKKysJCVZJU1VBTF9CRUxMLAorKwkJQVVESUJMRV9CRUxMLAorKwkJVklTVUFMX0JFTExfVFlQ RSwKKysJCUdOT01FX0FDQ0VTU0lCSUxJVFksCisrCQlHTk9NRV9BTklNQVRJT05TLAorKwkJQ1VS U09SX1RIRU1FLAorKwkJQ1VSU09SX1NJWkUsCisrCQlSRVNJWkVfV0lUSF9SSUdIVF9CVVRUT04s CisrCQlFREdFX1RJTElORywKKysJCUZPUkNFX0ZVTExTQ1JFRU4sCisrCQlXT1JLU1BBQ0VTX09O TFlfT05fUFJJTUFSWSwKKysJCURSQUdHQUJMRV9CT1JERVJfV0lEVEgsCisrCQlBVVRPX01BWElN SVpFLAorKwkJQ0VOVEVSX05FV19XSU5ET1dTLAorKwkJRFJBR19USFJFU0hPTEQsCisrCQlMT0NB VEVfUE9JTlRFUjsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBXyIsIHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBTZWxlY3Rpb25UeXBlIHsKKysJCVNFTEVDVElPTl9QUklNQVJZLAorKwkJU0VM RUNUSU9OX0NMSVBCT0FSRCwKKysJCVNFTEVDVElPTl9ETkQsCisrCQlOX1NFTEVDVElPTl9UWVBF UworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVm aXggPSAiTUVUQV9TSEFET1dfTU9ERV8iLCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X21vZGVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gU2hhZG93TW9kZSB7CisrCQlBVVRPLAorKwkJRk9S Q0VEX09GRiwKKysJCUZPUkNFRF9PTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9TSURFXyIsIHR5cGVfaWQgPSAibWV0YV9z aWRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNpZGUgeworKwkJTEVGVCwKKysJCVJJ R0hULAorKwkJVE9QLAorKwkJQk9UVE9NCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NJWkVfQ0hBTkdFXyIsIHR5cGVfaWQg PSAibWV0YV9zaXplX2NoYW5nZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTaXplQ2hh bmdlIHsKKysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJCUZVTExTQ1JFRU4sCisrCQlV TkZVTExTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfTEFZRVJfIiwgdHlwZV9pZCA9ICJtZXRhX3N0YWNrX2xheWVy X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFN0YWNrTGF5ZXIgeworKwkJREVTS1RPUCwK KysJCUJPVFRPTSwKKysJCU5PUk1BTCwKKysJCVRPUCwKKysJCURPQ0ssCisrCQlPVkVSUklERV9S RURJUkVDVCwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfVEFCX0xJU1RfIiwgdHlwZV9pZCA9ICJtZXRhX3Rh Yl9saXN0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFRhYkxpc3QgeworKwkJTk9STUFM LAorKwkJRE9DS1MsCisrCQlHUk9VUCwKKysJCU5PUk1BTF9BTEwKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfVEFCX1NIT1df IiwgdHlwZV9pZCA9ICJtZXRhX3RhYl9zaG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gVGFiU2hvd1R5cGUgeworKwkJSUNPTiwKKysJCUlOU1RBTlRMWQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9WSVJU VUFMXyIsIHR5cGVfaWQgPSAibWV0YV92aXJ0dWFsX21vZGlmaWVyX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJcHVibGljIGVudW0gVmlydHVhbE1vZGlmaWVyIHsKKysJCVNISUZUX01BU0ss CisrCQlDT05UUk9MX01BU0ssCisrCQlBTFRfTUFTSywKKysJCU1FVEFfTUFTSywKKysJCVNVUEVS X01BU0ssCisrCQlIWVBFUl9NQVNLLAorKwkJTU9EMl9NQVNLLAorKwkJTU9EM19NQVNLLAorKwkJ TU9ENF9NQVNLLAorKwkJTU9ENV9NQVNLCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV19DTElFTlRfVFlQRV8iLCB0 eXBlX2lkID0gIm1ldGFfd2luZG93X2NsaWVudF90eXBlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIFdpbmRvd0NsaWVudFR5cGUgeworKwkJV0FZTEFORCwKKysJCVgxMQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9X SU5ET1dfTUVOVV8iLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X21lbnVfdHlwZV9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgZW51bSBXaW5kb3dNZW51VHlwZSB7CisrCQlXTSwKKysJCUFQUAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV9XSU5ET1dfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd190eXBlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIFdpbmRvd1R5cGUgeworKwkJTk9STUFMLAorKwkJREVTS1RPUCwKKysJ CURPQ0ssCisrCQlESUFMT0csCisrCQlNT0RBTF9ESUFMT0csCisrCQlUT09MQkFSLAorKwkJTUVO VSwKKysJCVVUSUxJVFksCisrCQlTUExBU0hTQ1JFRU4sCisrCQlEUk9QRE9XTl9NRU5VLAorKwkJ UE9QVVBfTUVOVSwKKysJCVRPT0xUSVAsCisrCQlOT1RJRklDQVRJT04sCisrCQlDT01CTywKKysJ CURORCwKKysJCU9WRVJSSURFX09USEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0KKysJcHVibGljIGRlbGVnYXRl IHZvaWQgSWRsZU1vbml0b3JXYXRjaEZ1bmMgKE1ldGEuSWRsZU1vbml0b3IgbW9uaXRvciwgdWlu dCB3YXRjaF9pZCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGluc3RhbmNlX3BvcyA9IDQuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIEtleUhhbmRsZXJG dW5jIChNZXRhLkRpc3BsYXkgZGlzcGxheSwgTWV0YS5XaW5kb3cgd2luZG93LCBbQ0NvZGUgKHR5 cGUgPSAiQ2x1dHRlcktleUV2ZW50KiIpXSBDbHV0dGVyLktleUV2ZW50PyBldmVudCwgTWV0YS5L ZXlCaW5kaW5nIGJpbmRpbmcpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBQcmVm c0NoYW5nZWRGdW5jIChNZXRhLlByZWZlcmVuY2UgcHJlZik7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBk ZWxlZ2F0ZSBib29sIFdpbmRvd0ZvcmVhY2hGdW5jIChNZXRhLldpbmRvdyB3aW5kb3cpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0NV UlJFTlRfVElNRSIpXQorKwlwdWJsaWMgY29uc3QgaW50IENVUlJFTlRfVElNRTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9ERUZBVUxU X0lDT05fTkFNRSIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIERFRkFVTFRfSUNPTl9OQU1FOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRB X0lDT05fSEVJR0hUIildCisrCXB1YmxpYyBjb25zdCBpbnQgSUNPTl9IRUlHSFQ7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNPTl9X SURUSCIpXQorKwlwdWJsaWMgY29uc3QgaW50IElDT05fV0lEVEg7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUFKT1JfVkVSU0lPTiIp XQorKwlwdWJsaWMgY29uc3QgaW50IE1BSk9SX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlDUk9fVkVSU0lPTiIpXQor KwlwdWJsaWMgY29uc3QgaW50IE1JQ1JPX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOSV9JQ09OX0hFSUdIVCIpXQor KwlwdWJsaWMgY29uc3QgaW50IE1JTklfSUNPTl9IRUlHSFQ7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOSV9JQ09OX1dJRFRIIild CisrCXB1YmxpYyBjb25zdCBpbnQgTUlOSV9JQ09OX1dJRFRIOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JTk9SX1ZFUlNJT04iKV0K KysJcHVibGljIGNvbnN0IGludCBNSU5PUl9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BMVUdJTl9BUElfVkVSU0lPTiIp XQorKwlwdWJsaWMgY29uc3QgaW50IFBMVUdJTl9BUElfVkVSU0lPTjsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9CRUZP UkVfUkVEUkFXIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfQkVGT1JFX1JFRFJBVzsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVU QV9QUklPUklUWV9QUkVGU19OT1RJRlkiKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9Q UkVGU19OT1RJRlk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNuYW1lID0gIk1FVEFfUFJJT1JJVFlfUkVEUkFXIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJ T1JJVFlfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1JFU0laRSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBS SU9SSVRZX1JFU0laRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgY25hbWUgPSAiTUVUQV9WSVJUVUFMX0NPUkVfS0VZQk9BUkRfSUQiKV0KKysJcHVibGljIGNv bnN0IGludCBWSVJUVUFMX0NPUkVfS0VZQk9BUkRfSUQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfVklSVFVBTF9DT1JFX1BPSU5URVJf SUQiKV0KKysJcHVibGljIGNvbnN0IGludCBWSVJUVUFMX0NPUkVfUE9JTlRFUl9JRDsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMg Ym9vbCBhY3RpdmF0ZV9zZXNzaW9uICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGFkZF9jbHV0dGVyX2RlYnVnX2Zs YWdzIChDbHV0dGVyLkRlYnVnRmxhZyBkZWJ1Z19mbGFncywgQ2x1dHRlci5EcmF3RGVidWdGbGFn IGRyYXdfZmxhZ3MsIENsdXR0ZXIuUGlja0RlYnVnRmxhZyBwaWNrX2ZsYWdzKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9p ZCBleGl0IChNZXRhLkV4aXRDb2RlIGNvZGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBzdHJpbmcgZ191dGY4X3N0cm5kdXAg KHN0cmluZyBzcmMsIHNpemVfdCBuKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLk9wdGlvbkNvbnRleHQg Z2V0X29wdGlvbl9jb250ZXh0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9yZXBsYWNlX2N1cnJlbnRfd20g KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgaW5pdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19yZXN0YXJ0ICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2 b2lkIHF1aXQgKE1ldGEuRXhpdENvZGUgY29kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcmVnaXN0ZXJfd2l0aF9z ZXNzaW9uICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9jbHV0dGVyX2RlYnVnX2ZsYWdzIChDbHV0dGVy LkRlYnVnRmxhZyBkZWJ1Z19mbGFncywgQ2x1dHRlci5EcmF3RGVidWdGbGFnIGRyYXdfZmxhZ3Ms IENsdXR0ZXIuUGlja0RlYnVnRmxhZyBwaWNrX2ZsYWdzKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZXN0YXJ0IChz dHJpbmc/IG1lc3NhZ2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiKV0KKysJcHVibGljIHN0YXRpYyBpbnQgcnVuICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9nbm9tZV93 bV9rZXliaW5kaW5ncyAoc3RyaW5nIHdtX2tleWJpbmRpbmdzKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfd21f bmFtZSAoc3RyaW5nIHdtX25hbWUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHRlc3RfaW5pdCAoKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9v bCB4MTFfaW5pdF9nZGtfZGlzcGxheSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKyt9CitkaWZmIC0t Z2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhIGIvdmFwaS9tdXR0ZXItY2x1 dHRlci02LWN1c3RvbS52YWxhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAu Ljg5MjI0YmU2CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYtY3Vz dG9tLnZhbGEKK0BAIC0wLDAgKzEsMTQ3IEBACisrbmFtZXNwYWNlIENsdXR0ZXIgeworKworKyAg cHVibGljIHN0cnVjdCBNYXRyaXggOiBDb2dsLk1hdHJpeCB7CisrICB9CisrCisrICBwdWJsaWMg Y2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0IHsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVi bGljIHZpcnR1YWwgdm9pZCBhZGRfb3B0aW9ucyAoR0xpYi5PcHRpb25Hcm91cCBncm91cCk7Cisr ICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIGJvb2wgY3JlYXRlX2NvbnRleHQg KCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0 dWFsIHVub3duZWQgQ2x1dHRlci5TdGFnZVdpbmRvdyBjcmVhdGVfc3RhZ2UgKENsdXR0ZXIuU3Rh Z2Ugd3JhcHBlcikgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyB2aXJ0dWFsIHZvaWQgZW5zdXJlX2NvbnRleHQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOwor KyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBDbHV0dGVyLkZlYXR1cmVGbGFn cyBnZXRfZmVhdHVyZXMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFs IHZvaWQgaW5pdF9ldmVudHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0 dWFsIHZvaWQgaW5pdF9mZWF0dXJlcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGlj IHZpcnR1YWwgYm9vbCBwb3N0X3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9X cmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIHByZV9wYXJzZSAoKSB0aHJvd3MgR0xp Yi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCByZWRy YXcgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9nZXRf dHlwZSAoKSIpXQorKyAgcHVibGljIGNsYXNzIEJveCA6IENsdXR0ZXIuQWN0b3IgeworKyAgICBw dWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7IH0K KysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfQ09MT1IiLCBjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgc3RydWN0IENv bG9yIHsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21faGxzIildCisr ICAgIHB1YmxpYyBDb2xvci5mcm9tX2hscyAoZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZs b2F0IHNhdHVyYXRpb24pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJv bV9waXhlbCIpXQorKyAgICBwdWJsaWMgQ29sb3IuZnJvbV9waXhlbCAodWludDMyIHBpeGVsKTsK KysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrICAg IHB1YmxpYyBDb2xvci5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrICAgIFtDQ29kZSAoY25h bWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKyAgICBwdWJsaWMgYm9vbCBwYXJz ZV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgICBwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRl ci5Db2xvcj8gZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xvcik7CisrICB9Cisr CisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfY29udGFpbmVyX2dldF90eXBlICgpIildCisrICBwdWJsaWMgaW50ZXJm YWNlIENvbnRhaW5lciA6IEdMaWIuT2JqZWN0IHsKKysgICAgcHVibGljIHZvaWQgYWRkIChwYXJh bXMgQ2x1dHRlci5BY3RvcltdIGFjdG9ycyk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9jb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKyAgICBwdWJsaWMgY2xh c3MgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX2NoaWxkX3Byb3BlcnR5IChzdHJpbmcgcHJv cGVydHlfbmFtZSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJfY2xh c3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrICAgIHB1YmxpYyBjbGFzcyB1bm93bmVkIEdM aWIuUGFyYW1TcGVjW10gbGlzdF9jaGlsZF9wcm9wZXJ0aWVzICgpOworKyAgfQorKworKyAgW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlv biA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVf aWQgPSAiY2x1dHRlcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKyAgW0NvbXBhY3RdCisrICBwdWJs aWMgY2xhc3MgRXZlbnQgeworKyAgICBwdWJsaWMgQ2x1dHRlci5BbnlFdmVudCBhbnkgeyBbQ0Nv ZGUgKGNuYW1lID0gIihDbHV0dGVyQW55RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBD bHV0dGVyLkJ1dHRvbkV2ZW50IGJ1dHRvbiB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJCdXR0 b25FdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBj cm9zc2luZyB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJDcm9zc2luZ0V2ZW50ICopIildIGdl dDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5LZXlFdmVudCBrZXkgeyBbQ0NvZGUgKGNuYW1lID0g IihDbHV0dGVyS2V5RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLk1vdGlv bkV2ZW50IG1vdGlvbiB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJNb3Rpb25FdmVudCAqKSIp XSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuU2Nyb2xsRXZlbnQgc2Nyb2xsIHsgW0NDb2Rl IChjbmFtZSA9ICIoQ2x1dHRlclNjcm9sbEV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMg Q2x1dHRlci5TdGFnZVN0YXRlRXZlbnQgc3RhZ2Vfc3RhdGUgeyBbQ0NvZGUgKGNuYW1lID0gIihD bHV0dGVyU3RhZ2VTdGF0ZUV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5U b3VjaEV2ZW50IHRvdWNoIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNoRXZlbnQgKiki KV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNocGFkUGluY2hFdmVudCB0b3VjaHBh ZF9waW5jaCB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFBpbmNoRXZlbnQgKiki KV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNocGFkU3dpcGVFdmVudCB0b3VjaHBh ZF9zd2lwZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFN3aXBlRXZlbnQgKiki KV0gZ2V0OyB9CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV9n ZXRfdHlwZSAoKSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysg IHB1YmxpYyBjbGFzcyBTdGFnZSA6IENsdXR0ZXIuR3JvdXAgeworKyAgICBbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfcmVkcmF3IildCisrICAgIHB1YmxpYyB2b2lkIHJlZHJhdyAoKTsKKysgIH0K KysKKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KyAgcHVibGljIGludGVyZmFjZSBTdGFnZVdpbmRvdyA6IEdMaWIuT2JqZWN0IHsKKysgICAgW05v V3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGludCBnZXRfcGVuZGluZ19zd2FwcyAoKTsK KysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHVub3duZWQgQ2x1dHRlci5B Y3RvciBnZXRfd3JhcHBlciAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3Ry YWN0IGJvb2wgaGFzX3JlZHJhd19jbGlwcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVi bGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGlj IGFic3RyYWN0IGJvb2wgaWdub3JpbmdfcmVkcmF3X2NsaXBzICgpOworKyAgICBbTm9XcmFwcGVy XQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCByZWFsaXplICgpOworKyAgICBbTm9XcmFwcGVy XQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZXNpemUgKGludCB3aWR0aCwgaW50IGhlaWdo dCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9jdXJz b3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAg IHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9mdWxsc2NyZWVuIChib29sIGlzX2Z1bGxzY3JlZW4p OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdGl0bGUg KHN0cmluZyB0aXRsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2 b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAoYm9vbCBpc19yZXNpemFibGUpOworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93IChib29sIGRvX3JhaXNlKTsKKysg ICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgdW5yZWFsaXplICgpOwor KyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlwZSAo KSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBj bGFzcyBUZXh0dXJlIDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1YmxpYyBDb2dsLk1hdGVyaWFs IGNvZ2xfbWF0ZXJpYWwgeyBnZXQ7IHNldDsgfQorKyAgICBwdWJsaWMgQ29nbC5UZXh0dXJlIGNv Z2xfdGV4dHVyZSB7IGdldDsgc2V0OyB9CisrICB9CisrCisrICBbQ29tcGFjdF0KKysgIFtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNs YXNzIFRpbWVvdXRQb29sIHsKKysgICAgW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKyAgICBwdWJsaWMgVGltZW91dFBvb2wgKGludCBwcmlvcml0eSk7CisrICB9Cisr CisrICBbQ0NvZGUgKGNwcmVmaXggPSAiQ0xVVFRFUl9GRUFUVVJFXyIsIGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIFtGbGFnc10KKysgIHB1YmxpYyBlbnVtIEZl YXR1cmVGbGFncyB7CisrICAgIFRFWFRVUkVfTlBPVDsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX2ZlYXR1cmVfYXZhaWxhYmxlIildCisrICAgIHB1YmxpYyBib29sIGlzX2F2YWlsYWJs ZSAoKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfZ2V0X2FsbCIpXQor KyAgICBwdWJsaWMgc3RhdGljIENsdXR0ZXIuRmVhdHVyZUZsYWdzIEBnZXQgKCk7CisrICB9Cisr CisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIiwgY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIHN0cnVjdCBVbml0cyB7Cisr ICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2NtIildCisrICAgIHB1Ymxp YyBVbml0cy5mcm9tX2NtIChmbG9hdCBjbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl91bml0c19mcm9tX2VtIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2VtIChmbG9hdCBlbSk7 CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtX2Zvcl9mb250Iild CisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2VtX2Zvcl9mb250IChzdHJpbmcgZm9udF9uYW1lLCBm bG9hdCBlbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX21tIild CisrICAgIHB1YmxpYyBVbml0cy5mcm9tX21tIChmbG9hdCBtbSk7CisrICAgIFtDQ29kZSAoY25h bWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3BpeGVscyIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJv bV9waXhlbHMgKGludCBweCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19m cm9tX3B0IildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3B0IChmbG9hdCBwdCk7CisrICAgIFtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3N0cmluZyIpXQorKyAgICBwdWJsaWMg VW5pdHMuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgfQorK30KK2RpZmYgLS1naXQgYS92 YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzCitu ZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjdhNzBkNmRmCistLS0gL2Rldi9u dWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw0IEBACisr YXRrCisrY2Fpcm8KKytqc29uLWdsaWItMS4wCisrbXV0dGVyLWNvZ2wtNgorZGlmZiAtLWdpdCBh L3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkK K25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uZDY2ZjlhYzgKKy0tLSAvZGV2 L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpCitAQCAtMCwwICsxLDg2ODcg QEAKKysvKiBtdXR0ZXItY2x1dHRlci02LnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5v dCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJlZml4ID0gIkNsdXR0ZXIiLCBnaXJfbmFtZXNw YWNlID0gIkNsdXR0ZXIiLCBnaXJfdmVyc2lvbiA9ICI2IiwgbG93ZXJfY2FzZV9jcHJlZml4ID0g ImNsdXR0ZXJfIildCisrbmFtZXNwYWNlIENsdXR0ZXIgeworKwluYW1lc3BhY2UgS2V5IHsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8yIildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEAzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BbHRDdXJzb3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX0FsdEN1cnNvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQXR0biIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQXR0bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBf QmFja1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQmFja1RhYjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfQ2hhbmdlU2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9D aGFuZ2VTY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0NvcHkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEAzMjcwX0NvcHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0N1cnNvckJsaW5rIildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9DdXJzb3JCbGluazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMy NzBfQ3Vyc29yU2VsZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9DdXJzb3JTZWxl Y3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0RlbGV0ZVdvcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEAzMjcwX0RlbGV0ZVdvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0R1cGxpY2F0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRHVwbGljYXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3 MF9FbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRW50ZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV8zMjcwX0VyYXNlRU9GIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FcmFzZUVP RjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXJhc2VJbnB1dCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfRXJhc2VJbnB1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXhTZWxlY3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0V4U2VsZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9G aWVsZE1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0ZpZWxkTWFyazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfSWRlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0lkZW50 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9KdW1wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9KdW1wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9LZXlDbGljayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfS2V5Q2xpY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0xlZnQyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBAMzI3MF9MZWZ0MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEExIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QQTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BB MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEEyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3 MF9QQTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BBMzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ XzMyNzBfUGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUGxheTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfUHJpbnRTY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1By aW50U2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9RdWl0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMzI3MF9RdWl0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SZWNvcmQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX1JlY29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUmVzZXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Jlc2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9S aWdodDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1JpZ2h0MjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzMyNzBfUnVsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUnVsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfU2V0dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1NldHVw OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9UZXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9UZXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV81IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV84IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEA5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWFjdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYmVsb3dkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FicmV2ZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmVhY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FicmV2ZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJl dmViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWdyYXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBYnJldmVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWhvb2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFicmV2ZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmV0aWxkZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2Nl c3NYX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNjZXNzWF9FbmFibGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BY2Nlc3NYX0ZlZWRiYWNrX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQWNjZXNzWF9GZWVkYmFja19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2ly Y3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4Z3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4aG9v azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZGRGYXZvcml0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQWRkRmF2b3JpdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZGlhZXJlc2lz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWdy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BaG9v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbHRfTCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWx0X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbHRfUiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQWx0X1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbWFjcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQW9nb25layIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FwcGxpY2F0aW9u TGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXBwbGljYXRpb25MZWZ0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXBwbGljYXRpb25SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXBwbGljYXRp b25SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18wIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18xIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18yIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18zIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY180IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY181IildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY182IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY183Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY184 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y185IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfOTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19haW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19haW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FsZWY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfYWxlZm1ha3N1cmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19hbGVmbWFrc3VyYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19iZWgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19iZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfY29tbWEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19jb21tYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19kYWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYWQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfZGFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFsOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2RhbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf ZGFtbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFtbWF0YW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19kYW1tYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kZGFsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGRhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19m YXJzaV95ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mYXJzaV95ZWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfZmF0aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19m YXRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mYXRoYXRhbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2ZhdGhhdGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZlaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mdWxs c3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2Z1bGxzdG9wOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX2dhZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2dhZjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19naGFpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X2doYWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfaGFoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFt emFfYWJvdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YV9hYm92ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9iZWxvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX2hhbXphX2JlbG93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphb25hbGVmIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbmFsZWY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfaGFtemFvbndhdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXph b253YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbnllaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2hhbXphb255ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemF1 bmRlcmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YXVuZGVyYWxlZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19oZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19oZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoX2RvYWNoYXNobWVlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfaGVoX2RvYWNoYXNobWVlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX2hlaF9nb2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGVoX2dvYWw7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfamVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X2plZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfamVoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfamVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2thZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2thZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rYXNyYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2thc3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2th c3JhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2FzcmF0YW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfa2VoZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rZWhl aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19raGFoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfa2hhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19sYW0iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19sYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbWFkZGFfYWJvdmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19tYWRkYV9hYm92ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19tYWRkYW9uYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX21hZGRh b25hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21lZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19tZWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX25vb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19ub29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX25vb25fZ2h1 bm5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbm9vbl9naHVubmE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfcGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcGVoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX3BlcmNlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19wZXJjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3FhZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX3FhZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19xdWVzdGlvbl9tYXJr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcXVlc3Rpb25fbWFyazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY19yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3JyZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19y cmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NhZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX3NhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zZWVuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfc2VlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zZW1pY29sb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zZW1pY29sb247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfc2hhZGRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2hhZGRhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3NoZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf c2hlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc3VrdW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19zdWt1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zdXBlcnNjcmlwdF9hbGVm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc3VwZXJzY3JpcHRfYWxlZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19z d2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGFoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfdGFoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RhdHdlZWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY190YXR3ZWVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RjaGVo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGNoZWg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfdGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGVoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX3RlaG1hcmJ1dGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190 ZWhtYXJidXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RoYWwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY190aGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RoZWgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY190aGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3R0ZWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190dGVoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX3ZlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3ZlaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY193YXc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfeWVo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3llaF9iYXJlZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3llaF9iYXJlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY196YWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfemFpbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3phaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcmlu ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9BVCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQVQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9BWUIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0FZQjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX0JFTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fQkVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fQ0hBIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9DSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9EQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9EWkEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0RaQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9GRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRkU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9HSEFUIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9HSEFUOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fR0lNIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9HSU07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9ISSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9I TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSE87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9JTkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0lOSTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9K RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0tFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9LRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0tFTiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fS0VOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fS0hFIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9LSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9MWVVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9MWVVOOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fTUVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9NRU47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9OVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9PIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUEUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX1BFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUFlVUiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUFlVUjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9SQTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX1JFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9SRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1NFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9TRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1NIQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fU0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVENIRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVENIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X1RPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UTzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX1RTQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVFNBOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fVFNPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9UU087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UWVVOIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9UWVVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVkVWIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WRVY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9W TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVk87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9WWVVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WWVVOOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fWUVDSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fWUVDSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1pBIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9aQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1pIRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYWNj ZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9hY2NlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9hbWFuYWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2Ft YW5hazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2Fwb3N0cm9waGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2Fwb3N0cm9waGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9h dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9heWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2F5YjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX2JlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f YmVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYnV0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9idXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9jaGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2RhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9kYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX2R6YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZHphOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX2V4Y2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fZXhjbGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZnVsbF9zdG9w IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9mdWxsX3N0b3A7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9naGF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9naGF0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZ2ltIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9naW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9oaSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5faGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9obyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9o eXBoZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2h5cGhlbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX2luaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faW5p OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fa2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fa2VuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9rZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9r aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2toZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX2xpZ2F0dXJlX2V3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9s aWdhdHVyZV9ldzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2x5dW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2x5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9tZW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX21lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9udTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX287CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9wYXJ1eWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX3BhcnV5azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3BlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9wZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3B5dXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3B5dXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9xdWVzdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcXVlc3Rpb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9yZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fc2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zZXBhcmF0 aW9uX21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3NlcGFyYXRpb25fbWFy azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fc2hlc2h0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9zaGVzaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90 Y2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90Y2hlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fdG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fdHNhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl90c2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90c28iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3RzbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3R5dW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3R5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92 ZXJqYWtldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmVyamFrZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl92ZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X3ZldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3ZvIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl92bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Z5dW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX3Z5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl95ZWNo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl95ZWNoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5feWVudGFtbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3llbnRh bW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5femEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3phOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5femhlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl96aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdGlsZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEF0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlibGVCZWxsX0VuYWJs ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaWJsZUJlbGxfRW5hYmxlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9DeWNsZVRyYWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb0N5Y2xl VHJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0ZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEF1ZGlvRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTG93ZXJWb2x1bWUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTG93ZXJWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRp b01lZGlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb01lZGlhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXVkaW9NaWNNdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb01pY011dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BdWRpb011dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTXV0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVk aW9OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QYXVzZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXVkaW9QYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUGxheSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXVkaW9QbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QcmV2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBdWRpb1ByZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JhaXNlVm9sdW1l IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JhaXNlVm9sdW1lOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXVkaW9SYW5kb21QbGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JhbmRvbVBs YXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JlY29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXVkaW9SZWNvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JlcGVhdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXVkaW9SZXBlYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1Jld2luZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXVkaW9SZXdpbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1N0b3Ai KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvU3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F3YXki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF3YXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CIildCisrCQlw dWJsaWMgY29uc3QgdWludCBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBCYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBCYWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFja0ZvcndhcmQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEJhY2tGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFja1NwYWNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBCYWNrU3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYXR0ZXJ5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYXR0ZXJ5OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmVnaW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJlZ2luOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmx1ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQmx1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JsdWV0b290aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQmx1ZXRvb3RoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQm9vayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQm9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JvdW5jZUtleXNfRW5h YmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCb3VuY2VLZXlzX0VuYWJsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0JyZWFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCcmVhazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0JyaWdodG5lc3NBZGp1c3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJyaWdodG5lc3NB ZGp1c3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5fU0hPUlRVIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBCeWVsb3J1c3NpYW5fU0hPUlRVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnllbG9ydXNz aWFuX3Nob3J0dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnllbG9ydXNzaWFuX3Nob3J0dTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DRCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ0Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DSCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DX0giKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IENfSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NfaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ19oOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBDYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IENhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbGN1bGF0b3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IENhbGN1bGF0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWxlbmRhciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ2FsZW5kYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYW5jZWwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IENhbmNlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhcHNfTG9jayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ2Fwc19Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Nhcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2VkaWxsYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DbGVhciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2xlYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DbGVhckdyYWIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENsZWFyR3JhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Nsb3Nl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDbG9zZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvZGVpbnB1 dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29kZWlucHV0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29s b25TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb2xvblNpZ247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Db21tdW5pdHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbW11bml0eTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0NvbnRyYXN0QWRqdXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cmFzdEFk anVzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyb2xfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q29udHJvbF9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJvbF9SIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDb250cm9sX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db3B5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDb3B5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3J1emVpcm9TaWduIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDcnV6ZWlyb1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DdXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5Y2xlQW5nbGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5Y2xlQW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19BIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQkUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0JFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfQ0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19DSEU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19DSEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19DSEVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQ0hFX3ZlcnRz dHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRV92ZXJ0c3Ryb2tlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfREUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0RFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRFpIRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfRFpIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FRiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRUY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19FTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRUw7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19FTSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRU07Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfRU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTl9kZXNjZW5kZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0VOX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0VSIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FUjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0VTIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FUzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0dIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfR0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfR0hFX2JhciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfR0hFX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0hBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0hBUkRTSUdOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQVJEU0lHTjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0hBX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfSEFfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0lFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JTzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0lfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19JX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0pFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0tBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0tBX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0FfZGVz Y2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0FfdmVydHN0cm9rZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0FfdmVydHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0xKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfTEpFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfTkpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19O SkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfT19iYXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX09fYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfUEUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1BFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfU0NIV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NDSFdBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfU0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19T SEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSENIQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfU0hDSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSEhBIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSEhBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf U0hPUlRJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSE9SVEk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19TT0ZUU0lHTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfU09GVFNJR047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19URSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfVEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19UU0UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1RTRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19VX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9tYWNy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFpZ2h0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19VX3N0cmFpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVV9z dHJhaWdodF9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1Vfc3RyYWlnaHRf YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX1ZFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWUEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWUVSVSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWUVSVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19ZVTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX1pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aRTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX1pIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkhFX2Rlc2NlbmRlciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWkhFX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2E7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19iZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfYmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19jaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX2NoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2NoZV9kZXNjZW5kZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2NoZV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19jaGVfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf Y2hlX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19kZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19kemhlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19kemhlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX2VmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lZjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VtIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19lbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VuX2Rlc2Nl bmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW5fZGVzY2VuZGVyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2VzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZ2hlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19naGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19naGVfYmFy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19naGVfYmFyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfaGFfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19oYV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYXJkc2ln biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGFyZHNpZ247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfaV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2lfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaW8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2lvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2plOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfa2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfa2FfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19rYV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYV92ZXJ0 c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19rYV92ZXJ0c3Ryb2tlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbGplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19samU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19uamUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX25qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX28iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19vX2Jh ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfb19iYXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19wZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfcGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zaGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NoY2hhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zaGNoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX3NoaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NoaGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19zaG9ydGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3Nob3J0aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NvZnRzaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19zb2Z0c2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Rl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY190ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3RzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdHNlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3VfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY191X21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Vfc3RyYWlnaHQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3Vfc3RyYWlnaHQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY191X3N0cmFpZ2h0X2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfdV9zdHJhaWdodF9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY192ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY195 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeWE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY195ZXJ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY195ZXJ1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfeXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfemUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX3plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfemhlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY196aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY196aGVfZGVz Y2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY196aGVfZGVzY2VuZGVyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0RPUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRE9TOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGFi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBEYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9EY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERjYXJvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0RlbGV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGVsZXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RGlzcGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGlzcGxheTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0RvY3VtZW50cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRG9jdW1lbnRzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRG9uZ1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERvbmdTaWduOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRG93bjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0RzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERzdHJva2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRU5HIild CisrCQlwdWJsaWMgY29uc3QgdWludCBFTkc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FVEgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEVUSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VaSCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRVpIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWFib3ZlZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBFYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ViZWxvd2RvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNhcm9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBFY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxl eGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNp cmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4Z3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2ly Y3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4aG9vazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVj aXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY3VTaWduIildCisrCQlwdWJsaWMgY29u c3QgdWludCBFY3VTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWRpYWVyZXNpcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWhvb2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWlzdV9TaGlmdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRWlzdV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vpc3VfdG9nZ2xlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBFaXN1X3RvZ2dsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VqZWN0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFamVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VtYWNyb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FbmQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEVuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VvZ29uZWsiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Fc2NhcGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVzY2FwZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V0aCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXRpbGRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FdXJvU2lnbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRXVyb1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FeGNlbCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRXhjZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FeGVjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFeGVjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXhwbG9yZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEV4cGxvcmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG MTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0YxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Yx MyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEYxNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRjE2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBG MTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GMTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YxOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE5OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEYyMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRjIyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYy NDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0YyNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjI2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GMjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyNzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Yy OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI5IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGMjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEYzMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMx OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRjMyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GMzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0YzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjM1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GRnJhbmNT aWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGRnJhbmNTaWduOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GYXJzaV8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8wOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRmFyc2lfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0ZhcnNpXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GYXJzaV8zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8zOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRmFyc2lfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0ZhcnNpXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GYXJzaV82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV82OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRmFyc2lfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0ZhcnNpXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GYXJzaV85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV85Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRmFyc2lfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV95 ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GYXZvcml0ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZh dm9yaXRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZpbmFuY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEZpbmFuY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG aW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRmlyc3RfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEZpcnN0X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRm9yd2FyZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZyYW1lQmFj ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRnJhbWVCYWNrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRnJh bWVGb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGcmFtZUZvcndhcmQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Fi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HYW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYW1lOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Jy ZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HY2Fy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djZWRp bGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dj aXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2lyY3VtZmxleDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dlb3JnaWFuX2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9hbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2JhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vv cmdpYW5fYmFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2FuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHZW9yZ2lhbl9jYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaGFyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5fY2hpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2hpbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dlb3JnaWFuX2NpbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2ls OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH ZW9yZ2lhbl9kb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9lbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9maSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9n YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2dhbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dlb3JnaWFuX2doYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2doYW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX2hhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hhciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5faGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGll IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oaWU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H ZW9yZ2lhbl9ob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hvZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2luIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9p bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2poYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX2poYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9qaWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdlb3JnaWFuX2ppbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2thbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fa2FuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5fa2hhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fa2hhcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2xhcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f bGFzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fbWFuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl9tYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9uYXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdlb3JnaWFuX25hcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX29uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9vbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX3BhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcGFyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5fcGhhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcGhh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3FhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5fcWFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcmFlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHZW9yZ2lhbl9yYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9zYW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3NhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX3NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3NoaW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl90YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3Rh bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3RhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5fdGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX3VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdmluIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl92aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lh bl93ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fd2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl94YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3hhbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX3plbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vvcmdp YW5femVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5femhhciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5femhhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dvIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0FMUEhBIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19BTFBIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0FMUEhBYWNjZW50Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19BTFBIQWFjY2VudDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX0JFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0JFVEE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19DSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0NISTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX0RFTFRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19E RUxUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VQU0lMT04iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX0VQU0lMT047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FUFNJTE9OYWNjZW50Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19FUFNJTE9OYWNjZW50OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19FVEE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19FVEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VU QWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0dBTU1BIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19HQU1NQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX0lPVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBYWNjZW50 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBYWNjZW50OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfSU9UQWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9U QWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFkaWVyZXNpcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQWRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf S0FQUEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0tBUFBBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfTEFNQkRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1CREE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19MQU1EQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf TEFNREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19NVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfTVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19OVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUVHQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfT01FR0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUVHQWFjY2VudCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01FR0FhY2NlbnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19PTUlDUk9OIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUlDUk9OOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01JQ1JPTmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfT01JQ1JPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1BISSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUEhJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUEkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1BJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUFNJ IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19QU0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19SSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1JITzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX1NJR01BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19TSUdNQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX1RBVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEFVOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfVEhFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X1RIRVRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfVVBTSUxPTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT05hY2NlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1VQU0lMT05hY2NlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19VUFNJTE9OZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X1VQU0lMT05kaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1hJIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19YSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1pFVEEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX1pFVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hY2NlbnRk aWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYWNjZW50ZGllcmVzaXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19hbHBoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf YWxwaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hbHBoYWFjY2VudCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfYWxwaGFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19iZXRhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19iZXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf Y2hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19jaGk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19kZWx0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZGVsdGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19lcHNpbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19lcHNp bG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXBzaWxvbmFjY2VudCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfZXBzaWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2V0YSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf ZXRhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19ldGFhY2NlbnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19maW5hbHNtYWxsc2lnbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX2ZpbmFsc21hbGxzaWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2dhbW1hIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19nYW1tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2hv cml6YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19ob3JpemJhcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX2lvdGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19pb3RhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWFjY2VudGRpZXJlc2lz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19pb3RhYWNjZW50ZGllcmVzaXM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19pb3RhZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX2lvdGFkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2thcHBhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19rYXBwYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2xhbWJkYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbGFtYmRhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfbGFtZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2xhbWRhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfbXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX211OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX251OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfb21lZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29t ZWdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21lZ2FhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX29tZWdhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21pY3JvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX29taWNyb25hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29taWNyb25h Y2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19waGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX3BoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3BpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19waTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3BzaSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfcHNpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcmhvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19yaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19zaWdtYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfc2lnbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19z d2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3N3aXRjaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX3RhdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGF1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfdGhldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3RoZXRh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfdXBzaWxvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25hY2NlbnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb25hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla191cHNpbG9uYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X3Vwc2lsb25hY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25kaWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmRpZXJlc2lzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfeGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3hpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfemV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf emV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9BRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0FFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FyYWVBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfQXJhZUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQXJhZUFFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfQXJhZUFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0JhbmphIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQmFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Q2lldWMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9DaWV1YzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9Db2RlaW5wdXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Db2Rl aW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VPIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRVUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9F bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FbmQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9IYW5qYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0hp ZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0lldW5nIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9DaWV1YyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfQ2lldWM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0Rpa2V1ZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9KX0hpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf Sl9IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0lldW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSl9JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0ppZXVqIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9KX0toaWV1cSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2hpZXVxOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfSl9LaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9LaXllb2dTaW9zIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaXllb2dTaW9zOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfS2tvZ2ppRGFscmluSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX0trb2dqaURhbHJpbklldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTWlldW0iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX01pZXVtOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0pfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX05pZXVuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfTmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX05pZXVuSmlldWoi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX05pZXVuSmlldWo7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfSl9QYW5TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Q YW5TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUGhpZXVmIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSl9QaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QaWV1YiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSl9QaWV1YlNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BpZXVi U2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfSl9SaWV1bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsSGlldWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsSGlldWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfSl9SaWV1bEtpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0pfUmlldWxLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bE1pZXVtIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bE1pZXVtOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfUmlldWxQaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Jp ZXVsUGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxQaWV1YiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KX1JpZXVsU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxTaW9z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxUaWV1dCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfUmlldWxUaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1Npb3Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSl9Tc2FuZ0tpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfU3Nh bmdLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9Tc2FuZ1Npb3MiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9KX1NzYW5nU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9K X1RpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9UaWV1dDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9KX1llb3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9ZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KYW1vIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSmFtbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KZW9uamEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KZW9uamE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KaWV1ajsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9LaGlldXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9L aGlldXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0tpeWVvZ1Npb3MiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9LaXllb2dTaW9zOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0trb2dqaURhbHJpbklldW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf S2tvZ2ppRGFscmluSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTWlldW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9NaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9NdWx0 aXBsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX011bHRpcGxlQ2Fu ZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX05pZXVuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfTmlldW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTmlldW5IaWV1aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVuSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfTmlldW5KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVuSmll dWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfT0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9PRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QYW5TaW9zIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfUGFuU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaGlldWYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QaWV1YjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9QaWV1YlNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9QaWV1YlNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUG9zdEhhbmphIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfUG9zdEhhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1By ZUhhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUHJlSGFuamE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfUHJldmlvdXNDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9QcmV2aW91c0NhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX1JpZXVsSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bEhpZXVo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfUmlldWxLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxNaWV1 bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsTWlldW07CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfUmlldWxQaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9S aWV1bFBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFBpZXViIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9S aWV1bFNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFNpb3M7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfUmlldWxUaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1JpZXVsVGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxZZW9yaW5IaWV1aCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsWWVvcmluSGlldWg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfUm9tYWphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUm9t YWphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NpbmdsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1NpbmdsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU2lvczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9TcGVjaWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3BlY2lh bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ0Rpa2V1ZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1NzYW5nRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5nSmll dWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0ppZXVqOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX1NzYW5nS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf U3NhbmdLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdQaWV1YiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf U3NhbmdTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdTaW9zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX1N0YXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf U3RhcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25nZXVtTWlldW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1NaWV1bTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9TdW5reWVvbmdldW1QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9TdW5reWVvbmdldW1QaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25nZXVt UGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1QaWV1YjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9UaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1RpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dBIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0FFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfV0FFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dFIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0VP IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0VPOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX1dJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0k7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfWUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZQTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9ZQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZQUU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Z RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9ZRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZTyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1lPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lVIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWWVvcmluSGll dWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZZW9yaW5IaWV1aDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9zd2l0 Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5rYWt1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5r YWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVicmV3X3N3aXRjaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGVicmV3X3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlbHAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhlbHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IZW5rYW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhlbmthbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlbmthbl9Nb2RlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIZW5rYW5fTW9kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hpYmVybmF0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGliZXJuYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGlyYWdh bmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpcmFnYW5hOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGly YWdhbmFfS2F0YWthbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpcmFnYW5hX0thdGFrYW5h OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGlzdG9yeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGlzdG9y eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhvbWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Ib21lUGFnZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZVBhZ2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Ib3RMaW5rcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG90TGlu a3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Ic3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIc3Ry b2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSHlwZXJfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHlw ZXJfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0h5cGVyX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEh5 cGVyX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX0NlbnRlcl9PYmplY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19DZW50ZXJfT2JqZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0NvbnRpbnVvdXNfVW5kZXJsaW5l IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fQ29udGludW91c19VbmRlcmxpbmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fRGlzY29udGludW91c19VbmRlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19EaXNjb250aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19F bXBoYXNpemUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19FbXBoYXNpemU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19FbnRlcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fRmFzdF9DdXJzb3JfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9M ZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfTGVmdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SVNPX0Zhc3RfQ3Vyc29yX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX1Vw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfVXA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fRmlyc3RfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GaXJzdF9H cm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GaXJzdF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fRmlyc3RfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Hcm91 cF9MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xhdGNoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSVNPX0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Hcm91 cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX1NoaWZ0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fR3JvdXBfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGFzdF9Hcm91cCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xhc3RfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fTGFzdF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGFzdF9Hcm91 cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xlZnRfVGFiIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fTGVmdF9UYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwyX0xhdGNoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwyX0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X0xldmVsM19MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19MYXRjaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDNfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SVNPX0xldmVsM19Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsM19TaGlmdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19M ZXZlbDVfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfTGF0Y2g7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWw1X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19MZXZlbDVfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDVfU2hpZnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTG9j ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TW92ZV9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Nb3ZlX0xpbmVfRG93 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3ZlX0xpbmVfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElTT19Nb3ZlX0xpbmVfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTmV4dF9Hcm91cCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX05leHRfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TmV4dF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTmV4dF9Hcm91cF9M b2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfTGluZV9Eb3duIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fUGFydGlhbF9MaW5lX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUGFy dGlhbF9MaW5lX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9MaW5lX1Vw OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfU3BhY2VfTGVmdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX1BhcnRpYWxfU3BhY2VfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0 aWFsX1NwYWNlX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9TcGFj ZV9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QcmV2X0dyb3VwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fUHJldl9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QcmV2X0dyb3VwX0xv Y2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QcmV2X0dyb3VwX0xvY2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fUmVsZWFzZV9Cb3RoX01hcmdpbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19SZWxlYXNlX0JvdGhfTWFyZ2luczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNlX01h cmdpbl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUmVsZWFzZV9NYXJnaW5fTGVm dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNlX01hcmdpbl9SaWdodCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX1JlbGVhc2VfTWFyZ2luX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X1NldF9NYXJnaW5fTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1NldF9NYXJnaW5f TGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19TZXRfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fU2V0X01hcmdpbl9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lhYm92ZWRv dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0licmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWJyZXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEljaXJjdW1mbGV4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWRpYWVyZXNpczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWdyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElob29rOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW1hY3JvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0luc2VydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW5zZXJ0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW9nb25lazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSXRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0pjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBKY2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEs7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9L UF8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8wOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8zIildCisrCQlwdWJs aWMgY29uc3QgdWludCBLUF8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LUF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF85OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfQWRkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9BZGQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9LUF9CZWdpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfQmVnaW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF9EZWNpbWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9EZWNpbWFsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfRGVsZXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9EZWxl dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9EaXZpZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X0RpdmlkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0VudGVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0VxdWFsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF9FcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YxIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF9GMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9GMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9GMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Y0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9G NDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0tQX0hvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0hv bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9JbnNlcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X0luc2VydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9NdWx0aXBseSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfTXVsdGlwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9OZXh0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF9OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfUGFnZV9Eb3duIildCisrCQlw dWJsaWMgY29uc3QgdWludCBLUF9QYWdlX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QYWdlX1Vw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9QYWdlX1VwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf UHJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1ByaW9yOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1JpZ2h0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfU2VwYXJhdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TZXBhcmF0b3I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9LUF9TcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfU3BhY2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF9TdWJ0cmFjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf U3VidHJhY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX1RhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmFfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S2FuYV9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuYV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS2FuYV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmppIildCisrCQlwdWJsaWMgY29u c3QgdWludCBLYW5qaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmppX0JhbmdvdSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS2FuamlfQmFuZ291OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2F0YWthbmEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEthdGFrYW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkQnJpZ2h0bmVz c0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdodG5lc3NEb3duOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS2JkQnJpZ2h0bmVzc1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRCcmln aHRuZXNzVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRMaWdodE9uT2ZmIildCisrCQlwdWJsaWMgY29u c3QgdWludCBLYmRMaWdodE9uT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2NlZGlsbGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS29yZWFuX1dvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS29yZWFuX1dvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEwxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0wyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0wzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0w0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBMNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBMNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0w5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMOTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTGFzdF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGFzdF9W aXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IExhdW5jaDA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gxIildCisrCQlwdWJsaWMgY29u c3QgdWludCBMYXVuY2gxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGF1bmNoMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IExhdW5jaDM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMYXVuY2g0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTGF1bmNoNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IExhdW5jaDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBMYXVuY2g3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoOCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTGF1bmNoODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IExhdW5jaDk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hBIildCisrCQlw dWJsaWMgY29uc3QgdWludCBMYXVuY2hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTGF1bmNoQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hEIildCisr CQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hEOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYmVsb3dkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xjYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNlZGls bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGVm dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xpZ2h0QnVs YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGlnaHRCdWxiOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGlu ZWZlZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpbmVmZWVkOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TGlyYVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpcmFTaWduOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTG9nR3JhYkluZm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ0dyYWJJbmZvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTG9nT2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dPZmY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Mb2dXaW5kb3dUcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dXaW5k b3dUcmVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg THN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX00iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE07Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9NYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9EU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE1hY2Vkb25pYV9EU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfR0pFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNYWNlZG9uaWFfR0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX0tK RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0tKRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X01hY2Vkb25pYV9kc2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9kc2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfZ2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNl ZG9uaWFfZ2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2tqZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTWFjZWRvbmlhX2tqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hZV9Lb2hvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNYWVfS29obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01haWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE1haWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWlsRm9yd2FyZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTWFpbEZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYXJrZXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE1hcmtldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hc3N5byIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTWFzc3lvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVldGluZyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTWVldGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbW8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE1lbW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51IildCisrCQlwdWJs aWMgY29uc3QgdWludCBNZW51OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVudUtCIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBNZW51S0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51UEIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1lbnVQQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lc3NlbmdlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTWVzc2VuZ2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWV0YV9MIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNZXRhX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZXRhX1IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE1ldGFfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01pbGxTaWduIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNaWxsU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vZGVMb2NrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNb2RlTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vZGVfc3dpdGNoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBNb2RlX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vbkJy aWdodG5lc3NEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb25CcmlnaHRuZXNzRG93bjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX01vbkJyaWdodG5lc3NVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TW9uQnJpZ2h0bmVzc1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW91c2VLZXlzX0FjY2VsX0VuYWJsZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0FjY2VsX0VuYWJsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX01vdXNlS2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vdXNlS2V5 c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWhlbmthbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTXVoZW5rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWx0aV9rZXkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE11bHRpX2tleTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX011bHRpcGxlQ2FuZGlkYXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBNdWx0aXBsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX011 c2ljIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdXNpYzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015Q29t cHV0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE15Q29tcHV0ZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9NeVNpdGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNeVNpdGVzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05hY3V0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFpcmFTaWdu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBOYWlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OY2Fy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05jZWRp bGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05l dyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3U2hlcWVs U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3U2hlcWVsU2lnbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX05ld3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ld3M7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9O ZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4dF9W TW9kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dF9WTW9kZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X05leHRfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5leHRfVmlydHVh bF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX051bV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBOdW1fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9PRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT0U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9hY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX09iYXJyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9iYXJyZWQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9iZWxvd2RvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX09jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2Nhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfT2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1m bGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgT2NpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4YmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3Vt ZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBPY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleHRp bGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2RpYWVyZXNpczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX09kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2RvdWJs ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2ZmaWNlSG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT2ZmaWNlSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgT2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE9ob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT2hvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuYmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE9ob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmdyYXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5o b29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9P aG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybnRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT21hY3JvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX09vYmxpcXVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPb2JsaXF1ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX09wZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9wZW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PcGVuVVJMIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPcGVuVVJMOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT3B0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPcHRpb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Pc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9zbGFzaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX090aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3RpbGRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT3ZlcmxheTFfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPdmVybGF5MV9FbmFi bGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9PdmVybGF5Ml9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE92ZXJsYXkyX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1AiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhZ2VfRG93biIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUGFnZV9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFnZV9VcCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUGFnZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bhc3RlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQYXN0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhdXNlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Blc2V0YVNpZ24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBlc2V0YVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QaG9uZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUGhvbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QaWN0dXJlcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUGljdHVyZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0FjY2VsZXJhdGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQWNjZWxlcmF0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1BvaW50ZXJfQnV0dG9uMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0 b24xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b24yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX0J1dHRvbjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uMzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv aW50ZXJfQnV0dG9uNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b240Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b241IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQ b2ludGVyX0J1dHRvbjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbl9EZmx0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbl9EZmx0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UG9pbnRlcl9EYmxDbGljazEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xp Y2sxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFBvaW50ZXJfRGJsQ2xpY2syOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGlj azMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2szOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUG9pbnRlcl9EYmxDbGljazQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJf RGJsQ2xpY2s0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2s1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9E YmxDbGlja19EZmx0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrX0Rm bHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5OZXh0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb2ludGVyX0RmbHRCdG5OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EZmx0 QnRuUHJldiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EZmx0QnRuUHJldjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BvaW50ZXJfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRl cl9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duTGVmdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUG9pbnRlcl9Eb3duTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93blJp Z2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd25SaWdodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BvaW50ZXJfRHJhZzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJh ZzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWcyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQb2ludGVyX0RyYWcyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJh ZzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0RyYWc1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWc1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnX0RmbHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFBvaW50ZXJfRHJhZ19EZmx0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9FbmFibGVLZXlzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0VuYWJsZUtleXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfTGVmdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BvaW50ZXJfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9VcExlZnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXBMZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9V cFJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX1VwUmlnaHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb3dlckRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvd2VyRG93bjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Bvd2VyT2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb3dlck9mZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1ByZXZfVk1vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZf Vk1vZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQcmV2X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldmlvdXND YW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZpb3VzQ2FuZGlkYXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUHJpbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByaW50OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUHJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByaW9yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFIxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEx OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUjEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1IxNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjE1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9SNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9SNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SOSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SYWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFJhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFJjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBSZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWRvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBS ZWRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVmcmVzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVm cmVzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1JlbG9hZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVs b2FkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVwZWF0S2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFJlcGVhdEtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVwbHkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFJlcGx5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmV0dXJuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBSZXR1cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SaWdodCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJEb3duIildCisrCQlwdWJs aWMgY29uc3QgdWludCBSb2NrZXJEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9ja2VyRW50ZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlckVudGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9ja2Vy VXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlclVwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9t YWppIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb21hamk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb3Rh dGVXaW5kb3dzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb3RhdGVXaW5kb3dzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUm90YXRpb25LQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25LQjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1JvdGF0aW9uUEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvdGF0 aW9uUEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SdXBlZVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFJ1cGVlU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TQ0hXQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU0NIV0E7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNhYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2FjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2F2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2F2ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjZWRpbGxhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjaXJj dW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2NyZWVuU2F2ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNjcmVlblNhdmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsQ2xpY2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNjcm9sbENsaWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsRG93biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9sbFVw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9s bF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxfTG9jazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NlYXJjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VhcmNoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2VsZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZWxlY3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TZWxlY3RCdXR0b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlbGVjdEJ1dHRvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NlbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlbmQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TZXJiaWFuX0RKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9ESkU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0RaRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Vy Ymlhbl9EWkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0pFIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTZXJiaWFuX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9MSkUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNlcmJpYW5fTEpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9OSkUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fTkpFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlh bl9UU0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX1RTSEU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TZXJiaWFuX2RqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9kamU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2R6ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlh bl9kemU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2plIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTZXJiaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9samUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNlcmJpYW5fbGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9uamUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fbmplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl90 c2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX3RzaGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaGlmdF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaGlmdF9MOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2hpZnRfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfTG9jazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NoaWZ0X1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNoaWZ0X1I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaG9wOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5nbGVDYW5k aWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FhMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9hYTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2FlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfYWUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZWUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfYWVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZWUyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2FlZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FpIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2FpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9haTIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfYWkyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hbCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYXUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2F1MiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hdTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2JhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9iaGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYmhhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9j YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9jYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf Y2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2NoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfZGRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RkYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfZGRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kZGhhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9kaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGhhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9kaGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RoaGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2VlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2VlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9lZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZWUy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9mYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9m YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf Z2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2doYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9naGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2gyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2gyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9oYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9oYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9pMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9pMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2lpMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9paTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2phIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2phOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9qaGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfamhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9qbnlhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2pueWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2thIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2thOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9raGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfa2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9rdW5kZGFsaXlh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2t1bmRkYWxpeWE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2xhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2xhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9sbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbGxhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9sdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sdTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfbHUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1MjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfbHV1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfbHV1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sdXUy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9t YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbWJhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X21iYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25kZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfbmRkYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmRoYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9uZGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmcyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX25nMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmdhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX25nYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmphIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfbm5hIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbnlhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX255YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vMiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfb28i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfb287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX29v MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vbzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X3BhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3BhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9waGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcGhhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9yYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfcmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcmk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX3JpaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9yaWk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX3J1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ydTI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX3J1dTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcnV1MjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Npbmhfc2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfc2E7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zaGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3NzaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf c3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX3RoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdGhoYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF90aGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90dGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfdHRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90dGhhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX3R0aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdTIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfdTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3V1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX3V1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91dTIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfdXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF92YSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF92YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfeWEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfeWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TbGVlcCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2xlZXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TbG93S2V5c19FbmFibGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNsb3dLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NwZWxsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTcGVsbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nw bGl0U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTcGxpdFNjcmVlbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1N0YW5kYnkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0YW5kYnk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TdGFydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3RhcnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TdGlja3lLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3RpY2t5S2V5 c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT dG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VidGl0bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1 YnRpdGxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VwZXJfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3VwZXJfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1cGVyX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN1cGVyX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBwb3J0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTdXBwb3J0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VzcGVuZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU3VzcGVuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTd2l0Y2hfVlRfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xMCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZU XzExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMTE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Td2l0Y2hfVlRfMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1N3aXRjaF9WVF8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hf VlRfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8zIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTd2l0Y2hfVlRfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF80IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTd2l0Y2hfVlRfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF81IildCisr CQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9W VF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1N3aXRjaF9WVF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1N3aXRjaF9WVF84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRf ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBT d2l0Y2hfVlRfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N5c19SZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFN5c19SZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVEhPUk4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRIT1JOOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYWI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhYm92ZWRvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Rhc2tQYW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYXNrUGFuZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGNhcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRjZWRpbGxh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGVybWluYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRlcm1p bmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGVybWluYXRlX1NlcnZlciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGVybWluYXRlX1NlcnZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfYmFodCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9iYWh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ib2JhaW1h aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ib2JhaW1haTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfY2hvY2hhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaGFuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9jaG9jaGFuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9j aG9jaGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hpbmciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfY2hvY2hpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2Nob2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfY2hvY2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfZG9j aGFkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9kb2NoYWRhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9kb2RlayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9kb2RlazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfZm9mYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9mb2ZhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9mb2ZhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9m b2ZhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfaG9oaXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfaG9oaXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2hvbm9raHVrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2hvbm9raHVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raGFpIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2toYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X2tob2tob24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2hvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfa2hva2h1YXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2h1 YXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2tod2FpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX2tob2tod2FpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9yYWtoYW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2tob3Jha2hhbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tv a2FpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tva2FpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9sYWtraGFuZ3lhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sYWtraGFuZ3lh bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrY2hldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9sZWtjaGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtoYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9sZWtoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVraG9rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2xla2hvazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVra2Fv IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2thbzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfbGVrbnVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtudW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9sZWtwYWV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3Bh ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9sZWtzYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NpIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2xla3NpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzb25nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2xla3Nvbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3N1 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzdW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX2xvY2h1bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9jaHVsYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfbG9saW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xvbGlu ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf bHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWNoYXR0YXdhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX21haWNoYXR0YXdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWllayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWllazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpaGFu YWthdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWloYW5ha2F0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9tYWloYW5ha2F0X21haXRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9tYWloYW5ha2F0X21haXRobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpdGFpa2h1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRhaWtodTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf bWFpdGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRobzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfbWFpdHJpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRyaTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfbWFpeWFtb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf bWFpeWFtb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21vbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfbW9tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbmdvbmd1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX25nb25ndTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbmlraGFoaXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbmlraGFoaXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X25vbmVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25vbmVuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9ub251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25vbnU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX29hbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfb2FuZzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfcGFpeWFubm9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X3BhaXlhbm5vaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhpbnRodSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9waGludGh1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9waG9waGFuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bob3BoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bo b3BodW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bob3BodW5nOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9waG9zYW1waGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bob3Nh bXBoYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3BvcGxhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX3BvcGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9yb3J1YSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9yb3J1YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcnUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfcnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9zYXJhYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9zYXJhYWltYWltYWxhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9z YXJhYWltYWltYWxhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWFpbWFpbXVhbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWltYWltdWFuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9zYXJhYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFtOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9zYXJhZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfc2FyYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2Fy YWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFpaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9zYXJhaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFvIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX3NhcmFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXVlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf c2FyYXVlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdWVlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9zYXJhdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXV1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3J1c2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf c29ydXNpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3NhbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfc29zYWxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3NvIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX3Nvc287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc3VhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX3Nvc3VhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aGFudGhh a2hhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aGFudGhha2hhdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfdGhvbmFuZ21vbnRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90 aG9uYW5nbW9udGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG9waHV0aGFvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3Rob3BodXRoYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3Ro YWhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aGFoYW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3Rob3RoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGhhbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhvbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfdGhvdGhvbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3RodW5nIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX3Rob3RodW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90b3BhdGFrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3RvcGF0YWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3RvdGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3RvdGFvOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV93b3dhZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfd293YWVuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV95b3lhayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV95b3lh azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfeW95aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3lveWluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rob3JuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RpbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRp bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Ub0RvTGlzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG9E b0xpc3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub29scyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG9v bHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3BNZW51IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3BN ZW51OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRPZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRvdWNocGFkT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRPbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVG91Y2hwYWRPbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkVG9nZ2xlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUb3VjaHBhZFRvZ2dsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdXJv a3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvdXJva3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UcmF2 ZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRyYXZlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RzbGFz aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VXQiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVVdCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VicmV2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWNpcmN1bWZsZXgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRpYWVyZXNpcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vkb3Vi bGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWRvdWJsZWFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVZ3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9VaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9VaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVWhvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5iZWxvd2Rv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1Vob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVo b3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JudGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fR0hFX1dJVEhf VVBUVVJOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fR0hFX1dJVEhfVVBUVVJO OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVr cmFpbmlhbl9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX0lFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVa3JhaW5pYW5fSUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fWUkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlh bl9naGVfd2l0aF91cHR1cm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9naGVf d2l0aF91cHR1cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5faSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVWtyYWluaWFuX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5faWUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9pZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlh bl95aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX3lpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVWtyYW5pYW5fSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5fSTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFuaWFuX0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9K RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX1lJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV a3Jhbmlhbl9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX2kiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFVrcmFuaWFuX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9qZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVWtyYW5pYW5famU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl95aSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbWFj cm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW5k byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW5kbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VuZ3JhYiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW5ncmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW9nb25layIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VwIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VyaW5nIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VzZXIxS0IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFVzZXIxS0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyMktCIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVc2VyMktCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXNlclBCIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVc2VyUEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VdGlsZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1YiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WZW5kb3JIb21lIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBWZW5kb3JIb21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmlkZW8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFZpZGVvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmlldyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVmlldzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZvaWRTeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFZvaWRTeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBXOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfV0xBTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV0xBTjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1dXVyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV1dXOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfV2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXYWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9XYWtlVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdha2VVcDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBXY2lyY3VtZmxleDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdkaWFl cmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZWJDYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdl YkNhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1dncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2dy YXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfV2hlZWxCdXR0b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFdoZWVsQnV0dG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2luZG93Q2xlYXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFdpbmRvd0NsZWFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV29uU2lnbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgV29uU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dvcmQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFdvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9YIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBYOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBYYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9YZmVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBYZmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1lhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfWWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZYmVsb3dkb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9ZY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWNp cmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBZZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWVsbG93IildCisrCQlwdWJsaWMgY29u c3QgdWludCBZZWxsb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lob29rIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBZaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgWXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1phYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmFib3Zl ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfWmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaYWN1 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9aY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpjYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1plbl9Lb2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaZW5f S29obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1plbmtha3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpl bmtha3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5rYWt1X0hhbmtha3UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFplbmtha3VfSGFua2FrdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pvb21JbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgWm9vbUluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWm9vbU91dCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgWm9vbU91dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pzdHJva2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFpzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWFjdXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBhYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fib3ZlZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGFicmV2ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlYmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWJlbG93ZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYWJyZXZlaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlaG9v azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh YnJldmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBhY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4YWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h Y2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGJl bG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4aG9v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXh0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2FkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFk aWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFncmF2ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2Fob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhaG9vazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2FtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFtYWNyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9hbXBlcnNhbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFtcGVyc2Fu ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2FvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFvZ29u ZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hcG9zdHJvcGhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh cG9zdHJvcGhlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBwcm94ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGFwcHJveGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBwcm94aW1hdGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFwcHJveGltYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXJpbmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGFyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXNjaWljaXJjdW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGFzY2lpY2lyY3VtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXNjaWl0aWxkZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXNjaWl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FzdGVy aXNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhc3RlcmlzazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2F0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2F0aWxkZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhYm92ZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFja3NsYXNoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBiYWNrc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYWxsb3Rjcm9zcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFsbG90Y3Jvc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYXIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JlY2F1c2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJlY2F1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ibGFuayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYmxhbms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RpbnRlZ3JhbCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90aW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3Rs ZWZ0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0cGFyZW5zOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYm90bGVmdHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90bGVm dHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRzdW1tYXRpb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJvdGxlZnRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdodHBh cmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmlnaHRwYXJlbnM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ib3RyaWdodHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmlnaHRz cWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdodHN1bW1hdGlvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYm90cmlnaHRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3R0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBib3R0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90dmVydHN1bW1hdGlv bmNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90dmVydHN1bW1hdGlvbmNvbm5l Y3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNlbGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhY2VsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2VyaWdodCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhY2VyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNrZXRsZWZ0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFja2V0bGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNrZXRyaWdodCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2tldHJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9ibGFuayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9ibGFuazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90XzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90XzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8xMCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RfMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8yIildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90XzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 XzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF81IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 XzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdF84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF84Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTY4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMjM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz NDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1NjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTIzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTIzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTI0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NjgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTI0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTI0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTI1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTY3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTI1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTI1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTI2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTI3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTM0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU2 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0 Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0Njc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEzNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Njg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzE0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzE0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xOCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzIzNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y MzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0 Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDY4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzIzNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzIzNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzIzNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzIzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzI0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NjgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y NDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzI0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzI0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y NDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ3ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU2NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzI2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNjc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzI3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18zNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0 NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0 NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18zNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1Njc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18zNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18zNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18zODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c180NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c180NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1 Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NjgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c180NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c180NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c180NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c180NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c180Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c181NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c182NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c182Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c182ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c183 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c183OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c184OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJldmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJva2VuYmFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBicm9rZW5iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBjOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY19oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjX2g7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfY2FyZW9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJl b2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9jYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2FyZXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9jY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjYXJvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjY2VkaWxsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjY2ly Y3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfY2hlY2tlcmJvYXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaGVja2Vy Ym9hcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaGVja21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGNoZWNrbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2x1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Y2x1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2NvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjb2xv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjb21tYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2NvbnRhaW5zYXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbnRh aW5zYXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGNvcHlyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBj cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2Nyb3NzaW5nbGluZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGNyb3NzaW5nbGluZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdWJlcm9vdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgY3ViZXJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdXJyZW5jeSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgY3VycmVuY3k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdXJzb3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGN1cnNvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RhZ2dlciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGFnZ2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGNhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9JIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlY29tbWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfYWJvdmVjb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2Fib3ZlcmV2ZXJzZWRjb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZXJl dmVyc2VkY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlcmluZyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9hYm92ZXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZldmVy dGljYWxsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZldmVydGljYWxsaW5l OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dicmV2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9iZWxvd2JyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2NpcmN1 bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3djaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF9iZWxvd2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2JlbG93Y29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93ZGlhZXJlc2lzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2RvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfYmVsb3dtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRf YmVsb3dtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93cmluZyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9iZWxvd3Jpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93dGls ZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3d0aWxkZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfYmVsb3d2ZXJ0aWNhbGxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRf YmVsb3d2ZXJ0aWNhbGxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JyZXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX2JyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jYXBpdGFsX3Nj aHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2NhcGl0YWxfc2Nod2E7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Nhcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY3VycmVuY3ki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY3VycmVuY3k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX2Rhc2lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Rhc2lhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZGlhZXJl c2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9kb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZG91YmxlZ3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZG91YmxlZ3JhdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX2dyZWVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2dyZWVrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2hv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9pbnZlcnRlZGJyZXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX2ludmVydGVkYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2lvdGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaW90YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRf bG9uZ3NvbGlkdXNvdmVybGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2xvbmdzb2xp ZHVzb3ZlcmxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfbG93bGluZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9sb3dsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9tYWNyb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9vIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX29nb25l ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9vZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX3BlcmlzcG9tZW5pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3BlcmlzcG9tZW5p OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9wc2lsaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9wc2lsaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfc2VtaXZvaWNlZF9zb3VuZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9zZW1pdm9pY2VkX3NvdW5kOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9zbWFsbF9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9zbWFsbF9zY2h3YTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X3N0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdm9pY2VkX3NvdW5kIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX3ZvaWNlZF9zb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlY2lt YWxwb2ludCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVjaW1hbHBvaW50OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVncmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWdyZWU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpYWVyZXNpczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RpYW1vbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpYW1vbmQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kaWdpdHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaWdpdHNwYWNl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaW50 ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaXZpc2lvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGl2aXNpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb2xsYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRvbGxhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJiYXNlbGluZWRvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZG91YmJhc2VsaW5lZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91YmxlYWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91Ymxl ZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3VibGVkYWdnZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kb3VibGVsb3dxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJsZWxv d3F1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25hcnJvdyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZG93bmFycm93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bmNhcmV0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkb3duY2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duc2hvZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZG93bnNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duc3RpbGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRvd25zdGlsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd250YWNrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkb3dudGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RzdHJva2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lIildCisr CQlwdWJsaWMgY29uc3QgdWludCBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWFib3ZlZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBlYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lYWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ViZWxvd2RvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNhcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxl eCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9l Y2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4Z3Jh dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4 aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lZGlhZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBlZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWdyYXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9laG9vayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9laWdodHN1YnNjcmlw dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWlnaHRzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9laWdodHN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlaWdodHN1cGVyaW9yOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZWxlbWVudG9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGVtZW50 b2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9lbGxpcHNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWxs aXBzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbTNzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZW0zc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbTRzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZW00c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBlbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1kYXNoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBlbWRhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWZpbGxlZGNpcmNsZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZW1maWxsZWRjaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWZpbGxlZHJlY3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZmlsbGVkcmVjdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vt b3BlbmNpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1vcGVuY2lyY2xlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZW1vcGVucmVjdGFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbW9wZW5y ZWN0YW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbXB0eXNldCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZW1wdHlzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbXNwYWNlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBlbXNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5kYXNoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBlbmRhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbmZpbGxlZGNpcmNidWxsZXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGVuZmlsbGVkY2lyY2J1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZmls bGVkc3FidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZmlsbGVkc3FidWxsZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9lbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2Vub3BlbmNpcmNidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVub3BlbmNp cmNidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbm9wZW5zcXVhcmVidWxsZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVub3BlbnNxdWFyZWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vuc3BhY2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lb2dvbmVr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXF1YWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXRoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ldGlsZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V4Y2xhbSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZXhjbGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXhjbGFtZG93biIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZXhjbGFtZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V6aCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZXpoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmVtYWxlc3ltYm9sIildCisrCQlwdWJs aWMgY29uc3QgdWludCBmZW1hbGVzeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mZiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWdkYXNoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBmaWdkYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkbGVmdHRyaWJ1bGxldCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkbGVmdHRyaWJ1bGxldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2ZpbGxlZHJlY3RidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHJlY3Ri dWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWRyaWdodHRyaWJ1bGxldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZmlsbGVkcmlnaHR0cmlidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWR0 cmlidWxsZXRkb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWR0cmlidWxsZXRkb3du OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkdHJpYnVsbGV0dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGZpbGxlZHRyaWJ1bGxldHVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZWVpZ2h0aHMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGZpdmVlaWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXNpeHRo cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXNpeHRoczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Zp dmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVzdWJzY3JpcHQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9maXZlc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVzdXBl cmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJmaWZ0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGZvdXJmaWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3Vyc3Vic2NyaXB0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBmb3Vyc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91cnN1cGVyaW9yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBmb3Vyc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3Vy dGhyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmb3VydGhyb290OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZnVuY3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZ1bmN0aW9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dhYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Z2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9n Y2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dj ZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBncmF2ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2dyZWF0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ncmVhdGVydGhhbmVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBncmVhdGVy dGhhbmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3VpbGxlbW90bGVmdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZ3VpbGxlbW90bGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2d1aWxsZW1vdHJpZ2h0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBndWlsbGVtb3RyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2gi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oYWlyc3BhY2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhhaXJzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hjaXJjdW1m bGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWFydDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19hbGVwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2FsZXBoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X2F5aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19heWlu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2JldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X2JldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19iZXRoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfYmV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19jaGV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBoZWJyZXdfY2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19kYWxldCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2RhbGV0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X2RhbGV0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2RhbGV0aDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld19kb3VibGVsb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfZG91YmxlbG93bGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbGthcGgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbGthcGg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfZmluYWxtZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbG1lbTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbG51biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aGVicmV3X2ZpbmFsbnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFscGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbHBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2Zp bmFsemFkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsemFkZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld19maW5hbHphZGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d19maW5hbHphZGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZ2ltZWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld19naW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19naW1tZWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19naW1tZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19oZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYnJld19oZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19oZXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfa2FwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2thcGg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfa3VmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfa3VmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2xhbWVkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfbGFtZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbWVtIildCisrCQlwdWJs aWMgY29uc3QgdWludCBoZWJyZXdfbWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X251biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X251bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19w ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3BlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X3FvcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19xb3BoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X3Jlc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19yZXNoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X3NhbWVjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X3NhbWVjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zYW1la2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld19zYW1la2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfc2hpbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3NoaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdf dGFmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGFmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X3RhdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RhdzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld190ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld190ZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGV0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3 X3RldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfd2F3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoZWJyZXdfd2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3lvZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaGVicmV3X3lvZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YWRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YWRp IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFkaTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld196YWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFpbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld196YXlpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3pheWlu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGV4YWdyYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhleGFn cmFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpjb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhvcml6Y29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW4xOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXps aW5lc2NhbjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW4zOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaG9yaXpsaW5lc2NhbjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGlu ZXNjYW41OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhvcml6bGluZXNjYW43OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW45OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHN0 cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2h0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2h5cGhlbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaHlwaGVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lUb3VjaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaVRvdWNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBpYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2licmV2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWNpcmN1bWZsZXgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWRlbnRpY2FsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBpZGVudGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZGlhZXJl c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aWRvdGxlc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlkb3RsZXNzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaWZvbmx5aWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlmb25seWlmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZ3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9paG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWhvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9pbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbWFjcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaW1wbGllcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW1wbGllczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2luY2x1ZGVkaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGluY2x1ZGVkaW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9pbmNsdWRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5jbHVkZXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9pbmZpbml0eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5maW5pdHk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9pbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50ZWdy YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9pbnRlcnNlY3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGludGVyc2VjdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGlvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pdGlsZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9qY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg amNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGpvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGs7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfQ0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0NISTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9FOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9GVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9GVTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9ISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ISTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSE87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hV OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0k7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9L RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf S0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X0tPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9LVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfTUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX01FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9NSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfTU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01VIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX01VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05BIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX05BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ORSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9ORTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTkkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfTkk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05PIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX05POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OVSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9OVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9SQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUkUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfUkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JJIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX1JJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9STyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9STzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUlUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfUlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX1NBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9TRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU0hJIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrYW5hX1NISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU08iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfU087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NVIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX1NVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9UQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfVEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RJIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UTyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVFNVIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RTVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVFUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfV0Ei KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1dP IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1dPOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9Z QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ZQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf WU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfWU87CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1lVOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X2Nsb3NpbmdicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Nsb3NpbmdicmFj a2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9jb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9jb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY29uanVuY3RpdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfY29uanVuY3RpdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfZnVsbHN0 b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfZnVsbHN0b3A7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfbWlkZGxlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX21pZGRsZWRvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9vOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9vcGVuaW5nYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9vcGVuaW5nYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfc3dpdGNoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdHN1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3RzdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf dHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfdHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf eWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfeWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X3lvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3lvOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV95dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV95dTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th cHBhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYXBwYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2tjZWRp bGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ty YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGF0aW5jcm9zcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbGF0aW5jcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xiZWxvd2RvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGNhcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBsY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sY2VkaWxsYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0YW5n bGVicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0YW5nbGVicmFja2V0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbGVmdGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0YXJyb3c7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9sZWZ0Y2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRj YXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRkb3VibGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGxlZnRkb3VibGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0bWlkZGxl Y3VybHlicmFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdG1pZGRsZWN1cmx5YnJhY2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9sZWZ0b3BlbnRyaWFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBsZWZ0b3BlbnRyaWFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHBvaW50ZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGxlZnRwb2ludGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHJhZGljYWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVm dHNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRzaG9lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bGVmdHNpbmdsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHNpbmdsZXF1 b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnR0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBs ZWZ0dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnR0YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBs ZWZ0dGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxl c3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9sZXNzdGhhbmVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBsZXNzdGhhbmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGxmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG9naWNhbGFuZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgbG9naWNhbGFuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvZ2ljYWxvciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgbG9naWNhbG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93bGVmdGNvcm5lciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbG93bGVmdGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvd3JpZ2h0 Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb3dyaWdodGNvcm5lcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2xzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxzdHJva2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9tIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hY3JvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X21hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hbGVzeW1ib2w7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9tYWx0ZXNlY3Jvc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hbHRlc2Vjcm9z czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX21hcmtlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFya2Vy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbWFzY3VsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYXNj dWxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9taW51cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWlu dXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9taW51dGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtaW51 dGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbXVsdGlwbHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11bHRpcGx5Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbXVzaWNhbGZsYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11c2lj YWxmbGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXVzaWNhbHNoYXJwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBtdXNpY2Fsc2hhcnA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmFibGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5h YmxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBuYWN1 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9uY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5jYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX25jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBuY2Vk aWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX25pbmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG5pbmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uaW5lc3VwZXJpb3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG5pbmVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25sIildCisrCQlw dWJsaWMgY29uc3QgdWludCBubDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vYnJlYWtzcGFjZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbm9icmVha3NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90YXBwcm94 ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGFwcHJveGVxOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bm90ZWxlbWVudG9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RlbGVtZW50b2Y7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ub3RlcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90ZXF1YWw7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ub3RpZGVudGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGlk ZW50aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG5vdHNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX251bWJlcnNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG51bWJlcnNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udW1lcm9zaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBudW1lcm9zaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2JhcnJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb2JhcnJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2Nhcm9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGFjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfb2NpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZs ZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9jaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxl eGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4aG9vazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29jaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1m bGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBvZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2RvdWJsZWFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgb2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZ29uZWsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9ob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2hvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuYmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9ob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmdyYXZl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hv cm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vaG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybnRpbGRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb21hY3JvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29uZWVpZ2h0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lZWlnaHRoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb25lZmlmdGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZWZpZnRo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfb25laGFsZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25laGFs ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29uZXF1YXJ0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9u ZXF1YXJ0ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzaXh0aCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb25lc2l4dGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9uZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXN1cGVyaW9yIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvbmVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXRoaXJk IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmV0aGlyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29vYmxp cXVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvb2JsaXF1ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29w ZW5yZWN0YnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVucmVjdGJ1bGxldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX29wZW5zdGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVuc3RhcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29wZW50cmlidWxsZXRkb3duIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvcGVudHJpYnVsbGV0ZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29wZW50cmlidWxsZXR1cCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb3BlbnRyaWJ1bGxldHVwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3Jk ZmVtaW5pbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9yZGZlbWluaW5lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvc2xhc2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG90aWxkZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX292ZXJiYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG92ZXJiYXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vdmVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3ZlcmxpbmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9wYXJhZ3JhcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcmFncmFwaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3BhcmVubGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyZW5sZWZ0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcGFyZW5yaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyZW5yaWdo dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3BhcnRkaWZmZXJlbnRpYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHBhcnRkaWZmZXJlbnRpYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJ0aWFsZGVyaXZhdGl2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFydGlhbGRlcml2YXRpdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9wZXJjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJjZW50OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcGVyaW9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJpb2Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9wZXJpb2RjZW50ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVyaW9kY2VudGVyZWQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9wZXJtaWxsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVybWls bGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9waG9ub2dyYXBoY29weXJpZ2h0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBwaG9ub2dyYXBoY29weXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGx1cyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcGx1czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BsdXNtaW51cyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcGx1c21pbnVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcHJlc2NyaXB0aW9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwcmVzY3JpcHRpb247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9w cm9sb25nZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcHJvbG9uZ2Vkc291bmQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9wdW5jdHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwdW5jdHNw YWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3F1YWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1YWQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9xdWVzdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9xdWVzdGlvbmRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1ZXN0aW9uZG93 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3F1b3RlZGJsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90 ZWRibDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3RlbGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cXVvdGVsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVvdGVyaWdodCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgcXVvdGVyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3IiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3JhZGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJh ZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJj YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3JjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy Y2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JlZ2lzdGVyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHJlZ2lzdGVyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGFuZ2xlYnJhY2tldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcmlnaHRhbmdsZWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdo dGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGFycm93OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcmlnaHRjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRjYXJldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3JpZ2h0ZG91YmxlcXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy aWdodGRvdWJsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0bWlkZGxlY3VybHlicmFj ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRtaWRkbGVjdXJseWJyYWNlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcmlnaHRtaWRkbGVzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJp Z2h0bWlkZGxlc3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRvcGVudHJpYW5nbGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0b3BlbnRyaWFuZ2xlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cmlnaHRwb2ludGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHBvaW50ZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9yaWdodHNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0c2hvZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3JpZ2h0c2luZ2xlcXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCByaWdodHNpbmdsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0dCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcmlnaHR0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHR0YWNrIildCisr CQlwdWJsaWMgY29uc3QgdWludCByaWdodHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Fib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBzYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjYXJvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgc2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NlZGlsbGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Nod2EiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NyaXB0X3N3 aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2NyaXB0X3N3aXRjaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NlY29uZHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlY29uZHM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9zZWN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZWN0aW9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfc2VtaWNvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZW1pY29sb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9zZW1pdm9pY2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlbWl2 b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NldmVuZWlnaHRocyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgc2V2ZW5laWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2V2ZW5zdWJzY3JpcHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHNldmVuc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2V2 ZW5zdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2V2ZW5zdXBlcmlvcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3NpZ25hdHVyZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpZ25hdHVy ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaWduaWZibGFuayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc2lnbmlmYmxhbms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaW1pbGFyZXF1YWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHNpbWlsYXJlcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpbmdsZWxvd3F1b3Rl bWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2luZ2xlbG93cXVvdGVtYXJrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfc2l4c3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhzdWJzY3Jp cHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9zaXhzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg c2l4c3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zb2xpZGRpYW1vbmQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHNvbGlkZGlhbW9uZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NwYWNlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NxdWFyZXJvb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHNxdWFyZXJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zc2hhcnAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNzaGFycDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3N0ZXJsaW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzdGVybGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3N0cmljdGVxIildCisr CQlwdWJsaWMgY29uc3QgdWludCBzdHJpY3RlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90YWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RjYXJvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGNlZGlsbGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGVsZXBob25lIildCisr CQlwdWJsaWMgY29uc3QgdWludCB0ZWxlcGhvbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90ZWxlcGhvbmVy ZWNvcmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGVsZXBob25lcmVjb3JkZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90aGVyZWZvcmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRoZXJlZm9yZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3RoaW5zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhpbnNw YWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRob3Ju OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVlaWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 aHJlZWVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZWZpZnRocyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdGhyZWVmaWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXF1YXJ0ZXJzIildCisr CQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXF1YXJ0ZXJzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVz dWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlc3Vic2NyaXB0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdGhyZWVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVzdXBl cmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3RpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9waW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHRvcGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHBhcmVucyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxlZnRy YWRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0cmFkaWNhbDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3RvcGxlZnRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRz cWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0c3VtbWF0aW9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB0b3BsZWZ0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRwYXJl bnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0cGFyZW5zOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdG9wcmlnaHRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0c3Fi cmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRvcHJpZ2h0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdG9wdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHZlcnRzdW1tYXRpb25j b25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHZlcnRzdW1tYXRpb25jb25uZWN0 b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV90cmFkZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRy YWRlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RyYWRlbWFya2luY2lyY2xlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB0cmFkZW1hcmtpbmNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RzbGFzaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvZmlmdGhzIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0d29maWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d29zdWJz Y3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3b3N1YnNjcmlwdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3R3b3N1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d29zdXBlcmlvcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3R3b3RoaXJkcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvdGhpcmRz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1YmVsb3dkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91YnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVicmV2ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1Y2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVk aWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91ZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHVkb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VncmF2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvb2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHVob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdWhvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuYmVsb3dkb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmdy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dWhvcm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV91aG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybnRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW1hY3JvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3VuZGVyYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmRlcmJhcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3VuZGVyc2NvcmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVuZGVy c2NvcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bmlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5p b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV91b2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1b2dv bmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBh cnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3VwY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVw Y2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGxlZnRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHVwbGVmdGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwcmlnaHRjb3JuZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHVwcmlnaHRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHNob2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVwc2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwc3RpbGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVwc3RpbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHRhY2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVwdGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VyaW5nIildCisr CQlwdWJsaWMgY29uc3QgdWludCB1cmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3V0aWxkZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZhcmlhdGlvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdmFyaWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdmVydGJhciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdmVydGJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZlcnRjb25uZWN0b3IiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHZlcnRjb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92b2ljZWRz b3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdm9pY2Vkc291bmQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV92dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93IildCisr CQlwdWJsaWMgY29uc3QgdWludCB3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfd2FjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCB3YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Y2lyY3VtZmxleCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgd2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93ZGlhZXJlc2lz IildCisrCQlwdWJsaWMgY29uc3QgdWludCB3ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfd2dy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB3Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV94Iild CisrCQlwdWJsaWMgY29uc3QgdWludCB4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeGFib3ZlZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCB4YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95IildCisrCQlw dWJsaWMgY29uc3QgdWludCB5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWFjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB5YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95YmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ljaXJjdW1mbGV4IildCisr CQlwdWJsaWMgY29uc3QgdWludCB5Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lkaWFlcmVz aXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95 ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHllbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lncmF2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWhvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHlob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeXRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCB5dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96IildCisrCQlwdWJs aWMgY29uc3QgdWludCB6OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemFib3ZlZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCB6YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96YWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHphY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3pjYXJvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgemNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1YnNjcmlwdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgemVyb3N1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3plcm9zdXBl cmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemVyb3N1cGVyaW9yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfenN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgenN0cm9rZTsKKysJfQorKwluYW1l c3BhY2UgVGhyZWFkcyB7CisrCQluYW1lc3BhY2UgSWRsZSB7CisrCQkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRz X2FkZF9pZGxlIildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBz dGF0aWMgdWludCBhZGQgKEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVh ZHNfYWRkX2lkbGVfZnVsbCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCQlw dWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBwcmlvcml0eSwgb3duZWQgR0xpYi5Tb3Vy Y2VGdW5jIGZ1bmMpOworKwkJfQorKwkJbmFtZXNwYWNlIFRpbWVvdXQgeworKwkJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJf dGhyZWFkc19hZGRfdGltZW91dCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJ CQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkICh1aW50IGludGVydmFsLCBHTGliLlNvdXJjZUZ1bmMg ZnVuYyk7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF90aW1lb3V0X2Z1bGwiKV0KKysJCQlbVmVy c2lvbiAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9mdWxsIChp bnQgcHJpb3JpdHksIHVpbnQgaW50ZXJ2YWwsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsK KysJCX0KKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IGFk ZF9yZXBhaW50X2Z1bmMgKG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCBhZGRfcmVwYWludF9mdW5jX2Z1 bGwgKENsdXR0ZXIuUmVwYWludEZsYWdzIGZsYWdzLCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVu Yyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1v dmVfcmVwYWludF9mdW5jICh1aW50IGhhbmRsZV9pZCk7CisrCX0KKysJbmFtZXNwYWNlIFZhbHVl IHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Q YWludE5vZGUgZHVwX3BhaW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8gZ2V0 X2NvbG9yIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Tm9kZSBnZXRfcGFpbnRfbm9kZSAo R0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFy cmF5X2xlbmd0aF90eXBlID0gImdzaXplIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIGZsb2F0W10gZ2V0X3NoYWRlcl9mbG9hdCAoR0xpYi5WYWx1ZSB2YWx1ZSk7Cisr CQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdz aXplIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIGludFtdIGdldF9z aGFkZXJfaW50IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3Bv cyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgZmxvYXRbXSBnZXRfc2hhZGVyX21hdHJpeCAoR0xpYi5WYWx1 ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBDbHV0dGVyLlVuaXRzPyBnZXRfdW5pdHMgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2NvbG9yIChHTGli LlZhbHVlIHZhbHVlLCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfcGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2 YWx1ZSwgQ2x1dHRlci5QYWludE5vZGU/IG5vZGUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9mbG9hdCAoR0xpYi5WYWx1ZSB2YWx1 ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9wb3Mg PSAxLjUpXSBmbG9hdFtdIGZsb2F0cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCBzZXRfc2hhZGVyX2ludCAoR0xpYi5WYWx1ZSB2YWx1ZSwgW0NDb2Rl IChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUpXSBp bnRbXSBpbnRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2 b2lkIHNldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xl bmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGZsb2F0W10gbWF0 cml4KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNl dF91bml0cyAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5Vbml0cyB1bml0cyk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdGFrZV9wYWludF9ub2Rl IChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlBhaW50Tm9kZT8gbm9kZSk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBBY3Rpb24gOiBDbHV0dGVyLkFjdG9yTWV0YSB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg QWN0aW9uICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgQWN0b3IgOiBHTGliLkluaXRpYWxseVVub3duZWQsIEF0ay5JbXBsZW1lbnRvciwg Q2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxl IHsKKysJCXB1YmxpYyB1aW50MzIgZmxhZ3M7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IEFjdG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQg YWRkX2FjdGlvbiAoQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9hY3Rpb25fd2l0aF9uYW1lIChzdHJpbmcgbmFt ZSwgQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBhZGRfY2hpbGQgKENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2NvbnN0cmFpbnQgKENs dXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2b2lkIGFkZF9jb25zdHJhaW50X3dpdGhfbmFtZSAoc3RyaW5nIG5hbWUs IENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3QgKENsdXR0ZXIuRWZmZWN0IGVmZmVjdCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfZWZmZWN0 X3dpdGhfbmFtZSAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuRWZmZWN0IGVmZmVjdCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgYWRkX3RyYW5zaXRpb24gKHN0 cmluZyBuYW1lLCBDbHV0dGVyLlRyYW5zaXRpb24gdHJhbnNpdGlvbik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFsbG9jYXRlIChDbHV0dGVy LkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWxsb2NhdGVfYWxpZ25fZmlsbCAo Q2x1dHRlci5BY3RvckJveCBib3gsIGRvdWJsZSB4X2FsaWduLCBkb3VibGUgeV9hbGlnbiwgYm9v bCB4X2ZpbGwsIGJvb2wgeV9maWxsLCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9hdmFp bGFibGVfc2l6ZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgYXZhaWxhYmxlX3dpZHRoLCBmbG9h dCBhdmFpbGFibGVfaGVpZ2h0LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9wcmVmZXJy ZWRfc2l6ZSAoQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGUgKHVsb25nIG1v ZGUsIHVpbnQgZHVyYXRpb24sIC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0ZV93aXRoX3RpbWVsaW5lICh1bG9uZyBtb2Rl LCBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lLCAuLi4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfcmVsYXRpdmVfdHJhbnNmb3JtX3RvX3BvaW50 IChDbHV0dGVyLkFjdG9yPyBhbmNlc3RvciwgR3JhcGhlbmUuUG9pbnQzRCBwb2ludCwgb3V0IHVu b3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgYXBwbHlfdHJhbnNmb3JtIChyZWYgQ2x1dHRlci5NYXRyaXggbWF0cml4 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFwcGx5X3Ry YW5zZm9ybV90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCwgb3V0IHVub3duZWQgR3Jh cGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJ CXB1YmxpYyB2b2lkIGJpbmRfbW9kZWwgKEdMaWIuTGlzdE1vZGVsPyBtb2RlbCwgb3duZWQgQ2x1 dHRlci5BY3RvckNyZWF0ZUNoaWxkRnVuYyBjcmVhdGVfY2hpbGRfZnVuYyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcl9hY3Rpb25zICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXJfY29uc3RyYWlu dHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVh cl9lZmZlY3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJv b2wgY29udGFpbnMgKENsdXR0ZXIuQWN0b3IgZGVzY2VuZGFudCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjb250aW51ZV9wYWludCAoQ2x1dHRlci5QYWlu dENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlwdWJsaWMgdm9pZCBjb250aW51ZV9waWNrIChD bHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgUGFuZ28uQ29udGV4dCBjcmVhdGVfcGFuZ29fY29udGV4dCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBQYW5nby5MYXlvdXQgY3Jl YXRlX3BhbmdvX2xheW91dCAoc3RyaW5nPyB0ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBkZXN0cm95X2FsbF9jaGlsZHJlbiAoKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY2x1dHRlcl9hY3Rvcl9ldmVudCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwg Ym9vbCBjYXB0dXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2 b2lkIGdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldIEdyYXBoZW5lLlBvaW50M0QgdmVydHNbNF0pOworKwkJcHVibGljIHZpcnR1YWwgdW5v d25lZCBBdGsuT2JqZWN0IGdldF9hY2Nlc3NpYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rpb24gZ2V0X2FjdGlvbiAoc3Ry aW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdMaWIu TGlzdDx3ZWFrIENsdXR0ZXIuQWN0aW9uPiBnZXRfYWN0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGdldF9hbGxvY2F0aW9u X2JveCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGdl dF9hbGxvY2F0aW9uX3ZlcnRpY2VzIChDbHV0dGVyLkFjdG9yPyBhbmNlc3RvciwgW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBvaW50M0QgdmVydHNbNF0pOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X2FuY2hvcl9wb2ludF9n cmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLkNvbG9yIGdldF9iYWNrZ3JvdW5kX2NvbG9yICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX2dldF9hY3Rvcl9ieV9naWQiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjgiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9ieV9naWQgKHVpbnQzMiBpZF8pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X2NoaWxkX2F0X2luZGV4IChpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0X2NoaWxkX3RyYW5zZm9ybSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdl YWsgQ2x1dHRlci5BY3Rvcj4gZ2V0X2NoaWxkcmVuICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2NsaXAgKG91dCBmbG9hdCB4b2ZmLCBvdXQgZmxv YXQgeW9mZiwgb3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGdldF9jbGlwX3RvX2FsbG9jYXRpb24g KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkNvbnN0cmFpbnQgZ2V0X2NvbnN0cmFpbnQgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkNvbnN0 cmFpbnQ+IGdldF9jb25zdHJhaW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbnRlbnQgZ2V0X2NvbnRlbnQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggZ2V0 X2NvbnRlbnRfYm94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGdldF9jb250ZW50X2dyYXZpdHkgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudFJlcGVhdCBn ZXRfY29udGVudF9yZXBlYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X2NvbnRlbnRfc2NhbGluZ19maWx0ZXJzIChvdXQgQ2x1dHRlci5TY2Fs aW5nRmlsdGVyIG1pbl9maWx0ZXIsIG91dCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFnX2ZpbHRl cik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5QYWludFZvbHVtZSBnZXRfZGVmYXVsdF9wYWludF92b2x1bWUgKCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIGZsb2F0IGdldF9kZXB0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2RlbGF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9lYXNpbmdfZHVyYXRpb24gKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBn ZXRfZWFzaW5nX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkVmZmVjdCBnZXRfZWZmZWN0IChzdHJpbmcgbmFtZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRl ci5FZmZlY3Q+IGdldF9lZmZlY3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2ZpcnN0X2NoaWxkICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2ZpeGVkX3Bvc2l0 aW9uX3NldCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLkFjdG9yRmxhZ3MgZ2V0X2ZsYWdzICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X2FjdG9yX2hhc19wb2ludGVyIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgYm9vbCBnZXRfaGFzX3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdo dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkFjdG9yIGdldF9sYXN0X2NoaWxkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBnZXRfbGF5b3V0 X21hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgZ2V0X21hcmdpbiAoQ2x1dHRlci5NYXJnaW4gbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9ib3R0b20gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5fbGVm dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0 X21hcmdpbl9yaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X21hcmdpbl90b3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGludCBnZXRfbl9jaGlsZHJlbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfbmFtZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9uZXh0X3NpYmxpbmcgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5PZmZzY3JlZW5SZWRpcmVjdCBn ZXRfb2Zmc2NyZWVuX3JlZGlyZWN0ICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9vcGFjaXR5ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X29wYWNp dHlfb3ZlcnJpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg Ym9vbCBnZXRfcGFpbnRfYm94IChvdXQgQ2x1dHRlci5BY3RvckJveCBib3gpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVpbnQ4IGdldF9wYWludF9vcGFjaXR5ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3BhaW50 X3Zpc2liaWxpdHkgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBn ZXRfcGFpbnRfdm9sdW1lIChDbHV0dGVyLlBhaW50Vm9sdW1lIHZvbHVtZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5Db250ZXh0IGdldF9w YW5nb19jb250ZXh0ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rvcj8gZ2V0X3Bh cmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBn ZXRfcGl2b3RfcG9pbnQgKG91dCBmbG9hdCBwaXZvdF94LCBvdXQgZmxvYXQgcGl2b3RfeSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9waXZvdF9w b2ludF96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQg Z2V0X3Bvc2l0aW9uIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hlaWdo dCAoZmxvYXQgZm9yX3dpZHRoLCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQgbmF0 dXJhbF9oZWlnaHRfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg dm9pZCBnZXRfcHJlZmVycmVkX3NpemUgKG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0 IG1pbl9oZWlnaHRfcCwgb3V0IGZsb2F0IG5hdHVyYWxfd2lkdGhfcCwgb3V0IGZsb2F0IG5hdHVy YWxfaGVpZ2h0X3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX3dpZHRoIChmbG9hdCBmb3JfaGVpZ2h0LCBvdXQgZmxv YXQgbWluX3dpZHRoX3AsIG91dCBmbG9hdCBuYXR1cmFsX3dpZHRoX3ApOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3By ZXZpb3VzX3NpYmxpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgYm9vbCBnZXRfcmVhY3RpdmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgQ2x1dHRlci5SZXF1ZXN0TW9kZSBnZXRfcmVxdWVzdF9tb2RlICgpOworKwkJcHVi bGljIGJvb2wgZ2V0X3Jlc291cmNlX3NjYWxlIChvdXQgZmxvYXQgcmVzb3VyY2Vfc2NhbGUpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3JvdGF0aW9uIChDbHV0dGVy LlJvdGF0ZUF4aXMgYXhpcywgb3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5LCBvdXQgZmxvYXQgeik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfcm90 YXRpb25fYW5nbGUgKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zY2FsZSAob3V0IGRvdWJsZSBzY2FsZV94 LCBvdXQgZG91YmxlIHNjYWxlX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IGdldF9zY2FsZV9jZW50ZXIgKG91dCBmbG9hdCBjZW50ZXJfeCwgb3V0IGZsb2F0IGNlbnRlcl95 KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGdldF9zY2Fs ZV9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBk b3VibGUgZ2V0X3NjYWxlX3ogKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlw dWJsaWMgdm9pZCBnZXRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu U3RhZ2UgZ2V0X3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRfdGV4dF9kaXJlY3Rpb24gKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuTWF0cml4IGdldF90cmFu c2Zvcm0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLlBhaW50Vm9sdW1lIGdldF90cmFuc2Zvcm1lZF9wYWludF92b2x1bWUgKENsdXR0 ZXIuQWN0b3IgcmVsYXRpdmVfdG9fYW5jZXN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX3Bvc2l0aW9uIChvdXQgZmxvYXQg eCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZvaWQgZ2V0X3RyYW5zZm9ybWVkX3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhl aWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5UcmFuc2l0aW9uIGdldF90cmFuc2l0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zbGF0aW9uIChv dXQgZmxvYXQgdHJhbnNsYXRlX3gsIG91dCBmbG9hdCB0cmFuc2xhdGVfeSwgb3V0IGZsb2F0IHRy YW5zbGF0ZV96KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgZmxv YXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3JBbGlnbiBnZXRfeF9hbGlnbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfeF9leHBhbmQgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuQWN0b3JBbGlnbiBnZXRfeV9hbGlnbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgYm9vbCBnZXRfeV9leHBhbmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3Bvc2l0aW9uICgpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3pfcm90YXRpb25fZ3Jhdml0 eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdyYWJf a2V5X2ZvY3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBi b29sIGhhc19hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIGJvb2wgaGFzX2FsbG9jYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGJvb2wgaGFzX2NvbnN0cmFpbnRzICgpOworKwkJcHVibGljIGJvb2wgaGFz X2RhbWFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9v bCBoYXNfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyBib29sIGhhc19rZXlfZm9jdXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQor KwkJcHVibGljIGJvb2wgaGFzX21hcHBlZF9jbG9uZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGhhc19vdmVybGFwcyAoKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGhpZGVfYWxsICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGluc2VydF9jaGlsZF9hYm92ZSAo Q2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2F0X2luZGV4 IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRfYmVsb3cgKENsdXR0ZXIuQWN0 b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfaW5fY2xvbmVfcGFpbnQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGJvb2wgaXNfbWFwcGVkICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3JlYWxpemVkICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgaXNfcm90YXRlZCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGlzX3NjYWxl ZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgYm9vbCBpc192 aXNpYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBtYXAgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgbW92ZV9h bmNob3JfcG9pbnQgKGZsb2F0IGFuY2hvcl94LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHZvaWQgbW92ZV9hbmNob3JfcG9pbnRfZnJvbV9ncmF2aXR5IChD bHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgdm9pZCBtb3ZlX2J5IChmbG9hdCBkeCwgZmxvYXQgZHkpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIG5lZWRzX2V4cGFuZCAoQ2x1dHRlci5P cmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBwYWludF9ub2RlIChDbHV0dGVyLlBhaW50Tm9kZSByb290KTsKKysJCXB1YmxpYyB2 b2lkIHBpY2tfYm94IChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCwgQ2x1dHRlci5B Y3RvckJveCBib3gpOworKwkJcHVibGljIHZvaWQgcG9wX2ludGVybmFsICgpOworKwkJcHVibGlj IHZvaWQgcHVzaF9pbnRlcm5hbCAoKTsKKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhdyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZWRy YXdfd2l0aF9jbGlwIChDYWlyby5SZWN0YW5nbGVJbnQ/IGNsaXApOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbiAoQ2x1dHRlci5BY3Rp b24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IHJlbW92ZV9hY3Rpb25fYnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGxfY2hpbGRyZW4gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FsbF90cmFu c2l0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCByZW1vdmVfY2hpbGQgKENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIHZvaWQgcmVt b3ZlX2NsaXAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCByZW1vdmVfY29uc3RyYWludCAoQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2NvbnN0cmFp bnRfYnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9lZmZlY3Rf YnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHJlbW92ZV90cmFuc2l0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVwbGFjZV9jaGlsZCAoQ2x1dHRl ci5BY3RvciBvbGRfY2hpbGQsIENsdXR0ZXIuQWN0b3IgbmV3X2NoaWxkKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZXN0b3JlX2Vhc2luZ19zdGF0ZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzYXZlX2Vh c2luZ19zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2Nh dGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRf YW5jaG9yX3BvaW50IChmbG9hdCBhbmNob3JfeCwgZmxvYXQgYW5jaG9yX3kpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNob3JfcG9pbnRfZnJvbV9ncmF2aXR5IChD bHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2JhY2tncm91bmRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9y KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hp bGRfYWJvdmVfc2libGluZyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2li bGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2NoaWxkX2F0X2luZGV4IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgaW5kZXhfKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYmVsb3df c2libGluZyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NoaWxkX3Ry YW5zZm9ybSAoQ2x1dHRlci5NYXRyaXg/IHRyYW5zZm9ybSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xpcCAoZmxvYXQgeG9mZiwgZmxvYXQgeW9m ZiwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xpcF90b19hbGxvY2F0aW9uIChib29sIGNsaXBfc2V0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29u dGVudCAoQ2x1dHRlci5Db250ZW50PyBjb250ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9ncmF2aXR5IChDbHV0dGVyLkNvbnRl bnRHcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9jb250ZW50X3JlcGVhdCAoQ2x1dHRlci5Db250ZW50UmVwZWF0IHJlcGVh dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nv bnRlbnRfc2NhbGluZ19maWx0ZXJzIChDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRlciwg Q2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9kZXB0aCAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZGVsYXkgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZHVyYXRpb24gKHVp bnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9lYXNpbmdfbW9kZSAoQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZpeGVkX3Bvc2l0aW9uX3Nl dCAoYm9vbCBpc19zZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2ZsYWdzIChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2hlaWdodCAoZmxvYXQgaGVpZ2h0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5 b3V0X21hbmFnZXIgKENsdXR0ZXIuTGF5b3V0TWFuYWdlcj8gbWFuYWdlcik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbiAoQ2x1dHRlci5N YXJnaW4gbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfbWFyZ2luX2JvdHRvbSAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX2xlZnQgKGZsb2F0IG1hcmdp bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21h cmdpbl9yaWdodCAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX3RvcCAoZmxvYXQgbWFyZ2luKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2NyZWVuX3JlZGlyZWN0IChDbHV0dGVyLk9mZnNj cmVlblJlZGlyZWN0IHJlZGlyZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcGFjaXR5ICh1aW50 OCBvcGFjaXR5KTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcGFjaXR5X292ZXJyaWRlIChpbnQgb3Bh Y2l0eSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3BhcmVudCAoQ2x1dHRlci5BY3RvciBwYXJl bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9w aXZvdF9wb2ludCAoZmxvYXQgcGl2b3RfeCwgZmxvYXQgcGl2b3RfeSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bpdm90X3BvaW50X3ogKGZsb2F0 IHBpdm90X3opOworKwkJcHVibGljIHZvaWQgc2V0X3Bvc2l0aW9uIChmbG9hdCB4LCBmbG9hdCB5 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWFj dGl2ZSAoYm9vbCByZWFjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBzZXRfcmVxdWVzdF9tb2RlIChDbHV0dGVyLlJlcXVlc3RNb2RlIG1vZGUpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yb3RhdGlvbiAoQ2x1dHRlci5S b3RhdGVBeGlzIGF4aXMsIGRvdWJsZSBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JvdGF0 aW9uX2FuZ2xlIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywgZG91YmxlIGFuZ2xlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZSAoZG91Ymxl IHNjYWxlX3gsIGRvdWJsZSBzY2FsZV95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBzZXRfc2NhbGVfZnVsbCAoZG91YmxlIHNjYWxlX3gsIGRvdWJsZSBzY2FsZV95LCBmbG9h dCBjZW50ZXJfeCwgZmxvYXQgY2VudGVyX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV96IChkb3VibGUgc2NhbGVfeik7CisrCQlwdWJs aWMgdm9pZCBzZXRfc2l6ZSAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGV4dF9kaXJlY3Rpb24gKENs dXR0ZXIuVGV4dERpcmVjdGlvbiB0ZXh0X2Rpcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RyYW5zZm9ybSAoQ2x1dHRlci5NYXRyaXg/IHRyYW5z Zm9ybSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3RyYW5zbGF0aW9uIChmbG9hdCB0cmFuc2xhdGVfeCwgZmxvYXQgdHJhbnNsYXRlX3ksIGZsb2F0 IHRyYW5zbGF0ZV96KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF93aWR0aCAoZmxvYXQgd2lkdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3ggKGZsb2F0IHgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF94X2FsaWduIChDbHV0dGVyLkFjdG9yQWxpZ24g eF9hbGlnbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3hfZXhwYW5kIChib29sIGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfeSAoZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3lfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGlnbiB5 X2FsaWduKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfeV9leHBhbmQgKGJvb2wgZXhwYW5kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBzZXRfel9wb3NpdGlvbiAoZmxvYXQgel9wb3NpdGlvbik7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3pfcm90YXRpb25fZnJvbV9ncmF2aXR5 IChkb3VibGUgYW5nbGUsIENsdXR0ZXIuR3Jhdml0eSBncmF2aXR5KTsKKysJCXB1YmxpYyBib29s IHNob3VsZF9waWNrX3BhaW50ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgc2hvd19hbGwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgYm9vbCB0cmFuc2Zvcm1fc3RhZ2VfcG9pbnQgKGZsb2F0IHgsIGZsb2F0IHksIG91dCBm bG9hdCB4X291dCwgb3V0IGZsb2F0IHlfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdW5tYXAgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQor KwkJcHVibGljIHZvaWQgdW5wYXJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCB1bnNldF9mbGFncyAoQ2x1dHRlci5BY3RvckZsYWdzIGZsYWdzKTsK KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIENsdXR0ZXIuQWN0aW9uIGFjdGlvbnMgeyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0 b3JCb3ggYWxsb2NhdGlvbiB7IG93bmVkIGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBhbmNob3JfZ3Jhdml0 eSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgZmxvYXQgYW5jaG9yX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGFuY2hvcl95IHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRl ci5Db2xvciBiYWNrZ3JvdW5kX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGJhY2tn cm91bmRfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBjaGlsZF90cmFuc2Zvcm1fc2V0 IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBjbGlwX3JlY3QgeyBvd25lZCBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgY2xpcF90 b19hbGxvY2F0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29uc3RyYWludCBjb25z dHJhaW50cyB7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLkNvbnRlbnQgY29udGVudCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggY29udGVudF9ib3ggeyBn ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5D b250ZW50R3Jhdml0eSBjb250ZW50X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRSZXBlYXQgY29udGVu dF9yZXBlYXQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBmbG9h dCBkZXB0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkVmZmVjdCBlZmZlY3QgeyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rv ciBmaXJzdF9jaGlsZCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIGJvb2wgZml4ZWRfcG9zaXRpb25fc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0 IGZpeGVkX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4ZWRfeSB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhhc19jbGlwIHsgZ2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBib29sIGhhc19wb2ludGVyIHsgZ2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgaGVpZ2h0 IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q2x1dHRlci5BY3RvciBsYXN0X2NoaWxkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNj YWxpbmdGaWx0ZXIgbWFnbmlmaWNhdGlvbl9maWx0ZXIgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9v bCBtYXBwZWQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgZmxvYXQgbWFyZ2luX2JvdHRvbSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IG1hcmdpbl9sZWZ0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX3JpZ2h0 IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg ZmxvYXQgbWFyZ2luX3RvcCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBtaW5faGVpZ2h0IHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGJvb2wgbWluX2hlaWdodF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgZmxvYXQgbWluX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgbWluX3dpZHRoX3Nl dCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LlNjYWxpbmdGaWx0ZXIgbWluaWZpY2F0aW9uX2ZpbHRlciB7IGdldDsgc2V0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgZmxvYXQgbmF0dXJhbF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBu YXR1cmFsX2hlaWdodF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbmF0dXJhbF93aWR0 aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVyYWxfd2lkdGhfc2V0IHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9mZnNj cmVlblJlZGlyZWN0IG9mZnNjcmVlbl9yZWRpcmVjdCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg dWludCBvcGFjaXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBwaXZvdF9w b2ludCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIGZsb2F0IHBpdm90X3BvaW50X3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlBvaW50IHBvc2l0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIHJlYWN0aXZlIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGJvb2wgcmVhbGl6ZWQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLlJlcXVlc3RNb2RlIHJlcXVlc3RfbW9kZSB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCByZXNvdXJjZV9zY2FsZSB7IGdl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3ggeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg ZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHJvdGF0 aW9uX2FuZ2xlX3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3gg eyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3kgeyBvd25l ZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3ogeyBvd25lZCBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIENsdXR0ZXIuR3Jhdml0eSByb3RhdGlvbl9jZW50ZXJfel9ncmF2aXR5IHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBzY2FsZV9jZW50ZXJfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgc2NhbGVfY2VudGVyX3kgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIENsdXR0ZXIuR3Jhdml0eSBzY2FsZV9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRv dWJsZSBzY2FsZV94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSBzY2FsZV95IHsgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91YmxlIHNj YWxlX3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBzaG93X29uX3NldF9wYXJlbnQgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlNpemUgc2l6ZSB7IG93bmVkIGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0RGlyZWN0 aW9uIHRleHRfZGlyZWN0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIHRyYW5zZm9ybV9z ZXQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl94IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0cmFu c2xhdGlvbl96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGJvb2wgdmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgd2lkdGggeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHggeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24geF9hbGlnbiB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wg eF9leHBhbmQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHkgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxp Z24geV9hbGlnbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIGJvb2wgeV9leHBhbmQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB6X3Bvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhbGxvY2F0 aW9uX2NoYW5nZWQgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFn cyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgYm9vbCBidXR0b25fcHJlc3NfZXZlbnQgKENsdXR0ZXIuQnV0dG9uRXZlbnQgZXZl bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIGJvb2wgYnV0dG9uX3JlbGVhc2VfZXZlbnQgKENsdXR0ZXIuQnV0dG9uRXZlbnQgZXZlbnQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IGJvb2wgY2FwdHVyZWRfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW0hhc0VtaXR0 ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBkZXN0cm95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZW50ZXJfZXZlbnQgKENsdXR0ZXIuQ3Jvc3NpbmdFdmVu dCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgYm9vbCBldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRl cl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIGhpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBrZXlfZm9jdXNfaW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBrZXlfZm9jdXNfb3V0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IGJvb2wga2V5X3ByZXNzX2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGV2ZW50KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGtleV9y ZWxlYXNlX2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGxlYXZlX2V2ZW50IChD bHV0dGVyLkNyb3NzaW5nRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgbW90aW9uX2V2ZW50IChDbHV0dGVyLk1v dGlvbkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBw YWludF9jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCB2b2lkIHBhcmVudF9zZXQgKENsdXR0ZXIuQWN0b3I/IG9sZF9wYXJlbnQp OworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBwaWNrIChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29u dGV4dCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHF1ZXVlX3JlbGF5b3V0ICgpOworKwkJW0hhc0Vt aXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg cmVhbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCBib29sIHNjcm9sbF9ldmVudCAoQ2x1dHRlci5TY3JvbGxFdmVudCBldmVudCk7 CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHNob3cgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgdG91Y2hfZXZlbnQgKENsdXR0ZXIu RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBz aWduYWwgdm9pZCB0cmFuc2l0aW9uX3N0b3BwZWQgKHN0cmluZyBuYW1lLCBib29sIGlzX2Zpbmlz aGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgdHJhbnNpdGlvbnNfY29tcGxldGVkICgpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdW5yZWFsaXplICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9hY3Rvcl9tZXRhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEFjdG9yTWV0YSA6IEdMaWIuSW5p dGlhbGx5VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgQWN0b3JNZXRhICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5BY3RvciBnZXRfYWN0b3IgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZW5hYmxlZCAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIHNldF9hY3RvciAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJ cHVibGljIHZvaWQgc2V0X2VuYWJsZWQgKGJvb2wgaXNfZW5hYmxlZCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIENsdXR0ZXIuQWN0b3IgYWN0b3Ig eyBnZXQ7IH0KKysJCXB1YmxpYyBib29sIGVuYWJsZWQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHN0cmluZyBuYW1lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3Jfbm9kZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQWN0b3JOb2RlIDogQ2x1dHRlci5QYWludE5v ZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBBY3Rvck5vZGUgKENsdXR0ZXIuQWN0b3Ig YWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbGlnbl9jb25zdHJhaW50X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIEFsaWduQ29uc3Ry YWludCA6IENsdXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBB bGlnbkNvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5BbGlnbkF4aXMg YXhpcywgZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFsaWduQXhpcyBnZXRfYWxp Z25fYXhpcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZmFjdG9yICgpOworKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2Fs aWduX2F4aXMgKENsdXR0ZXIuQWxpZ25BeGlzIGF4aXMpOworKwkJcHVibGljIHZvaWQgc2V0X2Zh Y3RvciAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIu QWN0b3I/IHNvdXJjZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BbGlnbkF4aXMgYWxpZ25fYXhpcyB7 IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IGZhY3RvciB7IGdldDsgc2V0 IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQg Y29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FscGhhX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBBbHBoYSA6IEdMaWIuSW5pdGlhbGx5VW5vd25l ZCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXB1YmxpYyBBbHBoYSAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBBbHBoYS5mdWxsIChDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lLCB1bG9uZyBtb2RlKTsK KysJCXB1YmxpYyBkb3VibGUgZ2V0X2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVsb25nIGdldF9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5UaW1lbGluZSBnZXRfdGltZWxpbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xvc3VyZSAoR0xpYi5DbG9zdXJlIGNsb3N1cmUpOwor KwkJcHVibGljIHZvaWQgc2V0X2Z1bmMgKG93bmVkIENsdXR0ZXIuQWxwaGFGdW5jIGZ1bmMpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21vZGUgKHVs b25nIG1vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVsaW5lIChDbHV0dGVyLlRpbWVsaW5l IHRpbWVsaW5lKTsKKysJCXB1YmxpYyBkb3VibGUgYWxwaGEgeyBnZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bG9uZyBtb2RlIHsgZ2V0OyBzZXQgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSB7IGdldDsgc2V0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgY2xhc3MgQW5pbWF0aW9uIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2Ny aXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwdWJsaWMgQW5pbWF0aW9uICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uICgpOwor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnRlcnZhbCBnZXRfaW50ZXJ2YWwgKHN0cmluZyBw cm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyBib29sIGdldF9sb29wICgpOworKwkJcHVibGljIHVs b25nIGdldF9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSBnZXRf dGltZWxpbmUgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0 eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlw dWJsaWMgdm9pZCBzZXRfbG9vcCAoYm9vbCBsb29wKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tb2Rl ICh1bG9uZyBtb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vYmplY3QgKEdMaWIuT2JqZWN0IG9i amVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmU/IHRp bWVsaW5lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkFscGhhIGFscGhhIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1 aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIHVsb25nIG1vZGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgR0xpYi5PYmplY3Qgb2JqZWN0IHsgb3duZWQgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCB2b2lkIHN0YXJ0ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0 XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBBbnlFdmVudCA6 IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRl ci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVy LkV2ZW50VHlwZSB0eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iYWNrZW5kX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNsYXNzIEJhY2tlbmQgOiBH TGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwcm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGFkZF9vcHRpb25zIChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGNyZWF0ZV9jb250ZXh0ICgpIHRocm93cyBH TGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1 dHRlci5TdGFnZVdpbmRvdyBjcmVhdGVfc3RhZ2UgKENsdXR0ZXIuU3RhZ2Ugd3JhcHBlcikgdGhy b3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBl bnN1cmVfY29udGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLlNlYXQgZ2V0X2RlZmF1bHRfc2VhdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCBDbHV0dGVyLkZlYXR1cmVGbGFncyBnZXRfZmVhdHVyZXMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBDYWlyby5Gb250T3B0aW9u cyBnZXRfZm9udF9vcHRpb25zICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dE1l dGhvZCBnZXRfaW5wdXRfbWV0aG9kICgpOworKwkJcHVibGljIGRvdWJsZSBnZXRfcmVzb2x1dGlv biAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGluaXRfZXZlbnRz ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9mZWF0dXJl cyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHBvc3RfcGFyc2Ug KCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg Ym9vbCBwcmVfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCByZWRyYXcgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZvbnRfb3B0aW9ucyAo Q2Fpcm8uRm9udE9wdGlvbnMgb3B0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfbWV0 aG9kIChDbHV0dGVyLklucHV0TWV0aG9kIG1ldGhvZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZm9udF9jaGFuZ2VkICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHJlc29sdXRpb25fY2hh bmdlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBzaWduYWwg dm9pZCBzZXR0aW5nc19jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5fbGF5b3V0X2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNz IEJpbkxheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0K KysJCXB1YmxpYyBCaW5MYXlvdXQgKENsdXR0ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24gPSBDbHV0 dGVyLkJpbkFsaWdubWVudC5TVEFSVCwgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeV9hbGlnbiA9IENs dXR0ZXIuQmluQWxpZ25tZW50LlNUQVJUKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJpbkFsaWdubWVudCB4X2FsaWduIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkJpbkFsaWdubWVudCB5X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfYmluZF9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIEJpbmRDb25zdHJhaW50IDogQ2x1dHRlci5Db25z dHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEJpbmRDb25zdHJhaW50IChDbHV0 dGVyLkFjdG9yPyBzb3VyY2UsIENsdXR0ZXIuQmluZENvb3JkaW5hdGUgY29vcmRpbmF0ZSwgZmxv YXQgb2Zmc2V0KTsKKysJCXB1YmxpYyBDbHV0dGVyLkJpbmRDb29yZGluYXRlIGdldF9jb29yZGlu YXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29vcmRp bmF0ZSAoQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9vZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChD bHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIuQmluZENvb3JkaW5hdGUg Y29vcmRpbmF0ZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IG9mZnNl dCB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNl IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JpbmRpbmdfcG9vbF9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFz cyBCaW5kaW5nUG9vbCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBCaW5kaW5nUG9vbCAoc3RyaW5nIG5hbWUpOwor KwkJcHVibGljIGJvb2wgYWN0aXZhdGUgKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbW9kaWZpZXJzLCBHTGliLk9iamVjdCBnb2JqZWN0KTsKKysJCXB1YmxpYyB2b2lkIGJsb2Nr X2FjdGlvbiAoc3RyaW5nIGFjdGlvbl9uYW1lKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBD bHV0dGVyLkJpbmRpbmdQb29sIGZpbmQgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBmaW5kX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBt b2RpZmllcnMpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmluZGluZ1Bvb2wg Z2V0X2Zvcl9jbGFzcyAodm9pZCoga2xhc3MpOworKwkJcHVibGljIHZvaWQgaW5zdGFsbF9hY3Rp b24gKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlw ZSBtb2RpZmllcnMsIG93bmVkIENsdXR0ZXIuQmluZGluZ0FjdGlvbkZ1bmMgY2FsbGJhY2spOwor KwkJcHVibGljIHZvaWQgaW5zdGFsbF9jbG9zdXJlIChzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQg a2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGliLkNsb3N1cmUgY2xv c3VyZSk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV9hY3Rpb24gKHVpbnQga2V5X3ZhbCwgQ2x1 dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBvd25lZCBHTGliLkNhbGxiYWNrIGNhbGxiYWNr KTsKKysJCXB1YmxpYyB2b2lkIG92ZXJyaWRlX2Nsb3N1cmUgKHVpbnQga2V5X3ZhbCwgQ2x1dHRl ci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJs aWMgdm9pZCByZW1vdmVfYWN0aW9uICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBl IG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdm9pZCB1bmJsb2NrX2FjdGlvbiAoc3RyaW5nIGFjdGlv bl9uYW1lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsg b3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmx1cl9lZmZlY3RfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3Mg Qmx1ckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlw dWJsaWMgQmx1ckVmZmVjdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEJveCA6IENsdXR0 ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNv bnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgQm94IChDbHV0dGVyLkxheW91dE1hbmFnZXIgbWFuYWdlcik7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBn ZXRfbGF5b3V0X21hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQg cGFjayAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBwYWNrX2FmdGVyIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9y PyBzaWJsaW5nLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2tf YXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGludCBwb3NpdGlvbiwgLi4uKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrX2JlZm9yZSAoQ2x1dHRlci5BY3RvciBhY3Rvciwg Q2x1dHRlci5BY3Rvcj8gc2libGluZywgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgdm9pZCBwYWNrdiAoQ2x1dHRlci5BY3RvciBhY3RvciwgW0NDb2RlIChhcnJheV9sZW5ndGhf Y25hbWUgPSAibl9wcm9wZXJ0aWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSwgYXJyYXlfbGVu Z3RoX3R5cGUgPSAiZ3VpbnQiKV0gc3RyaW5nW10gcHJvcGVydGllcywgW0NDb2RlIChhcnJheV9s ZW5ndGhfY25hbWUgPSAibl9wcm9wZXJ0aWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSwgYXJy YXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR0xpYi5WYWx1ZVtdIHZhbHVlcyk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xv cik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheW91dF9tYW5hZ2Vy IChDbHV0dGVyLkxheW91dE1hbmFnZXIgbWFuYWdlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgY29sb3Jfc2V0IHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFnZXIgbGF5b3V0X21hbmFnZXIg eyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfbGF5b3V0X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEJveExheW91dCA6 IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBC b3hMYXlvdXQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2FsaWdu bWVudCAoQ2x1dHRlci5BY3RvciBhY3Rvciwgb3V0IENsdXR0ZXIuQm94QWxpZ25tZW50IHhfYWxp Z24sIG91dCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2R1cmF0aW9uICgpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB1bG9uZyBnZXRfZWFzaW5nX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIGJvb2wgZ2V0X2V4cGFuZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2ZpbGwgKENsdXR0ZXIuQWN0b3IgYWN0 b3IsIG91dCBib29sIHhfZmlsbCwgb3V0IGJvb2wgeV9maWxsKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGdldF9ob21vZ2VuZW91cyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBnZXRf b3JpZW50YXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcGFja19zdGFydCAoKTsKKysJCXB1 YmxpYyB1aW50IGdldF9zcGFjaW5nICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBi b29sIGdldF91c2VfYW5pbWF0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg Ym9vbCBnZXRfdmVydGljYWwgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQg cGFjayAoQ2x1dHRlci5BY3RvciBhY3RvciwgYm9vbCBleHBhbmQsIGJvb2wgeF9maWxsLCBib29s IHlfZmlsbCwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwgQ2x1dHRlci5Cb3hBbGlnbm1l bnQgeV9hbGlnbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FsaWdu bWVudCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwg Q2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGlnbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19tb2RlICh1bG9uZyBtb2RlKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZXhwYW5kIChDbHV0dGVyLkFjdG9yIGFj dG9yLCBib29sIGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2ZpbGwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgeF9maWxsLCBib29sIHlfZmlsbCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfaG9tb2dlbmVv dXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRh dGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFja19zdGFydCAoYm9vbCBwYWNrX3N0YXJ0KTsK KysJCXB1YmxpYyB2b2lkIHNldF9zcGFjaW5nICh1aW50IHNwYWNpbmcpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VfYW5pbWF0aW9ucyAoYm9vbCBhbmltYXRlKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdmVydGljYWwgKGJvb2wgdmVy dGljYWwpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1aW50IGVhc2luZ19kdXJhdGlv biB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVsb25nIGVhc2lu Z19tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBib29sIGhvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbiB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBwYWNrX3N0YXJ0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyB1aW50IHNwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBib29sIHVzZV9hbmltYXRpb25zIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgYm9vbCB2ZXJ0aWNhbCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2JyaWdodG5lc3NfY29udHJhc3RfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBCcmlnaHRuZXNzQ29udHJhc3RFZmZlY3Qg OiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIEJyaWdo dG5lc3NDb250cmFzdEVmZmVjdCAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9icmlnaHRuZXNzIChv dXQgZmxvYXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9hdCBibHVlKTsKKysJCXB1Ymxp YyB2b2lkIGdldF9jb250cmFzdCAob3V0IGZsb2F0IHJlZCwgb3V0IGZsb2F0IGdyZWVuLCBvdXQg ZmxvYXQgYmx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnJpZ2h0bmVzcyAoZmxvYXQgYnJpZ2h0 bmVzcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnJpZ2h0bmVzc19mdWxsIChmbG9hdCByZWQsIGZs b2F0IGdyZWVuLCBmbG9hdCBibHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250cmFzdCAoZmxv YXQgY29udHJhc3QpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRyYXN0X2Z1bGwgKGZsb2F0IHJl ZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgQ2x1dHRlci5Db2xvciBicmlnaHRuZXNzIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29udHJhc3QgeyBvd25l ZCBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQnV0dG9uRXZlbnQgOiBDbHV0dGVy LkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB1aW50MzIgYnV0dG9u OworKwkJcHVibGljIHVpbnQgY2xpY2tfY291bnQ7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklu cHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7Cisr CQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMg d2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ug c3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5 cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2NhbnZhc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwlwdWJsaWMgY2xhc3MgQ2FudmFzIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29udGVu dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyQ29udGVudCoiKV0KKysJCXB1YmxpYyBDYW52YXMgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X3NjYWxlX2ZhY3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV9mYWN0b3IgKGZs b2F0IHNjYWxlKTsKKysJCXB1YmxpYyBib29sIHNldF9zaXplIChpbnQgd2lkdGgsIGludCBoZWln aHQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGhlaWdodCB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgc2NhbGVfZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB3aWR0aCB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBkcmF3IChDYWlyby5Db250ZXh0IGNyLCBpbnQgd2lk dGgsIGludCBoZWlnaHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jaGlsZF9tZXRhX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNz IENoaWxkTWV0YSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDaGlsZE1ldGEgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3RvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQ29udGFpbmVyIGdldF9jb250YWluZXIgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBh Y3RvciB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db250YWluZXIgY29u dGFpbmVyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2xpY2tfYWN0aW9u X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNs YXNzIENsaWNrQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1Ymxp YyBDbGlja0FjdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9idXR0b24gKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29vcmRzIChvdXQgZmxv YXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9zdGF0ZSAoKTsKKysJCXB1 YmxpYyB2b2lkIHJlbGVhc2UgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBi b29sIGhlbGQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBsb25nX3ByZXNzX2R1cmF0aW9uIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIGludCBsb25nX3ByZXNzX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHByZXNzZWQgeyBnZXQ7IH0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNsaWNrZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJv b2wgbG9uZ19wcmVzcyAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Mb25nUHJlc3NTdGF0 ZSBzdGF0ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NsaXBfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xpcE5vZGUgOiBDbHV0 dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIENsaXBOb2RlICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9jbG9uZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBDbG9uZSA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBs ZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5T Y3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBDbG9uZSAoQ2x1dHRlci5BY3RvciBz b3VyY2UpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOwor KwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCXB1 YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9jb2xvcl9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBDb2xvck5vZGUgOiBDbHV0dGVyLlBpcGVsaW5lTm9k ZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIENvbG9yTm9kZSAoQ2x1dHRlci5Db2xvcj8g Y29sb3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb2xvcml6ZV9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQ29sb3JpemVFZmZl Y3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIENv bG9yaXplRWZmZWN0IChDbHV0dGVyLkNvbG9yIHRpbnQpOworKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgZ2V0X3RpbnQgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGludCAoQ2x1dHRlci5Db2xvciB0 aW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHRpbnQgeyBnZXQ7IHNldDsgfQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIENvbnN0cmFpbnQgOiBDbHV0dGVyLkFj dG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgQ29uc3RyYWludCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHVwZGF0ZV9hbGxvY2F0aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVy LkFjdG9yQm94IGFsbG9jYXRpb24pOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgdXBkYXRlX3ByZWZlcnJlZF9zaXplIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVy Lk9yaWVudGF0aW9uIGRpcmVjdGlvbiwgZmxvYXQgZm9yX3NpemUsIGZsb2F0IG1pbmltdW1fc2l6 ZSwgZmxvYXQgbmF0dXJhbF9zaXplKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIENyb3NzaW5nRXZl bnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuQWN0b3IgcmVsYXRlZDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuRXZlbnRT ZXF1ZW5jZSBzZXF1ZW5jZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGlt ZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7 CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZGVmb3JtX2VmZmVjdF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFj dCBjbGFzcyBEZWZvcm1FZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRGVmb3Jt RWZmZWN0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVmb3Jt X3ZlcnRleCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCwgQ29nbC5UZXh0dXJlVmVydGV4IHZl cnRleCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfYmFja19tYXRlcmlhbCAo KTsKKysJCXB1YmxpYyB2b2lkIGdldF9uX3RpbGVzIChvdXQgdWludCB4X3RpbGVzLCBvdXQgdWlu dCB5X3RpbGVzKTsKKysJCXB1YmxpYyB2b2lkIGludmFsaWRhdGUgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfYmFja19tYXRlcmlhbCAoQ29nbC5IYW5kbGU/IG1hdGVyaWFsKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9uX3RpbGVzICh1aW50IHhfdGlsZXMsIHVpbnQgeV90aWxlcyk7CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHhfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB5X3RpbGVzIHsgZ2V0OyBzZXQ7IH0KKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfZGVzYXR1cmF0ZV9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgRGVzYXR1cmF0ZUVmZmVjdCA6IENs dXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgRGVzYXR1cmF0 ZUVmZmVjdCAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgZG91YmxlIGdldF9mYWN0b3IgKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBk b3VibGUgZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJhZ19hY3Rpb25f Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xh c3MgRHJhZ0FjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMg RHJhZ0FjdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9kcmFnX2FyZWEgKEdyYXBoZW5lLlJl Y3QgZHJhZ19hcmVhKTsKKysJCXB1YmxpYyBDbHV0dGVyLkRyYWdBeGlzIGdldF9kcmFnX2F4aXMg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9kcmFnX2hhbmRsZSAoKTsK KysJCXB1YmxpYyB2b2lkIGdldF9kcmFnX3RocmVzaG9sZCAob3V0IHVpbnQgeF90aHJlc2hvbGQs IG91dCB1aW50IHlfdGhyZXNob2xkKTsKKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRz IChvdXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlwdWJsaWMgdm9p ZCBnZXRfcHJlc3NfY29vcmRzIChvdXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kp OworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdD8gZHJhZ19hcmVh KTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX2F4aXMgKENsdXR0ZXIuRHJhZ0F4aXMgYXhpcyk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19oYW5kbGUgKENsdXR0ZXIuQWN0b3I/IGhhbmRsZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ190aHJlc2hvbGQgKGludCB4X3RocmVzaG9sZCwgaW50 IHlfdGhyZXNob2xkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGRyYWdfYXJlYSB7IG93bmVkIGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgYm9vbCBkcmFnX2FyZWFfc2V0IHsgZ2V0OyB9CisrCQlwdWJsaWMg Q2x1dHRlci5EcmFnQXhpcyBkcmFnX2F4aXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuQWN0b3IgZHJhZ19oYW5kbGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgaW50IHhfZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHlfZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19iZWdpbiAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSwgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyYWdfZW5kIChD bHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95LCBDbHV0dGVy Lk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg ZHJhZ19tb3Rpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGRlbHRhX3gsIGZsb2F0IGRl bHRhX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCBib29sIGRyYWdfcHJvZ3Jlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGRl bHRhX3gsIGZsb2F0IGRlbHRhX3kpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcm9wX2FjdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFzcyBE cm9wQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBEcm9w QWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgY2FuX2Ryb3AgKENsdXR0 ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3kpOworKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJvcCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZl bnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIHNpZ25hbCB2b2lkIGRyb3BfY2FuY2VsIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9h dCBldmVudF94LCBmbG9hdCBldmVudF95KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IG92ZXJfaW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgb3Zlcl9vdXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9l ZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJs aWMgYWJzdHJhY3QgY2xhc3MgRWZmZWN0IDogQ2x1dHRlci5BY3Rvck1ldGEgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEVmZmVjdCAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIG1vZGlmeV9wYWludF92 b2x1bWUgKENsdXR0ZXIuUGFpbnRWb2x1bWUgdm9sdW1lKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250 ZXh0LCBDbHV0dGVyLkVmZmVjdFBhaW50RmxhZ3MgZmxhZ3MpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGljayAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2NvbnRl eHQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcG9zdF9wYWludCAo Q2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgYm9vbCBwcmVfcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50 X2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQg cXVldWVfcmVwYWludCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X2dldF90eXBl ICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1Ymxp YyBjbGFzcyBFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBFdmVudCAo Q2x1dHRlci5FdmVudFR5cGUgdHlwZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudCBjb3B5ICgp OworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgZG91YmxlIGdldF9hbmdsZSAoQ2x1dHRlci5FdmVudCB0YXJnZXQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfYXhlcyAob3V0 IHVpbnQgbl9heGVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1 aW50MzIgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1aW50IGdldF9jbGlja19jb3VudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LklucHV0RGV2aWNlIGdldF9kZXZpY2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9kZXZpY2VfaWQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5JbnB1dERldmljZVRvb2wgZ2V0X2RldmljZV90b29sICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdldF9kZXZp Y2VfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X2Rpc3RhbmNlIChDbHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudFNlcXVlbmNlIGdl dF9ldmVudF9zZXF1ZW5jZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZ2V0X2ZsYWdzICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9nZXN0dXJlX21vdGlvbl9kZWx0YSAob3V0 IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBkeSk7CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZEdl c3R1cmVQaGFzZSBnZXRfZ2VzdHVyZV9waGFzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI0IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9nZXN0dXJlX3BpbmNoX2FuZ2xlX2RlbHRhICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X2dl c3R1cmVfcGluY2hfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdWludDE2IGdldF9rZXlfY29kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1aW50IGdldF9rZXlfc3ltYm9sICgpOworKwkJcHVibGljIHVuaWNoYXIg Z2V0X2tleV91bmljb2RlICgpOworKwkJcHVibGljIHVpbnQgZ2V0X21vZGVfZ3JvdXAgKCk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfcGFkX2V2ZW50X2RldGFpbHMgKG91dCB1aW50IG51bWJlciwgb3V0 IHVpbnQgbW9kZSwgb3V0IGRvdWJsZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3Bvc2l0aW9uIChHcmFwaGVuZS5Qb2ludCBwb3NpdGlv bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9yZWxhdGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIGdldF9zY3JvbGxfZGVsdGEgKG91dCBkb3VibGUgZHgsIG91dCBkb3Vi bGUgZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIu U2Nyb2xsRGlyZWN0aW9uIGdldF9zY3JvbGxfZGlyZWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGdldF9z Y3JvbGxfZmluaXNoX2ZsYWdzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBnZXRfc2Nyb2xsX3NvdXJjZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X3NvdXJjZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X3NvdXJjZV9kZXZpY2UgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdl dF9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLk1vZGlmaWVyVHlwZSBnZXRfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3N0YXRlX2Z1bGwgKG91dCBDbHV0dGVyLk1vZGlmaWVy VHlwZSBidXR0b25fc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBiYXNlX3N0YXRlLCBv dXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbGF0Y2hlZF9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZp ZXJUeXBlIGxvY2tlZF9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGVmZmVjdGl2ZV9z dGF0ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWludDMyIGdl dF90aW1lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyB1aW50 IGdldF90b3VjaHBhZF9nZXN0dXJlX2Zpbmdlcl9jb3VudCAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl9ldmVudF90eXBlIildCisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgZ2V0 X3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wg aGFzX2NvbnRyb2xfbW9kaWZpZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIGJvb2wgaGFzX3NoaWZ0X21vZGlmaWVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BvaW50ZXJfZW11bGF0ZWQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBwdXQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYnV0dG9uICh1aW50MzIg YnV0dG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9jb29yZHMgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZT8gZGV2aWNl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGV2 aWNlX3Rvb2wgKENsdXR0ZXIuSW5wdXREZXZpY2VUb29sPyB0b29sKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mbGFncyAoQ2x1dHRlci5FdmVudEZs YWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9rZXlfY29kZSAodWludDE2IGtleV9jb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfc3ltYm9sICh1aW50IGtleV9zeW0pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV91bmljb2Rl ICh1bmljaGFyIGtleV91bmljb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9yZWxhdGVkIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9kZWx0YSAo ZG91YmxlIGR4LCBkb3VibGUgZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3Njcm9sbF9kaXJlY3Rpb24gKENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9u IGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlX2RldmljZSAoQ2x1dHRlci5JbnB1 dERldmljZT8gZGV2aWNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9zdGFnZSAoQ2x1dHRlci5TdGFnZT8gc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0YXRlIChDbHV0dGVyLk1vZGlmaWVy VHlwZSBzdGF0ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfdGltZSAodWludDMyIHRpbWVfKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFueUV2ZW50IGFu eSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckFueUV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1 YmxpYyBDbHV0dGVyLkJ1dHRvbkV2ZW50IGJ1dHRvbiB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRl ckJ1dHRvbkV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNyb3NzaW5nRXZl bnQgY3Jvc3Npbmcge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJDcm9zc2luZ0V2ZW50ICopIild ICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLktleUV2ZW50IGtleSB7W0NDb2RlIChjbmFtZSA9 ICIoQ2x1dHRlcktleUV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLk1vdGlv bkV2ZW50IG1vdGlvbiB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICopIild ICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbEV2ZW50IHNjcm9sbCB7W0NDb2RlIChj bmFtZSA9ICIoQ2x1dHRlclNjcm9sbEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0 dGVyLlN0YWdlU3RhdGVFdmVudCBzdGFnZV9zdGF0ZSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRl clN0YWdlU3RhdGVFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaEV2 ZW50IHRvdWNoIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSAgZ2V0 OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFBpbmNoRXZlbnQgdG91Y2hwYWRfcGluY2gg e1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFBpbmNoRXZlbnQgKikiKV0gIGdldDsg fQorKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3aXBlIHtb Q0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRTd2lwZUV2ZW50ICopIildICBnZXQ7IH0K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X3NlcXVlbmNlX2dldF90eXBlICgpIildCisr CVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3Mg RXZlbnRTZXF1ZW5jZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ZpeGVkX2xheW91dF9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGaXhlZExh eW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1 YmxpYyBGaXhlZExheW91dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZmxvd19sYXlvdXRfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgRmxv d0xheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJ CXB1YmxpYyBGbG93TGF5b3V0IChDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbik7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbHVtbl9zcGFjaW5nICgpOworKwkJcHVibGljIHZvaWQg Z2V0X2NvbHVtbl93aWR0aCAob3V0IGZsb2F0IG1pbl93aWR0aCwgb3V0IGZsb2F0IG1heF93aWR0 aCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgQ2x1dHRl ci5GbG93T3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIHZvaWQgZ2V0 X3Jvd19oZWlnaHQgKG91dCBmbG9hdCBtaW5faGVpZ2h0LCBvdXQgZmxvYXQgbWF4X2hlaWdodCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Jvd19zcGFjaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIGdldF9zbmFwX3RvX2dyaWQgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY29sdW1uX3NwYWNpbmcgKGZsb2F0IHNwYWNpbmcpOworKwkJcHVibGljIHZv aWQgc2V0X2NvbHVtbl93aWR0aCAoZmxvYXQgbWluX3dpZHRoLCBmbG9hdCBtYXhfd2lkdGgpOwor KwkJcHVibGljIHZvaWQgc2V0X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5GbG93T3JpZW50YXRpb24gb3JpZW50 YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19oZWlnaHQgKGZsb2F0IG1pbl9oZWlnaHQs IGZsb2F0IG1heF9oZWlnaHQpOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19zcGFjaW5nIChmbG9h dCBzcGFjaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfc25hcF90b19ncmlkIChib29sIHNuYXBfdG9fZ3JpZCk7CisrCQlwdWJsaWMgZmxvYXQg Y29sdW1uX3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgaG9tb2dlbmVvdXMg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWF4 X2NvbHVtbl93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBmbG9hdCBtYXhfcm93X2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtaW5fY29sdW1uX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1pbl9yb3dfaGVpZ2h0IHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbiB7 IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IHJvd19zcGFjaW5nIHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBz bmFwX3RvX2dyaWQgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9nZXN0dXJlX2FjdGlv bl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBj bGFzcyBHZXN0dXJlQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1 YmxpYyBHZXN0dXJlQWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB2b2lkIGNhbmNlbCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCBib29sIGdlc3R1cmVfcHJlcGFyZSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmlj ZSBnZXRfZGV2aWNlICh1aW50IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0Iild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGdldF9sYXN0X2V2ZW50ICh1aW50IHBv aW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRzICh1aW50IHBvaW50LCBvdXQg ZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9pbnQs IG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X25fY3VycmVudF9wb2ludHMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGludCBnZXRfbl90b3VjaF9w b2ludHMgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcHJlc3NfY29vcmRzICh1aW50IHBvaW50LCBv dXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kpOworKwkJcHVibGljIHZvaWQgZ2V0 X3JlbGVhc2VfY29vcmRzICh1aW50IHBvaW50LCBvdXQgZmxvYXQgcmVsZWFzZV94LCBvdXQgZmxv YXQgcmVsZWFzZV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X3NlcXVlbmNlICh1aW50IHBvaW50KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdGhyZXNo b2xkX3RyaWdnZXJfZGlzdGFuY2UgKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJF ZGdlIGdldF90aHJlc2hvbGRfdHJpZ2dlcl9lZGdlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjAiLCBzaW5jZSA9ICIxLjE4IildCisr CQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0X3RocmVzaG9sZF90cmlnZ2Vy X2VnZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0 IGdldF92ZWxvY2l0eSAodWludCBwb2ludCwgb3V0IGZsb2F0IHZlbG9jaXR5X3gsIG91dCBmbG9h dCB2ZWxvY2l0eV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg dm9pZCBzZXRfbl90b3VjaF9wb2ludHMgKGludCBuYl9wb2ludHMpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJlc2hvbGRfdHJpZ2dlcl9kaXN0 YW5jZSAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2VkZ2UgKENsdXR0ZXIuR2VzdHVy ZVRyaWdnZXJFZGdlIGVkZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1 YmxpYyBpbnQgbl90b3VjaF9wb2ludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGZsb2F0IHRocmVz aG9sZF90cmlnZ2VyX2Rpc3RhbmNlX3ggeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGZsb2F0 IHRocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlX3kgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdlc3R1cmVUcmlnZ2Vy RWRnZSB0aHJlc2hvbGRfdHJpZ2dlcl9lZGdlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCBib29sIGdlc3R1cmVfYmVnaW4gKENsdXR0ZXIuQWN0b3IgYWN0b3Ip OworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZ2VzdHVyZV9jYW5jZWwgKENsdXR0ZXIu QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZ2VzdHVyZV9lbmQg KENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZ2Vz dHVyZV9wcm9ncmVzcyAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dy aWRfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CXB1YmxpYyBjbGFzcyBHcmlkTGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlv dXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEdyaWRMYXlvdXQgKCk7CisrCQlwdWJsaWMgdm9pZCBh dHRhY2ggKENsdXR0ZXIuQWN0b3IgY2hpbGQsIGludCBsZWZ0LCBpbnQgdG9wLCBpbnQgd2lkdGgs IGludCBoZWlnaHQpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX25leHRfdG8gKENsdXR0ZXIuQWN0 b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIENsdXR0ZXIuR3JpZFBvc2l0aW9uIHNp ZGUsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFj dG9yIGdldF9jaGlsZF9hdCAoaW50IGxlZnQsIGludCB0b3ApOworKwkJcHVibGljIGJvb2wgZ2V0 X2NvbHVtbl9ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9jb2x1bW5fc3BhY2lu ZyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAoKTsK KysJCXB1YmxpYyBib29sIGdldF9yb3dfaG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgdWludCBn ZXRfcm93X3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY29sdW1uIChpbnQgcG9z aXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X25leHRfdG8gKENsdXR0ZXIuQWN0b3Igc2li bGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSk7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRf cm93IChpbnQgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl9ob21vZ2VuZW91 cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX3NwYWNpbmcg KHVpbnQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0ZXIu T3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19ob21vZ2Vu ZW91cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X3NwYWNpbmcg KHVpbnQgc3BhY2luZyk7CisrCQlwdWJsaWMgYm9vbCBjb2x1bW5faG9tb2dlbmVvdXMgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIHVpbnQgY29sdW1uX3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24geyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIGJvb2wgcm93X2hvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50 IHJvd19zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JvdXBfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgR3Jv dXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwg Q2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIEdyb3VwICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBpbnQgZ2V0 X25fY2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5BY3RvciBnZXRfbnRoX2NoaWxkIChpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCByZW1vdmVfYWxsICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbWFnZV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgSW1hZ2UgOiBHTGli Lk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb250ZW50KiIpXQorKwkJcHVibGljIEltYWdl ICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF90ZXh0dXJlICgpOworKwkJ cHVibGljIGJvb2wgc2V0X2FyZWEgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSB1aW50 OFtdIGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCBDYWlyby5SZWN0YW5nbGVJ bnQgcmVjdCwgdWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYnl0ZXMgKEdMaWIuQnl0ZXMg ZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBwaXhlbF9mb3JtYXQsIHVpbnQgd2lkdGgsIHVpbnQgaGVp Z2h0LCB1aW50IHJvd19zdHJpZGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIGJvb2wg c2V0X2RhdGEgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSB1aW50OFtdIGRhdGEsIENv Z2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCB1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgdWlu dCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRf ZGV2aWNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBJbnB1dERldmljZSA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBJbnB1dERldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2Fzc29jaWF0ZWRfZGV2 aWNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIu SW5wdXRBeGlzIGdldF9heGlzICh1aW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYXhpc192YWx1ZSAoW0NDb2RlIChhcnJheV9sZW5n dGggPSBmYWxzZSldIGRvdWJsZVtdIGF4ZXMsIENsdXR0ZXIuSW5wdXRBeGlzIGF4aXMsIG91dCBk b3VibGUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBi b29sIGdldF9jb29yZHMgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZT8gc2VxdWVuY2UsIEdyYXBoZW5l LlBvaW50IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBp bnQgZ2V0X2RldmljZV9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLklucHV0TW9kZSBnZXRfZGV2aWNlX21vZGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2RldmljZV9uYW1l ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXZpY2Vfbm9kZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlw ZSBnZXRfZGV2aWNlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgYm9vbCBnZXRfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9ncmFiYmVkX2FjdG9yICgpOwor KwkJcHVibGljIHZpcnR1YWwgaW50IGdldF9ncm91cF9uX21vZGVzIChpbnQgZ3JvdXApOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2hhc19jdXJzb3Ig KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfa2V5 ICh1aW50IGluZGV4Xywgb3V0IHVpbnQga2V5dmFsLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUg bW9kaWZpZXJzKTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBnZXRfbWFw cGluZ19tb2RlICgpOworKwkJcHVibGljIGludCBnZXRfbW9kZV9zd2l0Y2hfYnV0dG9uX2dyb3Vw ICh1aW50IGJ1dHRvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGlj IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9tb2RpZmllcl9zdGF0ZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9uX2F4ZXMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBnZXRfbl9rZXlzICgpOworKwkJ cHVibGljIGludCBnZXRfbl9tb2RlX2dyb3VwcyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fcmlu Z3MgKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3N0cmlwcyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3BvaW50ZXJf YWN0b3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLlN0YWdlIGdldF9wb2ludGVyX3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfcHJvZHVjdF9pZCAoKTsK KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU2VhdCBnZXRfc2VhdCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLklucHV0 RGV2aWNlPiBnZXRfc2xhdmVfZGV2aWNlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIy IildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3ZlbmRvcl9pZCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBncmFiIChDbHV0dGVyLkFjdG9y IGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgaXNfZ3JvdXBlZCAoQ2x1dHRlci5JbnB1 dERldmljZSBvdGhlcl9kZXZpY2UpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBpc19tb2RlX3N3 aXRjaF9idXR0b24gKHVpbnQgZ3JvdXAsIHVpbnQgYnV0dG9uKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGtleWNvZGVfdG9fZXZkZXYgKHVp bnQgaGFyZHdhcmVfa2V5Y29kZSwgdWludCBldmRldl9rZXljb2RlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIHNlcXVlbmNl X2dldF9ncmFiYmVkX2FjdG9yIChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNlcXVlbmNlX2dyYWIg KENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSwgQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2VxdWVuY2VfdW5n cmFiIChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2VuYWJsZWQgKGJvb2wgZW5hYmxlZCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5ICh1aW50 IGluZGV4XywgdWludCBrZXl2YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfbWFwcGluZ19tb2RlIChDbHV0dGVyLklucHV0RGV2aWNlTWFwcGlu ZyBtYXBwaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCB1bmdyYWIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9p ZCB1cGRhdGVfZnJvbV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgYm9vbCB1cGRhdGVfc3Rh Z2UpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2Zyb21f dG9vbCAoQ2x1dHRlci5JbnB1dERldmljZVRvb2wgdG9vbCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJhY2tl bmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5J bnB1dE1vZGUgZGV2aWNlX21vZGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmlu ZyBkZXZpY2Vfbm9kZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNlX3R5cGUgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IGJvb2wgZW5hYmxlZCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgYm9vbCBoYXNfY3Vyc29yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGlu dCBpZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZU1h cHBpbmcgbWFwcGluZ19tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjYiKV0KKysJCXB1YmxpYyB1aW50IG5fYXhlcyB7IGdldDsgfQorKwkJcHVibGljIGludCBuX21v ZGVfZ3JvdXBzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBpbnQgbl9yaW5ncyB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgaW50IG5fc3RyaXBzIHsgZ2V0OyBjb25zdHJ1Y3Q7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHN0cmluZyBuYW1lIHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgc3RyaW5nIHByb2R1Y3RfaWQgeyBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgc3RyaW5nIHZl bmRvcl9pZCB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2Rldmlj ZV90b29sX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dERldmlj ZVRvb2wgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXREZXZpY2VUb29sICgpOworKwkJcHVibGljIHVp bnQ2NCBnZXRfaWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGlj IHVpbnQ2NCBnZXRfc2VyaWFsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVG9vbFR5cGUgZ2V0X3Rvb2xfdHlwZSAoKTsKKysJ CXB1YmxpYyB1aW50NjQgaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHVpbnQ2NCBz ZXJpYWwgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgQ2x1dHRlci5JbnB1dERldmljZVRvb2xUeXBlIHR5cGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9mb2N1c19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJz dHJhY3QgY2xhc3MgSW5wdXRGb2N1cyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dEZvY3VzICgpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29tbWl0X3RleHQgKHN0cmlu ZyB0ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlbGV0ZV9z dXJyb3VuZGluZyAodWludCBvZmZzZXQsIHVpbnQgbGVuKTsKKysJCXB1YmxpYyBib29sIGZpbHRl cl9rZXlfZXZlbnQgKENsdXR0ZXIuS2V5RXZlbnQga2V5KTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX2luIChDbHV0dGVyLklucHV0TWV0aG9kIGlucHV0X21l dGhvZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19vdXQg KCk7CisrCQlwdWJsaWMgYm9vbCBpc19mb2N1c2VkICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgcmVxdWVzdF9zdXJyb3VuZGluZyAoKTsKKysJCXB1YmxpYyB2b2lk IHJlc2V0ICgpOworKwkJcHVibGljIHZvaWQgc2V0X2Nhbl9zaG93X3ByZWVkaXQgKGJvb2wgY2Fu X3Nob3dfcHJlZWRpdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9oaW50cyAoQ2x1dHRl ci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgaGludCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVu dF9wdXJwb3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgcHVycG9zZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY3Vyc29yX2xvY2F0aW9uIChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVi bGljIHZvaWQgc2V0X2lucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0ZSBz dGF0ZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfcHJlZWRp dF90ZXh0IChzdHJpbmcgcHJlZWRpdCwgdWludCBjdXJzb3IpOworKwkJcHVibGljIHZvaWQgc2V0 X3N1cnJvdW5kaW5nIChzdHJpbmcgdGV4dCwgdWludCBjdXJzb3IsIHVpbnQgYW5jaG9yKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfaW5wdXRfbWV0aG9kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0 cmFjdCBjbGFzcyBJbnB1dE1ldGhvZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dE1ldGhvZCAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGZpbHRlcl9rZXlfZXZlbnQg KENsdXR0ZXIuRXZlbnQga2V5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfaW4gKENs dXR0ZXIuSW5wdXRGb2N1cyBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX291 dCAoKTsKKysJCXB1YmxpYyB2b2lkIGZvcndhcmRfa2V5ICh1aW50MzIga2V5dmFsLCB1aW50MzIg a2V5Y29kZSwgdWludDMyIHN0YXRlLCB1aW50NjQgdGltZV8sIGJvb2wgcHJlc3MpOworKwkJcHVi bGljIHZvaWQgbm90aWZ5X2tleV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgYm9vbCBmaWx0 ZXJlZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCByZXNldCAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9jdXJzb3JfbG9jYXRp b24gKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcGFuZWxf c3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRlKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9wcmVlZGl0X3RleHQgKHN0cmluZz8gcHJlZWRpdCwgdWludCBjdXJzb3IpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X3N1cnJvdW5kaW5nIChzdHJpbmcgdGV4 dCwgdWludCBjdXJzb3IsIHVpbnQgYW5jaG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIHVwZGF0ZV9jb250ZW50X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhp bnRGbGFncyBoaW50KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVw ZGF0ZV9jb250ZW50X3B1cnBvc2UgKENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3Nl KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgY2FuX3Nob3dfcHJlZWRp dCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LklucHV0Q29udGVudEhpbnRGbGFncyBjb250ZW50X2hpbnRzIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBj b250ZW50X3B1cnBvc2UgeyBnZXQ7IHNldDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgY29tbWl0IChzdHJpbmcgdGV4dCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg Y3Vyc29yX2xvY2F0aW9uX2NoYW5nZWQgKEdyYXBoZW5lLlJlY3Qgb2JqZWN0KTsKKysJCVtIYXNF bWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRlbGV0ZV9zdXJyb3VuZGluZyAodWludCBv ZmZzZXQsIHVpbnQgbGVuKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBpbnB1dF9wYW5lbF9zdGF0 ZSAoQ2x1dHRlci5JbnB1dFBhbmVsU3RhdGUgb2JqZWN0KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJ cHVibGljIHNpZ25hbCB2b2lkIHJlcXVlc3Rfc3Vycm91bmRpbmcgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2ludGVydmFsX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJcHVibGljIGNsYXNzIEludGVydmFsIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBDbHV0dGVy LlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHVibGljIEludGVydmFsIChHTGliLlR5cGUgZ3R5cGUsIC4uLik7CisrCQlwdWJsaWMg Q2x1dHRlci5JbnRlcnZhbCBjbG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IGNvbXB1dGUgKGRvdWJsZSBmYWN0b3IpOwor KwkJcHVibGljIHZpcnR1YWwgYm9vbCBjb21wdXRlX3ZhbHVlIChkb3VibGUgZmFjdG9yLCBvdXQg R0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBnZXRfZmluYWxfdmFsdWUg KCk7CisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBnZXRfaW5pdGlhbF92YWx1ZSAoKTsKKysJCXB1Ymxp YyB2b2lkIGdldF9pbnRlcnZhbCAoLi4uKTsKKysJCXB1YmxpYyBHTGliLlR5cGUgZ2V0X3ZhbHVl X3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wg aXNfdmFsaWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBwZWVrX2ZpbmFsX3Zh bHVlICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5WYWx1ZT8gcGVla19pbml0aWFsX3ZhbHVl ICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlZ2lzdGVyX3Byb2dyZXNzX2Z1bmMgKEdMaWIu VHlwZSB2YWx1ZV90eXBlLCBDbHV0dGVyLlByb2dyZXNzRnVuYyBmdW5jKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmluYWwgKC4uLik7CisrCQlw dWJsaWMgdm9pZCBzZXRfZmluYWxfdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9pbml0aWFsICguLi4pOwor KwkJcHVibGljIHZvaWQgc2V0X2luaXRpYWxfdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJ cHVibGljIHZvaWQgc2V0X2ludGVydmFsICguLi4pOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCB2 YWxpZGF0ZSAoR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEludGVydmFsLndpdGhfdmFsdWVzIChHTGli LlR5cGUgZ3R5cGUsIEdMaWIuVmFsdWU/IGluaXRpYWwsIEdMaWIuVmFsdWU/IGZpbmFsKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBHTGliLlZhbHVlIGZpbmFsIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHTGliLlZh bHVlIGluaXRpYWwgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIEdMaWIuVHlwZSB2YWx1 ZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBh Y3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEtleUV2ZW50 IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRl dmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWlu dDE2IGhhcmR3YXJlX2tleWNvZGU7CisrCQlwdWJsaWMgdWludCBrZXl2YWw7CisrCQlwdWJsaWMg Q2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7Cisr CQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsK KysJCXB1YmxpYyB1bmljaGFyIHVuaWNvZGVfdmFsdWU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleWZy YW1lX3RyYW5zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJcHVibGljIGNsYXNzIEtleWZyYW1lVHJhbnNpdGlvbiA6IENsdXR0ZXIuUHJvcGVydHlU cmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclRyYW5zaXRpb24qIildCisrCQlwdWJs aWMgS2V5ZnJhbWVUcmFuc2l0aW9uIChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMg dm9pZCBjbGVhciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9rZXlfZnJhbWUgKHVpbnQgaW5kZXhf LCBvdXQgZG91YmxlIGtleSwgb3V0IENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlLCBvdXQgR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdWludCBnZXRfbl9rZXlfZnJhbWVzICgpOworKwkJ cHVibGljIHZvaWQgc2V0X2tleV9mcmFtZSAodWludCBpbmRleF8sIGRvdWJsZSBrZXksIENsdXR0 ZXIuQW5pbWF0aW9uTW9kZSBtb2RlLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9rZXlfZnJhbWVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX2tleV9mcmFt ZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIp XSBkb3VibGVbXSBrZXlfZnJhbWVzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tb2RlcyAoW0NDb2Rl IChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9tb2RlcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUs IGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIENsdXR0ZXIuQW5pbWF0aW9uTW9kZVtdIG1v ZGVzKTsKKysJCXB1YmxpYyB2b2lkIHNldF92YWx1ZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2Nu YW1lID0gIm5fdmFsdWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5 cGUgPSAiZ3VpbnQiKV0gR0xpYi5WYWx1ZVtdIHZhbHVlcyk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tl eW1hcF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgS2V5bWFwIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIEtleW1hcCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2V0X2NhcHNf bG9ja19zdGF0ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIFBhbmdvLkRpcmVjdGlvbiBnZXRfZGly ZWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRfbnVtX2xvY2tfc3RhdGUgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc3RhdGVfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfbGF5ZXJfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTGF5ZXJOb2RlIDog Q2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBMYXllck5vZGUg KENvZ2wuTWF0cml4IHByb2plY3Rpb24sIENhaXJvLlJlY3RhbmdsZSB2aWV3cG9ydCwgZmxvYXQg d2lkdGgsIGZsb2F0IGhlaWdodCwgdWludDggb3BhY2l0eSk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2xh eW91dF9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJcHVibGljIGFic3RyYWN0IGNsYXNzIExheW91dE1hbmFnZXIgOiBHTGliLkluaXRpYWxseVVu b3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIExheW91dE1hbmFnZXIgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFsbG9j YXRlIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3JCb3ggYWxsb2Nh dGlvbiwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJcHVibGljIHZvaWQgY2hp bGRfZ2V0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3Is IC4uLik7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXRfcHJvcGVydHkgKENsdXR0ZXIuQ29udGFp bmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvciwgc3RyaW5nIHByb3BlcnR5X25hbWUs IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0IChDbHV0dGVyLkNv bnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlwdWJsaWMg dm9pZCBjaGlsZF9zZXRfcHJvcGVydHkgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1 dHRlci5BY3RvciBhY3Rvciwgc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5MYXlv dXRNZXRhIGNyZWF0ZV9jaGlsZF9tZXRhIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENs dXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgZW5kX2FuaW1hdGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZp bmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBuYW1lKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCBkb3VibGUgZ2V0X2FuaW1hdGlvbl9wcm9ncmVzcyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWV0YSBn ZXRfY2hpbGRfbWV0YSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9y IGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBHTGliLlR5cGUgZ2V0 X2NoaWxkX21ldGFfdHlwZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJl ZF9oZWlnaHQgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgZmxvYXQgZm9yX3dpZHRoLCBv dXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQgbmF0X2hlaWdodF9wKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF93aWR0aCAoQ2x1dHRlci5Db250YWluZXIgY29u dGFpbmVyLCBmbG9hdCBmb3JfaGVpZ2h0LCBvdXQgZmxvYXQgbWluX3dpZHRoX3AsIG91dCBmbG9h dCBuYXRfd2lkdGhfcCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAwLjEsIGFycmF5 X2xlbmd0aF90eXBlID0gImd1aW50IildCisrCQlwdWJsaWMgR0xpYi5QYXJhbVNwZWNbXSBsaXN0 X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9jb250YWlu ZXIgKENsdXR0ZXIuQ29udGFpbmVyPyBjb250YWluZXIpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBsYXlvdXRfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfbGF5b3V0X21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgTGF5b3V0TWV0YSA6IENsdXR0ZXIuQ2hpbGRN ZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBMYXlvdXRNZXRhICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRN YW5hZ2VyIGdldF9tYW5hZ2VyICgpOworKwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBt YW5hZ2VyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIs IGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX21hcmdp bl9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIGNsYXNzIE1hcmdpbiB7CisrCQlwdWJsaWMgZmxvYXQgYm90dG9tOworKwkJ cHVibGljIGZsb2F0IGxlZnQ7CisrCQlwdWJsaWMgZmxvYXQgcmlnaHQ7CisrCQlwdWJsaWMgZmxv YXQgdG9wOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHVibGljIE1hcmdpbiAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLk1hcmdpbiBjb3B5ICgpOworKwkJ cHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIE1vdGlvbkV2ZW50IDog Q2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3Mg ZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX29mZnNjcmVlbl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgT2Zmc2NyZWVu RWZmZWN0IDogQ2x1dHRlci5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9mZnNjcmVlbkVmZmVjdCAoKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIENvZ2wuSGFuZGxlIGNyZWF0ZV90ZXh0dXJlIChmbG9hdCB3aWR0aCwgZmxvYXQg aGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgYm9vbCBn ZXRfdGFyZ2V0X3JlY3QgKG91dCB1bm93bmVkIEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNCIsIHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3RhcmdldF9zaXplIChvdXQgZmxvYXQgd2lk dGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGljIHZp cnR1YWwgdm9pZCBwYWludF90YXJnZXQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRl eHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWdlX3R1cm5fZWZmZWN0X2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFBhZ2VUdXJuRWZmZWN0 IDogQ2x1dHRlci5EZWZvcm1FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBQYWdlVHVy bkVmZmVjdCAoZG91YmxlIHBlcmlvZCwgZG91YmxlIGFuZ2xlLCBmbG9hdCByYWRpdXMpOworKwkJ cHVibGljIGRvdWJsZSBnZXRfYW5nbGUgKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9wZXJpb2Qg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JhZGl1cyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9h bmdsZSAoZG91YmxlIGFuZ2xlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wZXJpb2QgKGRvdWJsZSBw ZXJpb2QpOworKwkJcHVibGljIHZvaWQgc2V0X3JhZGl1cyAoZmxvYXQgcmFkaXVzKTsKKysJCXB1 YmxpYyBkb3VibGUgYW5nbGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGRvdWJsZSBwZXJpb2Qg eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHJhZGl1cyB7IGdldDsgc2V0OyB9CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgcmVmX2Z1 bmN0aW9uID0gImNsdXR0ZXJfcGFpbnRfY29udGV4dF9yZWYiLCB0eXBlX2lkID0gImNsdXR0ZXJf cGFpbnRfY29udGV4dF9nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJfcGFp bnRfY29udGV4dF91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBhaW50Q29u dGV4dCB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHVub3duZWQgQ29n bC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwb3BfZnJh bWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwdXNoX2ZyYW1lYnVmZmVyIChDb2dsLkZyYW1l YnVmZmVyIGZyYW1lYnVmZmVyKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnRDb250 ZXh0IEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf cGFpbnRfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQYWludE5vZGUgKCk7CisrCQlw dWJsaWMgdm9pZCBhZGRfY2hpbGQgKENsdXR0ZXIuUGFpbnROb2RlIGNoaWxkKTsKKysJCXB1Ymxp YyB2b2lkIGFkZF9tdWx0aXRleHR1cmVfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3Qs IGZsb2F0IHRleHRfY29vcmRzLCB1aW50IHRleHRfY29vcmRzX2xlbik7CisrCQlwdWJsaWMgdm9p ZCBhZGRfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3QpOworKwkJcHVibGljIHZvaWQg YWRkX3RleHR1cmVfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3QsIGZsb2F0IHhfMSwg ZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlwdWJsaWMgdW5vd25lZCBDb2ds LkZyYW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHBhaW50IChD bHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuUGFpbnROb2RlIEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbmFtZSAoc3RyaW5n IG5hbWUpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVk X2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRl cl9wYWludF92b2x1bWVfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFBhaW50Vm9sdW1lIHsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlBhaW50Vm9sdW1lIGNvcHkgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9kZXB0aCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVp Z2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0 X29yaWdpbiAob3V0IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aCAoZmxvYXQg ZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgc2V0 X2Zyb21fYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWdpbiAo R3JhcGhlbmUuUG9pbnQzRCBvcmlnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3dpZHRoIChmbG9hdCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCB1bmlvbiAoQ2x1dHRlci5QYWludFZvbHVtZSBh bm90aGVyX3B2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCB1bmlvbl9ib3ggKENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFu X2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlw dWJsaWMgY2xhc3MgUGFuQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24q IildCisrCQlwdWJsaWMgUGFuQWN0aW9uICgpOworKwkJcHVibGljIGRvdWJsZSBnZXRfYWNjZWxl cmF0aW9uX2ZhY3RvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X2NvbnN0cmFpbmVkX21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZs b2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2Rl Y2VsZXJhdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pbnRlcnBvbGF0ZSAoKTsKKysJCXB1 YmxpYyB2b2lkIGdldF9pbnRlcnBvbGF0ZWRfY29vcmRzIChvdXQgZmxvYXQgaW50ZXJwb2xhdGVk X3gsIG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2ludGVy cG9sYXRlZF9kZWx0YSAob3V0IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdm9pZCBnZXRfbW90aW9uX2Nv b3JkcyAodWludCBwb2ludCwgb3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9uX3kp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbW90 aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRh X3kpOworKwkJcHVibGljIENsdXR0ZXIuUGFuQXhpcyBnZXRfcGFuX2F4aXMgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfYWNjZWxlcmF0aW9uX2ZhY3RvciAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJs aWMgdm9pZCBzZXRfZGVjZWxlcmF0aW9uIChkb3VibGUgcmF0ZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfaW50ZXJwb2xhdGUgKGJvb2wgc2hvdWxkX2ludGVycG9sYXRlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9wYW5fYXhpcyAoQ2x1dHRlci5QYW5BeGlzIGF4aXMpOworKwkJcHVibGljIGRvdWJsZSBh Y2NlbGVyYXRpb25fZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBkb3VibGUgZGVjZWxl cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGludGVycG9sYXRlIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlBhbkF4aXMgcGFuX2F4aXMgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgcGFuIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBi b29sIGlzX2ludGVycG9sYXRlZCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYW5f c3RvcHBlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInBhcmFt X3VuaXRzIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhcmFtX3VuaXRzX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBQYXJhbVNwZWNVbml0IDogR0xpYi5QYXJhbVNwZWMgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBhcmFtU3Bl Y1VuaXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgUGF0aCA6IEdMaWIuSW5pdGlhbGx5 VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwdWJsaWMgUGF0aCAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jYWlyb19wYXRoIChDYWlyby5Q YXRoIGNwYXRoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jbG9zZSAoKTsKKysJCXB1YmxpYyB2b2lk IGFkZF9jdXJ2ZV90byAoaW50IHhfMSwgaW50IHlfMSwgaW50IHhfMiwgaW50IHlfMiwgaW50IHhf MywgaW50IHlfMyk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbGluZV90byAoaW50IHgsIGludCB5KTsK KysJCXB1YmxpYyB2b2lkIGFkZF9tb3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZv aWQgYWRkX25vZGUgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgdm9pZCBhZGRf cmVsX2N1cnZlX3RvIChpbnQgeF8xLCBpbnQgeV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQgeF8z LCBpbnQgeV8zKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfbGluZV90byAoaW50IHgsIGludCB5 KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfbW92ZV90byAoaW50IHgsIGludCB5KTsKKysJCXB1 YmxpYyBib29sIGFkZF9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJcHVibGljIHZvaWQgY2xlYXIg KCk7CisrCQlwdWJsaWMgdm9pZCBAZm9yZWFjaCAoQ2x1dHRlci5QYXRoQ2FsbGJhY2sgY2FsbGJh Y2spOworKwkJcHVibGljIHN0cmluZyBnZXRfZGVzY3JpcHRpb24gKCk7CisrCQlwdWJsaWMgdWlu dCBnZXRfbGVuZ3RoICgpOworKwkJcHVibGljIHVpbnQgZ2V0X25fbm9kZXMgKCk7CisrCQlwdWJs aWMgQ2x1dHRlci5QYXRoTm9kZSBnZXRfbm9kZSAodWludCBpbmRleF8pOworKwkJcHVibGljIEdM aWIuU0xpc3Q8d2VhayBDbHV0dGVyLlBhdGhOb2RlPz4gZ2V0X25vZGVzICgpOworKwkJcHVibGlj IHVpbnQgZ2V0X3Bvc2l0aW9uIChkb3VibGUgcHJvZ3Jlc3MsIG91dCBDbHV0dGVyLktub3QgcG9z aXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X25vZGUgKGludCBpbmRleF8sIENsdXR0ZXIu UGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfbm9kZSAodWludCBpbmRleF8p OworKwkJcHVibGljIHZvaWQgcmVwbGFjZV9ub2RlICh1aW50IGluZGV4XywgQ2x1dHRlci5QYXRo Tm9kZSBub2RlKTsKKysJCXB1YmxpYyBib29sIHNldF9kZXNjcmlwdGlvbiAoc3RyaW5nIHN0cik7 CisrCQlwdWJsaWMgdm9pZCB0b19jYWlyb19wYXRoIChDYWlyby5Db250ZXh0IGNyKTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQYXRoLndp dGhfZGVzY3JpcHRpb24gKHN0cmluZyBkZXNjKTsKKysJCXB1YmxpYyBzdHJpbmcgZGVzY3JpcHRp b24geyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgbGVuZ3RoIHsgZ2V0OyB9Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3BhdGhfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBjbGFzcyBQYXRoQ29uc3RyYWludCA6IENsdXR0 ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBQYXRoQ29uc3RyYWlu dCAoQ2x1dHRlci5QYXRoPyBwYXRoLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIGZsb2F0IGdl dF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhdGggZ2V0X3BhdGggKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2V0IChmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZv aWQgc2V0X3BhdGggKENsdXR0ZXIuUGF0aD8gcGF0aCk7CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0 IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlBhdGggcGF0aCB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbm9kZV9yZWFjaGVkIChDbHV0dGVyLkFjdG9yIGFjdG9y LCB1aW50IGluZGV4KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9waWNrX2NvbnRleHRfcmVmIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF9nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0 aW9uID0gImNsdXR0ZXJfcGlja19jb250ZXh0X3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJs aWMgY2xhc3MgUGlja0NvbnRleHQgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuUGlja0NvbnRleHQgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lk IHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waXBlbGluZV9ub2RlX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBQaXBlbGluZU5v ZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGlwZWxpbmVOb2RlICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9wcm9wZXJ0eV90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBQcm9wZXJ0eVRyYW5zaXRpb24gOiBDbHV0dGVy LlRyYW5zaXRpb24sIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1 YmxpYyBQcm9wZXJ0eVRyYW5zaXRpb24gKHN0cmluZz8gcHJvcGVydHlfbmFtZSk7CisrCQlwdWJs aWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Byb3BlcnR5X25hbWUgKCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcHJvcGVydHlfbmFtZSAoc3RyaW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyBzdHJp bmcgcHJvcGVydHlfbmFtZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JlY3Rhbmds ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBj bGFzcyBSZWN0YW5nbGUgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIu QW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIFJlY3RhbmdsZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfYm9yZGVyX2NvbG9yICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIw LjIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9ib3JkZXJfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ib3Jk ZXJfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9ib3JkZXJfd2lkdGggKHVpbnQgd2lkdGgpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIFJlY3RhbmdsZS53aXRoX2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1 YmxpYyBDbHV0dGVyLkNvbG9yIGJvcmRlcl9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg dWludCBib3JkZXJfd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig Y29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9v bCBoYXNfYm9yZGVyIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcm9vdF9ub2RlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBSb290Tm9kZSA6IENsdXR0ZXIuUGFpbnROb2Rl IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgUm9vdE5vZGUgKENvZ2wuRnJhbWVidWZmZXIg ZnJhbWVidWZmZXIsIENsdXR0ZXIuQ29sb3IgY2xlYXJfY29sb3IsIENvZ2wuQnVmZmVyQml0IGNs ZWFyX2ZsYWdzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2FjdGlvbl9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgUm90YXRlQWN0 aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgUm90 YXRlQWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgcm90YXRlIChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBkb3VibGUgYW5nbGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JpcHRf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgY2xh c3MgU2NyaXB0IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNjcmlwdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9zZWFyY2hfcGF0aHMgKFtDQ29kZSAoYXJyYXlf bGVuZ3RoX2NuYW1lID0gIm5fcGF0aHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9s ZW5ndGhfdHlwZSA9ICJnc2l6ZSIpXSBzdHJpbmdbXSBwYXRocyk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIHZvaWQgYWRkX3N0YXRlcyAoc3RyaW5nPyBuYW1lLCBDbHV0dGVyLlN0YXRl IHN0YXRlKTsKKysJCXB1YmxpYyB2b2lkIGNvbm5lY3Rfc2lnbmFscyAodm9pZCogdXNlcl9kYXRh KTsKKysJCXB1YmxpYyB2b2lkIGNvbm5lY3Rfc2lnbmFsc19mdWxsIChDbHV0dGVyLlNjcmlwdENv bm5lY3RGdW5jIGZ1bmMpOworKwkJcHVibGljIHZvaWQgZW5zdXJlX29iamVjdHMgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfb2JqZWN0IChzdHJpbmcgbmFtZSk7CisrCQlw dWJsaWMgaW50IGdldF9vYmplY3RzICguLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuU3RhdGUgZ2V0X3N0YXRlcyAoc3RyaW5nPyBuYW1lKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Ry YW5zbGF0aW9uX2RvbWFpbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRfdHlw ZV9mcm9tX25hbWUgKHN0cmluZyB0eXBlX25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIEdMaWIuT2JqZWN0PiBsaXN0X29iamVjdHMg KCk7CisrCQlwdWJsaWMgdWludCBsb2FkX2Zyb21fZGF0YSAoc3RyaW5nIGRhdGEsIHNzaXplX3Qg bGVuZ3RoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyB1aW50IGxvYWRfZnJvbV9maWxl IChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGxvYWRfZnJvbV9yZXNvdXJjZSAoc3RyaW5nIHJl c291cmNlX3BhdGgpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHN0cmluZyBsb29rdXBfZmlsZW5hbWUgKHN0cmluZyBmaWxlbmFtZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RyYW5z bGF0aW9uX2RvbWFpbiAoc3RyaW5nPyBkb21haW4pOworKwkJcHVibGljIHZvaWQgdW5tZXJnZV9v YmplY3RzICh1aW50IG1lcmdlX2lkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IHN0cmluZyBmaWxlbmFtZSB7IG93bmVkIGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgYm9vbCBmaWxlbmFtZV9zZXQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgc3RyaW5nIHRyYW5zbGF0aW9uX2RvbWFpbiB7IGdldDsgc2V0 OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgU2Nyb2xsQWN0b3IgOiBDbHV0 dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5D b250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgU2Ny b2xsQWN0b3IgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxNb2RlIGdldF9zY3JvbGxfbW9k ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNjcm9sbF90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQgcG9p bnQpOworKwkJcHVibGljIHZvaWQgc2Nyb2xsX3RvX3JlY3QgKEdyYXBoZW5lLlJlY3QgcmVjdCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX21vZGUgKENsdXR0ZXIuU2Nyb2xsTW9kZSBtb2Rl KTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbE1vZGUgc2Nyb2xsX21vZGUgeyBnZXQ7IHNldDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgU2Nyb2xsRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJ CXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbjsKKysJ CXB1YmxpYyBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGZpbmlzaF9mbGFnczsKKysJCXB1Ymxp YyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Nyb2xs X3NvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJs aWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2VhdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgYWJzdHJhY3QgY2xhc3MgU2VhdCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTZWF0ICgpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXBwbHlfa2JkX2ExMXlfc2V0dGluZ3Mg KENsdXR0ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgYmVsbF9ub3RpZnkgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbXByZXNzX21vdGlv biAoQ2x1dHRlci5FdmVudCBldmVudCwgQ2x1dHRlci5FdmVudCB0b19kaXNjYXJkKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvcHlfZXZlbnRfZGF0YSAoQ2x1dHRl ci5FdmVudCBzcmMsIENsdXR0ZXIuRXZlbnQgZGVzdCk7CisrCQlwdWJsaWMgdmlydHVhbCBDbHV0 dGVyLlZpcnR1YWxJbnB1dERldmljZSBjcmVhdGVfdmlydHVhbF9kZXZpY2UgKENsdXR0ZXIuSW5w dXREZXZpY2VUeXBlIGRldmljZV90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9hMTF5X3N0 YXRlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZnJlZV9ldmVu dF9kYXRhIChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF9rYmRfYTEx eV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGlj IHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9rZXlib2FyZCAoKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5LZXltYXAgZ2V0X2tleW1hcCAoKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfcG9pbnRlciAo KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludGVyX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuUG9p bnRlckExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCBDbHV0dGVyLlZp cnR1YWxEZXZpY2VUeXBlIGdldF9zdXBwb3J0ZWRfdmlydHVhbF9kZXZpY2VfdHlwZXMgKCk7Cisr CQlwdWJsaWMgdmlydHVhbCBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLklucHV0RGV2aWNlPiBsaXN0 X2RldmljZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2JkX2ExMXlfc2V0dGluZ3MgKENsdXR0 ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludGVy X2ExMXlfZHdlbGxfY2xpY2tfdHlwZSAoQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBl IGNsaWNrX3R5cGUpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTExeV9zZXR0aW5ncyAo Q2x1dHRlci5Qb2ludGVyQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgd2FycF9wb2ludGVyIChpbnQgeCwgaW50IHkpOworKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgQ2x1dHRlci5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRldmljZV9hZGRlZCAoQ2x1dHRlci5JbnB1dERl dmljZSBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRldmljZV9yZW1vdmVkIChDbHV0 dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2JkX2ExMXlf ZmxhZ3NfY2hhbmdlZCAodWludCBzZXR0aW5nc19mbGFncywgdWludCBjaGFuZ2VkX21hc2spOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIGtiZF9hMTF5X21vZHNfc3RhdGVfY2hhbmdlZCAodWludCBs YXRjaGVkX21hc2ssIHVpbnQgbG9ja2VkX21hc2spOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHB0 cl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGVfY2hhbmdlZCAoQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxs Q2xpY2tUeXBlIGNsaWNrX3R5cGUpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHB0cl9hMTF5X3Rp bWVvdXRfc3RhcnRlZCAoQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UsIENsdXR0ZXIuUG9pbnRl ckExMXlUaW1lb3V0VHlwZSB0aW1lb3V0X3R5cGUsIHVpbnQgZGVsYXkpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIHB0cl9hMTF5X3RpbWVvdXRfc3RvcHBlZCAoQ2x1dHRlci5JbnB1dERldmljZSBk ZXZpY2UsIENsdXR0ZXIuUG9pbnRlckExMXlUaW1lb3V0VHlwZSB0aW1lb3V0X3R5cGUsIGJvb2wg Y2xpY2tlZCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdG9vbF9jaGFuZ2VkIChDbHV0dGVyLklu cHV0RGV2aWNlIG9iamVjdCwgQ2x1dHRlci5JbnB1dERldmljZVRvb2wgcDApOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9zZXR0aW5nc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBjbGFzcyBTZXR0aW5ncyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTZXR0aW5ncyAo KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlNldHRpbmdzIGdldF9kZWZhdWx0 ICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZG5kX2Ry YWdfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGludCBkb3VibGVfY2xpY2tfZGlzdGFuY2UgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGRvdWJsZV9jbGlja190aW1lIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2FudGlhbGlhcyB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZm9udF9kcGkg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZv bnRfaGludF9zdHlsZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBpbnQgZm9udF9oaW50aW5nIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBmb250X25hbWUgeyBvd25lZCBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfc3VicGl4ZWxfb3Jk ZXIgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg dWludCBmb250Y29uZmlnX3RpbWVzdGFtcCB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGxvbmdfcHJlc3Nf ZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg dWludCBwYXNzd29yZF9oaW50X3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgaW50IHVuc2NhbGVkX2ZvbnRfZHBpIHsgc2V0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyIHsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfc2hhZGVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVl bkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIFNoYWRlckVmZmVjdCAoQ2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlKTsKKysJ CXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF9wcm9ncmFtICgpOworKwkJcHVibGljIHVu b3duZWQgQ29nbC5IYW5kbGUgZ2V0X3NoYWRlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCBzdHJpbmcgZ2V0X3N0YXRpY19zaGFkZXJfc291cmNlICgpOworKwkJcHVibGlj IGJvb2wgc2V0X3NoYWRlcl9zb3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwkJcHVibGljIHZvaWQg c2V0X3VuaWZvcm1fdmFsdWUgKHN0cmluZyBuYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2hhZGVyVHlwZSBzaGFkZXJfdHlw ZSB7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfZmxvYXRfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlckZsb2F0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJGbG9hdCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfc2hhZGVyX2ludF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg U2hhZGVySW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBTaGFkZXJJbnQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9tYXRy aXhfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlck1hdHJpeCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhZGVy TWF0cml4ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zbmFwX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgY2xhc3MgU25hcENvbnN0 cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisrCQlwdWJsaWMg U25hcENvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5TbmFwRWRnZSBm cm9tX2VkZ2UsIENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSwgZmxvYXQgb2Zmc2V0KTsKKysJCXB1 YmxpYyB2b2lkIGdldF9lZGdlcyAob3V0IENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBvdXQg Q2x1dHRlci5TbmFwRWRnZSB0b19lZGdlKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfb2Zmc2V0ICgp OworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJcHVi bGljIHZvaWQgc2V0X2VkZ2VzIChDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwgQ2x1dHRlci5T bmFwRWRnZSB0b19lZGdlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vZmZzZXQgKGZsb2F0IG9mZnNl dCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2Vk Z2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBnZXQ7 IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdldDsg c2V0IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRl ci5TbmFwRWRnZSB0b19lZGdlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3N0YWdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJ cHVibGljIGNsYXNzIFN0YWdlIDogQ2x1dHRlci5Hcm91cCwgQXRrLkltcGxlbWVudG9yLCBDbHV0 dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl ckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIFN0YWdl ICgpOworKwkJcHVibGljIGJvb2wgY2FwdHVyZSAoYm9vbCBwYWludCwgQ2Fpcm8uUmVjdGFuZ2xl SW50IHJlY3QsIENsdXR0ZXIuQ2FwdHVyZSBjYXB0dXJlcywgaW50IG5fY2FwdHVyZXMpOworKwkJ cHVibGljIHZvaWQgY2FwdHVyZV9pbnRvIChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJbnQg cmVjdCwgdWludDggZGF0YSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfc3RhZ2VfZXZl bnQiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBib29sIGVtaXRf ZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9jdXJyZW50ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3JlZHJh dyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGVuc3Vy ZV92aWV3cG9ydCAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWV6ZV91cGRhdGVzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2FjY2VwdF9mb2N1cyAo KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2FjdG9yX2F0X3BvcyAoQ2x1 dHRlci5QaWNrTW9kZSBwaWNrX21vZGUsIGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIGJv b2wgZ2V0X2NhcHR1cmVfZmluYWxfc2l6ZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QsIGludCB3 aWR0aCwgaW50IGhlaWdodCwgZmxvYXQgc2NhbGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGdldF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5T dGFnZSBnZXRfZGVmYXVsdCAoKTsKKysJCXB1YmxpYyBpbnQ2NCBnZXRfZnJhbWVfY291bnRlciAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyB2b2lkIGdldF9taW5pbXVtX3NpemUgKG91dCB1aW50IHdpZHRoLCBvdXQgdWlu dCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wg Z2V0X21vdGlvbl9ldmVudHNfZW5hYmxlZCAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLlBlcnNwZWN0 aXZlIGdldF9wZXJzcGVjdGl2ZSAoKTsKKysJCXB1YmxpYyBDYWlyby5SZWdpb24gZ2V0X3JlZHJh d19jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wg Z2V0X3Rocm90dGxlX21vdGlvbl9ldmVudHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40 IildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RpdGxlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3VzZV9hbHBoYSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIGhpZGVfY3Vyc29yICgpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi LCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGlzX2RlZmF1bHQgKCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgdWludDhbXSByZWFkX3BpeGVscyAoaW50 IHgsIGludCB5LCBpbnQgd2lkdGggPSAtMSwgaW50IGhlaWdodCA9IC0xKTsKKysJCVtDQ29kZSAo Y25hbWUgPSAiY2x1dHRlcl9yZWRyYXciKV0KKysJCXB1YmxpYyB2b2lkIHJlZHJhdyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hY2NlcHRfZm9j dXMgKGJvb2wgYWNjZXB0X2ZvY3VzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENs dXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2tleV9mb2N1cyAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X21pbmltdW1fc2l6ZSAodWlu dCB3aWR0aCwgdWludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X21vdGlvbl9ldmVudHNfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9wZXJzcGVjdGl2ZSAoQ2x1dHRlci5QZXJzcGVjdGl2ZSBwZXJzcGVj dGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRf dGhyb3R0bGVfbW90aW9uX2V2ZW50cyAoYm9vbCB0aHJvdHRsZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGl0bGUgKHN0cmluZyB0aXRsZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX2FscGhh IChib29sIHVzZV9hbHBoYSk7CisrCQlwdWJsaWMgdm9pZCBzaG93X2N1cnNvciAoKTsKKysJCXB1 YmxpYyB2b2lkIHRoYXdfdXBkYXRlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHVwZGF0ZV9yZXNvdXJj ZV9zY2FsZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9v bCBhY2NlcHRfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9y IGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgY3Vyc29yX3Zpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Iga2V5X2ZvY3VzIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlBlcnNwZWN0aXZl IHBlcnNwZWN0aXZlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0K KysJCXB1YmxpYyBzdHJpbmcgdGl0bGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdXNlX2FscGhhIHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFj dGl2YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBhZnRlcl9wYWludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBkZWxldGVfZXZl bnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg cGFpbnRfdmlldyAoQ2x1dHRlci5TdGFnZVZpZXcgdmlldyk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0 YWdlX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgY2xhc3MgU3RhZ2VNYW5hZ2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlTWFuYWdl ciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBDbHV0dGVyLlN0YWdlTWFuYWdlciBnZXRfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X2RlZmF1 bHRfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgR0xp Yi5TTGlzdDx3ZWFrIENsdXR0ZXIuU3RhZ2U+IGxpc3Rfc3RhZ2VzICgpOworKwkJcHVibGljIHVu b3duZWQgR0xpYi5TTGlzdDxDbHV0dGVyLlN0YWdlPiBwZWVrX3N0YWdlcyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlIGRlZmF1bHRfc3Rh Z2UgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIHN0YWdlX2FkZGVkIChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0 YWdlX3JlbW92ZWQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3Mg U3RhZ2VTdGF0ZUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5TdGFn ZVN0YXRlIGNoYW5nZWRfbWFzazsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7 CisrCQlwdWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlIG5ld19zdGF0ZTsKKysJCXB1YmxpYyB3ZWFr IENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFn ZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0 eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV92aWV3X2dldF90eXBlICgpIildCisrCXB1Ymxp YyBjbGFzcyBTdGFnZVZpZXcgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VWaWV3ICgpOworKwkJcHVi bGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlwdWJs aWMgdm9pZCBnZXRfbGF5b3V0IChDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCk7CisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGdldF9vZmZzY3JlZW5fdHJhbnNmb3JtYXRpb25fbWF0cml4IChDb2dsLk1h dHJpeCBtYXRyaXgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfb25z Y3JlZW4gKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3NjYWxlICgpOworKwkJcHVibGljIHZvaWQg aW52YWxpZGF0ZV9vZmZzY3JlZW5fYmxpdF9waXBlbGluZSAoKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldHVwX29mZnNjcmVlbl9ibGl0X3BpcGVsaW5lIChDb2ds LlBpcGVsaW5lIHBpcGVsaW5lKTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybV90b19vbnNjcmVl biAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBD YWlyby5SZWN0YW5nbGVJbnQgbGF5b3V0IHsgb3duZWQgZ2V0OyBzZXQgY29uc3RydWN0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZSB7IGdldDsgc2V0IGNv bnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBTdGF0ZSA6IEdMaWIuT2JqZWN0 LCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBTdGF0ZSAoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdWludCBnZXRfZHVyYXRpb24gKHN0cmluZz8gc291cmNl X3N0YXRlX25hbWUsIHN0cmluZz8gdGFyZ2V0X3N0YXRlX25hbWUpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIHN0cmluZz4gZ2V0X3N0YXRlcyAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHN0cmluZz8gc291 cmNlX3N0YXRlX25hbWUsIHN0cmluZz8gdGFyZ2V0X3N0YXRlX25hbWUsIHVpbnQgZHVyYXRpb24p OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhdGUgc2V0 X2tleSAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1l LCBHTGliLk9iamVjdCBvYmplY3QsIHN0cmluZyBwcm9wZXJ0eV9uYW1lLCB1aW50IG1vZGUsIEdM aWIuVmFsdWUgdmFsdWUsIGRvdWJsZSBwcmVfZGVsYXksIGRvdWJsZSBwb3N0X2RlbGF5KTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIHNldF9z dGF0ZSAoc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIHdhcnBfdG9fc3RhdGUgKHN0cmluZyB0YXJn ZXRfc3RhdGVfbmFtZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgc3RyaW5nIHN0YXRlIHsgb3duZWQg Z2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBjb21wbGV0ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1 bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0ZV9rZXlfZ2V0 X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ cHVibGljIGNsYXNzIFN0YXRlS2V5IHsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xp Yi5UeXBlIGdldF9wcm9wZXJ0eV90eXBlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zd2lwZV9hY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMg Y2xhc3MgU3dpcGVBY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0K KysJCXB1YmxpYyBTd2lwZUFjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBzd2VwdCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5T d2lwZURpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHN3aXBlIChDbHV0dGVyLkFjdG9yIGFjdG9y LCBDbHV0dGVyLlN3aXBlRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Rh cF9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJ cHVibGljIGNsYXNzIFRhcEFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9u KiIpXQorKwkJcHVibGljIFRhcEFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIHRhcCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3Mg VGV4dCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxl LCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJ CXB1YmxpYyBUZXh0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBpbnQgY29vcmRzX3RvX3Bvc2l0aW9uIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1YmxpYyB2 b2lkIGRlbGV0ZV9jaGFycyAodWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyBib29sIGRlbGV0ZV9z ZWxlY3Rpb24gKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgVGV4dC5mdWxsIChzdHJpbmcgZm9u dF9uYW1lLCBzdHJpbmcgdGV4dCwgQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlwdWJsaWMgYm9v bCBnZXRfYWN0aXZhdGFibGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5BdHRyTGlzdCBn ZXRfYXR0cmlidXRlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLlRleHRCdWZmZXIgZ2V0X2J1ZmZlciAoKTsKKysJCXB1YmxpYyBz dHJpbmcgZ2V0X2NoYXJzIChzc2l6ZV90IHN0YXJ0X3Bvcywgc3NpemVfdCBlbmRfcG9zKTsKKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGdldF9jdXJzb3JfY29sb3IgKCk7CisrCQlwdWJsaWMgaW50IGdldF9jdXJzb3JfcG9zaXRp b24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0 X2N1cnNvcl9yZWN0IChvdXQgdW5vd25lZCBHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVibGlj IHVpbnQgZ2V0X2N1cnNvcl9zaXplICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2N1cnNvcl92aXNp YmxlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2VkaXRhYmxlICgpOworKwkJcHVibGljIFBhbmdv LkVsbGlwc2l6ZU1vZGUgZ2V0X2VsbGlwc2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyBQYW5nby5Gb250RGVzY3JpcHRpb24gZ2V0X2ZvbnRfZGVzY3JpcHRp b24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2ZvbnRfbmFtZSAoKTsKKysJCXB1 YmxpYyBDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBnZXRfaW5wdXRfaGludHMgKCk7Cisr CQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGdldF9pbnB1dF9wdXJwb3NlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2p1c3Rp ZnkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5MYXlvdXQgZ2V0X2xheW91dCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9sYXlvdXRfb2Zm c2V0cyAob3V0IGludCB4LCBvdXQgaW50IHkpOworKwkJcHVibGljIFBhbmdvLkFsaWdubWVudCBn ZXRfbGluZV9hbGlnbm1lbnQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfbGluZV93cmFwICgpOwor KwkJcHVibGljIFBhbmdvLldyYXBNb2RlIGdldF9saW5lX3dyYXBfbW9kZSAoKTsKKysJCXB1Ymxp YyBpbnQgZ2V0X21heF9sZW5ndGggKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRfcGFzc3dvcmRf Y2hhciAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zZWxlY3RhYmxlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X3NlbGVjdGVkX3Rl eHRfY29sb3IgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9zZWxlY3Rpb24gKCk7CisrCQlwdWJs aWMgaW50IGdldF9zZWxlY3Rpb25fYm91bmQgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBn ZXRfc2VsZWN0aW9uX2NvbG9yICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3NpbmdsZV9saW5lX21v ZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RleHQgKCk7CisrCQlwdWJsaWMg Ym9vbCBnZXRfdXNlX21hcmt1cCAoKTsKKysJCXB1YmxpYyBib29sIGhhc19wcmVlZGl0ICgpOwor KwkJcHVibGljIHZvaWQgaW5zZXJ0X3RleHQgKHN0cmluZyB0ZXh0LCBzc2l6ZV90IHBvc2l0aW9u KTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF91bmljaGFyICh1bmljaGFyIHdjKTsKKysJCXB1Ymxp YyBib29sIHBvc2l0aW9uX3RvX2Nvb3JkcyAoaW50IHBvc2l0aW9uLCBvdXQgZmxvYXQgeCwgb3V0 IGZsb2F0IHksIG91dCBmbG9hdCBsaW5lX2hlaWdodCA9IG51bGwpOworKwkJcHVibGljIHZvaWQg c2V0X2FjdGl2YXRhYmxlIChib29sIGFjdGl2YXRhYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9h dHRyaWJ1dGVzIChQYW5nby5BdHRyTGlzdD8gYXR0cnMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9idWZmZXIgKENsdXR0ZXIuVGV4dEJ1ZmZlciBi dWZmZXIpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsK KysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsK KysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfcG9zaXRpb24gKGludCBwb3NpdGlvbik7CisrCQlw dWJsaWMgdm9pZCBzZXRfY3Vyc29yX3NpemUgKGludCBzaXplKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfZWRpdGFibGUgKGJvb2wgZWRpdGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2VsbGlwc2l6 ZSAoUGFuZ28uRWxsaXBzaXplTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9mb250X2Rlc2NyaXB0aW9uIChQYW5nby5Gb250RGVzY3Jp cHRpb24gZm9udF9kZXNjKTsKKysJCXB1YmxpYyB2b2lkIHNldF9mb250X25hbWUgKHN0cmluZz8g Zm9udF9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9oaW50cyAoQ2x1dHRlci5JbnB1 dENvbnRlbnRIaW50RmxhZ3MgaGludHMpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X3B1cnBv c2UgKENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9qdXN0aWZ5IChib29sIGp1c3RpZnkpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfYWxp Z25tZW50IChQYW5nby5BbGlnbm1lbnQgYWxpZ25tZW50KTsKKysJCXB1YmxpYyB2b2lkIHNldF9s aW5lX3dyYXAgKGJvb2wgbGluZV93cmFwKTsKKysJCXB1YmxpYyB2b2lkIHNldF9saW5lX3dyYXBf bW9kZSAoUGFuZ28uV3JhcE1vZGUgd3JhcF9tb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXJr dXAgKHN0cmluZz8gbWFya3VwKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXhfbGVuZ3RoIChpbnQg bWF4KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYXNzd29yZF9jaGFyICh1bmljaGFyIHdjKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcmVlZGl0X3N0 cmluZyAoc3RyaW5nPyBwcmVlZGl0X3N0ciwgUGFuZ28uQXR0ckxpc3Q/IHByZWVkaXRfYXR0cnMs IHVpbnQgY3Vyc29yX3Bvcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0YWJsZSAoYm9vbCBz ZWxlY3RhYmxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9zZWxlY3RlZF90ZXh0X2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlwdWJs aWMgdm9pZCBzZXRfc2VsZWN0aW9uIChzc2l6ZV90IHN0YXJ0X3Bvcywgc3NpemVfdCBlbmRfcG9z KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb25fYm91bmQgKGludCBzZWxlY3Rpb25fYm91 bmQpOworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGlvbl9jb2xvciAoQ2x1dHRlci5Db2xvcj8g Y29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X3NpbmdsZV9saW5lX21vZGUgKGJvb2wgc2luZ2xl X2xpbmUpOworKwkJcHVibGljIHZvaWQgc2V0X3RleHQgKHN0cmluZz8gdGV4dCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfdXNlX21hcmt1cCAoYm9vbCBzZXR0aW5nKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl90ZXh0X2FjdGl2YXRlIildCisrCQlwdWJsaWMgYm9vbCB0cnlfYWN0aXZhdGUg KCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IFRleHQud2l0aF9idWZmZXIgKENsdXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIpOworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIp XQorKwkJcHVibGljIFRleHQud2l0aF90ZXh0IChzdHJpbmc/IGZvbnRfbmFtZSwgc3RyaW5nIHRl eHQpOworKwkJcHVibGljIGJvb2wgYWN0aXZhdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IFBhbmdvLkF0dHJMaXN0IGF0dHJpYnV0ZXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIENsdXR0ZXIuQ29sb3IgY3Vyc29yX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgY3Vyc29yX2NvbG9yX3NldCB7IGdldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBpbnQgY3Vyc29yX3Bvc2l0 aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBpbnQgY3Vyc29yX3NpemUgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIGJvb2wgY3Vyc29yX3Zpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IGJvb2wgZWRpdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLkVsbGlwc2l6ZU1v ZGUgZWxsaXBzaXplIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBQYW5nby5Gb250RGVzY3JpcHRpb24gZm9udF9kZXNjcmlwdGlvbiB7IG93bmVk IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfbmFtZSB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgaW5wdXRfaGludHMgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBpbnB1dF9wdXJw b3NlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGp1c3RpZnkgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIFBhbmdvLkFsaWdubWVudCBsaW5lX2FsaWdubWVudCB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgYm9vbCBsaW5lX3dyYXAgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLldy YXBNb2RlIGxpbmVfd3JhcF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBpbnQgbWF4X2xl bmd0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBwYXNzd29yZF9jaGFyIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBpbnQgcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgc2VsZWN0YWJsZSB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBzZWxlY3RlZF90ZXh0X2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wg c2VsZWN0ZWRfdGV4dF9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQgc2VsZWN0aW9u X2JvdW5kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNlbGVjdGlvbl9j b2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29s IHNlbGVjdGlvbl9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBib29sIHNpbmdsZV9saW5l X21vZGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyB0ZXh0IHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBib29sIHVzZV9tYXJrdXAgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIp XQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY3Vyc29yX2NoYW5nZWQgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY3Vyc29yX2V2ZW50 IChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGVsZXRlX3RleHQgKGludCBzdGFy dF9wb3MsIGludCBlbmRfcG9zKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHRleHRf Y2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9idWZmZXJfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFRleHRCdWZmZXIg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwdWJsaWMgVGV4dEJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgZGVs ZXRlX3RleHQgKHVpbnQgcG9zaXRpb24sIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdm9pZCBl bWl0X2RlbGV0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1Ymxp YyB2b2lkIGVtaXRfaW5zZXJ0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1 aW50IG5fY2hhcnMpOworKwkJcHVibGljIHNpemVfdCBnZXRfYnl0ZXMgKCk7CisrCQlwdWJsaWMg dmlydHVhbCB1aW50IGdldF9sZW5ndGggKCk7CisrCQlwdWJsaWMgaW50IGdldF9tYXhfbGVuZ3Ro ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90ZXh0ICgpOworKwkJW0NDb2RlICh2 ZnVuY19uYW1lID0gImdldF90ZXh0IildCisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdW5vd25lZCBzdHJpbmcgZ2V0X3RleHRfd2l0aF9sZW5ndGggKHNpemVfdCBuX2J5dGVzKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgaW5zZXJ0X3RleHQgKHVpbnQgcG9zaXRpb24sIHN0cmlu ZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXhfbGVuZ3RoIChp bnQgbWF4X2xlbmd0aCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGV4dCAoc3RyaW5nIGNoYXJzLCBp bnQgbl9jaGFycyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgVGV4dEJ1ZmZlci53aXRoX3RleHQgKHN0cmluZz8gdGV4dCwgc3NpemVfdCB0 ZXh0X2xlbik7CisrCQlwdWJsaWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQg bWF4X2xlbmd0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHRleHQgeyBnZXQ7IH0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlbGV0ZWRfdGV4dCAodWludCBwb3NpdGlv biwgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGluc2VydGVk X3RleHQgKHVpbnQgcG9zaXRpb24sIHN0cmluZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfdGV4dF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUZXh0Tm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVGV4dE5vZGUgKFBhbmdvLkxheW91dD8gbGF5b3V0 LCBDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmUgOiBDbHV0dGVyLkFjdG9yIHsKKysJCXB1 YmxpYyBDb2dsLk1hdGVyaWFsIGNvZ2xfbWF0ZXJpYWwgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IENvZ2wuVGV4dHVyZSBjb2dsX3RleHR1cmUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl90ZXh0dXJlX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIGNsYXNzIFRleHR1cmVOb2RlIDogQ2x1dHRlci5QaXBlbGluZU5vZGUgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl clBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBUZXh0dXJlTm9kZSAoQ29nbC5UZXh0dXJlIHRleHR1 cmUsIENsdXR0ZXIuQ29sb3I/IGNvbG9yLCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRl ciwgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ19maWx0ZXIpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90 aW1lbGluZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1 YmxpYyBjbGFzcyBUaW1lbGluZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLlNjcmlwdGFibGUgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIFRpbWVsaW5lICh1aW50IG1zZWNzKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdm9pZCBhZGRfbWFya2VyIChzdHJp bmcgbWFya2VyX25hbWUsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfbWFya2VyX2F0X3RpbWUgKHN0cmluZyBtYXJrZXJf bmFtZSwgdWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBhZHZhbmNlICh1aW50IG1zZWNzKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkdmFuY2VfdG9f bWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLlRpbWVsaW5lIGNsb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIGJvb2wgZ2V0X2F1dG9fcmV2ZXJzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfY3ViaWNfYmV6aWVyX3Byb2dyZXNzIChH cmFwaGVuZS5Qb2ludCBjXzEsIEdyYXBoZW5lLlBvaW50IGNfMik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfY3VycmVudF9yZXBlYXQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWludCBnZXRfZGVsYXkgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdWludCBnZXRfZGVsdGEgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGlu ZURpcmVjdGlvbiBnZXRfZGlyZWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBpbnQ2NCBnZXRfZHVyYXRpb25faGludCAoKTsKKysJCXB1Ymxp YyB1aW50IGdldF9lbGFwc2VkX3RpbWUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2xvb3Ag KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9w cm9ncmVzcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1 dHRlci5BbmltYXRpb25Nb2RlIGdldF9wcm9ncmVzc19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlcGVhdF9jb3VudCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfc3RlcF9wcm9ncmVz cyAob3V0IGludCBuX3N0ZXBzLCBvdXQgQ2x1dHRlci5TdGVwTW9kZSBzdGVwX21vZGUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgaGFzX21hcmtlciAoc3Ry aW5nIG1hcmtlcl9uYW1lKTsKKysJCXB1YmxpYyBib29sIGlzX3BsYXlpbmcgKCk7CisrCQlbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IHRydWUsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xl bmd0aF90eXBlID0gImdzaXplIiwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gdHJ1ZSldCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RyaW5nW10gbGlzdF9tYXJrZXJz IChpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgcGF1c2UgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfbWFya2VyIChzdHJpbmcgbWFya2Vy X25hbWUpOworKwkJcHVibGljIHZvaWQgcmV3aW5kICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2F1dG9fcmV2ZXJzZSAoYm9vbCByZXZlcnNlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY3ViaWNf YmV6aWVyX3Byb2dyZXNzIChHcmFwaGVuZS5Qb2ludCBjXzEsIEdyYXBoZW5lLlBvaW50IGNfMik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVsYXkg KHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZv aWQgc2V0X2RpcmVjdGlvbiAoQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rpb24pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2R1cmF0aW9u ICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbG9vcCAoYm9vbCBsb29wKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvZ3Jl c3NfZnVuYyAob3duZWQgQ2x1dHRlci5UaW1lbGluZVByb2dyZXNzRnVuYz8gZnVuYyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Byb2dyZXNzX21v ZGUgKENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVwZWF0X2NvdW50IChpbnQgY291bnQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGVwX3Byb2dy ZXNzIChpbnQgbl9zdGVwcywgQ2x1dHRlci5TdGVwTW9kZSBzdGVwX21vZGUpOworKwkJcHVibGlj IHZvaWQgc2tpcCAodWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBzdGFydCAoKTsKKysJCXB1 YmxpYyB2b2lkIHN0b3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgYm9vbCBhdXRvX3JldmVyc2UgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNCIpXQorKwkJcHVibGljIHVpbnQgZGVsYXkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmVEaXJlY3Rpb24gZGly ZWN0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB1aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBsb29w IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q2x1dHRlci5BbmltYXRpb25Nb2RlIHByb2dyZXNzX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgcmVwZWF0X2NvdW50IHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IG1hcmtlcl9yZWFjaGVkIChzdHJpbmcgbWFya2VyX25hbWUsIGludCBtc2Vjcyk7CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBuZXdfZnJhbWUgKGludCBtc2Vjcyk7CisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBwYXVzZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBzdGFydGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0b3BwZWQgKGJvb2wgaXNfZmluaXNoZWQpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbQ29t cGFjdF0KKysJcHVibGljIGNsYXNzIFRpbWVvdXRQb29sIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUaW1lb3V0UG9vbCAoaW50IHByaW9y aXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUb3VjaEV2ZW50IDogQ2x1dHRlci5FdmVudCB7 CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2 aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJs aWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFj dG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJs aWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1 YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgY2xhc3Mg VG91Y2hwYWRQaW5jaEV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZmxvYXQgYW5n bGVfZGVsdGE7CisrCQlwdWJsaWMgZmxvYXQgZHg7CisrCQlwdWJsaWMgZmxvYXQgZHk7CisrCQlw dWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHVpbnQgbl9maW5nZXJz OworKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRHZXN0dXJlUGhhc2UgcGhhc2U7CisrCQlwdWJs aWMgZmxvYXQgc2NhbGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7 CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4Owor KwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgY2xhc3MgVG91Y2hwYWRTd2lwZUV2 ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZmxvYXQgZHg7CisrCQlwdWJsaWMgZmxv YXQgZHk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHVp bnQgbl9maW5nZXJzOworKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRHZXN0dXJlUGhhc2UgcGhh c2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFr IENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMg Q2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZs b2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zZm9ybV9ub2RlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBUcmFuc2Zvcm1Ob2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50 Tm9kZSoiKV0KKysJCXB1YmxpYyBUcmFuc2Zvcm1Ob2RlIChDb2dsLk1hdHJpeCBwcm9qZWN0aW9u KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgVHJhbnNpdGlvbiA6 IENsdXR0ZXIuVGltZWxpbmUsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVHJhbnNpdGlvbiAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGF0dGFjaGVkIChDbHV0dGVy LkFuaW1hdGFibGUgYW5pbWF0YWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBjb21wdXRlX3ZhbHVlIChDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSwgQ2x1 dHRlci5JbnRlcnZhbCBpbnRlcnZhbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRldGFjaGVkIChDbHV0dGVyLkFuaW1hdGFibGUgYW5p bWF0YWJsZSk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1hdGFibGUgZ2V0X2FuaW1h dGFibGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkludGVydmFsIGdldF9pbnRlcnZh bCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9yZW1vdmVfb25fY29tcGxldGUgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfYW5pbWF0YWJsZSAoQ2x1dHRlci5BbmltYXRhYmxlPyBhbmltYXRhYmxlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZnJvbV92 YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50ZXJ2YWwgKENs dXR0ZXIuSW50ZXJ2YWw/IGludGVydmFsKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yZW1vdmVfb25f Y29tcGxldGUgKGJvb2wgcmVtb3ZlX2NvbXBsZXRlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdG9fdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOwor KwkJcHVibGljIENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLkludGVydmFsIGludGVydmFsIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBib29sIHJlbW92ZV9vbl9jb21wbGV0ZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3RyYW5zaXRpb25fZ3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJcHVibGljIGNsYXNzIFRyYW5zaXRpb25Hcm91cCA6IENsdXR0ZXIuVHJhbnNpdGlv biwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGljIFRyYW5z aXRpb25Hcm91cCAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF90cmFuc2l0aW9uIChDbHV0dGVyLlRy YW5zaXRpb24gdHJhbnNpdGlvbik7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsICgpOworKwkJ cHVibGljIHZvaWQgcmVtb3ZlX3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFuc2l0 aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdmlydHVhbF9pbnB1dF9kZXZpY2VfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIFZpcnR1YWxJbnB1dERldmljZSA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBW aXJ0dWFsSW5wdXREZXZpY2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9kZXZpY2VfdHlwZSAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Fic29sdXRlX21vdGlvbiAodWludDY0IHRp bWVfdXMsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlm eV9idXR0b24gKHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIgYnV0dG9uLCBDbHV0dGVyLkJ1dHRvblN0 YXRlIGJ1dHRvbl9zdGF0ZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9kaXNjcmV0 ZV9zY3JvbGwgKHVpbnQ2NCB0aW1lX3VzLCBDbHV0dGVyLlNjcm9sbERpcmVjdGlvbiBkaXJlY3Rp b24sIENsdXR0ZXIuU2Nyb2xsU291cmNlIHNjcm9sbF9zb3VyY2UpOworKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBub3RpZnlfa2V5ICh1aW50NjQgdGltZV91cywgdWludDMyIGtleSwgQ2x1dHRlci5L ZXlTdGF0ZSBrZXlfc3RhdGUpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfa2V5dmFs ICh1aW50NjQgdGltZV91cywgdWludDMyIGtleXZhbCwgQ2x1dHRlci5LZXlTdGF0ZSBrZXlfc3Rh dGUpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfcmVsYXRpdmVfbW90aW9uICh1aW50 NjQgdGltZV91cywgZG91YmxlIGR4LCBkb3VibGUgZHkpOworKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBub3RpZnlfc2Nyb2xsX2NvbnRpbnVvdXMgKHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUgZHgsIGRv dWJsZSBkeSwgQ2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Nyb2xsX3NvdXJjZSwgQ2x1dHRlci5TY3Jv bGxGaW5pc2hGbGFncyBmaW5pc2hfZmxhZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3Rp ZnlfdG91Y2hfZG93biAodWludDY0IHRpbWVfdXMsIGludCBzbG90LCBkb3VibGUgeCwgZG91Ymxl IHkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfdG91Y2hfbW90aW9uICh1aW50NjQg dGltZV91cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIG5vdGlmeV90b3VjaF91cCAodWludDY0IHRpbWVfdXMsIGludCBzbG90KTsKKysJCXB1 YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsgY29uc3RydWN0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNlYXQgc2VhdCB7 IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3pvb21fYWN0aW9uX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFz cyBab29tQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlw dWJsaWMgWm9vbUFjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9mb2NhbF9wb2ludCAoR3Jh cGhlbmUuUG9pbnQgcG9pbnQpOworKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX2ZvY2Fs X3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5ab29tQXhp cyBnZXRfem9vbV9heGlzICgpOworKwkJcHVibGljIHZvaWQgc2V0X3pvb21fYXhpcyAoQ2x1dHRl ci5ab29tQXhpcyBheGlzKTsKKysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIHpvb21fYXhpcyB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCB6b29tIChDbHV0dGVy LkFjdG9yIGFjdG9yLCBHcmFwaGVuZS5Qb2ludCBmb2NhbF9wb2ludCwgZG91YmxlIGZhY3Rvcik7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9jbmFtZSA9ICJDbHV0dGVyQW5pbWF0YWJsZUludGVyZmFjZSIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9hbmltYXRhYmxlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgQW5pbWF0 YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qg Ym9vbCBhbmltYXRlX3Byb3BlcnR5IChDbHV0dGVyLkFuaW1hdGlvbiBhbmltYXRpb24sIHN0cmlu ZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIGluaXRpYWxfdmFsdWUsIEdMaWIuVmFsdWUgZmlu YWxfdmFsdWUsIGRvdWJsZSBwcm9ncmVzcywgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBHTGliLlBhcmFt U3BlYyBmaW5kX3Byb3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBnZXRfaW5pdGlhbF9zdGF0 ZSAoc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgaW50ZXJwb2xhdGVfdmFs dWUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBDbHV0dGVyLkludGVydmFsIGludGVydmFsLCBkb3Vi bGUgcHJvZ3Jlc3MsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9maW5hbF9zdGF0ZSAoc3RyaW5n IHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250 YWluZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJs aWMgaW50ZXJmYWNlIENvbnRhaW5lciA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyB2b2lkIGFk ZCAocGFyYW1zIENsdXR0ZXIuQWN0b3JbXSBhY3RvcnMpOworKwkJW0NDb2RlICh2ZnVuY19uYW1l ID0gImFkZCIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGFk ZF9hY3RvciAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXRf cHJvcGVydHkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIHN0cmluZyBwcm9wZXJ0eSwgR0xpYi5WYWx1 ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBj aGlsZF9zZXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXRfcHJvcGVydHkgKENsdXR0ZXIuQWN0 b3IgY2hpbGQsIHN0cmluZyBwcm9wZXJ0eSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5QYXJhbVNw ZWMgY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSAoR0xpYi5PYmplY3RDbGFzcyBrbGFzcywgc3Ry aW5nIHByb3BlcnR5X25hbWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBh cnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHN0YXRpYyBHTGliLlBhcmFtU3BlY1tdIGNsYXNzX2xpc3RfY2hpbGRfcHJv cGVydGllcyAoR0xpYi5PYmplY3RDbGFzcyBrbGFzcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNyZWF0ZV9jaGlsZF9tZXRhIChDbHV0dGVy LkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgZGVzdHJveV9jaGlsZF9tZXRhIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZmluZF9jaGlsZF9ieV9uYW1lIChzdHJpbmcgY2hpbGRfbmFtZSk7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkiKV0KKysJ CXB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVydHkg KHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5DaGlsZE1ldGEgZ2V0X2NoaWxkX21ldGEg KENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBHTGli Lkxpc3Q8d2VhayBDbHV0dGVyLkFjdG9yPiBnZXRfY2hpbGRyZW4gKCk7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyIpXQor KwkJcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWNbXSBsaXN0X2NoaWxkX3Byb3Bl cnRpZXMgKCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAibG93ZXIiKV0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGxvd2VyX2NoaWxkIChDbHV0dGVyLkFjdG9y IGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nID0gbnVsbCk7CisrCQlbQ0NvZGUgKHZmdW5j X25hbWUgPSAicmFpc2UiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIHJhaXNlX2NoaWxkIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJs aW5nID0gbnVsbCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlICgu Li4pOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gInJlbW92ZSIpXQorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQi KV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHJlbW92ZV9hY3RvciAoQ2x1dHRlci5BY3RvciBh Y3Rvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc29ydF9k ZXB0aF9vcmRlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdG9yX2FkZGVk IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFj dG9yX3JlbW92ZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBj aGlsZF9ub3RpZnkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIEdMaWIuUGFyYW1TcGVjIHBzcGVjKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2NuYW1lID0gIkNsdXR0ZXJDb250ZW50SW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2NvbnRlbnRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBDb250ZW50IDogR0xp Yi5PYmplY3QgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBhYnN0 cmFjdCBib29sIGdldF9wcmVmZXJyZWRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQg aGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYWJzdHJh Y3Qgdm9pZCBpbnZhbGlkYXRlICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaW52YWxpZGF0 ZV9zaXplICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHBhaW50 X2NvbnRlbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuUGFpbnROb2RlIG5vZGUsIENs dXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGF0dGFjaGVkIChDbHV0dGVy LkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBkZXRhY2hlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3NjcmlwdGFibGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIFNjcmlwdGFibGUgOiBHTGliLk9iamVjdCB7 CisrCQlwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVibGlj IGFic3RyYWN0IGJvb2wgcGFyc2VfY3VzdG9tX25vZGUgKENsdXR0ZXIuU2NyaXB0IHNjcmlwdCwg R0xpYi5WYWx1ZSB2YWx1ZSwgc3RyaW5nIG5hbWUsIEpzb24uTm9kZSBub2RlKTsKKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIHNldF9jdXN0b21fcHJvcGVydHkgKENsdXR0ZXIuU2NyaXB0IHNjcmlw dCwgc3RyaW5nIG5hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIGFic3RyYWN0IHZv aWQgc2V0X2lkIChzdHJpbmcgaWRfKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIGludGVyZmFjZSBTdGFnZVdpbmRvdyA6 IEdMaWIuT2JqZWN0IHsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgaW50IGdl dF9wZW5kaW5nX3N3YXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB1 bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3dyYXBwZXIgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIGFic3RyYWN0IGJvb2wgaGFzX3JlZHJhd19jbGlwcyAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyBhYnN0cmFjdCBib29sIGlnbm9yaW5nX3JlZHJhd19jbGlwcyAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCByZWFsaXplICgpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfY3Vyc29yX3Zpc2li bGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0 cmFjdCB2b2lkIHNldF9mdWxsc2NyZWVuIChib29sIGlzX2Z1bGxzY3JlZW4pOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdXNlcl9yZXNpemFi bGUgKGJvb2wgaXNfcmVzaXphYmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJh Y3Qgdm9pZCBzaG93IChib29sIGRvX3JhaXNlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg YWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHki LCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rv cl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBBY3RvckJveCB7CisrCQlwdWJs aWMgZmxvYXQgeDE7CisrCQlwdWJsaWMgZmxvYXQgeTE7CisrCQlwdWJsaWMgZmxvYXQgeDI7Cisr CQlwdWJsaWMgZmxvYXQgeTI7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIHN0YXRpYyBDbHV0dGVyLkFjdG9yQm94PyBhbGxvYyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBjbGFtcF90b19waXhlbCAocmVmIENs dXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBib29sIGNvbnRhaW5zIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94PyBjb3B5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuQWN0 b3JCb3ggYm94X2IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZv aWQgZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfYXJlYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X29yaWdpbiAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zaXplIChvdXQgZmxvYXQg d2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yQm94PyBpbml0IChmbG9hdCB4XzEs IGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfcmVjdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxv YXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBpbnRlcnBvbGF0ZSAoQ2x1dHRlci5BY3RvckJveCBm aW5hbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBzY2FsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zaXplIChmbG9h dCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IHVuaW9uIChDbHV0dGVyLkFjdG9yQm94IGIpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMg c3RydWN0IEFjdG9ySXRlciB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGlj IHZvaWQgaW5pdCAoQ2x1dHRlci5BY3RvciByb290KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192YWxpZCAoKTsKKysJCXB1YmxpYyBib29sIG5leHQg KG91dCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIGJvb2wgcHJldiAo b3V0IHVub3duZWQgQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmUg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQ2FwdHVyZSB7CisrCQlw dWJsaWMgd2VhayBDYWlyby5TdXJmYWNlIGltYWdlOworKwkJcHVibGljIENhaXJvLlJlY3Rhbmds ZUludCByZWN0OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9 ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9DT0xPUiIpXQorKwlwdWJs aWMgc3RydWN0IENvbG9yIHsKKysJCXB1YmxpYyB1aW50OCByZWQ7CisrCQlwdWJsaWMgdWludDgg Z3JlZW47CisrCQlwdWJsaWMgdWludDggYmx1ZTsKKysJCXB1YmxpYyB1aW50OCBhbHBoYTsKKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGFkZCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIuQ29sb3I/IGFsbG9j ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29s b3I/IGNvcHkgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBkYXJrZW4gKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5Db2xv ciB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBmcmVl ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21faGxzIildCisrCQlw dWJsaWMgQ29sb3IuZnJvbV9obHMgKGZsb2F0IGh1ZSwgZmxvYXQgbHVtaW5hbmNlLCBmbG9hdCBz YXR1cmF0aW9uKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3BpeGVs IildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9waXhlbCAodWludDMyIHBpeGVsKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIENvbG9y LmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0 dGVyLkNvbG9yPyBnZXRfc3RhdGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50IGhhc2ggKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8g aW5pdCAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgaW50 ZXJwb2xhdGUgKENsdXR0ZXIuQ29sb3IgZmluYWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlwdWJs aWMgQ2x1dHRlci5Db2xvciBsaWdodGVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X2NvbG9yX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgYm9vbCBwYXJzZV9zdHJpbmcgKHN0cmlu ZyBzdHIpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc2hhZGUgKGRvdWJsZSBmYWN0b3IpOwor KwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc3VidHJhY3QgKENsdXR0ZXIuQ29sb3IgYik7CisrCQlw dWJsaWMgdm9pZCB0b19obHMgKG91dCBmbG9hdCBodWUsIG91dCBmbG9hdCBsdW1pbmFuY2UsIG91 dCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJCXB1YmxpYyB1aW50MzIgdG9fcGl4ZWwgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgc3RyaW5nIHRvX3N0cmluZyAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBLYmRBMTF5U2V0dGluZ3Mgewor KwkJcHVibGljIENsdXR0ZXIuS2V5Ym9hcmRBMTF5RmxhZ3MgY29udHJvbHM7CisrCQlwdWJsaWMg aW50IHNsb3drZXlzX2RlbGF5OworKwkJcHVibGljIGludCBkZWJvdW5jZV9kZWxheTsKKysJCXB1 YmxpYyBpbnQgdGltZW91dF9kZWxheTsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX2luaXRfZGVs YXk7CisrCQlwdWJsaWMgaW50IG1vdXNla2V5c19tYXhfc3BlZWQ7CisrCQlwdWJsaWMgaW50IG1v dXNla2V5c19hY2NlbF90aW1lOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9m dW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfa25vdF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdHJ1Y3QgS25v dCB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMgQ2x1dHRl ci5Lbm90PyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuS25vdCBrbm90 X2IpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggOiBD b2dsLk1hdHJpeCB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFkQnV0 dG9uRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMg dWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0 b3Igc291cmNlOworKwkJcHVibGljIHVpbnQzMiBidXR0b247CisrCQlwdWJsaWMgdWludDMyIGdy b3VwOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJs aWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFk UmluZ0V2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFj dG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOwor KwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRTb3VyY2UgcmluZ19zb3VyY2U7CisrCQlw dWJsaWMgdWludDMyIHJpbmdfbnVtYmVyOworKwkJcHVibGljIHVpbnQzMiBncm91cDsKKysJCXB1 YmxpYyBkb3VibGUgYW5nbGU7CisrCQlwdWJsaWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFkU3RyaXBFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0 dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdl OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNl UGFkU291cmNlIHN0cmlwX3NvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgc3RyaXBfbnVtYmVyOwor KwkJcHVibGljIHVpbnQzMiBncm91cDsKKysJCXB1YmxpYyBkb3VibGUgdmFsdWU7CisrCQlwdWJs aWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0 aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX25vZGVfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFBh dGhOb2RlIHsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2RlVHlwZSB0eXBlOworKwkJW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLktub3QgcG9p bnRzWzNdOworKwkJcHVibGljIENsdXR0ZXIuUGF0aE5vZGU/IGNvcHkgKCk7CisrCQlwdWJsaWMg Ym9vbCBlcXVhbCAoQ2x1dHRlci5QYXRoTm9kZSBub2RlX2IpOworKwkJcHVibGljIHZvaWQgZnJl ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19i b3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BlcnNwZWN0aXZlX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0cnVjdCBQZXJzcGVjdGl2 ZSB7CisrCQlwdWJsaWMgZmxvYXQgZm92eTsKKysJCXB1YmxpYyBmbG9hdCBhc3BlY3Q7CisrCQlw dWJsaWMgZmxvYXQgel9uZWFyOworKwkJcHVibGljIGZsb2F0IHpfZmFyOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBvaW50ZXJBMTF5U2V0dGluZ3MgeworKwkJcHVibGlj IENsdXR0ZXIuUG9pbnRlckExMXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBDbHV0dGVyLlBv aW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgZHdlbGxfY2xpY2tfdHlwZTsKKysJCXB1YmxpYyBDbHV0 dGVyLlBvaW50ZXJBMTF5RHdlbGxNb2RlIGR3ZWxsX21vZGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Q b2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfc2luZ2xlOworKwkJcHVibGlj IENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2RvdWJsZTsK KysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2VzdHVy ZV9kcmFnOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2Vs bF9nZXN0dXJlX3NlY29uZGFyeTsKKysJCXB1YmxpYyBpbnQgc2Vjb25kYXJ5X2NsaWNrX2RlbGF5 OworKwkJcHVibGljIGludCBkd2VsbF9kZWxheTsKKysJCXB1YmxpYyBpbnQgZHdlbGxfdGhyZXNo b2xkOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQor KwlwdWJsaWMgc3RydWN0IFByb3hpbWl0eUV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50 VHlwZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZl bnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu SW5wdXREZXZpY2UgZGV2aWNlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9m dW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9VTklUUyIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgVW5pdHMgewor KwkJcHVibGljIENsdXR0ZXIuVW5pdHM/IGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgp OworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fY20iKV0KKysJCXB1Ymxp YyBVbml0cy5mcm9tX2NtIChmbG9hdCBjbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJf dW5pdHNfZnJvbV9lbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsKKysJ CVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtX2Zvcl9mb250IildCisrCQlw dWJsaWMgVW5pdHMuZnJvbV9lbV9mb3JfZm9udCAoc3RyaW5nIGZvbnRfbmFtZSwgZmxvYXQgZW0p OworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysJCXB1Ymxp YyBVbml0cy5mcm9tX21tIChmbG9hdCBtbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJf dW5pdHNfZnJvbV9waXhlbHMiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3BpeGVscyAoaW50IHB4 KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3B0IildCisrCQlwdWJs aWMgVW5pdHMuZnJvbV9wdCAoZmxvYXQgcHQpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X3VuaXRzX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9zdHJpbmcgKHN0cmlu ZyBzdHIpOworKwkJcHVibGljIENsdXR0ZXIuVW5pdFR5cGUgZ2V0X3VuaXRfdHlwZSAoKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfdW5pdF92YWx1ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCB0b19waXhl bHMgKCk7CisrCQlwdWJsaWMgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf QUNUT1JfQUxJR05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2FsaWduX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIEFjdG9yQWxp Z24geworKwkJRklMTCwKKysJCVNUQVJULAorKwkJQ0VOVEVSLAorKwkJRU5ECisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX0FDVE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9mbGFnc19nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEFjdG9yRmxhZ3MgeworKwkJTUFQUEVELAor KwkJUkVBTElaRUQsCisrCQlSRUFDVElWRSwKKysJCVZJU0lCTEUsCisrCQlOT19MQVlPVVQKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfQUxJR05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FsaWduX2F4aXNfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBB bGlnbkF4aXMgeworKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQk9USAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxsb2NhdGlvbl9mbGFnc19nZXRfdHlwZSAoKSIp XQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0g QWxsb2NhdGlvbkZsYWdzIHsKKysJCUFMTE9DQVRJT05fTk9ORSwKKysJCUFCU09MVVRFX09SSUdJ Tl9DSEFOR0VELAorKwkJREVMRUdBVEVfTEFZT1VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9hbmltYXRpb25fbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEFuaW1hdGlvbk1vZGUgeworKwkJQ1VTVE9N X01PREUsCisrCQlMSU5FQVIsCisrCQlFQVNFX0lOX1FVQUQsCisrCQlFQVNFX09VVF9RVUFELAor KwkJRUFTRV9JTl9PVVRfUVVBRCwKKysJCUVBU0VfSU5fQ1VCSUMsCisrCQlFQVNFX09VVF9DVUJJ QywKKysJCUVBU0VfSU5fT1VUX0NVQklDLAorKwkJRUFTRV9JTl9RVUFSVCwKKysJCUVBU0VfT1VU X1FVQVJULAorKwkJRUFTRV9JTl9PVVRfUVVBUlQsCisrCQlFQVNFX0lOX1FVSU5ULAorKwkJRUFT RV9PVVRfUVVJTlQsCisrCQlFQVNFX0lOX09VVF9RVUlOVCwKKysJCUVBU0VfSU5fU0lORSwKKysJ CUVBU0VfT1VUX1NJTkUsCisrCQlFQVNFX0lOX09VVF9TSU5FLAorKwkJRUFTRV9JTl9FWFBPLAor KwkJRUFTRV9PVVRfRVhQTywKKysJCUVBU0VfSU5fT1VUX0VYUE8sCisrCQlFQVNFX0lOX0NJUkMs CisrCQlFQVNFX09VVF9DSVJDLAorKwkJRUFTRV9JTl9PVVRfQ0lSQywKKysJCUVBU0VfSU5fRUxB U1RJQywKKysJCUVBU0VfT1VUX0VMQVNUSUMsCisrCQlFQVNFX0lOX09VVF9FTEFTVElDLAorKwkJ RUFTRV9JTl9CQUNLLAorKwkJRUFTRV9PVVRfQkFDSywKKysJCUVBU0VfSU5fT1VUX0JBQ0ssCisr CQlFQVNFX0lOX0JPVU5DRSwKKysJCUVBU0VfT1VUX0JPVU5DRSwKKysJCUVBU0VfSU5fT1VUX0JP VU5DRSwKKysJCVNURVBTLAorKwkJU1RFUF9TVEFSVCwKKysJCVNURVBfRU5ELAorKwkJQ1VCSUNf QkVaSUVSLAorKwkJRUFTRSwKKysJCUVBU0VfSU4sCisrCQlFQVNFX09VVCwKKysJCUVBU0VfSU5f T1VULAorKwkJQU5JTUFUSU9OX0xBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQklOX0FMSUdOTUVOVF8i LCB0eXBlX2lkID0gImNsdXR0ZXJfYmluX2FsaWdubWVudF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEJpbkFsaWdubWVudCB7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJRklYRUQsCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUpXQorKwkJRklMTCwKKysJCVNUQVJULAorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlKV0KKysJCUVORCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSld CisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQklORF8iLCB0eXBlX2lkID0gImNsdXR0ZXJf YmluZF9jb29yZGluYXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJcHVibGljIGVudW0gQmluZENvb3JkaW5hdGUgeworKwkJWCwKKysJCVksCisrCQlXSURU SCwKKysJCUhFSUdIVCwKKysJCVBPU0lUSU9OLAorKwkJU0laRSwKKysJCUFMTAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9CT1hfQUxJR05NRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfYWxpZ25tZW50 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVu dW0gQm94QWxpZ25tZW50IHsKKysJCVNUQVJULAorKwkJRU5ELAorKwkJQ0VOVEVSCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0JVVFRPTl9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYnV0dG9uX3N0YXRl X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEJ1dHRvblN0YXRlIHsKKysJCVJFTEVBU0VE LAorKwkJUFJFU1NFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9DT05URU5UX0dSQVZJVFlfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2NvbnRlbnRfZ3Jhdml0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBDb250ZW50R3Jhdml0eSB7CisrCQlUT1Bf TEVGVCwKKysJCVRPUCwKKysJCVRPUF9SSUdIVCwKKysJCUxFRlQsCisrCQlDRU5URVIsCisrCQlS SUdIVCwKKysJCUJPVFRPTV9MRUZULAorKwkJQk9UVE9NLAorKwkJQk9UVE9NX1JJR0hULAorKwkJ UkVTSVpFX0ZJTEwsCisrCQlSRVNJWkVfQVNQRUNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUEVBVF8i LCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9yZXBlYXRfZ2V0X3R5cGUgKCkiKV0KKysJW0Zs YWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBDb250ZW50 UmVwZWF0IHsKKysJCU5PTkUsCisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZWJ1Z19mbGFnX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGVidWdGbGFnIHsKKysJCU1JU0Ms CisrCQlBQ1RPUiwKKysJCVRFWFRVUkUsCisrCQlFVkVOVCwKKysJCVBBSU5ULAorKwkJUEFOR08s CisrCQlCQUNLRU5ELAorKwkJU0NIRURVTEVSLAorKwkJU0NSSVBULAorKwkJU0hBREVSLAorKwkJ TVVMVElTVEFHRSwKKysJCUFOSU1BVElPTiwKKysJCUxBWU9VVCwKKysJCVBJQ0ssCisrCQlFVkVO VExPT1AsCisrCQlDTElQUElORywKKysJCU9PQl9UUkFOU0ZPUk1TCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0RSQUdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RyYWdfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIERyYWdBeGlzIHsKKysJCUFY SVNfTk9ORSwKKysJCVhfQVhJUywKKysJCVlfQVhJUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ERUJVR18i LCB0eXBlX2lkID0gImNsdXR0ZXJfZHJhd19kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gRHJhd0RlYnVnRmxhZyB7CisrCQlESVNBQkxFX1NXQVBfRVZF TlRTLAorKwkJRElTQUJMRV9DTElQUEVEX1JFRFJBV1MsCisrCQlSRURSQVdTLAorKwkJUEFJTlRf Vk9MVU1FUywKKysJCURJU0FCTEVfQ1VMTElORywKKysJCURJU0FCTEVfT0ZGU0NSRUVOX1JFRElS RUNULAorKwkJQ09OVElOVU9VU19SRURSQVcsCisrCQlQQUlOVF9ERUZPUk1fVElMRVMsCisrCQlQ QUlOVF9EQU1BR0VfUkVHSU9OCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0VGRkVDVF9QQUlOVF9BQ1RPUl8i LCB0eXBlX2lkID0gImNsdXR0ZXJfZWZmZWN0X3BhaW50X2ZsYWdzX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJcHVibGljIGVudW0gRWZmZWN0UGFpbnRGbGFncyB7CisrCQlbQ0NvZGUgKGNu YW1lID0gIkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SX0RJUlRZIildCisrCQlBQ1RPUl9ESVJU WQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9FVkVOVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZmxh Z3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCXB1YmxpYyBlbnVtIEV2ZW50RmxhZ3MgeworKwkJTk9ORSwKKysJCUZMQUdfU1lOVEhFVElD LAorKwkJRkxBR19JTlBVVF9NRVRIT0QsCisrCQlGTEFHX1JFUEVBVEVECisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF90eXBlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gRXZlbnRUeXBlIHsKKysJCU5P VEhJTkcsCisrCQlLRVlfUFJFU1MsCisrCQlLRVlfUkVMRUFTRSwKKysJCU1PVElPTiwKKysJCUVO VEVSLAorKwkJTEVBVkUsCisrCQlCVVRUT05fUFJFU1MsCisrCQlCVVRUT05fUkVMRUFTRSwKKysJ CVNDUk9MTCwKKysJCVNUQUdFX1NUQVRFLAorKwkJREVTVFJPWV9OT1RJRlksCisrCQlDTElFTlRf TUVTU0FHRSwKKysJCURFTEVURSwKKysJCVRPVUNIX0JFR0lOLAorKwkJVE9VQ0hfVVBEQVRFLAor KwkJVE9VQ0hfRU5ELAorKwkJVE9VQ0hfQ0FOQ0VMLAorKwkJVE9VQ0hQQURfUElOQ0gsCisrCQlU T1VDSFBBRF9TV0lQRSwKKysJCVBST1hJTUlUWV9JTiwKKysJCVBST1hJTUlUWV9PVVQsCisrCQlQ QURfQlVUVE9OX1BSRVNTLAorKwkJUEFEX0JVVFRPTl9SRUxFQVNFLAorKwkJUEFEX1NUUklQLAor KwkJUEFEX1JJTkcsCisrCQlFVkVOVF9MQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZFQVRVUkVfIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2ZlYXR1cmVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdz XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIEZlYXR1cmVGbGFn cyB7CisrCQlURVhUVVJFX05QT1QsCisrCQlTV0FQX1RIUk9UVExFLAorKwkJU1RBR0VfU1RBVElD LAorKwkJU1RBR0VfQ1VSU09SLAorKwkJU0hBREVSU19HTFNMLAorKwkJT0ZGU0NSRUVOLAorKwkJ U1RBR0VfTVVMVElQTEUsCisrCQlTV0FQX0VWRU5UUzsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1 dHRlcl9mZWF0dXJlX2F2YWlsYWJsZSIpXQorKwkJcHVibGljIGJvb2wgaXNfYXZhaWxhYmxlICgp OworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfZ2V0X2FsbCIpXQorKwkJcHVi bGljIHN0YXRpYyBDbHV0dGVyLkZlYXR1cmVGbGFncyBAZ2V0ICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9GTE9XXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9mbG93X29yaWVudGF0aW9uX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gRmxvd09yaWVu dGF0aW9uIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9H RVNUVVJFX1RSSUdHRVJfRURHRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZ2VzdHVyZV90cmlnZ2Vy X2VkZ2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVi bGljIGVudW0gR2VzdHVyZVRyaWdnZXJFZGdlIHsKKysJCU5PTkUsCisrCQlBRlRFUiwKKysJCUJF Rk9SRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9HUkFWSVRZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncmF2 aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBlbnVtIEdyYXZp dHkgeworKwkJTk9ORSwKKysJCU5PUlRILAorKwkJTk9SVEhfRUFTVCwKKysJCUVBU1QsCisrCQlT T1VUSF9FQVNULAorKwkJU09VVEgsCisrCQlTT1VUSF9XRVNULAorKwkJV0VTVCwKKysJCU5PUlRI X1dFU1QsCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfR1JJRF9QT1NJVElPTl8iLCB0eXBl X2lkID0gImNsdXR0ZXJfZ3JpZF9wb3NpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBHcmlkUG9zaXRpb24geworKwkJTEVGVCwK KysJCVJJR0hULAorKwkJVE9QLAorKwkJQk9UVE9NCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOSVRfIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2luaXRfZXJyb3JfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgZW51bSBJbml0RXJyb3IgeworKwkJU1VDQ0VTUywK KysJCUVSUk9SX1VOS05PV04sCisrCQlFUlJPUl9USFJFQURTLAorKwkJRVJST1JfQkFDS0VORCwK KysJCUVSUk9SX0lOVEVSTkFMOworKwkJcHVibGljIHN0YXRpYyBHTGliLlF1YXJrIHF1YXJrICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9BWElTXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1 dF9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVi bGljIGVudW0gSW5wdXRBeGlzIHsKKysJCUlHTk9SRSwKKysJCVgsCisrCQlZLAorKwkJUFJFU1NV UkUsCisrCQlYVElMVCwKKysJCVlUSUxULAorKwkJV0hFRUwsCisrCQlESVNUQU5DRSwKKysJCVJP VEFUSU9OLAorKwkJU0xJREVSLAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9DT05U RU5UX0hJTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2NvbnRlbnRfaGludF9mbGFnc19n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIElucHV0Q29udGVudEhpbnRG bGFncyB7CisrCQlDT01QTEVUSU9OLAorKwkJU1BFTExDSEVDSywKKysJCUFVVE9fQ0FQSVRBTEla QVRJT04sCisrCQlMT1dFUkNBU0UsCisrCQlVUFBFUkNBU0UsCisrCQlUSVRMRUNBU0UsCisrCQlI SURERU5fVEVYVCwKKysJCVNFTlNJVElWRV9EQVRBLAorKwkJTEFUSU4sCisrCQlNVUxUSUxJTkUK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfSU5QVVRfQ09OVEVOVF9QVVJQT1NFXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9pbnB1dF9jb250ZW50X3B1cnBvc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0g SW5wdXRDb250ZW50UHVycG9zZSB7CisrCQlOT1JNQUwsCisrCQlBTFBIQSwKKysJCURJR0lUUywK KysJCU5VTUJFUiwKKysJCVBIT05FLAorKwkJVVJMLAorKwkJRU1BSUwsCisrCQlOQU1FLAorKwkJ UEFTU1dPUkQsCisrCQlEQVRFLAorKwkJVElNRSwKKysJCURBVEVUSU1FLAorKwkJVEVSTUlOQUwK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX01BUFBJTkdfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2lucHV0X2RldmljZV9tYXBwaW5nX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElu cHV0RGV2aWNlTWFwcGluZyB7CisrCQlBQlNPTFVURSwKKysJCVJFTEFUSVZFCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX0lOUFVUX0RFVklDRV9QQURfU09VUkNFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1 dF9kZXZpY2VfcGFkX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERl dmljZVBhZFNvdXJjZSB7CisrCQlVTktOT1dOLAorKwkJRklOR0VSCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0lOUFVUX0RFVklDRV9UT09MXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfdG9v bF90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCXB1 YmxpYyBlbnVtIElucHV0RGV2aWNlVG9vbFR5cGUgeworKwkJTk9ORSwKKysJCVBFTiwKKysJCUVS QVNFUiwKKysJCUJSVVNILAorKwkJUEVOQ0lMLAorKwkJQUlSQlJVU0gsCisrCQlNT1VTRSwKKysJ CUxFTlMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2Rldmlj ZV90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIGVudW0gSW5wdXREZXZpY2VUeXBlIHsKKysJCVBPSU5URVJfREVWSUNFLAorKwkJS0VZQk9B UkRfREVWSUNFLAorKwkJRVhURU5TSU9OX0RFVklDRSwKKysJCUpPWVNUSUNLX0RFVklDRSwKKysJ CVRBQkxFVF9ERVZJQ0UsCisrCQlUT1VDSFBBRF9ERVZJQ0UsCisrCQlUT1VDSFNDUkVFTl9ERVZJ Q0UsCisrCQlQRU5fREVWSUNFLAorKwkJRVJBU0VSX0RFVklDRSwKKysJCUNVUlNPUl9ERVZJQ0Us CisrCQlQQURfREVWSUNFLAorKwkJTl9ERVZJQ0VfVFlQRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5Q VVRfTU9ERV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfbW9kZV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIElucHV0TW9kZSB7Cisr CQlNQVNURVIsCisrCQlTTEFWRSwKKysJCUZMT0FUSU5HCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVU X1BBTkVMX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9wYW5lbF9zdGF0ZV9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dFBhbmVsU3RhdGUgeworKwkJT0ZGLAorKwkJ T04sCisrCQlUT0dHTEUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5URVJQT0xBVElPTl8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfaW50ZXJwb2xhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjEuMiIp XQorKwlwdWJsaWMgZW51bSBJbnRlcnBvbGF0aW9uIHsKKysJCUxJTkVBUiwKKysJCUNVQklDCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0tFWV9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5X3N0YXRl X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEtleVN0YXRlIHsKKysJCVJFTEVBU0VELAor KwkJUFJFU1NFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9r ZXlib2FyZF9hMTF5X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVu dW0gS2V5Ym9hcmRBMTF5RmxhZ3MgeworKwkJS0VZQk9BUkRfRU5BQkxFRCwKKysJCVRJTUVPVVRf RU5BQkxFRCwKKysJCU1PVVNFX0tFWVNfRU5BQkxFRCwKKysJCVNMT1dfS0VZU19FTkFCTEVELAor KwkJU0xPV19LRVlTX0JFRVBfUFJFU1MsCisrCQlTTE9XX0tFWVNfQkVFUF9BQ0NFUFQsCisrCQlT TE9XX0tFWVNfQkVFUF9SRUpFQ1QsCisrCQlCT1VOQ0VfS0VZU19FTkFCTEVELAorKwkJQk9VTkNF X0tFWVNfQkVFUF9SRUpFQ1QsCisrCQlUT0dHTEVfS0VZU19FTkFCTEVELAorKwkJU1RJQ0tZX0tF WVNfRU5BQkxFRCwKKysJCVNUSUNLWV9LRVlTX1RXT19LRVlfT0ZGLAorKwkJU1RJQ0tZX0tFWVNf QkVFUCwKKysJCUZFQVRVUkVfU1RBVEVfQ0hBTkdFX0JFRVAKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfTE9O R19QUkVTU18iLCB0eXBlX2lkID0gImNsdXR0ZXJfbG9uZ19wcmVzc19zdGF0ZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIExvbmdQcmVz c1N0YXRlIHsKKysJCVFVRVJZLAorKwkJQUNUSVZBVEUsCisrCQlDQU5DRUwKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX21vZGlmaWVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0K KysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIE1v ZGlmaWVyVHlwZSB7CisrCQlTSElGVF9NQVNLLAorKwkJTE9DS19NQVNLLAorKwkJQ09OVFJPTF9N QVNLLAorKwkJTU9EMV9NQVNLLAorKwkJTU9EMl9NQVNLLAorKwkJTU9EM19NQVNLLAorKwkJTU9E NF9NQVNLLAorKwkJTU9ENV9NQVNLLAorKwkJQlVUVE9OMV9NQVNLLAorKwkJQlVUVE9OMl9NQVNL LAorKwkJQlVUVE9OM19NQVNLLAorKwkJQlVUVE9ONF9NQVNLLAorKwkJQlVUVE9ONV9NQVNLLAor KwkJTU9ESUZJRVJfUkVTRVJWRURfMTNfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE0X01B U0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURf MTZfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE3X01BU0ssCisrCQlNT0RJRklFUl9SRVNF UlZFRF8xOF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTlfTUFTSywKKysJCU1PRElGSUVS X1JFU0VSVkVEXzIwX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yMV9NQVNLLAorKwkJTU9E SUZJRVJfUkVTRVJWRURfMjJfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIzX01BU0ssCisr CQlNT0RJRklFUl9SRVNFUlZFRF8yNF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjVfTUFT SywKKysJCVNVUEVSX01BU0ssCisrCQlIWVBFUl9NQVNLLAorKwkJTUVUQV9NQVNLLAorKwkJTU9E SUZJRVJfUkVTRVJWRURfMjlfTUFTSywKKysJCVJFTEVBU0VfTUFTSywKKysJCU1PRElGSUVSX01B U0sKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfT0ZGU0NSRUVOX1JFRElSRUNUXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9vZmZzY3JlZW5fcmVkaXJlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIE9mZnNjcmVlblJlZGlyZWN0IHsK KysJCUFVVE9NQVRJQ19GT1JfT1BBQ0lUWSwKKysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9P UklFTlRBVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfb3JpZW50YXRpb25fZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gT3JpZW50YXRp b24geworKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1BBTl8i LCB0eXBlX2lkID0gImNsdXR0ZXJfcGFuX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gUGFuQXhpcyB7CisrCQlBWElTX05PTkUs CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlBWElTX0FVVE8KKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf UEFUSF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9ub2RlX3R5cGVfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBQYXRoTm9kZVR5cGUg eworKwkJTU9WRV9UTywKKysJCUxJTkVfVE8sCisrCQlDVVJWRV9UTywKKysJCUNMT1NFLAorKwkJ UkVMX01PVkVfVE8sCisrCQlSRUxfTElORV9UTywKKysJCVJFTF9DVVJWRV9UTworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9ERUJVR19OT1BfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfZGVidWdfZmxhZ19n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFBpY2tEZWJ1Z0ZsYWcgewor KwkJUElDS0lORworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QSUNLXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9w aWNrX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlw dWJsaWMgZW51bSBQaWNrTW9kZSB7CisrCQlOT05FLAorKwkJUkVBQ1RJVkUsCisrCQlBTEwKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9DTElDS19UWVBFXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9wb2ludGVyX2ExMXlfZHdlbGxfY2xpY2tfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg ZW51bSBQb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIHsKKysJCU5PTkUsCisrCQlQUklNQVJZLAor KwkJU0VDT05EQVJZLAorKwkJTUlERExFLAorKwkJRE9VQkxFLAorKwkJRFJBRworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9BMTFZX0RXRUxMX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRl cl9hMTF5X2R3ZWxsX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQb2lu dGVyQTExeUR3ZWxsRGlyZWN0aW9uIHsKKysJCU5PTkUsCisrCQlMRUZULAorKwkJUklHSFQsCisr CQlVUCwKKysJCURPV04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9NT0RFXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBQb2ludGVyQTExeUR3ZWxsTW9kZSB7CisrCQlXSU5ET1csCisrCQlHRVNUVVJF CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTEx eV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJB MTF5RmxhZ3MgeworKwkJU0VDT05EQVJZX0NMSUNLX0VOQUJMRUQsCisrCQlEV0VMTF9FTkFCTEVE CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfVElNRU9VVF9UWVBFXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9wb2ludGVyX2ExMXlfdGltZW91dF90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IFBvaW50ZXJBMTF5VGltZW91dFR5cGUgeworKwkJU0VDT05EQVJZX0NMSUNLLAorKwkJRFdFTEws CisrCQlHRVNUVVJFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUEFJTlRfRkxBR1NfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3JlcGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBSZXBhaW50RmxhZ3MgeworKwkJ UFJFX1BBSU5ULAorKwkJUE9TVF9QQUlOVCwKKysJCVFVRVVFX1JFRFJBV19PTl9BREQKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfUkVRVUVTVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVxdWVzdF9tb2RlX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0g UmVxdWVzdE1vZGUgeworKwkJSEVJR0hUX0ZPUl9XSURUSCwKKysJCVdJRFRIX0ZPUl9IRUlHSFQs CisrCQlDT05URU5UX1NJWkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3JvdGF0ZV9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0K KysJcHVibGljIGVudW0gUm90YXRlQXhpcyB7CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQla X0FYSVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUk9UQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yb3Rh dGVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBl bnVtIFJvdGF0ZURpcmVjdGlvbiB7CisrCQlDVywKKysJCUNDVworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9T Q0FMSU5HX0ZJTFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2NhbGluZ19maWx0ZXJfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gU2Nh bGluZ0ZpbHRlciB7CisrCQlMSU5FQVIsCisrCQlORUFSRVNULAorKwkJVFJJTElORUFSCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX1NDUk9MTF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX2RpcmVjdGlv bl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBl bnVtIFNjcm9sbERpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJUklH SFQsCisrCQlTTU9PVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMX0ZJTklTSEVEXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9zY3JvbGxfZmluaXNoX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsRmlu aXNoRmxhZ3MgeworKwkJTk9ORSwKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9TQ1JPTExfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9tb2RlX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVi bGljIGVudW0gU2Nyb2xsTW9kZSB7CisrCQlOT05FLAorKwkJSE9SSVpPTlRBTExZLAorKwkJVkVS VElDQUxMWSwKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMX1NPVVJDRV8iLCB0eXBl X2lkID0gImNsdXR0ZXJfc2Nyb2xsX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yNiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxTb3VyY2UgeworKwkJVU5LTk9X TiwKKysJCVdIRUVMLAorKwkJRklOR0VSLAorKwkJQ09OVElOVU9VUworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBTaGFkZXJUeXBlIHsKKysJCVZF UlRFWF9TSEFERVIsCisrCQlGUkFHTUVOVF9TSEFERVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU05BUF9F REdFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zbmFwX2VkZ2VfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBTbmFwRWRnZSB7CisrCQlUT1As CisrCQlSSUdIVCwKKysJCUJPVFRPTSwKKysJCUxFRlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU1RBR0Vf U1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX3N0YXRlX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBTdGFn ZVN0YXRlIHsKKysJCUFDVElWQVRFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9DT0xPUl8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfc3RhdGljX2NvbG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gU3RhdGljQ29sb3IgeworKwkJV0hJVEUsCisrCQlC TEFDSywKKysJCVJFRCwKKysJCURBUktfUkVELAorKwkJR1JFRU4sCisrCQlEQVJLX0dSRUVOLAor KwkJQkxVRSwKKysJCURBUktfQkxVRSwKKysJCUNZQU4sCisrCQlEQVJLX0NZQU4sCisrCQlNQUdF TlRBLAorKwkJREFSS19NQUdFTlRBLAorKwkJWUVMTE9XLAorKwkJREFSS19ZRUxMT1csCisrCQlH UkFZLAorKwkJREFSS19HUkFZLAorKwkJTElHSFRfR1JBWSwKKysJCUJVVFRFUiwKKysJCUJVVFRF Ul9MSUdIVCwKKysJCUJVVFRFUl9EQVJLLAorKwkJT1JBTkdFLAorKwkJT1JBTkdFX0xJR0hULAor KwkJT1JBTkdFX0RBUkssCisrCQlDSE9DT0xBVEUsCisrCQlDSE9DT0xBVEVfTElHSFQsCisrCQlD SE9DT0xBVEVfREFSSywKKysJCUNIQU1FTEVPTiwKKysJCUNIQU1FTEVPTl9MSUdIVCwKKysJCUNI QU1FTEVPTl9EQVJLLAorKwkJU0tZX0JMVUUsCisrCQlTS1lfQkxVRV9MSUdIVCwKKysJCVNLWV9C TFVFX0RBUkssCisrCQlQTFVNLAorKwkJUExVTV9MSUdIVCwKKysJCVBMVU1fREFSSywKKysJCVND QVJMRVRfUkVELAorKwkJU0NBUkxFVF9SRURfTElHSFQsCisrCQlTQ0FSTEVUX1JFRF9EQVJLLAor KwkJQUxVTUlOSVVNXzEsCisrCQlBTFVNSU5JVU1fMiwKKysJCUFMVU1JTklVTV8zLAorKwkJQUxV TUlOSVVNXzQsCisrCQlBTFVNSU5JVU1fNSwKKysJCUFMVU1JTklVTV82LAorKwkJVFJBTlNQQVJF TlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfU1RFUF9NT0RFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGVw X21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVi bGljIGVudW0gU3RlcE1vZGUgeworKwkJU1RBUlQsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf U1dJUEVfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zd2lwZV9kaXJlY3Rpb25fZ2V0 X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1 YmxpYyBlbnVtIFN3aXBlRGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisr CQlSSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNs dXR0ZXJfdGV4dF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwlwdWJsaWMgZW51bSBUZXh0RGlyZWN0aW9uIHsKKysJCURFRkFVTFQsCisrCQlM VFIsCisrCQlSVEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVFVSRV8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfdGV4dHVyZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC40 IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVGbGFncyB7CisrCQlOT05FLAorKwkJUkdCX0ZMQUdf QkdSLAorKwkJUkdCX0ZMQUdfUFJFTVVMVCwKKysJCVlVVl9GTEFHX1lVVjIKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfVEVYVFVSRV9RVUFMSVRZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX3F1YWxp dHlfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gVGV4dHVy ZVF1YWxpdHkgeworKwkJTE9XLAorKwkJTUVESVVNLAorKwkJSElHSAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9USU1FTElORV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGltZWxpbmVfZGlyZWN0aW9uX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVudW0gVGlt ZWxpbmVEaXJlY3Rpb24geworKwkJRk9SV0FSRCwKKysJCUJBQ0tXQVJECisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX1RPVUNIUEFEX0dFU1RVUkVfUEhBU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RvdWNocGFk X2dlc3R1cmVfcGhhc2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQi KV0KKysJcHVibGljIGVudW0gVG91Y2hwYWRHZXN0dXJlUGhhc2UgeworKwkJQkVHSU4sCisrCQlV UERBVEUsCisrCQlFTkQsCisrCQlDQU5DRUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVU5JVF8iLCB0eXBl X2lkID0gImNsdXR0ZXJfdW5pdF90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gVW5pdFR5cGUgeworKwkJUElYRUwsCisrCQlFTSwK KysJCU1NLAorKwkJUE9JTlQsCisrCQlDTQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9WSVJUVUFMX0RFVklD RV9UWVBFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl92aXJ0dWFsX2RldmljZV90eXBlX2dldF90eXBl ICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gVmlydHVhbERldmljZVR5cGUgeworKwkJ Tk9ORSwKKysJCUtFWUJPQVJELAorKwkJUE9JTlRFUiwKKysJCVRPVUNIU0NSRUVOCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX1pPT01fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3pvb21fYXhpc19nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBab29tQXhp cyB7CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lN QUdFX0VSUk9SX0lOVkFMSURfIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBlcnJvcmRvbWFpbiBJbWFnZUVycm9yIHsKKysJCURBVEE7CisrCQlwdWJsaWMgc3RhdGlj IEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUklQVF9FUlJPUl9JTlZB TElEXyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBlcnJvcmRvbWFp biBTY3JpcHRFcnJvciB7CisrCQlUWVBFX0ZVTkNUSU9OLAorKwkJUFJPUEVSVFksCisrCQlWQUxV RTsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFyayBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAx LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgQ2x1 dHRlci5BY3RvciBBY3RvckNyZWF0ZUNoaWxkRnVuYyAoR0xpYi5PYmplY3QgaXRlbSk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3Bv cyA9IDEuOSldCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBkb3VibGUgQWxw aGFGdW5jIChDbHV0dGVyLkFscGhhIGFscGhhKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gNC45KV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBCaW5kaW5nQWN0aW9uRnVu YyAoR0xpYi5PYmplY3QgZ29iamVjdCwgc3RyaW5nIGFjdGlvbl9uYW1lLCB1aW50IGtleV92YWws IENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1Ymxp YyBkZWxlZ2F0ZSB2b2lkIENhbGxiYWNrIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3RhcmdldCA9IGZh bHNlKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgRW1pdElucHV0RGV2aWNlRXZlbnQgKENsdXR0 ZXIuRXZlbnQgZXZlbnQsIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45 KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wg RXZlbnRGaWx0ZXJGdW5jIChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBQYXRoQ2Fs bGJhY2sgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190YXJnZXQgPSBmYWxzZSldCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgUHJvZ3Jlc3NGdW5jIChH TGliLlZhbHVlIGEsIEdMaWIuVmFsdWUgYiwgZG91YmxlIHByb2dyZXNzLCBHTGliLlZhbHVlIHJl dHZhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGluc3RhbmNlX3BvcyA9IDYuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVi bGljIGRlbGVnYXRlIHZvaWQgU2NyaXB0Q29ubmVjdEZ1bmMgKENsdXR0ZXIuU2NyaXB0IHNjcmlw dCwgR0xpYi5PYmplY3Qgb2JqZWN0LCBzdHJpbmcgc2lnbmFsX25hbWUsIHN0cmluZyBoYW5kbGVy X25hbWUsIEdMaWIuT2JqZWN0IGNvbm5lY3Rfb2JqZWN0LCBHTGliLkNvbm5lY3RGbGFncyBmbGFn cyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGlu c3RhbmNlX3BvcyA9IDMuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBkZWxlZ2F0ZSBkb3VibGUgVGltZWxpbmVQcm9ncmVzc0Z1bmMgKENsdXR0ZXIuVGltZWxpbmUg dGltZWxpbmUsIGRvdWJsZSBlbGFwc2VkLCBkb3VibGUgdG90YWwpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0NPR0wi KV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBDT0dMOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0NVUlJFTlRfVElNRSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1Ymxp YyBjb25zdCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0ZMQVZPVVIiKV0KKysJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9 ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBGTEFWT1VSOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX1BBVEhf UkVMQVRJVkUiKV0KKysJcHVibGljIGNvbnN0IGludCBQQVRIX1JFTEFUSVZFOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X1BSSU9SSVRZX1JFRFJBVyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1Ymxp YyBjb25zdCBpbnQgUFJJT1JJVFlfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGJhc2VfaW5pdCAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjYWlyb19j bGVhciAoQ2Fpcm8uQ29udGV4dCBjcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBjYWlyb19zZXRfc291cmNlX2NvbG9yIChDYWlyby5Db250ZXh0IGNyLCBD bHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBz dGF0aWMgYm9vbCBjaGVja193aW5kb3dpbmdfYmFja2VuZCAoc3RyaW5nIGJhY2tlbmRfdHlwZSk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgY29sb3JfZnJvbV9obHMgKG91dCBDbHV0dGVyLkNvbG9yIGNvbG9y LCBmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJhdGlvbik7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3Rh dGljIHZvaWQgY29sb3JfZnJvbV9waXhlbCAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIHVpbnQz MiBwaXhlbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBj b2xvcl9mcm9tX3N0cmluZyAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIHN0cmluZyBzdHIpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5D b2xvcj8gY29sb3JfZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xvcik7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGlzYWJsZV9hY2Nlc3Np YmlsaXR5ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQg ZG9fZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0K KysJcHVibGljIHN0YXRpYyB1aW50IGV2ZW50X2FkZF9maWx0ZXIgKENsdXR0ZXIuU3RhZ2U/IHN0 YWdlLCBbQ0NvZGUgKGRlbGVnYXRlX3RhcmdldF9wb3MgPSAyLjIsIGRlc3Ryb3lfbm90aWZ5X3Bv cyA9IDIuMSldIG93bmVkIENsdXR0ZXIuRXZlbnRGaWx0ZXJGdW5jIGZ1bmMpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuRXZlbnQgZXZlbnRfZ2V0ICgp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRl ci5FdmVudCBldmVudF9wZWVrICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGlj IHN0YXRpYyB2b2lkIGV2ZW50X3JlbW92ZV9maWx0ZXIgKHVpbnQgaWQpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZXZlbnRzX3BlbmRpbmcgKCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfYWNjZXNzaWJpbGl0 eV9lbmFibGVkICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RhdGljIHVu b3duZWQgQ2x1dHRlci5FdmVudCBnZXRfY3VycmVudF9ldmVudCAoKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB1aW50MzIgZ2V0X2N1cnJlbnRfZXZlbnRfdGltZSAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuQmFja2VuZCBnZXRfZGVmYXVsdF9iYWNrZW5kICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwlwdWJsaWMgc3RhdGljIHVpbnQgZ2V0X2RlZmF1bHRfZnJhbWVfcmF0ZSAoKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24g Z2V0X2RlZmF1bHRfdGV4dF9kaXJlY3Rpb24gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBQYW5nby5Gb250TWFwIGdldF9mb250X21hcCAoKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3VwIGdl dF9vcHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBzdGF0 aWMgR0xpYi5PcHRpb25Hcm91cCBnZXRfb3B0aW9uX2dyb3VwX3dpdGhvdXRfaW5pdCAoKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBnZXRf c2NyaXB0X2lkIChHTGliLk9iamVjdCBnb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Jbml0 RXJyb3IgaW5pdCAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAiYXJnYyIsIGFycmF5X2xl bmd0aF9wb3MgPSAwLjUpXSByZWYgdW5vd25lZCBzdHJpbmdbXT8gYXJndik7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Jbml0RXJyb3IgaW5pdF93aXRo X2FyZ3MgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gImFyZ2MiLCBhcnJheV9sZW5ndGhf cG9zID0gMC41KV0gcmVmIHVub3duZWQgc3RyaW5nW10/IGFyZ3YsIHN0cmluZz8gcGFyYW1ldGVy X3N0cmluZywgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdMaWIuT3B0aW9uRW50cnlb XT8gZW50cmllcywgc3RyaW5nPyB0cmFuc2xhdGlvbl9kb21haW4pIHRocm93cyBHTGliLkVycm9y OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ cHVibGljIHN0YXRpYyB1aW50MzIga2V5c3ltX3RvX3VuaWNvZGUgKHVpbnQga2V5dmFsKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBtYWluICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyBpbnQgbWFpbl9sZXZlbCAoKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBtYWluX3F1aXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2N1c3RvbV9i YWNrZW5kX2Z1bmMgKHZvaWQqIGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVi bGljIHN0YXRpYyB1aW50IHVuaWNvZGVfdG9fa2V5c3ltICh1aW50MzIgd2MpOworK30KK2RpZmYg LS1naXQgYS92YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1jb2ds LTYtY3VzdG9tLnZhbGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uYTJj MTA2NDUKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFs YQorQEAgLTAsMCArMSwxMjUgQEAKKytuYW1lc3BhY2UgQ29nbCB7CisrCVtDb21wYWN0XQorKwlb Q0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNzIEJpdG1hcDogSGFu ZGxlIHsKKysJCXB1YmxpYyBzdGF0aWMgQml0bWFwIG5ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxl bmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAo Y25hbWUgPSAiQ29nbEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3MgQnVmZmVyOiBIYW5kbGUgewor KwkJcHVibGljIHVpbnQgZ2V0X3NpemUgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoc2l6 ZV90IG9mZnNldCwgW0NDb2RlIChhcnJheV9sZW5ndGhfdHlwZSA9ICJzaXplX3QiKV0gdWludDhb XSBkYXRhKTsKKysJCXB1YmxpYyB2b2lkIHVubWFwICgpOworKwl9CisrCisrCVtDQ29kZSAoaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKwkJcHVibGljIENv bG9yLmZyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFs cGhhKTsKKysJCXB1YmxpYyBDb2xvci5mcm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwg dWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUg KHJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRsZV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2ds X2hhbmRsZV91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgSGFuZGxlIHsKKysJCVtDQ29kZSAoY25h bWUgPSAiY29nbF9pc19iaXRtYXAiKV0KKysJCXB1YmxpYyBib29sIGlzX2JpdG1hcCAoKTsKKysJ CVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX2J1 ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19tYXRlcmlhbCIpXQorKwkJcHVi bGljIGJvb2wgaXNfbWF0ZXJpYWwgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfb2Zm c2NyZWVuIildCisrCQlwdWJsaWMgYm9vbCBpc19vZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfaXNfcGl4ZWxfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19waXhlbF9i dWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcHJvZ3JhbSIpXQorKwkJcHVi bGljIGJvb2wgaXNfcHJvZ3JhbSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19zaGFk ZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3NoYWRlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y29nbF9pc190ZXh0dXJlIildCisrCQlwdWJsaWMgYm9vbCBpc190ZXh0dXJlICgpOworKwkJW0ND b2RlIChjbmFtZSA9ICJjb2dsX2lzX3ZlcnRleF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlz X3ZlcnRleF9idWZmZXIgKCk7CisrCX0KKysKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJjb2dsX3BhdGhfY29weSIpXQorKwlbQ29t cGFjdF0KKysJcHVibGljIGNsYXNzIFBhdGggeworKwkJcHVibGljIHN0YXRpYyB2b2lkIEBuZXcg KCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaXhlbEJ1ZmZlcjogSGFu ZGxlIHsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZlciAodWludCBzaXplKTsKKysJCXB1YmxpYyBQaXhl bEJ1ZmZlci5mb3Jfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuUGl4ZWxGb3Jt YXQgZm9ybWF0LCB1aW50IHN0cmlkZSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAo Y25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fcmVmIiwg dW5yZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3VucmVmIildCisrCXB1YmxpYyBjbGFzcyBQ cm9ncmFtOiBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9wcm9ncmFt IiwgdHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgUHJvZ3JhbSAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaF9zaGFkZXIgKENv Z2wuU2hhZGVyIHNoYWRlcl9oYW5kbGUpOworKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2Nh dGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBsaW5rICgpOworKwkJ cHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fMWYgKGludCB1bmlmb3JtX25vLCBmbG9hdCB2YWx1 ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbm8sIGlu dCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZv cm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtd IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2ludCAoaW50IHVuaWZvcm1f bm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBpbnRbXSB2YWx1 ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3JtX25v LCBpbnQgc2l6ZSwgYm9vbCB0cmFuc3Bvc2UsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIu OSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHZvaWQgdXNlICgpOworKwl9CisrCisrCVtD b21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAi Y29nbF9zaGFkZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfdW5yZWYiKV0K KysJcHVibGljIGNsYXNzIFNoYWRlcjogSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29n bF9jcmVhdGVfc2hhZGVyIiwgdHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUgc2hhZGVy X3R5cGUpOworKwkJcHVibGljIHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0 X2luZm9fbG9nICgpOworKwkJcHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAoKTsKKysJ CXB1YmxpYyBib29sIGlzX2NvbXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNlIChzdHJp bmcgc291cmNlKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2ds SGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl9yZWYiLCB1bnJlZl9m dW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFZl cnRleEJ1ZmZlcjogSGFuZGxlIHsKKysJCVtDQ29kZSAodHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVmVydGV4QnVmZmVyICh1 aW50IG5fdmVydGljZXMpOworKwkJcHVibGljIHZvaWQgYWRkIChzdHJpbmcgYXR0cmlidXRlX25h bWUsIHVjaGFyIG5fY29tcG9uZW50cywgQ29nbC5BdHRyaWJ1dGVUeXBlIHR5cGUsIGJvb2wgbm9y bWFsaXplZCwgdWludDE2IHN0cmlkZSwgdm9pZCogcG9pbnRlcik7CisrCQlwdWJsaWMgdm9pZCBk ZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkaXNhYmxlIChz dHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZHJhdyAoQ29nbC5WZXJ0aWNl c01vZGUgbW9kZSwgaW50IGZpcnN0LCBpbnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZHJhd19l bGVtZW50cyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgVmVydGV4QnVmZmVySW5kaWNlcyBpbmRp Y2VzLCBpbnQgbWluX2luZGV4LCBpbnQgbWF4X2luZGV4LCBpbnQgaW5kaWNlc19vZmZzZXQsIGlu dCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBlbmFibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7 CisrCQlwdWJsaWMgdWludCBnZXRfbl92ZXJ0aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHN1Ym1p dCAoKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxl IildCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2VzOiBIYW5kbGUgeworKwkJcHVi bGljIFZlcnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5cGUgaW5kaWNlc190eXBlLCB2 b2lkKiBpbmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOworKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9yX3F1YWRzICh1aW50IG5faW5k aWNlcyk7CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRfdHlwZSAoKTsKKysJfQorKwor KwlbQ0NvZGUgKHR5cGVfaWQgPSAiQ09HTF9UWVBFX01BVFJJWCIsIGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJW0NDb2RlIChj bmFtZSA9ICJjb2dsX21hdHJpeF9pbml0X2Zyb21fYXJyYXkiLCBhcnJheV9sZW5ndGggPSBmYWxz ZSwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gZmFsc2UpXQorKwkJcHVibGljIE1hdHJpeC5mcm9t X2FycmF5IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBhcnJheSk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRfaWRlbnRpdHkiKV0KKysJCXB1Ymxp YyBNYXRyaXguaWRlbnRpdHkgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X211 bHRpcGx5IildCisrCQlwdWJsaWMgTWF0cml4Lm11bHRpcGx5IChDb2dsLk1hdHJpeCBhLCBDb2ds Lk1hdHJpeCBiKTsKKysJfQorKworKwlbU2ltcGxlVHlwZV0KKysJW0dJUiAobmFtZSA9ICJCb29s IildCisrCVtCb29sZWFuVHlwZV0KKysJcHVibGljIHN0cnVjdCBCb29sIDogYm9vbCB7CisrCX0K KysKKysJcHVibGljIHN0YXRpYyBHTGliLkNhbGxiYWNrIGdldF9wcm9jX2FkZHJlc3Moc3RyaW5n IHMpOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jb2dsLTYuZGVwcyBiL3ZhcGkvbXV0 dGVyLWNvZ2wtNi5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjk4 Y2NhYzViCistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYuZGVwcworQEAg LTAsMCArMSBAQAorK3BhbmdvCitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LnZhcGkg Yi92YXBpL211dHRlci1jb2dsLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAwLi5jOWFiNWQ1NworLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY29nbC02 LnZhcGkKK0BAIC0wLDAgKzEsMTA3NyBAQAorKy8qIG11dHRlci1jb2dsLTYudmFwaSBnZW5lcmF0 ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAi Q29nbCIsIGdpcl9uYW1lc3BhY2UgPSAiQ29nbCIsIGdpcl92ZXJzaW9uID0gIjYiLCBsb3dlcl9j YXNlX2NwcmVmaXggPSAiY29nbF8iKV0KKytuYW1lc3BhY2UgQ29nbCB7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCB0eXBl X2lkID0gImNvZ2xfYml0bWFwX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGlj IGNsYXNzIEJpdG1hcCA6IENvZ2wuSGFuZGxlIHsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIGVy cm9yX3F1YXJrICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ29nbEJpdG1hcCoiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBCaXRtYXAuZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVy cm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLlBpeGVs Rm9ybWF0IGdldF9mb3JtYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGludCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBpbnQgZ2V0X3Jvd3N0cmlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfc2l6ZV9mcm9tX2ZpbGUgKHN0cmluZyBm aWxlbmFtZSwgb3V0IGludCB3aWR0aCwgb3V0IGludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3dpZHRoICgpOworKwkJcHVibGljIHN0 YXRpYyBDb2dsLkJpdG1hcCBuZXdfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBH TGliLkVycm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBC dWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgdWludCBnZXRfc2l6ZSAoKTsKKysJCXB1 YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qgb2Zmc2V0LCBbQ0NvZGUgKGFycmF5X2xlbmd0aF90 eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRhdGEpOworKwkJcHVibGljIHZvaWQgdW5tYXAgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9p ZCA9ICJjb2dsX2NvbnRleHRfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBDb250ZXh0 IDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIENvbnRleHQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBm cmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9mcmFtZV9jbG9z dXJlX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTQiKV0KKysJcHVibGljIGNsYXNzIEZyYW1lQ2xvc3VyZSB7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxl X3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3VucmVmIildCisrCVtDb21wYWN0 XQorKwlwdWJsaWMgY2xhc3MgSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19i aXRtYXAiKV0KKysJCXB1YmxpYyBib29sIGlzX2JpdG1hcCAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9pc19idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX2J1ZmZlciAoKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY29nbF9pc19tYXRlcmlhbCIpXQorKwkJcHVibGljIGJvb2wgaXNfbWF0 ZXJpYWwgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfb2Zmc2NyZWVuIildCisrCQlw dWJsaWMgYm9vbCBpc19vZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNf cGl4ZWxfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19waXhlbF9idWZmZXIgKCk7CisrCQlb Q0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcHJvZ3JhbSIpXQorKwkJcHVibGljIGJvb2wgaXNfcHJv Z3JhbSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19zaGFkZXIiKV0KKysJCXB1Ymxp YyBib29sIGlzX3NoYWRlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc190ZXh0dXJl IildCisrCQlwdWJsaWMgYm9vbCBpc190ZXh0dXJlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj b2dsX2lzX3ZlcnRleF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3ZlcnRleF9idWZmZXIg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29w eV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJl ZSIsIHR5cGVfaWQgPSAiY29nbF9tYXRlcmlhbF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0K KysJcHVibGljIGNsYXNzIE1hdGVyaWFsIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgTWF0ZXJpYWwgKCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX3Rlc3RfZnVuY3Rpb24gKENvZ2wuTWF0ZXJp YWxBbHBoYUZ1bmMgYWxwaGFfZnVuYywgZmxvYXQgYWxwaGFfcmVmZXJlbmNlKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBibGVuZF9zdHJpbmcp IHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9ibGVuZF9jb25zdGFudCAoQ29nbC5Db2xvciBjb25zdGFudF9jb2xvcik7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDb2dsLkNvbG9yIGNvbG9yKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwg c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0dWIgKHVpbnQ4IHJlZCwg dWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXIgKGludCBsYXllcl9pbmRleCwgQ29nbC5IYW5kbGUg dGV4dHVyZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX2Nv bWJpbmUgKGludCBsYXllcl9pbmRleCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIu RXJyb3I7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2NvbWJp bmVfY29uc3RhbnQgKGludCBsYXllcl9pbmRleCwgQ29nbC5Db2xvciBjb25zdGFudCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQor KwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2ZpbHRlcnMgKGludCBsYXllcl9pbmRleCwgQ29nbC5N YXRlcmlhbEZpbHRlciBtaW5fZmlsdGVyLCBDb2dsLk1hdGVyaWFsRmlsdGVyIG1hZ19maWx0ZXIp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9tYXRyaXggKGludCBsYXllcl9pbmRleCwg Q29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBz ZXRfbGF5ZXJfcG9pbnRfc3ByaXRlX2Nvb3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgsIGJv b2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdm9pZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6ZSk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VzZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJvZ3Jh bSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgTWF0ZXJpYWxM YXllciB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg dHlwZV9pZCA9ICJjb2dsX29iamVjdF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0 IGNsYXNzIE9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgT2JqZWN0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9vZmZzY3JlZW5fZ2V0X2d0eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBPZmZzY3JlZW4gOiBDb2dsLk9iamVjdCwgQ29nbC5GcmFt ZWJ1ZmZlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgT2Zmc2NyZWVuICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBPZmZzY3JlZW4udG9fdGV4dHVyZSAoQ29nbC5U ZXh0dXJlIHRleHR1cmUpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHVibGljIE9mZnNjcmVlbi53aXRoX3RleHR1cmUgKENvZ2wuVGV4dHVyZSB0ZXh0 dXJlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0 eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBP bnNjcmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVmZmVyIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPbnNjcmVlbiAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ29nbC5PbnNjcmVlbkRp cnR5Q2xvc3VyZSBhZGRfZGlydHlfY2FsbGJhY2sgKFtDQ29kZSAoZGVsZWdhdGVfdGFyZ2V0X3Bv cyA9IDEuNSldIENvZ2wuT25zY3JlZW5EaXJ0eUNhbGxiYWNrIGNhbGxiYWNrLCBDb2dsLlVzZXJE YXRhRGVzdHJveUNhbGxiYWNrPyBkZXN0cm95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuUmVzaXplQ2xvc3VyZSBhZGRfcmVzaXplX2NhbGxi YWNrIChbQ0NvZGUgKGRlbGVnYXRlX3RhcmdldF9wb3MgPSAxLjUpXSBDb2dsLk9uc2NyZWVuUmVz aXplQ2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFEZXN0cm95Q2FsbGJhY2s/IGRlc3Ry b3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2J1 ZmZlcl9hZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGlu dDY0IGdldF9mcmFtZV9jb3VudGVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIGJvb2wgZ2V0X3Jlc2l6YWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyB2b2lkIGhpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NiIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2RpcnR5X2NhbGxiYWNrIChDb2dsLk9uc2NyZWVu RGlydHlDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJ CXB1YmxpYyB2b2lkIHJlbW92ZV9mcmFtZV9jYWxsYmFjayAoQ29nbC5GcmFtZUNsb3N1cmUgY2xv c3VyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCByZW1v dmVfcmVzaXplX2NhbGxiYWNrIChDb2dsLk9uc2NyZWVuUmVzaXplQ2xvc3VyZSBjbG9zdXJlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZXNpemFi bGUgKGJvb2wgcmVzaXphYmxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNob3cgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc3dhcF9idWZmZXJzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0K KysJCXB1YmxpYyB2b2lkIHN3YXBfYnVmZmVyc193aXRoX2RhbWFnZSAoaW50IHJlY3RhbmdsZXMs IGludCBuX3JlY3RhbmdsZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHN3YXBfcmVnaW9uIChpbnQgcmVjdGFuZ2xlcywgaW50IG5fcmVjdGFuZ2xlcyk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9m dW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIs IHR5cGVfaWQgPSAiY29nbF9vbnNjcmVlbl9kaXJ0eV9jbG9zdXJlX2dldF9ndHlwZSAoKSIpXQor KwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIGNsYXNz IE9uc2NyZWVuRGlydHlDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX29uc2NyZWVuX3Jlc2l6ZV9j bG9zdXJlX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW5SZXNpemVDbG9zdXJlIHsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0g ImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGF0aCB7Cisr CQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfcGlwZWxpbmVfZ2V0X2d0eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBQaXBlbGluZSA6IENvZ2wuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyBQaXBlbGluZSAoQ29nbC5Db250ZXh0IGNvbnRleHQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmUgY29weSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGZvcmVhY2hf bGF5ZXIgKENvZ2wuUGlwZWxpbmVMYXllckNhbGxiYWNrIGNhbGxiYWNrKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lQWxwaGFGdW5jIGdldF9h bHBoYV90ZXN0X2Z1bmN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIGZsb2F0IGdldF9hbHBoYV90ZXN0X3JlZmVyZW5jZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lQ3VsbEZhY2VN b2RlIGdldF9jdWxsX2ZhY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyBDb2dsLldpbmRpbmcgZ2V0X2Zyb250X2ZhY2Vfd2luZGluZyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUZpbHRlciBn ZXRfbGF5ZXJfbWFnX2ZpbHRlciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUZpbHRlciBnZXRfbGF5ZXJfbWlu X2ZpbHRlciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyBib29sIGdldF9sYXllcl9wb2ludF9zcHJpdGVfY29vcmRzX2VuYWJsZWQgKGlu dCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF9sYXllcl90ZXh0dXJlIChpbnQgbGF5ZXJfaW5kZXgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVX cmFwTW9kZSBnZXRfbGF5ZXJfd3JhcF9tb2RlX3MgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBNb2RlIGdl dF9sYXllcl93cmFwX21vZGVfdCAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fbGF5ZXJzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Blcl92ZXJ0ZXhfcG9pbnRfc2l6 ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRf cG9pbnRfc2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBp bnQgZ2V0X3VuaWZvcm1fbG9jYXRpb24gKHN0cmluZyB1bmlmb3JtX25hbWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X3Vz ZXJfcHJvZ3JhbSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCByZW1vdmVfbGF5ZXIgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoQ29nbC5Q aXBlbGluZUFscGhhRnVuYyBhbHBoYV9mdW5jLCBmbG9hdCBhbHBoYV9yZWZlcmVuY2UpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2JsZW5kIChzdHJp bmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZF9jb25zdGFudCAoQ29nbC5Db2xvciBj b25zdGFudF9jb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg dm9pZCBzZXRfY29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3Jl ZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwg dWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2N1bGxfZmFjZV9tb2RlIChDb2dsLlBpcGVsaW5lQ3VsbEZhY2VN b2RlIGN1bGxfZmFjZV9tb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9mcm9udF9mYWNlX3dpbmRpbmcgKENvZ2wuV2luZGluZyBmcm9udF93aW5k aW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9s YXllcl9jb21iaW5lIChpbnQgbGF5ZXJfaW5kZXgsIHN0cmluZyBibGVuZF9zdHJpbmcpIHRocm93 cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2xheWVyX2NvbWJpbmVfY29uc3RhbnQgKGludCBsYXllcl9pbmRleCwgQ29nbC5Db2xv ciBjb25zdGFudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2xheWVyX2ZpbHRlcnMgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZUZpbHRl ciBtaW5fZmlsdGVyLCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9tYXRyaXggKGlu dCBsYXllcl9pbmRleCwgQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfbnVsbF90ZXh0dXJlIChpbnQgbGF5 ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wg c2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2luZGV4LCBi b29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJf dGV4dHVyZSAoaW50IGxheWVyX2luZGV4LCBDb2dsLlRleHR1cmUgdGV4dHVyZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfd3JhcF9tb2Rl IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGVf cyAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfd3JhcF9tb2Rl X3QgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X3Blcl92ZXJ0ZXhfcG9p bnRfc2l6ZSAoYm9vbCBlbmFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3BvaW50X3NpemUgKGZsb2F0IHBvaW50 X3NpemUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3VuaWZvcm1fMWYgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV8xaSAoaW50 IHVuaWZvcm1fbG9jYXRpb24sIGludCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZvcm1fbG9jYXRp b24sIGludCBuX2NvbXBvbmVudHMsIGludCBjb3VudCwgZmxvYXQgdmFsdWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1faW50IChpbnQg dW5pZm9ybV9sb2NhdGlvbiwgaW50IG5fY29tcG9uZW50cywgaW50IGNvdW50LCBpbnQgdmFsdWUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZv cm1fbWF0cml4IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IGRpbWVuc2lvbnMsIGludCBjb3Vu dCwgYm9vbCB0cmFuc3Bvc2UsIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VyX3Byb2dyYW0gKENvZ2wuSGFuZGxlIHByb2dy YW0pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBpeGVsQnVmZmVyIDogQ29nbC5IYW5kbGUgewor KwkJcHVibGljIFBpeGVsQnVmZmVyICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVmZmVy LmZvcl9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3Jt YXQsIHVpbnQgc3RyaWRlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJv Z3JhbV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fdW5yZWYiKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQcm9ncmFtIDogQ29nbC5IYW5kbGUgeworKwkJW0NDb2Rl IChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9wcm9ncmFtIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNvZ2xIYW5kbGUqIildCisrCQlwdWJsaWMgUHJvZ3JhbSAoKTsKKysJ CXB1YmxpYyB2b2lkIGF0dGFjaF9zaGFkZXIgKENvZ2wuU2hhZGVyIHNoYWRlcl9oYW5kbGUpOwor KwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2NhdGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7 CisrCQlwdWJsaWMgdm9pZCBsaW5rICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1f MWYgKGludCB1bmlmb3JtX25vLCBmbG9hdCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQg dW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbm8sIGludCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFy cmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMg dm9pZCB1bmlmb3JtX2ludCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5 X2xlbmd0aF9wb3MgPSAyLjkpXSBpbnRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQg dW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgYm9vbCB0cmFuc3Bvc2Us IFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVi bGljIHZvaWQgdXNlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFk ZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfdW5yZWYiKV0KKysJW0NvbXBh Y3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfY3JlYXRlX3NoYWRlciIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJcHVibGljIFNoYWRlciAoQ29nbC5TaGFkZXJU eXBlIHNoYWRlcl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGNvbXBpbGUgKCk7CisrCQlwdWJsaWMg c3RyaW5nIGdldF9pbmZvX2xvZyAoKTsKKysJCXB1YmxpYyBDb2dsLlNoYWRlclR5cGUgZ2V0X3R5 cGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jb21waWxlZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNv dXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmQiLCB0eXBlX2lk ID0gImNvZ2xfdGV4dHVyZV8yZF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1 cmUyRCA6IENvZ2wuT2JqZWN0LCBDb2dsLlRleHR1cmUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFRleHR1cmUyRCAoKTsKKysJCXB1 YmxpYyB2b2lkIGVnbF9pbWFnZV9leHRlcm5hbF9hbGxvY19maW5pc2ggKHZvaWQqIHVzZXJfZGF0 YSwgR0xpYi5EZXN0cm95Tm90aWZ5IGRlc3Ryb3kpOworKwkJcHVibGljIHZvaWQgZWdsX2ltYWdl X2V4dGVybmFsX2JpbmQgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgVGV4dHVyZTJE LmZyb21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXApOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9ICJ0ZXh0dXJl XzJkX3NsaWNlZCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlXzJkX3NsaWNlZF9nZXRfZ3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmUyRFNsaWNlZCA6IENvZ2wuT2JqZWN0LCBDb2ds LlRleHR1cmUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIFRleHR1cmUyRFNsaWNlZCAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlw dWJsaWMgVGV4dHVyZTJEU2xpY2VkLmZyb21fYml0bWFwIChDb2dsLkJpdG1hcCBibXAsIGludCBt YXhfd2FzdGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVm ZmVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl91bnJlZiIpXQor KwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZlciA6IENvZ2wuSGFuZGxlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNvZ2xI YW5kbGUqIildCisrCQlwdWJsaWMgVmVydGV4QnVmZmVyICh1aW50IG5fdmVydGljZXMpOworKwkJ cHVibGljIHZvaWQgYWRkIChzdHJpbmcgYXR0cmlidXRlX25hbWUsIHVjaGFyIG5fY29tcG9uZW50 cywgQ29nbC5BdHRyaWJ1dGVUeXBlIHR5cGUsIGJvb2wgbm9ybWFsaXplZCwgdWludDE2IHN0cmlk ZSwgdm9pZCogcG9pbnRlcik7CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRlIChzdHJpbmcgYXR0cmli dXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZGlzYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1l KTsKKysJCXB1YmxpYyB2b2lkIGRyYXcgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIGludCBmaXJz dCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGRyYXdfZWxlbWVudHMgKENvZ2wuVmVydGlj ZXNNb2RlIG1vZGUsIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBpbmRpY2VzLCBpbnQgbWluX2lu ZGV4LCBpbnQgbWF4X2luZGV4LCBpbnQgaW5kaWNlc19vZmZzZXQsIGludCBjb3VudCk7CisrCQlw dWJsaWMgdm9pZCBlbmFibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdWlu dCBnZXRfbl92ZXJ0aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHN1Ym1pdCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFu ZGxlIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVySW5kaWNlcyA6 IENvZ2wuSGFuZGxlIHsKKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIChDb2dsLkluZGlj ZXNUeXBlIGluZGljZXNfdHlwZSwgdm9pZCogaW5kaWNlc19hcnJheSwgaW50IGluZGljZXNfbGVu KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMgZ2V0 X2Zvcl9xdWFkcyAodWludCBuX2luZGljZXMpOworKwkJcHVibGljIENvZ2wuSW5kaWNlc1R5cGUg Z2V0X3R5cGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lYnVmZmVyX2dldF9ndHlwZSAoKSIpXQorKwlwdWJs aWMgaW50ZXJmYWNlIEZyYW1lYnVmZmVyIDogQ29nbC5PYmplY3QgeworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgYWxsb2NhdGUgKCkgdGhyb3dzIEdMaWIuRXJy b3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjbGVhciAo dWxvbmcgYnVmZmVycywgQ29nbC5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcjRmICh1bG9uZyBidWZmZXJzLCBmbG9hdCByZWQs IGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBkaXNjYXJkX2J1ZmZlcnMgKHVsb25nIGJ1ZmZl cnMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdf bXVsdGl0ZXh0dXJlZF9yZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhf MSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldIGZsb2F0W10gdGV4X2Nvb3JkcywgaW50IHRleF9jb29yZHNfbGVuKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3JlY3RhbmdsZSAo Q29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwg ZmxvYXQgeV8yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBkcmF3X3JlY3RhbmdsZXMgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGNvb3JkaW5hdGVzLCB1aW50IG5fcmVjdGFuZ2xlcyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd190ZXh0 dXJlZF9yZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhfMSwgZmxvYXQg eV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQgc18xLCBmbG9hdCB0XzEsIGZsb2F0IHNf MiwgZmxvYXQgdF8yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBkcmF3X3RleHR1cmVkX3JlY3RhbmdsZXMgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIFtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGNvb3JkaW5hdGVzLCB1aW50IG5f cmVjdGFuZ2xlcyk7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBmaW5pc2ggKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZnJ1c3R1bSAoZmxv YXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6X25l YXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyBpbnQgZ2V0X2FscGhhX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgaW50IGdldF9ibHVlX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkNvbnRleHQgZ2V0X2NvbnRleHQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgaW50IGdldF9kZXB0aF9iaXRzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBib29sIGdldF9kZXB0 aF93cml0ZV9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X2RpdGhlcl9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIGludCBnZXRfZ3JlZW5fYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2hlaWdodCAoKTsKKysJCXB1YmxpYyBib29s IGdldF9pc19zdGVyZW8gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIENvZ2wuTWF0cml4IGdldF9tb2RlbHZpZXdfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeCBnZXRfcHJvamVjdGlvbl9tYXRy aXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9y ZWRfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50 IGdldF9zYW1wbGVzX3Blcl9waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIild CisrCQlwdWJsaWMgQ29nbC5TdGVyZW9Nb2RlIGdldF9zdGVyZW9fbW9kZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF92aWV3cG9ydDRmdiAoW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIG91dCB1bm93bmVkIGZsb2F0IHZpZXdwb3J0WzRd KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmll d3BvcnRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF92aWV3cG9ydF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfeSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3dpZHRoICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGlkZW50aXR5X21hdHJpeCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBvcnRob2dy YXBoaWMgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQg bmVhciwgZmxvYXQgZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBwZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9u ZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgcG9wX2NsaXAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgcG9wX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBwdXNoX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlY3RhbmdsZV9jbGlwIChmbG9hdCB4XzEsIGZs b2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJcHVibGljIHZvaWQgcHVzaF9yZWdp b25fY2xpcCAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9zY2lzc29yX2NsaXAgKGludCB4LCBpbnQgeSwgaW50 IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgYm9vbCByZWFkX3BpeGVscyAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWln aHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50OCBwaXhlbHMpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIHJlYWRfcGl4ZWxzX2ludG9fYml0bWFw IChpbnQgeCwgaW50IHksIENvZ2wuUmVhZFBpeGVsc0ZsYWdzIHNvdXJjZSwgQ29nbC5CaXRtYXAg Yml0bWFwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHJl c29sdmVfc2FtcGxlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyB2b2lkIHJlc29sdmVfc2FtcGxlc19yZWdpb24gKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBp bnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCByb3RhdGUgKGZsb2F0IGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3Jh cGhlbmUuRXVsZXIgZXVsZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHNjYWxlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVwdGhfd3JpdGVfZW5hYmxl ZCAoYm9vbCBkZXB0aF93cml0ZV9lbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9kaXRoZXJfZW5hYmxlZCAoYm9vbCBkaXRoZXJfZW5hYmxl ZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21v ZGVsdmlld19tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Byb2plY3Rpb25fbWF0cml4IChDb2dsLk1h dHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3NhbXBsZXNfcGVyX3BpeGVsIChpbnQgc2FtcGxlc19wZXJfcGl4ZWwpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGVyZW9fbW9kZSAo Q29nbC5TdGVyZW9Nb2RlIHN0ZXJlb19tb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIHNldF92aWV3cG9ydCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg d2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgdHJhbnNmb3JtIChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoZmxvYXQgeCwgZmxv YXQgeSwgZmxvYXQgeik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX3RleHR1cmVfZ2V0X2d0eXBlICgpIildCisrCXB1Ymxp YyBpbnRlcmZhY2UgVGV4dHVyZSA6IENvZ2wuT2JqZWN0IHsKKysJCXB1YmxpYyBib29sIGFsbG9j YXRlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3Jf cXVhcmsgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIENvZ2wu VGV4dHVyZUNvbXBvbmVudHMgZ2V0X2NvbXBvbmVudHMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9k YXRhIChDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEp OworKwkJcHVibGljIGJvb2wgZ2V0X2dsX3RleHR1cmUgKG91dCB1aW50IG91dF9nbF9oYW5kbGUs IG91dCB1aW50IG91dF9nbF90YXJnZXQpOworKwkJcHVibGljIHVpbnQgZ2V0X2hlaWdodCAoKTsK KysJCXB1YmxpYyBpbnQgZ2V0X21heF93YXN0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE4IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcHJlbXVsdGlwbGllZCAoKTsKKysJCXB1YmxpYyB1 aW50IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3NsaWNlZCAoKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9iaXRtYXAg KENvZ2wuQml0bWFwIGJpdG1hcCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxG b3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3Rh dGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9kYXRhIChpbnQgd2lkdGgsIGludCBoZWlnaHQsIENv Z2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgQ29nbC5QaXhl bEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQsIGludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX2Zp bGUgKHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxG b3JtYXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX3N1Yl90ZXh0dXJlIChpbnQgc3Vi X3gsIGludCBzdWJfeSwgaW50IHN1Yl93aWR0aCwgaW50IHN1Yl9oZWlnaHQpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld193aXRoX3NpemUgKHVp bnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhl bEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jb21wb25lbnRzIChDb2dsLlRleHR1cmVDb21wb25lbnRzIGNv bXBvbmVudHMpOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKENvZ2wuUGl4ZWxGb3JtYXQgZm9y bWF0LCBpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhLCBpbnQgbGV2ZWwpIHRocm93cyBHTGliLkVy cm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9w cmVtdWx0aXBsaWVkIChib29sIHByZW11bHRpcGxpZWQpOworKwkJcHVibGljIGJvb2wgc2V0X3Jl Z2lvbiAoaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCB1aW50IGRz dF93aWR0aCwgdWludCBkc3RfaGVpZ2h0LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuUGl4 ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9uX2Zyb21fYml0bWFw IChpbnQgc3JjX3gsIGludCBzcmNfeSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0X3dp ZHRoLCB1aW50IGRzdF9oZWlnaHQsIENvZ2wuQml0bWFwIGJpdG1hcCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtTaW1wbGVUeXBlXQorKwlw dWJsaWMgc3RydWN0IEFuZ2xlIDogaW50MzIgeworKwl9CisrCVtCb29sZWFuVHlwZV0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtHSVIgKG5hbWUgPSAi Qm9vbCIpXQorKwlbU2ltcGxlVHlwZV0KKysJcHVibGljIHN0cnVjdCBCb29sIDogYm9vbCB7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVj dCBDb2xvciB7CisrCQlwdWJsaWMgQ29nbC5Db2xvcj8gY29weSAoKTsKKysJCXB1YmxpYyBDb2xv ci5mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBo YSk7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVp bnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGEgKCk7Cisr CQlwdWJsaWMgdWludDggZ2V0X2FscGhhX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Fs cGhhX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ibHVlICgpOworKwkJcHVibGljIHVp bnQ4IGdldF9ibHVlX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JsdWVfZmxvYXQgKCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2dyZWVuICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9ncmVl bl9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ncmVlbl9mbG9hdCAoKTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfcmVkICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9yZWRfYnl0ZSAoKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfcmVkX2Zsb2F0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVu LCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fNGZ2IChmbG9hdCBjb2xvcl9hcnJheSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fNHViICh1 aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlwdWJs aWMgdm9pZCBwcmVtdWx0aXBseSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9hbHBoYSAoZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2J5dGUgKHVpbnQ4IGFscGhhKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV9m bG9hdCAoZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2JsdWUgKGZsb2F0IGJsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsdWVfYnl0ZSAodWludDggYmx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1ZV9mbG9hdCAoZmxv YXQgYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfZ3JlZW4gKGZsb2F0IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9ncmVlbl9ieXRlICh1aW50OCBncmVlbik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW5fZmxvYXQgKGZsb2F0IGdy ZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9y ZWQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dm9pZCBzZXRfcmVkX2J5dGUgKHVpbnQ4IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVkX2Zsb2F0IChmbG9hdCByZWQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2hzbCAob3V0IGZsb2F0IGh1 ZSwgb3V0IGZsb2F0IHNhdHVyYXRpb24sIG91dCBmbG9hdCBsdW1pbmFuY2UpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgdW5wcmVtdWx0aXBseSAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3RydWN0 IERlYnVnT2JqZWN0VHlwZUluZm8geworKwkJcHVibGljIHdlYWsgc3RyaW5nIG5hbWU7CisrCQlw dWJsaWMgdWxvbmcgaW5zdGFuY2VfY291bnQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVl X2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiQ09HTF9UWVBFX01BVFJJWCIp XQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7CisrCQlwdWJsaWMgZmxvYXQgeHg7CisrCQlwdWJs aWMgZmxvYXQgeXg7CisrCQlwdWJsaWMgZmxvYXQgeng7CisrCQlwdWJsaWMgZmxvYXQgd3g7Cisr CQlwdWJsaWMgZmxvYXQgeHk7CisrCQlwdWJsaWMgZmxvYXQgeXk7CisrCQlwdWJsaWMgZmxvYXQg enk7CisrCQlwdWJsaWMgZmxvYXQgd3k7CisrCQlwdWJsaWMgZmxvYXQgeHo7CisrCQlwdWJsaWMg ZmxvYXQgeXo7CisrCQlwdWJsaWMgZmxvYXQgeno7CisrCQlwdWJsaWMgZmxvYXQgd3o7CisrCQlw dWJsaWMgZmxvYXQgeHc7CisrCQlwdWJsaWMgZmxvYXQgeXc7CisrCQlwdWJsaWMgZmxvYXQgenc7 CisrCQlwdWJsaWMgZmxvYXQgd3c7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgQ29nbC5NYXRyaXg/IGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gZmFsc2UsIGNuYW1lID0gImNvZ2xfbWF0cml4X2lu aXRfZnJvbV9hcnJheSIpXQorKwkJcHVibGljIE1hdHJpeC5mcm9tX2FycmF5IChbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBhcnJheSk7CisrCQlwdWJsaWMgdm9pZCBmcnVz dHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZs b2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJcHVibGljIHVub3duZWQgZmxvYXRbXSBnZXRf YXJyYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBn ZXRfaW52ZXJzZSAob3V0IENvZ2wuTWF0cml4IGludmVyc2UpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjb2dsX21hdHJpeF9pbml0X2lkZW50aXR5IildCisrCQlwdWJsaWMgTWF0cml4LmlkZW50aXR5 ICgpOworKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlciBldWxl cik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBpbml0X3Ry YW5zbGF0aW9uIChmbG9hdCB0eCwgZmxvYXQgdHksIGZsb2F0IHR6KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGlzX2lkZW50aXR5ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgbG9va19hdCAoZmxvYXQgZXllX3Bv c2l0aW9uX3gsIGZsb2F0IGV5ZV9wb3NpdGlvbl95LCBmbG9hdCBleWVfcG9zaXRpb25feiwgZmxv YXQgb2JqZWN0X3gsIGZsb2F0IG9iamVjdF95LCBmbG9hdCBvYmplY3RfeiwgZmxvYXQgd29ybGRf dXBfeCwgZmxvYXQgd29ybGRfdXBfeSwgZmxvYXQgd29ybGRfdXBfeik7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfbWF0cml4X211bHRpcGx5IildCisrCQlwdWJsaWMgTWF0cml4Lm11bHRpcGx5 IChDb2dsLk1hdHJpeCBhLCBDb2dsLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBvcnRob2dyYXBoaWMgKGZsb2F0IHhfMSwgZmxvYXQgeV8x LCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQgbmVhciwgZmxvYXQgZmFyKTsKKysJCXB1Ymxp YyB2b2lkIHBlcnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25l YXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1YmxpYyB2b2lkIHByb2plY3RfcG9pbnRzIChpbnQgbl9j b21wb25lbnRzLCBzaXplX3Qgc3RyaWRlX2luLCB2b2lkKiBwb2ludHNfaW4sIHNpemVfdCBzdHJp ZGVfb3V0LCB2b2lkKiBwb2ludHNfb3V0LCBpbnQgbl9wb2ludHMpOworKwkJcHVibGljIHZvaWQg cm90YXRlIChmbG9hdCBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfZXVsZXIgKEdyYXBo ZW5lLkV1bGVyIGV1bGVyKTsKKysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBzeCwgZmxvYXQg c3ksIGZsb2F0IHN6KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB0cmFuc2Zvcm1fcG9pbnQgKHJl ZiBDb2dsLk1hdHJpeCBtYXRyaXgsIHJlZiBmbG9hdCB4LCByZWYgZmxvYXQgeSwgcmVmIGZsb2F0 IHosIHJlZiBmbG9hdCB3KTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybV9wb2ludHMgKGludCBu X2NvbXBvbmVudHMsIHNpemVfdCBzdHJpZGVfaW4sIHZvaWQqIHBvaW50c19pbiwgc2l6ZV90IHN0 cmlkZV9vdXQsIHZvaWQqIHBvaW50c19vdXQsIGludCBuX3BvaW50cyk7CisrCQlwdWJsaWMgdm9p ZCB0cmFuc2xhdGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zcG9zZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHZpZXdfMmRfaW5fZnJ1c3R1bSAoZmxv YXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6X25l YXIsIGZsb2F0IHpfMmQsIGZsb2F0IHdpZHRoXzJkLCBmbG9hdCBoZWlnaHRfMmQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgdmlld18yZF9pbl9wZXJzcGVj dGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6XzJk LCBmbG9hdCB3aWR0aF8yZCwgZmxvYXQgaGVpZ2h0XzJkKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0cnVjdCBPbnNjcmVlbkRpcnR5SW5m byB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMgaW50IHdp ZHRoOworKwkJcHVibGljIGludCBoZWlnaHQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1 Y3QgVGV4dHVyZVZlcnRleCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5 OworKwkJcHVibGljIGZsb2F0IHo7CisrCQlwdWJsaWMgZmxvYXQgdHg7CisrCQlwdWJsaWMgZmxv YXQgdHk7CisrCQlwdWJsaWMgQ29nbC5Db2xvciBjb2xvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0IFVzZXJEYXRhS2V5IHsKKysJ CXB1YmxpYyBpbnQgdW51c2VkOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9Db2dsQ29sb3JTaXplQ2hlY2siLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfQ29sb3JTaXplQ2hlY2sgeworKwkJW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29tcGlsZV90aW1l X2Fzc2VydF9Db2dsQ29sb3Jfc2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbE1hdHJpeFNpemVDaGVjayIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IF9NYXRyaXhTaXplQ2hlY2sgeworKwkJW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29tcGls ZV90aW1lX2Fzc2VydF9Db2dsTWF0cml4X3NpemU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0NvZ2xUZXh0dXJlVmVydGV4U2l6ZUNo ZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgX1RleHR1cmVWZXJ0 ZXhTaXplQ2hlY2sgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJs aWMgd2VhayBjaGFyW10gY29tcGlsZV90aW1lX2Fzc2VydF9Db2dsVGV4dHVyZVZlcnRleF9zaXpl OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9BVFRSSUJVVEVfVFlQRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBdHRyaWJ1dGVUeXBlIHsKKysJ CUJZVEUsCisrCQlVTlNJR05FRF9CWVRFLAorKwkJU0hPUlQsCisrCQlVTlNJR05FRF9TSE9SVCwK KysJCUZMT0FUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX0JJVE1BUF9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBCaXRtYXBFcnJvciB7 CisrCQlGQUlMRUQsCisrCQlVTktOT1dOX1RZUEUsCisrCQlDT1JSVVBUX0lNQUdFCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dM X0JMRU5EX1NUUklOR19FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBCbGVuZFN0cmluZ0Vycm9yIHsKKysJCVBB UlNFX0VSUk9SLAorKwkJQVJHVU1FTlRfUEFSU0VfRVJST1IsCisrCQlJTlZBTElEX0VSUk9SLAor KwkJR1BVX1VOU1VQUE9SVEVEX0VSUk9SOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgcXVhcmsg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX0JVRkZFUl9CSVRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBCdWZmZXJCaXQg eworKwkJQ09MT1IsCisrCQlERVBUSCwKKysJCVNURU5DSUwKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlw dWJsaWMgZW51bSBCdWZmZXJUYXJnZXQgeworKwkJV0lORE9XX0JVRkZFUiwKKysJCU9GRlNDUkVF Tl9CVUZGRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjcHJlZml4ID0gIkNPR0xfREVQVEhfVEVTVF9GVU5DVElPTl8iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIGVudW0gRGVwdGhUZXN0RnVuY3Rpb24geworKwkJTkVWRVIsCisrCQlM RVNTLAorKwkJRVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisr CQlHRVFVQUwsCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRUdMX0lNQUdFX0ZMQUdfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRWdsSW1hZ2VGbGFncyB7Cisr CQlOT05FLAorKwkJTk9fR0VUX0RBVEEKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRkVBVFVSRV9JRF8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0g RmVhdHVyZUlEIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1VOU0lHTkVE X0lOVF9JTkRJQ0VTIildCisrCQlPR0xfRkVBVFVSRV9JRF9VTlNJR05FRF9JTlRfSU5ESUNFUywK KysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1JFQUQi KV0KKysJCU9HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1JFQUQsCisrCQlbQ0NvZGUgKGNu YW1lID0gIkNPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9XUklURSIpXQorKwkJT0dMX0ZF QVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfV1JJVEUsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xf RkVBVFVSRV9JRF9TV0FQX0JVRkZFUlNfRVZFTlQiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1NXQVBf QlVGRkVSU19FVkVOVCwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1BSRVNF TlRBVElPTl9USU1FIildCisrCQlPR0xfRkVBVFVSRV9JRF9QUkVTRU5UQVRJT05fVElNRSwKKysJ CVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX0ZFTkNFIildCisrCQlPR0xfRkVBVFVS RV9JRF9GRU5DRSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1RFWFRVUkVf UkciKV0KKysJCU9HTF9GRUFUVVJFX0lEX1RFWFRVUkVfUkcsCisrCQlbQ0NvZGUgKGNuYW1lID0g IkNPR0xfRkVBVFVSRV9JRF9CVUZGRVJfQUdFIildCisrCQlPR0xfRkVBVFVSRV9JRF9CVUZGRVJf QUdFLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9FR0xfSU1B R0VfRVhURVJOQUwiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1RFWFRVUkVfRUdMX0lNQUdFX0VYVEVS TkFMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX0ZJTFRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVu dW0gRmlsdGVyUmV0dXJuIHsKKysJCUNPTlRJTlVFLAorKwkJUkVNT1ZFCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZSQU1F X0VWRU5UXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NCIpXQorKwlwdWJsaWMgZW51bSBGcmFtZUV2ZW50IHsKKysJCVNZTkMsCisrCQlDT01QTEVURQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9GUkFNRUJVRkZFUl9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIGVudW0gRnJhbWVidWZmZXJFcnJvciB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRlJB TUVCVUZGRVJfRVJST1JfQUxMT0NBVEUiKV0KKysJCUZSQU1FQlVGRkVSX0VSUk9SX0FMTE9DQVRF OworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0dSQVBISUNTX1JF U0VUX1NUQVRVU18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gR3JhcGhp Y3NSZXNldFN0YXR1cyB7CisrCQlOT19FUlJPUiwKKysJCUdVSUxUWV9DT05URVhUX1JFU0VULAor KwkJSU5OT0NFTlRfQ09OVEVYVF9SRVNFVCwKKysJCVVOS05PV05fQ09OVEVYVF9SRVNFVCwKKysJ CVBVUkdFRF9DT05URVhUX1JFU0VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0lORElDRVNfVFlQRV9VTlNJR05FRF8iLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gSW5kaWNlc1R5cGUgeworKwkJQllU RSwKKysJCVNIT1JULAorKwkJSU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFMX0FMUEhBX0ZVTkNfIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIE1hdGVyaWFsQWxwaGFGdW5jIHsKKysJ CU5FVkVSLAorKwkJTEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRFUiwKKysJ CU5PVEVRVUFMLAorKwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFMX0ZJTFRF Ul8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gTWF0ZXJpYWxGaWx0ZXIg eworKwkJTkVBUkVTVCwKKysJCUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJFU1QsCisr CQlMSU5FQVJfTUlQTUFQX05FQVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIsCisrCQlM SU5FQVJfTUlQTUFQX0xJTkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRFUklBTF9XUkFQX01PREVfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVu dW0gTWF0ZXJpYWxXcmFwTW9kZSB7CisrCQlSRVBFQVQsCisrCQlDTEFNUF9UT19FREdFLAorKwkJ QVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0FMUEhBX0ZVTkNfIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lQWxwaGFGdW5jIHsKKysJCU5FVkVSLAorKwkJ TEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRFUiwKKysJCU5PVEVRVUFMLAor KwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0NVTExfRkFDRV9NT0RFXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZUN1bGxGYWNlTW9k ZSB7CisrCQlOT05FLAorKwkJRlJPTlQsCisrCQlCQUNLLAorKwkJQk9USAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBF TElORV9GSUxURVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFBpcGVs aW5lRmlsdGVyIHsKKysJCU5FQVJFU1QsCisrCQlMSU5FQVIsCisrCQlORUFSRVNUX01JUE1BUF9O RUFSRVNULAorKwkJTElORUFSX01JUE1BUF9ORUFSRVNULAorKwkJTkVBUkVTVF9NSVBNQVBfTElO RUFSLAorKwkJTElORUFSX01JUE1BUF9MSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUElQRUxJTkVfV1JBUF9NT0RF XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CXB1YmxpYyBlbnVtIFBpcGVsaW5lV3JhcE1vZGUgeworKwkJUkVQRUFULAorKwkJTUlSUk9SRURf UkVQRUFULAorKwkJQ0xBTVBfVE9fRURHRSwKKysJCUFVVE9NQVRJQworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVhFTF9G T1JNQVRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBQaXhlbEZvcm1hdCB7CisrCQlBTlksCisrCQlB XzgsCisrCQlSR0JfNTY1LAorKwkJUkdCQV80NDQ0LAorKwkJUkdCQV81NTUxLAorKwkJWVVWLAor KwkJR184LAorKwkJUkdfODgsCisrCQlSR0JfODg4LAorKwkJQkdSXzg4OCwKKysJCVJHQkFfODg4 OCwKKysJCUJHUkFfODg4OCwKKysJCUFSR0JfODg4OCwKKysJCUFCR1JfODg4OCwKKysJCVJHQkFf MTAxMDEwMiwKKysJCUJHUkFfMTAxMDEwMiwKKysJCUFSR0JfMjEwMTAxMCwKKysJCUFCR1JfMjEw MTAxMCwKKysJCVJHQkFfODg4OF9QUkUsCisrCQlCR1JBXzg4ODhfUFJFLAorKwkJQVJHQl84ODg4 X1BSRSwKKysJCUFCR1JfODg4OF9QUkUsCisrCQlSR0JBXzQ0NDRfUFJFLAorKwkJUkdCQV81NTUx X1BSRSwKKysJCVJHQkFfMTAxMDEwMl9QUkUsCisrCQlCR1JBXzEwMTAxMDJfUFJFLAorKwkJQVJH Ql8yMTAxMDEwX1BSRSwKKysJCUFCR1JfMjEwMTAxMF9QUkUsCisrCQlERVBUSF8xNiwKKysJCURF UFRIXzMyLAorKwkJREVQVEhfMjRfU1RFTkNJTF84OworKwkJcHVibGljIGludCBnZXRfYnl0ZXNf cGVyX3BpeGVsIChpbnQgcGxhbmUpOworKwkJcHVibGljIGludCBnZXRfbl9wbGFuZXMgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9SRUFEX1BJWEVM U19DT0xPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFJlYWRQaXhlbHNGbGFncyB7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gIkNPR0xfUkVBRF9QSVhFTFNfQ09MT1JfQlVGRkVSIildCisrCQlSRUFEX1BJ WEVMU19DT0xPUl9CVUZGRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUkVOREVSRVJfRVJST1JfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFJlbmRlcmVyRXJyb3IgeworKwkJWExJQl9ESVNQTEFZ X09QRU4sCisrCQlCQURfQ09OU1RSQUlOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9TSEFERVJfVFlQRV8iLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51 bSBTaGFkZXJUeXBlIHsKKysJCVZFUlRFWCwKKysJCUZSQUdNRU5UCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NURVJFT18i LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gU3RlcmVvTW9kZSB7CisrCQlC T1RILAorKwkJTEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NZU1RFTV9FUlJPUl8iLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51 bSBTeXN0ZW1FcnJvciB7CisrCQlVTlNVUFBPUlRFRCwKKysJCU5PX01FTU9SWQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9U RVhUVVJFX0NPTVBPTkVOVFNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVDb21wb25lbnRzIHsKKysJCUEs CisrCQlSRywKKysJCVJHQiwKKysJCVJHQkEsCisrCQlERVBUSAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9URVhUVVJFX0VS Uk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCXB1YmxpYyBlbnVtIFRleHR1cmVFcnJvciB7CisrCQlTSVpFLAorKwkJRk9STUFULAorKwkJ QkFEX1BBUkFNRVRFUiwKKysJCVRZUEU7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfVEVYVFVSRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVGbGFncyB7 CisrCQlOT05FLAorKwkJTk9fQVVUT19NSVBNQVAsCisrCQlOT19TTElDSU5HLAorKwkJTk9fQVRM QVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfVkVSVElDRVNfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBWZXJ0aWNlc01vZGUgeworKwkJ UE9JTlRTLAorKwkJTElORVMsCisrCQlMSU5FX0xPT1AsCisrCQlMSU5FX1NUUklQLAorKwkJVFJJ QU5HTEVTLAorKwkJVFJJQU5HTEVfU1RSSVAsCisrCQlUUklBTkdMRV9GQU4KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfV0lO RElOR18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gV2luZGluZyB7Cisr CQlDTE9DS1dJU0UsCisrCQlDT1VOVEVSX0NMT0NLV0lTRQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5TWVNfRkVBVFVS RV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gV2luc3lzRmVhdHVyZSB7 CisrCQlNVUxUSVBMRV9PTlNDUkVFTiwKKysJCVNXQVBfVEhST1RUTEUsCisrCQlWQkxBTktfQ09V TlRFUiwKKysJCVZCTEFOS19XQUlULAorKwkJVEVYVFVSRV9GUk9NX1BJWE1BUCwKKysJCVNXQVBf QlVGRkVSU19FVkVOVCwKKysJCVNXQVBfUkVHSU9OLAorKwkJU1dBUF9SRUdJT05fVEhST1RUTEUs CisrCQlTV0FQX1JFR0lPTl9TWU5DSFJPTklaRUQsCisrCQlCVUZGRVJfQUdFLAorKwkJU1lOQ19B TkRfQ09NUExFVEVfRVZFTlQsCisrCQlOX0ZFQVRVUkVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBEZWJ1Z09iamVjdEZv cmVhY2hUeXBlQ2FsbGJhY2sgKENvZ2wuRGVidWdPYmplY3RUeXBlSW5mbyBpbmZvKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMS45 KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMTAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQg RmVhdHVyZUNhbGxiYWNrIChDb2dsLkZlYXR1cmVJRCBmZWF0dXJlKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgT25zY3JlZW5E aXJ0eUNhbGxiYWNrIChDb2dsLk9uc2NyZWVuIG9uc2NyZWVuLCBDb2dsLk9uc2NyZWVuRGlydHlJ bmZvIGluZm8pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBp bnN0YW5jZV9wb3MgPSAzLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1Ymxp YyBkZWxlZ2F0ZSB2b2lkIE9uc2NyZWVuUmVzaXplQ2FsbGJhY2sgKENvZ2wuT25zY3JlZW4gb25z Y3JlZW4sIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDIuOSldCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgUGlwZWxpbmVMYXllckNhbGxiYWNr IChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBpbnQgbGF5ZXJfaW5kZXgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlw dWJsaWMgZGVsZWdhdGUgYm9vbCBUZXh0dXJlMkRFR0xJbWFnZUV4dGVybmFsQWxsb2MgKENvZ2wu VGV4dHVyZTJEIHRleF8yZCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190YXJnZXQgPSBmYWxzZSldCisrCXB1YmxpYyBk ZWxlZ2F0ZSB2b2lkIFVzZXJEYXRhRGVzdHJveUNhbGxiYWNrICh2b2lkKiBkYXRhKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9BRklS U1RfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgQUZJUlNUX0JJVDsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9BX0JJVCIpXQorKwlw dWJsaWMgY29uc3QgaW50IEFfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0JHUl9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBC R1JfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFt ZSA9ICJDT0dMX0RFUFRIX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IERFUFRIX0JJVDsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9Q SVhFTF9GT1JNQVRfTUFYX1BMQU5FUyIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBJWEVMX0ZPUk1B VF9NQVhfUExBTkVTOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjbmFtZSA9ICJDT0dMX1BSRU1VTFRfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJFTVVM VF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1l ID0gIkNPR0xfU1RFTkNJTF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBTVEVOQ0lMX0JJVDsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09H TF9URVhUVVJFX01BWF9XQVNURSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFRFWFRVUkVfTUFYX1dB U1RFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVi bGljIHN0YXRpYyBib29sIGJsaXRfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZmZXIgc3JjLCBD b2dsLkZyYW1lYnVmZmVyIGRlc3QsIGludCBzcmNfeCwgaW50IHNyY195LCBpbnQgZHN0X3gsIGlu dCBkc3RfeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0aWMg Ym9vbCBjbHV0dGVyX3dpbnN5c19oYXNfZmVhdHVyZV9DTFVUVEVSIChDb2dsLldpbnN5c0ZlYXR1 cmUgZmVhdHVyZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBjb2xv cl9lcXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBjb2xvcl9pbml0X2Zyb21faHNsIChvdXQgQ29nbC5Db2xvciBjb2xvciwg ZmxvYXQgaHVlLCBmbG9hdCBzYXR1cmF0aW9uLCBmbG9hdCBsdW1pbmFuY2UpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGVidWdfbWF0cml4X3ByaW50IChDb2dsLk1h dHJpeCBtYXRyaXgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGVi dWdfb2JqZWN0X2ZvcmVhY2hfdHlwZSAoQ29nbC5EZWJ1Z09iamVjdEZvcmVhY2hUeXBlQ2FsbGJh Y2sgZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19v YmplY3RfcHJpbnRfaW5zdGFuY2VzICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3Rh dGljIHZvaWQgZmx1c2ggKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgZm9yZWFjaF9mZWF0dXJlIChDb2dsLkNvbnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJlQ2Fs bGJhY2sgY2FsbGJhY2spOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9iYWNrZmFjZV9jdWxsaW5nX2VuYWJs ZWQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgc3RhdGljIGludDY0IGdldF9jbG9j a190aW1lIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X2RlcHRoX3Rl c3RfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5HcmFwaGljc1Jlc2V0U3RhdHVzIGdldF9ncmFwaGlj c19yZXNldF9zdGF0dXMgKENvZ2wuQ29udGV4dCBjb250ZXh0KTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBz dGF0aWMgR0xpYi5PcHRpb25Hcm91cCBnZXRfb3B0aW9uX2dyb3VwICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLkNh bGxiYWNrIGdldF9wcm9jX2FkZHJlc3MgKHN0cmluZyBzKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5UeXBlIGd0 eXBlX21hdHJpeF9nZXRfdHlwZSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0 aWMgYm9vbCBoYXNfZmVhdHVyZSAoQ29nbC5Db250ZXh0IGNvbnRleHQsIENvZ2wuRmVhdHVyZUlE IGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX2Nv bnRleHQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgaXNfZnJhbWVidWZmZXIgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfb25zY3JlZW4gKHZvaWQqIG9iamVjdCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19waXBlbGluZSAodm9pZCogb2JqZWN0 KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1Ymxp YyBzdGF0aWMgYm9vbCBpc190ZXh0dXJlXzJkICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3RleHR1cmVfMmRfc2xpY2VkICh2b2lkKiBv YmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgbWF0cml4X2Vx dWFsICh2b2lkKiB2MSwgdm9pZCogdjIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9iYWNrZmFjZV9jdWxs aW5nX2VuYWJsZWQgKGJvb2wgc2V0dGluZyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2RlcHRoX3Rlc3Rf ZW5hYmxlZCAoYm9vbCBzZXR0aW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzaGFkZXJfY29tcGlsZSAoQ29n bC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgc3RyaW5nIHNoYWRlcl9nZXRfaW5mb19sb2cgKENv Z2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfZ2V0X3R5 cGUgKENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgc2hhZGVyX2lzX2NvbXBpbGVk IChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNoYWRlcl9zb3VyY2UgKENvZ2wu SGFuZGxlIHNoYWRlciwgc3RyaW5nIHNvdXJjZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIENv Z2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFwLCBD b2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9 ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9k YXRhIChpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2ds LlBpeGVsRm9ybWF0IGZvcm1hdCwgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQsIGlu dCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRl eHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUsIENvZ2wuVGV4dHVy ZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCkgdGhyb3dzIEdM aWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIs IHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25l d193aXRoX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBm bGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIHN0YXRpYyB1aW50MzIgeDExX29uc2NyZWVuX2dldF93aW5kb3dfeGlkIChD b2dsLk9uc2NyZWVuIG9uc2NyZWVuKTsKKyt9CistLSAKKzIuMjUuMAorCmRpZmYgLS1naXQgYS9z cmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC90 ZW1wbGF0ZQppbmRleCBiMzJlNzczNGQzYi4uMTgwY2RjMDJmMWYgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC90 ZW1wbGF0ZQpAQCAtMSwyMSArMSwyMiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYnVkZ2llLWRl c2t0b3AnCiBwa2duYW1lPWJ1ZGdpZS1kZXNrdG9wCiB2ZXJzaW9uPTEwLjUuMQotcmV2aXNpb249 MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZp Z3VyZV9hcmdzPSItRHdpdGgtZ3RrLWRvYz1mYWxzZSAtRHdpdGgtZGVza3RvcC1pY29ucz1ub25l IgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIHZhbGEgZ2xpYi1kZXZlbCBn b2JqZWN0LWludHJvc3BlY3Rpb24gc2Fzc2MiCiBtYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2ZWwg bGlibm90aWZ5LWRldmVsIGFjY291bnRzc2VydmljZS1kZXZlbCBsaWJwZWFzLWRldmVsIGxpYndu Y2stZGV2ZWwKLW11dHRlci1kZXZlbCBpYnVzLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgcHVs c2VhdWRpby1kZXZlbCB1cG93ZXItZGV2ZWwgZ3RrKzMtZGV2ZWwgcG9sa2l0LWRldmVsCi1nbm9t ZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtbWVudXMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9u LWRldmVsIHZhbGEgbGlidXVpZC1kZXZlbCBsaWJ1cG93ZXItZ2xpYjMiCi1kZXBlbmRzPSJnbm9t ZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1jb250cm9sLWNlbnRlciBlbG9n aW5kIgorIG11dHRlci1kZXZlbCBpYnVzLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgcHVsc2Vh dWRpby1kZXZlbCB1cG93ZXItZGV2ZWwgZ3RrKzMtZGV2ZWwgcG9sa2l0LWRldmVsCisgZ25vbWUt Ymx1ZXRvb3RoLWRldmVsIGdub21lLW1lbnVzLWRldmVsIGdub21lLXNldHRpbmdzLWRhZW1vbi1k ZXZlbCB2YWxhIGxpYnV1aWQtZGV2ZWwgbGlidXBvd2VyLWdsaWIzIgorZGVwZW5kcz0iZ25vbWUt c2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtY29udHJvbC1jZW50ZXIgZ25vbWUt dGhlbWVzLWV4dHJhIGVsb2dpbmQiCiBzaG9ydF9kZXNjPSJNb2Rlcm4gZGVza3RvcCBlbnZpcm9u bWVudCBmcm9tIHRoZSBTb2x1cyBQcm9qZWN0IgogbWFpbnRhaW5lcj0iTG9yZW0gPG5vdGxvcmVt aXBzdW1AcHJvdG9ubWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5LCBMR1BMLTIuMS1v bmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1k ZXNrdG9wIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJvamVjdC9idWRn aWUtZGVza3RvcC9yZWxlYXNlcy9kb3dubG9hZC92JHt2ZXJzaW9ufS9idWRnaWUtZGVza3RvcC0k e3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPWQwMzVlYzc2NGUwMDkzNzIyYTgzMjQxMWFlYjZh YmEyOTZjMDk5NWQ5MjdlYTA2OWIyMDViMTljODVhYWU1NjUKK3BhdGNoX2FyZ3M9Ii1OcDEiCiAK IHByZV9jb25maWd1cmUoKSB7CiAJdnNlZCAtaSAncy9leGVjIGdub21lLXNlc3Npb24vZXhlYyBn bm9tZS1zZXNzaW9uIC0tYnVpbHRpbi8nIHNyYy9zZXNzaW9uL2J1ZGdpZS1kZXNrdG9wLmluCgpG cm9tIGM4YjJhYjkyYjFlY2I1YWI3ZGRmYjM2YjE4YmU5ODdjNTBmMTE1M2UgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRo dSwgMzAgQXByIDIwMjAgMTM6NDY6MTYgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ0LzU0XSB4ZGct ZGVza3RvcC1wb3J0YWwtZ3RrOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5z by4xOQoKLS0tCiBzcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUgYi9zcmNwa2dzL3hk Zy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUKaW5kZXggZGVlMGU0NjMzODYuLjU1OGM3NWY1 MzlkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUK KysrIGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneGRnLWRlc2t0b3AtcG9ydGFsLWd0aycKIHBrZ25h bWU9eGRnLWRlc2t0b3AtcG9ydGFsLWd0awogdmVyc2lvbj0xLjYuMAotcmV2aXNpb249MQorcmV2 aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ct Y29uZmlnIGxpYnhzbHQgZ2xpYi1kZXZlbCB4ZGctZGVza3RvcC1wb3J0YWwgZ2V0dGV4dCIKIG1h a2VkZXBlbmRzPSJmbGF0cGFrLWRldmVsIGd0ayszLWRldmVsIGxpYnhzbHQtZGV2ZWwgbGliZ2xp Yi1kZXZlbAoKRnJvbSBiMDA3Y2ZjZDY4Yjk3MDVmNzQ2NzJhMWU3ZDkzOTEwMWJlNWJjOGI4IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjQ5OjEzICswNjAwClN1YmplY3Q6IFtQQVRDSCA0 NS81NF0gY2hlZXNlOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5Cgot LS0KIHNyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaGVlc2UvdGVt cGxhdGUgYi9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZQppbmRleCA3YTU2YmEwMzlmYi4uMDM3Y2Rh NDljOTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Y2hlZXNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2hl ZXNlJwogcGtnbmFtZT1jaGVlc2UKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJn cz0iLURndGtfZG9jPSQodm9wdF9pZiBndGtfZG9jICd0cnVlJyAnZmFsc2UnKQoKRnJvbSAyZTVl YjBmNmNkZDQxMmZhOWVjOWFjYTkyYzg0ZDlmNmY4ODMyZTMwIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFw ciAyMDIwIDAyOjM0OjU0ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0Ni81NF0gZ25vbWUtYm9va3M6 IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9n bm9tZS1ib29rcy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxh dGUgYi9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCmluZGV4IDExNGI5ZTAzNGMyLi4xZDQ5 NzRmZTE4MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ25vbWUtYm9va3MnCiBwa2duYW1lPWdub21lLWJvb2tzCiB2ZXJzaW9uPTMuMzQu MAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHls ZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHZhbGEgZ2xpYi1kZXZlbCBsaWJy c3ZnIGRvY2Jvb2steHNsIGxpYnhzbHQKCkZyb20gNGRmYzdkNmQ0OTM0M2Q3Nzg3NzJmYjk3ODA5 NzU2MDViZjFiMmRhNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo0NzozMSArMDYwMApT dWJqZWN0OiBbUEFUQ0ggNDcvNTRdIGdub21lLWNoYXJhY3RlcnM6IHJlYnVpbGQgYWdhaW5zdAog bGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQppbmRleCA4OTg2OGY0YmMwNC4uYWMyNjRl NTFhNmEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jaGFyYWN0ZXJzJwogcGtnbmFtZT1nbm9tZS1jaGFyYWN0 ZXJzCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9 bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdqcyBn bGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyIKCkZyb20gN2UzYTBlNWJiMDliYmE5YWE1Zjdm MTllNTQwM2RiMmJkNmUzMjE0MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo1NToxOCAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggNDgvNTRdIGdub21lLWRvY3VtZW50czogcmVidWlsZCBhZ2Fp bnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1kb2N1bWVu dHMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlCmluZGV4IDk3YjUzZDYzNWQ3Li43ZTQ1 YjgyNWU3MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdnbm9tZS1kb2N1bWVudHMnCiBwa2duYW1lPWdub21lLWRvY3VtZW50 cwogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0i Z2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wgZ2V0 dGV4dCBpdHN0b29sIHBrZy1jb25maWcgZ2xpYi1kZXZlbCBsaWJ4c2x0IGdkay1waXhidWYKCkZy b20gNjdkZWE4ZTg3OWZmYjhjOTdlZjBmNDgwODNmYzA2MDg0MWRiZDFmMyBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1 LCAzMCBBcHIgMjAyMCAwMjo1Njo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDkvNTRdIGdub21l LWZvbnQtdmlld2VyOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoK LS0tCiBzcmNwa2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIv dGVtcGxhdGUKaW5kZXggNmQwMzUzNjZkNDQuLmY3NGZjYmNiMDAwIDEwMDY0NAotLS0gYS9zcmNw a2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZm9udC12 aWV3ZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9t ZS1mb250LXZpZXdlcicKIHBrZ25hbWU9Z25vbWUtZm9udC12aWV3ZXIKIHZlcnNpb249My4zNC4w Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBl bmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZm9udGNvbmZpZy1kZXZl bCBmcmVldHlwZS1kZXZlbCBnbGliLWRldmVsIGd0ayszLWRldmVsCgpGcm9tIDU5NzgyYTdhYzQ1 MzI5Y2RlODI3Mjc0NzNhYzM2YjI5NWViZDEyYTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAw MjoyNzoxNyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNTAvNTRdIGdub21lLXNjcmVlbnNhdmVyOiBy ZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiAuLi4vcGF0Y2hl cy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2ggICAgICAgICAgICAgICAgfCAxMyArKysrKysrKysr KysrCiBzcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAg fCAgMyArKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigt KQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9n bm9tZS1kZXNrdG9wLTMuMzYucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNjcmVl bnNhdmVyL3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoIGIvc3JjcGtncy9nbm9tZS1z Y3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNThkOTJlNDYzYTMKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBh dGNoCkBAIC0wLDAgKzEsMTMgQEAKK2RpZmYgLU5hdXIgZ25vbWUtc2NyZWVuc2F2ZXItMy42LjEu b3JpZy9zcmMvZ3MtbWFuYWdlci5jIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xL3NyYy9ncy1tYW5h Z2VyLmMKKy0tLSBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS5vcmlnL3NyYy9ncy1tYW5hZ2VyLmMJ MjAyMC0wMy0wOCAwODo1Mzo0Ni40MDg0MzE1NzggKzAwMDAKKysrKyBnbm9tZS1zY3JlZW5zYXZl ci0zLjYuMS9zcmMvZ3MtbWFuYWdlci5jCTIwMjAtMDMtMDggMDg6NTQ6MzEuODc1NzM4NzMyICsw MDAwCitAQCAtNzg4LDggKzc4OCw3IEBACisgICAgICAgICBzdXJmYWNlID0gZ25vbWVfYmdfY3Jl YXRlX3N1cmZhY2UgKG1hbmFnZXItPnByaXYtPmJnLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnZGtfd2luZG93LAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB3aWR0aCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaGVpZ2h0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBGQUxTRSk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGhlaWdodCk7CisgICAgICAgICBnc193aW5kb3dfc2V0X2JhY2tncm91bmRfc3VyZmFj ZSAod2luZG93LCBzdXJmYWNlKTsKKyAgICAgICAgIGNhaXJvX3N1cmZhY2VfZGVzdHJveSAoc3Vy ZmFjZSk7CisgfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKaW5kZXggMzYzZmNmMTJlMTAu LjIwMGM2OTFmNTFkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zY3JlZW5zYXZlcicKIHBrZ25hbWU9Z25v bWUtc2NyZWVuc2F2ZXIKIHZlcnNpb249My42LjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1jb21waWxl LXdhcm5pbmdzPW1pbmltdW0iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2Ug aW50bHRvb2wgZ2xpYi1kZXZlbCIKQEAgLTEzLDMgKzEzLDQgQEAgbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dub21l U2NyZWVuc2F2ZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCiBjaGVja3N1bT1mMzliNzhkNGY3 ZmVkNzQ4YzdmMGEzMWQ2OTQxMTJmYjkwN2M2ZDNjNGU2M2RiMjJlYjg1OGRmMDdlOTYyY2QwCitw YXRjaF9hcmdzPSItTnAxIgoKRnJvbSBkOTY4ZGY1YWEyMmVhY2Q0OWQ4MTM3YTgwN2NiNmZiNjAz YmRhZTRlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBTdW4sIDMgTWF5IDIwMjAgMTE6NDM6MTkgKzA2MDAKU3ViamVjdDog W1BBVENIIDUxLzU0XSBnbm9tZS13ZWF0aGVyOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVz a3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtd2VhdGhl ci90ZW1wbGF0ZQppbmRleCBkMzBiZTliZjE5Mi4uYzAyOGU0NmJhNjUgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXdlYXRoZXIv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS13ZWF0 aGVyJwogcGtnbmFtZT1nbm9tZS13ZWF0aGVyCiB2ZXJzaW9uPTMuMzYuMQotcmV2aXNpb249MQor cmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1h a2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgaXRzdG9vbCBnbGliLWRldmVsIGdqcyIKCkZy b20gNzgyMmE3MzdjNjZhZGZiZjkzYjk1MmMyZWU5MGIxM2JhMDg1NTA3NiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1 LCAzMCBBcHIgMjAyMCAwMjo1Nzo1NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNTIvNTRdIHRvdGVt OiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3Mv dG90ZW0vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlIGIvc3JjcGtn cy90b3RlbS90ZW1wbGF0ZQppbmRleCA4MTUyMmIzMTQ4OC4uZTQxODY2MzIxNTMgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy90b3RlbS90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3RvdGVtJwogcGtnbmFtZT10b3Rl bQogdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1l c29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGVuYWJsZS1weXRob249 bm8gLURlbmFibGUtbmF1dGlsdXM9eWVzCgpGcm9tIDhiZjU0MDBlNjk5NTFjOThhZWZlZGFhMmIy MWE0MGM2NDkyNzVjNmEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDM6MDQ6MDcgKzA2MDAK U3ViamVjdDogW1BBVENIIDUzLzU0XSBsdXRyaXM6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1k ZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9sdXRyaXMvdGVtcGxhdGUgfCAyICstCiAxIGZp bGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2x1dHJpcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlCmluZGV4IGY4 MDE4NDRjNzdhLi4zOTYyMjlhZTYyNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9sdXRyaXMvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9sdXRyaXMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdsdXRyaXMnCiBwa2duYW1lPWx1dHJpcwogdmVyc2lvbj0wLjUuNgotcmV2 aXNpb249MQorcmV2aXNpb249MgogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1weXRob24zLW1v ZHVsZQogYnVpbGRfaGVscGVyPSJnaXIiCgpGcm9tIDQ4ZTQ5MzljNzQzMzU2NDFhNmI2ZDQ4NmU2 ZTU1NjdkZDdiZmM3NGUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMTY6MDg6MjMgKzA2MDAK U3ViamVjdDogW1BBVENIIDU0LzU0XSBldmluY2U6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1k ZXNrdG9wLTMuc28uMTkKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9ldmluY2UvdGVtcGxhdGUgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0 ZQppbmRleCBjMzM3YTI2NmNlMC4uMTczMDcxYTljYWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZp bmNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZpbmNlJwogcGtnbmFtZT1ldmluY2UKIHZlcnNpb249 My4zNi4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxk X3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSIkKHZvcHRfZW5hYmxlIGdpciBp bnRyb3NwZWN0aW9uKSAtLWRpc2FibGUtc2NoZW1hcy1jb21waWxlCg== --===============4080199632847968432==--