From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 21501 invoked from network); 21 May 2020 12:52:23 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 21 May 2020 12:52:23 -0000 Content-Type: multipart/mixed; boundary="===============5578939475895845263==" 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: Thu, 21 May 2020 14:52:23 +0200 List-Id: Message-ID: <20200521125223.Srt-vgVx7RT7TfSMYDIFc2QnLkHiD9YRC_3X9wpF0AE@z> GitHub notification mails are now in MIME to allow UTF8. --===============5578939475895845263== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW5hYmlkIGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFi aWQvdm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjEzODIKCltXSVBdIGdub21lIDMuMzYgdXBkYXRlcwpXYWl0aW5nIGZv ciAqKltgcGlwZXdpcmUtMC4zLjVgXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjA0MTMpKiogdG8gYmUgbWVyZ2VkLg0KDQo8ZGV0YWlscz4NCjxzdW1t YXJ5PjxiPkxpc3Qgb2YgdXBkYXRlcyA6IDwvYj48aT4oY2xpY2sgdG8gZXhwYW5kKTwvaT48L3N1 bW1hcnk+DQoNCiAqIGF0ayAtPiAyLjM2LjANCiAqIGF0LXNwaTItYXRrIC0+IDIuMzQuMg0KICog YnVkZ2llLWRlc2t0b3AgLT4gKHJldmJ1bXApDQogKiBjaGVlc2UgLT4gKHJldmJ1bXApDQogKiBk Y29uZi1lZGl0b3IgLT4gMy4zNi4yDQogKiBkZXZoZWxwIC0+IDMuMzYuMg0KICogZW9nIC0+IDMu MzYuMg0KICogZXZpbmNlIC0+IDMuMzYuMQ0KICogZXZvbHV0aW9uIC0+IDMuMzYuMg0KICogZXZv bHV0aW9uLWRhdGEtc2VydmVyIC0+IDMuMzYuMg0KICogZXZvbHV0aW9uLWV3cyAtPiAzLjM2LjIN CiAqIGZpbGUtcm9sbGVyIC0+IDMuMzYuMg0KICogZm9sa3MgLT4gMC4xNC4wDQogKiBnZG0gLT4g My4zNi4yDQogKiBnZWRpdCAtPiAzLjM2LjINCiAqIGdub21lLTIwNDggLT4gMy4zNi4yDQogKiBn bm9tZS1ib29rcyAtPiAocmV2YnVtcCkNCiAqIGdub21lLWNoYXJhY3RlcnMgLT4gKHJldmJ1bXAp DQogKiBnbm9tZS1jbG9ja3MgLT4gMy4zNi4yDQogKiBnbm9tZS1jb250YWN0cyAtPiAzLjM2LjEN CiAqIGdub21lLWNvbnRyb2wtY2VudGVyIC0+IDMuMzYuMg0KICogZ25vbWUtZGVza3RvcCAtPiAz LjM2LjINCiAqIGdub21lLWRvY3VtZW50cyAtPiAocmV2YnVtcCkNCiAqIGdub21lLWVwdWItdGh1 bWJuYWlsZXIgLT4gMS42DQogKiBnbm9tZS1mbGFzaGJhY2sgLT4gMy4zNi4zDQogKiBnbm9tZS1m b250LXZpZXdlciAtPiAocmV2YnVtcCkNCiAqIGdub21lLWdldHRpbmctc3RhcnRlZC1kb2NzIC0+ IDMuMzYuMg0KICogZ25vbWUtaW5pdGlhbC1zZXR1cCAtPiAzLjM2LjINCiAqIGdub21lLW1hcHMg LT4gMy4zNi4yDQogKiBnbm9tZS1tZW51cyAtPiAzLjM2LjANCiAqIGdub21lLW11c2ljIC0+IDMu MzYuMg0KICogZ25vbWUtcGFuZWwgLT4gMy4zNi4xDQogKiBnbm9tZS1wb2RjYXN0cyAtPiAwLjQu Nw0KICogZ25vbWUtc2NyZWVuc2F2ZXIgLT4gKHJldmJ1bXApDQogKiBnbm9tZS1zZXNzaW9uIC0+ IDMuMzYuMA0KICogZ25vbWUtc2V0dGluZ3MtZGFlbW9uIC0+IDMuMzYuMQ0KICogZ25vbWUtc2hl bGwgLT4gMy4zNi4yDQogKiBnbm9tZS1zaGVsbC1leHRlbnNpb25zIC0+IDMuMzYuMg0KICogZ25v bWUtdGVybWluYWwgLT4gMy4zNi4yDQogKiBnbm9tZS11c2VyLWRvY3MgLT4gMy4zNi4yDQogKiBn bm9tZS13ZWF0aGVyIC0+IChyZXZidW1wKQ0KICogZ3JhcGhlbmUgLT4gMS4xMC4wDQogKiBsdXRy aXMgLT4gKHJldmJ1bXApDQogKiBtZXRhY2l0eSAtPiAzLjM2LjENCiAqIG11dHRlciAtPiAzLjM2 LjINCiAqIG5hdXRpbHVzIC0+IDMuMzYuMg0KICogb3JjYSAtPiAzLjM2LjINCiAqIHB5dGhvbi1h dHNwaSAtPiAyLjM2LjANCiAqIHNpbXBsZS1zY2FuIC0+IDMuMzYuMi4xDQogKiB0b3RlbSAtPiAo cmV2YnVtcCkNCiAqIHRyYWNrZXIgLT4gMi4zLjQNCiAqIHhkZy1kZXNrdG9wLXBvcnRhbC1ndGsg LT4gKHJldmJ1bXApDQo8L2RldGFpbHM+DQoNCkJ1aWx0IGluIGB4ODZfNjRgLgoKQSBwYXRjaCBm aWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxs LzIxMzgyLnBhdGNoIGlzIGF0dGFjaGVk --===============5578939475895845263== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSBkM2I1NjQ2MjQ4NWY3ZDUzNWZjM2E0YThiOTMyZGMzNDczY2Y5ZmMwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS81M10gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIHwgOCArKysr LS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggM2FiZDJiY2Rh NWUuLjI2NjJmNDY3N2U4IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z 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 Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDRjZDk5OWM5ODk3M2YwZmQz MTFkOWM3NzdlYzNiMjg5MjljODZiOWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTNdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi4wMjliODdmZjIyYiAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisgICAgICAgcm0gLXJm ICR7REVTVERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIDUxODgzNTgwMTM4NWQ2ZWY0NGJh YWNkODQ1MDQ0NWQ1NGU5YjYzODMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUg KzA2MDAKU3ViamVjdDogW1BBVENIIDAzLzUzXSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMi4K Ci0tLQogc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bmF1dGlsdXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4 NTE5NzNmLi4xMDEwODczZjRmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYu MS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxk X2hlbHBlcj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1h bmFnZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS8ke3BrZ25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNh ZjMzODAzYTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7 dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPTI2Njcz Yzk1OTk1MDI0NTJjZjI5OTM1ODcyOWJlOGI1NTQwNjZhOWI2NzBkODliMjRlMjQ1MTYwZDE1Nzc2 ZmEKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpG cm9tIDAyNzQzMzM3MTZiZTdhYmVjMTVlYTI1MWFlNmM0OTJmOGI1OWQxN2YgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1v biwgMjcgQXByIDIwMjAgMTI6MjY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzUzXSBnbm9t ZS0yMDQ4OiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS0yMDQ4L3RlbXBsYXRlCmluZGV4IGI1OWNjZjZkZTQ2Li45ODliNmZmMTI1YiAxMDA2NDQK LS0tIGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0 OC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIw NDgnCiBwa2duYW1lPWdub21lLTIwNDgKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgog cmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBn bGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0 OCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25v bWUtMjA0OC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5 YzE2YTcwNjc0ODA3MzQ0ZWQxMTgzMWU4YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTI5 ZGE3NDk5Yzg5ZWU3NGY5ODM0ZThkZTJiODU2MzMyMzlhNjZlNWM1M2Q5NTZhOGU5NWE5ODdiZGI0 YjMzMjEKCkZyb20gODY0NjBlM2QyZDg3ZmU3NTQwZDFiZWIxZGE0NTBhNTg5N2JiNjZjYSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDUv NTNdIGdub21lLW11c2ljOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLW11 c2ljL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlCmluZGV4IDEyNTExNzM2NDA3Li44MDJiY2Vh ODkxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2dub21lLW11c2ljL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZ25vbWUtbXVzaWMnCiBwa2duYW1lPWdub21lLW11c2ljCi12ZXJzaW9uPTMuMzYuMQor dmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KQEAgLTE1LDUgKzE1LDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL011c2ljIgogZGlzdGZpbGVzPSIke0dOT01FX1NJ VEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6 IgotY2hlY2tzdW09N2I4MGY2MzBkMTU4MzM0OTM1YTg3NjAyOTY1NTBjYzkxYjUwZDYwNGZhNjhi NDAyZmU1MTY1YjE1MzFlYzMzMgorY2hlY2tzdW09YWJhZDQxM2FlYmZhOGY4MTQxYWJjNzE2NDgw OWU4YzQ2NzdmOGI2NTM4Zjg5MjEyODE5M2UwOTdlMGU5ODJhNQogbGliMzJkaXNhYmxlZD15ZXMK CkZyb20gNmVlYWYzM2ExODAzOGQyZGI5YWZkMzUzMjlhMWRmN2UyNWJlOTcwZSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCAyNyBBcHIgMjAyMCAxMzowMjo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTNdIGRl dmhlbHA6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgYi9zcmNwa2dzL2RldmhlbHAv dGVtcGxhdGUKaW5kZXggYTFjMmRjYmI3NjIuLmJhNzVkZmZkY2U3IDEwMDY0NAotLS0gYS9zcmNw a2dzL2RldmhlbHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCkBAIC0x LDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGV2aGVscCcKIHBrZ25hbWU9ZGV2aGVs cAotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxw ZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9EZXZoZWxwIgog ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGNmOGVjOTMwMmJjNGE3OWUwMWFjNTNi ZDljOGI5NWE1OTZmNzFmMzUzNTFmNDhiNjMyNjMyMjdmMDlhOGEzZAorY2hlY2tzdW09OGI1YTg0 MzE5ZWZiYjJlZjFiYzQwMjJlZTNlZDJkNjY3ODc5NGViYTJkZmE5OTNlNTBlMDNkNmU3YjkzMGM1 ZQogCiBkZXZoZWxwLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3Bt ZW50IGZpbGVzIgoKRnJvbSAxNWM5ZWFmNGIxZjk5NTI4ZjRkNDI0NjFkNzNjZTFhMmNmMDU3ZjRi IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDEzOjE3OjQyICswNjAwClN1YmplY3Q6IFtQQVRD SCAwNy81M10gZW9nOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2VvZy90ZW1wbGF0 ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9nL3RlbXBs YXRlCmluZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9l b2cvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2LjEKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxl PW1lc29uCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3Vt PWU0NTRhMWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVkYTFhN2Jl MTg3YzljOTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4YzE5YWJk YjdiZWFlMWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cuc28iCiBs aWIzMmRpc2FibGVkPXllcwogCgpGcm9tIGRhNDU4YWQ3NzdiNDA4ZGQ4OGM0N2MwNzczNWNhZjgy MjY2YjhhZDkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMTY6MDg6MjMgKzA2MDAKU3ViamVj dDogW1BBVENIIDA4LzUzXSBldmluY2U6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNyY3BrZ3Mv ZXZpbmNlL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIv c3JjcGtncy9ldmluY2UvdGVtcGxhdGUKaW5kZXggYzMzN2EyNjZjZTAuLmY1ZGZkZGFiMzZhIDEw MDY0NAotLS0gYS9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBr Z25hbWU9ZXZpbmNlCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjEKIHJldmlzaW9uPTEK IGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTksNyAr MTksNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL0FwcHMvRXZpbmNlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODUxZDli NTIzNGQ0NzlhYjRjOGY3YzVjYmFjZWIwZTkxYWQ3OWNjYmExYTdiNzMzY2RlNzJkYWNjOTI4ZmJh OAorY2hlY2tzdW09OGNiOGJmZDM1OGEwMmQ4ZWRiYTUxMTE0NTQ4ZTk4MTU0MzIxZTA4OTViZjM3 OWE1YmIzMzZhNDU4ZDU5NGJkNwogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25z X2RlZmF1bHQ9ImdpciIKCkZyb20gYTg2YzM4YTU4N2MyYTM4NGFlZWFjZDZlZGU4MGUwNzViZmI0 NzM3YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMzozMDo1NiArMDYwMApTdWJqZWN0OiBb UEFUQ0ggMDkvNTNdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3Mv Z25vbWUtbWFwcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1hcHMvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKaW5kZXggMDMwMGJlNjA1OTkuLjlm ZGQyN2RiM2JkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ25vbWUtbWFwcycKIHBrZ25hbWU9Z25vbWUtbWFwcwotdmVyc2lvbj0zLjM2LjEK K3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2Vk ZXBlbmRzPSJnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBpbnRsdG9vbCBwa2ctY29u ZmlnIEFwcFN0cmVhbSIKQEAgLTEyLDUgKzEyLDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQg PGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL01hcHMiCiBkaXN0ZmlsZXM9IiR7R05P TUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50 YXIueHoiCi1jaGVja3N1bT0xYTMyZWZkOTZhZDg5OGY3N2E2MzZkMmQwNDYzZDc1NzAwOWI0Yjgx MjI1OWM4OWZmZGNiOTFkNmFmYzA1MmY5CitjaGVja3N1bT01YmEyMTliOWRlOTg2NzhjZWZhNTg0 OGY2NTM4ZGI4ZGJkMDdmNmM3NDdmZDQzYTk5MTY3YTI2Njg3OGE5Nzg0CiBub2Nyb3NzPSJldm9s dXRpb24tZGF0YXNlcnZlciBjcm9zcyBnaXIgZG9lc24ndCB3b3JrIgoKRnJvbSA3NWFmMGRmNjM3 MGIzOGIwMzIxMWM3ZTg2NmJlOTM4YjJlYzNmYWY1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIw IDE0OjI3OjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMC81M10gZ2VkaXQ6IHVwZGF0ZSB0byAz LjM2LjIuCgotLS0KIHNyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nZWRpdC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYx ODIuLmUzZWJlYTA1ZWE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdnZWRpdCcKIHBrZ25hbWU9Z2VkaXQKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYu MgogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAt MTcsNyArMTcsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5v cmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2ku Z25vbWUub3JnL0FwcHMvR2VkaXQiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02 ZGMzOGVkYTIyN2QxYzM2OGUwMzllOWJmZjQ4NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4 YTRlMzg3CitjaGVja3N1bT02ODg3NTU0NjQzYzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1 ZTY3NThhZWFhMDhmNGE0ODJiNTU0MTk3CiBzaGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5z byIKIHB5dGhvbl92ZXJzaW9uPTMKIAoKRnJvbSA2ZGI2NDQ2ZjI5NDFjOGJkMTdlNDlkNTJmMTcy NTNiNzhmYzJkNTFjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlk LjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjAyOjE0ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAxMS81M10gZ25vbWUtY29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgot LS0KIHNyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgfCAxMCArKysrKysrLS0tCiAxIGZp bGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRhY3Rz L3RlbXBsYXRlCmluZGV4IDJhODIxM2E3MjQwLi43MWQxNWM4ZTNmNyAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nbm9tZS1jb250YWN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRhY3Rz L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY29u dGFjdHMnCiBwa2duYW1lPWdub21lLWNvbnRhY3RzCi12ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249 MgordmVyc2lvbj0zLjM2LjEKK3JldmlzaW9uPTEKIHdya3NyYz0iZ25vbWUtY29udGFjdHMtJHt2 ZXJzaW9uJS4qfSIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRvY2Jvb2st eHNsIGdldHRleHQgZ2xpYi1kZXZlbCBsaWJ4c2x0IHBrZy1jb25maWcgdmFsYSIKQEAgLTEzLDQg KzEzLDggQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIK IGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9BcHBzL0NvbnRhY3RzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbiUuKn0udGFyLnh6IgotY2hlY2tzdW09 OTk2MDJlYzhkNjYwYzFmM2M5MmNhZTYzNTZmNjRmNzJmYjZkYjU4ZTU1YmNlMjdhNTk5MzMwYmY3 YjYyMmYxMgorY2hlY2tzdW09ZWVjYmQyMjA5ZDkzYzhkMzFkZjkyZjZjY2Y3OTE4M2I0NTZjNmUw N2EyOGFlMDE1NWNiZGExOGFhYmQzNmY3YgorCitpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4K Kwlob3N0bWFrZWRlcGVuZHMrPSIgZm9sa3MtZGV2ZWwiCitmaQoKRnJvbSA2NDIyM2JhMzhhOTYz NzVjZTgzZjk2NTAwMThhMzg4YTgxNmI0M2JlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAy OjUyOjEyICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMi81M10gZ25vbWUtY2xvY2tzOiB1cGRhdGUg dG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZSB8IDQgKystLQog MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtY2xvY2tz L3RlbXBsYXRlCmluZGV4IDNlMDQ5YjQyZmIxLi4zNGIxNTlhZTZhNiAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVt cGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jbG9ja3Mn CiBwa2duYW1lPWdub21lLWNsb2NrcwotdmVyc2lvbj0zLjM2LjAKK3ZlcnNpb249My4zNi4yCiBy ZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xNSw0 ICsxNSw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvQXBwcy9DbG9ja3MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00Yzk3 OGIwYzdmN2I5ZGFlYmQyNzJkMDE3NWY4YTU0NDE1ZTIwNzhmMTM0ZjQ4YWRkNWNmMjQzNjJlZWY0 OWM2CitjaGVja3N1bT1mMTFiMWIyMmVjMWYyODVlNTA5ODgzNjg0YzBiMWY0YTUxNDk2YWVhMTA1 NTkxMjM5ZTViMjZmODk4Njc1MWU2CgpGcm9tIDJhY2VjNjdkY2RiOTI4MTQxYjIwMTYyYzc5N2Q1 ZDZhM2MxMGM0ZDcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTU6Mjk6MzAgKzA2MDAKU3Vi amVjdDogW1BBVENIIDEzLzUzXSBnbm9tZS1lcHViLXRodW1ibmFpbGVyOiB1cGRhdGUgdG8gMS42 LgoKLS0tCiBzcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUgfCA2ICsrKy0t LQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUgYi9zcmNwa2dz L2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUKaW5kZXggYjE2ZTcwNTQ3NWYuLmQ2N2I3 N2YxZTQzIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCkBAIC0xLDEz ICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1lcHViLXRodW1ibmFpbGVyJwog cGtnbmFtZT1nbm9tZS1lcHViLXRodW1ibmFpbGVyCi12ZXJzaW9uPTEuNQordmVyc2lvbj0xLjYK IHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJnZGstcGl4YnVmLWRldmVsIGxpYmFyY2hpdmUtZGV2 ZWwgbGlieG1sMi1kZXZlbCIKIHNob3J0X2Rlc2M9IlRodW1ibmFpbGVyIGZvciBFUHViIGFuZCBN T0JJIGJvb2tzIgogbWFpbnRhaW5lcj0iQWxpZiBSYWNobWF3YWRpIDxhcmNoQHN1Ym9zaXRvLmNv bT4iCi1saWNlbnNlPSJHUEwtMyIKK2xpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly9naXQuZ25vbWUub3JnL2Jyb3dzZS9nbm9tZS1lcHViLXRodW1ibmFpbGVyIgog ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9ufS8ke3BrZ25hbWV9 LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MzA4MjEwZjU4MDAyMTlmNjRjYWU0ODI4ZTU5 YmI4ZTZlNGM1M2I4ODgwNDhjZjQ4NzIyMWFlYjQzMzdkNzkxYQorY2hlY2tzdW09YjUwMjQyMGQ5 YjAyZWEwYjBmYzc5ODZlZjVhMDkxYTEyYjIyODZiZTE0ZmVkOWU0NzU5NGZlOWZhMGM1ODk4ZQoK RnJvbSBmNmU2ZmM4Y2JjNjhkM2U1NjdjZTEzYWMwMzc3OTg4NDA4NzIxMWZlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBN b24sIDI3IEFwciAyMDIwIDE2OjIzOjQ2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxNC81M10gZ25v bWUtdGVybWluYWw6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtdGVybWlu YWwvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwg MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBs YXRlIGIvc3JjcGtncy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZQppbmRleCBiZjNkNWJjZGQ0Mi4u MjJkYmMxMWJhZGEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXRlcm1pbmFsJwogcGtnbmFtZT1nbm9tZS10ZXJtaW5h bAotdmVyc2lvbj0zLjM2LjEuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0td2l0 aC1uYXV0aWx1cy1leHRlbnNpb24iCkBAIC0xMyw4ICsxMyw4IEBAIHNob3J0X2Rlc2M9IkdOT01F IHRlcm1pbmFsIGVtdWxhdG9yIGFwcGxpY2F0aW9uIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQg PGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdGREwt MS4zLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL1Rlcm1pbmFs IgotZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uOjA6NH0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWYzZDcwOGExZTc2ZDc3YzFjODVi MTI2ZjZlMDAzMjIwYTE1ZDRhNDZhNTBmZDgwNzBlMWEzYWFiZTY3OGEzNzYKK2Rpc3RmaWxlcz0i JHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci54eiIKK2NoZWNrc3VtPTQxZDFiNmEzZGM5N2MwNjZlMjk0YWNkYjdmMzY5MzFlODE2 Njg2MzhkY2M5MmZmYTI1YmNhM2RkZWJhY2RmNDYKIGxpYjMyZGlzYWJsZWQ9eWVzCiAKIGlmIFsg IiRDUk9TU19CVUlMRCIgXTsgdGhlbgoKRnJvbSAwZmM5YmE5MzExYzQ3YWE4MDQwYzUyY2JlZWU0 YTU1YWVjOWNiMjM4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlk LjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDI4IEFwciAyMDIwIDE4OjE4OjAwICswNjAwClN1 YmplY3Q6IFtQQVRDSCAxNS81M10gZ25vbWUtcG9kY2FzdHM6IHVwZGF0ZSB0byAwLjQuNy4KCi0t LQogLi4uL2dub21lLXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoICAgIHwgMjEgLS0t LS0tLS0tLS0tLS0tLQogc3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZSAgICAgICAgICAg ICAgIHwgMjQgKysrKysrKysrKy0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRp b25zKCspLCAzMiBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21l LXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n bm9tZS1wb2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaCBiL3NyY3BrZ3MvZ25vbWUtcG9k Y2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IGFlYjk1ODFiZDc5Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2dub21lLXBvZGNhc3Rz L3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjEgKzAsMCBAQAot LS0tIHBvZGNhc3RzLWd0ay9zcmMvd2lkZ2V0cy9lcGlzb2RlLnJzLm9yaWcJMjAxOS0wNi0wOSAx NTo1NDo1OS43OTM0NTEwNDcgKzAyMDAKLSsrKyBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvZXBp c29kZS5ycwkyMDE5LTA2LTA5IDE1OjU1OjE5LjE5MTMxMTUxMiArMDIwMAotQEAgLTU1OSw3ICs1 NTksNyBAQAotICAgICAgICAgICAgIC50b3RhbF9zaXplCi0gICAgICAgICAgICAgLmdldF90ZXh0 KCkKLSAgICAgICAgICAgICAuYXNfcmVmKCkKLS0gICAgICAgICAgICAubWFwKHxzfCBzLnRyaW1f cmlnaHRfbWF0Y2hlcygiIE1CIikpCi0rICAgICAgICAgICAgLm1hcCh8c3wgcy50cmltX2VuZF9t YXRjaGVzKCIgTUIiKSkKLSAgICAgICAgICAgICAuYW5kX3RoZW4ofHN8IHMucGFyc2U6OjxpMzI+ KCkub2soKSkKLSAgICAgICAgICAgICAuaXNfbm9uZSgpCi0gICAgICAgICB7Ci0tLS0gcG9kY2Fz dHMtZ3RrL3NyYy93aWRnZXRzL3Nob3dzX3ZpZXcucnMub3JpZwkyMDE5LTA2LTA5IDE1OjU0OjAw LjMyMDg3ODg2NyArMDIwMAotKysrIHBvZGNhc3RzLWd0ay9zcmMvd2lkZ2V0cy9zaG93c192aWV3 LnJzCTIwMTktMDYtMDkgMTU6NTQ6MTMuMTUxNzg2NTYzICswMjAwCi1AQCAtODAsNyArODAsNiBA QAotIH0KLSAKLSBmbiBvbl9jaGlsZF9hY3RpdmF0ZShjaGlsZDogJmd0azo6Rmxvd0JveENoaWxk LCBzZW5kZXI6ICZTZW5kZXI8QWN0aW9uPikgLT4gUmVzdWx0PCgpLCBFcnJvcj4gewotLSAgICB1 c2UgZ3RrOjpXaWRnZXRFeHQ7Ci0gCi0gICAgIC8vIFRoaXMgaXMgc3VjaCBhbiB1Z2x5IGhhY2su Li4KLSAgICAgbGV0IGlkID0gV2lkZ2V0RXh0OjpnZXRfbmFtZShjaGlsZCkKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXBvZGNhc3Rz L3RlbXBsYXRlCmluZGV4IDcyZTJkYjZiMTA5Li4zYzIzOWRmODQyNCAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXBvZGNhc3Rz L3RlbXBsYXRlCkBAIC0xLDI2ICsxLDI4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1w b2RjYXN0cycKIHBrZ25hbWU9Z25vbWUtcG9kY2FzdHMKLXZlcnNpb249MC40LjYKLXJldmlzaW9u PTMKK3ZlcnNpb249MC40LjcKK3JldmlzaW9uPTEKIHdya3NyYz0icG9kY2FzdHMtJHt2ZXJzaW9u fSIKIGJ1aWxkX3N0eWxlPW1lc29uCi1ob3N0bWFrZWRlcGVuZHM9ImNhcmdvIGdldHRleHQtZGV2 ZWwgZ2xpYi1kZXZlbCBwa2ctY29uZmlnIgorYnVpbGRfaGVscGVyPSJydXN0IgoraG9zdG1ha2Vk ZXBlbmRzPSJjYXJnbyBnZXR0ZXh0IGdsaWItZGV2ZWwgcGtnLWNvbmZpZyBzcWxpdGUtZGV2ZWwi CiBtYWtlZGVwZW5kcz0iZ3N0cmVhbWVyMS1kZXZlbCBnc3QtcGx1Z2lucy1iYWQxLWRldmVsIGdz dC1wbHVnaW5zLWJhc2UxLWRldmVsCi0gZ3RrKzMtZGV2ZWwgbGliaGFuZHktZGV2ZWwgbGlicmVz c2wtZGV2ZWwgc3FsaXRlLWRldmVsIHRleGluZm8iCisgZ3RrKzMtZGV2ZWwgbGliaGFuZHktZGV2 ZWwgbGlicmVzc2wtZGV2ZWwgc3FsaXRlLWRldmVsIHJ1c3Qtc3RkIgogc2hvcnRfZGVzYz0iTGlz dGVuIHRvIHlvdXIgZmF2b3JpdGUgcG9kY2FzdHMiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvUG9kY2FzdHMiCiBkaXN0ZmlsZXM9Imh0 dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9Xb3JsZC9wb2RjYXN0cy8tL2FyY2hpdmUvJHt2ZXJzaW9u fS9wb2RjYXN0cy0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTk1M2M2M2U4MTg0Y2ExZjc0 ODQxOGQ4YTgyNjJkNDBlYWE0MTA0N2Y4MWUyZDJjODc0YTMwMzVkOWQ5ZDBlNGEKLW5vY3Jvc3M9 InJ1c3RjIGNhbnQgYmUgY3Jvc3Njb21waWxlZCBhcyBvZiBub3ciCi1icm9rZW49ImdldHRleHQt cnMgaGFzaCBkb2VzIG5vdCBleGlzdHMsIGlmIGZpeGVkIGJ1aWxkIGZhaWxzIGluIGdpbyAwLjUu MCIKK2NoZWNrc3VtPWE5YTFiNjJkZDM1NjdlM2NjYTM4ZWUyOWRmMmZhZGQ4MmUyZmI1ZTgzN2Iw YTJhMjZlY2FjNzRlOTMwNTE2MWMKIAogZXhwb3J0IEdFVFRFWFRfQklOX0RJUj0vdXNyL2Jpbgog ZXhwb3J0IEdFVFRFWFRfTElCX0RJUj0iJHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIvZ2V0dGV4 dCIKIGV4cG9ydCBHRVRURVhUX0lOQ0xVREVfRElSPSIke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2lu Y2x1ZGUiCiAKLXByZV9idWlsZCgpIHsKLQljYXJnbyB1cGRhdGUgLS1wYWNrYWdlIG9wZW5zc2wt c3lzIC0tcHJlY2lzZSAwLjkuNDYKLQljYXJnbyB1cGRhdGUgLS1wYWNrYWdlIG9wZW5zc2wgLS1w cmVjaXNlIDAuMTAuMjIKLX0KK2lmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgorCXBvc3RfcGF0 Y2goKSB7CisJCXZzZWQgLWkgc2NyaXB0cy9jYXJnby5zaCBcCisJCQktZSAncyUiJENBUkdPX1RB UkdFVF9ESVIiLyUmJHtSVVNUX1RBUkdFVH0vJScgXAorCQkJLWUgJy9DQVJHT19IT01FL2QnCisJ fQorZmkKCkZyb20gYmJjYTJkODRiYTQ4NzM2MTk0MGZkZTRlYjY0NWE2MGI5MTFhZjQ3NyBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogV2VkLCAyOSBBcHIgMjAyMCAxNDo0MTozMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTYv NTNdIGdub21lLWNvbnRyb2wtY2VudGVyOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dz L2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlIHwgMjAgKysrKysrKysrKysrKysrKy0tLS0K IDEgZmlsZSBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2du b21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlCmluZGV4IDBlMjc4Nzg5OGFlLi4wNzAzNmNmOTlm MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY29udHJvbC1jZW50ZXInCiBwa2duYW1lPWdub21l LWNvbnRyb2wtY2VudGVyCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9u PTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKQEAgLTEwLDI0ICsxMCwz NiBAQCBob3N0bWFrZWRlcGVuZHM9ImdsaWItZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1h cy1kZXZlbCBpbnRsdG9vbCBwa2ctY29uZmlnCiBtYWtlZGVwZW5kcz0iTW9kZW1NYW5hZ2VyLWRl dmVsIGFjY291bnRzc2VydmljZS1kZXZlbCBhbHNhLXBsdWdpbnMKICBjb2xvcmQtZ3RrLWRldmVs IGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdub21lLW1lbnVzLWRl dmVsCiAgZ25vbWUtb25saW5lLWFjY291bnRzLWRldmVsIGdub21lLXNldHRpbmdzLWRhZW1vbi1k ZXZlbCBncmlsby1kZXZlbCBpYnVzLWRldmVsCi0gbGliU00tZGV2ZWwgbGliWHhmODZtaXNjLWRl dmVsIGxpYmdub21la2JkLWRldmVsIGxpYmd0b3AtZGV2ZWwKKyBsaWJTTS1kZXZlbCBsaWJYeGY4 Nm1pc2MtZGV2ZWwgbGliZ25vbWVrYmQtZGV2ZWwgbGliZ3RvcC1kZXZlbCBsaWJoYW5keS1kZXZl bAogIGxpYnB3cXVhbGl0eS1kZXZlbCBtaXQta3JiNS1kZXZlbCBuZXR3b3JrLW1hbmFnZXItYXBw bGV0LWRldmVsIHBvbGtpdC1kZXZlbAogIHB1bHNlYXVkaW8tZGV2ZWwgc2FtYmEtZGV2ZWwgdHpk YXRhIHVwb3dlci1kZXZlbCB2YWxhLWRldmVsIGNsdXR0ZXItZ3RrLWRldmVsCiAgbGlieG1sMi1k ZXZlbCBsaWJYMTEtZGV2ZWwgZ3RrKzMtZGV2ZWwgY3Vwcy1kZXZlbCBsaWJndWRldi1kZXZlbCBs aWJ3YWNvbS1kZXZlbAogIGNsdXR0ZXItZGV2ZWwgbGlic2VjcmV0LWRldmVsIGxpYmNhbmJlcnJh LWRldmVsIHVkaXNrczItZGV2ZWwgZ3NvdW5kLWRldmVsCiAgJCh2b3B0X2lmIGNoZWVzZSBjaGVl c2UtZGV2ZWwpIgotZGVwZW5kcz0iYWxzYS1wbHVnaW5zLXB1bHNlYXVkaW8gZGVza3RvcC1maWxl LXV0aWxzCitkZXBlbmRzPSJhbHNhLXBsdWdpbnMtcHVsc2VhdWRpbyBkZXNrdG9wLWZpbGUtdXRp bHMgdXBvd2VyIGNvbG9yZCBjdXBzLXBrLWhlbHBlcgogIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVt YXMgaGljb2xvci1pY29uLXRoZW1lIGlzby1jb2RlcyBzb3VuZC10aGVtZS1mcmVlZGVza3RvcAog IGNyYWNrbGliIgorY2hlY2tkZXBlbmRzPSJweXRob24zLWRidXNtb2NrIHhvcmctc2VydmVyLXh2 ZmIiCiBzaG9ydF9kZXNjPSJHTk9NRSBjb250cm9sIGNlbnRlciIKIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1jb250cm9s LWNlbnRlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUu Kn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTVmODJlY2Q1NTU0MTM2 YzQ2MjI0OGVjNTM2M2I4MmQ5NTM1OGIzOWRmZDY3ODcwMDZkODMwN2I0NTA0ZTUxNWUKK2NoZWNr c3VtPWUwYTVlZmYwYzZkNmMyMmRiMGM1NGZkMDcwNDYwZGU4NzRkMzY3ZWYzZjkwNzJlMTU1OWI3 MGYyOGI4NDc4MTcKIAogYnVpbGRfb3B0aW9ucz0iY2hlZXNlIgogZGVzY19vcHRpb25fY2hlZXNl PSJBZGQgc3VwcG9ydCBmb3IgYWRkaW5nIHVzZXIgYWNjb3VudCBpbWFnZXMgd2l0aCB5b3VyIHdl YmNhbSIKKworcHJlX2NoZWNrKCkgeworCSMgdGVzdC1uZXR3b3JrLXBhbmVsIG5lZWRzIGlkIGdl bmVyYXRlZCBieSBkYnVzLXV1aWRnZW4KKwlta2RpciAtcCAvdmFyL2xpYi9kYnVzCisJZGJ1cy11 dWlkZ2VuIC0tZW5zdXJlCit9CisKK3Bvc3RfY2hlY2soKSB7CisJcm0gLXJmIC92YXIvbGliL2Ri dXMKK30KKwogaWYgWyAteiAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJYnVpbGRfb3B0aW9uc19k ZWZhdWx0Kz0iIGNoZWVzZSIKIGZpCgpGcm9tIDM5Mzg0ZjgyM2ViMGZjMGRkZmMwNmE1ZmM0ZmEx ZTdjZWYyOTdiYjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMDo1Nzo0NSArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMTcvNTNdIGdub21lLXNldHRpbmdzLWRhZW1vbjogdXBkYXRlIHRvIDMuMzYu MS4KCkFkZGVkIGEgcGF0Y2ggdG8gZml4IGJyaWdodG5lc3MgY29udHJvbHMgd2l0aCBlbG9naW5k LgotLS0KIC4uLnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5wYXRjaCB8IDEy MSArKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBs YXRlICAgICAgICB8ICAxMCArLQogMiBmaWxlcyBjaGFuZ2VkLCAxMjYgaW5zZXJ0aW9ucygrKSwg NSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLXNldHRpbmdz LWRhZW1vbi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5w YXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3BhdGNoZXMv ZG9udC11c2UtbG9naW5kLWZvci1icmlnaHRuZXNzLWNoYW5naW5nLnBhdGNoIGIvc3JjcGtncy9n bm9tZS1zZXR0aW5ncy1kYWVtb24vcGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5l c3MtY2hhbmdpbmcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LmEzYTgzNGUzYjc0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1k YWVtb24vcGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5lc3MtY2hhbmdpbmcucGF0 Y2gKQEAgLTAsMCArMSwxMjEgQEAKK1Vwc3RyZWFtIGludHJvZHVjZWQgYnJpZ2h0bmVzcyBsZXZl bCBjaGFuZ2luZyB3aXRoCitodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2V0 dGluZ3MtZGFlbW9uLy0vY29tbWl0L2NkMDUxZTZjN2NjZmI3ZTdiMGVjNDQwNDA5YzU1OWIyZTUx Mjg0ZTgKK2J1dCBhcHBhcmVudGx5IHRoaXMgZG9lc24ndCB3b3JrIHdpdGggZWxvZ2luZCAoc2Vl IGh0dHBzOi8vZ2l0aHViLmNvbS9lbG9naW5kL2Vsb2dpbmQvaXNzdWVzLzE1OCksCitzbyBsZXQn cyByZXZlcnQgdGhpcyBmb3Igbm93IGFuZCBrZWVwIHVzaW5nIHRoZSBvbGQgbWVjaGFuaXNtLgor ZGlmZiAtLWdpdCBwbHVnaW5zL3Bvd2VyL2dzZC1iYWNrbGlnaHQuYyBwbHVnaW5zL3Bvd2VyL2dz ZC1iYWNrbGlnaHQuYworaW5kZXggOWY0MDZjOS4uOWM4NzJmOCAxMDA2NDQKKy0tLSBwbHVnaW5z L3Bvd2VyL2dzZC1iYWNrbGlnaHQuYworKysrIHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5j CitAQCAtNDAsOCArNDAsNiBAQCBzdHJ1Y3QgX0dzZEJhY2tsaWdodAorICAgICAgICAgZ2ludCBi cmlnaHRuZXNzX3N0ZXA7CisgCisgI2lmZGVmIF9fbGludXhfXworLSAgICAgICAgR0RCdXNQcm94 eSAqbG9naW5kX3Byb3h5OworLQorICAgICAgICAgR1VkZXZDbGllbnQgKnVkZXY7CisgICAgICAg ICBHVWRldkRldmljZSAqdWRldl9kZXZpY2U7CisgCitAQCAtNjEsMTAgKzU5LDYgQEAgZW51bSB7 CisgICAgICAgICBQUk9QX0xBU1QsCisgfTsKKyAKKy0jZGVmaW5lIFNZU1RFTURfREJVU19OQU1F ICAgICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9wLmxvZ2luMSIKKy0jZGVmaW5l IFNZU1RFTURfREJVU19QQVRIICAgICAgICAgICAgICAgICAgICAgICAiL29yZy9mcmVlZGVza3Rv cC9sb2dpbjEvc2Vzc2lvbi9hdXRvIgorLSNkZWZpbmUgU1lTVEVNRF9EQlVTX0lOVEVSRkFDRSAg ICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AubG9naW4xLlNlc3Npb24iCistCisgc3Rh dGljIEdQYXJhbVNwZWMgKnByb3BzW1BST1BfTEFTVF07CisgCisgc3RhdGljIHZvaWQgICAgIGdz ZF9iYWNrbGlnaHRfaW5pdGFibGVfaWZhY2VfaW5pdCAoR0luaXRhYmxlSWZhY2UgICppZmFjZSk7 CitAQCAtNDgxLDMxICs0NzUsMTMgQEAgZ3NkX2JhY2tsaWdodF9zZXRfYnJpZ2h0bmVzc192YWxf YXN5bmMgKEdzZEJhY2tsaWdodCAqYmFja2xpZ2h0LAorICNpZmRlZiBfX2xpbnV4X18KKyAgICAg ICAgIGlmIChiYWNrbGlnaHQtPnVkZXZfZGV2aWNlICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAg ICAgQmFja2xpZ2h0SGVscGVyRGF0YSAqdGFza19kYXRhOworKyAgICAgICAgICAgICAgICAgIHRh c2tfZGF0YSA9IGdfbmV3MCAoQmFja2xpZ2h0SGVscGVyRGF0YSwgMSk7CisrICAgICAgICAgICAg ICAgICAgdGFza19kYXRhLT52YWx1ZSA9IGJhY2tsaWdodC0+YnJpZ2h0bmVzc190YXJnZXQ7Cisr ICAgICAgICAgICAgICAgICAgZ190YXNrX3NldF90YXNrX2RhdGEgKHRhc2ssIHRhc2tfZGF0YSwg YmFja2xpZ2h0X3Rhc2tfZGF0YV9kZXN0cm95KTsKKyAKKy0gICAgICAgICAgICAgICAgaWYgKGJh Y2tsaWdodC0+bG9naW5kX3Byb3h5KSB7CistICAgICAgICAgICAgICAgICAgICAgICAgZ19kYnVz X3Byb3h5X2NhbGwgKGJhY2tsaWdodC0+bG9naW5kX3Byb3h5LAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAiU2V0QnJpZ2h0bmVzcyIsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdfdmFyaWFudF9uZXcgKCIoc3N1KSIsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJiYWNrbGlnaHQiLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBnX3VkZXZfZGV2aWNlX2dldF9uYW1lIChiYWNrbGlnaHQtPnVkZXZf ZGV2aWNlKSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgYmFja2xpZ2h0LT5icmlnaHRuZXNzX3RhcmdldCksCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xLCBOVUxMLAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKKy0K Ky0gICAgICAgICAgICAgICAgICAgICAgICBwZXJjZW50ID0gQUJTX1RPX1BFUkNFTlRBR0UgKGJh Y2tsaWdodC0+YnJpZ2h0bmVzc19taW4sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfbWF4LAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2xpZ2h0 LT5icmlnaHRuZXNzX3RhcmdldCk7CistICAgICAgICAgICAgICAgICAgICAgICAgZ190YXNrX3Jl dHVybl9pbnQgKHRhc2ssIHBlcmNlbnQpOworLSAgICAgICAgICAgICAgICB9IGVsc2UgeworLSAg ICAgICAgICAgICAgICAgICAgICAgIHRhc2tfZGF0YSA9IGdfbmV3MCAoQmFja2xpZ2h0SGVscGVy RGF0YSwgMSk7CistICAgICAgICAgICAgICAgICAgICAgICAgdGFza19kYXRhLT52YWx1ZSA9IGJh Y2tsaWdodC0+YnJpZ2h0bmVzc190YXJnZXQ7CistICAgICAgICAgICAgICAgICAgICAgICAgZ190 YXNrX3NldF90YXNrX2RhdGEgKHRhc2ssIHRhc2tfZGF0YSwgYmFja2xpZ2h0X3Rhc2tfZGF0YV9k ZXN0cm95KTsKKy0KKy0gICAgICAgICAgICAgICAgICAgICAgICAvKiBUYXNrIGlzIHNldCB1cCBu b3cuIFF1ZXVlIGl0IGFuZCBlbnN1cmUgd2UgYXJlIHdvcmtpbmcgc29tZXRoaW5nLiAqLworLSAg ICAgICAgICAgICAgICAgICAgICAgIGdfcXVldWVfcHVzaF90YWlsICgmYmFja2xpZ2h0LT50YXNr cywgdGFzayk7CistICAgICAgICAgICAgICAgICAgICAgICAgZ3NkX2JhY2tsaWdodF9wcm9jZXNz X3Rhc2txdWV1ZSAoYmFja2xpZ2h0KTsKKy0gICAgICAgICAgICAgICAgfQorKyAgICAgICAgICAg ICAgICAgIC8qIFRhc2sgaXMgc2V0IHVwIG5vdy4gUXVldWUgaXQgYW5kIGVuc3VyZSB3ZSBhcmUg d29ya2luZyBzb21ldGhpbmcuICovCisrICAgICAgICAgICAgICAgICAgZ19xdWV1ZV9wdXNoX3Rh aWwgKCZiYWNrbGlnaHQtPnRhc2tzLCB0YXNrKTsKKysgICAgICAgICAgICAgICAgICBnc2RfYmFj a2xpZ2h0X3Byb2Nlc3NfdGFza3F1ZXVlIChiYWNrbGlnaHQpOworIAorICAgICAgICAgICAgICAg ICByZXR1cm47CisgICAgICAgICB9CitAQCAtODIzLDcgKzc5OSw2IEBAIGdzZF9iYWNrbGlnaHRf aW5pdGFibGVfaW5pdCAoR0luaXRhYmxlICAgICAgICppbml0YWJsZSwKKyB7CisgICAgICAgICBH c2RCYWNrbGlnaHQgKmJhY2tsaWdodCA9IEdTRF9CQUNLTElHSFQgKGluaXRhYmxlKTsKKyAgICAg ICAgIEdub21lUlJPdXRwdXQqIG91dHB1dCA9IE5VTEw7CistICAgICAgICBHRXJyb3IgKmxvZ2lu ZF9lcnJvciA9IE5VTEw7CisgCisgICAgICAgICBpZiAoY2FuY2VsbGFibGUgIT0gTlVMTCkgewor ICAgICAgICAgICAgICAgICBnX3NldF9lcnJvcl9saXRlcmFsIChlcnJvciwgR19JT19FUlJPUiwg R19JT19FUlJPUl9OT1RfU1VQUE9SVEVELAorQEAgLTgzMiwzOCArODA3LDYgQEAgZ3NkX2JhY2ts aWdodF9pbml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICAgKmluaXRhYmxlLAorICAgICAgICAg fQorIAorICNpZmRlZiBfX2xpbnV4X18KKy0gICAgICAgIGJhY2tsaWdodC0+bG9naW5kX3Byb3h5 ID0KKy0gICAgICAgICAgICAgICAgZ19kYnVzX3Byb3h5X25ld19mb3JfYnVzX3N5bmMgKEdfQlVT X1RZUEVfU1lTVEVNLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT WVNURU1EX0RCVVNfTkFNRSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFNZU1RFTURfREJVU19QQVRILAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgU1lTVEVNRF9EQlVTX0lOVEVSRkFDRSwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsICZsb2dpbmRfZXJyb3Ip OworLSAgICAgICAgaWYgKGJhY2tsaWdodC0+bG9naW5kX3Byb3h5KSB7CistICAgICAgICAgICAg ICAgIC8qIENoZWNrIHRoYXQgdGhlIFNldEJyaWdodG5lc3MgbWV0aG9kIGRvZXMgZXhpc3QgKi8K Ky0gICAgICAgICAgICAgICAgZ19kYnVzX3Byb3h5X2NhbGxfc3luYyAoYmFja2xpZ2h0LT5sb2dp bmRfcHJveHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTZXRC cmlnaHRuZXNzIiwgTlVMTCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR19EQlVTX0NBTExfRkxBR1NfTk9ORSwgLTEsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsICZsb2dpbmRfZXJyb3IpOworLQorLSAgICAgICAgICAgICAg ICBpZiAoZ19lcnJvcl9tYXRjaGVzIChsb2dpbmRfZXJyb3IsIEdfREJVU19FUlJPUiwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0VSUk9SX0lOVkFMSURfQVJH UykpIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICAvKiBXZSBhcmUgY2FsbGluZyB0aGUgbWV0 aG9kIHdpdGggbm8gYXJndW1lbnRzLCBzbworLSAgICAgICAgICAgICAgICAgICAgICAgICAqIHRo aXMgaXMgZXhwZWN0ZWQuCistICAgICAgICAgICAgICAgICAgICAgICAgICovCistICAgICAgICAg ICAgICAgICAgICAgICAgZ19jbGVhcl9lcnJvciAoJmxvZ2luZF9lcnJvcik7CistICAgICAgICAg ICAgICAgIH0gZWxzZSB7CistICAgICAgICAgICAgICAgICAgICAgICAgLyogRmFpbCBvbiBhbnl0 aGluZyBlbHNlICovCistICAgICAgICAgICAgICAgICAgICAgICAgZ19jbGVhcl9vYmplY3QgKCZi YWNrbGlnaHQtPmxvZ2luZF9wcm94eSk7CistICAgICAgICAgICAgICAgIH0KKy0gICAgICAgIH0K Ky0KKy0gICAgICAgIGlmIChsb2dpbmRfZXJyb3IpIHsKKy0gICAgICAgICAgICAgICAgZ193YXJu aW5nICgiTm8gbG9naW5kIGZvdW5kOiAlcyIsIGxvZ2luZF9lcnJvci0+bWVzc2FnZSk7CistICAg ICAgICAgICAgICAgIGdfZXJyb3JfZnJlZSAobG9naW5kX2Vycm9yKTsKKy0gICAgICAgIH0KKy0K KyAgICAgICAgIC8qIFRyeSBmaW5kaW5nIGEgdWRldiBkZXZpY2UuICovCisgICAgICAgICBpZiAo Z3NkX2JhY2tsaWdodF91ZGV2X2luaXQgKGJhY2tsaWdodCkpCisgICAgICAgICAgICAgICAgIGdv dG8gZm91bmQ7CitAQCAtOTA1LDcgKzg0OCw2IEBAIGdzZF9iYWNrbGlnaHRfZmluYWxpemUgKEdP YmplY3QgKm9iamVjdCkKKyAjaWZkZWYgX19saW51eF9fCisgICAgICAgICBnX2Fzc2VydCAoYmFj a2xpZ2h0LT5hY3RpdmVfdGFzayA9PSBOVUxMKTsKKyAgICAgICAgIGdfYXNzZXJ0IChnX3F1ZXVl X2lzX2VtcHR5ICgmYmFja2xpZ2h0LT50YXNrcykpOworLSAgICAgICAgZ19jbGVhcl9vYmplY3Qg KCZiYWNrbGlnaHQtPmxvZ2luZF9wcm94eSk7CisgICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJh Y2tsaWdodC0+dWRldik7CisgICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJhY2tsaWdodC0+dWRl dl9kZXZpY2UpOworICAgICAgICAgaWYgKGJhY2tsaWdodC0+aWRsZV91cGRhdGUpIHsKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUKaW5kZXggYTcwZTI4YmU1ZmEuLjljZWIxZDEz ZGU5IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQpAQCAtMSwxMCArMSwx MCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2V0dGluZ3MtZGFlbW9uJwogcGtnbmFt ZT1nbm9tZS1zZXR0aW5ncy1kYWVtb24KLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTMuMzYuMQorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdz Kz0iLURzeXN0ZW1kPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJjbWFrZSBkb2Nib29rLXhzbCBn bGliLWRldmVsIGxpYmdsaWItZGV2ZWwgbGlieHNsdCBwZXJsIHBrZy1jb25maWciCitjb25maWd1 cmVfYXJncz0iLURzeXN0ZW1kPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJjbWFrZSBkb2Nib29r LXhzbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGliZ2xpYi1kZXZlbCBsaWJ4c2x0IHBlcmwgcGtnLWNv bmZpZyIKIG1ha2VkZXBlbmRzPSJOZXR3b3JrTWFuYWdlci1kZXZlbCBhbHNhLWxpYi1kZXZlbCBj b2xvcmQtZGV2ZWwgY3Vwcy1kZXZlbCBnY3ItZGV2ZWwKICBnZW9jbHVlMi1kZXZlbCBnbm9tZS1k ZXNrdG9wLWRldmVsIGlidXMtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliZ25vbWVrYmQtZGV2 ZWwKICBsaWJnd2VhdGhlci1kZXZlbCBsaWJub3RpZnktZGV2ZWwgbGlicnN2Zy1kZXZlbCBsaWJ3 YWNvbS1kZXZlbCBuc3MtZGV2ZWwKQEAgLTE4LDcgKzE4LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNldHRpbmdz LWRhZW1vbiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUu Kn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTk5ODFhMjBiYWJmOGRh Nzc0NGI3ZmJlMTc1YjllMzYwNzhiZjA4ZjNiZjY1ZmU1YWVkZWI4MmNmZTI3YWMxMWYKK2NoZWNr c3VtPTNlMzNkYmQzMTliNTYyYTVhYjYwMmRjYWI2ZGUzY2E4MWI4NWY4MzQ2NjcyZTkwZWM2MzJi MzZiYmYxNWVlNGIKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBl bmRzKz0iIHBvbGtpdCIKCkZyb20gMDk4NTc2OGExMzRiNDYxYTAwMjE5YjE4ZGMyOTVkNmE3ODBk NjEwNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDEwOjExOjU0ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAxOC81M10gZ25vbWUtdXNlci1kb2NzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNw a2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2Vk LCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n bm9tZS11c2VyLWRvY3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0 ZQppbmRleCA0Y2I1NTM5NmUzNy4uY2E5OTMzNDZlM2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25v bWUtdXNlci1kb2NzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBs YXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdXNlci1kb2Nz JwogcGtnbmFtZT1nbm9tZS11c2VyLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9uPTMuMzYu MgogcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBA IC0xMCw3ICsxMCw3IEBAIGRlcGVuZHM9InllbHAiCiBzaG9ydF9kZXNjPSJVc2VyIGRvY3VtZW50 YXRpb24gZm9yIEdOT01FIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkNDLUJZLTMuMCIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5j b20vR05PTUUvZ25vbWUtdXNlci1kb2NzIgotI2NoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVi dXNlcmNvbnRlbnQuY29tL0dOT01FL2dub21lLXVzZXItZG9jcy9tYXN0ZXIvTkVXUyIKK2hvbWVw YWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzIgorY2hh bmdlbG9nPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzLy0v cmF3LzMuMzYuMi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OGY5OTA3 ZmYxNWZmZjk3ZGE3NWVjZTY0NWNjODY3NjY3MDNhYzU0ZDcxNmQyNTU2M2JhNjdmZmVkMWFmMjRl ZAorY2hlY2tzdW09MTk4ZmU0YzgzNjc3NWE1ZGMyNTQzYTZhNTIwZGZiMGFjNWJmMjkyY2RjYjM1 OGE1N2M4NmYzNWY3MDVlOTk1OAoKRnJvbSAyMzI2YTAyMTQ2NTIwZGUzMDJmY2M2OTljNmYxMTkw NDA5ZTFiM2JjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBTdW4sIDMgTWF5IDIwMjAgMDI6MjA6NTIgKzA2MDAKU3ViamVj dDogW1BBVENIIDE5LzUzXSBnbm9tZS1pbml0aWFsLXNldHVwOiB1cGRhdGUgdG8gMy4zNi4yLgoK LS0tCiBzcmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUgfCAxMCArKysrKy0tLS0t CiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZQppbmRleCBhYmE1YTA5NGMyOC4uNzNlZjk2YjE5OTMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWluaXRpYWwtc2V0dXAnCiBwa2duYW1lPWdub21lLWlu aXRpYWwtc2V0dXAKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMgor cmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSItRHNvZnR3YXJl LXNvdXJjZXM9ZGlzYWJsZWQgLURzeXN0ZW1kPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ct Y29uZmlnIGdsaWItZGV2ZWwiCitjb25maWd1cmVfYXJncz0iLURwYXJlbnRhbF9jb250cm9scz1k aXNhYmxlZCAtRHN5c3RlbWQ9ZmFsc2UiCitob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNv bmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9Ik5ldHdvcmtNYW5hZ2VyLWRldmVsIGFjY291 bnRzc2VydmljZS1kZXZlbCBsaWJnbGliLWRldmVsCiAgZ25vbWUtZGVza3RvcC1kZXZlbCBjaGVl c2UtZGV2ZWwgbGliZ3dlYXRoZXItZGV2ZWwgd2Via2l0Mmd0ay1kZXZlbAogIGdub21lLW9ubGlu ZS1hY2NvdW50cy1kZXZlbCBnZG0tZGV2ZWwgbGlicHdxdWFsaXR5LWRldmVsCkBAIC0xNyw0ICsx Nyw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5v cmcvRGVzaWduL09TL0luaXRpYWxTZXR1cCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWU3MWYxMGVmNmI2MzFjZDkyZmZkZTc3NGU0MTMwYjMyYjI0OTRiNGRmNWVmMjg4Mzc1ZDhi MTk1N2VlYWJmYTEKK2NoZWNrc3VtPTRmOGJlNDFhZWExMDBjNTZkYmY4ZjBmZTFlMjM1NGQyZDFh YzA1Y2YxYzc5YTAxY2M5NzVjNmFhODkxNDU3NTYKCkZyb20gOTE2NTlhZDMyOGNmNGUxZmNhZWU3 MmNlODZkMmFhM2I5YTY4ZGUwOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjE1ICsw NjAwClN1YmplY3Q6IFtQQVRDSCAyMC81M10gZXZvbHV0aW9uLWRhdGEtc2VydmVyOiB1cGRhdGUg dG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCmluZGV4IDg4NWExMTVmNDliLi5k ZWM3MmU3YzQyNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKQEAgLTEs NiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZGF0YS1zZXJ2ZXInCiBw a2duYW1lPWV2b2x1dGlvbi1kYXRhLXNlcnZlcgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4z Ni4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWdpcgpAQCAt MTcsNyArMTcsNyBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8v d2lraS5nbm9tZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3Lmdp dGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvZ25vbWUtMy0z Ni9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4q fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MTMxMjJiMmVkZGRiOTgz MDYyMDdkMmEzNWQ1Y2NhZTI1YTkwNzAyNzY5Y2EwYTBiNTE2NTNiNTk4NDk4Njc5NgorY2hlY2tz dW09OThlMjc0Y2ZlYzE2Y2VlNmE0YjNiOWM3ODk3ZjZlMTEzNmQwMGU0ZjMxYTBkNjYyMTQ5MjVh YmJhYzc2ZTk3YgogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQi IF07IHRoZW4KCkZyb20gOWQ0N2U5YTk4YzMzMjJlMzNmMThlNmVjZGUzMDRiMmNhYTUwMjc4YSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCAy MS81M10gZXZvbHV0aW9uOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlv bi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCmluZGV4IDU2MGVkOTNkYTAyLi5jOWMzYWZiN2Y2ZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ldm9s dXRpb24vdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdldm9s dXRpb24nCiBwa2duYW1lPWV2b2x1dGlvbgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4y CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ERU5BQkxF X0FVVE9BUj1PRkYgLURFTkFCTEVfTElCQ1JZUFRVST1PRkYgLURFTkFCTEVfR1RLU1BFTEw9T0ZG CkBAIC0xOSw3ICsxOSw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyLCBMR1BMLTMuMC1v ci1sYXRlciwgR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL0FwcHMvRXZvbHV0aW9uIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29u dGVudC5jb20vR05PTUUvZXZvbHV0aW9uL2dub21lLTMtMzYvTkVXUyIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKLWNoZWNrc3VtPTg3M2FjZjFkYmVjMzhlNjdlMTY5MDY0NjQ1YWMzYTliOWE5NDRi ZDJiNjMzMTYxZGY2ZTVmMDU3MDBlMzZjYjgKK2NoZWNrc3VtPWM1MDk0OGMxYTNkZGIzOWI3MmFj ZDkzZGU3N2Y5NDc4N2NkYzFiZWYzMzBiOTY3YmJiOGI2YzcyMzM0MzMxOGEKIHNobGliX3Byb3Zp ZGVzPSJsaWJldm9sdXRpb24tY2FsZW5kYXIuc28gbGliZXZvbHV0aW9uLXV0aWwuc28gbGliZW1h aWwtZW5naW5lLnNvCiAgbGliZXZvbHV0aW9uLW1haWwuc28gbGliZXZvbHV0aW9uLXNoZWxsLnNv IgogCgpGcm9tIDE2MjZmODJmYWI3MDY2OWRhNTllOWI5NWFlMmEyOWU0OGVmYWU2OTIgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IEZyaSwgMSBNYXkgMjAyMCAwODozODoyNyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjIvNTNd IGV2b2x1dGlvbi1ld3M6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9u LWV3cy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxh dGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKaW5kZXggNGZmODExNjQ2NmMuLmEx NzFmNGM0YTA4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWV3cycKIHBrZ25hbWU9ZXZvbHV0aW9uLWV3cwotdmVy c2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFr ZQogY29uZmlndXJlX2FyZ3M9Ii1ETElCRVhFQ19JTlNUQUxMX0RJUj0vdXNyL2xpYi9ldm9sdXRp b24iCkBAIC0xMiw0ICsxMiw0IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBh Z2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0 dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24tZXdzL2dub21l LTMtMzYvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQwODgzYzdkMjI3 ODI3Y2M1YzQ0NjhiN2UzMWEzZWUzNzBiY2Q3ZDQxYTRkYmI5NTBhYjVkYjM2Yzk1NTFhYzEKK2No ZWNrc3VtPTJlNDJlNDg5MDQ4N2Y4YzdmOWQ3NzZhNDQ0NGRmNmVmZDUyOTljYTAwM2EzMDAwMmVi NWYwMjIwOTFkYzM1OWQKCkZyb20gNTdhZDRhNjM1ZDBhMDFmOGQzZDhjZDcyZDE0YTRmZDBkNDQ3 Zjg1YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDExOjIwOjIzICswNjAwClN1YmplY3Q6IFtQ QVRDSCAyMy81M10gYXRrOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL2F0ay90ZW1w bGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXRrL3RlbXBsYXRlIGIvc3JjcGtncy9hdGsv dGVtcGxhdGUKaW5kZXggN2MxNGIxMTY1OTguLmNhMjJkMzY2MTk4IDEwMDY0NAotLS0gYS9zcmNw a2dzL2F0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F0ay90ZW1wbGF0ZQpAQCAtMSwxOCArMSwx OCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYXRrJwogcGtnbmFtZT1hdGsKLXZlcnNpb249Mi4z NC4xCit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxk X2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii1EaW50cm9zcGVjdGlvbj0kKHZvcHRfaWYg Z2lyIHRydWUgZmFsc2UpIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwi Citob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRl cGVuZHM9ImxpYmdsaWItZGV2ZWwiCiBzaG9ydF9kZXNjPSJTZXQgb2YgaW50ZXJmYWNlcyBmb3Ig YWNjZXNzaWJpbGl0eSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4 Lm9yZz4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2Rl dmVsb3Blci5nbm9tZS5vcmcvYXRrLyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9hdGsvJHt2 ZXJzaW9uJS4qfS9hdGstJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1kNGYwZTNiM2QyMTI2 NWZjZjJiYzM3MWUxMTdkYTUxYzQyZWRlMWE3MWY2ZGIxYzgzNGU2OTc2YmIyMDk5N2NiCitjaGVj a3N1bT1mYjc2MjQ3ZTM2OTQwMmJlMjNmMWY1YzY1ZDM4YTk2MzljMTE2NGQ5MzRlNDBmNmE5Y2Yz YzllOTZiNjUyNzg4CiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25zCiBidWlsZF9vcHRpb25zPSJn aXIiCgpGcm9tIDNhY2NjMzYyNTlkNmM5YjQ5ZDQ3MzI0ODcxZjNmMmFmZTllMmRiZWMgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IFR1ZSwgNSBNYXkgMjAyMCAxMjo0Mzo1MiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjQvNTNd IGF0LXNwaTItY29yZTogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtncy9hdC1zcGkyLWNv cmUvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwg MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCmluZGV4IGIzODNmZTk5YmVkLi5hMTNj NTYwMGQ3OSAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2F0LXNwaTItY29yZScKIHBrZ25hbWU9YXQtc3BpMi1jb3JlCi12ZXJzaW9u PTIuMzQuMAordmVyc2lvbj0yLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBi dWlsZF9oZWxwZXI9ImdpciIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBkYnVzIGdsaWIt ZGV2ZWwiCitob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2 ZWwiCiBtYWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJYZXh0LWRldmVsIGxpYlNNLWRldmVs IGxpYlh0c3QtZGV2ZWwKICBsaWJYZXZpZS1kZXZlbCBkYnVzLWRldmVsIgogc2hvcnRfZGVzYz0i QXNzaXN0aXZlIFRlY2hub2xvZ3kgU2VydmljZSBQcm92aWRlciBJbnRlcmZhY2UiCkBAIC0xMiw3 ICsxMiw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdu b21lLm9yZy9HTk9NRS9hdC1zcGkyLWNvcmUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT1kNjI5Y2RiZDY3NGU1MzlmODkxMjAyODUxMmFmNTgzOTkwOTM4YzdiNDllMjUxODRjMTI2 YjAwMTIxZWYxMWM2CitjaGVja3N1bT04OGRhNTdkZTBhN2UzYzYwYmMzNDFhOTc0YTgwZmRiYTA5 MTYxMmRiMzU0N2M0MTBkNmRlYWIwMzljYTVjMDVhCiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25z CiBidWlsZF9vcHRpb25zPSJnaXIiCgpGcm9tIGM3ZWZiYjMzNTlhNDllNDk5ODRlOTNhN2RiNzRh YzBlNWMxZjExZTIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMjo0NDowMCArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMjUvNTNdIGF0LXNwaTItYXRrOiB1cGRhdGUgdG8gMi4zNC4yLgoKLS0tCiBz cmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3Bp Mi1hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCmluZGV4IDQzNTFi Nzk5NmYzLi5hYTdiODgzOWM5ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1hdGsnCiBwa2duYW1lPWF0LXNwaTItYXRrCi12 ZXJzaW9uPTIuMzQuMQordmVyc2lvbj0yLjM0LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCiBob3N0bWFrZWRlcGVuZHM9ImxpYnRvb2wgcGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRl dmVsIgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cDovL3d3dy5nbm9tZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03NzZk ZjkzMDc0OGZkZTcxYzEyOGJlNmMzNjZhOTg3Yjk4YjZlZTY2ZDUwOGVkOWM4ZGIyMzU1YmY0Yjlj YzE2CitjaGVja3N1bT05MDEzMjNjZWUwZWVmMDVjMDFlYzRkZWUwNmM3MDFhZWVjYTgxYTMxNGE3 ZDYwMjE2ZmEzNjMwMDVlMjdmNGYwCiAKIGF0LXNwaTItYXRrLWRldmVsX3BhY2thZ2UoKSB7CiAJ ZGVwZW5kcz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNp b259IgoKRnJvbSA2NmQxZDU1ZGNiYjZiMDk0ZGY0YTg5NWYwZDA3ZDIyYTQ3ODRkNTcxIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBXZWQsIDYgTWF5IDIwMjAgMTk6NDc6NTggKzA2MDAKU3ViamVjdDogW1BBVENIIDI2LzUz XSBweXRob24tYXRzcGk6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvcHl0aG9uLWF0 c3BpL3RlbXBsYXRlIHwgMTEgKysrKy0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlv bnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24tYXRzcGkv dGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQppbmRleCBjZmExZWYzNTM3 Ny4uMTBhNmNhN2JjNzIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRlCkBAIC0xLDIxICsxLDE5IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24tYXRzcGknCiBwa2duYW1lPXB5dGhvbi1hdHNwaQot dmVyc2lvbj0yLjMyLjEKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0yCiBhcmNocz1ub2FyY2gK IHdya3NyYz0icHlhdHNwaS0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQot cHljb21waWxlX21vZHVsZT0icHlhdHNwaSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBw eXRob24gcHl0aG9uMyIKLW1ha2VkZXBlbmRzPSJhdC1zcGkyLWNvcmUtZGV2ZWwgcHl0aG9uLWdv YmplY3QtZGV2ZWwKLSBweXRob24zLWdvYmplY3QtZGV2ZWwiCitob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgcHl0aG9uIHB5dGhvbjMgd2hpY2giCittYWtlZGVwZW5kcz0iYXQtc3BpMi1jb3Jl LWRldmVsIHB5dGhvbi1nb2JqZWN0LWRldmVsIgogZGVwZW5kcz0iYXQtc3BpMi1jb3JlIHB5dGhv bi1nb2JqZWN0Igogc2hvcnRfZGVzYz0iUHl0aG9uMiBiaW5kaW5ncyBmb3IgQVQtU1BJIgogbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01F L3B5YXRzcGkyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L3B5YXRzcGkvJHt2ZXJzaW9uJS4q fS9weWF0c3BpLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODQ5NTRhNWJiZWFjYzgzNjQz ZjA1Nzc4ZDhiZWFmY2FiODIwOGUxMWIzOWIyNDYzN2I0YzRkZDFmODYyMDM4OQorY2hlY2tzdW09 NTEzNmMxYmY5MTllMTAxZDRlYzkwMWEyNzZlODZlYTYwZTU4ODFhOGZmNzc2M2UzNTZmMTk4NDBl NWZmZTFkZAogCiBwcmVfY29uZmlndXJlKCkgewogCW1rZGlyIC1wIGF0c3BpLSR7cHkyX3Zlcn0K QEAgLTQ2LDcgKzQ0LDYgQEAgZG9faW5zdGFsbCgpIHsKIAogcHl0aG9uMy1hdHNwaV9wYWNrYWdl KCkgewogCWFyY2hzPW5vYXJjaAotCXB5Y29tcGlsZV9tb2R1bGU9InB5YXRzcGkiCiAJZGVwZW5k cz0iYXQtc3BpMi1jb3JlIHB5dGhvbjMtZ29iamVjdCIKIAlzaG9ydF9kZXNjPSIke3Nob3J0X2Rl c2MvUHl0aG9uMi9QeXRob24zfSIKIAlwa2dfaW5zdGFsbCgpIHsKCkZyb20gNjhkY2Y3Mzk4ZGIy OWNmMzNmYmVjNmQyN2E3MzZkZDA0MTQ0OWIwNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDE1 OjQzOjAxICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNy81M10gZm9sa3M6IHVwZGF0ZSB0byAwLjE0 LjAuCgotLS0KIHNyY3BrZ3MvZm9sa3MvdGVtcGxhdGUgfCAxMiArKysrKystLS0tLS0KIDEgZmls ZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9mb2xrcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKaW5kZXggMzMx MGM1NGZhZGQuLjRiZjdiNTVhMDgwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2ZvbGtzJwogcGtnbmFtZT1mb2xrcwotdmVyc2lvbj0wLjEzLjEKLXJldmlz aW9uPTIKK3ZlcnNpb249MC4xNC4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVp bGRfaGVscGVyPWdpcgotY29uZmlndXJlX2FyZ3M9Ii1EYl9sdG89ZmFsc2UgLURsaWJzb2NpYWx3 ZWItYmFja2VuZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBn bGliLWRldmVsIHZhbGEgcHl0aG9uIGdvYmplY3QtaW50cm9zcGVjdGlvbgorY29uZmlndXJlX2Fy Z3M9Ii1EYl9sdG89ZmFsc2UiCitob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wg Z2xpYi1kZXZlbCB2YWxhIHB5dGhvbjMgZ29iamVjdC1pbnRyb3NwZWN0aW9uCiAgZXZvbHV0aW9u LWRhdGEtc2VydmVyLWRldmVsIgotbWFrZWRlcGVuZHM9InJlYWRsaW5lLWRldmVsIHRlbGVwYXRo eS1nbGliLWRldmVsIHplaXRnZWlzdC1kZXZlbAorbWFrZWRlcGVuZHM9InJlYWRsaW5lLWRldmVs IHRlbGVwYXRoeS1nbGliLWRldmVsIHplaXRnZWlzdC1kZXZlbCBweXRob24zLWRidXNtb2NrCiAg bGliZ2VlMDgtZGV2ZWwgZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIHRyYWNrZXItZGV2ZWwi CiBkZXBlbmRzPSJ6ZWl0Z2Vpc3QiCiBzaG9ydF9kZXNjPSJHT2JqZWN0IExpYnJhcnkgdG8gYWdn cmVnYXRlIHBlb3BsZSBpbnRvIG1ldGFjb250YWN0cyIKQEAgLTE1LDcgKzE1LDcgQEAgbWFpbnRh aW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwt Mi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMv Rm9sa3MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zZGYxYzY2M2I4MmZlMjEx YWVhZDJiMzFjYWUxZmM0MWQxMjRlODU0MzYzNzU3NjJmNjc0NWM0NWJhNDZhYTVkCitjaGVja3N1 bT1kNmU3NzhkYTYzN2QzYjMzZmQ5YTZiNDUxMTVlODE1N2Q4ODY4MjExZGMwOGI5NDNkMTA3NWI1 ZWI3MjgyYmI5CiAKIGZvbGtzLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5kcz0iJHttYWtlZGVw ZW5kc30gJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoKRnJvbSBlMzQyYTQy NWJmMjBjMmIxMzUwMmNhMTY4ZjZiYTk3ZjlkMjRkYWMwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIw MjAgMDg6NDE6NTYgKzA2MDAKU3ViamVjdDogW1BBVENIIDI4LzUzXSBmaWxlLXJvbGxlcjogdXBk YXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlIGIvc3JjcGtncy9maWxlLXJvbGxl ci90ZW1wbGF0ZQppbmRleCA1ZmI3NmQ5NzMwNy4uNmEwYzI4MGYwZDUgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9maWxlLXJvbGxlci90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZpbGUtcm9sbGVyJwog cGtnbmFtZT1maWxlLXJvbGxlcgotdmVyc2lvbj0zLjM2LjAKK3ZlcnNpb249My4zNi4yCiByZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdsaWIt ZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmlnIgpAQCAtMTIsNCArMTIsNCBAQCBtYWludGFpbmVyPSJF bm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRmlsZVJvbGxlciIK IGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWI5MTQ0ZGU4ZjUzNmY1ODNlYzI5ZDcw M2MyYzE3MGJmMmQwMGM2YzE2NmNkNWUzZjdlZmFiZGE1NTFmMTA0NzgKK2NoZWNrc3VtPTI2OGY3 ZmRhZDhkMmE3OGRmZWQ1ZTgyZWI4NzEwYmFkMzg5YzMxMWI3MjA2NjZkNmYwN2EwNGVkNTEwNTZi ZDIKCkZyb20gNjM4MDE5ZThmNTY3YzA1ZDliMjRhYzdjZDYyNzIyYzc1YzI0ZDE1ZCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogVHVlLCA1IE1heSAyMDIwIDA3OjU4OjAyICswNjAwClN1YmplY3Q6IFtQQVRDSCAyOS81M10g ZGNvbmYtZWRpdG9yOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2Rjb25mLWVkaXRv ci90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZSBi L3NyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlCmluZGV4IGRlMjUwYmJjOGE5Li4zYjhjZDhj YjcyZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdkY29uZi1lZGl0b3InCiBwa2duYW1lPWRjb25mLWVkaXRvcgotdmVyc2lvbj0zLjM2 LjAKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1h a2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxh IgpAQCAtMTAsNCArMTAsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczov L3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL2Rjb25mIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6Igot Y2hlY2tzdW09NzJlZWQwNTY3MDkxN2Y4ZTQzMjAwZTQwY2NjNmJlNjAyMTFmMGE4N2IwMTc1MzRl YWMxZmQ2YzcxNzNhMDY5MworY2hlY2tzdW09ZWRjZWM4ODY3ZjAxODU4OTEyNWYxNzc0MDc3NjBj NjQyYmJiYjUyZmU1MTIyZGFhYzU5MDUyMjNkNmIzZTFjNwoKRnJvbSAwZGRmZTIwNjIzNGQ5YTc1 ZmY0OWVkZTI5ODMzNzBkZjRiYjI2NDg5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTA6MjA6 NTYgKzA2MDAKU3ViamVjdDogW1BBVENIIDMwLzUzXSB0cmFja2VyOiB1cGRhdGUgdG8gMi4zLjQu CgotLS0KIHNyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv dHJhY2tlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQppbmRleCA4NzAyYmNm NWYzMy4uZTgxNGY3N2M3MTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ3RyYWNrZXInCiBwa2duYW1lPXRyYWNrZXIKLXZlcnNpb249Mi4zLjEKK3Zl cnNpb249Mi4zLjQKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9 ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGRvY3M9ZmFsc2UgLURmdHM9dHJ1ZSAtRGZ1bmN0aW9u YWxfdGVzdHM9ZmFsc2UKICAtRGpvdXJuYWw9dHJ1ZSAtRG1hbj10cnVlIC1EbmV0d29ya19tYW5h Z2VyPWVuYWJsZWQgLURzdGVtbWVyPWRpc2FibGVkCiAgLURzeXN0ZW1kX3VzZXJfc2VydmljZXM9 bm8iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCB2YWxhIgoraG9zdG1h a2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgZ2xpYi1kZXZlbCB2YWxhIgogbWFrZWRlcGVu ZHM9ImRidXMtZGV2ZWwgbGliZ2xpYi1kZXZlbCBpY3UtZGV2ZWwganNvbi1nbGliLWRldmVsCiAg bGlic291cC1kZXZlbCBsaWJ4bWwyLWRldmVsIHNxbGl0ZS1kZXZlbCBOZXR3b3JrTWFuYWdlci1k ZXZlbAogIGJhc2gtY29tcGxldGlvbiIKQEAgLTE2LDcgKzE2LDcgQEAgbWFpbnRhaW5lcj0iT3Jw aGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9saXZlLmdub21lLm9yZy9UcmFja2VyIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9L3RyYWNrZXIvJHt2ZXJzaW9uJS4qfS90cmFja2VyLSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09YjY3NDg3MjZlNDY1YWQyZjRkOTkxNTYwNjM0YjFmZDBkZjg4NDFmM2Q5 ODFiM2I4MzdjNDE2MmFiZWRmMDhhMQorY2hlY2tzdW09NTc3OTUyMjQ0YWI5NzdjNzhiMGI4OGUy ZjYzYzQxOTdlYWJhMTZlNGQ2NmJmZjY5MmI3ZjU4OTkzZTA2NTE2ZAogCiBpZiBbICIkQ1JPU1Nf QlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIgZGJ1cyIKCkZyb20gZDIzNDg5NWFm OTM4NGM0MDRjY2QxYTM0YTFlN2M2NjBmM2I5ZWJhMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIw IDEwOjQ4OjQ2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzMS81M10gc2ltcGxlLXNjYW46IHVwZGF0 ZSB0byAzLjM2LjIuMS4KCi0tLQogc3JjcGtncy9zaW1wbGUtc2Nhbi90ZW1wbGF0ZSB8IDcgKysr LS0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3NpbXBsZS1zY2FuL3RlbXBsYXRlIGIvc3JjcGtncy9zaW1wbGUt c2Nhbi90ZW1wbGF0ZQppbmRleCBkMGZjOTc5MDNlNS4uNWUwN2Q2M2YwOGQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvc2ltcGxlLXNjYW4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zaW1wbGUtc2Nhbi90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NpbXBsZS1zY2Fu JwogcGtnbmFtZT1zaW1wbGUtc2NhbgotX2dub21lX3ZlcnNpb249My4zNgotdmVyc2lvbj0zLjM2 LjEKK3ZlcnNpb249My4zNi4yLjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0 bWFrZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgdmFsYSIK QEAgLTExLDUgKzEwLDUgQEAgc2hvcnRfZGVzYz0iR1RLIFNpbXBsZSBzY2FubmluZyB1dGlsaXR5 IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3Jn L0dOT01FL3NpbXBsZS1zY2FuIgotZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHtfZ25vbWVfdmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3Vt PTc0MjdmMDkwMjI1M2UwMTM4Mzk0MTI0M2Y1NmVmOTg3NjA5OTQzYzUzN2Y5MmRkMTA0M2E1M2Vi NWVhYWY5MmUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUu Ki4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgorY2hlY2tzdW09YmI4Y2U1NzUwY2Qw NDA1ZTE0ZTRhYzhiMDlmNGE1ODdjMmZhM2E0MTg2MTRhZDQyNWE2Njk0Yzk4MWJiMDEyYgoKRnJv bSBkNTlmMDNlNzkwNGU0MjhjZmUxMWMwMGM3NzFlY2NjMTdhNjBiZmNlIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQs IDYgTWF5IDIwMjAgMTk6NTY6MTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDMyLzUzXSBvcmNhOiB1 cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL29yY2EvdGVtcGxhdGUgfCA0ICsrLS0KIDEg ZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9vcmNhL3RlbXBsYXRlIGIvc3JjcGtncy9vcmNhL3RlbXBsYXRlCmluZGV4IGY3 MDIwMmU2ZDc2Li44YTcwYzg0OWY2ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9vcmNhL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3Mvb3JjYS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ29yY2EnCiBwa2duYW1lPW9yY2EKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMu MzYuMgogcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJl CkBAIC0xMyw3ICsxMyw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v d2lraS5nbm9tZS5vcmcvUHJvamVjdHMvT3JjYSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8k e3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPWMxYWM2NDhiNmJlMzE0ODhjMjZmZjk1OTExNDI4Nzg2OWRmOWNlM2NhMjE5OTllNDBk ZWQ4Nzc0MWM5ODgzMWYKK2NoZWNrc3VtPWNmMDA1NWI3NmYyMTU5YzMzYzlkOWY3ZGViYjc2OTQz NWMyMDFiYmZhNmRjZjBmMDFmZGM1OGU5Mjk0N2JmNDMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBd OyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIHB5dGhvbjMtZ29iamVjdC1kZXZlbCIKCkZyb20g NDkwZmE0ODMwNTA3MzNkZmRmN2QwMDI0YWQwNjdlMjQ4YTYzOTUyZiBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1 IE1heSAyMDIwIDExOjAzOjI5ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzMy81M10gZ25vbWUtZ2V0 dGluZy1zdGFydGVkLWRvY3M6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUt Z2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9t ZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZ2V0dGluZy1z dGFydGVkLWRvY3MvdGVtcGxhdGUKaW5kZXggNWJlYzkzNDkwYmEuLmJlZDliNjk2MTYyIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcycKIHBr Z25hbWU9Z25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9u PTMuMzYuMgogcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCkBAIC0xMSw0ICsxMSw0IEBAIGxpY2Vuc2U9IkNDLUJZLVNBLTMuMCIKIGhvbWVwYWdlPSJo dHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3Mi CiAjY2hhbmdlbG9nPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtZ2V0dGlu Zy1zdGFydGVkLWRvY3MvcmF3L21hc3Rlci9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6Igot Y2hlY2tzdW09ZjcwY2UyY2EyM2FkNzg2MjE1ZjNjOTJlYzg1NzgzZTNhYWJlZDA3ZTRmNzg3MDBm YTI3ZjliMmNmNzZlMDNkYgorY2hlY2tzdW09MDQ5NGI4OTEzYTk0NmI2NDUwNTM2ZTEyMGMxNTRh YmQyOTIzOGViYmEyZjUyNzM0NTkyYjFmNjQ1ZTUyMWRjNgoKRnJvbSBkMGFiZmU4MzBiZjUwNDc4 ZWY5YmE2NTZjOGI0MWU2ZTJhYmQ3NjRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBTdW4sIDE5IEFwciAyMDIwIDE2OjUx OjQyICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNC81M10gZ25vbWUtcGFuZWw6IHVwZGF0ZSB0byAz LjM2LjEuCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgfCAzICsrLQogc3JjcGtn cy9nbm9tZS1wYW5lbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDUgaW5z ZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIv Y29tbW9uL3NobGlicwppbmRleCAyNjYyZjQ2NzdlOC4uNGUzNDM2NzcyZTcgMTAwNjQ0Ci0tLSBh L2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtNTY3LDcgKzU2Nyw4IEBAIGxp YnBhY2thZ2VraXQtZ2xpYjIuc28uMTggUGFja2FnZUtpdC0xLjEuMTJfMQogbGlicHNsLnNvLjUg bGlicHNsLTAuMjAuMl8xCiBsaWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4zNC4wXzEKIGxpYnNv dXAtZ25vbWUtMi40LnNvLjEgbGlic291cC1nbm9tZS0yLjM0LjBfMQotbGlicGFuZWwtYXBwbGV0 LnNvLjMgZ25vbWUtcGFuZWwtMy4zMC4wXzEKK2xpYmdub21lLXBhbmVsLnNvLjAgZ25vbWUtcGFu ZWwtMy4zNi4xXzEKK2xpYnBhbmVsLWFwcGxldC5zby4zIGdub21lLXBhbmVsLTMuMzYuMV8xCiBs aWJ1bmludW0uc28uNSBsaWJ1bmludW0tMi43XzEKIGxpYnVuaXF1ZS0zLjAuc28uMCBsaWJ1bmlx dWUtMi45MS40XzEKIGxpYndlYmtpdDJndGstNC4wLnNvLjM3IHdlYmtpdDJndGstMi42LjJfMQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUt cGFuZWwvdGVtcGxhdGUKaW5kZXggNzBmMjNiOGI1NTEuLjliMDBiZmFiNjU4IDEwMDY0NAotLS0g YS9zcmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtcGFuZWwv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1wYW5l bCcKIHBrZ25hbWU9Z25vbWUtcGFuZWwKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0zCit2ZXJz aW9uPTMuMzYuMQorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmln dXJlX2FyZ3M9ImF4X2N2X3pvbmVpbmZvX3R6ZGlyPS91c3Ivc2hhcmUvem9uZWluZm8iCiBob3N0 bWFrZWRlcGVuZHM9ImdldHRleHQtZGV2ZWwgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcg dHpkYXRhIGdldHRleHQiCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5k IDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBHRkRM LTEuMS1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtp Lmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVBhbmVsIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6Igot Y2hlY2tzdW09YTZiYzAyNTUyNTJlZWI0Yjk2NGJjYmU1NWZkNzkwOGI2OWY5MTRjMDYyYzVlYzhk ZmY1YWMwMjYyZDI5YjkwZAorY2hlY2tzdW09MWUyMWI3MjZkZDM5NzUyM2FlNzlkMjllYjUzOGJj YWUwOWUzNDI3ZTIzY2NkNjNmMjhlYjI1ZWYzNTUyYWJkMwogcGF0Y2hfYXJncz0iLU5wMSIKIAog Z25vbWUtcGFuZWwtZGV2ZWxfcGFja2FnZSgpIHsKCkZyb20gZDFkMDQ3MWU5NjRlOTU0NWY2NmU0 ZmJkZWI1MjEyYmMyZDUwNjQwNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxOSBBcHIgMjAyMCAxNzoyNjozNiAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggMzUvNTNdIG1ldGFjaXR5OiB1cGRhdGUgdG8gMy4zNi4xLgoK LS0tCiBjb21tb24vc2hsaWJzICAgICAgICAgICAgIHwgMSArCiBzcmNwa2dzL21ldGFjaXR5L3Rl bXBsYXRlIHwgNiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmlu ZGV4IDRlMzQzNjc3MmU3Li5hMGNkNzBiMDA0YiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicwor KysgYi9jb21tb24vc2hsaWJzCkBAIC01NjksNiArNTY5LDcgQEAgbGlic291cC0yLjQuc28uMSBs aWJzb3VwLTIuMzQuMF8xCiBsaWJzb3VwLWdub21lLTIuNC5zby4xIGxpYnNvdXAtZ25vbWUtMi4z NC4wXzEKIGxpYmdub21lLXBhbmVsLnNvLjAgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnBhbmVs LWFwcGxldC5zby4zIGdub21lLXBhbmVsLTMuMzYuMV8xCitsaWJtZXRhY2l0eS5zby4xIG1ldGFj aXR5LTMuMzYuMV8xCiBsaWJ1bmludW0uc28uNSBsaWJ1bmludW0tMi43XzEKIGxpYnVuaXF1ZS0z LjAuc28uMCBsaWJ1bmlxdWUtMi45MS40XzEKIGxpYndlYmtpdDJndGstNC4wLnNvLjM3IHdlYmtp dDJndGstMi42LjJfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUKaW5kZXggMWQ0MTkyNjc2NjguLmJiN2RmYzBiZmM5IDEw MDY0NAotLS0gYS9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbWV0YWNp dHkvdGVtcGxhdGUKQEAgLTEsOSArMSw5IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtZXRhY2l0 eScKIHBrZ25hbWU9bWV0YWNpdHkKLXZlcnNpb249My4zMC4xCit2ZXJzaW9uPTMuMzYuMQogcmV2 aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotaG9zdG1ha2VkZXBlbmRzPSJnZXR0 ZXh0LWRldmVsIGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmlnIHllbHAtdG9vbHMgemVuaXR5 IgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmln IHllbHAtdG9vbHMgemVuaXR5IgogbWFrZWRlcGVuZHM9ImdzZXR0aW5ncy1kZXNrdG9wLXNjaGVt YXMtZGV2ZWwgZ3RrKzMtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwKICBsaWJnbGliLWRldmVsIGxp Ymd0b3AtZGV2ZWwgbGliU00tZGV2ZWwgbGliWGNvbXBvc2l0ZS1kZXZlbCBsaWJYZGFtYWdlLWRl dmVsCiAgbGliWGZpeGVzLWRldmVsIGxpYlhpbmVyYW1hLWRldmVsIGxpYlhyZW5kZXItZGV2ZWwg bGliWDExLWRldmVsIHBhbmdvLWRldmVsCkBAIC0xNCw0ICsxNCw0IEBAIG1haW50YWluZXI9IkVu bm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxh dGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9tZXRhY2l0eSIK IGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTBmMTMxMWI3YWEzOGRlNzFjNjYwODBi ZDJiNzQ0ZGUyY2Q5NTgwYWZjYWVlOWM2MDk3YTdkM2Y1YzQyMTc5OGEKK2NoZWNrc3VtPTExZjA3 NjkzZTJiMjY2ODQwNzU5MDYzYTRiYzgwNzM0NjA3MGU4ZTdmZWM4ZjUzY2QwNzU3ZjY2NjJjMWIz MjMKCkZyb20gNWIyODIxMmYyMGZiOTg0MDg3MDE0YTg3OTU0MjIzYWE2MmQ1Y2RmYyBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogV2VkLCAyOSBBcHIgMjAyMCAwNTozMjoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzYvNTNd IGdub21lLW1lbnVzOiB1cGRhdGUgdG8gMy4zNi4wLgoKLS0tCiBzcmNwa2dzL2dub21lLW1lbnVz L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUKaW5kZXggMjkxMDIxMjljMzguLmU3ODdmYjhk ZTZiIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ25vbWUtbWVudXMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdnbm9tZS1tZW51cycKIHBrZ25hbWU9Z25vbWUtbWVudXMKLXZlcnNpb249My4zMi4wCi1y ZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0 YXRpYyIKQEAgLTEyLDcgKzEyLDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4wLW9yLWxh dGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1tZW51 cyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWM4NTBjNjRiMjA3NDI2NWZlNTll MDk5YTM0MGI4Njg5Y2YzZGQ0NjU4ZGM5ZmVkZGQyYWI1ZTk1ZjFhNzRiNzQKK2NoZWNrc3VtPWQ5 MzQ4ZjM4YmRlOTU2ZmMzMjc1M2IyOGMxY2RlMTljMTc1YmZkYmYxZjRkNWIwNjAwM2IzYWEwOTE1 M2JiMWYKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIi CgpGcm9tIGM2NDVkN2MyYmU4MDU5OWJmNTA4NDBiZDRlY2M5MTc1NzkyM2NkMTIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6 IEZyaSwgMSBNYXkgMjAyMCAwNjowMzo1NSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzcvNTNdIGdu b21lLWZsYXNoYmFjazogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQogLi4uL2dub21lLWZsYXNoYmFj ay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2ggIHwgMjggKysrKysrKysrKysrKysrKysrKwogc3Jj cGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUgICAgICAgICAgICAgIHwgMjYgKysrKysrKysr KystLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNDUgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMo LSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2Nv bXBpei0wLjgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRj aGVzL2NvbXBpei0wLjgucGF0Y2ggYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2Nv bXBpei0wLjgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmU4 YTJhNWM4N2ZkCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svcGF0 Y2hlcy9jb21waXotMC44LnBhdGNoCkBAIC0wLDAgKzEsMjggQEAKK2RpZmYgLS1naXQgY29uZmln dXJlIGNvbmZpZ3VyZQoraW5kZXggMjZjZWE1MS4uZDI0NjNjYyAxMDA3NTUKKy0tLSBjb25maWd1 cmUKKysrKyBjb25maWd1cmUKK0BAIC0yMDg0Miw4ICsyMDg0Miw4IEBAIGZpCisgaWYgdGVzdCAi eCR3aXRoX2NvbXBpel9zZXNzaW9uIiAhPSAieG5vIjsgdGhlbiA6CisgCisgICBpZiB0ZXN0IC1u ICIkUEtHX0NPTkZJRyIgJiYgXAorLSAgICB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVu by0kTElORU5PfTogXCRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzIFwibGliY29t cGl6Y29uZmlnID49IDAuOS4xNC4wXCIiOyB9ID4mNQorLSAgKCRQS0dfQ09ORklHIC0tZXhpc3Rz IC0tcHJpbnQtZXJyb3JzICJsaWJjb21waXpjb25maWcgPj0gMC45LjE0LjAiKSAyPiY1CisrICAg IHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05GSUcg LS1leGlzdHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjBcIiI7 IH0gPiY1CisrICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNvbXBp emNvbmZpZyA+PSAwLjguMTYuMCIpIDI+JjUKKyAgIGFjX3N0YXR1cz0kPworICAgJGFzX2VjaG8g IiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgICB0 ZXN0ICRhY19zdGF0dXMgPSAwOyB9OyB0aGVuCitkaWZmIC0tZ2l0IGNvbmZpZ3VyZS5hYyBjb25m aWd1cmUuYWMKK2luZGV4IGI2ZTE0NzAuLmQyOGE3MGIgMTAwNjQ0CistLS0gY29uZmlndXJlLmFj CisrKysgY29uZmlndXJlLmFjCitAQCAtMzQwLDcgKzM0MCw3IEBAIEFDX0FSR19XSVRIKFtjb21w aXotc2Vzc2lvbl0sCisgICAgICAgICAgICAgW3dpdGhfY29tcGl6X3Nlc3Npb249IiR3aXRodmFs Il0sIFt3aXRoX2NvbXBpel9zZXNzaW9uPSJhdXRvIl0pCisgCisgQVNfSUYoW3Rlc3QgIngkd2l0 aF9jb21waXpfc2Vzc2lvbiIgIT0gInhubyJdLCBbCistICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJj b21waXpjb25maWcgPj0gMC45LjE0LjBdLAorKyAgUEtHX0NIRUNLX0VYSVNUUyhbbGliY29tcGl6 Y29uZmlnID49IDAuOC4xNi4wXSwKKyAgICAgICAgICAgICAgICAgICAgW2ZvdW5kX2NvbXBpej0i eWVzIl0sIFtmb3VuZF9jb21waXo9Im5vIl0pCisgCisgICBBU19JRihbdGVzdCAieCRmb3VuZF9j b21waXoiID0gInh5ZXMiXSwgWwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2sv dGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZQppbmRleCBkMzIxMjBj YWI2Zi4uYTI5ZmYwMTY0OWUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlCkBAIC0xLDIwICsx LDI4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1mbGFzaGJhY2snCiBwa2duYW1lPWdu b21lLWZsYXNoYmFjawotdmVyc2lvbj0zLjM0LjIKK3ZlcnNpb249My4zNi4zCiByZXZpc2lvbj0x CiBidWlsZF9oZWxwZXI9Z2lyCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCi1jb25maWd1cmVf YXJncz0iLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1taW5pbXVtIgotaG9zdG1ha2VkZXBlbmRz PSJwa2ctY29uZmlnIGF1dG9tYWtlIGdsaWItZGV2ZWwgZ2V0dGV4dCIKLW1ha2VkZXBlbmRzPSJn dGsrMy1kZXZlbCBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzLWRldmVsCi0gbGliZ2xpYi1kZXZl bCBnZGstcGl4YnVmLWRldmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsIHBvbGtpdC1kZXZlbAot IHB1bHNlYXVkaW8tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxpYlgxMS1k ZXZlbCBwYW5nby1kZXZlbAotIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVs IGdub21lLWRlc2t0b3AtZGV2ZWwiCitjb25maWd1cmVfYXJncz0iLS13aXRoLWNvbXBpei1zZXNz aW9uIC0tZW5hYmxlLWNvbXBpbGUtd2FybmluZ3M9bWluaW11bSIKK2hvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyBhdXRvbWFrZSBnbGliLWRldmVsIGdldHRleHQgbGlidG9vbCIKK21ha2VkZXBl bmRzPSJndGsrMy1kZXZlbCBwYW0tZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZl bCBlbG9naW5kLWRldmVsCisgZ2RtLWRldmVsIGxpYmNvbXBpemNvbmZpZy1kZXZlbCBsaWJnbGli LWRldmVsIGdkay1waXhidWYtZGV2ZWwgdXBvd2VyLWRldmVsIGlidXMtZGV2ZWwKKyBwb2xraXQt ZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJ4Y2ItZGV2ZWwgbGli WDExLWRldmVsIHBhbmdvLWRldmVsCisgbGlieGtiZmlsZS1kZXZlbCBnbm9tZS1ibHVldG9vdGgt ZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBnbm9tZS1wYW5lbC1kZXZlbCIKIGRlcGVuZHM9Imdu b21lLWJsdWV0b290aCBnbm9tZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRhZW1vbgotIGdub21l LXBhbmVsIGdub21lLXRoZW1lcy1zdGFuZGFyZCBtZXRhY2l0eSIKKyBnbm9tZS1wYW5lbCBnbm9t ZS10aGVtZXMtZXh0cmEgbWV0YWNpdHkiCiBzaG9ydF9kZXNjPSJHTk9NRSAzIHNlc3Npb24gd2l0 aCBzaW1pbGFyIHVzZXIgZXhwZXJpZW5jZSB0byB0aGUgR05PTUUgMi54IHNlcmllcyIKIG1haW50 YWluZXI9InNoaXpvbmljIDxyZWFsdGlhekBnbWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dub21l Rmxhc2hiYWNrIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09M2JlNjUzODhjZDJj OGYzOTc0MWJjYzA1ZGE4N2VmNDAwMzUxODNhOWEzOTUwMmQ2NzY5NjI0MmMyYWViNDY5YworY2hl Y2tzdW09MmRiYTllYTQwZjJkYTgxYzIyOTU0YThjY2MyOWY4ZjFmYTRjYTgzOTVhNmJiNTUyNTA2 NjM1ODMyNzUxYzFhNworCitwcmVfY29uZmlndXJlKCkgeworCWF1dG9yZWNvbmYgLXZmaQorfQor Citwb3N0X2luc3RhbGwoKSB7CisJdnNlZCAtaSAtZSAicy8gLS1zeXN0ZW1kLy9nIiAke0RFU1RE SVJ9L3Vzci9saWJleGVjL2dub21lLWZsYXNoYmFjay17Y29tcGl6LG1ldGFjaXR5fQorfQoKRnJv bSA4ZmI3YWMxYWQ2NWJhYzY4MmVkZTc0MzRhMWQ0OTUwNjViN2VjZmE4IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQs IDI5IEFwciAyMDIwIDA2OjU5OjQwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzOC81M10gZ3JhcGhl bmU6IHVwZGF0ZSB0byAxLjEwLjAuCgotLS0KIHNyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgfCAx MCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgYi9zcmNwa2dzL2dy YXBoZW5lL3RlbXBsYXRlCmluZGV4IGYyZmU4MWEzZjQ3Li5jYjczODVmZWRiNyAxMDA2NDQKLS0t IGEvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBs YXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdncmFwaGVuZScKIHBr Z25hbWU9Z3JhcGhlbmUKLXZlcnNpb249MS44LjIKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4xMC4w CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1jb25m aWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxzZSAtRGJlbmNobWFya3M9ZmFsc2UKK2NvbmZpZ3VyZV9h cmdzPSItRHRlc3RzPWZhbHNlIC1EYXJtX25lb249ZmFsc2UKICAtRGludHJvc3BlY3Rpb249JCh2 b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1h a2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIgpAQCAtMTMsMTMgKzEzLDEzIEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2ViYXNzaS9ncmFwaGVuZSIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS9ncmFwaGVuZS8ke3ZlcnNpb24lLip9L2dyYXBoZW5lLSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09YjNmY2YyMDk5NmU1N2IxZjRkZjM5NDFjYWFjMTBmMTQzYmIyOTg5MGE0 MmY3YTY1NDA3Y2QxOTI3MWZjODlmNworY2hlY2tzdW09NDA2ZDk3ZjUxZGQ0Y2E2MWU5MWY4NDY2 NmEwMGMzZTk3NmQzZTY2N2NkMjQ4Yjc2ZDkyZmRiMzVjZTg3NjQ5OQogCiBidWlsZF9vcHRpb25z PSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKIAogcG9zdF9pbnN0YWxsKCkgewot CXZsaWNlbnNlIExJQ0VOU0UKKwl2bGljZW5zZSBMSUNFTlNFLnR4dCBMSUNFTlNFCiB9CiAKIGdy YXBoZW5lLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIDZkZTE4NWNlY2MyMWQyYzEwZmVjNjUxMTFm MjRiZDZhZmQwYTlmMmYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMTE6NTM6MjkgKzA2MDAK U3ViamVjdDogW1BBVENIIDM5LzUzXSBtdXR0ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIGNv bW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrKy0t LS0tLQogLi4uL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoICAgICAgIHwgMTEg LS0tLS0tLS0KIHNyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICB8 IDI4ICsrKysrKysrKy0tLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygr KSwgMzQgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXR0ZXIvcGF0 Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKCmRpZmYgLS1naXQgYS9jb21tb24vc2hs aWJzIGIvY29tbW9uL3NobGlicwppbmRleCBhMGNkNzBiMDA0Yi4uZDAxMDJiNjM4YTMgMTAwNjQ0 Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtMjk0NCwxNSArMjk0 NCwxNSBAQCBsaWJkZWNvcmF0aW9uLnNvLjAgY29tcGl6LWNvcmUtMC44LjE0XzEKIGxpYmNvbXBp emNvbmZpZy5zby4wIGxpYmNvbXBpemNvbmZpZy0wLjguMTRfMQogbGliZW1lcmFsZGVuZ2luZS5z by4wIGVtZXJhbGQtMC44LjE0XzEKIGxpYmhhbmd1bC5zby4xIGxpYmhhbmd1bC0wLjEuMF8xCi1s aWJtdXR0ZXItNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNsdXR0ZXItNS5zbyBt dXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEK LWxpYm11dHRlci1jb2dsLXBhdGgtNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2ds LXBhdGgtNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtNS5zbyBtdXR0ZXIt My4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRl ci1jb2dsLXBhbmdvLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1wYW5nby01 LnNvLjAgbXV0dGVyLTMuMzQuMV8xCitsaWJtdXR0ZXItNi5zby4wIG11dHRlci0zLjM2LjFfMQor bGlibXV0dGVyLWNsdXR0ZXItNi5zbyBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jbHV0dGVy LTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLXBhdGgtNi5zbyBtdXR0ZXIt My4zNi4xXzEKK2xpYm11dHRlci1jb2dsLXBhdGgtNi5zby4wIG11dHRlci0zLjM2LjFfMQorbGli bXV0dGVyLWNvZ2wtNi5zbyBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLTYuc28uMCBt dXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLXBhbmdvLTYuc28gbXV0dGVyLTMuMzYuMV8x CitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvLjAgbXV0dGVyLTMuMzYuMV8xCiBsaWJnZW9jbHVl LTIuc28uMCBnZW9jbHVlMi0yLjQuNF8xCiBsaWJnZXB1Yi5zby4wIGxpYmdlcHViLTAuNF8xCiBs aWJzbG9weS5zby43LjUgc2xvcC03LjVfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvcGF0 Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2ggYi9zcmNwa2dzL211dHRlci9wYXRjaGVz L2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggZDkwOTg4ODg3YzMuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMv Zml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBA QAotLS0tIGNvZ2wvY29nbC9tZXNvbi5idWlsZAkyMDE5LTEwLTA4IDE5OjE1OjEwLjAwMDAwMDAw MCArMDIwMAotKysrIGNvZ2wvY29nbC9tZXNvbi5idWlsZAkyMDE5LTEyLTE2IDE1OjQ1OjQ0LjAz NzY0MDU0OCArMDEwMAotQEAgLTQ4LDcgKzQ4LDcgQEAKLSBidWlsdF9oZWFkZXJzICs9IFtjb2ds X2dsX2hlYWRlcl9oXQotIAotIGlmIGhhdmVfZWdsCi0tICBjb2dsX2VnbF9pbmNsdWRlc19zdHJp bmcgPSAnI2luY2x1ZGUgPEVHTC9lZ2wuaD5cbiNpbmNsdWRlIDxFR0wvZWdsZXh0Lmg+JwotKyAg Y29nbF9lZ2xfaW5jbHVkZXNfc3RyaW5nID0gJyNpbmNsdWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVk ZSA8RUdML2VnbGV4dC5oPlxuI2luY2x1ZGUgPEVHTC9lZ2xtZXNhZXh0Lmg+JwotIGVsc2UKLSAg IGNvZ2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcnCi0gZW5kaWYKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbXV0dGVyL3RlbXBsYXRlIGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKaW5kZXggNGUwYmQz MmI2N2QuLjdjMTQ4MjlhZjllIDEwMDY0NAotLS0gYS9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQpAQCAtMSwzNCArMSwzNCBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnbXV0dGVyJwogcGtnbmFtZT1tdXR0ZXIKLXZlcnNpb249My4zNC4xCi1yZXZp c2lvbj0yCit2ZXJzaW9uPTMuMzYuMgorcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBi dWlsZF9zdHlsZT1tZXNvbgotY29uZmlndXJlX2FyZ3M9Ii1EZWdsX2RldmljZT10cnVlIC1EdWRl dj10cnVlIC1EbmF0aXZlX2JhY2tlbmQ9dHJ1ZQotIC1EcHJvZmlsZXI9ZmFsc2UgLURpbnRyb3Nw ZWN0aW9uPXRydWUgLUR4d2F5bGFuZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kIgorY29uZmlndXJl X2FyZ3M9Ii1EZWdsX2RldmljZT10cnVlIC1EdWRldj10cnVlIC1EbmF0aXZlX2JhY2tlbmQ9dHJ1 ZSAtRHByb2ZpbGVyPWZhbHNlCisgLURpbnRyb3NwZWN0aW9uPXRydWUgLUR4d2F5bGFuZF9pbml0 ZmQ9ZGlzYWJsZWQgLUR4d2F5bGFuZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kIgogaG9zdG1ha2Vk ZXBlbmRzPSJnZXR0ZXh0IGdsaWItZGV2ZWwgcGtnLWNvbmZpZyB6ZW5pdHkgd2F5bGFuZC1kZXZl bCB4b3JnLXNlcnZlciIKLW1ha2VkZXBlbmRzPSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25v bWUtZGVza3RvcC1kZXZlbCBqc29uLWdsaWItZGV2ZWwKLSBsaWJnbGliLWRldmVsIGxpYlNNLWRl dmVsIGxpYlh0c3QtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliaW5wdXQtZGV2ZWwKLSBNZXNh TGliLWRldmVsIHBpcGV3aXJlLWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsIHdheWxh bmQtcHJvdG9jb2xzCi0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIgorbWFrZWRlcGVuZHM9 ImVsb2dpbmQtZGV2ZWwgZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdyYXBoZW5lLWRl dmVsCisganNvbi1nbGliLWRldmVsIGxpYmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1k ZXZlbCBsaWJjYW5iZXJyYS1kZXZlbAorIGxpYmlucHV0LWRldmVsIE1lc2FMaWItZGV2ZWwgcGlw ZXdpcmUtZGV2ZWwgc3RhcnR1cC1ub3RpZmljYXRpb24tZGV2ZWwKKyB3YXlsYW5kLXByb3RvY29s cyBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRp bHMgemVuaXR5Igogc2hvcnRfZGVzYz0iTGlnaHR3ZWlnaHQgR1RLKzMgd2luZG93IG1hbmFnZXIi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1By b2plY3RzL011dHRlci8iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iYTE4MjZj Zjg4YmRiODFlNjM5NDNjYWMwMTRhOGU4YmNmMzVlYzE3OGM1MzI2NDQwMWY5YzcyZmRlYWI3NThl Ci1zaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNS5zbyBsaWJtdXR0ZXItY29nbC01 LnNvCi0gbGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTUuc28i CitjaGVja3N1bT03NWIzNzY0ZWIwNTlmYzkzNWE1NDUyM2E2MmJlYzFiZWRiOTM1Mjg0MDQ2YjZk YWE1MDg2OWIxOTVhZGRkYWY0CitzaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNi5z byBsaWJtdXR0ZXItY29nbC02LnNvCisgbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBsaWJtdXR0 ZXItY29nbC1wYXRoLTYuc28iCiAKIG11dHRlci1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9 ImdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbCBsaWJY MTEtZGV2ZWwKLQkgbGliWHRzdC1kZXZlbCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIK KwlkZXBlbmRzPSJnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIGdyYXBoZW5lLWRldmVsIGd0aysz LWRldmVsIGNsdXR0ZXItZGV2ZWwKKwkgbGliWDExLWRldmVsIGxpYlh0c3QtZGV2ZWwgbXV0dGVy LSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZp bGVzIgogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSB1c3IvaW5jbHVkZQogCQl2bW92ZSB1c3Iv bGliL3BrZ2NvbmZpZwotCQl2bW92ZSAidXNyL2xpYi9tdXR0ZXItNS8qLmdpciIKKwkJdm1vdmUg InVzci9saWIvbXV0dGVyLTYvKi5naXIiCiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJfQogfQoK RnJvbSBmZTA1MjJhMTJlYWI5ODg1OTRmZDA1NzQ0MTIzODg4Y2QwODkwYTQ3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBN b24sIDQgTWF5IDIwMjAgMTQ6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENIIDQwLzUzXSBnbm9t ZS1zaGVsbDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1w bGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUgYi9zcmNw a2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCmluZGV4IDk2YzViODBhMTk0Li5mNTljNDZhNTYxZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2du b21lLXNoZWxsL3RlbXBsYXRlCkBAIC0xLDExICsxLDExIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdnbm9tZS1zaGVsbCcKIHBrZ25hbWU9Z25vbWUtc2hlbGwKLXZlcnNpb249My4zNC4xCit2ZXJz aW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1n aXIKIGNvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9Imdv YmplY3QtaW50cm9zcGVjdGlvbiBndGstZG9jIGxpYnhzbHQgcGtnLWNvbmZpZyBweXRob24zIHNh c3NjCitob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ29iamVjdC1pbnRyb3NwZWN0aW9uIGd0ay1k b2MgbGlieHNsdCBwa2ctY29uZmlnIHB5dGhvbjMgc2Fzc2MKICBhc2NpaWRvYyBwZXJsIGdsaWIt ZGV2ZWwgbXV0dGVyLWRldmVsIgogbWFrZWRlcGVuZHM9ImF0LXNwaTItYXRrIGNhcmlib3UtZGV2 ZWwgZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIGZvbGtzLWRldmVsCiAgZ2NyLWRldmVsIGdq cy1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtY29udHJvbC1jZW50ZXItZGV2ZWwg Z25vbWUtZGVza3RvcC1kZXZlbApAQCAtMjEsNCArMjEsNCBAQCBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25vbWVT aGVsbCIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01F L2dub21lLXNoZWxsL2dub21lLTMtMzAvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8k e3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPWNjZDg2NTU5YjljODk3YzIxOWQyZDJlYmZkYjg0MTNlZmE0YzFiZWU4NDY0MjdjNzUw Y2I4YTMwMWIzZjZkMWUKK2NoZWNrc3VtPTNiMTI5YjJhMWYxZjE2NTRhMTAxMDk4ZWE4YjkxYTcz YTgzNmFhZDdkMTY2ZjUyZGQ0NmIxYzYwMzdlYzE3NTMKCkZyb20gZmUxNDhkM2I0MTI3ZGY0OWU1 N2RjMGE1M2Q2MjFlNzcxOGI1YTE2OSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCA0IE1heSAyMDIwIDE0OjM4OjMy ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0MS81M10gZ25vbWUtc2hlbGwtZXh0ZW5zaW9uczogdXBk YXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBs YXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBs YXRlIGIvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCmluZGV4IDk3MTY4 YjQwZjY2Li5lMWRkNDNiYjE1MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRl bnNpb25zL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1w bGF0ZQpAQCAtMSwxNSArMSwxNSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2hlbGwt ZXh0ZW5zaW9ucycKIHBrZ25hbWU9Z25vbWUtc2hlbGwtZXh0ZW5zaW9ucwotdmVyc2lvbj0zLjM0 LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxl PW1lc29uCiBjb25maWd1cmVfYXJncz0iLURleHRlbnNpb25fc2V0PWFsbCIKLWhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIgog ZGVwZW5kcz0iZ25vbWUtc2hlbGw+PSR7dmVyc2lvbn0gbmF1dGlsdXMgdW56aXAiCiBzaG9ydF9k ZXNjPSJFeHRlbnNpb25zIGZvciBHTk9NRSBzaGVsbCwgaW5jbHVkaW5nIGNsYXNzaWMgbW9kZSIK IG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNl PSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJv amVjdHMvR25vbWVTaGVsbC9FeHRlbnNpb25zIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09YjBhZDUxMTQzYjFiZjQwZGVmNGExMGY4ZmQwYWIwZmZiNDcyMTgzMDQ4MDA3OTRlNjJj YWRkMjlkMGFjYzc1YgorY2hlY2tzdW09OTc4MjAyZGU1MTVjZGIwM2E1ODg1ODU5YzUzODM2NmJj YThmZDc4NzYyY2U5OGIxNzJhYzJjMDEyNmY4MDAzZgoKRnJvbSA0MjBjYjdmMzNkNDNlYTk1OWYz Yzg2OWFmMWZhMjAwZWNkZTdmOGIzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDcgTWF5IDIwMjAgMTI6Mjc6NTUg KzA2MDAKU3ViamVjdDogW1BBVENIIDQyLzUzXSBnZG06IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0K IHNyY3BrZ3MvZ2RtL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5z ZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dkbS90ZW1w bGF0ZSBiL3NyY3BrZ3MvZ2RtL3RlbXBsYXRlCmluZGV4IGJiNWI0ODY5MmQ0Li4wOTljNGNjOWQ0 ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nZG0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nZG0vdGVt cGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dkbScKIHBrZ25h bWU9Z2RtCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxk X2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9 IiQodm9wdF9lbmFibGUgZ2lyIGludHJvc3BlY3Rpb24pCi0gLS1kaXNhYmxlLXNjaGVtYXMtY29t cGlsZSAtLWRpc2FibGUtc3RhdGljIC0td2l0aC1kZWZhdWx0LXBhbS1jb25maWc9YXJjaAorIC0t ZGlzYWJsZS1zdGF0aWMgLS13aXRoLWRlZmF1bHQtcGFtLWNvbmZpZz1hcmNoCiAgLS13aXRoLWF0 LXNwaS1yZWdpc3RyeWQtZGlyZWN0b3J5PS91c3IvbGliZXhlYyAtLXdpdGhvdXQtdGNwLXdyYXBw ZXJzCiAgLS13aXRoLXNjcmVlbnNob3QtZGlyPS92YXIvbGliL2dkbS9ncmVldGVyIC0tc2JpbmRp cj0vdXNyL2JpbiAtLXdpdGhvdXQtcGx5bW91dGgKICAtLXdpdGgteGF1dGgtZGlyPS9ydW4vZ2Rt IC0td2l0aC1waWQtZmlsZT0vcnVuL2dkbS9nZG0ucGlkCkBAIC0xNCwxNCArMTQsMTQgQEAgaG9z dG1ha2VkZXBlbmRzPSJkY29uZiBnZXR0ZXh0IGl0c3Rvb2wgcGtnLWNvbmZpZyIKIG1ha2VkZXBl bmRzPSJhY2NvdW50c3NlcnZpY2UtZGV2ZWwgZWxvZ2luZC1kZXZlbCBnZXR0ZXh0LWRldmVsIGds aWItZGV2ZWwKICBpc28tY29kZXMgbGliU00tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbnNzLWRl dmVsIHBhbS1kZXZlbCB1cG93ZXItZGV2ZWwiCiBkZXBlbmRzPSJnbm9tZS1zZXR0aW5ncy1kYWVt b24gZ25vbWUtc2hlbGwgeG9yZy1zZXJ2ZXIgeG9yZy1zZXJ2ZXIteHdheWxhbmQKLSB4cmRiIgor IHhyZGIgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyIKIGNoZWNrZGVwZW5kcz0iY2hlY2stZGV2 ZWwiCiBzaG9ydF9kZXNjPSJHTk9NRSBEaXNwbGF5IE1hbmFnZXIiCiBtYWludGFpbmVyPSJFbm5v IEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dETSIKIGRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWU4NWRmNjU3YWE4ZDkzNjFhZjRmYjEyMjAxNGQ4 ZjEyM2E5M2JmZTQ1YTc2NjJmYmEyYjM3M2Q4MzlkYmQ4ZDMKK2NoZWNrc3VtPTNmNTYxYzEwYWUy ZTU5NDJiMDMwMjZmMDJjMGFhN2Q4NzEyZTM4MjcwOGIxN2EwOTcwODc0ZGY4MTc1YjgzYTgKIAog Y29uZl9maWxlcz0iCiAJL2V0Yy9nZG0vY3VzdG9tLmNvbmYKCkZyb20gMzgwNWI4ZWQyYmE0Y2Q1 MmQ2YmExOWVkMzg2YTc3NTBhMWRlZTZiYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDE4OjI0 OjAyICswNTMwClN1YmplY3Q6IFtQQVRDSCA0My81M10gYnVkZ2llLWRlc2t0b3A6IHJlYnVpbGQg YWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIC4uLi9wYXRjaGVzL011dHRl ci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaCB8IDEyNzEzICsrKysrKysrKysrKysrKysKIHNy Y3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUgICAgICAgICAgICAgICB8ICAgICA5ICstCiAy IGZpbGVzIGNoYW5nZWQsIDEyNzE4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1 LjkwLXN1cHBvcnQtMTkxOC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0 b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2ggYi9zcmNwa2dzL2J1 ZGdpZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5iZmYxYmFkMDM5ZgotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45 MC1zdXBwb3J0LTE5MTgucGF0Y2gKQEAgLTAsMCArMSwxMjcxMyBAQAorRnJvbSA5ZDA5YTFiMTVi YmY2Njc4MGNjODllZmYzYzRiODRlNjY2YjBiZmRhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor RnJvbTogRGF2aWQgTW9oYW1tZWQgPGZvc3NmcmVlZG9tQHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNv bT4KK0RhdGU6IFR1ZSwgMTggRmViIDIwMjAgMDY6NDA6MTIgKzAwMDAKK1N1YmplY3Q6IFtQQVRD SF0gTXV0dGVyIDMuMzYgc3VwcG9ydCAoIzE5MTgpCisKKyogQWRkIG11dHRlciAzLjM1LjIgc3Vw cG9ydAorCisqIE11dHRlciBjb21waWxlciBmbGFncyBuZWVkcyB0byBiZSBzcGVjaWZpZWQgYmVm b3JlIGRlcGVuZGVuY3kgY2hlY2tzCisKKyogUmVnZW5lcmF0ZSB2YXBpIGZvciAzLjM1LjkwCisK K09yaWdpbjogaHR0cHM6Ly9naXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3Av Y29tbWl0cy85ZDA5YTFiMTViCistLS0KKyBzcmMvd20vbWVzb24uYnVpbGQgICAgICAgICAgICAg ICAgfCAgIDEyICstCisgc3JjL3dtL3dtLnZhbGEgICAgICAgICAgICAgICAgICAgIHwgICAxNiAr LQorIHZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhICAgICAgICAgICB8ICAyMDQgKworIHZhcGkvQ29n bC02Lm1ldGFkYXRhICAgICAgICAgICAgICB8ICAgMjcgKworIHZhcGkvTWV0YS02Lm1ldGFkYXRh ICAgICAgICAgICAgICB8ICAgODAgKworIHZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSAg ICB8ICA2OTEgKysrCisgdmFwaS9saWJtdXR0ZXItNi5kZXBzICAgICAgICAgICAgIHwgICAgNiAr CisgdmFwaS9saWJtdXR0ZXItNi52YXBpICAgICAgICAgICAgIHwgMTQ3NSArKysrKworIHZhcGkv bXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYSB8ICAxNDcgKworIHZhcGkvbXV0dGVyLWNsdXR0 ZXItNi5kZXBzICAgICAgICB8ICAgIDQgKworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpICAg ICAgICB8IDg2ODcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyB2YXBpL211dHRlci1j b2dsLTYtY3VzdG9tLnZhbGEgICAgfCAgMTI1ICsKKyB2YXBpL211dHRlci1jb2dsLTYuZGVwcyAg ICAgICAgICAgfCAgICAxICsKKyB2YXBpL211dHRlci1jb2dsLTYudmFwaSAgICAgICAgICAgfCAx MDc3ICsrKysKKyAxNCBmaWxlcyBjaGFuZ2VkLCAxMjU0OSBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL0NsdXR0ZXItNi5tZXRhZGF0YQorIGNy ZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL0NvZ2wtNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0 NCB2YXBpL01ldGEtNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL2dyYXBoZW5l LWdvYmplY3QtMS4wLnZhcGkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9saWJtdXR0ZXItNi5k ZXBzCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbGlibXV0dGVyLTYudmFwaQorIGNyZWF0ZSBt b2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEKKyBjcmVhdGUgbW9k ZSAxMDA2NDQgdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQg dmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0 ZXItY29nbC02LWN1c3RvbS52YWxhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNv Z2wtNi5kZXBzCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wtNi52YXBpCisK K2RpZmYgLS1naXQgYS9zcmMvd20vbWVzb24uYnVpbGQgYi9zcmMvd20vbWVzb24uYnVpbGQKK2lu ZGV4IGUzOWI4Njc4Li40YmNjMGY5ZSAxMDA2NDQKKy0tLSBhL3NyYy93bS9tZXNvbi5idWlsZAor KysrIGIvc3JjL3dtL21lc29uLmJ1aWxkCitAQCAtMjUsMTEgKzI1LDE5IEBAIGlmIG5vdCBkZXBf bXV0dGVyLmZvdW5kKCkKKyAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXItNCBB QkkgZnJvbSBHTk9NRSAzLjMyJykKKyAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xpYm11dHRlci00 JworICAgICBlbHNlCistICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGlibXV0dGVy LTUnLCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNpb24pCisrICAgICAgICBkZXBfbXV0dGVy ID0gZGVwZW5kZW5jeSgnbGlibXV0dGVyLTUnLCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNp b24sIHJlcXVpcmVkOiBmYWxzZSkKKysgICAgICAgIGJ1ZGdpZV93bV9zdGF0dXNfdmFsYV9hcmdz ICs9IFsnLUQnLCAnSEFWRV9NVVRURVJfNSddCisgICAgICAgICBpZiBkZXBfbXV0dGVyLmZvdW5k KCkKKyAgICAgICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVyLTUgQUJJIGZyb20g R05PTUUgMy4zNCcpCisgICAgICAgICAgICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVyLTUnCist ICAgICAgICAgICAgYnVkZ2llX3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01V VFRFUl81J10KKysgICAgICAgIGVsc2UKKysgICAgICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5k ZW5jeSgnbGlibXV0dGVyLTYnLCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNpb24pCisrICAg ICAgICAgICAgYnVkZ2llX3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRF Ul82J10KKysgICAgICAgICAgICBpZiBkZXBfbXV0dGVyLmZvdW5kKCkKKysgICAgICAgICAgICAg ICAgZGVwX2dyYXBoZW5lID0gZGVwZW5kZW5jeSgnZ3JhcGhlbmUtZ29iamVjdC0xLjAnLCB2ZXJz aW9uOiAnPj0gMS4xMCcpCisrICAgICAgICAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJt dXR0ZXItNiBBQkkgZnJvbSBHTk9NRSAzLjM2JykKKysgICAgICAgICAgICAgICAgdmFwaV9tdXR0 ZXIgPSAnbGlibXV0dGVyLTYnCisrICAgICAgICAgICAgZW5kaWYKKyAgICAgICAgIGVuZGlmCisg ICAgIGVuZGlmCisgZW5kaWYKK2RpZmYgLS1naXQgYS9zcmMvd20vd20udmFsYSBiL3NyYy93bS93 bS52YWxhCitpbmRleCBmZWU4OTQ0My4uYmI0NmNkMDYgMTAwNjQ0CistLS0gYS9zcmMvd20vd20u dmFsYQorKysrIGIvc3JjL3dtL3dtLnZhbGEKK0BAIC0xMzcsOCArMTM3LDEzIEBAIHB1YmxpYyBj bGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgIHB1YmxpYyBzdGF0aWMgc3RyaW5nW10/ IG9sZF9hcmdzOworICAgICBwdWJsaWMgc3RhdGljIGJvb2wgd2F5bGFuZCA9IGZhbHNlOworIAor KyNpZiBIQVZFX01VVFRFUl82CisrICAgIHN0YXRpYyBHcmFwaGVuZS5Qb2ludCBQVl9DRU5URVI7 CisrICAgIHN0YXRpYyBHcmFwaGVuZS5Qb2ludCBQVl9OT1JNOworKyNlbHNlCisgICAgIHN0YXRp YyBDbHV0dGVyLlBvaW50IFBWX0NFTlRFUjsKKyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZf Tk9STTsKKysjZW5kaWYKKyAKKyAgICAgcHJpdmF0ZSBNZXRhLkJhY2tncm91bmRHcm91cD8gYmFj a2dyb3VuZF9ncm91cDsKKyAKK0BAIC0xNzEsMTAgKzE3NiwxNSBAQCBwdWJsaWMgY2xhc3MgQnVk Z2llV00gOiBNZXRhLlBsdWdpbgorICAgICAgICAgICAgIGxpY2Vuc2UgPSAiR1BMLTIuMCIsCisg ICAgICAgICAgICAgZGVzY3JpcHRpb24gPSAiQnVkZ2llIFdpbmRvdyBNYW5hZ2VyIgorICAgICAg ICAgfTsKKysjaWYgSEFWRV9NVVRURVJfNgorKyAgICAgICAgUFZfQ0VOVEVSID0gR3JhcGhlbmUu UG9pbnQoKTsKKysgICAgICAgIFBWX05PUk0gPSBHcmFwaGVuZS5Qb2ludCgpOworKyNlbHNlCisg ICAgICAgICBQVl9DRU5URVIgPSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7CisrICAgICAgICBQVl9O T1JNID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworKyNlbmRpZgorICAgICAgICAgUFZfQ0VOVEVS LnggPSAwLjVmOworICAgICAgICAgUFZfQ0VOVEVSLnkgPSAwLjVmOworLSAgICAgICAgUFZfTk9S TSA9IENsdXR0ZXIuUG9pbnQuYWxsb2MoKTsKKyAgICAgICAgIFBWX05PUk0ueCA9IDAuMGY7Cisg ICAgICAgICBQVl9OT1JNLnkgPSAwLjBmOworICAgICB9CitAQCAtMTAwMSw3ICsxMDExLDExIEBA IHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgICAgICB0aWxlX3ByZXZp ZXcuc2V0KCJzY2FsZS14IiwgTk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9YLCAic2NhbGUteSIsIE5P VElGSUNBVElPTl9NQVBfU0NBTEVfWSwKKyAgICAgICAgICAgICAicGl2b3QtcG9pbnQiLCBQVl9D RU5URVIpOworIAorKyNpZiBIQVZFX01VVFRFUl82CisrICAgICAgICAvL3RpbGVfcHJldmlldy5s b3dlcih3aW5fYWN0b3IpOworKyNlbHNlCisgICAgICAgICB0aWxlX3ByZXZpZXcubG93ZXIod2lu X2FjdG9yKTsKKysjZW5kaWYKKyAgICAgICAgIHRpbGVfcHJldmlldy50aWxlX3JlY3QgPSB0aWxl X3JlY3Q7CisgCisgICAgICAgICB0aWxlX3ByZXZpZXcuc2hvdygpOworZGlmZiAtLWdpdCBhL3Zh cGkvQ2x1dHRlci02Lm1ldGFkYXRhIGIvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKK25ldyBmaWxl IG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uOGMyNmExMjIKKy0tLSAvZGV2L251bGwKKysr KyBiL3ZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhCitAQCAtMCwwICsxLDIwNCBAQAorKy8vIE5vbiBt aW5pLW9iamVjdAorK0FjdG9yQm94IHN0cnVjdAorK0NvbG9yIHN0cnVjdAorK0ZvZyBzdHJ1Y3QK KytHZW9tZXRyeSBzdHJ1Y3QKKytLbm90IHN0cnVjdAorK1BhdGhOb2RlIHN0cnVjdAorK1BlcnNw ZWN0aXZlIHN0cnVjdAorK1VuaXRzIHN0cnVjdAorK1ZlcnRleCBzdHJ1Y3QKKysKKysqLnJlZiB1 bm93bmVkCisrCisraW5pdC5hcmd2IHVub3duZWQKKytpbml0X3dpdGhfYXJncworKwkuYXJndiB1 bm93bmVkCisrQWN0b3IKKysJLmFwcGx5X3RyYW5zZm9ybS5tYXRyaXggcmVmCisrCS5nZXRfYWJz X2FsbG9jYXRpb25fdmVydGljZXMudmVydHMgb3V0PWZhbHNlCisrCS5nZXRfYWxsb2NhdGlvbl92 ZXJ0aWNlcy52ZXJ0cyBvdXQ9ZmFsc2UKKytDYW52YXMKKysJLm5ldyBzeW1ib2xfdHlwZT0iY29u c3RydWN0b3IiCisrRXZlbnQudHlwZSNtZXRob2QgbmFtZT0iZ2V0X3R5cGUiCisrSW1hZ2UKKysJ Lm5ldyBzeW1ib2xfdHlwZT0iY29uc3RydWN0b3IiCisrCisrLy8gPz8/CisrQWN0b3IuaGFzX3Bv aW50ZXIjbWV0aG9kIG5hbWU9ImdldF9oYXNfcG9pbnRlciIKKytJbml0RXJyb3IgZXJyb3Jkb21h aW49ZmFsc2UKKysKKysvLyBOb3QgYWxsIGJhY2tpbmcgc3ltYm9scyBhcmUgZGVwcmVjYXRlZAor K0FjdG9yLnBpY2sgZGVwcmVjYXRlZD1mYWxzZQorKworKy8vIE51bGxhYmxlIHJldHVybiB2YWx1 ZXMKKytBY3RvcgorKwkuZ2V0X3BhcmVudCBudWxsYWJsZQorK3ZhbHVlX2dldF9jb2xvciBudWxs YWJsZQorKworKy8vIG1ldGhvZC92aXJ0dWFsLW1ldGhvZC9zaWduYWwgZG9uJ3QgbWF0Y2gKKytB Y3RvcgorKwkuZXZlbnQjbWV0aG9kIG5hbWU9ImVtaXRfZXZlbnQiCisrCS5nZXRfcGFpbnRfdm9s dW1lI21ldGhvZCBza2lwCisrCS5xdWV1ZV9yZWRyYXcjc2lnbmFsIHNraXAKKysJLnF1ZXVlX3Jl ZHJhdyN2aXJ0dWFsX21ldGhvZCBza2lwCisrQ29udGFpbmVyCisrCS5hZGRfYWN0b3Igc2tpcD1m YWxzZQorK1RleHQKKysJLmFjdGl2YXRlI21ldGhvZCBuYW1lPSJ0cnlfYWN0aXZhdGUiCisrCS5p bnNlcnRfdGV4dCNzaWduYWwgc2tpcAorK1RleHRCdWZmZXIuZ2V0X3RleHQjdmlydHVhbF9tZXRo b2QgbmFtZT0iZ2V0X3RleHRfd2l0aF9sZW5ndGgiCisrCisrLy8gdmlydHVhbC9hYnN0cmFjdCBk aXN0aW5jdGlvbgorK0NvbnRhaW5lcgorKwkubG93ZXIgdmlydHVhbAorKwkucmFpc2UgdmlydHVh bAorKwkuKl9jaGlsZF9tZXRhI3ZpcnR1YWxfbWV0aG9kIHZpcnR1YWwKKysJLmZvcmVhY2hfd2l0 aF9pbnRlcm5hbHMjdmlydHVhbF9tZXRob2QgdmlydHVhbAorKworKy8vIERlZmF1bHQgdmFsdWVz CisrQ29udGFpbmVyCisrCS5sb3dlci5zaWJsaW5nIG51bGxhYmxlIGRlZmF1bHQ9bnVsbAorKwku cmFpc2Uuc2libGluZyBudWxsYWJsZSBkZWZhdWx0PW51bGwKKytTdGFnZS5yZWFkX3BpeGVscwor Kwkud2lkdGggZGVmYXVsdD0tMQorKwkuaGVpZ2h0IGRlZmF1bHQ9LTEKKytUZXh0CisrCS5wb3Np dGlvbl90b19jb29yZHMubGluZV9oZWlnaHQgZGVmYXVsdD1udWxsCisrCisrLy8gUmVwYXJlbnRl ZCBmdW5jcyBtZXRob2RzIGNhbid0IGJlIGluc3RhbmNlIG1ldGhvZHMKKytmZWF0dXJlX2F2YWls YWJsZSBza2lwCisrZmVhdHVyZV9nZXRfYWxsIHNraXAKKysKKysvLyBTa2lwcGVkIGJ5IGctaSBm b3IgdW5rbm93biByZWFzb25zCisrTGF5b3V0TWFuYWdlcgorKwkuY3JlYXRlX2NoaWxkX21ldGEg c2tpcD1mYWxzZQorKworKy8vIFZhcmlhZGljIGFyZ3VtZW50cworK0FjdG9yCisrCS5hbmltYXRl IHNraXA9ZmFsc2UKKysJLmFuaW1hdGVfd2l0aF9hbHBoYSBza2lwPWZhbHNlCisrCS5hbmltYXRl X3dpdGhfdGltZWxpbmUgc2tpcD1mYWxzZQorK0JveAorKwkucGFjayBza2lwPWZhbHNlCisrCS5w YWNrX2FmdGVyIHNraXA9ZmFsc2UKKysJLnBhY2tfYXQgc2tpcD1mYWxzZQorKwkucGFja19iZWZv cmUgc2tpcD1mYWxzZQorK0NvbnRhaW5lcgorKwkuYWRkX3ZhbGlzdCBza2lwPWZhbHNlCisrCS5j aGlsZF9nZXQgc2tpcD1mYWxzZQorKwkuY2hpbGRfc2V0IHNraXA9ZmFsc2UKKysJLnJlbW92ZSBz a2lwPWZhbHNlCisrCS5yZW1vdmVfdmFsaXN0IHNraXA9ZmFsc2UKKytJbnRlcnZhbAorKwkubmV3 IHNraXA9ZmFsc2UKKysJLmdldF9pbnRlcnZhbCBza2lwPWZhbHNlCisrCS5zZXRfZmluYWwgc2tp cD1mYWxzZQorKwkuc2V0X2luaXRpYWwgc2tpcD1mYWxzZQorKwkuc2V0X2ludGVydmFsIHNraXA9 ZmFsc2UKKytMYXlvdXRNYW5hZ2VyCisrCS5jaGlsZF9nZXQgc2tpcD1mYWxzZQorKwkuY2hpbGRf c2V0IHNraXA9ZmFsc2UKKytTY3JpcHQKKysJLmdldF9vYmplY3RzIHNraXA9ZmFsc2UKKysKKysv LyBDaGFuZ2luZyBlcnJvciBkb21haW5zCisrVGV4dHVyZQorKwkubmV3X2Zyb21fZmlsZSB0aHJv d3M9IkNsdXR0ZXIuVGV4dHVyZUVycm9yIgorKworKy8vIFNraXBwZWQgdXBzdHJlYW0gZm9yIHVu a25vd24gcmVhc29ucworK0FscGhhLnJlZ2lzdGVyX2Z1bmMgc2tpcD1mYWxzZQorK0ludGVydmFs LnJlZ2lzdGVyX3Byb2dyZXNzX2Z1bmMgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fZ3JvdXAgc2tp cD1mYWxzZQorK2dldF9vcHRpb25fZ3JvdXBfd2l0aG91dF9pbml0IHNraXA9ZmFsc2UKKyt0aHJl YWRzX2FkZF9pZGxlIHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF9pZGxlX2Z1bGwgc2tpcD1mYWxz ZQorK3RocmVhZHNfYWRkX3RpbWVvdXQgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX3RpbWVvdXRf ZnVsbCBza2lwPWZhbHNlCisrCisrLy8gc3RydWN0L2NsYXNzIGNvbmZ1c2lvbgorK0FjdG9yQm94 CisrCS5uZXcgc2tpcAorKwkuZnJvbV92ZXJ0aWNlcyBza2lwCisrVW5pdHMuZnJvbV8qIHNraXAK KytDb2xvcgorKwkubmV3IHNraXAKKytWZXJ0ZXgubmV3IHNraXAKKysKKysvLyBDbGFzcyBtZXRo b2RzCisrY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkgc2tpcAorK2NvbnRhaW5l cl9jbGFzc19saXN0X2NoaWxkX3Byb3BlcnRpZXMgc2tpcAorKworKy8vIE1vdmUgc3ltYm9scwor K2dldF9hY3Rvcl9ieV9naWQgcGFyZW50PSJDbHV0dGVyLkFjdG9yIiBuYW1lPSJnZXRfYnlfZ2lk IgorK3VuaXRzX2Zyb21fKiBza2lwCisrCisrLy8gQ2xhc3NlcyBtYXJrZWQgYXMgb3V0IGJ1dCBu b3QgZG91YmxlIHB0cgorK0FjdG9yCisrCS5nZXRfbWFyZ2luLm1hcmdpbiBvdXQ9ZmFsc2UKKytE cmFnQWN0aW9uCisrCS5nZXRfZHJhZ19hcmVhLmRyYWdfYXJlYSBvdXQ9ZmFsc2UKKytJbnB1dERl dmljZQorKwkuZ2V0X2Nvb3Jkcy5wb2ludCBvdXQ9ZmFsc2UKKytSZWN0CisrCS5nZXRfY2VudGVy LmNlbnRlciBvdXQ9ZmFsc2UKKysJLmludGVyc2VjdGlvbi5yZXMgb3V0PWZhbHNlCisrCS51bmlv bi5yZXMgb3V0PWZhbHNlCisrVGltZWxpbmUKKysJLmdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3Mu Y18qIG91dD1mYWxzZQorK1pvb21BY3Rpb24KKysJLmdldF9mb2NhbF9wb2ludC5wb2ludCBvdXQ9 ZmFsc2UKKysJLmdldF90cmFuc2Zvcm1lZF9mb2NhbF9wb2ludC5wb2ludCBvdXQ9ZmFsc2UKKysK KysvLyBTdHJ1Y3QgcmV0dXJuIHZhbHVlcworK2NvbG9yX2dldF9zdGF0aWMgbnVsbGFibGUKKysK KysvLyBSZW1vdmUgZm9yIGNsdXR0ZXItMi4wCisrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwor KworK1N0YWdlCisrIAkuZXZlbnQgbmFtZT0iZW1pdF9ldmVudCIKKysKKysvLyAqRXZlbnQgc2hv dWxkIGJlIGNvbXBhY3QgY2xhc3NlcyBkZXJpdmVkIGZyb20gQ2x1dHRlci5FdmVudAorK0V2ZW50 LnR5cGUgc2tpcD1mYWxzZQorK0FueUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0 ZXIuRXZlbnQiCisrQnV0dG9uRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5F dmVudCIKKytDcm9zc2luZ0V2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZl bnQiCisrS2V5RXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytN b3Rpb25FdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1Njcm9s bEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrU3RhZ2VTdGF0 ZUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrVG91Y2hFdmVu dCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNocGFkUGluY2hF dmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNocGFkU3dp cGVFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorKworKy8vIEtl eXN5bXMgdXNlZCB0byBiZSBDTFVUVEVSX1ggaW5zdGVhZCBvZiBDTFVUVEVSX0tFWV9YCisrKiNj b25zdGFudCBza2lwCisrQ09HTCBza2lwPWZhbHNlCisrQ1VSUkVOVF9USU1FIHNraXA9ZmFsc2UK KytGTEFWT1VSIHNraXA9ZmFsc2UKKytQQVRIX1JFTEFUSVZFIHNraXA9ZmFsc2UKKytQUklPUklU WV9SRURSQVcgc2tpcD1mYWxzZQorKworKy8vIENsdXR0ZXIgZGV2cyBkb24ndCBsaWtlIHVzIGNy ZWF0aW5nIG5lc3RlZCBuYW1lc3BhY2VzCisrdmFsdWVfKiBuYW1lPSJ2YWx1ZV8oLispIiBwYXJl bnQ9IkNsdXR0ZXIuVmFsdWUiCisrdGhyZWFkc18qIG5hbWU9InRocmVhZHNfKC4rKSIgcGFyZW50 PSJDbHV0dGVyLlRocmVhZHMiCisrdGhyZWFkc19hZGRfaWRsZSBuYW1lPSJhZGQiIHBhcmVudD0i Q2x1dHRlci5UaHJlYWRzLklkbGUiCisrdGhyZWFkc19hZGRfaWRsZV9mdWxsIG5hbWU9ImFkZF9m dWxsIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcy5JZGxlIgorK3RocmVhZHNfYWRkX3RpbWVvdXQg bmFtZT0iYWRkIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcy5UaW1lb3V0IgorK3RocmVhZHNfYWRk X3RpbWVvdXRfZnVsbCBuYW1lPSJhZGRfZnVsbCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuVGlt ZW91dCIKKysKKysvLyBCYWNrd2FyZHMgY29tcGF0aWJpbGl0eQorK0NvbG9yLmFsbG9jIHN5bWJv bF90eXBlPSJmdW5jdGlvbiIKKytQb2ludC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisr UmVjdC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrU2l6ZS5hbGxvYyBzeW1ib2xfdHlw ZT0iZnVuY3Rpb24iCisrVmVydGV4LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKysKKytC aW5BbGlnbm1lbnQgZGVwcmVjYXRlZD1mYWxzZSBkZXByZWNhdGVkX3NpbmNlPW51bGwKKytCaW5B bGlnbm1lbnQuKiBkZXByZWNhdGVkCisrQmluQWxpZ25tZW50LnN0YXJ0IGRlcHJlY2F0ZWQ9ZmFs c2UKKytCaW5MYXlvdXQubmV3LipfYWxpZ24gZGVmYXVsdD1DbHV0dGVyLkJpbkFsaWdubWVudC5T VEFSVAorKworKy8vIFBvc3NpYmx5IGtlZXAKKytLRVlfKiBza2lwPWZhbHNlIG5hbWU9IktFWV8o LispIiB0eXBlPSJ1aW50IiBwYXJlbnQ9IkNsdXR0ZXIuS2V5IgorZGlmZiAtLWdpdCBhL3ZhcGkv Q29nbC02Lm1ldGFkYXRhIGIvdmFwaS9Db2dsLTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAw NjQ0CitpbmRleCAwMDAwMDAwMC4uMDkyYjVlMjkKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkv Q29nbC02Lm1ldGFkYXRhCitAQCAtMCwwICsxLDI3IEBACisrQ29nbCBjaGVhZGVyX2ZpbGVuYW1l PSJjb2dsL2NvZ2wuaCIKKysKKytDb2xvciBzdHJ1Y3QKKysgIC5uZXcgc2tpcAorKyAgLmZyZWUg c2tpcAorKworK2NyZWF0ZV9wcm9ncmFtIHNraXAKKytjcmVhdGVfc2hhZGVyIHNraXAKKysKKysK Kytpc19iaXRtYXAgc2tpcAorK2lzX21hdGVyaWFsIHNraXAKKytpc19vZmZzY3JlZW4gc2tpcAor K2lzX3Byb2dyYW0gc2tpcAorK2lzX3NoYWRlciBza2lwCisraXNfdGV4dHVyZSBza2lwCisraXNf dmVydGV4X2J1ZmZlciBza2lwCisrCisrTWF0cml4IHN0cnVjdAorKyAgLmdldF9hcnJheSBhcnJh eT10cnVlIGFycmF5X2xlbmd0aF9pZHg9LTEKKysgIC5nZXRfaW52ZXJzZS5pbnZlcnNlIG91dD10 cnVlCisrICAubXVsdGlwbHkgc2tpcAorKyAgLmluaXRfZnJvbV9hcnJheSBza2lwCisrICAuaW5p dF9pZGVudGl0eSBza2lwCisrICAudHJhbnNmb3JtX3BvaW50LiogcmVmPXRydWUKKysKKytwcm9n cmFtXyogc2tpcAorZGlmZiAtLWdpdCBhL3ZhcGkvTWV0YS02Lm1ldGFkYXRhIGIvdmFwaS9NZXRh LTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMWQ5ODQ3 NzgKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvTWV0YS02Lm1ldGFkYXRhCitAQCAtMCwwICsx LDgwIEBACisrQmFja2VuZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2VuZC5oIgor K0JhY2tncm91bmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQuaCIKKytC YWNrZ3JvdW5kQWN0b3IgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtYWN0 b3IuaCIKKytCYWNrZ3JvdW5kR3JvdXAgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tn cm91bmQtZ3JvdXAuaCIKKytCYWNrZ3JvdW5kSW1hZ2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9t ZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIKKytCYWNrZ3JvdW5kSW1hZ2VDYWNoZSBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIgorK0JhcnJpZXIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9iYXJyaWVyLmgiCisrQmFycmllckV2ZW50IGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvYmFycmllci5oIgorK0Nsb3NlRGlhbG9nIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0 YS1jbG9zZS1kaWFsb2cuaCIKKytDdXJzb3JUcmFja2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv bWV0YS1jdXJzb3ItdHJhY2tlci5oIgorK0Rpc3BsYXkgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9k aXNwbGF5LmgiCisrRG5kIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1kbmQuaCIKKytJZGxl TW9uaXRvciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtaWRsZS1tb25pdG9yLmgiCisrSW5o aWJpdFNob3J0Y3V0c0RpYWxvZyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtaW5oaWJpdC1z aG9ydGN1dHMtZGlhbG9nLmgiCisrTGF1bmNoQ29udGV4dCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L21ldGEtbGF1bmNoLWNvbnRleHQuaCIKKytNZXRhIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWFp bi5oIgorK01vbml0b3JNYW5hZ2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1tb25pdG9y LW1hbmFnZXIuaCIKKytQcmVmZXJlbmNlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvcHJlZnMuaCIK KytSZW1vdGVBY2Nlc3NDb250cm9sbGVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1yZW1v dGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIKKytSZW1vdGVBY2Nlc3NIYW5kbGUgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIgorK1NldHRpbmdzIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zZXR0aW5ncy5oIgorK1NoYWRvd0ZhY3RvcnkgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNoYWRvdy1mYWN0b3J5LmgiCisrU2hhcGVkVGV4dHVy ZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc2hhcGVkLXRleHR1cmUuaCIKKytTb3VuZFBs YXllciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc291bmQtcGxheWVyLmgiCisrU3RhZ2Ug Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXN0YWdlLmgiCisrU3RhcnR1cE5vdGlmaWNhdGlv biBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc3RhcnR1cC1ub3RpZmljYXRpb24uaCIKKytU aGVtZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3RoZW1lLmgiCisrV2luZG93IGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvd2luZG93LmgiCisrV2luZG93QWN0b3IgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLXdpbmRvdy1hY3Rvci5oIgorK1dpbmRvd0dyb3VwIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS13aW5kb3ctZ3JvdXAuaCIKKytXaW5kb3dTaGFwZSBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL21ldGEtd2luZG93LXNoYXBlLmgiCisrV29ya3NwYWNlIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvd29ya3NwYWNlLmgiCisrV29ya3NwYWNlTWFuYWdlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L21ldGEtd29ya3NwYWNlLW1hbmFnZXIuaCIKKytYMTFEaXNwbGF5IGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvbWV0YS14MTEtZGlzcGxheS5oIgorK1JlY3RhbmdsZSBzdHJ1Y3QKKytQbHVnaW4gY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXBsdWdpbi5oIgorK1BsdWdpbkluZm8gY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9tZXRhLXBsdWdpbi5oIgorK3ByZWZzXyogY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9wcmVmcy5oIiBwYXJlbnQ9Ik1ldGEuUHJlZnMiCisrYWRkX3ZlcmJvc2VfdG9waWMgcGFy ZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3gxMV9lcnJv cl90cmFwX3BvcCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGls LmgiCisreDExX2Vycm9yX3RyYXBfcHVzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS91dGlsLmgiCisreDExX2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJuIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytleHRlcm5hbF9i aW5kaW5nX25hbWVfZm9yX2FjdGlvbiBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS91dGlsLmgiCisrZ2V0X2xvY2FsZV9kaXJlY3Rpb24gcGFyZW50PSJNZXRhLlV0aWwi IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2dyYXZpdHlfdG9fc3RyaW5nIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc19kZWJ1Z2dp bmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lz X3N5bmNpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK2lzX3ZlcmJvc2UgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK2lzX3dheWxhbmRfY29tcG9zaXRvciBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrbGF0ZXJfYWRkIHBhcmVudD0iTWV0YS5VdGlsIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytsYXRlcl9yZW1vdmUgcGFyZW50PSJNZXRh LlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3BvcF9ub19tc2dfcHJlZml4 IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytwdXNo X25vX21zZ19wcmVmaXggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK3JlY3QgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK3JlbW92ZV92ZXJib3NlX3RvcGljIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt1bnNpZ25lZF9sb25nX2VxdWFsIHBhcmVudD0iTWV0 YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt1bnNpZ25lZF9sb25nX2hh c2ggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3No b3dfZGlhbG9nIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwu aCIKKytnZXRfc3RhZ2VfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfd2luZG93X2FjdG9y cyBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3Np dG9yLW11dHRlci5oIgorK2dldF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRh LkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIK KytnZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRv ciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dldF9mZWVk YmFja19ncm91cF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2Rpc2FibGVfdW5yZWRpcmVjdF9m b3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2VuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBh cmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3It bXV0dGVyLmgiCisrc2V0X3N0YWdlX2lucHV0X3JlZ2lvbiBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRv ciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2VtcHR5X3N0 YWdlX2lucHV0X3JlZ2lvbiBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2ZvY3VzX3N0YWdlX3dpbmRvdyBwYXJlbnQ9 Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRl ci5oIgorK2tleWJpbmRpbmdzX3NldF9jdXN0b21faGFuZGxlciBwYXJlbnQ9Ik1ldGEuS2V5Qmlu ZGluZyIgbmFtZT0ic2V0X2N1c3RvbV9oYW5kbGVyIgorK0tleUhhbmRsZXJGdW5jLmV2ZW50IHR5 cGU9IkNsdXR0ZXIuS2V5RXZlbnQ/IgorK2dldF9iYWNrZW5kIHBhcmVudD0iTWV0YS5CYWNrZW5k IgorK1dpbmRvdy5mb2N1cyNzaWduYWwgc2tpcD10cnVlCisrV2luZG93LmdldF94d2luZG93IHNr aXA9ZmFsc2UKKytnZXRfb3B0aW9uX2NvbnRleHQgc2tpcD1mYWxzZQorK3NldF9nbm9tZV93bV9r ZXliaW5kaW5ncyBza2lwPWZhbHNlCisrc2V0X3dtX25hbWUgc2tpcD1mYWxzZQorK2luaXQgc2tp cD1mYWxzZQorK3J1biBza2lwPWZhbHNlCisrc2hvd19kaWFsb2cgc2tpcD1mYWxzZQorK2dldF9i YWNrZW5kIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZW5kLmgiCitkaWZmIC0tZ2l0 IGEvdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpIGIvdmFwaS9ncmFwaGVuZS1nb2JqZWN0 LTEuMC52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjY5ODAxNTM1 CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKK0BA IC0wLDAgKzEsNjkxIEBACisrLyogZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSBnZW5lcmF0ZWQg YnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAiR3Jh cGhlbmUiLCBnaXJfbmFtZXNwYWNlID0gIkdyYXBoZW5lIiwgZ2lyX3ZlcnNpb24gPSAiMS4wIiwg bG93ZXJfY2FzZV9jcHJlZml4ID0gImdyYXBoZW5lXyIpXQorK25hbWVzcGFjZSBHcmFwaGVuZSB7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV9ib3hfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfYm94X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBCb3ggewor KwkJcHVibGljIGJvb2wgY29udGFpbnNfYm94IChHcmFwaGVuZS5Cb3ggYik7CisrCQlwdWJsaWMg Ym9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBlbXB0eSAoKTsKKysJCXB1YmxpYyBib29sIGVx dWFsIChHcmFwaGVuZS5Cb3ggYik7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZCAoR3Jh cGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZF9zY2Fs YXIgKGZsb2F0IHNjYWxhcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZF92ZWMzIChH cmFwaGVuZS5WZWMzIHZlYyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIGdldF9ib3VuZGlu Z19zcGhlcmUgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfY2VudGVyICgpOwor KwkJcHVibGljIGZsb2F0IGdldF9kZXB0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0 ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21heCAoKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludDNEIGdldF9taW4gKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRf c2l6ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5n dGggPSBmYWxzZSldIHJlZiBHcmFwaGVuZS5WZWMzIHZlcnRpY2VzWzhdKTsKKysJCXB1YmxpYyBm bG9hdCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94 PyBpbmZpbml0ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdCAoR3Jh cGhlbmUuUG9pbnQzRD8gbWluLCBHcmFwaGVuZS5Qb2ludDNEPyBtYXgpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fYm94IChHcmFwaGVuZS5Cb3ggc3JjKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChh cnJheV9sZW5ndGhfY25hbWUgPSAibl9wb2ludHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBh cnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHcmFwaGVuZS5Qb2ludDNEW10gcG9pbnRzKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5l LlZlYzM/IG1pbiwgR3JhcGhlbmUuVmVjMz8gbWF4KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLkJveD8gaW5pdF9mcm9tX3ZlY3RvcnMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0g Im5fdmVjdG9ycyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0g Imd1aW50IildIEdyYXBoZW5lLlZlYzNbXSB2ZWN0b3JzKTsKKysJCXB1YmxpYyBib29sIGludGVy c2VjdGlvbiAoR3JhcGhlbmUuQm94IGIsIG91dCBHcmFwaGVuZS5Cb3ggcmVzKTsKKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IG1pbnVzX29uZSAoKTsKKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IG9uZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBHcmFwaGVuZS5Cb3g/IG9uZV9taW51c19vbmUgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu Qm94IHVuaW9uIChHcmFwaGVuZS5Cb3ggYik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuQm94PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJn cmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9ldWxlcl90IiwgdHlwZV9pZCA9 ICJncmFwaGVuZV9ldWxlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCXB1YmxpYyBzdHJ1Y3QgRXVsZXIgeworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBo ZW5lLkV1bGVyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfYWxwaGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF9iZXRhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfZ2FtbWEgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXJPcmRl ciBnZXRfb3JkZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlwdWJsaWMgZmxv YXQgZ2V0X3kgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ogKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5FdWxlcj8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5F dWxlcj8gc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21f bWF0cml4IChHcmFwaGVuZS5NYXRyaXg/IG0sIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOwor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9xdWF0ZXJuaW9uIChH cmFwaGVuZS5RdWF0ZXJuaW9uPyBxLCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxl cj8gaW5pdF9mcm9tX3JhZGlhbnMgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIEdyYXBoZW5l LkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGlu aXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyB2LCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVy KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X3dpdGhfb3JkZXIgKGZs b2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJ cHVibGljIEdyYXBoZW5lLkV1bGVyIHJlb3JkZXIgKEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIp OworKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0b19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gdG9fcXVhdGVy bmlvbiAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHRvX3ZlYzMgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdy YXBoZW5lX2ZydXN0dW1fdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfZnJ1c3R1bV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgRnJ1c3R1 bSB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2lu dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAo R3JhcGhlbmUuRnJ1c3R1bSBiKTsKKysJCXB1YmxpYyB2b2lkIGdldF9wbGFuZXMgKFtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgR3JhcGhlbmUuUGxhbmUgcGxhbmVzWzZdKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkZydXN0dW0/IGluaXQgKEdyYXBoZW5lLlBsYW5lIHAw LCBHcmFwaGVuZS5QbGFuZSBwMSwgR3JhcGhlbmUuUGxhbmUgcDIsIEdyYXBoZW5lLlBsYW5lIHAz LCBHcmFwaGVuZS5QbGFuZSBwNCwgR3JhcGhlbmUuUGxhbmUgcDUpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuRnJ1c3R1bT8gaW5pdF9mcm9tX2ZydXN0dW0gKEdyYXBoZW5lLkZydXN0dW0g c3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkZydXN0dW0/IGluaXRfZnJvbV9tYXRy aXggKEdyYXBoZW5lLk1hdHJpeCBtYXRyaXgpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19i b3ggKEdyYXBoZW5lLkJveCBib3gpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19zcGhlcmUg KEdyYXBoZW5lLlNwaGVyZSBzcGhlcmUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9tYXRyaXhfdCIsIHR5 cGVfaWQgPSAiZ3JhcGhlbmVfbWF0cml4X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3Qg TWF0cml4IHsKKysJCXB1YmxpYyBib29sIGRlY29tcG9zZSAob3V0IEdyYXBoZW5lLlZlYzMgdHJh bnNsYXRlLCBvdXQgR3JhcGhlbmUuVmVjMyBzY2FsZSwgb3V0IEdyYXBoZW5lLlF1YXRlcm5pb24g cm90YXRlLCBvdXQgR3JhcGhlbmUuVmVjMyBzaGVhciwgb3V0IEdyYXBoZW5lLlZlYzQgcGVyc3Bl Y3RpdmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRl dGVybWluYW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBi b29sIGVxdWFsIChHcmFwaGVuZS5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWxfZmFzdCAoR3JhcGhlbmUuTWF0cml4IGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3Jv dyAodWludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF92YWx1ZSAodWludCByb3csIHVpbnQgY29sKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeF9zY2FsZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3hfdHJhbnNsYXRpb24gKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3lfc2Nh bGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF95X3RyYW5zbGF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF96X3NjYWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBmbG9hdCBnZXRfel90cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9t XzJkIChkb3VibGUgeHgsIGRvdWJsZSB5eCwgZG91YmxlIHh5LCBkb3VibGUgeXksIGRvdWJsZSB4 XzAsIGRvdWJsZSB5XzApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBmbG9hdCB2WzE2XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV9tYXRyaXgg KEdyYXBoZW5lLk1hdHJpeCBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUu VmVjNCB2MCwgR3JhcGhlbmUuVmVjNCB2MSwgR3JhcGhlbmUuVmVjNCB2MiwgR3JhcGhlbmUuVmVj NCB2Myk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5NYXRyaXg/IGluaXRfZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZs b2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJp eD8gaW5pdF9pZGVudGl0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9sb29rX2F0IChHcmFwaGVuZS5WZWMz IGV5ZSwgR3JhcGhlbmUuVmVjMyBjZW50ZXIsIEdyYXBoZW5lLlZlYzMgdXApOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBp bml0X29ydGhvIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgdG9wLCBmbG9hdCBib3R0 b20sIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3BlcnNwZWN0aXZl IChmbG9hdCBmb3Z5LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu TWF0cml4PyBpbml0X3JvdGF0ZSAoZmxvYXQgYW5nbGUsIEdyYXBoZW5lLlZlYzMgYXhpcyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5N YXRyaXg/IGluaXRfc2NhbGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBp bml0X3NrZXcgKGZsb2F0IHhfc2tldywgZmxvYXQgeV9za2V3KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF90cmFu c2xhdGUgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IGludGVycG9sYXRlIChHcmFwaGVuZS5NYXRyaXgg YiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgYm9vbCBpbnZlcnNlIChvdXQgR3JhcGhlbmUuTWF0cml4IHJlcyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc18yZCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX2JhY2tmYWNlX3Zpc2libGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19pZGVudGl0eSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX3Npbmd1 bGFyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l Lk1hdHJpeCBtdWx0aXBseSAoR3JhcGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLk1hdHJpeCBiLCBmbG9h dCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5NYXRyaXggbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBwZXJzcGVjdGl2ZSAoZmxvYXQgZGVwdGgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcHJpbnQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgcHJvamVj dF9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhZCBwcm9qZWN0X3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBw cm9qZWN0X3JlY3RfYm91bmRzIChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUu VmVjMyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfcXVhdGVybmlvbiAoR3JhcGhlbmUuUXVhdGVy bmlvbiBxKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJv dGF0ZV94IChmbG9hdCBhbmdsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdm9pZCByb3RhdGVfeSAoZmxvYXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX3ogKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBmYWN0b3Jf eCwgZmxvYXQgZmFjdG9yX3ksIGZsb2F0IGZhY3Rvcl96KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNrZXdfeHkgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBza2V3X3h6IChmbG9hdCBmYWN0 b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld195 eiAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBib29sIHRvXzJkIChvdXQgZG91YmxlIHh4LCBvdXQgZG91YmxlIHl4LCBvdXQgZG91YmxlIHh5 LCBvdXQgZG91YmxlIHl5LCBvdXQgZG91YmxlIHhfMCwgb3V0IGRvdWJsZSB5XzApOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgZmxvYXQgdlsxNl0pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgdHJhbnNmb3JtX2JvdW5kcyAo R3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5Cb3ggdHJhbnNmb3JtX2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHRyYW5zZm9ybV9w b2ludCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCB0cmFuc2Zvcm1fcG9pbnQzZCAoR3JhcGhlbmUuUG9p bnQzRCBwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5SYXkgdHJhbnNmb3JtX3JheSAoR3JhcGhlbmUuUmF5IHIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YWQgdHJhbnNmb3JtX3JlY3QgKEdyYXBo ZW5lLlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuU3BoZXJlIHRyYW5zZm9ybV9zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHRyYW5zZm9y bV92ZWMzIChHcmFwaGVuZS5WZWMzIHYpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzQgdHJhbnNmb3JtX3ZlYzQgKEdyYXBoZW5lLlZlYzQgdik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2xhdGUg KEdyYXBoZW5lLlBvaW50M0QgcG9zKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgdW5wcm9qZWN0X3BvaW50M2Qg KEdyYXBoZW5lLk1hdHJpeCBtb2RlbHZpZXcsIEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgdW50cmFu c2Zvcm1fYm91bmRzIChHcmFwaGVuZS5SZWN0IHIsIEdyYXBoZW5lLlJlY3QgYm91bmRzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHVudHJhbnNmb3JtX3Bv aW50IChHcmFwaGVuZS5Qb2ludCBwLCBHcmFwaGVuZS5SZWN0IGJvdW5kcywgb3V0IEdyYXBoZW5l LlBvaW50IHJlcyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5l LWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BsYW5lX3QiLCB0eXBlX2lkID0gImdyYXBo ZW5lX3BsYW5lX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ cHVibGljIHN0cnVjdCBQbGFuZSB7CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5l LlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlBsYW5lIGIp OworKwkJcHVibGljIGZsb2F0IGdldF9jb25zdGFudCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMzIGdldF9ub3JtYWwgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5p dCAoR3JhcGhlbmUuVmVjMz8gbm9ybWFsLCBmbG9hdCBjb25zdGFudCk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3BsYW5lIChHcmFwaGVuZS5QbGFuZSBzcmMp OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV9wb2ludCAoR3Jh cGhlbmUuVmVjMyBub3JtYWwsIEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV9wb2ludHMgKEdyYXBoZW5lLlBvaW50M0Qg YSwgR3JhcGhlbmUuUG9pbnQzRCBiLCBHcmFwaGVuZS5Qb2ludDNEIGMpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUGxhbmUgbmVnYXRlICgpOworKwkJcHVibGljIEdyYXBoZW5l LlBsYW5lIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JhcGhlbmUuUGxhbmUgdHJhbnNmb3JtIChHcmFwaGVuZS5NYXRyaXggbWF0cml4LCBH cmFwaGVuZS5NYXRyaXg/IG5vcm1hbF9tYXRyaXgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9wb2ludF90 IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wb2ludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUG9pbnQgeworKwkJcHVibGljIGZsb2F0 IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhl bmUuUG9pbnQgYiwgb3V0IGZsb2F0IGRfeCwgb3V0IGZsb2F0IGRfeSk7CisrCQlwdWJsaWMgYm9v bCBlcXVhbCAoR3JhcGhlbmUuUG9pbnQgYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Q b2ludD8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5Qb2ludD8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5Qb2ludCBzcmMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGlu aXRfZnJvbV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlBvaW50IGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVi bGljIGJvb2wgbmVhciAoR3JhcGhlbmUuUG9pbnQgYiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiB0b192ZWMyICgp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyB6ZXJvICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV9wb2ludDNkX3QiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicG9pbnQzZCIs IHR5cGVfaWQgPSAiZ3JhcGhlbmVfcG9pbnQzZF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUG9pbnQzRCB7CisrCQlwdWJsaWMgZmxv YXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwkJcHVibGljIGZsb2F0IHo7CisrCQlwdWJsaWMg R3JhcGhlbmUuUG9pbnQzRCBjcm9zcyAoR3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9p bnQzRCBiLCBvdXQgR3JhcGhlbmUuVmVjMyBkZWx0YSk7CisrCQlwdWJsaWMgZmxvYXQgZG90IChH cmFwaGVuZS5Qb2ludDNEIGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlBvaW50 M0QgYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0IChmbG9hdCB4 LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/ IGluaXRfZnJvbV9wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBzcmMpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdik7Cisr CQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBi LCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlwdWJsaWMg Ym9vbCBuZWFyIChHcmFwaGVuZS5Qb2ludDNEIGIsIGZsb2F0IGVwc2lsb24pOworKwkJcHVibGlj IEdyYXBoZW5lLlBvaW50M0Qgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgbm9ybWFsaXplX3ZpZXdwb3J0IChHcmFw aGVuZS5SZWN0IHZpZXdwb3J0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5Qb2ludDNEIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIEdyYXBo ZW5lLlZlYzMgdG9fdmVjMyAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Q b2ludDNEPyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFw aGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9xdWFkX3QiLCB0eXBlX2lkID0gImdy YXBoZW5lX3F1YWRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RydWN0IFF1YWQgeworKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgYm91bmRzICgp OworKwkJcHVibGljIGJvb2wgY29udGFpbnMgKEdyYXBoZW5lLlBvaW50IHApOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGdldF9wb2ludCAodWludCBpbmRleF8pOworKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuUXVhZD8gaW5pdCAoR3JhcGhlbmUuUG9pbnQgcDEsIEdyYXBo ZW5lLlBvaW50IHAyLCBHcmFwaGVuZS5Qb2ludCBwMywgR3JhcGhlbmUuUG9pbnQgcDQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVh ZD8gaW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBo ZW5lLlBvaW50IHBvaW50c1s0XSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBp bml0X2Zyb21fcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcXVhdGVy bmlvbl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9xdWF0ZXJuaW9uX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBRdWF0ZXJuaW9uIHsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVy bmlvbiBhZGQgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgZmxvYXQgZG90IChH cmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlF1 YXRlcm5pb24gYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0 IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBmbG9hdCB3KTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9hbmdsZV92ZWMzIChmbG9hdCBhbmdsZSwg R3JhcGhlbmUuVmVjMyBheGlzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5p b24/IGluaXRfZnJvbV9hbmdsZXMgKGZsb2F0IGRlZ194LCBmbG9hdCBkZWdfeSwgZmxvYXQgZGVn X3opOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlciBlKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9tYXRyaXggKEdy YXBoZW5lLk1hdHJpeCBtKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/ IGluaXRfZnJvbV9xdWF0ZXJuaW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9uIHNyYyk7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fcmFkaWFucyAoZmxvYXQg cmFkX3gsIGZsb2F0IHJhZF95LCBmbG9hdCByYWRfeik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBzcmMpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9pZGVudGl0eSAoKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIGludmVydCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBtdWx0aXBseSAoR3Jh cGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIG5vcm1h bGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUXVhdGVybmlvbiBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5R dWF0ZXJuaW9uIHNsZXJwIChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIsIGZsb2F0IGZhY3Rvcik7Cisr CQlwdWJsaWMgdm9pZCB0b19hbmdsZV92ZWMzIChvdXQgZmxvYXQgYW5nbGUsIG91dCBHcmFwaGVu ZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZv aWQgdG9fYW5nbGVzIChvdXQgZmxvYXQgZGVnX3gsIG91dCBmbG9hdCBkZWdfeSwgb3V0IGZsb2F0 IGRlZ196KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggdG9fbWF0cml4ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgdG9fcmFkaWFucyAob3V0IGZs b2F0IHJhZF94LCBvdXQgZmxvYXQgcmFkX3ksIG91dCBmbG9hdCByYWRfeik7CisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjNCB0b192ZWM0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yYXlfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfcmF5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIHN0cnVjdCBSYXkgeworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBo ZW5lLlJheSBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9jbG9zZXN0X3BvaW50 X3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMg Z2V0X2RpcmVjdGlvbiAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2VfdG9fcGxhbmUg KEdyYXBoZW5lLlBsYW5lIHApOworKwkJcHVibGljIGZsb2F0IGdldF9kaXN0YW5jZV90b19wb2lu dCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9v cmlnaW4gKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfcG9zaXRpb25fYXQgKGZs b2F0IHQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmF5PyBpbml0IChHcmFwaGVuZS5Q b2ludDNEPyBvcmlnaW4sIEdyYXBoZW5lLlZlYzM/IGRpcmVjdGlvbik7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5SYXk/IGluaXRfZnJvbV9yYXkgKEdyYXBoZW5lLlJheSBzcmMpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuUmF5PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVj Mz8gb3JpZ2luLCBHcmFwaGVuZS5WZWMzPyBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVy c2VjdF9ib3ggKEdyYXBoZW5lLkJveCBiLCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5k IGludGVyc2VjdF9zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzLCBvdXQgZmxvYXQgdF9vdXQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRl cnNlY3Rpb25LaW5kIGludGVyc2VjdF90cmlhbmdsZSAoR3JhcGhlbmUuVHJpYW5nbGUgdCwgb3V0 IGZsb2F0IHRfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Ym9vbCBpbnRlcnNlY3RzX2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfc3BoZXJlIChHcmFwaGVuZS5T cGhlcmUgcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wg aW50ZXJzZWN0c190cmlhbmdsZSAoR3JhcGhlbmUuVHJpYW5nbGUgdCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBo ZW5lX3JlY3RfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcmVjdF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdCB7CisrCQlwdWJs aWMgR3JhcGhlbmUuUG9pbnQgb3JpZ2luOworKwkJcHVibGljIEdyYXBoZW5lLlNpemUgc2l6ZTsK KysJCXB1YmxpYyBzdGF0aWMgR3JhcGhlbmUuUmVjdD8gYWxsb2MgKCk7CisrCQlwdWJsaWMgYm9v bCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlwdWJsaWMgYm9vbCBjb250 YWluc19yZWN0IChHcmFwaGVuZS5SZWN0IGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBo ZW5lLlJlY3QgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUmVjdCBleHBhbmQgKEdyYXBoZW5lLlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYXJlYSAoKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5Qb2ludCBnZXRfYm90dG9tX2xlZnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQg Z2V0X2JvdHRvbV9yaWdodCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfY2VudGVy ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQgZ2V0X3RvcF9sZWZ0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF90b3Bf cmlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBn ZXRfdmVydGljZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgR3JhcGhlbmUu VmVjMiB2ZXJ0aWNlc1s0XSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJcHVi bGljIGZsb2F0IGdldF94ICgpOworKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUmVjdD8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgd2lk dGgsIGZsb2F0IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbml0 X2Zyb21fcmVjdCAoR3JhcGhlbmUuUmVjdCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUmVjdD8gaW5zZXQgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGluc2V0X3IgKGZsb2F0IGRfeCwg ZmxvYXQgZF95KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGludGVycG9sYXRlIChHcmFwaGVu ZS5SZWN0IGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0aW9uIChH cmFwaGVuZS5SZWN0IGIsIG91dCBHcmFwaGVuZS5SZWN0IHJlcyk7CisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5SZWN0PyBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBub3JtYWxpemVfciAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlJlY3Q/IG9mZnNldCAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgb2Zmc2V0 X3IgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg R3JhcGhlbmUuUmVjdCByb3VuZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgR3JhcGhlbmUuUmVjdCByb3VuZF9leHRlbnRzICgpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuNCIsIHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gcm91bmRfdG9fcGl4ZWwgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgc2Nh bGUgKGZsb2F0IHNfaCwgZmxvYXQgc192KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHVuaW9u IChHcmFwaGVuZS5SZWN0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IHplcm8gKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBo ZW5lX3NpbWQ0Zl90IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2lt ZDRGIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVj dC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2ltZDR4NGZfdCIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgc3RydWN0IFNpbWQ0WDRGIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2l6ZV90Iiwg dHlwZV9pZCA9ICJncmFwaGVuZV9zaXplX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBTaXplIHsKKysJCXB1YmxpYyBmbG9hdCB3aWR0 aDsKKysJCXB1YmxpYyBmbG9hdCBoZWlnaHQ7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhl bmUuU2l6ZSBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNpemU/IGluaXQgKGZsb2F0 IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU2l6ZT8g aW5pdF9mcm9tX3NpemUgKEdyYXBoZW5lLlNpemUgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5T aXplIGludGVycG9sYXRlIChHcmFwaGVuZS5TaXplIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVi bGljIEdyYXBoZW5lLlNpemUgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgR3JhcGhlbmUuU2l6ZT8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc3BoZXJl X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3NwaGVyZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgU3BoZXJlIHsKKysJCXB1YmxpYyBi b29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBm bG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoR3JhcGhlbmUuU3BoZXJlIGIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBnZXRfYm91 bmRpbmdfYm94ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X2NlbnRlciAoKTsK KysJCXB1YmxpYyBmbG9hdCBnZXRfcmFkaXVzICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuU3BoZXJlPyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIsIGZsb2F0IHJhZGl1cyk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXRfZnJvbV9wb2ludHMgKFtD Q29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fcG9pbnRzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9 IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuUG9pbnQzRFtdIHBv aW50cywgR3JhcGhlbmUuUG9pbnQzRD8gY2VudGVyKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlNwaGVyZT8gaW5pdF9mcm9tX3ZlY3RvcnMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1l ID0gIm5fdmVjdG9ycyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBl ID0gImd1aW50IildIEdyYXBoZW5lLlZlYzNbXSB2ZWN0b3JzLCBHcmFwaGVuZS5Qb2ludDNEPyBj ZW50ZXIpOworKwkJcHVibGljIGJvb2wgaXNfZW1wdHkgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu U3BoZXJlIHRyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBo ZW5lX3RyaWFuZ2xlX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3RyaWFuZ2xlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBUcmlhbmds ZSB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsK KysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5UcmlhbmdsZSBiKTsKKysJCXB1YmxpYyBm bG9hdCBnZXRfYXJlYSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9iYXJ5Y29vcmRzIChHcmFwaGVu ZS5Qb2ludDNEPyBwLCBvdXQgR3JhcGhlbmUuVmVjMiByZXMpOworKwkJcHVibGljIEdyYXBoZW5l LkJveCBnZXRfYm91bmRpbmdfYm94ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0 X21pZHBvaW50ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBnZXRfcGxhbmUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRf cG9pbnRzIChvdXQgR3JhcGhlbmUuUG9pbnQzRCBhLCBvdXQgR3JhcGhlbmUuUG9pbnQzRCBiLCBv dXQgR3JhcGhlbmUuUG9pbnQzRCBjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgYm9vbCBnZXRfdXYgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIEdyYXBoZW5lLlZlYzIg dXZfYSwgR3JhcGhlbmUuVmVjMiB1dl9iLCBHcmFwaGVuZS5WZWMyIHV2X2MsIG91dCBHcmFwaGVu ZS5WZWMyIHJlcyk7CisrCQlwdWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKG91dCBHcmFwaGVuZS5W ZWMzIGEsIG91dCBHcmFwaGVuZS5WZWMzIGIsIG91dCBHcmFwaGVuZS5WZWMzIGMpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlRyaWFu Z2xlPyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9h dCBhWzNdLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgYlszXSwgW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IGNbM10pOworKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV9wb2ludDNkIChHcmFwaGVuZS5Qb2ludDNEPyBh LCBHcmFwaGVuZS5Qb2ludDNEPyBiLCBHcmFwaGVuZS5Qb2ludDNEPyBjKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlRyaWFuZ2xlPyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8g YSwgR3JhcGhlbmUuVmVjMz8gYiwgR3JhcGhlbmUuVmVjMz8gYyk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5l X3ZlYzJfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdmVjMl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgc3RydWN0IFZlYzIgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzIgYWRkIChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgZGl2aWRlIChHcmFwaGVuZS5WZWMy IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRvdCAo R3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWMyIHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IGluaXQgKGZsb2F0IHgsIGZs b2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuVmVjMj8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gZmxvYXQgc3JjWzJdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IGluaXRfZnJvbV92ZWMyIChHcmFwaGVuZS5WZWMy IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzIgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlZlYzIgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG1heCAo R3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMyIG1pbiAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG11bHRpcGx5IChHcmFwaGVuZS5W ZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVh ciAoR3JhcGhlbmUuVmVjMiB2MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBuZWdhdGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBub3JtYWxpemUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuVmVjMj8gb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzIgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBzdWJ0cmFjdCAoR3JhcGhl bmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3Rb Ml0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzI/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyB5X2F4aXMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuVmVjMj8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Z3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjM190IiwgdHlwZV9pZCA9 ICJncmFwaGVuZV92ZWMzX2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMyB7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBhZGQg KEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMyBjcm9zcyAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGRpdmlkZSAoR3JhcGhlbmUu VmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBk b3QgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVmVjMyB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBnZXRfeHkgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfeHkwICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0 X3h5ejAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjNCBnZXRfeHl6MSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXp3IChmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXQgKGZsb2F0 IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzNdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXRfZnJvbV92ZWMz IChHcmFwaGVuZS5WZWMzIHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzMgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlZlYzMgdjIsIGRvdWJs ZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5WZWMzIG1heCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG1pbiAoR3JhcGhlbmUuVmVjMyBiKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG11bHRp cGx5IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVjMyB2MiwgZmxvYXQgZXBzaWxvbik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBuZWdhdGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVj MyBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgc2NhbGUgKGZsb2F0IGZhY3Rvcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBz dWJ0cmFjdCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0g cmVmIGZsb2F0IGRlc3RbM10pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMz PyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gel9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHplcm8g KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzRfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdmVjNF9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzQgeworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgYWRkIChHcmFwaGVuZS5WZWM0IGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQg ZGl2aWRlIChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWM0IHYyKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGdldF94 eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMzIGdldF94eXogKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X3ogKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBm bG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldIGZsb2F0IHNyY1s0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0X2Zyb21fdmVjMiAoR3JhcGhlbmUuVmVj MiBzcmMsIGZsb2F0IHosIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5l LlZlYzMgc3JjLCBmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0 IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzQgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlZlYzQgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG1heCAo R3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWM0IG1pbiAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG11bHRpcGx5IChHcmFwaGVuZS5W ZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVh ciAoR3JhcGhlbmUuVmVjNCB2MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBuZWdhdGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBub3JtYWxpemUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuVmVjND8gb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzQgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBzdWJ0cmFjdCAoR3JhcGhl bmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3Rb NF0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzQ/IHdfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB4X2F4aXMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuVmVjND8geV9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHpfYXhpcyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5W ZWM0PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVu ZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9ldWxlcl9vcmRlcl90IiwgY3ByZWZpeCA9 ICJHUkFQSEVORV9FVUxFUl9PUkRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBFdWxlck9yZGVyIHsKKysJCURFRkFV TFQsCisrCQlYWVosCisrCQlZWlgsCisrCQlaWFksCisrCQlYWlksCisrCQlZWFosCisrCQlaWVgs CisrCQlTWFlaLAorKwkJU1hZWCwKKysJCVNYWlksCisrCQlTWFpYLAorKwkJU1laWCwKKysJCVNZ WlksCisrCQlTWVhaLAorKwkJU1lYWSwKKysJCVNaWFksCisrCQlTWlhaLAorKwkJU1pZWCwKKysJ CVNaWVosCisrCQlSWllYLAorKwkJUlhZWCwKKysJCVJZWlgsCisrCQlSWFpYLAorKwkJUlhaWSwK KysJCVJZWlksCisrCQlSWlhZLAorKwkJUllYWSwKKysJCVJZWFosCisrCQlSWlhaLAorKwkJUlhZ WiwKKysJCVJaWVoKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUt Z29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmF5X2ludGVyc2VjdGlvbl9raW5kX3QiLCBj cHJlZml4ID0gIkdSQVBIRU5FX1JBWV9JTlRFUlNFQ1RJT05fS0lORF8iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gUmF5 SW50ZXJzZWN0aW9uS2luZCB7CisrCQlOT05FLAorKwkJRU5URVIsCisrCQlMRUFWRQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9 ICJHUkFQSEVORV9IQVNfR0NDIildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFTX0dDQzsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdS QVBIRU5FX0hBU19TQ0FMQVIiKV0KKysJcHVibGljIGNvbnN0IGludCBIQVNfU0NBTEFSOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAi R1JBUEhFTkVfSEFTX1NTRSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEhBU19TU0U7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQ SEVORV9QSSIpXQorKwlwdWJsaWMgY29uc3QgZG91YmxlIFBJOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfUElfMiIp XQorKwlwdWJsaWMgY29uc3QgZG91YmxlIFBJXzI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9TSU1EX1MiKV0KKysJ cHVibGljIGNvbnN0IHN0cmluZyBTSU1EX1M7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUMyX0xFTiIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVDMl9MRU47Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9 ICJHUkFQSEVORV9WRUMzX0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBjb25zdCBpbnQgVkVDM19MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJn cmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUM0X0xFTiIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVDNF9MRU47CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJm YWxzZSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEBmYWxzZTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gInRydWUiKV0KKysJcHVibGlj IGNvbnN0IGludCBAdHJ1ZTsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9saWJtdXR0ZXItNi5kZXBz IGIvdmFwaS9saWJtdXR0ZXItNi5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAw MDAwMDAuLjIyMzUyNWU0CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL2xpYm11dHRlci02LmRl cHMKK0BAIC0wLDAgKzEsNiBAQAorK2d0aystMy4wCisranNvbi1nbGliLTEuMAorK211dHRlci1j bHV0dGVyLTYKKyt4MTEKKyt4Zml4ZXMtNC4wCisrZ3JhcGhlbmUtZ29iamVjdC0xLjAKK2RpZmYg LS1naXQgYS92YXBpL2xpYm11dHRlci02LnZhcGkgYi92YXBpL2xpYm11dHRlci02LnZhcGkKK25l dyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMzFmNDgwMWMKKy0tLSAvZGV2L251 bGwKKysrKyBiL3ZhcGkvbGlibXV0dGVyLTYudmFwaQorQEAgLTAsMCArMSwxNDc1IEBACisrLyog bGlibXV0dGVyLTYudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8K KysKKytbQ0NvZGUgKGNwcmVmaXggPSAiTWV0YSIsIGdpcl9uYW1lc3BhY2UgPSAiTWV0YSIsIGdp cl92ZXJzaW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAibWV0YV8iKV0KKytuYW1lc3Bh Y2UgTWV0YSB7CisrCW5hbWVzcGFjZSBDb21wb3NpdG9yIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2Rpc2Fi bGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGRpc2Fi bGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1l ID0gIm1ldGFfZW5hYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdm9pZCBlbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3Bs YXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0 ZXIuaCIsIGNuYW1lID0gIm1ldGFfZm9jdXNfc3RhZ2Vfd2luZG93IildCisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgZm9jdXNfc3RhZ2Vfd2luZG93IChNZXRhLkRpc3BsYXkgZGlzcGxheSwgdWludDMy IHRpbWVzdGFtcCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3Np dG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfZmVlZGJhY2tfZ3JvdXBfZm9yX2Rpc3Bs YXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9mZWVkYmFj a19ncm91cF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1l dGFfZ2V0X3N0YWdlX2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1 dHRlci5BY3RvciBnZXRfc3RhZ2VfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgi LCBjbmFtZSA9ICJtZXRhX2dldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfdG9wX3dpbmRvd19ncm91cF9m b3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dp bmRvd19hY3RvcnMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLkxpc3Q8Q2x1dHRl ci5BY3Rvcj4gZ2V0X3dpbmRvd19hY3RvcnMgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFt ZSA9ICJtZXRhX2dldF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgKE1l dGEuRGlzcGxheSBkaXNwbGF5KTsKKysJfQorKwluYW1lc3BhY2UgUHJlZnMgeworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf YmVsbF9pc19hdWRpYmxlIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfYmVsbF9pc19h dWRpYmxlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfY2hhbmdlX3dvcmtzcGFjZV9uYW1lIildCisrCQlwdWJsaWMg c3RhdGljIHZvaWQgcHJlZnNfY2hhbmdlX3dvcmtzcGFjZV9uYW1lIChpbnQgaSwgc3RyaW5nIG5h bWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9kb3VibGVfY2xpY2tfdGl0bGViYXIiKV0KKysJCXB1 YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24gcHJlZnNfZ2V0X2FjdGlvbl9kb3Vi bGVfY2xpY2tfdGl0bGViYXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX21pZGRsZV9jbGlja190 aXRsZWJhciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVm c19nZXRfYWN0aW9uX21pZGRsZV9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hY3Rp b25fcmlnaHRfY2xpY2tfdGl0bGViYXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0 bGViYXJBY3Rpb24gcHJlZnNfZ2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJhciAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9hdHRhY2hfbW9kYWxfZGlhbG9ncyIpXQorKwkJcHVibGljIHN0YXRpYyBib29s IHByZWZzX2dldF9hdHRhY2hfbW9kYWxfZGlhbG9ncyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX21h eGltaXplIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fbWF4aW1pemUg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfYXV0b19yYWlzZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHBy ZWZzX2dldF9hdXRvX3JhaXNlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F1dG9fcmFpc2VfZGVsYXkiKV0K KysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9hdXRvX3JhaXNlX2RlbGF5ICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfZ2V0X2J1dHRvbl9sYXlvdXQiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5CdXR0b25M YXlvdXQgcHJlZnNfZ2V0X2J1dHRvbl9sYXlvdXQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY2VudGVyX25l d193aW5kb3dzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2NlbnRlcl9uZXdf d2luZG93cyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgi LCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jb21wb3NpdGluZ19tYW5hZ2VyIildCisrCQlwdWJs aWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2NvbXBvc2l0aW5nX21hbmFnZXIgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19nZXRfY3Vyc29yX3NpemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9jdXJz b3Jfc2l6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgi LCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jdXJzb3JfdGhlbWUiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBzdHJpbmcgcHJlZnNfZ2V0X2N1cnNvcl90aGVtZSAoKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dl dF9kaXNhYmxlX3dvcmthcm91bmRzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0 X2Rpc2FibGVfd29ya2Fyb3VuZHMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZHJhZ190aHJlc2hvbGQiKV0K KysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9kcmFnX3RocmVzaG9sZCAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9kcmFnZ2FibGVfYm9yZGVyX3dpZHRoIildCisrCQlwdWJsaWMgc3RhdGljIGludCBw cmVmc19nZXRfZHJhZ2dhYmxlX2JvcmRlcl93aWR0aCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9keW5hbWlj X3dvcmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZHluYW1pY193 b3Jrc3BhY2VzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2VkZ2VfdGlsaW5nIildCisrCQlwdWJsaWMgc3Rh dGljIGJvb2wgcHJlZnNfZ2V0X2VkZ2VfdGlsaW5nICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX2No YW5nZV9vbl9wb2ludGVyX3Jlc3QiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRf Zm9jdXNfY2hhbmdlX29uX3BvaW50ZXJfcmVzdCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1c19tb2Rl IildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLkZvY3VzTW9kZSBwcmVmc19nZXRfZm9jdXNf bW9kZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBj bmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1c19uZXdfd2luZG93cyIpXQorKwkJcHVibGljIHN0 YXRpYyBHRGVza3RvcC5Gb2N1c05ld1dpbmRvd3MgcHJlZnNfZ2V0X2ZvY3VzX25ld193aW5kb3dz ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X2ZvcmNlX2Z1bGxzY3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMg Ym9vbCBwcmVmc19nZXRfZm9yY2VfZnVsbHNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9nbm9tZV9h Y2Nlc3NpYmlsaXR5IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2dub21lX2Fj Y2Vzc2liaWxpdHkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZ25vbWVfYW5pbWF0aW9ucyIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIHByZWZzX2dldF9nbm9tZV9hbmltYXRpb25zICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2tleWJpbmRpbmdfYWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuS2V5QmluZGlu Z0FjdGlvbiBwcmVmc19nZXRfa2V5YmluZGluZ19hY3Rpb24gKHN0cmluZyBuYW1lKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9tb3VzZV9idXR0b25fbWVudSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNf Z2V0X21vdXNlX2J1dHRvbl9tZW51ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2Rz IildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuVmlydHVhbE1vZGlmaWVyIHByZWZzX2dldF9tb3Vz ZV9idXR0b25fbW9kcyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0b25fcmVzaXplIildCisr CQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX3Jlc2l6ZSAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9udW1fd29ya3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNf Z2V0X251bV93b3Jrc3BhY2VzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3JhaXNlX29uX2NsaWNrIildCisr CQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3JhaXNlX29uX2NsaWNrICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBw cmVmc19nZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF90aXRsZWJh cl9mb250IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgUGFuZ28uRm9udERlc2NyaXB0aW9u IHByZWZzX2dldF90aXRsZWJhcl9mb250ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsIild CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X3Zpc3VhbF9iZWxsX3R5cGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVmlz dWFsQmVsbFR5cGUgcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsX3R5cGUgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf d29ya3NwYWNlX25hbWUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcgcHJlZnNf Z2V0X3dvcmtzcGFjZV9uYW1lIChpbnQgaSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfd29ya3NwYWNlc19vbmx5 X29uX3ByaW1hcnkiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfd29ya3NwYWNl c19vbmx5X29uX3ByaW1hcnkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19pbml0IildCisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgcHJlZnNfaW5pdCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9mb3JjZV9mdWxsc2NyZWVuIildCisr CQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfc2V0X2ZvcmNlX2Z1bGxzY3JlZW4gKGJvb2wgd2hl dGhlcik7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19zZXRfbnVtX3dvcmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMg dm9pZCBwcmVmc19zZXRfbnVtX3dvcmtzcGFjZXMgKGludCBuX3dvcmtzcGFjZXMpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfc2V0X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBw cmVmc19zZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSAoYm9vbCB3aGV0aGVyKTsKKysJfQorKwlu YW1lc3BhY2UgVXRpbCB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGls LmgiLCBjbmFtZSA9ICJtZXRhX2FkZF92ZXJib3NlX3RvcGljIildCisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgYWRkX3ZlcmJvc2VfdG9waWMgKE1ldGEuRGVidWdUb3BpYyB0b3BpYyk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2V4dGVy bmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIHN0cmluZyBl eHRlcm5hbF9iaW5kaW5nX25hbWVfZm9yX2FjdGlvbiAodWludCBrZXliaW5kaW5nX2FjdGlvbik7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJt ZXRhX2dldF9sb2NhbGVfZGlyZWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuTG9jYWxl RGlyZWN0aW9uIGdldF9sb2NhbGVfZGlyZWN0aW9uICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9ncmF2aXR5X3RvX3N0cmluZyIp XQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBncmF2aXR5X3RvX3N0cmluZyAoaW50 IGdyYXZpdHkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwg Y25hbWUgPSAibWV0YV9pc19kZWJ1Z2dpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19k ZWJ1Z2dpbmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX2lzX3N5bmNpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19z eW5jaW5nICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwg Y25hbWUgPSAibWV0YV9pc192ZXJib3NlIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfdmVy Ym9zZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNu YW1lID0gIm1ldGFfaXNfd2F5bGFuZF9jb21wb3NpdG9yIildCisrCQlwdWJsaWMgc3RhdGljIGJv b2wgaXNfd2F5bGFuZF9jb21wb3NpdG9yICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9sYXRlcl9hZGQiKV0KKysJCXB1YmxpYyBz dGF0aWMgdWludCBsYXRlcl9hZGQgKE1ldGEuTGF0ZXJUeXBlIHdoZW4sIG93bmVkIEdMaWIuU291 cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwu aCIsIGNuYW1lID0gIm1ldGFfbGF0ZXJfcmVtb3ZlIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQg bGF0ZXJfcmVtb3ZlICh1aW50IGxhdGVyX2lkKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcG9wX25vX21zZ19wcmVmaXgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBwb3Bfbm9fbXNnX3ByZWZpeCAoKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcHVzaF9ub19tc2df cHJlZml4IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHVzaF9ub19tc2dfcHJlZml4ICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0 YV9yZWN0IildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuUmVjdGFuZ2xlPyByZWN0IChpbnQgeCwg aW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3JlbW92ZV92ZXJib3NlX3RvcGljIild CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcmVtb3ZlX3ZlcmJvc2VfdG9waWMgKE1ldGEuRGVidWdU b3BpYyB0b3BpYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX3Nob3dfZGlhbG9nIildCisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUGlk IHNob3dfZGlhbG9nIChzdHJpbmcgdHlwZSwgc3RyaW5nIG1lc3NhZ2UsIHN0cmluZyB0aW1lb3V0 LCBzdHJpbmcgZGlzcGxheSwgc3RyaW5nIG9rX3RleHQsIHN0cmluZyBjYW5jZWxfdGV4dCwgc3Ry aW5nIGljb25fbmFtZSwgaW50IHRyYW5zaWVudF9mb3IsIEdMaWIuU0xpc3Q8dm9pZCo+IGNvbHVt bnMsIEdMaWIuU0xpc3Q8dm9pZCo+IGVudHJpZXMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV91bnNpZ25lZF9sb25nX2VxdWFsIild CisrCQlwdWJsaWMgc3RhdGljIGludCB1bnNpZ25lZF9sb25nX2VxdWFsICh2b2lkKiB2MSwgdm9p ZCogdjIpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25h bWUgPSAibWV0YV91bnNpZ25lZF9sb25nX2hhc2giKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCB1 bnNpZ25lZF9sb25nX2hhc2ggKHZvaWQqIHYpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV94MTFfZXJyb3JfdHJhcF9wb3AiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCB4MTFfZXJyb3JfdHJhcF9wb3AgKE1ldGEuWDExRGlzcGxheSB4 MTFfZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX3gxMV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiIpXQorKwkJcHVi bGljIHN0YXRpYyBpbnQgeDExX2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJuIChNZXRhLlgxMURp c3BsYXkgeDExX2Rpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv dXRpbC5oIiwgY25hbWUgPSAibWV0YV94MTFfZXJyb3JfdHJhcF9wdXNoIildCisrCQlwdWJsaWMg c3RhdGljIHZvaWQgeDExX2Vycm9yX3RyYXBfcHVzaCAoTWV0YS5YMTFEaXNwbGF5IHgxMV9kaXNw bGF5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tl bmQuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZW5kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBh YnN0cmFjdCBjbGFzcyBCYWNrZW5kIDogR0xpYi5PYmplY3QsIEdMaWIuSW5pdGFibGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJh Y2tlbmQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tl bmQuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X2JhY2tlbmQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBNZXRhLkJhY2tlbmQgZ2V0X2JhY2tlbmQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRh LkRuZCBnZXRfZG5kICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5SZW1vdGVBY2Nlc3NDb250 cm9sbGVyIGdldF9yZW1vdGVfYWNjZXNzX2NvbnRyb2xsZXIgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9zdGFnZSAoKTsKKysJCXB1YmxpYyB2b2lkIGxvY2tfbGF5b3V0 X2dyb3VwICh1aW50IGlkeCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5bWFwIChzdHJpbmcgbGF5 b3V0cywgc3RyaW5nIHZhcmlhbnRzLCBzdHJpbmcgb3B0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfbnVtbG9jayAoYm9vbCBudW1sb2NrX3N0YXRlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBr ZXltYXBfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrZXltYXBfbGF5b3V0X2dy b3VwX2NoYW5nZWQgKHVpbnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsYXN0X2Rl dmljZV9jaGFuZ2VkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgbGlkX2lzX2Nsb3NlZF9jaGFuZ2VkIChib29sIG9iamVjdCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLmgiLCB0eXBlX2lk ID0gIm1ldGFfYmFja2dyb3VuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dy b3VuZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXB1YmxpYyBCYWNrZ3JvdW5kIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7Cisr CQlwdWJsaWMgc3RhdGljIHZvaWQgcmVmcmVzaF9hbGwgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf YmxlbmQgKEdMaWIuRmlsZSBmaWxlMSwgR0xpYi5GaWxlIGZpbGUyLCBkb3VibGUgYmxlbmRfZmFj dG9yLCBHRGVza3RvcC5CYWNrZ3JvdW5kU3R5bGUgc3R5bGUpOworKwkJcHVibGljIHZvaWQgc2V0 X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9maWxlIChH TGliLkZpbGU/IGZpbGUsIEdEZXNrdG9wLkJhY2tncm91bmRTdHlsZSBzdHlsZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfZ3JhZGllbnQgKEdEZXNrdG9wLkJhY2tncm91bmRTaGFkaW5nIHNoYWRpbmdf ZGlyZWN0aW9uLCBDbHV0dGVyLkNvbG9yIGNvbG9yLCBDbHV0dGVyLkNvbG9yIHNlY29uZF9jb2xv cik7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgbWV0YV9k aXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBj aGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEt YmFja2dyb3VuZC1hY3Rvci5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfYWN0b3JfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmRBY3RvciA6IENsdXR0ZXIuQWN0 b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5l ciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBCYWNrZ3JvdW5k QWN0b3IgKE1ldGEuRGlzcGxheSBkaXNwbGF5LCBpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgdm9p ZCBzZXRfYmFja2dyb3VuZCAoTWV0YS5CYWNrZ3JvdW5kIGJhY2tncm91bmQpOworKwkJcHVibGlj IHZvaWQgc2V0X2dyYWRpZW50IChib29sIGVuYWJsZWQsIGludCBoZWlnaHQsIGRvdWJsZSB0b25l X3N0YXJ0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9tb25pdG9yIChpbnQgbW9uaXRvcik7CisrCQlw dWJsaWMgdm9pZCBzZXRfdmlnbmV0dGUgKGJvb2wgZW5hYmxlZCwgZG91YmxlIGJyaWdodG5lc3Ms IGRvdWJsZSBzaGFycG5lc3MpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0 YS5CYWNrZ3JvdW5kIGJhY2tncm91bmQgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgZG91YmxlIGJyaWdodG5lc3MgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBncmFkaWVudCB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZ3JhZGllbnRfaGVpZ2h0IHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGRvdWJsZSBncmFk aWVudF9tYXhfZGFya25lc3MgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgTWV0YS5EaXNwbGF5IG1ldGFfZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgbW9uaXRvciB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHZpZ25l dHRlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGRvdWJs ZSB2aWduZXR0ZV9zaGFycG5lc3MgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1ncm91cC5oIiwgdHlwZV9pZCA9ICJt ZXRhX2JhY2tncm91bmRfZ3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tn cm91bmRHcm91cCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5Bbmlt YXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rvcioi KV0KKysJCXB1YmxpYyBCYWNrZ3JvdW5kR3JvdXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgiLCB0eXBlX2lkID0gIm1l dGFfYmFja2dyb3VuZF9pbWFnZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dy b3VuZEltYWdlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tncm91bmRJbWFnZSAoKTsKKysJCXB1Ymxp YyBib29sIGdldF9zdWNjZXNzICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdl dF90ZXh0dXJlICgpOworKwkJcHVibGljIGJvb2wgaXNfbG9hZGVkICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGxvYWRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5k X2ltYWdlX2NhY2hlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kSW1h Z2VDYWNoZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZ3JvdW5kSW1hZ2VDYWNoZSAoKTsKKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkJhY2tncm91bmRJbWFnZUNhY2hlIGdldF9kZWZhdWx0 ICgpOworKwkJcHVibGljIE1ldGEuQmFja2dyb3VuZEltYWdlIGxvYWQgKEdMaWIuRmlsZSBmaWxl KTsKKysJCXB1YmxpYyB2b2lkIHB1cmdlIChHTGliLkZpbGUgZmlsZSk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvYmFycmllci5oIiwgdHlwZV9pZCA9ICJtZXRhX2Jh cnJpZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhcnJpZXIgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgQmFycmllciAoKTsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMg Ym9vbCBpc19hY3RpdmUgKCk7CisrCQlwdWJsaWMgdm9pZCByZWxlYXNlIChNZXRhLkJhcnJpZXJF dmVudCBldmVudCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhcnJp ZXJEaXJlY3Rpb24gZGlyZWN0aW9ucyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29u c3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeDEgeyBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHgyIHsg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5 MSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBp bnQgeTIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGhpdCAoTWV0 YS5CYXJyaWVyRXZlbnQgZXZlbnQpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxlZnQgKE1ldGEu QmFycmllckV2ZW50IGV2ZW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9iYXJyaWVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZXZlbnRfZ2V0 X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBCYXJyaWVyRXZlbnQgewor KwkJcHVibGljIGludCBkdDsKKysJCXB1YmxpYyBkb3VibGUgZHg7CisrCQlwdWJsaWMgZG91Ymxl IGR5OworKwkJcHVibGljIGludCBldmVudF9pZDsKKysJCXB1YmxpYyBib29sIGdyYWJiZWQ7Cisr CQlwdWJsaWMgYm9vbCByZWxlYXNlZDsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1Ymxp YyBkb3VibGUgeDsKKysJCXB1YmxpYyBkb3VibGUgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tZXRhLWN1cnNvci10cmFja2VyLmgiLCB0eXBlX2lkID0gIm1ldGFf Y3Vyc29yX3RyYWNrZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEN1cnNvclRyYWNr ZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgQ3Vyc29yVHJhY2tlciAoKTsKKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBNZXRhLkN1cnNvclRyYWNrZXIgZ2V0X2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkg ZGlzcGxheSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfaG90IChvdXQgaW50IHgsIG91dCBpbnQgeSk7 CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRlciAoaW50IHgsIGludCB5LCBDbHV0dGVyLk1vZGlm aWVyVHlwZSBtb2RzKTsKKysJCXB1YmxpYyBib29sIGdldF9wb2ludGVyX3Zpc2libGUgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3Nwcml0ZSAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9wb2ludGVyX3Zpc2libGUgKGJvb2wgdmlzaWJsZSk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgY3Vyc29yX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX21v dmVkIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB2aXNpYmlsaXR5 X2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvZGlz cGxheS5oIiwgdHlwZV9pZCA9ICJtZXRhX2Rpc3BsYXlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIERpc3BsYXkgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRGlzcGxheSAoKTsKKysJCXB1YmxpYyB2 b2lkIGFkZF9pZ25vcmVkX2Nyb3NzaW5nX3NlcmlhbCAodWxvbmcgc2VyaWFsKTsKKysJCXB1Ymxp YyB1aW50IGFkZF9rZXliaW5kaW5nIChzdHJpbmcgbmFtZSwgR0xpYi5TZXR0aW5ncyBzZXR0aW5n cywgTWV0YS5LZXlCaW5kaW5nRmxhZ3MgZmxhZ3MsIG93bmVkIE1ldGEuS2V5SGFuZGxlckZ1bmMg aGFuZGxlcik7CisrCQlwdWJsaWMgYm9vbCBiZWdpbl9ncmFiX29wIChNZXRhLldpbmRvdyB3aW5k b3csIE1ldGEuR3JhYk9wIG9wLCBib29sIHBvaW50ZXJfYWxyZWFkeV9ncmFiYmVkLCBib29sIGZy YW1lX2FjdGlvbiwgaW50IGJ1dHRvbiwgdWxvbmcgbW9kbWFzaywgdWludDMyIHRpbWVzdGFtcCwg aW50IHJvb3RfeCwgaW50IHJvb3RfeSk7CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9tb3VzZV9tb2Rl ICgpOworKwkJcHVibGljIHZvaWQgY2xvc2UgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGlj IHZvaWQgZW5kX2dyYWJfb3AgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZm9j dXNfZGVmYXVsdF93aW5kb3cgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZnJl ZXplX2tleWJvYXJkICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnJl bnRfbW9uaXRvciAoKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0X2N1cnJlbnRfdGltZSAoKTsKKysJ CXB1YmxpYyB1aW50MzIgZ2V0X2N1cnJlbnRfdGltZV9yb3VuZHRyaXAgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBNZXRhLldpbmRvdyBnZXRfZm9jdXNfd2luZG93ICgpOworKwkJcHVibGljIE1ldGEu R3JhYk9wIGdldF9ncmFiX29wICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2tleWJpbmRpbmdfYWN0 aW9uICh1aW50IGtleWNvZGUsIHVsb25nIG1hc2spOworKwkJcHVibGljIHVpbnQzMiBnZXRfbGFz dF91c2VyX3RpbWUgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X21vbml0b3JfZ2Vv bWV0cnkgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyBib29sIGdldF9tb25pdG9yX2luX2Z1bGxz Y3JlZW4gKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3JfaW5kZXhfZm9y X3JlY3QgKE1ldGEuUmVjdGFuZ2xlIHJlY3QpOworKwkJcHVibGljIGludCBnZXRfbW9uaXRvcl9u ZWlnaGJvcl9pbmRleCAoaW50IHdoaWNoX21vbml0b3IsIE1ldGEuRGlzcGxheURpcmVjdGlvbiBk aXIpOworKwkJcHVibGljIGZsb2F0IGdldF9tb25pdG9yX3NjYWxlIChpbnQgbW9uaXRvcik7Cisr CQlwdWJsaWMgaW50IGdldF9uX21vbml0b3JzICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfcGFk X2FjdGlvbl9sYWJlbCAoQ2x1dHRlci5JbnB1dERldmljZSBwYWQsIE1ldGEuUGFkQWN0aW9uVHlw ZSBhY3Rpb25fdHlwZSwgdWludCBhY3Rpb25fbnVtYmVyKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3By aW1hcnlfbW9uaXRvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuU2VsZWN0aW9uIGdldF9z ZWxlY3Rpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfc2l6ZSAob3V0IGludCB3aWR0aCwgb3V0 IGludCBoZWlnaHQpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Tb3VuZFBsYXllciBnZXRfc291 bmRfcGxheWVyICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X3RhYl9jdXJy ZW50IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1 YmxpYyBHTGliLkxpc3Q8d2VhayBNZXRhLldpbmRvdz4gZ2V0X3RhYl9saXN0IChNZXRhLlRhYkxp c3QgdHlwZSwgTWV0YS5Xb3Jrc3BhY2U/IHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdW5vd25lZCBN ZXRhLldpbmRvdyBnZXRfdGFiX25leHQgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFj ZSB3b3Jrc3BhY2UsIE1ldGEuV2luZG93PyB3aW5kb3csIGJvb2wgYmFja3dhcmQpOworKwkJcHVi bGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2VNYW5hZ2VyIGdldF93b3Jrc3BhY2VfbWFuYWdlciAo KTsKKysJCXB1YmxpYyB1aW50IGdyYWJfYWNjZWxlcmF0b3IgKHN0cmluZyBhY2NlbGVyYXRvciwg TWV0YS5LZXlCaW5kaW5nRmxhZ3MgZmxhZ3MpOworKwkJcHVibGljIGJvb2wgaXNfcG9pbnRlcl9l bXVsYXRpbmdfc2VxdWVuY2UgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZT8gc2VxdWVuY2UpOworKwkJ cHVibGljIGJvb2wgcmVtb3ZlX2tleWJpbmRpbmcgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB2 b2lkIHJlcXVlc3RfcGFkX29zZCAoQ2x1dHRlci5JbnB1dERldmljZSBwYWQsIGJvb2wgZWRpdGlv bl9tb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3IgKE1ldGEuQ3Vyc29yIGN1cnNvcik7 CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfZm9jdXMgKE1ldGEuV2luZG93IHdpbmRvdywgYm9v bCBmb2N1c19mcmFtZSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3 ZWFrIE1ldGEuV2luZG93PiBzb3J0X3dpbmRvd3NfYnlfc3RhY2tpbmcgKEdMaWIuU0xpc3Q8TWV0 YS5XaW5kb3c+IHdpbmRvd3MpOworKwkJcHVibGljIGJvb2wgc3VwcG9ydHNfZXh0ZW5kZWRfYmFy cmllcnMgKCk7CisrCQlwdWJsaWMgdm9pZCB1bmZyZWV6ZV9rZXlib2FyZCAodWludDMyIHRpbWVz dGFtcCk7CisrCQlwdWJsaWMgYm9vbCB1bmdyYWJfYWNjZWxlcmF0b3IgKHVpbnQgYWN0aW9uX2lk KTsKKysJCXB1YmxpYyB2b2lkIHVuZ3JhYl9rZXlib2FyZCAodWludDMyIHRpbWVzdGFtcCk7Cisr CQlwdWJsaWMgdm9pZCB1bnNldF9pbnB1dF9mb2N1cyAodWludDMyIHRpbWVzdGFtcCk7CisrCQlw dWJsaWMgYm9vbCB4c2VydmVyX3RpbWVfaXNfYmVmb3JlICh1aW50MzIgdGltZTEsIHVpbnQzMiB0 aW1lMik7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3cgZm9jdXNfd2luZG93IHsgZ2V0OyB9CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgYWNjZWxlcmF0b3JfYWN0aXZhdGVkICh1aW50IG9iamVjdCwgQ2x1 dHRlci5JbnB1dERldmljZSBwMCwgdWludCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2xv c2luZyAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfdXBkYXRlZCAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBnbF92aWRlb19tZW1vcnlfcHVyZ2VkICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGdyYWJfb3BfYmVnaW4gKE1ldGEuRGlzcGxheSBvYmplY3QsIE1ldGEuV2luZG93 IHAwLCBNZXRhLkdyYWJPcCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9lbmQg KE1ldGEuRGlzcGxheSBvYmplY3QsIE1ldGEuV2luZG93IHAwLCBNZXRhLkdyYWJPcCBwMSk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgaW5fZnVsbHNjcmVlbl9jaGFuZ2VkICgpOworKwkJcHVibGlj IHNpZ25hbCBib29sIG1vZGlmaWVyc19hY2NlbGVyYXRvcl9hY3RpdmF0ZWQgKCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgb3ZlcmxheV9rZXkgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcGFk X21vZGVfc3dpdGNoIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCwgdWludCBwMCwgdWludCBw MSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzdGFja2VkICgpOworKwkJcHVibGljIHNpZ25h bCBib29sIHJlc3RhcnQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd19vc2QgKGludCBv YmplY3QsIHN0cmluZyBwMCwgc3RyaW5nIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdW5vd25lZCBD bHV0dGVyLkFjdG9yPyBzaG93X3BhZF9vc2QgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBHTGli LlNldHRpbmdzIHNldHRpbmdzLCBzdHJpbmcgbGF5b3V0X3BhdGgsIGJvb2wgZWRpdGlvbl9tb2Rl LCBpbnQgbW9uaXRvcl9pZHgpOworKwkJcHVibGljIHNpZ25hbCBib29sIHNob3dfcmVzaXplX3Bv cHVwIChib29sIG9iamVjdCwgTWV0YS5SZWN0YW5nbGUgcDAsIGludCBwMSwgaW50IHAyKTsKKysJ CXB1YmxpYyBzaWduYWwgYm9vbCBzaG93X3Jlc3RhcnRfbWVzc2FnZSAoc3RyaW5nPyBtZXNzYWdl KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfY3JlYXRlZCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfZGVtYW5kc19hdHRlbnRpb24gKE1ldGEuV2lu ZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2VudGVyZWRfbW9uaXRv ciAoaW50IG9iamVjdCwgTWV0YS5XaW5kb3cgcDApOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdp bmRvd19sZWZ0X21vbml0b3IgKGludCBvYmplY3QsIE1ldGEuV2luZG93IHAwKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCB3aW5kb3dfbWFya2VkX3VyZ2VudCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3JrYXJlYXNfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCB4MTFfZGlzcGxheV9jbG9zaW5nICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHgxMV9kaXNwbGF5X29wZW5lZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFfZGlzcGxh eV9zZXR1cCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRh LWRuZC5oIiwgdHlwZV9pZCA9ICJtZXRhX2RuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgRG5kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIERuZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBk bmRfZW50ZXIgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX2xlYXZlICgpOworKwkJcHVi bGljIHNpZ25hbCB2b2lkIGRuZF9wb3NpdGlvbl9jaGFuZ2UgKGludCBvYmplY3QsIGludCBwMCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgRnJhbWUgeworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtaWRsZS1tb25pdG9yLmgi LCB0eXBlX2lkID0gIm1ldGFfaWRsZV9tb25pdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBJZGxlTW9uaXRvciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJZGxlTW9uaXRvciAoKTsKKysJCXB1 YmxpYyB1aW50IGFkZF9pZGxlX3dhdGNoICh1aW50NjQgaW50ZXJ2YWxfbXNlYywgb3duZWQgTWV0 YS5JZGxlTW9uaXRvcldhdGNoRnVuYz8gY2FsbGJhY2spOworKwkJcHVibGljIHVpbnQgYWRkX3Vz ZXJfYWN0aXZlX3dhdGNoIChvd25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5jPyBjYWxsYmFj ayk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5JZGxlTW9uaXRvciBnZXRfY29yZSAo KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLklkbGVNb25pdG9yIGdldF9mb3JfZGV2 aWNlIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSk7CisrCQlwdWJsaWMgaW50NjQgZ2V0X2lk bGV0aW1lICgpOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX3dhdGNoICh1aW50IGlkKTsKKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlIHsg b3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2dldF90 eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgS2V5QmluZGluZyB7CisrCQlw dWJsaWMgdWludCBnZXRfbWFzayAoKTsKKysJCXB1YmxpYyBNZXRhLlZpcnR1YWxNb2RpZmllciBn ZXRfbW9kaWZpZXJzICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOwor KwkJcHVibGljIGJvb2wgaXNfYnVpbHRpbiAoKTsKKysJCXB1YmxpYyBib29sIGlzX3JldmVyc2Vk ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJtZXRhX2tleWJpbmRpbmdzX3NldF9jdXN0b21faGFu ZGxlciIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHNldF9jdXN0b21faGFuZGxlciAoc3RyaW5n IG5hbWUsIG93bmVkIE1ldGEuS2V5SGFuZGxlckZ1bmM/IGhhbmRsZXIpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtbGF1bmNoLWNvbnRleHQuaCIsIHR5cGVf aWQgPSAibWV0YV9sYXVuY2hfY29udGV4dF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg TGF1bmNoQ29udGV4dCA6IEdMaWIuQXBwTGF1bmNoQ29udGV4dCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTGF1bmNoQ29udGV4dCAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW1lc3RhbXAgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJ cHVibGljIHZvaWQgc2V0X3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNwbGF5IHsgb3du ZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVp bnQgdGltZXN0YW1wIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1tb25pdG9yLW1hbmFnZXIuaCIs IHR5cGVfaWQgPSAibWV0YV9tb25pdG9yX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIE1vbml0b3JNYW5hZ2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE1vbml0b3JNYW5hZ2VyICgp OworKwkJcHVibGljIGJvb2wgY2FuX3N3aXRjaF9jb25maWcgKCk7CisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgTWV0YS5Nb25pdG9yTWFuYWdlciBAZ2V0ICgpOworKwkJcHVibGljIHN0YXRpYyBp bnQgZ2V0X2Rpc3BsYXlfY29uZmlndXJhdGlvbl90aW1lb3V0ICgpOworKwkJcHVibGljIGJvb2wg Z2V0X2lzX2J1aWx0aW5fZGlzcGxheV9vbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3Jf Zm9yX2Nvbm5lY3RvciAoc3RyaW5nIGNvbm5lY3Rvcik7CisrCQlwdWJsaWMgTWV0YS5Nb25pdG9y U3dpdGNoQ29uZmlnVHlwZSBnZXRfc3dpdGNoX2NvbmZpZyAoKTsKKysJCXB1YmxpYyB2b2lkIHN3 aXRjaF9jb25maWcgKE1ldGEuTW9uaXRvclN3aXRjaENvbmZpZ1R5cGUgY29uZmlnX3R5cGUpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5CYWNrZW5kIGJhY2tlbmQgeyBv d25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNvbmZpcm1fZGlz cGxheV9jaGFuZ2UgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbW9uaXRvcnNfY2hhbmdlZCAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBtb25pdG9yc19jaGFuZ2VkX2ludGVybmFsICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIHBvd2VyX3NhdmVfbW9kZV9jaGFuZ2VkICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtcGx1Z2luLmgiLCB0eXBlX2lk ID0gIm1ldGFfcGx1Z2luX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBQ bHVnaW4gOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGx1Z2luICgpOworKwkJcHVibGljIGJvb2wgYmVnaW5f bW9kYWwgKE1ldGEuTW9kYWxPcHRpb25zIG9wdGlvbnMsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJ cHVibGljIHZvaWQgY29tcGxldGVfZGlzcGxheV9jaGFuZ2UgKGJvb2wgb2spOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlc3Ryb3kgKE1ldGEuV2lu ZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgZGVzdHJveV9jb21wbGV0ZWQgKE1ldGEu V2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgZW5kX21vZGFsICh1aW50MzIgdGlt ZXN0YW1wKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsK KysJCXB1YmxpYyB1bm93bmVkIE1ldGEuUGx1Z2luSW5mbz8gZ2V0X2luZm8gKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBoaWRlX3RpbGVfcHJldmlldyAoKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGtleWJpbmRpbmdfZmlsdGVyIChN ZXRhLktleUJpbmRpbmcgYmluZGluZyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBraWxsX3N3aXRjaF93b3Jrc3BhY2UgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBraWxsX3dpbmRvd19lZmZlY3RzIChNZXRhLldpbmRvd0FjdG9yIGFj dG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGxvY2F0ZV9wb2lu dGVyICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIG1hbmFnZXJfc2V0X3BsdWdpbl90eXBlIChH TGliLlR5cGUgZ3R5cGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg bWFwIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIG1hcF9jb21wbGV0 ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgbWluaW1pemUgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGlj IHZvaWQgbWluaW1pemVfY29tcGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIE1ldGEuUGx1Z2luSW5mbz8gcGx1 Z2luX2luZm8gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93 X3RpbGVfcHJldmlldyAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLlJlY3RhbmdsZSB0aWxlX3Jl Y3QsIGludCB0aWxlX21vbml0b3JfbnVtYmVyKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIHNob3dfd2luZG93X21lbnUgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5X aW5kb3dNZW51VHlwZSBtZW51LCBpbnQgeCwgaW50IHkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd193aW5kb3dfbWVudV9mb3JfcmVjdCAoTWV0YS5XaW5kb3cg d2luZG93LCBNZXRhLldpbmRvd01lbnVUeXBlIG1lbnUsIE1ldGEuUmVjdGFuZ2xlIHJlY3QpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2l6ZV9jaGFuZ2UgKE1ldGEu V2luZG93QWN0b3IgYWN0b3IsIE1ldGEuU2l6ZUNoYW5nZSB3aGljaF9jaGFuZ2UsIE1ldGEuUmVj dGFuZ2xlIG9sZF9mcmFtZV9yZWN0LCBNZXRhLlJlY3RhbmdsZSBvbGRfYnVmZmVyX3JlY3QpOwor KwkJcHVibGljIHZvaWQgc2l6ZV9jaGFuZ2VfY29tcGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFj dG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNpemVfY2hhbmdl ZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBzdGFydCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIHN3aXRjaF93b3Jrc3BhY2UgKGludCBmcm9tLCBpbnQgdG8sIE1ldGEuTW90aW9uRGlyZWN0 aW9uIGRpcmVjdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzd2l0Y2hfd29ya3NwYWNlX2NvbXBsZXRl ZCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVubWluaW1pemUg KE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgdW5taW5pbWl6ZV9jb21w bGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIGJvb2wgeGV2ZW50X2ZpbHRlciAoWC5FdmVudCBldmVudCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xs ZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9yZW1vdGVfYWNjZXNzX2NvbnRyb2xsZXJfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFJlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgUmVtb3RlQWNjZXNzQ29udHJvbGxlciAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBu ZXdfaGFuZGxlIChNZXRhLlJlbW90ZUFjY2Vzc0hhbmRsZSBvYmplY3QpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9sbGVy LmgiLCB0eXBlX2lkID0gIm1ldGFfcmVtb3RlX2FjY2Vzc19oYW5kbGVfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIFJlbW90ZUFjY2Vzc0hhbmRsZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBSZW1v dGVBY2Nlc3NIYW5kbGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0b3AgKCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgc3RvcHBlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxlY3Rpb24gOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2VsZWN0aW9u IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJsaWMgR0xpYi5MaXN0PHN0cmluZz4gZ2V0 X21pbWV0eXBlcyAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9vd25lciAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlLCBNZXRh LlNlbGVjdGlvblNvdXJjZSBvd25lcik7CisrCQlwdWJsaWMgYXN5bmMgYm9vbCB0cmFuc2Zlcl9h c3luYyAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlLCBzdHJpbmcgbWltZXR5cGUs IHNzaXplX3Qgc2l6ZSwgR0xpYi5PdXRwdXRTdHJlYW0gb3V0cHV0LCBHTGliLkNhbmNlbGxhYmxl PyBjYW5jZWxsYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdm9pZCB1bnNldF9v d25lciAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlLCBNZXRhLlNlbGVjdGlvblNv dXJjZSBvd25lcik7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgb3duZXJfY2hhbmdlZCAodWludCBv YmplY3QsIE1ldGEuU2VsZWN0aW9uU291cmNlIHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3NvdXJj ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2VsZWN0aW9uU291cmNlIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFNlbGVjdGlvblNvdXJjZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuTGlz dDxzdHJpbmc+IGdldF9taW1ldHlwZXMgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hY3RpdmUgKCk7 CisrCQlwdWJsaWMgdmlydHVhbCBhc3luYyBHTGliLklucHV0U3RyZWFtIHJlYWRfYXN5bmMgKHN0 cmluZyBtaW1ldHlwZSwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUpIHRocm93cyBHTGli LkVycm9yOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGVkICgpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZGVhY3RpdmF0ZWQgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVj dGlvbl9zb3VyY2VfbWVtb3J5X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxlY3Rp b25Tb3VyY2VNZW1vcnkgOiBNZXRhLlNlbGVjdGlvblNvdXJjZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJNZXRhU2VsZWN0aW9uU291cmNlKiIp XQorKwkJcHVibGljIFNlbGVjdGlvblNvdXJjZU1lbW9yeSAoc3RyaW5nIG1pbWV0eXBlLCBHTGli LkJ5dGVzIGNvbnRlbnQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtc2V0dGluZ3MuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJ cHVibGljIGNsYXNzIFNldHRpbmdzIHsKKysJCXB1YmxpYyBpbnQgZ2V0X2ZvbnRfZHBpICgpOwor KwkJcHVibGljIGludCBnZXRfdWlfc2NhbGluZ19mYWN0b3IgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgcmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hh ZG93X3JlZiIsIHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5j dGlvbiA9ICJtZXRhX3NoYWRvd191bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNz IFNoYWRvdyB7CisrCQlwdWJsaWMgdm9pZCBnZXRfYm91bmRzIChpbnQgd2luZG93X3gsIGludCB3 aW5kb3dfeSwgaW50IHdpbmRvd193aWR0aCwgaW50IHdpbmRvd19oZWlnaHQsIENhaXJvLlJlY3Rh bmdsZUludCBib3VuZHMpOworKwkJcHVibGljIHZvaWQgcGFpbnQgKENvZ2wuRnJhbWVidWZmZXIg ZnJhbWVidWZmZXIsIGludCB3aW5kb3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dpZHRo LCBpbnQgd2luZG93X2hlaWdodCwgdWludDggb3BhY2l0eSwgQ2Fpcm8uUmVnaW9uPyBjbGlwLCBi b29sIGNsaXBfc3RyaWN0bHkpOworKwkJcHVibGljIE1ldGEuU2hhZG93IEByZWYgKCk7CisrCQlw dWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tZXRhLXNoYWRvdy1mYWN0b3J5LmgiLCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X2ZhY3Rv cnlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRvd0ZhY3RvcnkgOiBHTGliLk9i amVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw dWJsaWMgU2hhZG93RmFjdG9yeSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLlNo YWRvd0ZhY3RvcnkgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3dQYXJhbXMg Z2V0X3BhcmFtcyAoc3RyaW5nIGNsYXNzX25hbWUsIGJvb2wgZm9jdXNlZCk7CisrCQlwdWJsaWMg TWV0YS5TaGFkb3cgZ2V0X3NoYWRvdyAoTWV0YS5XaW5kb3dTaGFwZSBzaGFwZSwgaW50IHdpZHRo LCBpbnQgaGVpZ2h0LCBzdHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2VkKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9wYXJhbXMgKHN0cmluZyBjbGFzc19uYW1lLCBib29sIGZvY3VzZWQsIE1ldGEu U2hhZG93UGFyYW1zIEBwYXJhbXMpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zaGFwZWQtdGV4 dHVyZS5oIiwgdHlwZV9pZCA9ICJtZXRhX3NoYXBlZF90ZXh0dXJlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBTaGFwZWRUZXh0dXJlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29udGVu dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgU2hhcGVkVGV4dHVyZSAoKTsKKysJCXB1YmxpYyBDYWlyby5TdXJmYWNlPyBnZXRfaW1h Z2UgKENhaXJvLlJlY3RhbmdsZUludD8gY2xpcCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRl eHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3JlYXRlX21pcG1hcHMg KGJvb2wgY3JlYXRlX21pcG1hcHMpOworKwkJcHVibGljIHZvaWQgc2V0X21hc2tfdGV4dHVyZSAo Q29nbC5UZXh0dXJlIG1hc2tfdGV4dHVyZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3BhcXVlX3Jl Z2lvbiAob3duZWQgQ2Fpcm8uUmVnaW9uIG9wYXF1ZV9yZWdpb24pOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHNpemVfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tZXRhLXNvdW5kLXBsYXllci5oIiwgdHlwZV9pZCA9ICJtZXRhX3NvdW5kX3BsYXll cl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU291bmRQbGF5ZXIgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgU291bmRQbGF5ZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwbGF5X2Zyb21fZmlsZSAoR0xp Yi5GaWxlIGZpbGUsIHN0cmluZyBkZXNjcmlwdGlvbiwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2Vs bGFibGUgPSBudWxsKTsKKysJCXB1YmxpYyB2b2lkIHBsYXlfZnJvbV90aGVtZSAoc3RyaW5nIG5h bWUsIHN0cmluZyBkZXNjcmlwdGlvbiwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUgPSBu dWxsKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXN0YWdl LmgiLCB0eXBlX2lkID0gIm1ldGFfc3RhZ2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IFN0YWdlIDogQ2x1dHRlci5TdGFnZSwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFi bGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlICgpOwor KwkJcHVibGljIHN0YXRpYyBib29sIGlzX2ZvY3VzZWQgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY3RvcnNfcGFpbnRlZCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXN0YXJ0dXAtbm90aWZpY2F0aW9uLmgiLCB0 eXBlX2lkID0gIm1ldGFfc3RhcnR1cF9ub3RpZmljYXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIFN0YXJ0dXBOb3RpZmljYXRpb24gOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhcnR1cE5v dGlmaWNhdGlvbiAoKTsKKysJCXB1YmxpYyBNZXRhLkxhdW5jaENvbnRleHQgY3JlYXRlX2xhdW5j aGVyICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IGRp c3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNo YW5nZWQgKHZvaWQqIG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3N0YXJ0dXBfc2VxdWVuY2VfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFN0YXJ0dXBTZXF1ZW5jZSA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBT dGFydHVwU2VxdWVuY2UgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2FwcGxpY2F0 aW9uX2lkICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2NvbXBsZXRlZCAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfaWNvbl9uYW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCXB1 YmxpYyB1aW50NjQgZ2V0X3RpbWVzdGFtcCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfd21jbGFzcyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3dvcmtzcGFjZSAoKTsKKysJCXB1Ymxp YyBzdHJpbmcgYXBwbGljYXRpb25faWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0 cmluZyBpY29uX25hbWUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBpZCB7 IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIHVpbnQ2NCB0aW1lc3RhbXAgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ cHVibGljIHN0cmluZyB3bWNsYXNzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBpbnQg d29ya3NwYWNlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIGNvbXBsZXRlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3RoZW1lLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisr CXB1YmxpYyBjbGFzcyBUaGVtZSB7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3dpbmRvdy5oIiwgdHlwZV9pZCA9ICJtZXRh X3dpbmRvd19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgV2luZG93IDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFdpbmRvdyAoKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlICh1aW50 MzIgY3VycmVudF90aW1lKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlX3dpdGhfd29ya3NwYWNl ICh1aW50MzIgY3VycmVudF90aW1lLCBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVi bGljIGJvb2wgYWxsb3dzX21vdmUgKCk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfcmVzaXplICgp OworKwkJcHVibGljIHZvaWQgYmVnaW5fZ3JhYl9vcCAoTWV0YS5HcmFiT3Agb3AsIGJvb2wgZnJh bWVfYWN0aW9uLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIGNhbl9jbG9zZSAo KTsKKysJCXB1YmxpYyBib29sIGNhbl9tYXhpbWl6ZSAoKTsKKysJCXB1YmxpYyBib29sIGNhbl9t aW5pbWl6ZSAoKTsKKysJCXB1YmxpYyBib29sIGNhbl9zaGFkZSAoKTsKKysJCXB1YmxpYyB2b2lk IGNoYW5nZV93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMg dm9pZCBjaGFuZ2Vfd29ya3NwYWNlX2J5X2luZGV4IChpbnQgc3BhY2VfaW5kZXgsIGJvb2wgYXBw ZW5kKTsKKysJCXB1YmxpYyB2b2lkIGNoZWNrX2FsaXZlICh1aW50MzIgdGltZXN0YW1wKTsKKysJ CXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBjbGllbnRfcmVjdF90b19mcmFtZV9yZWN0IChNZXRhLlJl Y3RhbmdsZSBjbGllbnRfcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBjb21wdXRlX2dyb3VwICgpOwor KwkJcHVibGljIHZvaWQgQGRlbGV0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5v d25lZCBNZXRhLldpbmRvdyBmaW5kX3Jvb3RfYW5jZXN0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBm b2N1cyAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBmb3JlYWNoX2FuY2VzdG9y IChNZXRhLldpbmRvd0ZvcmVhY2hGdW5jIGZ1bmMpOworKwkJcHVibGljIHZvaWQgZm9yZWFjaF90 cmFuc2llbnQgKE1ldGEuV2luZG93Rm9yZWFjaEZ1bmMgZnVuYyk7CisrCQlwdWJsaWMgTWV0YS5S ZWN0YW5nbGUgZnJhbWVfcmVjdF90b19jbGllbnRfcmVjdCAoTWV0YS5SZWN0YW5nbGUgZnJhbWVf cmVjdCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X2J1ZmZlcl9yZWN0ICgpOworKwkJ cHVibGljIHVub3duZWQgc3RyaW5nIGdldF9jbGllbnRfbWFjaGluZSAoKTsKKysJCXB1YmxpYyBN ZXRhLldpbmRvd0NsaWVudFR5cGUgZ2V0X2NsaWVudF90eXBlICgpOworKwkJcHVibGljIHVub3du ZWQgR0xpYi5PYmplY3QgZ2V0X2NvbXBvc2l0b3JfcHJpdmF0ZSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIHN0cmluZyBnZXRfZGVzY3JpcHRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRp c3BsYXkgZ2V0X2Rpc3BsYXkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDYWlyby5SZWdpb24/IGdl dF9mcmFtZV9ib3VuZHMgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X2ZyYW1lX3Jl Y3QgKCk7CisrCQlwdWJsaWMgTWV0YS5GcmFtZVR5cGUgZ2V0X2ZyYW1lX3R5cGUgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19hcHBfbWVudV9vYmplY3RfcGF0aCAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX2FwcGxpY2F0aW9uX2lkICgpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfYXBwbGljYXRpb25fb2JqZWN0X3BhdGggKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19tZW51YmFyX29iamVjdF9wYXRoICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfdGhlbWVfdmFyaWFudCAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX3VuaXF1ZV9idXNfbmFtZSAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX3dpbmRvd19vYmplY3RfcGF0aCAoKTsKKysJCXB1Ymxp YyBib29sIGdldF9pY29uX2dlb21ldHJ5IChvdXQgTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlw dWJsaWMgdWludDY0IGdldF9pZCAoKTsKKysJCXB1YmxpYyBNZXRhLlN0YWNrTGF5ZXIgZ2V0X2xh eWVyICgpOworKwkJcHVibGljIE1ldGEuTWF4aW1pemVGbGFncyBnZXRfbWF4aW1pemVkICgpOwor KwkJcHVibGljIGludCBnZXRfbW9uaXRvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfbXV0dGVyX2hpbnRzICgpOworKwkJcHVibGljIGludCBnZXRfcGlkICgpOworKwkJcHVibGlj IHVub3duZWQgc3RyaW5nIGdldF9yb2xlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdl dF9zYW5kYm94ZWRfYXBwX2lkICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3N0YWJsZV9zZXF1ZW5j ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfc3RhcnR1cF9pZCAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIE1ldGEuV2luZG93PyBnZXRfdGlsZV9tYXRjaCAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfdGl0bGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRv dyBnZXRfdHJhbnNpZW50X2ZvciAoKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0X3VzZXJfdGltZSAo KTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd1R5cGUgZ2V0X3dpbmRvd190eXBlICgpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF93bV9jbGFzcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfd21fY2xhc3NfaW5zdGFuY2UgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUg Z2V0X3dvcmtfYXJlYV9hbGxfbW9uaXRvcnMgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUg Z2V0X3dvcmtfYXJlYV9jdXJyZW50X21vbml0b3IgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5n bGUgZ2V0X3dvcmtfYXJlYV9mb3JfbW9uaXRvciAoaW50IHdoaWNoX21vbml0b3IpOworKwkJcHVi bGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2UgZ2V0X3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBY LldpbmRvdyBnZXRfeHdpbmRvdyAoKTsKKysJCXB1YmxpYyB2b2lkIGdyb3VwX2xlYWRlcl9jaGFu Z2VkICgpOworKwkJcHVibGljIGJvb2wgaGFzX2ZvY3VzICgpOworKwkJcHVibGljIGJvb2wgaXNf YWJvdmUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hbHdheXNfb25fYWxsX3dvcmtzcGFjZXMgKCk7 CisrCQlwdWJsaWMgYm9vbCBpc19hbmNlc3Rvcl9vZl90cmFuc2llbnQgKE1ldGEuV2luZG93IHRy YW5zaWVudCk7CisrCQlwdWJsaWMgYm9vbCBpc19hdHRhY2hlZF9kaWFsb2cgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19jbGllbnRfZGVjb3JhdGVkICgpOworKwkJcHVibGljIGJvb2wgaXNfZnVsbHNj cmVlbiAoKTsKKysJCXB1YmxpYyBib29sIGlzX2hpZGRlbiAoKTsKKysJCXB1YmxpYyBib29sIGlz X21vbml0b3Jfc2l6ZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19vbl9hbGxfd29ya3NwYWNlcyAo KTsKKysJCXB1YmxpYyBib29sIGlzX29uX3ByaW1hcnlfbW9uaXRvciAoKTsKKysJCXB1YmxpYyBi b29sIGlzX292ZXJyaWRlX3JlZGlyZWN0ICgpOworKwkJcHVibGljIGJvb2wgaXNfcmVtb3RlICgp OworKwkJcHVibGljIGJvb2wgaXNfc2NyZWVuX3NpemVkICgpOworKwkJcHVibGljIGJvb2wgaXNf c2hhZGVkICgpOworKwkJcHVibGljIGJvb2wgaXNfc2tpcF90YXNrYmFyICgpOworKwkJcHVibGlj IHZvaWQga2lsbCAoKTsKKysJCXB1YmxpYyBib29sIGxvY2F0ZWRfb25fd29ya3NwYWNlIChNZXRh LldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIHZvaWQgbG93ZXIgKCk7CisrCQlwdWJs aWMgdm9pZCBtYWtlX2Fib3ZlICgpOworKwkJcHVibGljIHZvaWQgbWFrZV9mdWxsc2NyZWVuICgp OworKwkJcHVibGljIHZvaWQgbWF4aW1pemUgKE1ldGEuTWF4aW1pemVGbGFncyBkaXJlY3Rpb25z KTsKKysJCXB1YmxpYyB2b2lkIG1pbmltaXplICgpOworKwkJcHVibGljIHZvaWQgbW92ZV9mcmFt ZSAoYm9vbCB1c2VyX29wLCBpbnQgcm9vdF94X253LCBpbnQgcm9vdF95X253KTsKKysJCXB1Ymxp YyB2b2lkIG1vdmVfcmVzaXplX2ZyYW1lIChib29sIHVzZXJfb3AsIGludCByb290X3hfbncsIGlu dCByb290X3lfbncsIGludCB3LCBpbnQgaCk7CisrCQlwdWJsaWMgdm9pZCBtb3ZlX3RvX21vbml0 b3IgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHJhaXNlICgpOworKwkJcHVibGljIGJv b2wgcmVxdWVzdGVkX2J5cGFzc19jb21wb3NpdG9yICgpOworKwkJcHVibGljIGJvb2wgcmVxdWVz dGVkX2RvbnRfYnlwYXNzX2NvbXBvc2l0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29tcG9z aXRvcl9wcml2YXRlIChHTGliLk9iamVjdCBwcml2KTsKKysJCXB1YmxpYyB2b2lkIHNldF9kZW1h bmRzX2F0dGVudGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pY29uX2dlb21ldHJ5IChNZXRh LlJlY3RhbmdsZT8gcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzaGFkZSAodWludDMyIHRpbWVzdGFt cCk7CisrCQlwdWJsaWMgdm9pZCBzaG92ZV90aXRsZWJhcl9vbnNjcmVlbiAoKTsKKysJCXB1Ymxp YyBib29sIHNob3dpbmdfb25faXRzX3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNodXRk b3duX2dyb3VwICgpOworKwkJcHVibGljIHZvaWQgc3RpY2sgKCk7CisrCQlwdWJsaWMgYm9vbCB0 aXRsZWJhcl9pc19vbnNjcmVlbiAoKTsKKysJCXB1YmxpYyB2b2lkIHVubWFrZV9hYm92ZSAoKTsK KysJCXB1YmxpYyB2b2lkIHVubWFrZV9mdWxsc2NyZWVuICgpOworKwkJcHVibGljIHZvaWQgdW5t YXhpbWl6ZSAoTWV0YS5NYXhpbWl6ZUZsYWdzIGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQg dW5taW5pbWl6ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgp OworKwkJcHVibGljIHZvaWQgdW5zaGFkZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMg dm9pZCB1bnN0aWNrICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBh Ym92ZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBhcHBl YXJzX2ZvY3VzZWQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgZGVjb3JhdGVkIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBi b29sIGRlbWFuZHNfYXR0ZW50aW9uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIGZ1bGxzY3JlZW4geyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX2Fw cF9tZW51X29iamVjdF9wYXRoIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19hcHBsaWNh dGlvbl9pZCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfYXBwbGljYXRpb25fb2JqZWN0 X3BhdGggeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX21lbnViYXJfb2JqZWN0X3BhdGgg eyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX3VuaXF1ZV9idXNfbmFtZSB7IGdldDsgfQor KwkJcHVibGljIHN0cmluZyBndGtfd2luZG93X29iamVjdF9wYXRoIHsgZ2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB2b2lkKiBpY29uIHsgZ2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG1heGltaXplZF9ob3Jpem9udGFsbHkgeyBnZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWF4aW1pemVkX3ZlcnRp Y2FsbHkgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHZvaWQqIG1p bmlfaWNvbiB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBt aW5pbWl6ZWQgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgbXV0dGVyX2hpbnRzIHsgZ2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG9uX2FsbF93b3Jrc3BhY2Vz IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHJlc2l6ZWFi bGUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2tpcF90 YXNrYmFyIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHRpdGxlIHsgZ2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHVyZ2VudCB7IGdldDsgfQorKwkJcHVibGlj IHVpbnQgdXNlcl90aW1lIHsgZ2V0OyB9CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dUeXBlIHdpbmRv d190eXBlIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHdtX2NsYXNzIHsgZ2V0OyB9CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgcG9zaXRpb25fY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCByYWlzZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd24gKCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgc2l6ZV9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHVu bWFuYWdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VfY2hhbmdlZCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1hY3Rv ci5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgYWJzdHJhY3QgY2xhc3MgV2luZG93QWN0b3IgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVt ZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2Ny aXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgV2luZG93QWN0b3IgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uU3VyZmFjZT8gZ2V0 X2ltYWdlIChDYWlyby5SZWN0YW5nbGVJbnQ/IGNsaXApOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5XaW5kb3cgZ2V0X21ldGFfd2luZG93ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5TaGFw ZWRUZXh0dXJlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGljIGJvb2wgaXNfZGVzdHJveWVkICgp OworKwkJcHVibGljIHZvaWQgc3luY192aXNpYmlsaXR5ICgpOworKwkJcHVibGljIE1ldGEuV2lu ZG93IG1ldGFfd2luZG93IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBkYW1hZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGVmZmVjdHNfY29tcGxldGVkICgp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIGZpcnN0X2ZyYW1lICgpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHRoYXdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tZXRhLXdpbmRvdy1ncm91cC5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19ncm91cF9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgV2luZG93R3JvdXAgOiBDbHV0dGVyLkFjdG9yLCBB dGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENs dXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93R3JvdXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13aW5kb3ctc2hhcGUuaCIsIHJlZl9mdW5jdGlvbiA9 ICJtZXRhX3dpbmRvd19zaGFwZV9yZWYiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X3NoYXBlX2dl dF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAibWV0YV93aW5kb3dfc2hhcGVfdW5yZWYiKV0K KysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBXaW5kb3dTaGFwZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgV2luZG93U2hhcGUgKENh aXJvLlJlZ2lvbiByZWdpb24pOworKwkJcHVibGljIGJvb2wgZXF1YWwgKE1ldGEuV2luZG93U2hh cGUgc2hhcGVfYik7CisrCQlwdWJsaWMgdm9pZCBnZXRfYm9yZGVycyAoaW50IGJvcmRlcl90b3As IGludCBib3JkZXJfcmlnaHQsIGludCBib3JkZXJfYm90dG9tLCBpbnQgYm9yZGVyX2xlZnQpOwor KwkJcHVibGljIHVpbnQgaGFzaCAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd1NoYXBlIEByZWYg KCk7CisrCQlwdWJsaWMgQ2Fpcm8uUmVnaW9uIHRvX3JlZ2lvbiAoaW50IGNlbnRlcl93aWR0aCwg aW50IGNlbnRlcl9oZWlnaHQpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvd29ya3NwYWNlLmgiLCB0eXBlX2lkID0gIm1l dGFfd29ya3NwYWNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXb3Jrc3BhY2UgOiBH TGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwcm90ZWN0ZWQgV29ya3NwYWNlICgpOworKwkJcHVibGljIHZvaWQgYWN0aXZhdGUgKHVp bnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgYWN0aXZhdGVfd2l0aF9mb2N1cyAoTWV0 YS5XaW5kb3cgZm9jdXNfdGhpcywgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25l ZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3BsYXkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldv cmtzcGFjZSBnZXRfbmVpZ2hib3IgKE1ldGEuTW90aW9uRGlyZWN0aW9uIGRpcmVjdGlvbik7Cisr CQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9hbGxfbW9uaXRvcnMgKCk7Cisr CQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9mb3JfbW9uaXRvciAoaW50IHdo aWNoX21vbml0b3IpOworKwkJcHVibGljIGludCBpbmRleCAoKTsKKysJCXB1YmxpYyBHTGliLkxp c3Q8d2VhayBNZXRhLldpbmRvdz4gbGlzdF93aW5kb3dzICgpOworKwkJcHVibGljIHZvaWQgc2V0 X2J1aWx0aW5fc3RydXRzIChHTGliLlNMaXN0PE1ldGEuU3RydXQ/PiBzdHJ1dHMpOworKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCBuX3dpbmRvd3MgeyBnZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgd29ya3NwYWNlX2luZGV4IHsgZ2V0OyB9 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2FkZGVkIChNZXRhLldpbmRvdyBvYmplY3Qp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19yZW1vdmVkIChNZXRhLldpbmRvdyBvYmpl Y3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd29ya3Nw YWNlLW1hbmFnZXIuaCIsIHR5cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfbWFuYWdlcl9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgV29ya3NwYWNlTWFuYWdlciA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBXb3Jrc3BhY2VNYW5hZ2VyICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2Ug YXBwZW5kX25ld193b3Jrc3BhY2UgKGJvb2wgYWN0aXZhdGUsIHVpbnQzMiB0aW1lc3RhbXApOwor KwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2UgZ2V0X2FjdGl2ZV93b3Jrc3BhY2UgKCk7 CisrCQlwdWJsaWMgaW50IGdldF9hY3RpdmVfd29ya3NwYWNlX2luZGV4ICgpOworKwkJcHVibGlj IGludCBnZXRfbl93b3Jrc3BhY2VzICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3Bh Y2U/IGdldF93b3Jrc3BhY2VfYnlfaW5kZXggKGludCBpbmRleCk7CisrCQlwdWJsaWMgdm9pZCBv dmVycmlkZV93b3Jrc3BhY2VfbGF5b3V0IChNZXRhLkRpc3BsYXlDb3JuZXIgc3RhcnRpbmdfY29y bmVyLCBib29sIHZlcnRpY2FsX2xheW91dCwgaW50IG5fcm93cywgaW50IG5fY29sdW1ucyk7Cisr CQlwdWJsaWMgdm9pZCByZW1vdmVfd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2Us IHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgcmVvcmRlcl93b3Jrc3BhY2UgKE1l dGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgaW50IG5ld19pbmRleCk7CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBpbnQgbGF5b3V0X2NvbHVtbnMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGludCBsYXlvdXRfcm93cyB7IGdldDsgfQorKwkJcHVibGlj IGludCBuX3dvcmtzcGFjZXMgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY3RpdmVf d29ya3NwYWNlX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd2luZ19kZXNr dG9wX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX2FkZGVkIChp bnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VfcmVtb3ZlZCAoaW50 IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX3N3aXRjaGVkIChpbnQg b2JqZWN0LCBpbnQgcDAsIE1ldGEuTW90aW9uRGlyZWN0aW9uIHAxKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCB3b3Jrc3BhY2VzX3Jlb3JkZXJlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tZXRhLXgxMS1kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1ldGFfeDEx X2Rpc3BsYXlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFgxMURpc3BsYXkgOiBHTGli Lk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgWDExRGlzcGxheSAoKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFyX3N0YWdlX2lu cHV0X3JlZ2lvbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RhbWFnZV9ldmVudF9iYXNlICgpOwor KwkJcHVibGljIGludCBnZXRfc2NyZWVuX251bWJlciAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3No YXBlX2V2ZW50X2Jhc2UgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfc2hhcGUgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY21fc2VsZWN0aW9uICgpOworKwkJcHVibGljIHZvaWQgc2V0X3N0YWdlX2lu cHV0X3JlZ2lvbiAoWC5Yc2VydmVyUmVnaW9uIHJlZ2lvbik7CisrCQlwdWJsaWMgYm9vbCB4d2lu ZG93X2lzX2Ffbm9fZm9jdXNfd2luZG93IChYLldpbmRvdyB4d2luZG93KTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIiwgdHlwZV9j bmFtZSA9ICJNZXRhQ2xvc2VEaWFsb2dJbnRlcmZhY2UiLCB0eXBlX2lkID0gIm1ldGFfY2xvc2Vf ZGlhbG9nX2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ2xvc2VEaWFsb2cgOiBH TGliLk9iamVjdCB7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBmb2N1cyAoKTsKKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc192aXNpYmxlICgpOwor KwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGFic3RyYWN0IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsgY29uc3Ry dWN0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNwb25zZSAo TWV0YS5DbG9zZURpYWxvZ1Jlc3BvbnNlIHJlc3BvbnNlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWluaGliaXQtc2hvcnRjdXRzLWRpYWxvZy5oIiwgdHlw ZV9jbmFtZSA9ICJNZXRhSW5oaWJpdFNob3J0Y3V0c0RpYWxvZ0ludGVyZmFjZSIsIHR5cGVfaWQg PSAibWV0YV9pbmhpYml0X3Nob3J0Y3V0c19kaWFsb2dfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGludGVyZmFjZSBJbmhpYml0U2hvcnRjdXRzRGlhbG9nIDogR0xpYi5PYmplY3QgeworKwkJcHVi bGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cg KCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBhYnN0cmFjdCBNZXRhLldpbmRv dyB3aW5kb3cgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgcmVzcG9uc2UgKE1ldGEuSW5oaWJpdFNob3J0Y3V0c0RpYWxvZ1Jl c3BvbnNlIHJlc3BvbnNlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBCdXR0b25M YXlvdXQgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2Vh ayBNZXRhLkJ1dHRvbkZ1bmN0aW9uIGxlZnRfYnV0dG9uc1s0XTsKKysJCVtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgYm9vbCBsZWZ0X2J1dHRvbnNfaGFzX3Nw YWNlcls0XTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdl YWsgTWV0YS5CdXR0b25GdW5jdGlvbiByaWdodF9idXR0b25zWzRdOworKwkJW0NDb2RlIChhcnJh eV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBib29sIHJpZ2h0X2J1dHRvbnNfaGFz X3NwYWNlcls0XTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBFZGdlIHsKKysJCXB1 YmxpYyBNZXRhLlJlY3RhbmdsZSByZWN0OworKwkJcHVibGljIE1ldGEuU2lkZSBzaWRlX3R5cGU7 CisrCQlwdWJsaWMgTWV0YS5FZGdlVHlwZSBlZGdlX3R5cGU7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBzdHJ1Y3QgRnJhbWVCb3JkZXJzIHsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIHZpc2libGU7 CisrCQlwdWJsaWMgR3RrLkJvcmRlciBpbnZpc2libGU7CisrCQlwdWJsaWMgR3RrLkJvcmRlciB0 b3RhbDsKKysJCXB1YmxpYyB2b2lkIGNsZWFyICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtcGx1Z2luLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ cHVibGljIHN0cnVjdCBQbHVnaW5JbmZvIHsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBuYW1lOwor KwkJcHVibGljIHdlYWsgc3RyaW5nIHZlcnNpb247CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgYXV0 aG9yOworKwkJcHVibGljIHdlYWsgc3RyaW5nIGxpY2Vuc2U7CisrCQlwdWJsaWMgd2VhayBzdHJp bmcgZGVzY3JpcHRpb247CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGx1Z2luVmVy c2lvbiB7CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX21ham9yOworKwkJcHVibGljIHVpbnQgdmVy c2lvbl9taW5vcjsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fbWljcm87CisrCQlwdWJsaWMgdWlu dCB2ZXJzaW9uX2FwaTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAi Z19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJtZXRhX3JlY3RhbmdsZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgc3RydWN0IFJlY3RhbmdsZSB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMg aW50IHk7CisrCQlwdWJsaWMgaW50IHdpZHRoOworKwkJcHVibGljIGludCBoZWlnaHQ7CisrCQlw dWJsaWMgaW50IGFyZWEgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19yZWN0IChNZXRhLlJl Y3RhbmdsZSBpbm5lcl9yZWN0KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZT8gY29weSAoKTsK KysJCXB1YmxpYyBib29sIGNvdWxkX2ZpdF9yZWN0IChNZXRhLlJlY3RhbmdsZSBpbm5lcl9yZWN0 KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChNZXRhLlJlY3RhbmdsZSBzcmMyKTsKKysJCXB1Ymxp YyB2b2lkIGZyZWUgKCk7CisrCQlwdWJsaWMgYm9vbCBob3Jpel9vdmVybGFwIChNZXRhLlJlY3Rh bmdsZSByZWN0Mik7CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3QgKE1ldGEuUmVjdGFuZ2xlIHNy YzIsIG91dCBNZXRhLlJlY3RhbmdsZSBkZXN0KTsKKysJCXB1YmxpYyBib29sIG92ZXJsYXAgKE1l dGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSB1bmlvbiAoTWV0 YS5SZWN0YW5nbGUgcmVjdDIpOworKwkJcHVibGljIGJvb2wgdmVydF9vdmVybGFwIChNZXRhLlJl Y3RhbmdsZSByZWN0Mik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2hhZG93UGFy YW1zIHsKKysJCXB1YmxpYyBpbnQgcmFkaXVzOworKwkJcHVibGljIGludCB0b3BfZmFkZTsKKysJ CXB1YmxpYyBpbnQgeF9vZmZzZXQ7CisrCQlwdWJsaWMgaW50IHlfb2Zmc2V0OworKwkJcHVibGlj IHVpbnQ4IG9wYWNpdHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU3RydXQgewor KwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHJlY3Q7CisrCQlwdWJsaWMgTWV0YS5TaWRlIHNpZGU7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZp eCA9ICJNRVRBX0JBUlJJRVJfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2Rp cmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEJhcnJpZXJE aXJlY3Rpb24geworKwkJUE9TSVRJVkVfWCwKKysJCVBPU0lUSVZFX1ksCisrCQlORUdBVElWRV9Y LAorKwkJTkVHQVRJVkVfWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9CVVRUT05fRlVOQ1RJT05fIiwgdHlwZV9pZCA9ICJt ZXRhX2J1dHRvbl9mdW5jdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBCdXR0b25G dW5jdGlvbiB7CisrCQlNRU5VLAorKwkJTUlOSU1JWkUsCisrCQlNQVhJTUlaRSwKKysJCUNMT1NF LAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9DTE9TRV9ESUFMT0dfUkVTUE9OU0VfIiwgdHlwZV9pZCA9ICJt ZXRhX2Nsb3NlX2RpYWxvZ19yZXNwb25zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBD bG9zZURpYWxvZ1Jlc3BvbnNlIHsKKysJCVdBSVQsCisrCQlGT1JDRV9DTE9TRQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9D T01QX0VGRkVDVF8iLCB0eXBlX2lkID0gIm1ldGFfY29tcF9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGVudW0gQ29tcEVmZmVjdCB7CisrCQlDUkVBVEUsCisrCQlVTk1JTklNSVpFLAor KwkJREVTVFJPWSwKKysJCU1JTklNSVpFLAorKwkJTk9ORQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9DVVJTT1JfIiwgdHlw ZV9pZCA9ICJtZXRhX2N1cnNvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDdXJzb3Ig eworKwkJTk9ORSwKKysJCURFRkFVTFQsCisrCQlOT1JUSF9SRVNJWkUsCisrCQlTT1VUSF9SRVNJ WkUsCisrCQlXRVNUX1JFU0laRSwKKysJCUVBU1RfUkVTSVpFLAorKwkJU0VfUkVTSVpFLAorKwkJ U1dfUkVTSVpFLAorKwkJTkVfUkVTSVpFLAorKwkJTldfUkVTSVpFLAorKwkJTU9WRV9PUl9SRVNJ WkVfV0lORE9XLAorKwkJQlVTWSwKKysJCURORF9JTl9EUkFHLAorKwkJRE5EX01PVkUsCisrCQlE TkRfQ09QWSwKKysJCURORF9VTlNVUFBPUlRFRF9UQVJHRVQsCisrCQlQT0lOVElOR19IQU5ELAor KwkJQ1JPU1NIQUlSLAorKwkJSUJFQU0sCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RFQlVHXyIsIHR5cGVf aWQgPSAibWV0YV9kZWJ1Z190b3BpY19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1Ymxp YyBlbnVtIERlYnVnVG9waWMgeworKwkJVkVSQk9TRSwKKysJCUZPQ1VTLAorKwkJV09SS0FSRUEs CisrCQlTVEFDSywKKysJCVRIRU1FUywKKysJCVNNLAorKwkJRVZFTlRTLAorKwkJV0lORE9XX1NU QVRFLAorKwkJV0lORE9XX09QUywKKysJCUdFT01FVFJZLAorKwkJUExBQ0VNRU5ULAorKwkJUElO RywKKysJCVhJTkVSQU1BLAorKwkJS0VZQklORElOR1MsCisrCQlTWU5DLAorKwkJRVJST1JTLAor KwkJU1RBUlRVUCwKKysJCVBSRUZTLAorKwkJR1JPVVBTLAorKwkJUkVTSVpJTkcsCisrCQlTSEFQ RVMsCisrCQlDT01QT1NJVE9SLAorKwkJRURHRV9SRVNJU1RBTkNFLAorKwkJREJVUworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERpcmVjdGlvbiB7CisrCQlMRUZULAorKwkJUklHSFQs CisrCQlUT1AsCisrCQlCT1RUT00sCisrCQlVUCwKKysJCURPV04sCisrCQlIT1JJWk9OVEFMLAor KwkJVkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfRElTUExBWV8iLCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9j b3JuZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gRGlzcGxheUNvcm5lciB7CisrCQlU T1BMRUZULAorKwkJVE9QUklHSFQsCisrCQlCT1RUT01MRUZULAorKwkJQk9UVE9NUklHSFQKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfRElTUExBWV8iLCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9kaXJlY3Rpb25fZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGVudW0gRGlzcGxheURpcmVjdGlvbiB7CisrCQlVUCwKKysJCURP V04sCisrCQlMRUZULAorKwkJUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRURHRV8iLCB0eXBlX2lkID0gIm1ldGFf ZWRnZV90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEVkZ2VUeXBlIHsKKysJCVdJ TkRPVywKKysJCU1PTklUT1IsCisrCQlTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRVhJVF8iLCB0eXBlX2lkID0g Im1ldGFfZXhpdF9jb2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEV4aXRDb2RlIHsK KysJCVNVQ0NFU1MsCisrCQlFUlJPUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9GUkFNRV8iLCB0eXBlX2lkID0gIm1ldGFf ZnJhbWVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBGcmFt ZUZsYWdzIHsKKysJCUFMTE9XU19ERUxFVEUsCisrCQlBTExPV1NfTUVOVSwKKysJCUFMTE9XU19N SU5JTUlaRSwKKysJCUFMTE9XU19NQVhJTUlaRSwKKysJCUFMTE9XU19WRVJUSUNBTF9SRVNJWkUs CisrCQlBTExPV1NfSE9SSVpPTlRBTF9SRVNJWkUsCisrCQlIQVNfRk9DVVMsCisrCQlTSEFERUQs CisrCQlTVFVDSywKKysJCU1BWElNSVpFRCwKKysJCUFMTE9XU19TSEFERSwKKysJCUFMTE9XU19N T1ZFLAorKwkJRlVMTFNDUkVFTiwKKysJCUFCT1ZFLAorKwkJVElMRURfTEVGVCwKKysJCVRJTEVE X1JJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y3ByZWZpeCA9ICJNRVRBX0ZSQU1FX1RZUEVfIiwgdHlwZV9pZCA9ICJtZXRhX2ZyYW1lX3R5cGVf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gRnJhbWVUeXBlIHsKKysJCU5PUk1BTCwKKysJ CURJQUxPRywKKysJCU1PREFMX0RJQUxPRywKKysJCVVUSUxJVFksCisrCQlNRU5VLAorKwkJQk9S REVSLAorKwkJQVRUQUNIRUQsCisrCQlMQVNUOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRv X3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfR1JBQl9PUF8iLCB0eXBlX2lkID0gIm1ldGFfZ3JhYl9vcF9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBHcmFiT3AgeworKwkJTk9ORSwKKysJCVdJTkRP V19CQVNFLAorKwkJQ09NUE9TSVRPUiwKKysJCVdBWUxBTkRfUE9QVVAsCisrCQlGUkFNRV9CVVRU T04sCisrCQlNT1ZJTkcsCisrCQlSRVNJWklOR19OVywKKysJCVJFU0laSU5HX04sCisrCQlSRVNJ WklOR19ORSwKKysJCVJFU0laSU5HX0UsCisrCQlSRVNJWklOR19TVywKKysJCVJFU0laSU5HX1Ms CisrCQlSRVNJWklOR19TRSwKKysJCVJFU0laSU5HX1csCisrCQlLRVlCT0FSRF9NT1ZJTkcsCisr CQlLRVlCT0FSRF9SRVNJWklOR19VTktOT1dOLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfTlcsCisr CQlLRVlCT0FSRF9SRVNJWklOR19OLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfTkUsCisrCQlLRVlC T0FSRF9SRVNJWklOR19FLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfU1csCisrCQlLRVlCT0FSRF9S RVNJWklOR19TLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfU0UsCisrCQlLRVlCT0FSRF9SRVNJWklO R19XCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0lOSElCSVRfU0hPUlRDVVRTX0RJQUxPR19SRVNQT05TRV8iLCB0eXBlX2lk ID0gIm1ldGFfaW5oaWJpdF9zaG9ydGN1dHNfZGlhbG9nX3Jlc3BvbnNlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIEluaGliaXRTaG9ydGN1dHNEaWFsb2dSZXNwb25zZSB7CisrCQlBTExP VywKKysJCURFTlkKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfS0VZQklORElOR19BQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRh X2tleV9iaW5kaW5nX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBLZXlCaW5k aW5nQWN0aW9uIHsKKysJCU5PTkUsCisrCQlXT1JLU1BBQ0VfMSwKKysJCVdPUktTUEFDRV8yLAor KwkJV09SS1NQQUNFXzMsCisrCQlXT1JLU1BBQ0VfNCwKKysJCVdPUktTUEFDRV81LAorKwkJV09S S1NQQUNFXzYsCisrCQlXT1JLU1BBQ0VfNywKKysJCVdPUktTUEFDRV84LAorKwkJV09SS1NQQUNF XzksCisrCQlXT1JLU1BBQ0VfMTAsCisrCQlXT1JLU1BBQ0VfMTEsCisrCQlXT1JLU1BBQ0VfMTIs CisrCQlXT1JLU1BBQ0VfTEVGVCwKKysJCVdPUktTUEFDRV9SSUdIVCwKKysJCVdPUktTUEFDRV9V UCwKKysJCVdPUktTUEFDRV9ET1dOLAorKwkJV09SS1NQQUNFX0xBU1QsCisrCQlTV0lUQ0hfQVBQ TElDQVRJT05TLAorKwkJU1dJVENIX0FQUExJQ0FUSU9OU19CQUNLV0FSRCwKKysJCVNXSVRDSF9H Uk9VUCwKKysJCVNXSVRDSF9HUk9VUF9CQUNLV0FSRCwKKysJCVNXSVRDSF9XSU5ET1dTLAorKwkJ U1dJVENIX1dJTkRPV1NfQkFDS1dBUkQsCisrCQlTV0lUQ0hfUEFORUxTLAorKwkJU1dJVENIX1BB TkVMU19CQUNLV0FSRCwKKysJCUNZQ0xFX0dST1VQLAorKwkJQ1lDTEVfR1JPVVBfQkFDS1dBUkQs CisrCQlDWUNMRV9XSU5ET1dTLAorKwkJQ1lDTEVfV0lORE9XU19CQUNLV0FSRCwKKysJCUNZQ0xF X1BBTkVMUywKKysJCUNZQ0xFX1BBTkVMU19CQUNLV0FSRCwKKysJCVNIT1dfREVTS1RPUCwKKysJ CVBBTkVMX01BSU5fTUVOVSwKKysJCVBBTkVMX1JVTl9ESUFMT0csCisrCQlUT0dHTEVfUkVDT1JE SU5HLAorKwkJU0VUX1NQRVdfTUFSSywKKysJCUFDVElWQVRFX1dJTkRPV19NRU5VLAorKwkJVE9H R0xFX0ZVTExTQ1JFRU4sCisrCQlUT0dHTEVfTUFYSU1JWkVELAorKwkJVE9HR0xFX1RJTEVEX0xF RlQsCisrCQlUT0dHTEVfVElMRURfUklHSFQsCisrCQlUT0dHTEVfQUJPVkUsCisrCQlNQVhJTUla RSwKKysJCVVOTUFYSU1JWkUsCisrCQlUT0dHTEVfU0hBREVELAorKwkJTUlOSU1JWkUsCisrCQlD TE9TRSwKKysJCUJFR0lOX01PVkUsCisrCQlCRUdJTl9SRVNJWkUsCisrCQlUT0dHTEVfT05fQUxM X1dPUktTUEFDRVMsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xLAorKwkJTU9WRV9UT19XT1JLU1BB Q0VfMiwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzMsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV80LAor KwkJTU9WRV9UT19XT1JLU1BBQ0VfNSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzYsCisrCQlNT1ZF X1RPX1dPUktTUEFDRV83LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfOCwKKysJCU1PVkVfVE9fV09S S1NQQUNFXzksCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xMCwKKysJCU1PVkVfVE9fV09SS1NQQUNF XzExLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMTIsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9MRUZU LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfUklHSFQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9VUCwK KysJCU1PVkVfVE9fV09SS1NQQUNFX0RPV04sCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9MQVNULAor KwkJTU9WRV9UT19NT05JVE9SX0xFRlQsCisrCQlNT1ZFX1RPX01PTklUT1JfUklHSFQsCisrCQlN T1ZFX1RPX01PTklUT1JfVVAsCisrCQlNT1ZFX1RPX01PTklUT1JfRE9XTiwKKysJCVJBSVNFX09S X0xPV0VSLAorKwkJUkFJU0UsCisrCQlMT1dFUiwKKysJCU1BWElNSVpFX1ZFUlRJQ0FMTFksCisr CQlNQVhJTUlaRV9IT1JJWk9OVEFMTFksCisrCQlNT1ZFX1RPX0NPUk5FUl9OVywKKysJCU1PVkVf VE9fQ09STkVSX05FLAorKwkJTU9WRV9UT19DT1JORVJfU1csCisrCQlNT1ZFX1RPX0NPUk5FUl9T RSwKKysJCU1PVkVfVE9fU0lERV9OLAorKwkJTU9WRV9UT19TSURFX1MsCisrCQlNT1ZFX1RPX1NJ REVfRSwKKysJCU1PVkVfVE9fU0lERV9XLAorKwkJTU9WRV9UT19DRU5URVIsCisrCQlPVkVSTEFZ X0tFWSwKKysJCUxPQ0FURV9QT0lOVEVSX0tFWSwKKysJCUlTT19ORVhUX0dST1VQLAorKwkJQUxX QVlTX09OX1RPUCwKKysJCVNXSVRDSF9NT05JVE9SLAorKwkJUk9UQVRFX01PTklUT1IsCisrCQlM QVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0tFWV9CSU5ESU5HXyIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmluZGluZ19m bGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEtleUJpbmRpbmdG bGFncyB7CisrCQlOT05FLAorKwkJUEVSX1dJTkRPVywKKysJCUJVSUxUSU4sCisrCQlJU19SRVZF UlNFRCwKKysJCU5PTl9NQVNLQUJMRSwKKysJCUlHTk9SRV9BVVRPUkVQRUFULAorKwkJTk9fQVVU T19HUkFCCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y3ByZWZpeCA9ICJNRVRBX0xBVEVSXyIsIHR5cGVfaWQgPSAibWV0YV9sYXRlcl90eXBlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBlbnVtIExhdGVyVHlwZSB7CisrCQlSRVNJWkUsCisrCQlDQUxD X1NIT1dJTkcsCisrCQlDSEVDS19GVUxMU0NSRUVOLAorKwkJU1lOQ19TVEFDSywKKysJCUJFRk9S RV9SRURSQVcsCisrCQlJRExFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0xPQ0FMRV9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9 ICJtZXRhX2xvY2FsZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTG9j YWxlRGlyZWN0aW9uIHsKKysJCUxUUiwKKysJCVJUTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NQVhJTUlaRV8iLCB0eXBl X2lkID0gIm1ldGFfbWF4aW1pemVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlw dWJsaWMgZW51bSBNYXhpbWl6ZUZsYWdzIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTCwK KysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjcHJlZml4ID0gIk1FVEFfTU9EQUxfIiwgdHlwZV9pZCA9ICJtZXRhX21vZGFsX29wdGlvbnNf Z2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBNb2RhbE9wdGlvbnMgewor KwkJUE9JTlRFUl9BTFJFQURZX0dSQUJCRUQsCisrCQlLRVlCT0FSRF9BTFJFQURZX0dSQUJCRUQK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4 ID0gIk1FVEFfTU9OSVRPUl9TV0lUQ0hfQ09ORklHXyIsIHR5cGVfaWQgPSAibWV0YV9tb25pdG9y X3N3aXRjaF9jb25maWdfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBNb25pdG9y U3dpdGNoQ29uZmlnVHlwZSB7CisrCQlBTExfTUlSUk9SLAorKwkJQUxMX0xJTkVBUiwKKysJCUVY VEVSTkFMLAorKwkJQlVJTFRJTiwKKysJCVVOS05PV04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTU9USU9OXyIsIHR5cGVf aWQgPSAibWV0YV9tb3Rpb25fZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IE1vdGlvbkRpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJUklHSFQs CisrCQlVUF9MRUZULAorKwkJVVBfUklHSFQsCisrCQlET1dOX0xFRlQsCisrCQlET1dOX1JJR0hU CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZp eCA9ICJNRVRBX1BBRF9BQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX3BhZF9hY3Rpb25fdHlwZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQYWRBY3Rpb25UeXBlIHsKKysJCUJVVFRPTiwK KysJCVJJTkcsCisrCQlTVFJJUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3ByZWZzLmgiLCBjcHJlZml4ID0gIk1FVEFfUFJFRl8iLCB0eXBlX2lkID0gIm1ldGFfcHJl ZmVyZW5jZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQcmVmZXJlbmNlIHsKKysJCU1P VVNFX0JVVFRPTl9NT0RTLAorKwkJRk9DVVNfTU9ERSwKKysJCUZPQ1VTX05FV19XSU5ET1dTLAor KwkJQVRUQUNIX01PREFMX0RJQUxPR1MsCisrCQlSQUlTRV9PTl9DTElDSywKKysJCUFDVElPTl9E T1VCTEVfQ0xJQ0tfVElUTEVCQVIsCisrCQlBQ1RJT05fTUlERExFX0NMSUNLX1RJVExFQkFSLAor KwkJQUNUSU9OX1JJR0hUX0NMSUNLX1RJVExFQkFSLAorKwkJQVVUT19SQUlTRSwKKysJCUFVVE9f UkFJU0VfREVMQVksCisrCQlGT0NVU19DSEFOR0VfT05fUE9JTlRFUl9SRVNULAorKwkJVElUTEVC QVJfRk9OVCwKKysJCU5VTV9XT1JLU1BBQ0VTLAorKwkJRFlOQU1JQ19XT1JLU1BBQ0VTLAorKwkJ S0VZQklORElOR1MsCisrCQlESVNBQkxFX1dPUktBUk9VTkRTLAorKwkJQlVUVE9OX0xBWU9VVCwK KysJCVdPUktTUEFDRV9OQU1FUywKKysJCVZJU1VBTF9CRUxMLAorKwkJQVVESUJMRV9CRUxMLAor KwkJVklTVUFMX0JFTExfVFlQRSwKKysJCUdOT01FX0FDQ0VTU0lCSUxJVFksCisrCQlHTk9NRV9B TklNQVRJT05TLAorKwkJQ1VSU09SX1RIRU1FLAorKwkJQ1VSU09SX1NJWkUsCisrCQlSRVNJWkVf V0lUSF9SSUdIVF9CVVRUT04sCisrCQlFREdFX1RJTElORywKKysJCUZPUkNFX0ZVTExTQ1JFRU4s CisrCQlXT1JLU1BBQ0VTX09OTFlfT05fUFJJTUFSWSwKKysJCURSQUdHQUJMRV9CT1JERVJfV0lE VEgsCisrCQlBVVRPX01BWElNSVpFLAorKwkJQ0VOVEVSX05FV19XSU5ET1dTLAorKwkJRFJBR19U SFJFU0hPTEQsCisrCQlMT0NBVEVfUE9JTlRFUjsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyB0 b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY3ByZWZpeCA9ICJNRVRBXyIsIHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fdHlwZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTZWxlY3Rpb25UeXBlIHsKKysJCVNFTEVDVElP Tl9QUklNQVJZLAorKwkJU0VMRUNUSU9OX0NMSVBCT0FSRCwKKysJCVNFTEVDVElPTl9ETkQsCisr CQlOX1NFTEVDVElPTl9UWVBFUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9TSEFET1dfTU9ERV8iLCB0eXBlX2lkID0gIm1l dGFfc2hhZG93X21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gU2hhZG93TW9kZSB7 CisrCQlBVVRPLAorKwkJRk9SQ0VEX09GRiwKKysJCUZPUkNFRF9PTgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9TSURFXyIs IHR5cGVfaWQgPSAibWV0YV9zaWRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNpZGUg eworKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVE9QLAorKwkJQk9UVE9NCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NJWkVf Q0hBTkdFXyIsIHR5cGVfaWQgPSAibWV0YV9zaXplX2NoYW5nZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBTaXplQ2hhbmdlIHsKKysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJ CUZVTExTQ1JFRU4sCisrCQlVTkZVTExTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTEFZRVJfIiwgdHlwZV9pZCA9 ICJtZXRhX3N0YWNrX2xheWVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFN0YWNrTGF5 ZXIgeworKwkJREVTS1RPUCwKKysJCUJPVFRPTSwKKysJCU5PUk1BTCwKKysJCVRPUCwKKysJCURP Q0ssCisrCQlPVkVSUklERV9SRURJUkVDVCwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfVEFCX0xJU1RfIiwg dHlwZV9pZCA9ICJtZXRhX3RhYl9saXN0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFRh Ykxpc3QgeworKwkJTk9STUFMLAorKwkJRE9DS1MsCisrCQlHUk9VUCwKKysJCU5PUk1BTF9BTEwK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4 ID0gIk1FVEFfVEFCX1NIT1dfIiwgdHlwZV9pZCA9ICJtZXRhX3RhYl9zaG93X3R5cGVfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGVudW0gVGFiU2hvd1R5cGUgeworKwkJSUNPTiwKKysJCUlOU1RB TlRMWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV9WSVJUVUFMXyIsIHR5cGVfaWQgPSAibWV0YV92aXJ0dWFsX21vZGlmaWVy X2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gVmlydHVhbE1vZGlmaWVy IHsKKysJCVNISUZUX01BU0ssCisrCQlDT05UUk9MX01BU0ssCisrCQlBTFRfTUFTSywKKysJCU1F VEFfTUFTSywKKysJCVNVUEVSX01BU0ssCisrCQlIWVBFUl9NQVNLLAorKwkJTU9EMl9NQVNLLAor KwkJTU9EM19NQVNLLAorKwkJTU9ENF9NQVNLLAorKwkJTU9ENV9NQVNLCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRP V19DTElFTlRfVFlQRV8iLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2NsaWVudF90eXBlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFdpbmRvd0NsaWVudFR5cGUgeworKwkJV0FZTEFORCwK KysJCVgxMQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9XSU5ET1dfTUVOVV8iLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X21l bnVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBXaW5kb3dNZW51VHlwZSB7Cisr CQlXTSwKKysJCUFQUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNwcmVmaXggPSAiTUVUQV9XSU5ET1dfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd190 eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFdpbmRvd1R5cGUgeworKwkJTk9STUFM LAorKwkJREVTS1RPUCwKKysJCURPQ0ssCisrCQlESUFMT0csCisrCQlNT0RBTF9ESUFMT0csCisr CQlUT09MQkFSLAorKwkJTUVOVSwKKysJCVVUSUxJVFksCisrCQlTUExBU0hTQ1JFRU4sCisrCQlE Uk9QRE9XTl9NRU5VLAorKwkJUE9QVVBfTUVOVSwKKysJCVRPT0xUSVAsCisrCQlOT1RJRklDQVRJ T04sCisrCQlDT01CTywKKysJCURORCwKKysJCU9WRVJSSURFX09USEVSCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0K KysJcHVibGljIGRlbGVnYXRlIHZvaWQgSWRsZU1vbml0b3JXYXRjaEZ1bmMgKE1ldGEuSWRsZU1v bml0b3IgbW9uaXRvciwgdWludCB3YXRjaF9pZCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDQuOSldCisrCXB1YmxpYyBkZWxlZ2F0 ZSB2b2lkIEtleUhhbmRsZXJGdW5jIChNZXRhLkRpc3BsYXkgZGlzcGxheSwgTWV0YS5XaW5kb3cg d2luZG93LCBbQ0NvZGUgKHR5cGUgPSAiQ2x1dHRlcktleUV2ZW50KiIpXSBDbHV0dGVyLktleUV2 ZW50PyBldmVudCwgTWV0YS5LZXlCaW5kaW5nIGJpbmRpbmcpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlwdWJsaWMg ZGVsZWdhdGUgdm9pZCBQcmVmc0NoYW5nZWRGdW5jIChNZXRhLlByZWZlcmVuY2UgcHJlZik7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9 IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFdpbmRvd0ZvcmVhY2hGdW5jIChNZXRhLldp bmRvdyB3aW5kb3cpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjbmFtZSA9ICJNRVRBX0NVUlJFTlRfVElNRSIpXQorKwlwdWJsaWMgY29uc3QgaW50IENVUlJF TlRfVElNRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25h bWUgPSAiTUVUQV9ERUZBVUxUX0lDT05fTkFNRSIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIERF RkFVTFRfSUNPTl9OQU1FOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjbmFtZSA9ICJNRVRBX0lDT05fSEVJR0hUIildCisrCXB1YmxpYyBjb25zdCBpbnQgSUNP Tl9IRUlHSFQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNu YW1lID0gIk1FVEFfSUNPTl9XSURUSCIpXQorKwlwdWJsaWMgY29uc3QgaW50IElDT05fV0lEVEg7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1F VEFfTUFKT1JfVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1BSk9SX1ZFUlNJT047Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFf TUlDUk9fVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1JQ1JPX1ZFUlNJT047CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlO SV9JQ09OX0hFSUdIVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1JTklfSUNPTl9IRUlHSFQ7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFf TUlOSV9JQ09OX1dJRFRIIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlOSV9JQ09OX1dJRFRIOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRB X01JTk9SX1ZFUlNJT04iKV0KKysJcHVibGljIGNvbnN0IGludCBNSU5PUl9WRVJTSU9OOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BM VUdJTl9BUElfVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBMVUdJTl9BUElfVkVSU0lP TjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAi TUVUQV9QUklPUklUWV9CRUZPUkVfUkVEUkFXIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJ VFlfQkVGT1JFX1JFRFJBVzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9QUkVGU19OT1RJRlkiKV0KKysJcHVibGljIGNv bnN0IGludCBQUklPUklUWV9QUkVGU19OT1RJRlk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJT1JJVFlfUkVEUkFXIildCisrCXB1 YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1JFU0laRSIpXQorKwlw dWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1JFU0laRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9WSVJUVUFMX0NPUkVfS0VZQk9BUkRf SUQiKV0KKysJcHVibGljIGNvbnN0IGludCBWSVJUVUFMX0NPUkVfS0VZQk9BUkRfSUQ7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfVklS VFVBTF9DT1JFX1BPSU5URVJfSUQiKV0KKysJcHVibGljIGNvbnN0IGludCBWSVJUVUFMX0NPUkVf UE9JTlRFUl9JRDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIild CisrCXB1YmxpYyBzdGF0aWMgYm9vbCBhY3RpdmF0ZV9zZXNzaW9uICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGFk ZF9jbHV0dGVyX2RlYnVnX2ZsYWdzIChDbHV0dGVyLkRlYnVnRmxhZyBkZWJ1Z19mbGFncywgQ2x1 dHRlci5EcmF3RGVidWdGbGFnIGRyYXdfZmxhZ3MsIENsdXR0ZXIuUGlja0RlYnVnRmxhZyBwaWNr X2ZsYWdzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisr CXB1YmxpYyBzdGF0aWMgdm9pZCBleGl0IChNZXRhLkV4aXRDb2RlIGNvZGUpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBzdHJp bmcgZ191dGY4X3N0cm5kdXAgKHN0cmluZyBzcmMsIHNpemVfdCBuKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBH TGliLk9wdGlvbkNvbnRleHQgZ2V0X29wdGlvbl9jb250ZXh0ICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9y ZXBsYWNlX2N1cnJlbnRfd20gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgaW5pdCAoKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19y ZXN0YXJ0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIHF1aXQgKE1ldGEuRXhpdENvZGUgY29kZSk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgcmVnaXN0ZXJfd2l0aF9zZXNzaW9uICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9jbHV0dGVyX2Rl YnVnX2ZsYWdzIChDbHV0dGVyLkRlYnVnRmxhZyBkZWJ1Z19mbGFncywgQ2x1dHRlci5EcmF3RGVi dWdGbGFnIGRyYXdfZmxhZ3MsIENsdXR0ZXIuUGlja0RlYnVnRmxhZyBwaWNrX2ZsYWdzKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0 aWMgdm9pZCByZXN0YXJ0IChzdHJpbmc/IG1lc3NhZ2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBpbnQgcnVuICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRp YyB2b2lkIHNldF9nbm9tZV93bV9rZXliaW5kaW5ncyAoc3RyaW5nIHdtX2tleWJpbmRpbmdzKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBz dGF0aWMgdm9pZCBzZXRfd21fbmFtZSAoc3RyaW5nIHdtX25hbWUpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHRlc3Rf aW5pdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisr CXB1YmxpYyBzdGF0aWMgYm9vbCB4MTFfaW5pdF9nZGtfZGlzcGxheSAoKSB0aHJvd3MgR0xpYi5F cnJvcjsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxh IGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhCituZXcgZmlsZSBtb2RlIDEwMDY0 NAoraW5kZXggMDAwMDAwMDAuLjg5MjI0YmU2CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211 dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEKK0BAIC0wLDAgKzEsMTQ3IEBACisrbmFtZXNwYWNl IENsdXR0ZXIgeworKworKyAgcHVibGljIHN0cnVjdCBNYXRyaXggOiBDb2dsLk1hdHJpeCB7Cisr ICB9CisrCisrICBwdWJsaWMgY2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0IHsKKysgICAgW05v V3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBhZGRfb3B0aW9ucyAoR0xpYi5PcHRp b25Hcm91cCBncm91cCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIGJv b2wgY3JlYXRlX2NvbnRleHQgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJd CisrICAgIHB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5TdGFnZVdpbmRvdyBjcmVhdGVf c3RhZ2UgKENsdXR0ZXIuU3RhZ2Ugd3JhcHBlcikgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtO b1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgZW5zdXJlX2NvbnRleHQgKENsdXR0 ZXIuU3RhZ2Ugc3RhZ2UpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBD bHV0dGVyLkZlYXR1cmVGbGFncyBnZXRfZmVhdHVyZXMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9ldmVudHMgKCk7CisrICAgIFtOb1dyYXBwZXJd CisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9mZWF0dXJlcyAoKTsKKysgICAgW05vV3Jh cHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgYm9vbCBwb3N0X3BhcnNlICgpIHRocm93cyBHTGli LkVycm9yOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIHByZV9w YXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGlj IHZpcnR1YWwgdm9pZCByZWRyYXcgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKyAgfQorKworKyAg W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2JveF9nZXRfdHlwZSAoKSIpXQorKyAgcHVibGljIGNsYXNzIEJveCA6IENsdXR0 ZXIuQWN0b3IgeworKyAgICBwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5h Z2VyIHsgZ2V0OyBzZXQ7IH0KKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJDTFVUVEVS X1RZUEVfQ09MT1IiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr ICBwdWJsaWMgc3RydWN0IENvbG9yIHsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2Nv bG9yX2Zyb21faGxzIildCisrICAgIHB1YmxpYyBDb2xvci5mcm9tX2hscyAoZmxvYXQgaHVlLCBm bG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24pOworKyAgICBbQ0NvZGUgKGNuYW1lID0g ImNsdXR0ZXJfY29sb3JfZnJvbV9waXhlbCIpXQorKyAgICBwdWJsaWMgQ29sb3IuZnJvbV9waXhl bCAodWludDMyIHBpeGVsKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zy b21fc3RyaW5nIildCisrICAgIHB1YmxpYyBDb2xvci5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7 CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKyAg ICBwdWJsaWMgYm9vbCBwYXJzZV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgICBwdWJsaWMgc3Rh dGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8gZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xv ciBjb2xvcik7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGFpbmVyX2dldF90eXBlICgpIild CisrICBwdWJsaWMgaW50ZXJmYWNlIENvbnRhaW5lciA6IEdMaWIuT2JqZWN0IHsKKysgICAgcHVi bGljIHZvaWQgYWRkIChwYXJhbXMgQ2x1dHRlci5BY3RvcltdIGFjdG9ycyk7CisrICAgIFtDQ29k ZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIp XQorKyAgICBwdWJsaWMgY2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX2NoaWxkX3By b3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1 dHRlcl9jb250YWluZXJfY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrICAgIHB1Ymxp YyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjW10gbGlzdF9jaGlsZF9wcm9wZXJ0aWVzICgp OworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdf Ym94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKyAg W0NvbXBhY3RdCisrICBwdWJsaWMgY2xhc3MgRXZlbnQgeworKyAgICBwdWJsaWMgQ2x1dHRlci5B bnlFdmVudCBhbnkgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQW55RXZlbnQgKikiKV0gZ2V0 OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLkJ1dHRvbkV2ZW50IGJ1dHRvbiB7IFtDQ29kZSAoY25h bWUgPSAiKENsdXR0ZXJCdXR0b25FdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0 ZXIuQ3Jvc3NpbmdFdmVudCBjcm9zc2luZyB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJDcm9z c2luZ0V2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5LZXlFdmVudCBrZXkg eyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyS2V5RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1 YmxpYyBDbHV0dGVyLk1vdGlvbkV2ZW50IG1vdGlvbiB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0 ZXJNb3Rpb25FdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuU2Nyb2xsRXZl bnQgc2Nyb2xsIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclNjcm9sbEV2ZW50ICopIildIGdl dDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlRXZlbnQgc3RhZ2Vfc3RhdGUgeyBb Q0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU3RhZ2VTdGF0ZUV2ZW50ICopIildIGdldDsgfQorKyAg ICBwdWJsaWMgQ2x1dHRlci5Ub3VjaEV2ZW50IHRvdWNoIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1 dHRlclRvdWNoRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNocGFk UGluY2hFdmVudCB0b3VjaHBhZF9waW5jaCB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3Vj aHBhZFBpbmNoRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNocGFk U3dpcGVFdmVudCB0b3VjaHBhZF9zd2lwZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3Vj aHBhZFN3aXBlRXZlbnQgKikiKV0gZ2V0OyB9CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQg PSAiY2x1dHRlcl9zdGFnZV9nZXRfdHlwZSAoKSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBjbGFzcyBTdGFnZSA6IENsdXR0ZXIuR3JvdXAgewor KyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfcmVkcmF3IildCisrICAgIHB1YmxpYyB2b2lk IHJlZHJhdyAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGludGVyZmFjZSBTdGFnZVdpbmRvdyA6IEdMaWIu T2JqZWN0IHsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGludCBnZXRf cGVuZGluZ19zd2FwcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0 IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfd3JhcHBlciAoKTsKKysgICAgW05vV3JhcHBlcl0K KysgICAgcHVibGljIGFic3RyYWN0IGJvb2wgaGFzX3JlZHJhd19jbGlwcyAoKTsKKysgICAgW05v V3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysgICAgW05vV3Jh cHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGJvb2wgaWdub3JpbmdfcmVkcmF3X2NsaXBzICgp OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCByZWFsaXplICgp OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZXNpemUgKGlu dCB3aWR0aCwgaW50IGhlaWdodCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0 cmFjdCB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7CisrICAg IFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9mdWxsc2NyZWVuIChi b29sIGlzX2Z1bGxzY3JlZW4pOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJh Y3Qgdm9pZCBzZXRfdGl0bGUgKHN0cmluZyB0aXRsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAg IHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAoYm9vbCBpc19yZXNpemFi bGUpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93IChi b29sIGRvX3JhaXNlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZv aWQgdW5yZWFsaXplICgpOworKyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gImNsdXR0ZXJf dGV4dHVyZV9nZXRfdHlwZSAoKSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysgIHB1YmxpYyBjbGFzcyBUZXh0dXJlIDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1 YmxpYyBDb2dsLk1hdGVyaWFsIGNvZ2xfbWF0ZXJpYWwgeyBnZXQ7IHNldDsgfQorKyAgICBwdWJs aWMgQ29nbC5UZXh0dXJlIGNvZ2xfdGV4dHVyZSB7IGdldDsgc2V0OyB9CisrICB9CisrCisrICBb Q29tcGFjdF0KKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKyAgcHVibGljIGNsYXNzIFRpbWVvdXRQb29sIHsKKysgICAgW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKyAgICBwdWJsaWMgVGltZW91dFBvb2wgKGludCBw cmlvcml0eSk7CisrICB9CisrCisrICBbQ0NvZGUgKGNwcmVmaXggPSAiQ0xVVFRFUl9GRUFUVVJF XyIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIFtGbGFnc10K KysgIHB1YmxpYyBlbnVtIEZlYXR1cmVGbGFncyB7CisrICAgIFRFWFRVUkVfTlBPVDsKKysgICAg W0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfYXZhaWxhYmxlIildCisrICAgIHB1Ymxp YyBib29sIGlzX2F2YWlsYWJsZSAoKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2Zl YXR1cmVfZ2V0X2FsbCIpXQorKyAgICBwdWJsaWMgc3RhdGljIENsdXR0ZXIuRmVhdHVyZUZsYWdz IEBnZXQgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VO SVRTIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGlj IHN0cnVjdCBVbml0cyB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9t X2NtIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2NtIChmbG9hdCBjbSk7CisrICAgIFtDQ29k ZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtIildCisrICAgIHB1YmxpYyBVbml0cy5m cm9tX2VtIChmbG9hdCBlbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19m cm9tX2VtX2Zvcl9mb250IildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2VtX2Zvcl9mb250IChz dHJpbmcgZm9udF9uYW1lLCBmbG9hdCBlbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl91bml0c19mcm9tX21tIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX21tIChmbG9hdCBtbSk7 CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3BpeGVscyIpXQorKyAg ICBwdWJsaWMgVW5pdHMuZnJvbV9waXhlbHMgKGludCBweCk7CisrICAgIFtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl91bml0c19mcm9tX3B0IildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3B0IChm bG9hdCBwdCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3N0cmlu ZyIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgfQor K30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcyBiL3ZhcGkvbXV0dGVy LWNsdXR0ZXItNi5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjdh NzBkNmRmCistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcwor QEAgLTAsMCArMSw0IEBACisrYXRrCisrY2Fpcm8KKytqc29uLWdsaWItMS4wCisrbXV0dGVyLWNv Z2wtNgorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpIGIvdmFwaS9tdXR0 ZXItY2x1dHRlci02LnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4u ZDY2ZjlhYzgKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBp CitAQCAtMCwwICsxLDg2ODcgQEAKKysvKiBtdXR0ZXItY2x1dHRlci02LnZhcGkgZ2VuZXJhdGVk IGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJlZml4ID0gIkNs dXR0ZXIiLCBnaXJfbmFtZXNwYWNlID0gIkNsdXR0ZXIiLCBnaXJfdmVyc2lvbiA9ICI2IiwgbG93 ZXJfY2FzZV9jcHJlZml4ID0gImNsdXR0ZXJfIildCisrbmFtZXNwYWNlIENsdXR0ZXIgeworKwlu YW1lc3BhY2UgS2V5IHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEAwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ XzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BbHRD dXJzb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0FsdEN1cnNvcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfQXR0biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQXR0bjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzMyNzBfQmFja1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf QmFja1RhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQ2hhbmdlU2NyZWVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMzI3MF9DaGFuZ2VTY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0NvcHki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0NvcHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcw X0N1cnNvckJsaW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9DdXJzb3JCbGluazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzMyNzBfQ3Vyc29yU2VsZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMzI3MF9DdXJzb3JTZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0RlbGV0ZVdvcmQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0RlbGV0ZVdvcmQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX0R1cGxpY2F0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRHVwbGljYXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMzI3MF9FbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf RW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VyYXNlRU9GIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMzI3MF9FcmFzZUVPRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXJhc2VJbnB1dCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRXJhc2VJbnB1dDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMy NzBfRXhTZWxlY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0V4U2VsZWN0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfMzI3MF9GaWVsZE1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcw X0ZpZWxkTWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfSWRlbnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEAzMjcwX0lkZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9KdW1wIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9KdW1wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9LZXlDbGljayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfS2V5Q2xpY2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX0xlZnQyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9MZWZ0MjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfUEExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QQTE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX1BBMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEEyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BB MzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMy NzBfUGxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUHJpbnRTY3JlZW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEAzMjcwX1ByaW50U2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9RdWl0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9RdWl0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9S ZWNvcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1JlY29yZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzMyNzBfUmVzZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Jlc2V0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfMzI3MF9SaWdodDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Jp Z2h0MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUnVsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QDMyNzBfUnVsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfU2V0dXAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEAzMjcwX1NldHVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9UZXN0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9UZXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV81IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBANTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEA5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYmVs b3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFi cmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBYnJldmVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWJlbG93ZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBYnJldmViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWdyYXZl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fi cmV2ZWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BYnJldmV0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZldGlsZGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BY2Nlc3NYX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNj ZXNzWF9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2Nlc3NYX0ZlZWRiYWNrX0VuYWJsZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQWNjZXNzWF9GZWVkYmFja19FbmFibGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB Y2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhiZWxvd2RvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FjaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4Z3Jh dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFjaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4dGlsZGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B ZGRGYXZvcml0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWRkRmF2b3JpdGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZGlhZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZ3JhdmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWhvb2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BbHRfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWx0X0w7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BbHRfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWx0X1I7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBbWFjcm9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQW9nb25lazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FwcGxpY2F0aW9uTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXBwbGljYXRp b25MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXBwbGljYXRpb25SaWdodCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXBwbGljYXRpb25SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18wIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18xIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18y IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y18zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfMzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY180IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY181IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY182IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY183IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY184IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY185IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfOTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19haW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19haW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2FsZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfYWxlZm1ha3N1cmEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19hbGVmbWFrc3VyYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19iZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19iZWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfY29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19jb21tYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19kYWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFsIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfZGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhbW1hIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfZGFtbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFtbWF0YW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYW1tYXRhbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19kZGFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGRhbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19mYXJzaV95ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19mYXJzaV95ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmF0aGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19mYXRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mYXRoYXRhbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhdGhhdGFuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX2ZlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZlaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY19mdWxsc3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2Z1 bGxzdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2dhZiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2dhZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19naGFpbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2doYWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX2hhbXphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfaGFtemFfYWJvdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19oYW16YV9hYm92ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9iZWxvdyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphX2JlbG93OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX2hhbXphb25hbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbmFs ZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbndhdyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2hhbXphb253YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbnll aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphb255ZWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfaGFtemF1bmRlcmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19oYW16YXVuZGVyYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oZWgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19oZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoX2RvYWNo YXNobWVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGVoX2RvYWNoYXNobWVlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hlaF9nb2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfaGVoX2dvYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfamVlbSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2plZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfamVoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfamVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2th ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2thZjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19rYXNyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2thc3JhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2thc3JhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf a2FzcmF0YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2VoZWgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19rZWhlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19raGFoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2hhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19sYW0i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19sYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfbWFkZGFfYWJvdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19tYWRkYV9hYm92 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19tYWRkYW9uYWxlZiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX21hZGRhb25hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21lZW0iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19tZWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X25vb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19ub29uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX25vb25fZ2h1bm5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbm9v bl9naHVubmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcGVoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfcGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3BlcmNlbnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19wZXJjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3Fh ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3FhZjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19xdWVzdGlvbl9tYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcXVlc3Rp b25fbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19yYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3JyZWgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19ycmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NhZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3NhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zZWVu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2VlbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19zZW1pY29sb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zZW1pY29sb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2hhZGRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfc2hhZGRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NoZWVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfc2hlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc3VrdW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zdWt1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19zdXBlcnNjcmlwdF9hbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc3VwZXJz Y3JpcHRfYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zd2l0Y2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGFoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGFoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3Rh dHdlZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190YXR3ZWVsOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX3RjaGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGNoZWg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfdGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RlaG1hcmJ1dGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY190ZWhtYXJidXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RoYWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190aGFsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX3RoZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190aGVoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX3R0ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190dGVoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX3ZlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X3ZlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY193YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfeWVoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfeWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3llaF9iYXJlZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3llaF9iYXJlZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY196YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY196YWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfemFpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3phaW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJpbmc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9BVCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f QVQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9BWUIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX0FZQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0JFTiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fQkVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fQ0hBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9DSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9EQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fREE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9EWkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0RaQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9GRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fRkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9HSEFUIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9HSEFUOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fR0lN IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9HSU07CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9ISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSEk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9ITyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSE87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9JTkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX0lOSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0pFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0tFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9LRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0tF TiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fS0VOOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fS0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9LSEU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9MWVVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9MWVVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTUVOIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9NRU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9OVSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9PIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9POworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fUEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1BFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fUFlVUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUFlVUjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9SQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1JFIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9SRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1NFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9TRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1NIQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fU0hBOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fVENIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVENIRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX1RPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9U TzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RTQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fVFNBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFNPIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9UU087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UWVVOIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UWVVOOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fVkVWIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WRVY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9WTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVk87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9WWVVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9WWVVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fWUVDSCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fWUVDSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1pBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9aQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX1pIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fWkhFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9h Y2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hbWFuYWsiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX2FtYW5hazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2Fwb3N0cm9w aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2Fwb3N0cm9waGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9hdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9heWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2F5YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2JlbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fYmVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYnV0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9idXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9jaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2NoYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX2RhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9kYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX2R6YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fZHphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2V4Y2xhbSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZXhjbGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f ZmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2ZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fZnVsbF9zdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9mdWxs X3N0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9naGF0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9naGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZ2ltIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9naW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9o aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faGk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9obyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faG87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9oeXBoZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2h5cGhlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2luaSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5faW5pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5famUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fa2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2tlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fa2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9rZW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9raGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2to ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2xpZ2F0dXJlX2V3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9saWdhdHVyZV9ldzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2x5 dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2x5dW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9tZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX21lbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9udTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9wYXJ1eWsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX3BhcnV5azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Bl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9wZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX3B5dXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3B5dXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9xdWVzdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fcXVlc3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9yYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9yZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9zZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9zZXBhcmF0aW9uX21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX3NlcGFyYXRpb25fbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NoYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f c2hlc2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zaGVzaHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl90Y2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90 Y2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3RvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHNhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl90c2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90c28iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RzbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX3R5dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3R5dW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl92ZXJqYWtldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fdmVyamFrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92ZXYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX3ZldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3ZvIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl92bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X3Z5dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3Z5dW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl95ZWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl95ZWNo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5feWVudGFtbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3llbnRhbW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5femEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3phOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f emhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl96aGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF0aWxkZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0F1ZGlibGVCZWxsX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaWJsZUJlbGxf RW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9DeWNsZVRyYWNrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBdWRpb0N5Y2xlVHJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0ZvcndhcmQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlv TG93ZXJWb2x1bWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTG93ZXJWb2x1bWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BdWRpb01lZGlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb01l ZGlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9NaWNNdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBdWRpb01pY011dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb011dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEF1ZGlvTXV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTmV4dCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXVkaW9OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QYXVzZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9QYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUGxh eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9QbGF5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVk aW9QcmV2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1ByZXY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BdWRpb1JhaXNlVm9sdW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JhaXNlVm9s dW1lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SYW5kb21QbGF5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBdWRpb1JhbmRvbVBsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JlY29yZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXVkaW9SZWNvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JlcGVh dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SZXBlYXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B dWRpb1Jld2luZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SZXdpbmQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BdWRpb1N0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvU3RvcDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F3YXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF3YXk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9CIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9CYWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWNrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFj a0ZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhY2tGb3J3YXJkOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQmFja1NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWNrU3BhY2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9CYXR0ZXJ5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYXR0ZXJ5OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQmVnaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJlZ2luOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQmx1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmx1ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0JsdWV0b290aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmx1ZXRvb3RoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQm9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQm9vazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0JvdW5jZUtleXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCb3VuY2VLZXlz X0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JyZWFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBC cmVhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0JyaWdodG5lc3NBZGp1c3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEJyaWdodG5lc3NBZGp1c3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5fU0hP UlRVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCeWVsb3J1c3NpYW5fU0hPUlRVOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQnllbG9ydXNzaWFuX3Nob3J0dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnll bG9ydXNzaWFuX3Nob3J0dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0MiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DRCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ0Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ0g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DX0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENfSDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Nf aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ19oOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Fib3ZlZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbGN1 bGF0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhbGN1bGF0b3I7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DYWxlbmRhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FsZW5kYXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DYW5jZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhbmNlbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0NhcHNfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2Fwc19Mb2NrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDY2Fyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2NlZGlsbGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2NpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2g7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DbGVhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2xlYXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DbGVhckdyYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENsZWFyR3JhYjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0Nsb3NlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDbG9zZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0NvZGVpbnB1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29kZWlucHV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ29sb25TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb2xvblNp Z247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Db21tdW5pdHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENv bW11bml0eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyYXN0QWRqdXN0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBDb250cmFzdEFkanVzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyb2xfTCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ29udHJvbF9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJvbF9SIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cm9sX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db3B5Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBDb3B5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3J1emVpcm9TaWdu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDcnV6ZWlyb1NpZ247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D dXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5Y2xlQW5n bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5Y2xlQW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19BOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfQkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0JFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQ0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19DSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEVfZGVzY2VuZGVyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19DSEVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfQ0hFX3ZlcnRzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X0NIRV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfREUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0RFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRFpIRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRFpIRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19FRiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRUY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfRUw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfRU07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfRU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTl9kZXNj ZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VOX2Rlc2NlbmRlcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0VSIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19FUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VTIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19FUzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0dIRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfR0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfR0hFX2Jh ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfR0hFX2JhcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0hBUkRTSUdOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19IQVJEU0lHTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0hBX2Rlc2NlbmRlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSEFfZGVzY2VuZGVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0lFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19JRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0lPIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19JTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0lfbWFjcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19KRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0tBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0tBX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfS0FfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0FfdmVy dHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0FfdmVydHN0cm9rZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0xKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfTEpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTkpFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19OSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19PIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfT19i YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX09fYmFyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfUEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1BFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0NIV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX1NDSFdBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hBIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19TSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSENIQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hDSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19TSEhBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSEhBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfU0hPUlRJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19TSE9SVEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TT0ZUU0lHTiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfU09GVFNJR047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19U RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVEU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19UU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1RTRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfVV9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFpZ2h0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VX3N0cmFpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfVV9zdHJhaWdodF9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX1Vfc3RyYWlnaHRfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVkUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1ZFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf WUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1lBOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfWUVSVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWUVSVTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19ZVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1pFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19aRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1pIRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkhFX2Rl c2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWkhFX2Rlc2NlbmRlcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19iZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfYmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19jaGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2NoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2NoZV9k ZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2NoZV9kZXNjZW5kZXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19jaGVfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfY2hlX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19kemhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19kemhlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VmIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19lZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VsIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VtIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX2VuX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf ZW5fZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf Z2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19naGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19naGVfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19naGVf YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaGFfZGVzY2VuZGVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19oYV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19oYXJkc2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGFy ZHNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaV9tYWNyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2lfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfaWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2llOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfaW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2lvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfa2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2thOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfa2FfZGVzY2VuZGVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19rYV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19rYV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19rYV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbGplIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19samU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19uamUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX25qZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX287CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19vX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfb19i YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19wZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zY2h3YSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zaGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3NoY2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zaGNoYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX3NoaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX3NoaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zaG9ydGkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX3Nob3J0aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NvZnRz aWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zb2Z0c2lnbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX3RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY190ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3RzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfdHNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3VfbWFjcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3Vfc3RyYWlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3Vfc3Ry YWlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191X3N0cmFpZ2h0X2JhciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdV9zdHJhaWdodF9iYXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY192ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY195YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeWE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY195ZXJ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY195ZXJ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfeXUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfemUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf emhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY196aGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY196aGVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y196aGVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0RPUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRE9TOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBEYWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9EY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERjYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0RlbGV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGVsZXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRGlzcGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGlzcGxh eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0RvY3VtZW50cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRG9j dW1lbnRzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG9uZ1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IERvbmdTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0RzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERz dHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRU5HIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFTkc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9FVEgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVUSDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Va SCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRVpIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWFib3ZlZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FYWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ViZWxv d2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RWNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9F Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3Vt ZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJj dW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4Z3JhdmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVj aXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY3VTaWdu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY3VTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWRpYWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWdyYXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVob29rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWlz dV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWlzdV9TaGlmdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0Vpc3VfdG9nZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFaXN1X3RvZ2dsZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0VqZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFamVjdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVtYWNyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9FbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVuZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVvZ29uZWs7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Fc2NhcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVzY2FwZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0V0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXRoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXRp bGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FdXJv U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXVyb1NpZ247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9F eGNlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXhjZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FeGVj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFeGVjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXhw bG9yZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV4cGxvcmVyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxIildCisrCQlw dWJsaWMgY29uc3QgdWludCBGMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjEwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjExIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YxMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjE0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GMTUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBGMTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEYxODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxOSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRjE5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjIwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyMTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YyMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYyNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyNzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YyOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjI5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYzMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjMxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYzMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9G NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Rjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GRnJhbmNTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGRnJhbmNTaWdu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYWJv dmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG YXJzaV8wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RmFyc2lfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEZhcnNpXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8zIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGYXJzaV8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRmFyc2lfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEZhcnNpXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV82IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGYXJzaV82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRmFyc2lfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEZhcnNpXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV85IildCisrCQlwdWJsaWMgY29u c3QgdWludCBGYXJzaV85OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfeWVoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGYXJzaV95ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXZvcml0ZXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEZhdm9yaXRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZpbmFuY2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEZpbmFuY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaW5kIildCisrCQlw dWJsaWMgY29uc3QgdWludCBGaW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmlyc3RfVmlydHVhbF9TY3Jl ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpcnN0X1ZpcnR1YWxfU2NyZWVuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRm9yd2FyZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0ZyYW1lQmFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRnJhbWVCYWNrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRnJhbWVGb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGcmFt ZUZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HYW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYW1lOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYnJldmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdjYXJvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0djZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2VkaWxsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2ly Y3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2FuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9hbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2JhbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fYmFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2Fu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jYW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H ZW9yZ2lhbl9jaGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaGFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR2VvcmdpYW5fY2hpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vvcmdp YW5fY2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2NpbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5fY2lsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZG9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9kb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9l biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H ZW9yZ2lhbl9maSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZmk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9nYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2dh bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2doYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX2doYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oYWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdlb3JnaWFuX2hhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hhciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGFyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5faGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5faGllIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oaWU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9ob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2luIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHZW9yZ2lhbl9pbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2poYW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2poYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lh bl9qaWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2ppbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX2thbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fa2FuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fa2hhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vv cmdpYW5fa2hhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2xhcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fbGFzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fbWFuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9tYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lh bl9uYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX25hcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX29uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9vbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX3BhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vvcmdp YW5fcGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcGhhciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5fcGhhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3FhciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcWFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f cmFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9yYWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl9zYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3NhbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX3NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX3NoaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl90YW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdlb3JnaWFuX3RhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3RhciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3VuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5fdmluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl92aW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl93ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f d2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl94YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX3hhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3plbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5femVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5femhhciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5femhhcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dv IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0FMUEhB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19BTFBIQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX0FMUEhBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19BTFBIQWFjY2Vu dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0JFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX0JFVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19DSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX0NISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0RFTFRBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19ERUxUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VQU0lMT04iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VQU0lMT047CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19FUFNJTE9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19FUFNJTE9OYWNj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19FVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FVEFhY2NlbnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX0VUQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0dBTU1BIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19HQU1NQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X0lPVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0lPVEE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19JT1RBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBYWNj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfSU9UQWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFk aWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQWRpZXJlc2lzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfS0FQUEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0tB UFBBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTEFNQkRBIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19MQU1CREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19MQU1EQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfTEFNREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19NVSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfTVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19OVSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUVH QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01FR0E7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19PTUVHQWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01FR0FhY2Nl bnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUlDUk9OIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19PTUlDUk9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01JQ1JPTmFjY2VudCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01JQ1JPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX1BISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUEhJOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfUEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1BJOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfUFNJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19QU0k7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19SSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1JI TzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1NJR01BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19TSUdNQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1RBVSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfVEFVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVEhFVEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX1RIRVRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxPTjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX1VQU0lMT05hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1VQU0lMT05h Y2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19VUFNJTE9OZGllcmVzaXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX1VQU0lMT05kaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X1hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19YSTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX1pFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1pFVEE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19hY2NlbnRkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf YWNjZW50ZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hbHBoYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfYWxwaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hbHBoYWFjY2Vu dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYWxwaGFhY2NlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19iZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19iZXRhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfY2hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19jaGk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19kZWx0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfZGVsdGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19lcHNpbG9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19lcHNpbG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXBzaWxvbmFjY2Vu dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXBzaWxvbmFjY2VudDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX2V0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXRhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfZXRhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19ldGFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19maW5hbHNtYWxsc2lnbWEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2ZpbmFsc21hbGxzaWdtYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX2dhbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19nYW1tYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX2hvcml6YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19o b3JpemJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX2lvdGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhYWNjZW50IildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19pb3RhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf aW90YWFjY2VudGRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19pb3RhYWNj ZW50ZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhZGllcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2thcHBhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19rYXBwYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX2xhbWJkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbGFtYmRhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfbGFtZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X2xhbWRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX211OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX251OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21lZ2EiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX29tZWdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21lZ2FhY2NlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29tZWdhYWNjZW50OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfb21pY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX29taWNyb25hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX29taWNyb25hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19waGkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3BoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3BpIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19waTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Bz aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcHNpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfcmhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19yaG87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19zaWdtYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfc2lnbWE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3N3 aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3RhdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfdGF1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdGhldGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX3RoZXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vw c2lsb25hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb25hY2NlbnQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla191cHNpbG9uYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb25hY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX3Vwc2lsb25kaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBz aWxvbmRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfeGkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX3hpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfemV0YSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfemV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0FFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FyYWVBIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfQXJhZUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQXJhZUFF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQXJhZUFFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0JhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQmFuamE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfQ2lldWMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9D aWV1YzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Db2RlaW5wdXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9Db2RlaW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRGlrZXVkIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0VPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRU87CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfRVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FVTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9FbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FbmQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9IYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9IaWV1aCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0hpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0kiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0lldW5nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9DaWV1YyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfQ2lldWM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfSl9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX0Rpa2V1ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0hpZXVoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfSl9IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0lldW5n IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9JZXVuZzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9KX0ppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9KaWV1ajsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0toaWV1cSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfS2hpZXVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2l5ZW9nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9LaXllb2dTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaXllb2dTaW9z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2tvZ2ppRGFscmluSWV1bmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9KX0trb2dqaURhbHJpbklldW5nOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX01pZXVtOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9KX05pZXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5IaWV1aCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9KX05pZXVuSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX05pZXVu SmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QYW5TaW9zIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSl9QYW5TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUGhpZXVm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9QaGlldWY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9QaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QaWV1YlNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX1BpZXViU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9KX1JpZXVsSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVs SGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bEtpeWVvZyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9SaWV1bE1pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bE1pZXVt OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxQaGlldWYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9KX1JpZXVsUGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmll dWxQaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQaWV1YjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfUmlldWxTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxUaWV1dCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxUaWV1dDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9KX1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Npb3M7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9Tc2FuZ0tpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfU3NhbmdLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9Tc2Fu Z1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1NzYW5nU2lvczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9KX1RpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf Sl9UaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1llb3JpbkhpZXVoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSl9ZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KYW1vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSmFtbzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9KZW9uamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KZW9uamE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9LaGlldXEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9LaGlldXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2l5ZW9nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0tpeWVvZ1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9LaXllb2dTaW9z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0trb2dqaURhbHJpbklldW5nIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfS2tvZ2ppRGFscmluSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9NaWV1bTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9NdWx0aXBsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX011bHRpcGxlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX05pZXVuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTmlldW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfTmlldW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVuSGlldWg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTmlldW5KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX05pZXVuSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfT0UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9PRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QYW5T aW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUGFuU2lvczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QaGlldWY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaWV1YlNpb3MiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9QaWV1YlNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUG9z dEhhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUG9zdEhhbmphOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1ByZUhhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf UHJlSGFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUHJldmlvdXNDYW5kaWRhdGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QcmV2aW91c0NhbmRpZGF0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9SaWV1bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9SaWV1bEhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsS2l5ZW9nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxLaXllb2c7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfUmlldWxNaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVs TWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxQaGlldWYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9SaWV1bFBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1 bFBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxQaWV1YjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9SaWV1bFNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9SaWV1bFNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxUaWV1dCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsVGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf UmlldWxZZW9yaW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsWWVv cmluSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUm9tYWphIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfUm9tYWphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NpbmdsZUNhbmRp ZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NpbmdsZUNhbmRpZGF0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf U2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TcGVjaWFsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfU3BlY2lhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ0Rpa2V1ZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nRGlrZXVkOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1NzYW5nSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2Fu Z0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5nS2l5ZW9nIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfU3NhbmdLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Nh bmdQaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nUGlldWI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfU3NhbmdTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N0YXJ0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfU3RhcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25n ZXVtTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1NaWV1 bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1QaGlldWYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1QaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfU3Vua3llb25nZXVtUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9T dW5reWVvbmdldW1QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9UaWV1dCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1RpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfV0FFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0FFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1dFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfV0VPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0VPOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf V0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9ZQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9ZQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9ZRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZRU8iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Z TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lPOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWVU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfWWVvcmluSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZZW9y aW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5rYWt1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5rYWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVicmV3X3N3 aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVicmV3X3N3aXRjaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hlbHAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhlbHA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I ZW5rYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhlbmthbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hl bmthbl9Nb2RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIZW5rYW5fTW9kZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hpYmVybmF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGliZXJuYXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGlyYWdhbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpcmFnYW5hOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGlyYWdhbmFfS2F0YWthbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhpcmFnYW5hX0thdGFrYW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGlzdG9yeSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGlzdG9yeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hvbWUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ib21lUGFnZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSG9tZVBhZ2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ib3RMaW5rcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSG90TGlua3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ic3Ryb2tlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSHlwZXJfTCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSHlwZXJfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0h5cGVyX1IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEh5cGVyX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0NlbnRlcl9PYmplY3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19DZW50ZXJfT2JqZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Nv bnRpbnVvdXNfVW5kZXJsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fQ29udGludW91 c19VbmRlcmxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRGlzY29udGludW91c19VbmRlcmxpbmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19EaXNjb250aW51b3VzX1VuZGVybGluZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19FbXBoYXNpemUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19F bXBoYXNpemU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElTT19FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9Eb3duIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfRG93bjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0lTT19GYXN0X0N1cnNvcl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9D dXJzb3JfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9SaWdodCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX1JpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX0Zhc3RfQ3Vyc29yX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJz b3JfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmlyc3RfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19GaXJzdF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GaXJzdF9Hcm91cF9M b2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmlyc3RfR3JvdXBfTG9jazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lTT19Hcm91cF9MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dy b3VwX0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX1NoaWZ0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fR3JvdXBfU2hpZnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JU09fTGFzdF9Hcm91cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xhc3RfR3JvdXA7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JU09fTGFzdF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fTGFzdF9Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xlZnRfVGFiIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGVmdF9UYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TGV2ZWwyX0xhdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwyX0xhdGNoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsM19MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SVNPX0xldmVsM19MYXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDNfTG9jayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xl dmVsM19TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19TaGlmdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19MZXZlbDVfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19MZXZlbDVfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWw1X0xvY2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZl bDVfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfU2hpZnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xvY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fTW92ZV9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19Nb3ZlX0xpbmVfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3ZlX0xpbmVfVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Nb3ZlX0xpbmVfVXA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fTmV4dF9Hcm91cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX05leHRfR3JvdXA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fTmV4dF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fTmV4dF9Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfTGluZV9E b3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9MaW5lX0Rvd247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fUGFydGlhbF9MaW5lX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fUGFydGlhbF9MaW5lX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfU3BhY2VfTGVm dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1BhcnRpYWxfU3BhY2VfTGVmdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lTT19QYXJ0aWFsX1NwYWNlX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fUGFydGlhbF9TcGFjZV9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QcmV2X0dyb3Vw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUHJldl9Hcm91cDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0lTT19QcmV2X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QcmV2X0dy b3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUmVsZWFzZV9Cb3RoX01hcmdpbnMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19SZWxlYXNlX0JvdGhfTWFyZ2luczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0lTT19SZWxlYXNlX01hcmdpbl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09f UmVsZWFzZV9NYXJnaW5fTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNlX01hcmdpbl9S aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1JlbGVhc2VfTWFyZ2luX1JpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX1NldF9NYXJnaW5fTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX1NldF9NYXJnaW5fTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19TZXRfTWFyZ2luX1Jp Z2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fU2V0X01hcmdpbl9SaWdodDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWFib3ZlZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJYWN1dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEliZWxvd2Rv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0licmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWJyZXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElj aXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWhvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0luc2VydCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSW5zZXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSW9nb25layIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0pjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBK Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEs7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8wOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS1BfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9LUF8zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8zOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf NCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF82IildCisrCQlw dWJsaWMgY29uc3QgdWludCBLUF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS1BfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEtQXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF85IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF85OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfQWRkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9BZGQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9CZWdpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S1BfQmVnaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9EZWNpbWFsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF9EZWNpbWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRGVsZXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF9EZWxldGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9EaXZpZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQX0RpdmlkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Rvd24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FbmQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0VudGVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0VxdWFsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9FcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YxIild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9GMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9GMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBLUF9GMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Y0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBLUF9GNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0hvbWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtQX0hvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9JbnNlcnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQX0luc2VydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0xlZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9NdWx0aXBseSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTXVsdGlwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9O ZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9OZXh0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf UGFnZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9QYWdlX0Rvd247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF9QYWdlX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9QYWdlX1VwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfUHJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1ByaW9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1Jp Z2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfU2VwYXJhdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9TZXBhcmF0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9TcGFjZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfU3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9TdWJ0cmFjdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS1BfU3VidHJhY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9UYWIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQX1RhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1VwIildCisrCQlw dWJsaWMgY29uc3QgdWludCBLUF9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmFfTG9jayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgS2FuYV9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuYV9TaGlmdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2FuYV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmpp IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5qaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmppX0Jh bmdvdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2FuamlfQmFuZ291OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS2F0YWthbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEthdGFrYW5hOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS2JkQnJpZ2h0bmVzc0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdo dG5lc3NEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkQnJpZ2h0bmVzc1VwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLYmRCcmlnaHRuZXNzVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRMaWdodE9uT2Zm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRMaWdodE9uT2ZmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtjZWRpbGxhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS29yZWFuX1dvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS29yZWFuX1dvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9M MSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMTAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEwxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0w0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0w1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0w2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBMNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBMODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGFzdF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTGFzdF9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDAi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gx IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gxOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNo MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5j aDMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVu Y2g0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1 bmNoNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoNTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xh dW5jaDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9M YXVuY2g3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TGF1bmNoOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0xhdW5jaDkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9MYXVuY2hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTGF1bmNoQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoQjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0xhdW5jaEMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9MYXVuY2hEIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hEOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTGF1bmNoRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xhdW5jaEYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9MYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExiZWxvd2RvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0xjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGNhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTGNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExjZWRpbGxhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGVmdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0xpZ2h0QnVsYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGlnaHRCdWxiOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTGluZWZlZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpbmVmZWVk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTGlyYVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpcmFT aWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTG9nR3JhYkluZm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IExvZ0dyYWJJbmZvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTG9nT2ZmIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMb2dPZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dXaW5kb3dUcmVlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMb2dXaW5kb3dUcmVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTHN0cm9rZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX00iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9EU0UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9EU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9u aWFfR0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfR0pFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTWFjZWRvbmlhX0tKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0tK RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9kc2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE1hY2Vkb25pYV9kc2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfZ2plIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNYWNlZG9uaWFfZ2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2tq ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX2tqZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X01hZV9Lb2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWVfS29obzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX01haWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1haWw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N YWlsRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFpbEZvcndhcmQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9NYXJrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hcmtldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX01hc3N5byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFzc3lvOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTWVldGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVldGluZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX01lbW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbW87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9NZW51IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZW51OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVu dUtCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZW51S0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51 UEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnVQQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lc3Nl bmdlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVzc2VuZ2VyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TWV0YV9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZXRhX0w7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N ZXRhX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1ldGFfUjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01p bGxTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNaWxsU2lnbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X01vZGVMb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb2RlTG9jazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX01vZGVfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb2RlX3N3aXRjaDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX01vbkJyaWdodG5lc3NEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN b25CcmlnaHRuZXNzRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vbkJyaWdodG5lc3NVcCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTW9uQnJpZ2h0bmVzc1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW91c2VL ZXlzX0FjY2VsX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0FjY2Vs X0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vdXNlS2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1vdXNlS2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWhlbmthbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTXVoZW5rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWx0aV9rZXki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE11bHRpX2tleTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX011bHRp cGxlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdWx0aXBsZUNhbmRpZGF0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX011c2ljIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdXNpYzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX015Q29tcHV0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE15Q29tcHV0 ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NeVNpdGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNeVNp dGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX05hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTmFpcmFTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOYWlyYVNpZ247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9OY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5jYXJvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX05jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOY2VkaWxsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX05ldyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTmV3U2hlcWVsU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3U2hlcWVs U2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX05ld3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ld3M7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9OZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXh0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTmV4dF9WTW9kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dF9WTW9k ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX05leHRfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE5leHRfVmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OdGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX051bV9Mb2NrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBOdW1fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX08iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgT0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09iYXJyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE9iYXJyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgT2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9jaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhhY3V0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X09jaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4 YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBPY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXho b29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxl eHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09kb3VibGVhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgT2RvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2ZmaWNlSG9tZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT2ZmaWNlSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ncmF2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE9ob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5hY3V0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuYmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PaG9ybmdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfT2hvcm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmhvb2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9PaG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9y bnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg T21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09vYmxpcXVlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBPb2JsaXF1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09wZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE9wZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PcGVuVVJMIildCisrCQlwdWJsaWMgY29uc3QgdWludCBP cGVuVVJMOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3B0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBP cHRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Pc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9z bGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX090aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3Rp bGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfT3ZlcmxheTFfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBPdmVybGF5MV9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PdmVybGF5Ml9FbmFibGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE92ZXJsYXkyX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ai KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhZ2VfRG93 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFnZV9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFn ZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFnZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bh c3RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYXN0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhdXNl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Blc2V0YVNp Z24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBlc2V0YVNpZ247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q aG9uZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGhvbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QaWN0 dXJlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGljdHVyZXM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q b2ludGVyX0FjY2VsZXJhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQWNjZWxl cmF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUG9pbnRlcl9CdXR0b24xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b24yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q b2ludGVyX0J1dHRvbjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uMzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UG9pbnRlcl9CdXR0b240OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b241IildCisrCQlw dWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVy X0J1dHRvbl9EZmx0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbl9EZmx0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfRGJsQ2xpY2sxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2syOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9EYmxDbGljazMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJs Q2xpY2szOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2s0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxD bGljazUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2s1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG9pbnRlcl9EYmxDbGlja19EZmx0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQ b2ludGVyX0RibENsaWNrX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5OZXh0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RmbHRCdG5OZXh0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUG9pbnRlcl9EZmx0QnRuUHJldiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRl cl9EZmx0QnRuUHJldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUG9pbnRlcl9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duTGVm dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9Eb3duTGVmdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1BvaW50ZXJfRG93blJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rv d25SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFBvaW50ZXJfRHJhZzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWcyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWcyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9EcmFnMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BvaW50ZXJfRHJhZzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJh ZzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWc1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQb2ludGVyX0RyYWc1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnX0RmbHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZ19EZmx0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9p bnRlcl9FbmFibGVLZXlzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0VuYWJsZUtl eXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFBvaW50ZXJfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfUmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBvaW50ZXJfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwIild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9VcExlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXBMZWZ0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG9pbnRlcl9VcFJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVy X1VwUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb3dlckRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvd2VyRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bvd2VyT2ZmIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb3dlck9mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ByZXZfVk1vZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFByZXZfVk1vZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2X1ZpcnR1YWxfU2Ny ZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmV2X1ZpcnR1YWxfU2NyZWVuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUHJldmlvdXNDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZp b3VzQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJpbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFByaW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFByaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9SMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFIxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUjExOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBSMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFIxMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1IxNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUjE1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9SMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9S MyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9SNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9SOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JjYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmNlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVkIild CisrCQlwdWJsaWMgY29uc3QgdWludCBSZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWRvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSZWRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVmcmVzaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUmVmcmVzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlbG9hZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUmVsb2FkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVwZWF0S2V5c19FbmFibGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlcGVhdEtleXNfRW5hYmxlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUmVwbHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlcGx5OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UmV0dXJuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZXR1cm47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9S aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2Nr ZXJEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb2NrZXJEb3duOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUm9ja2VyRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlckVudGVyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUm9ja2VyVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlclVwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUm9tYWppIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb21hamk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Sb3RhdGVXaW5kb3dzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb3Rh dGVXaW5kb3dzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm90YXRpb25LQiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUm90YXRpb25LQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvdGF0aW9uUEIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFJvdGF0aW9uUEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SdXBlZVNpZ24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFJ1cGVlU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TQ0hXQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU0NIV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2F2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2F2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2NpcmN1bWZsZXgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2NyZWVuU2F2ZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNjcmVlblNhdmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xs Q2xpY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9sbENsaWNrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2Nyb2xsRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsRG93bjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1Njcm9sbFVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxVcDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Njcm9sbF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxf TG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NlYXJjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Vh cmNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VsZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZWxl Y3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TZWxlY3RCdXR0b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNlbGVjdEJ1dHRvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNlbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0RKRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2VyYmlhbl9ESkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0RaRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2VyYmlhbl9EWkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0pFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlh bl9MSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fTEpFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2VyYmlhbl9OSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fTkpFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2VyYmlhbl9UU0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFu X1RTSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2RqZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2VyYmlhbl9kamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2R6ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2VyYmlhbl9kemU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2plIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9s amUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fbGplOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2VyYmlhbl9uamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fbmplOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2VyYmlhbl90c2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX3Rz aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaGlm dF9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hpZnRfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2hpZnRfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NoaWZ0X1IiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNoaWZ0X1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaG9wIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5nbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2EiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FhMiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9hYTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZTIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZWUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWVlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9h ZWUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FlZTI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2FpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9haTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWkyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfYXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYXU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2F1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hdTI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2JhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9iaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYmhhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9jYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9jYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfY2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2NoYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfZGRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2Rk YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZGRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9kZGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfZGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kaGhhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2RoaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZTIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2VlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2VlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lZTIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfZWUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9mYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9mYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZ2EiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfZ2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2doYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9naGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2gyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2gyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9oYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9oYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9pMiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9pMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaWkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2lpMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9paTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2phIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2phOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9qaGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfamhhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9q bnlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2pueWE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2thIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2thOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9raGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfa2hhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9rdW5kZGFsaXlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2t1bmRkYWxp eWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2xhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2xhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9sdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbHUyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2x1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbHV1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2x1dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbHV1MiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9sdXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9tYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbWJhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX21iYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25kZGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmRkYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmRoYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9u ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf bmcyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25nMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfbmdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25nYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25qYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1Npbmhfbm5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25uYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfbnlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX255YTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9vMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vMjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1Npbmhfb28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfb287CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX29vMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vbzI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX3BhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3BhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9waGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcGhh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9y YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf cmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3JpaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9yaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3J1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9ydTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3J1dTIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfcnV1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfc2EiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfc2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3NoYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9zaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3NzaGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfc3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdGhhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX3RoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdGhoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90aGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90dGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdHRhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90 dGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3R0aGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfdTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdTI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX3V1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3V1OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF91dTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdXUyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF92YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF92YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfeWE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TbGVlcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2xlZXA7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TbG93S2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNsb3dLZXlzX0VuYWJs ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NwZWxsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTcGVsbDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NwbGl0U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTcGxp dFNjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0YW5kYnkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN0YW5kYnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdGFydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3RhcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdGlja3lLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU3RpY2t5S2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdG9wIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VidGl0bGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFN1YnRpdGxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VwZXJfTCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU3VwZXJfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1cGVyX1IiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFN1cGVyX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBwb3J0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBTdXBwb3J0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VzcGVuZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3VzcGVuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8x IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3 aXRjaF9WVF8xMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEwOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3dpdGNoX1ZUXzExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRf MTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN3aXRjaF9WVF8xMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8yIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTd2l0Y2hfVlRfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8zIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9W VF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1N3aXRjaF9WVF81IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1N3aXRjaF9WVF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRf NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBT d2l0Y2hfVlRfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF84IildCisrCQlwdWJsaWMgY29u c3QgdWludCBTd2l0Y2hfVlRfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF85IildCisrCQlw dWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N5c19SZXEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFN5c19SZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVEhPUk4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRIT1JOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGFiIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rhc2tQYW5lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUYXNrUGFuZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RjYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGNlZGlsbGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGVybWluYWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRlcm1pbmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGVybWluYXRlX1NlcnZlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGVybWluYXRlX1NlcnZlcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfYmFodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9iYWh0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9ib2JhaW1haSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ib2JhaW1h aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9jaG9jaGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaGFuZyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9jaG9jaGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hpbmci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfY2hvY2hpbmc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX2Nob2Nob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfY2hvY2hvZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfZG9jaGFkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9kb2No YWRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9kb2RlayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9kb2RlazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfZm9mYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9mb2ZhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9mb2ZhbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9mb2ZhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfaG9oaXAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfaG9oaXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2hvbm9r aHVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2hvbm9raHVrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9raG9raGFpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2toYWk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX2tob2tob24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf a2hva2hvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2h1YXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfa2hva2h1YXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2tod2FpIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2tod2FpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9r aG9yYWtoYW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob3Jha2hhbmc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2tva2FpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tva2Fp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sYWtraGFuZ3lhbyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9sYWtraGFuZ3lhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrY2hldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtjaGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWto YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfbGVraG9rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2hvazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfbGVra2FvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2thbzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrbnVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9sZWtudW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtwYWV0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2xla3BhZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NhbSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3Np IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3NpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9sZWtzb25nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3Nvbmc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX2xla3N1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzdW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xvY2h1bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbG9jaHVsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbG9saW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2xvbGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbHUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWNoYXR0YXdhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWNoYXR0YXdhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9tYWllayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWllazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfbWFpaGFuYWthdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWlo YW5ha2F0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWloYW5ha2F0X21haXRobyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9tYWloYW5ha2F0X21haXRobzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfbWFpdGFpa2h1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRhaWtodTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfbWFpdGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21h aXRobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpdHJpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX21haXRyaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpeWFtb2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbWFpeWFtb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21vbWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbW9tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbmdv bmd1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25nb25ndTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbmlraGFoaXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbmlraGFoaXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX25vbmVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25v bmVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ub251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX25vbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX29hbmciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfb2FuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGFpeWFubm9pIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3BhaXlhbm5vaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhpbnRo dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waGludGh1OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9waG9waGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bob3BoYW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3Bob3BodW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bo b3BodW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9waG9zYW1waGFvIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX3Bob3NhbXBoYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3BvcGxhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3BvcGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9yb3J1 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9yb3J1YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfcnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcnU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX3NhcmFhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9zYXJhYWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf c2FyYWFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWltYWltYWxhaSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9zYXJhYWltYWltYWxhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2Fy YWFpbWFpbXVhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWltYWltdWFuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf c2FyYWFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9zYXJhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfc2FyYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFpaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFv IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFvOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9zYXJhdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfc2FyYXVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfc2FyYXVlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9z YXJhdWVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfc2FyYXV1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3J1c2kiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfc29ydXNpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3NhbGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29zYWxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9z b3NvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Nvc287CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX3Nvc3VhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Nvc3VhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV90aGFudGhha2hhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aGFu dGhha2hhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvbmFuZ21vbnRobyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV90aG9uYW5nbW9udGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG9w aHV0aGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob3BodXRoYW87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX3Rob3RoYWhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90 aGFoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3RoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfdGhvdGhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhvbmciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGhvbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3Ro dW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob3RodW5nOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV90b3BhdGFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3RvcGF0YWs7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX3RvdGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rv dGFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV93b3dhZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfd293YWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV95b3lhayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV95b3lhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfeW95aW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX3lveWluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rob3JuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RpbWUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRpbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub0RvTGlzdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVG9Eb0xpc3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub29scyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVG9vbHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3BNZW51IildCisrCQlwdWJs aWMgY29uc3QgdWludCBUb3BNZW51OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRPZmYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRvdWNocGFkT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRP biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRPbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rv dWNocGFkVG9nZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3VjaHBhZFRvZ2dsZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RvdXJva3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvdXJva3U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UcmF2ZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRyYXZlbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RzbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVHNsYXNoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1VXQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVVdCOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWFjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VYmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vi cmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWNp cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVjaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWRpYWVyZXNpczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Vkb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWRvdWJs ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9y bmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVWhvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuZ3JhdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFVob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmhvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JudGls ZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V a3JhaW5pYW5fR0hFX1dJVEhfVVBUVVJOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5p YW5fR0hFX1dJVEhfVVBUVVJOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX0kiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX0lF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fSUU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V a3JhaW5pYW5fWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9ZSTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFpbmlhbl9naGVfd2l0aF91cHR1cm4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVrcmFpbmlhbl9naGVfd2l0aF91cHR1cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5f aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX2k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V a3JhaW5pYW5faWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9pZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFpbmlhbl95aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFu X3lpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5fSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWtyYW5pYW5fSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX0pFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVa3Jhbmlhbl9KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX1lJIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX2ki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jh bmlhbl9qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5famU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Va3Jhbmlhbl95aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5feWk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9VbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVbWFjcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVW5kbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW5kbzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VuZ3JhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW5ncmFiOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW9nb25lazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVcDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1VyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVcmluZzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vz ZXIxS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXIxS0I7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V c2VyMktCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVc2VyMktCOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VXNlclBCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVc2VyUEI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Yi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WZW5kb3JIb21lIild CisrCQlwdWJsaWMgY29uc3QgdWludCBWZW5kb3JIb21lOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmlkZW8i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZpZGVvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmlldyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVmlldzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZvaWRTeW1ib2wiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFZvaWRTeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XIildCisr CQlwdWJsaWMgY29uc3QgdWludCBXOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV0xBTiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgV0xBTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dXVyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgV1dXOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBXYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XYWtlVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFdha2VVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBXY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dkaWFlcmVzaXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFdkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZWJDYW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFdlYkNhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgV2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2hlZWxCdXR0b24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFdoZWVsQnV0dG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2luZG93Q2xl YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdpbmRvd0NsZWFyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf V29uU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV29uU2lnbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1dvcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9YIild CisrCQlwdWJsaWMgY29uc3QgdWludCBYOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWGFib3ZlZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCBYYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9YZmVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBYZmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgWTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWJlbG93ZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBZYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZY2lyY3VtZmxleCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgWWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZGlhZXJlc2lzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBZZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWVsbG93 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZZWxsb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZ3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lob29rIild CisrCQlwdWJsaWMgY29uc3QgdWludCBZaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1l0aWxkZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgWXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgWjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1phYm92ZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgWmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBaYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFpjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1plbl9Lb2hvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBaZW5fS29obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1plbmtha3UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFplbmtha3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5rYWt1X0hhbmtha3Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbmtha3VfSGFua2FrdTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1pvb21JbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWm9vbUluOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Wm9vbU91dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWm9vbU91dDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1pzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpzdHJva2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBhYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYmVsb3dkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fib3Zl ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fi cmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJy ZXZlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYWJyZXZlYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWJlbG93 ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGFicmV2ZWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlaG9vayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYWJyZXZlaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZXRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhYnJldmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fj aXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBhY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhncmF2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2FjaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXho b29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYWNpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FkaWFlcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hZ3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBhaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FtYWNyb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGFtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hbXBlcnNhbmQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFtcGVyc2FuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FvZ29uZWsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGFvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hcG9zdHJvcGhlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhcG9zdHJvcGhlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBwcm94ZXEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGFwcHJveGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBwcm94aW1h dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwcHJveGltYXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFyaW5nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXNj aWljaXJjdW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFzY2lpY2lyY3VtOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYXNjaWl0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXNjaWl0aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2FzdGVyaXNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhc3RlcmlzazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2F0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2F0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YmFja3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYWNrc2xhc2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9iYWxsb3Rjcm9zcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFsbG90Y3Jvc3M7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JlY2F1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJlY2F1c2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ibGFuayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmxhbms7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ib3RpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90aW50ZWdyYWw7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ib3RsZWZ0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3Rs ZWZ0cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90bGVmdHNxYnJhY2tldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYm90bGVmdHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRzdW1t YXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGxlZnRzdW1tYXRpb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ib3RyaWdodHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmlnaHRw YXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdodHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYm90cmlnaHRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdodHN1bW1h dGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmlnaHRzdW1tYXRpb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ib3R0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3R0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYm90dmVydHN1bW1hdGlvbmNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90 dmVydHN1bW1hdGlvbmNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNlbGVmdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhY2VsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2VyaWdodCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2VyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNr ZXRsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFja2V0bGVmdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWNrZXRyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2tldHJpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9ibGFuayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9ibGFuazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90XzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8xMCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMTA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdF8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8yOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90XzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF81IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF81OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90XzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 Xzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF84IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdF84OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfOSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjM0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz NDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTY3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0 NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz NDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTIzNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTIzNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTIzNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy MzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTIzNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy NDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTI0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Njc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEzNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0Njc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Njc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NjciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzY3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzE0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0 NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzE0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzIzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjM0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTY3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzIzNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU3ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzIzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0Njc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDY4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0Njg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzIzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzIzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzIzNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yMzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjM3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzI0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU2NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU2 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzI3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yOCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1Njc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU3ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18zNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18zNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzM1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNjc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18zNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c180IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c180NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTY4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180 NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c180NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NjciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c180Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf NDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c181NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Njc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c182NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c182Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c183IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c183OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c184OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJldmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJva2VuYmFy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicm9rZW5iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jIild CisrCQlwdWJsaWMgY29uc3QgdWludCBjOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY19oIildCisrCQlwdWJs aWMgY29uc3QgdWludCBjX2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGNhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgY2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2FyZW9mIildCisrCQlwdWJs aWMgY29uc3QgdWludCBjYXJlb2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYXJldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgY2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jY2Fyb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGNjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NjZWRpbGxhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBjY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NjaXJjdW1mbGV4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBjY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jZW50IildCisrCQlw dWJsaWMgY29uc3QgdWludCBjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2hlY2tlcmJvYXJkIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBjaGVja2VyYm9hcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaGVja21hcmsiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGNoZWNrbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NpcmNsZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2x1YiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgY2x1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NvbG9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBjb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NvbW1hIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBjb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NvbnRhaW5zYXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGNvbnRhaW5zYXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb3B5cmlnaHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGNvcHlyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBjcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nyb3NzaW5nbGluZXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGNyb3NzaW5nbGluZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdWJlcm9v dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3ViZXJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdXJy ZW5jeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3VycmVuY3k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9j dXJzb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGN1cnNvcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RhZ2dlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGFnZ2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGNhcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0EiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9JIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX08iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfVSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlY29tbWEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVjb21tYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlcmV2ZXJzZWRjb21tYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9hYm92ZXJldmVyc2VkY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3Zl cmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZXJpbmc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2Fib3ZldmVydGljYWxsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2Fib3ZldmVydGljYWxsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dicmV2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2JyZXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGVhZF9iZWxvd2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVs b3djaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2NvbW1hIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX2JlbG93Y29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93 ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93ZGlhZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dtYWNyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfYmVsb3dtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93 cmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3Jpbmc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2JlbG93dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3d0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3d2ZXJ0aWNhbGxpbmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfYmVsb3d2ZXJ0aWNhbGxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JyZXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGVhZF9jYXBpdGFsX3NjaHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2NhcGl0 YWxfc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jZWRpbGxhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2lyY3VtZmxleDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfY3VycmVuY3kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY3VycmVuY3k7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Rhc2lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2Rhc2lhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kb3VibGVhY3V0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfZG91YmxlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZG91YmxlZ3Jh dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRf ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2dyZWVrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX2dyZWVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX2hvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2hvcm4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9pbnZlcnRlZGJy ZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2ludmVydGVkYnJldmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX2lvdGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaW90YTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlYWRfbG9uZ3NvbGlkdXNvdmVybGF5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX2xvbmdzb2xpZHVzb3ZlcmxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfbG93bGlu ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9sb3dsaW5lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbWFjcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX287CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX29nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9vZ29uZWs7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3BlcmlzcG9tZW5pIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX3BlcmlzcG9tZW5pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9wc2lsaSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9wc2lsaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfc2VtaXZvaWNl ZF9zb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9zZW1pdm9pY2VkX3NvdW5kOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9zbWFsbF9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9zbWFsbF9zY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfc3Ryb2tlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX3N0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdGlsZGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdm9p Y2VkX3NvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3ZvaWNlZF9zb3VuZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlY2ltYWxwb2ludCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVjaW1h bHBvaW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVncmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWdyZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpYW1vbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRpYW1vbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaWdpdHNwYWNlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkaWdpdHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGludGVncmFsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkaW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaXZpc2lvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGl2aXNpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb2xsYXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRvbGxhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJiYXNlbGluZWRv dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmJhc2VsaW5lZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJsZWFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZG91YmxlZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3VibGVk YWdnZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVsb3dxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRvdWJsZWxvd3F1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25hcnJvdyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bmFycm93OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bmNh cmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duY2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k b3duc2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bnNob2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kb3duc3RpbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25zdGlsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2Rvd250YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3dudGFjazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRzdHJva2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlYWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZWNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2Fyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhiZWxvd2RvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VjaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4 Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVjaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4dGlsZGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9lZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlZGlhZXJlc2lzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9laG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9laWdodHN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWlnaHRzdWJzY3Jp cHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9laWdodHN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlaWdodHN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWxlbWVudG9mIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBlbGVtZW50b2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbGxpcHNpcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZWxsaXBzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbTNzcGFjZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZW0zc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbTRzcGFjZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZW00c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWFjcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1kYXNoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlbWRhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWZpbGxlZGNp cmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1maWxsZWRjaXJjbGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lbWZpbGxlZHJlY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZmlsbGVkcmVjdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2Vtb3BlbmNpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1v cGVuY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1vcGVucmVjdGFuZ2xlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBlbW9wZW5yZWN0YW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbXB0eXNldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZW1wdHlzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbXNwYWNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlbXNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5kYXNoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlbmRhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbmZpbGxlZGNp cmNidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZmlsbGVkY2lyY2J1bGxldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2VuZmlsbGVkc3FidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVu ZmlsbGVkc3FidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbmciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vub3BlbmNpcmNidWxsZXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGVub3BlbmNpcmNidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbm9wZW5zcXVhcmVi dWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVub3BlbnNxdWFyZWJ1bGxldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2Vuc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuc3BhY2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlb2dvbmVrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVxdWFsOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBldGg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9ldGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV0aWxkZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2V4Y2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXhjbGFtOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZXhjbGFtZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXhjbGFtZG93bjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2V6aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXpoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZhYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmVtYWxl c3ltYm9sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmZW1hbGVzeW1ib2w7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWdk YXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWdkYXNoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmls bGVkbGVmdHRyaWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkbGVmdHRyaWJ1 bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHJlY3RidWxsZXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGZpbGxlZHJlY3RidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWRyaWdodHRyaWJ1 bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkcmlnaHR0cmlidWxsZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9maWxsZWR0cmlidWxsZXRkb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBm aWxsZWR0cmlidWxsZXRkb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkdHJpYnVsbGV0dXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHRyaWJ1bGxldHVwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Zml2ZWVpZ2h0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVlaWdodGhzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZml2ZXNpeHRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXNpeHRoczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2ZpdmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZp dmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGZpdmVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJmaWZ0aHMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGZvdXJmaWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3Vyc3Vic2Ny aXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmb3Vyc3Vic2NyaXB0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZm91cnN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmb3Vyc3VwZXJpb3I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9mb3VydGhyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmb3VydGhy b290OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZnVuY3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZ1 bmN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2dhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2Fib3ZlZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZ2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnYnJldmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9nY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdjYXJvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2djZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2VkaWxs YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBn Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dyZWF0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGdyZWF0ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ncmVhdGVydGhhbmVxdWFsIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBncmVhdGVydGhhbmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3VpbGxlbW90bGVm dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3VpbGxlbW90bGVmdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2d1aWxsZW1vdHJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBndWlsbGVtb3RyaWdodDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oYWlyc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhhaXJzcGFjZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoY2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWFydDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld19hbGVwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X2FsZXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2F5aW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhlYnJld19heWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2JldCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X2JldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19iZXRoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYmV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJl d19jaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfY2hldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hlYnJld19kYWxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2RhbGV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RhbGV0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X2RhbGV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19kb3VibGVsb3dsaW5lIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfZG91YmxlbG93bGluZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19maW5hbGthcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbGthcGg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxtZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld19maW5hbG1lbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbG51biIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsbnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3 X2ZpbmFscGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbHBlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X2ZpbmFsemFkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3 X2ZpbmFsemFkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbHphZGkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGhlYnJld19maW5hbHphZGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZ2lt ZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19naW1lbDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYnJld19naW1tZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19naW1tZWw7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZWJyZXdfaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19o ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19oZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld19oZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfa2FwaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2thcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfa3VmIildCisrCQlwdWJs aWMgY29uc3QgdWludCBoZWJyZXdfa3VmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2xhbWVkIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfbGFtZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfbWVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfbWVtOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaGVicmV3X251biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X251bjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld19wZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3BlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X3FvcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d19xb3BoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3Jlc2giKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld19yZXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3NhbWVjaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X3NhbWVjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zYW1l a2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19zYW1la2g7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfc2hpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3NoaW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfdGFmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGFm OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RhdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X3RhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld190ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGV0aCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X3RldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfd2F3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfd2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3lv ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3lvZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld196YWRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld196YWRpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFkaTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld196YWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfemFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YXlpbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X3pheWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGV4YWdyYW0iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGhleGFncmFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpjb25uZWN0b3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6Y29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9y aXpsaW5lc2NhbjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW4xOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6 bGluZXNjYW4zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhvcml6bGluZXNjYW41OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2Nhbjci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW43OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aG9yaXpsaW5lc2NhbjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW45Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHN0cm9rZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2h5cGhlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHlwaGVuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lUb3Vj aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaVRvdWNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWFjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pYmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2li cmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWNp cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGljaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaWRlbnRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZGVudGljYWw7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9pZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZGlhZXJlc2lz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaWRvdGxlc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlkb3Rs ZXNzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaWZvbmx5aWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlm b25seWlmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBp Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9paG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWhv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9pbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbWFj cm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaW1wbGllcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW1w bGllczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2luY2x1ZGVkaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGluY2x1ZGVkaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbmNsdWRlcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaW5jbHVkZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbmZpbml0eSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaW5maW5pdHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbnRlZ3JhbCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbnRlcnNlY3Rpb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGludGVyc2VjdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lvZ29uZWsi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pdGlsZGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2oiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qY2lyY3VtZmxleCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgamNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGpvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfQ0hJIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX0NISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9GVSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9GVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSEEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ISSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9ISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSE8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfSE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hVIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX0hVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9JIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX0tBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9LRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0kiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfS0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tPIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrYW5hX0tPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LVSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9LVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTUEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfTUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01FIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX01FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NSSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9NSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTU8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfTU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01VIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05BIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ORSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ORTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTkkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTkk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05PIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OVSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUkUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JJ IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JJOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9S TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9STzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf UlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X1NBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NBOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9TRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfU0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NISTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfU08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU087CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX1NVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NVOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9UQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfVEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVEU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX1RJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RJOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9UTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UTzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfVFNVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RTVTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfVFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVFU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfV0E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX1dPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1dPOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9ZQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ZQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfWU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfWU87Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1lVOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2E7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX2Nsb3NpbmdicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX2Nsb3NpbmdicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9jb21tYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9jb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY29uanVu Y3RpdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfY29uanVuY3RpdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfZnVsbHN0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfZnVsbHN0 b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfbWlkZGxlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX21pZGRsZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfbyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9vcGVuaW5nYnJhY2tldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9vcGVuaW5nYnJhY2tldDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3N3aXRjaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfdHN1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3RzdTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfdHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfdHU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfdTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfeWE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX3lvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3lvOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV95dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV95dTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thcHBhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYXBwYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2tjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrY2VkaWxsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2tyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga3JhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xh Y3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGF0 aW5jcm9zcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGF0aW5jcm9zczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2xiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsY2Fyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGNlZGlsbGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9sZWZ0YW5nbGVicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0 YW5nbGVicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGFycm93IildCisrCQlwdWJsaWMgY29u c3QgdWludCBsZWZ0YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0Y2FyZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGxlZnRjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRkb3VibGVxdW90ZW1h cmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRkb3VibGVxdW90ZW1hcms7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sZWZ0bWlkZGxlY3VybHlicmFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVm dG1pZGRsZWN1cmx5YnJhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0b3BlbnRyaWFuZ2xlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBsZWZ0b3BlbnRyaWFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVm dHBvaW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRwb2ludGVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbGVmdHJhZGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRyYWRpY2FsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbGVmdHNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRzaG9l OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHNpbmdsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbGVmdHNpbmdsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnR0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBsZWZ0dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnR0YWNrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBsZWZ0dGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlc3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGxlc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZXNzdGhhbmVxdWFsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBsZXNzdGhhbmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGxmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG9naWNhbGFuZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbG9naWNhbGFuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvZ2ljYWxv ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbG9naWNhbG9yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93 bGVmdGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbG93bGVmdGNvcm5lcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2xvd3JpZ2h0Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb3dyaWdo dGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGxzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hY3Jv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX21hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1h bGVzeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWx0ZXNlY3Jvc3MiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG1hbHRlc2Vjcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hcmtlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbWFya2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFzY3VsaW5lIildCisrCQlwdWJs aWMgY29uc3QgdWludCBtYXNjdWxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9taW51cyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbWludXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9taW51dGVzIildCisrCQlwdWJs aWMgY29uc3QgdWludCBtaW51dGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG11OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXVsdGlwbHkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG11bHRpcGx5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXVzaWNhbGZsYXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG11c2ljYWxmbGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXVzaWNhbHNoYXJwIild CisrCQlwdWJsaWMgY29uc3QgdWludCBtdXNpY2Fsc2hhcnA7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmFibGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG5hYmxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG5jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25jZWRpbGxhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBuY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25pbmVzdWJzY3JpcHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG5pbmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uaW5l c3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5pbmVzdXBlcmlvcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX25sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBubDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25v YnJlYWtzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm9icmVha3NwYWNlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbm90YXBwcm94ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGFwcHJveGVx OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbm90ZWxlbWVudG9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBu b3RlbGVtZW50b2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RlcXVhbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbm90ZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RpZGVudGljYWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG5vdGlkZW50aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdHNpZ24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG5vdHNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX251bWJlcnNpZ24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG51bWJlcnNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udW1lcm9z aWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBudW1lcm9zaWduOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29hY3V0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2JhcnJlZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb2JhcnJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29iZWxvd2RvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2Nhcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb2NpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4 Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1m bGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9jaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZGlhZXJlc2lzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBvZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2RvdWJs ZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZ29u ZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ncmF2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvb2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm5hY3V0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3Ju YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JuYmVsb3dkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vaG9ybmdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmdyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb2hvcm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmhv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv aG9ybnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZWVpZ2h0aCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb25lZWlnaHRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lZmlmdGgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9uZWZpZnRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25laGFsZiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb25laGFsZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXF1YXJ0ZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9uZXF1YXJ0ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzaXh0aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb25lc2l4dGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzdWJzY3Jp cHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X29uZXN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVzdXBlcmlvcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29uZXRoaXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmV0aGlyZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX29vYmxpcXVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvb2JsaXF1ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29wZW5yZWN0YnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBv cGVucmVjdGJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29wZW5zdGFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvcGVuc3RhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29wZW50cmlidWxsZXRkb3duIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvcGVudHJpYnVsbGV0ZG93bjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29w ZW50cmlidWxsZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3BlbnRyaWJ1bGxldHVwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb3JkZmVtaW5pbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9yZGZl bWluaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv c2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG90 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX292ZXJiYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG92 ZXJiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vdmVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg b3ZlcmxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJhZ3JhcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBh cmFncmFwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmVubGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgcGFyZW5sZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFyZW5yaWdodCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcGFyZW5yaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcnRkaWZmZXJlbnRpYWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHBhcnRkaWZmZXJlbnRpYWw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9w YXJ0aWFsZGVyaXZhdGl2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFydGlhbGRlcml2YXRp dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcGVyaW9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJp b2Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJpb2RjZW50ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgcGVyaW9kY2VudGVyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJtaWxsZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgcGVybWlsbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9waG9ub2dyYXBoY29weXJpZ2h0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwaG9ub2dyYXBoY29weXJpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcGx1cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGx1czsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3BsdXNtaW51cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGx1c21pbnVzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcHJlc2NyaXB0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwcmVzY3JpcHRpb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9wcm9sb25nZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cHJvbG9uZ2Vkc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wdW5jdHNwYWNlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBwdW5jdHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1YWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHF1YWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdWVzdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cXVlc3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdWVzdGlvbmRvd24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHF1ZXN0aW9uZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3RlZGJsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBxdW90ZWRibDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3RlbGVmdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcXVvdGVsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVvdGVyaWdodCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVvdGVyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHJhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JhZGljYWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yY2Fyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHJjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JjZWRpbGxhIildCisrCQlw dWJsaWMgY29uc3QgdWludCByY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JlZ2lzdGVyZWQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHJlZ2lzdGVyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGFu Z2xlYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRhbmdsZWJyYWNrZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9yaWdodGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGFy cm93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cmlnaHRjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0ZG91YmxlcXVvdGVtYXJrIildCisrCQlw dWJsaWMgY29uc3QgdWludCByaWdodGRvdWJsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Jp Z2h0bWlkZGxlY3VybHlicmFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRtaWRkbGVj dXJseWJyYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRtaWRkbGVzdW1tYXRpb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHJpZ2h0bWlkZGxlc3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmln aHRvcGVudHJpYW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0b3BlbnRyaWFuZ2xl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRwb2ludGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy aWdodHBvaW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHNob2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHJpZ2h0c2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0c2luZ2xlcXVvdGVtYXJrIild CisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHNpbmdsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3JpZ2h0dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHR0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcmlnaHR0YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHRhY2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Fi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9zYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNhY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Nhcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf c2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjZWRpbGxhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjaHdhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf c2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjaXJjdW1mbGV4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfc2NyaXB0X3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2NyaXB0X3N3 aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3NlY29uZHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNl Y29uZHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZWN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBz ZWN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2VtaWNvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBzZW1pY29sb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZW1pdm9pY2Vkc291bmQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHNlbWl2b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NldmVuZWlnaHRo cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2V2ZW5laWdodGhzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf c2V2ZW5zdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNldmVuc3Vic2NyaXB0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfc2V2ZW5zdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2V2 ZW5zdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpZ25hdHVyZW1hcmsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHNpZ25hdHVyZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaWduaWZibGFuayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgc2lnbmlmYmxhbms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaW1pbGFy ZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpbWlsYXJlcXVhbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NpbmdsZWxvd3F1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2luZ2xlbG93 cXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2l4c3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBzaXhzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaXhzdXBlcmlvciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgc2l4c3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zbGFzaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zb2xpZGRpYW1vbmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNvbGlkZGlhbW9uZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Nw YWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NxdWFy ZXJvb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNxdWFyZXJvb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9zc2hhcnAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNzaGFycDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3N0ZXJsaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzdGVybGluZzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3N0cmljdGVxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzdHJpY3RlcTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90YWJv dmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3RjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGNhcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dGNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRjZWRpbGxhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdGVsZXBob25lIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0ZWxlcGhvbmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV90ZWxlcGhvbmVyZWNvcmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGVsZXBo b25lcmVjb3JkZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aGVyZWZvcmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHRoZXJlZm9yZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RoaW5zcGFjZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdGhpbnNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhvcm4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHRob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVlaWdodGhzIildCisrCQlw dWJsaWMgY29uc3QgdWludCB0aHJlZWVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZWZpZnRo cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVmaWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 aHJlZXF1YXJ0ZXJzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXF1YXJ0ZXJzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdGhyZWVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVl c3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVzdXBlcmlvciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdGhyZWVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RpbnRlZ3JhbCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9waW50ZWdyYWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9w bGVmdHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHBhcmVuczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RvcGxlZnRyYWRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0 cmFkaWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxlZnRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRvcGxlZnRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0c3VtbWF0 aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0c3VtbWF0aW9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdG9wcmlnaHRwYXJlbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0cGFy ZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHRvcHJpZ2h0c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRzdW1tYXRp b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0c3VtbWF0aW9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdG9wdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3RvcHZlcnRzdW1tYXRpb25jb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHZl cnRzdW1tYXRpb25jb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90cmFkZW1hcmsiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRyYWRlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RyYWRlbWFya2luY2ly Y2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0cmFkZW1hcmtpbmNpcmNsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3RzbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHNsYXNoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdHdvZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d29maWZ0aHM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90d29zdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3b3N1YnNj cmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3N1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB0d29zdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3RoaXJkcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdHdvdGhpcmRzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB1YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91YnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHVicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29u c3QgdWludCB1Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VkaWFlcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91ZG91YmxlYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVkb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vn cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhv b2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5hY3V0 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vo b3JuYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuYmVsb3dkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91aG9ybmdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmdyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9y bmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB1aG9ybnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VuZGVyYmFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCB1bmRlcmJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VuZGVyc2NvcmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHVuZGVyc2NvcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bmlvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdW5pb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91b2dvbmVrIildCisrCQlwdWJs aWMgY29uc3QgdWludCB1b2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBhcnJvdyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdXBhcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwY2FyZXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHVwY2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGxlZnRjb3JuZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVwbGVmdGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwcmln aHRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwcmlnaHRjb3JuZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91cHNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwc2hvZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3Vwc3RpbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwc3RpbGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91cHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwdGFjazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3VyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cmluZzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXRpbGRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZhcmlhdGlv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdmFyaWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdmVy dGJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdmVydGJhcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Zl cnRjb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZlcnRjb25uZWN0b3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV92b2ljZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdm9pY2Vkc291 bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV92dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV93IildCisrCQlwdWJsaWMgY29uc3QgdWludCB3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf d2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB3YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93 Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2NpcmN1bWZsZXg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV93ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB3ZGlhZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfd2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB3Z3JhdmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV94IildCisrCQlwdWJsaWMgY29uc3QgdWludCB4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfeGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB4YWJvdmVkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV95IildCisrCQlwdWJsaWMgY29uc3QgdWludCB5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95YmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCB5Y2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlkaWFlcmVzaXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV95ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHllbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWdyYXZlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfeWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlob29rOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfeXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5dGlsZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV96IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemFib3Zl ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96 YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHphY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3pj YXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemVy b3N1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemVyb3N1YnNjcmlwdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3plcm9zdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemVyb3N1cGVy aW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfenN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgenN0 cm9rZTsKKysJfQorKwluYW1lc3BhY2UgVGhyZWFkcyB7CisrCQluYW1lc3BhY2UgSWRsZSB7Cisr CQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiY2x1dHRlcl90aHJlYWRzX2FkZF9pZGxlIildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBhZGQgKEdMaWIuU291cmNlRnVuYyBmdW5jKTsK KysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX2lkbGVfZnVsbCIpXQorKwkJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBwcmlvcml0 eSwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJfQorKwkJbmFtZXNwYWNlIFRpbWVv dXQgeworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfdGltZW91dCIpXQorKwkJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjQiKV0KKysJCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkICh1aW50IGludGVydmFs LCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF90aW1lb3V0 X2Z1bGwiKV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRp YyB1aW50IGFkZF9mdWxsIChpbnQgcHJpb3JpdHksIHVpbnQgaW50ZXJ2YWwsIG93bmVkIEdMaWIu U291cmNlRnVuYyBmdW5jKTsKKysJCX0KKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHN0YXRpYyB1aW50IGFkZF9yZXBhaW50X2Z1bmMgKG93bmVkIEdMaWIuU291cmNlRnVuYyBm dW5jKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCBh ZGRfcmVwYWludF9mdW5jX2Z1bGwgKENsdXR0ZXIuUmVwYWludEZsYWdzIGZsYWdzLCBvd25lZCBH TGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCByZW1vdmVfcmVwYWludF9mdW5jICh1aW50IGhhbmRsZV9pZCk7CisrCX0K KysJbmFtZXNwYWNlIFZhbHVlIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBzdGF0aWMgQ2x1dHRlci5QYWludE5vZGUgZHVwX3BhaW50X25vZGUgKEdMaWIuVmFsdWUgdmFs dWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg Q2x1dHRlci5Db2xvcj8gZ2V0X2NvbG9yIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Tm9k ZSBnZXRfcGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xl bmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIiwgY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIGZsb2F0W10gZ2V0X3NoYWRlcl9mbG9hdCAoR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5 X2xlbmd0aF90eXBlID0gImdzaXplIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIGludFtdIGdldF9zaGFkZXJfaW50IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29k ZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgZmxvYXRbXSBnZXRfc2hhZGVy X21hdHJpeCAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlVuaXRzPyBnZXRfdW5pdHMgKEdMaWIuVmFs dWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZv aWQgc2V0X2NvbG9yIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfcGFpbnRf bm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5QYWludE5vZGU/IG5vZGUpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9mbG9h dCAoR0xpYi5WYWx1ZSB2YWx1ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIs IGFycmF5X2xlbmd0aF9wb3MgPSAxLjUpXSBmbG9hdFtdIGZsb2F0cyk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfc2hhZGVyX2ludCAoR0xpYi5W YWx1ZSB2YWx1ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xl bmd0aF9wb3MgPSAxLjUpXSBpbnRbXSBpbnRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZhbHVl LCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9 IDEuNSldIGZsb2F0W10gbWF0cml4KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIHNldF91bml0cyAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5Vbml0 cyB1bml0cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHZv aWQgdGFrZV9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlBhaW50Tm9kZT8g bm9kZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBBY3Rpb24gOiBDbHV0 dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgQWN0aW9uICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQWN0b3IgOiBHTGliLkluaXRpYWxseVVub3duZWQs IEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwg Q2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCXB1YmxpYyB1aW50MzIgZmxhZ3M7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIEFjdG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgYWRkX2FjdGlvbiAoQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9hY3Rpb25fd2l0 aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBhZGRfY2hpbGQgKENsdXR0ZXIuQWN0 b3IgY2hpbGQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQg YWRkX2NvbnN0cmFpbnQgKENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9jb25zdHJhaW50X3dpdGhf bmFtZSAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3QgKENsdXR0 ZXIuRWZmZWN0IGVmZmVjdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdm9pZCBhZGRfZWZmZWN0X3dpdGhfbmFtZSAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuRWZmZWN0 IGVmZmVjdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg YWRkX3RyYW5zaXRpb24gKHN0cmluZyBuYW1lLCBDbHV0dGVyLlRyYW5zaXRpb24gdHJhbnNpdGlv bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IGFsbG9jYXRlIChDbHV0dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3Mg ZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWxs b2NhdGVfYWxpZ25fZmlsbCAoQ2x1dHRlci5BY3RvckJveCBib3gsIGRvdWJsZSB4X2FsaWduLCBk b3VibGUgeV9hbGlnbiwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsLCBDbHV0dGVyLkFsbG9jYXRp b25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBhbGxvY2F0ZV9hdmFpbGFibGVfc2l6ZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgYXZh aWxhYmxlX3dpZHRoLCBmbG9hdCBhdmFpbGFibGVfaGVpZ2h0LCBDbHV0dGVyLkFsbG9jYXRpb25G bGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBhbGxvY2F0ZV9wcmVmZXJyZWRfc2l6ZSAoQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3Mp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0aW9u IGFuaW1hdGUgKHVsb25nIG1vZGUsIHVpbnQgZHVyYXRpb24sIC4uLik7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0ZV93aXRoX3Rp bWVsaW5lICh1bG9uZyBtb2RlLCBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lLCAuLi4pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfcmVsYXRpdmVf dHJhbnNmb3JtX3RvX3BvaW50IChDbHV0dGVyLkFjdG9yPyBhbmNlc3RvciwgR3JhcGhlbmUuUG9p bnQzRCBwb2ludCwgb3V0IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXBwbHlfdHJhbnNmb3JtIChyZWYgQ2x1 dHRlci5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1 YmxpYyB2b2lkIGFwcGx5X3RyYW5zZm9ybV90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2lu dCwgb3V0IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyB2b2lkIGJpbmRfbW9kZWwgKEdMaWIuTGlzdE1vZGVs PyBtb2RlbCwgb3duZWQgQ2x1dHRlci5BY3RvckNyZWF0ZUNoaWxkRnVuYyBjcmVhdGVfY2hpbGRf ZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVh cl9hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgY2xlYXJfY29uc3RyYWludHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCBjbGVhcl9lZmZlY3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIGJvb2wgY29udGFpbnMgKENsdXR0ZXIuQWN0b3IgZGVzY2VuZGFudCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjb250aW51ZV9w YWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlwdWJsaWMgdm9p ZCBjb250aW51ZV9waWNrIChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgUGFuZ28uQ29udGV4dCBjcmVhdGVf cGFuZ29fY29udGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBQYW5nby5MYXlvdXQgY3JlYXRlX3BhbmdvX2xheW91dCAoc3RyaW5nPyB0ZXh0KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkZXN0cm95X2FsbF9jaGls ZHJlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9hY3Rvcl9ldmVudCIpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVudCAoQ2x1 dHRlci5FdmVudCBldmVudCwgYm9vbCBjYXB0dXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcyAoW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBvaW50M0QgdmVydHNbNF0pOworKwkJ cHVibGljIHZpcnR1YWwgdW5vd25lZCBBdGsuT2JqZWN0IGdldF9hY2Nlc3NpYmxlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rp b24gZ2V0X2FjdGlvbiAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQWN0aW9uPiBnZXRfYWN0aW9ucyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9y Qm94IGdldF9hbGxvY2F0aW9uX2JveCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB2b2lkIGdldF9hbGxvY2F0aW9uX3ZlcnRpY2VzIChDbHV0dGVyLkFjdG9yPyBh bmNlc3RvciwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBvaW50M0Qg dmVydHNbNF0pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkg Z2V0X2FuY2hvcl9wb2ludF9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9iYWNrZ3JvdW5kX2NvbG9yICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2dldF9hY3Rvcl9ieV9naWQiKV0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjgiLCBzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9ieV9naWQg KHVpbnQzMiBpZF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2NoaWxkX2F0X2luZGV4IChpbnQgaW5kZXhfKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0 X2NoaWxkX3RyYW5zZm9ybSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5BY3Rvcj4gZ2V0X2NoaWxkcmVuICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2NsaXAgKG91dCBm bG9hdCB4b2ZmLCBvdXQgZmxvYXQgeW9mZiwgb3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVp Z2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGdldF9j bGlwX3RvX2FsbG9jYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbnN0cmFpbnQgZ2V0X2NvbnN0cmFpbnQgKHN0cmluZyBu YW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8 d2VhayBDbHV0dGVyLkNvbnN0cmFpbnQ+IGdldF9jb25zdHJhaW50cyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbnRlbnQgZ2V0 X2NvbnRlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3JCb3ggZ2V0X2NvbnRlbnRfYm94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGdldF9jb250ZW50X2dy YXZpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0 ZXIuQ29udGVudFJlcGVhdCBnZXRfY29udGVudF9yZXBlYXQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2NvbnRlbnRfc2NhbGluZ19maWx0ZXJz IChvdXQgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1pbl9maWx0ZXIsIG91dCBDbHV0dGVyLlNjYWxp bmdGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludFZvbHVtZSBnZXRfZGVmYXVsdF9wYWludF92b2x1 bWUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9kZXB0aCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2RlbGF5ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9lYXNpbmdfZHVy YXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuQW5pbWF0aW9uTW9kZSBnZXRfZWFzaW5nX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkVmZmVjdCBnZXRfZWZmZWN0IChz dHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xp Yi5MaXN0PHdlYWsgQ2x1dHRlci5FZmZlY3Q+IGdldF9lZmZlY3RzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2Zp cnN0X2NoaWxkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJv b2wgZ2V0X2ZpeGVkX3Bvc2l0aW9uX3NldCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yRmxhZ3MgZ2V0X2ZsYWdzICgpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX2FjdG9yX2hhc19wb2ludGVyIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfaGFzX3BvaW50ZXIgKCk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9sYXN0X2NoaWxkICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0 TWFuYWdlciBnZXRfbGF5b3V0X21hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X21hcmdpbiAoQ2x1dHRlci5NYXJnaW4gbWFyZ2luKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdp bl9ib3R0b20gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZs b2F0IGdldF9tYXJnaW5fbGVmdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9yaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl90b3AgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfbl9jaGlsZHJlbiAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9uZXh0X3NpYmxp bmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5P ZmZzY3JlZW5SZWRpcmVjdCBnZXRfb2Zmc2NyZWVuX3JlZGlyZWN0ICgpOworKwkJcHVibGljIHVp bnQ4IGdldF9vcGFjaXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1 YmxpYyBpbnQgZ2V0X29wYWNpdHlfb3ZlcnJpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGFpbnRfYm94IChvdXQgQ2x1dHRlci5BY3RvckJv eCBib3gpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVpbnQ4IGdl dF9wYWludF9vcGFjaXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X3BhaW50X3Zpc2liaWxpdHkgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgYm9vbCBnZXRfcGFpbnRfdm9sdW1lIChDbHV0dGVyLlBhaW50Vm9sdW1lIHZv bHVtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBQ YW5nby5Db250ZXh0IGdldF9wYW5nb19jb250ZXh0ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5BY3Rvcj8gZ2V0X3BhcmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBnZXRfcGl2b3RfcG9pbnQgKG91dCBmbG9hdCBwaXZvdF94LCBvdXQg ZmxvYXQgcGl2b3RfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IGZsb2F0IGdldF9waXZvdF9wb2ludF96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZvaWQgZ2V0X3Bvc2l0aW9uIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBn ZXRfcHJlZmVycmVkX2hlaWdodCAoZmxvYXQgZm9yX3dpZHRoLCBvdXQgZmxvYXQgbWluX2hlaWdo dF9wLCBvdXQgZmxvYXQgbmF0dXJhbF9oZWlnaHRfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfcHJlZmVycmVkX3NpemUgKG91dCBmbG9hdCBtaW5f d2lkdGhfcCwgb3V0IGZsb2F0IG1pbl9oZWlnaHRfcCwgb3V0IGZsb2F0IG5hdHVyYWxfd2lkdGhf cCwgb3V0IGZsb2F0IG5hdHVyYWxfaGVpZ2h0X3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX3dpZHRoIChmbG9hdCBm b3JfaGVpZ2h0LCBvdXQgZmxvYXQgbWluX3dpZHRoX3AsIG91dCBmbG9hdCBuYXR1cmFsX3dpZHRo X3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuQWN0b3IgZ2V0X3ByZXZpb3VzX3NpYmxpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcmVhY3RpdmUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5SZXF1ZXN0TW9kZSBnZXRfcmVxdWVz dF9tb2RlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3Jlc291cmNlX3NjYWxlIChvdXQgZmxvYXQg cmVzb3VyY2Vfc2NhbGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0 X3JvdGF0aW9uIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywgb3V0IGZsb2F0IHgsIG91dCBmbG9h dCB5LCBvdXQgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIGRvdWJsZSBnZXRfcm90YXRpb25fYW5nbGUgKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zY2FsZSAo b3V0IGRvdWJsZSBzY2FsZV94LCBvdXQgZG91YmxlIHNjYWxlX3kpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9zY2FsZV9jZW50ZXIgKG91dCBmbG9hdCBjZW50ZXJfeCwg b3V0IGZsb2F0IGNlbnRlcl95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRl ci5HcmF2aXR5IGdldF9zY2FsZV9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3NjYWxlX3ogKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBv dXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRfdGV4dF9kaXJl Y3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0 ZXIuTWF0cml4IGdldF90cmFuc2Zvcm0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Vm9sdW1lIGdldF90cmFuc2Zvcm1lZF9w YWludF92b2x1bWUgKENsdXR0ZXIuQWN0b3IgcmVsYXRpdmVfdG9fYW5jZXN0b3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX3Bv c2l0aW9uIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX3NpemUgKG91dCBmbG9hdCB3 aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UcmFuc2l0aW9uIGdldF90cmFuc2l0aW9uIChzdHJp bmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg Z2V0X3RyYW5zbGF0aW9uIChvdXQgZmxvYXQgdHJhbnNsYXRlX3gsIG91dCBmbG9hdCB0cmFuc2xh dGVfeSwgb3V0IGZsb2F0IHRyYW5zbGF0ZV96KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGgg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiBnZXRfeF9hbGlnbiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfeF9leHBhbmQgKCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiBnZXRfeV9hbGlnbiAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfeV9leHBhbmQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3Bvc2l0 aW9uICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0 X3pfcm90YXRpb25fZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB2b2lkIGdyYWJfa2V5X2ZvY3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2FsbG9jYXRpb24gKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2NvbnN0cmFpbnRzICgpOwor KwkJcHVibGljIGJvb2wgaGFzX2RhbWFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgYm9vbCBoYXNfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGhhc19rZXlfZm9jdXMgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGJvb2wgaGFzX21hcHBlZF9jbG9uZXMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGhhc19v dmVybGFwcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGhpZGVf YWxsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGlu c2VydF9jaGlsZF9hYm92ZSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2li bGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5z ZXJ0X2NoaWxkX2F0X2luZGV4IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgaW5kZXhfKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRf YmVsb3cgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfaW5fY2xvbmVfcGFp bnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGJvb2wgaXNf bWFwcGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29s IGlzX3JlYWxpemVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IGJvb2wgaXNfcm90YXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyBib29sIGlzX3NjYWxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisr CQlwdWJsaWMgYm9vbCBpc192aXNpYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtYXAgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIHZvaWQgbW92ZV9hbmNob3JfcG9pbnQgKGZsb2F0IGFuY2hvcl94LCBmbG9hdCBhbmNo b3JfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgbW92ZV9hbmNob3JfcG9p bnRfZnJvbV9ncmF2aXR5IChDbHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBtb3ZlX2J5IChmbG9hdCBkeCwgZmxvYXQg ZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIG5lZWRz X2V4cGFuZCAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwYWludF9ub2RlIChDbHV0dGVyLlBhaW50Tm9kZSBy b290KTsKKysJCXB1YmxpYyB2b2lkIHBpY2tfYm94IChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tf Y29udGV4dCwgQ2x1dHRlci5BY3RvckJveCBib3gpOworKwkJcHVibGljIHZvaWQgcG9wX2ludGVy bmFsICgpOworKwkJcHVibGljIHZvaWQgcHVzaF9pbnRlcm5hbCAoKTsKKysJCXB1YmxpYyB2b2lk IHF1ZXVlX3JlZHJhdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBxdWV1ZV9yZWRyYXdfd2l0aF9jbGlwIChDYWlyby5SZWN0YW5nbGVJbnQ/IGNsaXAp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2Fj dGlvbiAoQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hY3Rpb25fYnlfbmFtZSAoc3RyaW5nIG5hbWUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGxf Y2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2FsbF90cmFuc2l0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY2hpbGQgKENsdXR0ZXIuQWN0b3IgY2hpbGQpOwor KwkJcHVibGljIHZvaWQgcmVtb3ZlX2NsaXAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY29uc3RyYWludCAoQ2x1dHRlci5Db25zdHJhaW50 IGNvbnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2NvbnN0cmFpbnRfYnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdCAoQ2x1dHRlci5F ZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2 b2lkIHJlbW92ZV9lZmZlY3RfYnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV90cmFuc2l0aW9uIChzdHJpbmcg bmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVw bGFjZV9jaGlsZCAoQ2x1dHRlci5BY3RvciBvbGRfY2hpbGQsIENsdXR0ZXIuQWN0b3IgbmV3X2No aWxkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZXN0 b3JlX2Vhc2luZ19zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzYXZlX2Vhc2luZ19zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvckJveCBi b3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdm9pZCBzZXRfYW5jaG9yX3BvaW50IChmbG9hdCBhbmNob3JfeCwgZmxvYXQgYW5j aG9yX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNob3JfcG9p bnRfZnJvbV9ncmF2aXR5IChDbHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JhY2tncm91bmRfY29sb3IgKENs dXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfY2hpbGRfYWJvdmVfc2libGluZyAoQ2x1dHRlci5BY3RvciBjaGlsZCwg Q2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2NoaWxkX2F0X2luZGV4IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBp bnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfY2hpbGRfYmVsb3dfc2libGluZyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5B Y3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2NoaWxkX3RyYW5zZm9ybSAoQ2x1dHRlci5NYXRyaXg/IHRyYW5zZm9ybSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xpcCAoZmxv YXQgeG9mZiwgZmxvYXQgeW9mZiwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xpcF90b19hbGxvY2F0 aW9uIChib29sIGNsaXBfc2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfY29udGVudCAoQ2x1dHRlci5Db250ZW50PyBjb250ZW50KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9ncmF2 aXR5IChDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3JlcGVhdCAoQ2x1dHRlci5D b250ZW50UmVwZWF0IHJlcGVhdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2NvbnRlbnRfc2NhbGluZ19maWx0ZXJzIChDbHV0dGVyLlNjYWxpbmdG aWx0ZXIgbWluX2ZpbHRlciwgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aCAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZGVsYXkgKHVpbnQgbXNl Y3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9l YXNpbmdfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfbW9kZSAoQ2x1dHRlci5BbmltYXRpb25Nb2Rl IG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2ZpeGVkX3Bvc2l0aW9uX3NldCAoYm9vbCBpc19zZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZsYWdzIChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxh Z3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2hl aWdodCAoZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfbGF5b3V0X21hbmFnZXIgKENsdXR0ZXIuTGF5b3V0TWFuYWdlcj8gbWFu YWdlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X21hcmdpbiAoQ2x1dHRlci5NYXJnaW4gbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX2JvdHRvbSAoZmxvYXQgbWFyZ2luKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2lu X2xlZnQgKGZsb2F0IG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X21hcmdpbl9yaWdodCAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX3RvcCAoZmxvYXQg bWFyZ2luKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2NyZWVuX3JlZGly ZWN0IChDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IHJlZGlyZWN0KTsKKysJCXB1YmxpYyB2b2lk IHNldF9vcGFjaXR5ICh1aW50OCBvcGFjaXR5KTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcGFjaXR5 X292ZXJyaWRlIChpbnQgb3BhY2l0eSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3BhcmVudCAo Q2x1dHRlci5BY3RvciBwYXJlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9waXZvdF9wb2ludCAoZmxvYXQgcGl2b3RfeCwgZmxvYXQgcGl2b3Rf eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bp dm90X3BvaW50X3ogKGZsb2F0IHBpdm90X3opOworKwkJcHVibGljIHZvaWQgc2V0X3Bvc2l0aW9u IChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9yZWFjdGl2ZSAoYm9vbCByZWFjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVxdWVzdF9tb2RlIChDbHV0dGVyLlJl cXVlc3RNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9y b3RhdGlvbiAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMsIGRvdWJsZSBhbmdsZSwgZmxvYXQgeCwg ZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3JvdGF0aW9uX2FuZ2xlIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywgZG91 YmxlIGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9zY2FsZSAoZG91YmxlIHNjYWxlX3gsIGRvdWJsZSBzY2FsZV95KTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGVfZnVsbCAoZG91YmxlIHNjYWxlX3gsIGRv dWJsZSBzY2FsZV95LCBmbG9hdCBjZW50ZXJfeCwgZmxvYXQgY2VudGVyX3kpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV96IChkb3VibGUg c2NhbGVfeik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2l6ZSAoZmxvYXQgd2lkdGgsIGZsb2F0IGhl aWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRf dGV4dF9kaXJlY3Rpb24gKENsdXR0ZXIuVGV4dERpcmVjdGlvbiB0ZXh0X2Rpcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RyYW5zZm9ybSAoQ2x1 dHRlci5NYXRyaXg/IHRyYW5zZm9ybSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3RyYW5zbGF0aW9uIChmbG9hdCB0cmFuc2xhdGVfeCwgZmxvYXQg dHJhbnNsYXRlX3ksIGZsb2F0IHRyYW5zbGF0ZV96KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF93aWR0aCAoZmxvYXQgd2lkdGgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ggKGZsb2F0IHgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF94X2FsaWduIChD bHV0dGVyLkFjdG9yQWxpZ24geF9hbGlnbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3hfZXhwYW5kIChib29sIGV4cGFuZCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfeSAoZmxvYXQgeSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3lfYWxpZ24gKENs dXR0ZXIuQWN0b3JBbGlnbiB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBzZXRfeV9leHBhbmQgKGJvb2wgZXhwYW5kKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfel9wb3NpdGlvbiAoZmxvYXQg el9wb3NpdGlvbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3pfcm90 YXRpb25fZnJvbV9ncmF2aXR5IChkb3VibGUgYW5nbGUsIENsdXR0ZXIuR3Jhdml0eSBncmF2aXR5 KTsKKysJCXB1YmxpYyBib29sIHNob3VsZF9waWNrX3BhaW50ICgpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd19hbGwgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCB0cmFuc2Zvcm1fc3RhZ2VfcG9pbnQgKGZsb2F0 IHgsIGZsb2F0IHksIG91dCBmbG9hdCB4X291dCwgb3V0IGZsb2F0IHlfb3V0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdW5tYXAgKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgdW5wYXJlbnQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB1bnNldF9mbGFncyAoQ2x1dHRlci5B Y3RvckZsYWdzIGZsYWdzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0aW9uIGFjdGlvbnMgeyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIENsdXR0ZXIuQWN0b3JCb3ggYWxsb2NhdGlvbiB7IG93bmVkIGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jh dml0eSBhbmNob3JfZ3Jhdml0eSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgYW5jaG9yX3ggeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZs b2F0IGFuY2hvcl95IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBiYWNrZ3JvdW5kX2NvbG9yIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBib29sIGJhY2tncm91bmRfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBj aGlsZF90cmFuc2Zvcm1fc2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBjbGlwX3Jl Y3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIGJvb2wgY2xpcF90b19hbGxvY2F0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0 ZXIuQ29uc3RyYWludCBjb25zdHJhaW50cyB7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnQgY29udGVudCB7IGdldDsgc2V0OyB9 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JC b3ggY29udGVudF9ib3ggeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgQ2x1dHRlci5Db250ZW50R3Jhdml0eSBjb250ZW50X2dyYXZpdHkgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNv bnRlbnRSZXBlYXQgY29udGVudF9yZXBlYXQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyBmbG9hdCBkZXB0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkVm ZmVjdCBlZmZlY3QgeyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgQ2x1dHRlci5BY3RvciBmaXJzdF9jaGlsZCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgZml4ZWRfcG9zaXRpb25fc2V0IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIGZsb2F0IGZpeGVkX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4 ZWRfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29s IGhhc19jbGlwIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGhhc19wb2ludGVyIHsgZ2V0OyB9CisrCQlw dWJsaWMgZmxvYXQgaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBsYXN0X2NoaWxkIHsgZ2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdl ciBsYXlvdXRfbWFuYWdlciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFnbmlmaWNhdGlvbl9maWx0ZXIgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgYm9vbCBtYXBwZWQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX2JvdHRvbSB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IG1hcmdpbl9sZWZ0 IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg ZmxvYXQgbWFyZ2luX3JpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX3RvcCB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBm bG9hdCBtaW5faGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgbWluX2hlaWdodF9zZXQg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbWluX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IGJvb2wgbWluX3dpZHRoX3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluaWZpY2F0aW9uX2ZpbHRlciB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgc3RyaW5n IG5hbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbmF0dXJhbF9oZWlnaHQgeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgYm9vbCBuYXR1cmFsX2hlaWdodF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg ZmxvYXQgbmF0dXJhbF93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVyYWxfd2lk dGhfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IG9mZnNjcmVlbl9yZWRpcmVjdCB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgdWludCBvcGFjaXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5Qb2ludCBwaXZvdF9wb2ludCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHBpdm90X3BvaW50X3ogeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHBvc2l0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIHJlYWN0aXZlIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIGJvb2wgcmVhbGl6ZWQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlJlcXVlc3RNb2RlIHJlcXVlc3RfbW9k ZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBy ZXNvdXJjZV9zY2FsZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3ggeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3kgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qg cm90YXRpb25fY2VudGVyX3ggeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRp b25fY2VudGVyX3kgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2Vu dGVyX3ogeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSByb3RhdGlvbl9jZW50ZXJfel9n cmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZV9jZW50ZXJfeCB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgc2Nh bGVfY2VudGVyX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBzY2FsZV9ncmF2aXR5IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIGRvdWJsZSBzY2FsZV94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJs ZSBzY2FsZV95IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgZG91YmxlIHNjYWxlX3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBzaG93X29u X3NldF9wYXJlbnQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlNpemUgc2l6ZSB7IG93 bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Q2x1dHRlci5UZXh0RGlyZWN0aW9uIHRleHRfZGlyZWN0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBib29sIHRyYW5zZm9ybV9zZXQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl94 IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl95IHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgdmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg ZmxvYXQgd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHggeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9y QWxpZ24geF9hbGlnbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGJvb2wgeF9leHBhbmQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0 IHkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLkFjdG9yQWxpZ24geV9hbGlnbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgeV9leHBhbmQgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB6X3Bvc2l0aW9u IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz aWduYWwgdm9pZCBhbGxvY2F0aW9uX2NoYW5nZWQgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0 dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBidXR0b25fcHJlc3NfZXZlbnQgKENsdXR0 ZXIuQnV0dG9uRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgYnV0dG9uX3JlbGVhc2VfZXZlbnQgKENsdXR0ZXIu QnV0dG9uRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgY2FwdHVyZWRfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZl bnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZXN0cm95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZW50ZXJfZXZlbnQgKENs dXR0ZXIuQ3Jvc3NpbmdFdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBldmVudCAoQ2x1dHRlci5FdmVudCBldmVu dCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGhpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBrZXlfZm9jdXNfaW4gKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBrZXlfZm9jdXNfb3V0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wga2V5X3ByZXNzX2V2ZW50IChDbHV0dGVyLktleUV2ZW50 IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCBib29sIGtleV9yZWxlYXNlX2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGV2ZW50KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBi b29sIGxlYXZlX2V2ZW50IChDbHV0dGVyLkNyb3NzaW5nRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgbW90aW9u X2V2ZW50IChDbHV0dGVyLk1vdGlvbkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhaW50IChDbHV0 dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhcmVudF9zZXQgKENsdXR0ZXIu QWN0b3I/IG9sZF9wYXJlbnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwaWNrIChDbHV0dGVyLlBp Y2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHF1ZXVlX3JlbGF5 b3V0ICgpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgcmVhbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHNjcm9sbF9ldmVudCAoQ2x1dHRlci5T Y3JvbGxFdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHNob3cgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgdG91 Y2hfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0cmFuc2l0aW9uX3N0b3BwZWQgKHN0cmluZyBu YW1lLCBib29sIGlzX2ZpbmlzaGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgdHJhbnNpdGlvbnNfY29tcGxldGVkICgpOworKwkJW0hhc0Vt aXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg dW5yZWFsaXplICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9tZXRhX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEFj dG9yTWV0YSA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQWN0b3JNZXRhICgpOworKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3IgKCk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfZW5hYmxlZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9hY3RvciAoQ2x1dHRlci5B Y3Rvcj8gYWN0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X2VuYWJsZWQgKGJvb2wgaXNfZW5hYmxl ZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIENs dXR0ZXIuQWN0b3IgYWN0b3IgeyBnZXQ7IH0KKysJCXB1YmxpYyBib29sIGVuYWJsZWQgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfYWN0b3Jfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQWN0b3JOb2Rl IDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBBY3Rvck5v ZGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbGlnbl9jb25zdHJh aW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IGNsYXNzIEFsaWduQ29uc3RyYWludCA6IENsdXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWlu dCoiKV0KKysJCXB1YmxpYyBBbGlnbkNvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwg Q2x1dHRlci5BbGlnbkF4aXMgYXhpcywgZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBDbHV0dGVy LkFsaWduQXhpcyBnZXRfYWxpZ25fYXhpcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZmFjdG9y ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJ cHVibGljIHZvaWQgc2V0X2FsaWduX2F4aXMgKENsdXR0ZXIuQWxpZ25BeGlzIGF4aXMpOworKwkJ cHVibGljIHZvaWQgc2V0X2ZhY3RvciAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BbGln bkF4aXMgYWxpZ25fYXhpcyB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0 IGZhY3RvciB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Ig c291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FscGhhX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBBbHBoYSA6IEdM aWIuSW5pdGlhbGx5VW5vd25lZCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBBbHBoYSAoKTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBBbHBoYS5mdWxsIChDbHV0dGVyLlRpbWVsaW5lIHRpbWVs aW5lLCB1bG9uZyBtb2RlKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2FscGhhICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVsb25nIGdldF9tb2RlICgpOworKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSBnZXRfdGltZWxpbmUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xvc3VyZSAoR0xpYi5D bG9zdXJlIGNsb3N1cmUpOworKwkJcHVibGljIHZvaWQgc2V0X2Z1bmMgKG93bmVkIENsdXR0ZXIu QWxwaGFGdW5jIGZ1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X21vZGUgKHVsb25nIG1vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVsaW5l IChDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lKTsKKysJCXB1YmxpYyBkb3VibGUgYWxwaGEgeyBn ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bG9uZyBtb2Rl IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSB0aW1l bGluZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgQW5pbWF0aW9uIDogR0xpYi5P YmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgQW5pbWF0aW9uICgpOworKwkJcHVibGljIHVpbnQg Z2V0X2R1cmF0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnRlcnZhbCBnZXRf aW50ZXJ2YWwgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyBib29sIGdldF9sb29w ICgpOworKwkJcHVibGljIHVsb25nIGdldF9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5UaW1lbGluZSBnZXRfdGltZWxpbmUgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfcHJvcGVy dHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kdXJhdGlvbiAo dWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbG9vcCAoYm9vbCBsb29wKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9tb2RlICh1bG9uZyBtb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vYmpl Y3QgKEdMaWIuT2JqZWN0IG9iamVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZWxpbmUgKENs dXR0ZXIuVGltZWxpbmU/IHRpbWVsaW5lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFscGhhIGFscGhhIHsgb3duZWQgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyB1aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBi b29sIGxvb3AgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVsb25nIG1vZGUgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgR0xpYi5PYmplY3Qgb2JqZWN0IHsg b3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lIHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YXJ0ZWQgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1Ymxp YyBjbGFzcyBBbnlFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZl bnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsK KysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iYWNr ZW5kX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGlj IGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFkZF9vcHRpb25zIChHTGliLk9wdGlvbkdyb3Vw IGdyb3VwKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGNyZWF0ZV9j b250ZXh0ICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5TdGFnZVdpbmRvdyBjcmVhdGVfc3RhZ2UgKENsdXR0ZXIu U3RhZ2Ugd3JhcHBlcikgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBlbnN1cmVfY29udGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlNlYXQgZ2V0X2RlZmF1bHRfc2VhdCAoKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBDbHV0dGVyLkZlYXR1cmVGbGFncyBnZXRfZmVh dHVyZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25l ZCBDYWlyby5Gb250T3B0aW9ucyBnZXRfZm9udF9vcHRpb25zICgpOworKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5JbnB1dE1ldGhvZCBnZXRfaW5wdXRfbWV0aG9kICgpOworKwkJcHVibGljIGRv dWJsZSBnZXRfcmVzb2x1dGlvbiAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIGluaXRfZXZlbnRzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgaW5pdF9mZWF0dXJlcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCBib29sIHBvc3RfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgYm9vbCBwcmVfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCByZWRyYXcgKENsdXR0ZXIuU3Rh Z2Ugc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2ZvbnRfb3B0aW9ucyAoQ2Fpcm8uRm9udE9wdGlvbnMgb3B0aW9ucyk7CisrCQlwdWJsaWMg dm9pZCBzZXRfaW5wdXRfbWV0aG9kIChDbHV0dGVyLklucHV0TWV0aG9kIG1ldGhvZCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZm9udF9jaGFu Z2VkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2 b2lkIHJlc29sdXRpb25fY2hhbmdlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBzaWduYWwgdm9pZCBzZXR0aW5nc19jaGFuZ2VkICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9iaW5fbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJcHVibGljIGNsYXNzIEJpbkxheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVy TGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBCaW5MYXlvdXQgKENsdXR0ZXIuQmluQWxpZ25t ZW50IHhfYWxpZ24gPSBDbHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVCwgQ2x1dHRlci5CaW5BbGln bm1lbnQgeV9hbGlnbiA9IENsdXR0ZXIuQmluQWxpZ25tZW50LlNUQVJUKTsKKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJpbkFsaWdu bWVudCB4X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJpbkFsaWdubWVudCB5X2FsaWduIHsgZ2V0 OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluZF9jb25zdHJhaW50X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIEJpbmRDb25zdHJh aW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEJp bmRDb25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UsIENsdXR0ZXIuQmluZENvb3JkaW5h dGUgY29vcmRpbmF0ZSwgZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyBDbHV0dGVyLkJpbmRDb29y ZGluYXRlIGdldF9jb29yZGluYXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY29vcmRpbmF0ZSAoQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRl KTsKKysJCXB1YmxpYyB2b2lkIHNldF9vZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0 ZXIuQmluZENvb3JkaW5hdGUgY29vcmRpbmF0ZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJ cHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2JpbmRpbmdfcG9vbF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBjbGFzcyBCaW5kaW5nUG9vbCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBCaW5kaW5nUG9v bCAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIGJvb2wgYWN0aXZhdGUgKHVpbnQga2V5X3ZhbCwg Q2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGliLk9iamVjdCBnb2JqZWN0KTsKKysJ CXB1YmxpYyB2b2lkIGJsb2NrX2FjdGlvbiAoc3RyaW5nIGFjdGlvbl9uYW1lKTsKKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkJpbmRpbmdQb29sIGZpbmQgKHN0cmluZyBuYW1lKTsK KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBmaW5kX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0 dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENs dXR0ZXIuQmluZGluZ1Bvb2wgZ2V0X2Zvcl9jbGFzcyAodm9pZCoga2xhc3MpOworKwkJcHVibGlj IHZvaWQgaW5zdGFsbF9hY3Rpb24gKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFsLCBD bHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIG93bmVkIENsdXR0ZXIuQmluZGluZ0FjdGlv bkZ1bmMgY2FsbGJhY2spOworKwkJcHVibGljIHZvaWQgaW5zdGFsbF9jbG9zdXJlIChzdHJpbmcg YWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJz LCBHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV9hY3Rpb24g KHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBvd25lZCBHTGli LkNhbGxiYWNrIGNhbGxiYWNrKTsKKysJCXB1YmxpYyB2b2lkIG92ZXJyaWRlX2Nsb3N1cmUgKHVp bnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGliLkNsb3N1cmUg Y2xvc3VyZSk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWN0aW9uICh1aW50IGtleV92YWwsIENs dXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdm9pZCB1bmJsb2NrX2Fj dGlvbiAoc3RyaW5nIGFjdGlvbl9uYW1lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIHN0cmluZyBuYW1lIHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfYmx1cl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgY2xhc3MgQmx1ckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQmx1ckVmZmVjdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf Ym94X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGlj IGNsYXNzIEJveCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5Bbmlt YXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rvcioi KV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQm94IChDbHV0dGVyLkxheW91dE1hbmFn ZXIgbWFuYWdlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig Z2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuTGF5b3V0TWFuYWdlciBnZXRfbGF5b3V0X21hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHZvaWQgcGFjayAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrX2FmdGVyIChDbHV0dGVyLkFjdG9yIGFj dG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB2b2lkIHBhY2tfYXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGludCBwb3NpdGlvbiwg Li4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrX2JlZm9yZSAoQ2x1 dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5BY3Rvcj8gc2libGluZywgLi4uKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrdiAoQ2x1dHRlci5BY3RvciBhY3RvciwgW0ND b2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wcm9wZXJ0aWVzIiwgYXJyYXlfbGVuZ3RoX3Bv cyA9IDEuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gc3RyaW5nW10gcHJvcGVydGll cywgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wcm9wZXJ0aWVzIiwgYXJyYXlfbGVu Z3RoX3BvcyA9IDEuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR0xpYi5WYWx1ZVtd IHZhbHVlcyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChD bHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2xheW91dF9tYW5hZ2VyIChDbHV0dGVyLkxheW91dE1hbmFnZXIgbWFuYWdlcik7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJv b2wgY29sb3Jfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFn ZXIgbGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfbGF5 b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGlj IGNsYXNzIEJveExheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdl cioiKV0KKysJCXB1YmxpYyBCb3hMYXlvdXQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X2FsaWdubWVudCAoQ2x1dHRlci5BY3RvciBhY3Rvciwgb3V0IENsdXR0ZXIu Qm94QWxpZ25tZW50IHhfYWxpZ24sIG91dCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWduKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2R1cmF0aW9uICgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bG9uZyBnZXRfZWFzaW5nX21vZGUgKCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2V4cGFuZCAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2ZpbGwg KENsdXR0ZXIuQWN0b3IgYWN0b3IsIG91dCBib29sIHhfZmlsbCwgb3V0IGJvb2wgeV9maWxsKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGdldF9ob21vZ2Vu ZW91cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRl ci5PcmllbnRhdGlvbiBnZXRfb3JpZW50YXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcGFj a19zdGFydCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9zcGFjaW5nICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyBib29sIGdldF91c2VfYW5pbWF0aW9ucyAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdmVydGljYWwgKCk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHZvaWQgcGFjayAoQ2x1dHRlci5BY3RvciBhY3RvciwgYm9vbCBleHBhbmQs IGJvb2wgeF9maWxsLCBib29sIHlfZmlsbCwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwg Q2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGlnbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2FsaWdubWVudCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Cb3hB bGlnbm1lbnQgeF9hbGlnbiwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGlnbik7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBtc2Vj cyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19tb2RlICh1 bG9uZyBtb2RlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZXhwYW5k IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBib29sIGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X2ZpbGwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgeF9maWxs LCBib29sIHlfZmlsbCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dm9pZCBzZXRfaG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5P cmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFja19zdGFydCAo Ym9vbCBwYWNrX3N0YXJ0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zcGFjaW5nICh1aW50IHNwYWNp bmcpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VfYW5pbWF0aW9u cyAoYm9vbCBhbmltYXRlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRf dmVydGljYWwgKGJvb2wgdmVydGljYWwpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1 aW50IGVhc2luZ19kdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHVsb25nIGVhc2luZ19tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGhvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlv biBvcmllbnRhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBwYWNrX3N0YXJ0IHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IHNwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHVzZV9hbmltYXRpb25zIHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCB2ZXJ0aWNhbCB7IGdldDsgc2V0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2JyaWdodG5lc3NfY29udHJhc3RfZWZmZWN0X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBCcmlnaHRu ZXNzQ29udHJhc3RFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIp XQorKwkJcHVibGljIEJyaWdodG5lc3NDb250cmFzdEVmZmVjdCAoKTsKKysJCXB1YmxpYyB2b2lk IGdldF9icmlnaHRuZXNzIChvdXQgZmxvYXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9h dCBibHVlKTsKKysJCXB1YmxpYyB2b2lkIGdldF9jb250cmFzdCAob3V0IGZsb2F0IHJlZCwgb3V0 IGZsb2F0IGdyZWVuLCBvdXQgZmxvYXQgYmx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnJpZ2h0 bmVzcyAoZmxvYXQgYnJpZ2h0bmVzcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnJpZ2h0bmVzc19m dWxsIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9jb250cmFzdCAoZmxvYXQgY29udHJhc3QpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRy YXN0X2Z1bGwgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBicmlnaHRuZXNzIHsgb3duZWQg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgY29udHJhc3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlb Q29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQnV0 dG9uRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1 YmxpYyB1aW50MzIgYnV0dG9uOworKwkJcHVibGljIHVpbnQgY2xpY2tfY291bnQ7CisrCQlwdWJs aWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJf c3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGlj IGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NhbnZhc19nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2FudmFzIDogR0xpYi5PYmpl Y3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29udGVudCoiKV0KKysJCXB1YmxpYyBDYW52YXMgKCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3NjYWxlX2ZhY3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9zY2FsZV9mYWN0b3IgKGZsb2F0IHNjYWxlKTsKKysJCXB1YmxpYyBib29sIHNldF9zaXplIChp bnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg aW50IGhlaWdodCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgc2NhbGVfZmFjdG9yIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB3aWR0aCB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBkcmF3IChDYWlyby5D b250ZXh0IGNyLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jaGls ZF9tZXRhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVi bGljIGFic3RyYWN0IGNsYXNzIENoaWxkTWV0YSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDaGlsZE1ldGEg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3RvciAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29udGFpbmVyIGdldF9jb250YWluZXIgKCk7CisrCQlwdWJs aWMgQ2x1dHRlci5BY3RvciBhY3RvciB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5Db250YWluZXIgY29udGFpbmVyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfY2xpY2tfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIGNsYXNzIENsaWNrQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFj dGlvbioiKV0KKysJCXB1YmxpYyBDbGlja0FjdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9i dXR0b24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBn ZXRfY29vcmRzIChvdXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdl dF9zdGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHJlbGVhc2UgKCk7CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBib29sIGhlbGQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBsb25nX3ByZXNz X2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBsb25nX3ByZXNzX3RocmVzaG9sZCB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHByZXNz ZWQgeyBnZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNsaWNrZWQgKENsdXR0 ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIGJvb2wgbG9uZ19wcmVzcyAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1 dHRlci5Mb25nUHJlc3NTdGF0ZSBzdGF0ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NsaXBfbm9kZV9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xh c3MgQ2xpcE5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVi bGljIENsaXBOb2RlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jbG9uZV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBDbG9uZSA6IENsdXR0 ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNv bnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBDbG9u ZSAoQ2x1dHRlci5BY3RvciBzb3VyY2UpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rv ciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rv cj8gc291cmNlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdldDsgc2V0IGNv bnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb2xvcl9ub2RlX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBDb2xvck5vZGUgOiBD bHV0dGVyLlBpcGVsaW5lTm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIENvbG9yTm9k ZSAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb2xvcml6ZV9lZmZl Y3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMg Y2xhc3MgQ29sb3JpemVFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0 KiIpXQorKwkJcHVibGljIENvbG9yaXplRWZmZWN0IChDbHV0dGVyLkNvbG9yIHRpbnQpOworKwkJ cHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X3RpbnQgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGlu dCAoQ2x1dHRlci5Db2xvciB0aW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHRpbnQgeyBn ZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb25zdHJhaW50X2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIENvbnN0 cmFpbnQgOiBDbHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ29uc3RyYWludCAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9hbGxvY2F0aW9uIChDbHV0dGVyLkFj dG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yQm94IGFsbG9jYXRpb24pOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX3ByZWZlcnJlZF9zaXplIChDbHV0dGVyLkFj dG9yIGFjdG9yLCBDbHV0dGVyLk9yaWVudGF0aW9uIGRpcmVjdGlvbiwgZmxvYXQgZm9yX3NpemUs IGZsb2F0IG1pbmltdW1fc2l6ZSwgZmxvYXQgbmF0dXJhbF9zaXplKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGlj IGNsYXNzIENyb3NzaW5nRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyB3ZWFrIENs dXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBm bGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3IgcmVsYXRlZDsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJ CXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOwor KwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf ZGVmb3JtX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBEZWZvcm1FZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVl bkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgRGVmb3JtRWZmZWN0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgZGVmb3JtX3ZlcnRleCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCwgQ29n bC5UZXh0dXJlVmVydGV4IHZlcnRleCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBn ZXRfYmFja19tYXRlcmlhbCAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9uX3RpbGVzIChvdXQgdWlu dCB4X3RpbGVzLCBvdXQgdWludCB5X3RpbGVzKTsKKysJCXB1YmxpYyB2b2lkIGludmFsaWRhdGUg KCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYmFja19tYXRlcmlhbCAoQ29nbC5IYW5kbGU/IG1hdGVy aWFsKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uX3RpbGVzICh1aW50IHhfdGlsZXMsIHVpbnQgeV90 aWxlcyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHhfdGlsZXMgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB5X3RpbGVz IHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZGVzYXR1cmF0ZV9lZmZlY3RfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgRGVz YXR1cmF0ZUVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisr CQlwdWJsaWMgRGVzYXR1cmF0ZUVmZmVjdCAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgZG91 YmxlIGdldF9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9yIChkb3VibGUgZmFj dG9yKTsKKysJCXB1YmxpYyBkb3VibGUgZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfZHJhZ19hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgY2xhc3MgRHJhZ0FjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rp b24qIildCisrCQlwdWJsaWMgRHJhZ0FjdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9kcmFn X2FyZWEgKEdyYXBoZW5lLlJlY3QgZHJhZ19hcmVhKTsKKysJCXB1YmxpYyBDbHV0dGVyLkRyYWdB eGlzIGdldF9kcmFnX2F4aXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdl dF9kcmFnX2hhbmRsZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9kcmFnX3RocmVzaG9sZCAob3V0 IHVpbnQgeF90aHJlc2hvbGQsIG91dCB1aW50IHlfdGhyZXNob2xkKTsKKysJCXB1YmxpYyB2b2lk IGdldF9tb3Rpb25fY29vcmRzIChvdXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25f eSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcHJlc3NfY29vcmRzIChvdXQgZmxvYXQgcHJlc3NfeCwg b3V0IGZsb2F0IHByZXNzX3kpOworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfYXJlYSAoR3JhcGhl bmUuUmVjdD8gZHJhZ19hcmVhKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX2F4aXMgKENsdXR0 ZXIuRHJhZ0F4aXMgYXhpcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19oYW5kbGUgKENsdXR0 ZXIuQWN0b3I/IGhhbmRsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ190aHJlc2hvbGQgKGlu dCB4X3RocmVzaG9sZCwgaW50IHlfdGhyZXNob2xkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGRy YWdfYXJlYSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBkcmFnX2FyZWFfc2V0IHsg Z2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5EcmFnQXhpcyBkcmFnX2F4aXMgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3IgZHJhZ19oYW5kbGUgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHhfZHJhZ190aHJlc2hvbGQgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHlfZHJhZ190aHJl c2hvbGQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19i ZWdpbiAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSwg Q2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIGRyYWdfZW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9h dCBldmVudF95LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19tb3Rpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0 IGRlbHRhX3gsIGZsb2F0IGRlbHRhX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGRyYWdfcHJvZ3Jlc3MgKENsdXR0ZXIuQWN0 b3IgYWN0b3IsIGZsb2F0IGRlbHRhX3gsIGZsb2F0IGRlbHRhX3kpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9kcm9wX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCXB1YmxpYyBjbGFzcyBEcm9wQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioi KV0KKysJCXB1YmxpYyBEcm9wQWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJv b2wgY2FuX2Ryb3AgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2 ZW50X3kpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJvcCAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRyb3BfY2FuY2VsIChDbHV0dGVy LkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95KTsKKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCB2b2lkIG92ZXJfaW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgb3Zlcl9vdXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgRWZmZWN0IDogQ2x1dHRlci5BY3Rv ck1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIEVmZmVjdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBi b29sIG1vZGlmeV9wYWludF92b2x1bWUgKENsdXR0ZXIuUGFpbnRWb2x1bWUgdm9sdW1lKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50 Q29udGV4dCBwYWludF9jb250ZXh0LCBDbHV0dGVyLkVmZmVjdFBhaW50RmxhZ3MgZmxhZ3MpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGljayAoQ2x1dHRlci5QaWNr Q29udGV4dCBwaWNrX2NvbnRleHQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgcG9zdF9wYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBwcmVfcGFpbnQgKENsdXR0ZXIu UGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIHZvaWQgcXVldWVfcmVwYWludCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94 ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2V2ZW50X2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVu dFR5cGUgdHlwZTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXB1YmxpYyBFdmVudCAoQ2x1dHRlci5FdmVudFR5cGUgdHlwZSk7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudCBjb3B5ICgpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91YmxlIGdldF9hbmdsZSAoQ2x1dHRlci5F dmVudCB0YXJnZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGRv dWJsZSBnZXRfYXhlcyAob3V0IHVpbnQgbl9heGVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1aW50MzIgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9jbGlja19jb3VudCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9h dCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9kZXZpY2UgKCk7CisrCQlwdWJsaWMg aW50IGdldF9kZXZpY2VfaWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZVRvb2wgZ2V0X2RldmljZV90b29sICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRE ZXZpY2VUeXBlIGdldF9kZXZpY2VfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rpc3RhbmNlIChDbHV0dGVyLkV2ZW50IHRhcmdldCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5FdmVudFNlcXVlbmNlIGdldF9ldmVudF9zZXF1ZW5jZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZ2V0X2ZsYWdzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9nZXN0dXJl X21vdGlvbl9kZWx0YSAob3V0IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBkeSk7CisrCQlwdWJsaWMg Q2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBnZXRfZ2VzdHVyZV9waGFzZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9nZXN0dXJlX3Bp bmNoX2FuZ2xlX2RlbHRhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1 YmxpYyBkb3VibGUgZ2V0X2dlc3R1cmVfcGluY2hfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWludDE2IGdldF9rZXlfY29kZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9rZXlfc3ltYm9sICgpOwor KwkJcHVibGljIHVuaWNoYXIgZ2V0X2tleV91bmljb2RlICgpOworKwkJcHVibGljIHVpbnQgZ2V0 X21vZGVfZ3JvdXAgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcGFkX2V2ZW50X2RldGFpbHMgKG91 dCB1aW50IG51bWJlciwgb3V0IHVpbnQgbW9kZSwgb3V0IGRvdWJsZSB2YWx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3Bvc2l0aW9uIChHcmFw aGVuZS5Qb2ludCBwb3NpdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9yZWxhdGVkICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zY3JvbGxfZGVsdGEgKG91dCBk b3VibGUgZHgsIG91dCBkb3VibGUgZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGdldF9zY3JvbGxfZGlyZWN0aW9uICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9s bEZpbmlzaEZsYWdzIGdldF9zY3JvbGxfZmluaXNoX2ZsYWdzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBnZXRfc2Nyb2xs X3NvdXJjZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X3NvdXJjZV9k ZXZpY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLlN0YWdlIGdldF9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBnZXRfc3RhdGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3N0YXRlX2Z1bGwgKG91 dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBidXR0b25fc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVy VHlwZSBiYXNlX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbGF0Y2hlZF9zdGF0ZSwg b3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGxvY2tlZF9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZp ZXJUeXBlIGVmZmVjdGl2ZV9zdGF0ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisr CQlwdWJsaWMgdWludDMyIGdldF90aW1lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQi KV0KKysJCXB1YmxpYyB1aW50IGdldF90b3VjaHBhZF9nZXN0dXJlX2Zpbmdlcl9jb3VudCAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9ldmVudF90eXBlIildCisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudFR5cGUgZ2V0X3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGJvb2wgaGFzX2NvbnRyb2xfbW9kaWZpZXIgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgaGFzX3NoaWZ0X21vZGlmaWVyICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BvaW50ZXJf ZW11bGF0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9p ZCBwdXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYnV0dG9uICh1aW50MzIgYnV0dG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jb29yZHMgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RldmljZSAoQ2x1dHRlci5J bnB1dERldmljZT8gZGV2aWNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlw dWJsaWMgdm9pZCBzZXRfZGV2aWNlX3Rvb2wgKENsdXR0ZXIuSW5wdXREZXZpY2VUb29sPyB0b29s KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mbGFn cyAoQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfY29kZSAodWludDE2IGtleV9jb2RlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfc3ltYm9sICh1 aW50IGtleV9zeW0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2tleV91bmljb2RlICh1bmljaGFyIGtleV91bmljb2RlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWxhdGVkIChDbHV0dGVyLkFjdG9y PyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X3Njcm9sbF9kZWx0YSAoZG91YmxlIGR4LCBkb3VibGUgZHkpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9kaXJlY3Rpb24gKENsdXR0 ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlX2Rl dmljZSAoQ2x1dHRlci5JbnB1dERldmljZT8gZGV2aWNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGFnZSAoQ2x1dHRlci5TdGFnZT8gc3RhZ2Up OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0YXRl IChDbHV0dGVyLk1vZGlmaWVyVHlwZSBzdGF0ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZSAodWludDMyIHRpbWVfKTsKKysJCXB1YmxpYyBD bHV0dGVyLkFueUV2ZW50IGFueSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckFueUV2ZW50ICop IildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkJ1dHRvbkV2ZW50IGJ1dHRvbiB7W0NDb2Rl IChjbmFtZSA9ICIoQ2x1dHRlckJ1dHRvbkV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBD bHV0dGVyLkNyb3NzaW5nRXZlbnQgY3Jvc3Npbmcge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJD cm9zc2luZ0V2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLktleUV2ZW50IGtl eSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlcktleUV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1 YmxpYyBDbHV0dGVyLk1vdGlvbkV2ZW50IG1vdGlvbiB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRl ck1vdGlvbkV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbEV2ZW50 IHNjcm9sbCB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclNjcm9sbEV2ZW50ICopIildICBnZXQ7 IH0KKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGVFdmVudCBzdGFnZV9zdGF0ZSB7W0NDb2Rl IChjbmFtZSA9ICIoQ2x1dHRlclN0YWdlU3RhdGVFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJs aWMgQ2x1dHRlci5Ub3VjaEV2ZW50IHRvdWNoIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91 Y2hFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFBpbmNoRXZl bnQgdG91Y2hwYWRfcGluY2gge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFBpbmNo RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRTd2lwZUV2ZW50 IHRvdWNocGFkX3N3aXBlIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRTd2lwZUV2 ZW50ICopIildICBnZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X3NlcXVlbmNl X2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwlwdWJsaWMgY2xhc3MgRXZlbnRTZXF1ZW5jZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ZpeGVk X2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1 YmxpYyBjbGFzcyBGaXhlZExheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0 TWFuYWdlcioiKV0KKysJCXB1YmxpYyBGaXhlZExheW91dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf Zmxvd19sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwlwdWJsaWMgY2xhc3MgRmxvd0xheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5 b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBGbG93TGF5b3V0IChDbHV0dGVyLkZsb3dPcmllbnRh dGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbHVtbl9zcGFjaW5nICgp OworKwkJcHVibGljIHZvaWQgZ2V0X2NvbHVtbl93aWR0aCAob3V0IGZsb2F0IG1pbl93aWR0aCwg b3V0IGZsb2F0IG1heF93aWR0aCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaG9tb2dlbmVvdXMgKCk7 CisrCQlwdWJsaWMgQ2x1dHRlci5GbG93T3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOwor KwkJcHVibGljIHZvaWQgZ2V0X3Jvd19oZWlnaHQgKG91dCBmbG9hdCBtaW5faGVpZ2h0LCBvdXQg ZmxvYXQgbWF4X2hlaWdodCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Jvd19zcGFjaW5nICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIGdldF9zbmFwX3Rv X2dyaWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX3NwYWNpbmcgKGZsb2F0IHNwYWNp bmcpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl93aWR0aCAoZmxvYXQgbWluX3dpZHRoLCBm bG9hdCBtYXhfd2lkdGgpOworKwkJcHVibGljIHZvaWQgc2V0X2hvbW9nZW5lb3VzIChib29sIGhv bW9nZW5lb3VzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5GbG93 T3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19oZWlnaHQg KGZsb2F0IG1pbl9oZWlnaHQsIGZsb2F0IG1heF9oZWlnaHQpOworKwkJcHVibGljIHZvaWQgc2V0 X3Jvd19zcGFjaW5nIChmbG9hdCBzcGFjaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc25hcF90b19ncmlkIChib29sIHNuYXBfdG9fZ3JpZCk7 CisrCQlwdWJsaWMgZmxvYXQgY29sdW1uX3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IGJvb2wgaG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgZmxvYXQgbWF4X2NvbHVtbl93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtYXhfcm93X2hlaWdodCB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtaW5fY29sdW1uX3dpZHRo IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1p bl9yb3dfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkZsb3dPcmllbnRh dGlvbiBvcmllbnRhdGlvbiB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0 IHJvd19zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2Iild CisrCQlwdWJsaWMgYm9vbCBzbmFwX3RvX2dyaWQgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9nZXN0dXJlX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCXB1YmxpYyBjbGFzcyBHZXN0dXJlQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24gewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl ckFjdGlvbioiKV0KKysJCXB1YmxpYyBHZXN0dXJlQWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGNhbmNlbCAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdlc3R1cmVfcHJlcGFyZSAoQ2x1dHRlci5BY3RvciBh Y3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5JbnB1dERldmljZSBnZXRfZGV2aWNlICh1aW50IHBvaW50KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGdldF9s YXN0X2V2ZW50ICh1aW50IHBvaW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRz ICh1aW50IHBvaW50LCBvdXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25f ZGVsdGEgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X25fY3Vy cmVudF9wb2ludHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IGludCBnZXRfbl90b3VjaF9wb2ludHMgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcHJlc3NfY29v cmRzICh1aW50IHBvaW50LCBvdXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kpOwor KwkJcHVibGljIHZvaWQgZ2V0X3JlbGVhc2VfY29vcmRzICh1aW50IHBvaW50LCBvdXQgZmxvYXQg cmVsZWFzZV94LCBvdXQgZmxvYXQgcmVsZWFzZV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X3NlcXVl bmNlICh1aW50IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJs aWMgdm9pZCBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZGlzdGFuY2UgKG91dCBmbG9hdCB4LCBvdXQg ZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIGdldF90aHJlc2hvbGRfdHJpZ2dlcl9lZGdlICgpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjAiLCBz aW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0 X3RocmVzaG9sZF90cmlnZ2VyX2VnZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGZsb2F0IGdldF92ZWxvY2l0eSAodWludCBwb2ludCwgb3V0IGZsb2F0IHZl bG9jaXR5X3gsIG91dCBmbG9hdCB2ZWxvY2l0eV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbl90b3VjaF9wb2ludHMgKGludCBuYl9wb2ludHMp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJl c2hvbGRfdHJpZ2dlcl9kaXN0YW5jZSAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2Vk Z2UgKENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIGVkZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTYiKV0KKysJCXB1YmxpYyBpbnQgbl90b3VjaF9wb2ludHMgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJ cHVibGljIGZsb2F0IHRocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlX3ggeyBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIp XQorKwkJcHVibGljIGZsb2F0IHRocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlX3kgeyBnZXQ7IGNv bnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLkdlc3R1cmVUcmlnZ2VyRWRnZSB0aHJlc2hvbGRfdHJpZ2dlcl9lZGdlIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGdlc3R1cmVfYmVnaW4gKENs dXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZ2VzdHVy ZV9jYW5jZWwgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgZ2VzdHVyZV9lbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIGJvb2wgZ2VzdHVyZV9wcm9ncmVzcyAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2dyaWRfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBHcmlkTGF5b3V0IDogQ2x1dHRlci5MYXlv dXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEdyaWRMYXlvdXQgKCk7 CisrCQlwdWJsaWMgdm9pZCBhdHRhY2ggKENsdXR0ZXIuQWN0b3IgY2hpbGQsIGludCBsZWZ0LCBp bnQgdG9wLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX25l eHRfdG8gKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIENsdXR0 ZXIuR3JpZFBvc2l0aW9uIHNpZGUsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9jaGlsZF9hdCAoaW50IGxlZnQsIGludCB0b3ApOwor KwkJcHVibGljIGJvb2wgZ2V0X2NvbHVtbl9ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50 IGdldF9jb2x1bW5fc3BhY2luZyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdl dF9vcmllbnRhdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9yb3dfaG9tb2dlbmVvdXMgKCk7 CisrCQlwdWJsaWMgdWludCBnZXRfcm93X3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnNl cnRfY29sdW1uIChpbnQgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X25leHRfdG8g KENsdXR0ZXIuQWN0b3Igc2libGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSk7CisrCQlw dWJsaWMgdm9pZCBpbnNlcnRfcm93IChpbnQgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0 X2NvbHVtbl9ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfY29sdW1uX3NwYWNpbmcgKHVpbnQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3Jp ZW50YXRpb24gKENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJcHVibGljIHZv aWQgc2V0X3Jvd19ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfcm93X3NwYWNpbmcgKHVpbnQgc3BhY2luZyk7CisrCQlwdWJsaWMgYm9vbCBjb2x1bW5f aG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgY29sdW1uX3NwYWNpbmcg eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24g eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcm93X2hvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyB1aW50IHJvd19zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfZ3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwlwdWJsaWMgY2xhc3MgR3JvdXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENs dXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyb3VwICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0K KysJCXB1YmxpYyBpbnQgZ2V0X25fY2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfbnRoX2NoaWxkIChpbnQgaW5kZXhfKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbWFn ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMg Y2xhc3MgSW1hZ2UgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb250ZW50KiIp XQorKwkJcHVibGljIEltYWdlICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdl dF90ZXh0dXJlICgpOworKwkJcHVibGljIGJvb2wgc2V0X2FyZWEgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UpXSB1aW50OFtdIGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0 LCBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgdWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBzZXRf Ynl0ZXMgKEdMaWIuQnl0ZXMgZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBwaXhlbF9mb3JtYXQsIHVp bnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCB1aW50IHJvd19zdHJpZGUpIHRocm93cyBHTGliLkVycm9y OworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2Up XSB1aW50OFtdIGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCB1aW50IHdpZHRo LCB1aW50IGhlaWdodCwgdWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBJ bnB1dERldmljZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dERldmljZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2Ug Z2V0X2Fzc29jaWF0ZWRfZGV2aWNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIENsdXR0ZXIuSW5wdXRBeGlzIGdldF9heGlzICh1aW50IGluZGV4Xyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYXhpc192YWx1ZSAo W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGRvdWJsZVtdIGF4ZXMsIENsdXR0ZXIuSW5w dXRBeGlzIGF4aXMsIG91dCBkb3VibGUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBib29sIGdldF9jb29yZHMgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZT8g c2VxdWVuY2UsIEdyYXBoZW5lLlBvaW50IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0TW9kZSBnZXRfZGV2aWNlX21vZGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X2RldmljZV9uYW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXZp Y2Vfbm9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLklucHV0RGV2aWNlVHlwZSBnZXRfZGV2aWNlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9n cmFiYmVkX2FjdG9yICgpOworKwkJcHVibGljIHZpcnR1YWwgaW50IGdldF9ncm91cF9uX21vZGVz IChpbnQgZ3JvdXApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJv b2wgZ2V0X2hhc19jdXJzb3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgYm9vbCBnZXRfa2V5ICh1aW50IGluZGV4Xywgb3V0IHVpbnQga2V5dmFsLCBvdXQgQ2x1 dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2 aWNlTWFwcGluZyBnZXRfbWFwcGluZ19tb2RlICgpOworKwkJcHVibGljIGludCBnZXRfbW9kZV9z d2l0Y2hfYnV0dG9uX2dyb3VwICh1aW50IGJ1dHRvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNiIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9tb2RpZmllcl9zdGF0 ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9u X2F4ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBn ZXRfbl9rZXlzICgpOworKwkJcHVibGljIGludCBnZXRfbl9tb2RlX2dyb3VwcyAoKTsKKysJCXB1 YmxpYyBpbnQgZ2V0X25fcmluZ3MgKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3N0cmlwcyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X3BvaW50ZXJfYWN0b3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9wb2ludGVyX3N0YWdlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfcHJvZHVjdF9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU2VhdCBnZXRfc2Vh dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8 d2VhayBDbHV0dGVyLklucHV0RGV2aWNlPiBnZXRfc2xhdmVfZGV2aWNlcyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3ZlbmRv cl9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBn cmFiIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgaXNfZ3Jv dXBlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvdGhlcl9kZXZpY2UpOworKwkJcHVibGljIHZpcnR1 YWwgYm9vbCBpc19tb2RlX3N3aXRjaF9idXR0b24gKHVpbnQgZ3JvdXAsIHVpbnQgYnV0dG9uKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGtl eWNvZGVfdG9fZXZkZXYgKHVpbnQgaGFyZHdhcmVfa2V5Y29kZSwgdWludCBldmRldl9rZXljb2Rl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIHNlcXVlbmNlX2dldF9ncmFiYmVkX2FjdG9yIChDbHV0dGVyLkV2ZW50U2VxdWVu Y2Ugc2VxdWVuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2 b2lkIHNlcXVlbmNlX2dyYWIgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSwgQ2x1dHRl ci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IHZvaWQgc2VxdWVuY2VfdW5ncmFiIChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2VuYWJsZWQg KGJvb2wgZW5hYmxlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg dm9pZCBzZXRfa2V5ICh1aW50IGluZGV4XywgdWludCBrZXl2YWwsIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbWFwcGluZ19tb2RlIChDbHV0dGVy LklucHV0RGV2aWNlTWFwcGluZyBtYXBwaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCB1bmdyYWIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdm9pZCB1cGRhdGVfZnJvbV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVu dCwgYm9vbCB1cGRhdGVfc3RhZ2UpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgdXBkYXRlX2Zyb21fdG9vbCAoQ2x1dHRlci5JbnB1dERldmljZVRvb2wgdG9vbCk7Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkJhY2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5JbnB1dE1vZGUgZGV2aWNlX21vZGUgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwkJcHVibGljIHN0cmluZyBkZXZpY2Vfbm9kZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5 cGUgZGV2aWNlX3R5cGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIGJvb2wgZW5hYmxlZCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBoYXNfY3Vyc29yIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIGludCBpZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5JbnB1dERldmljZU1hcHBpbmcgbWFwcGluZ19tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1aW50IG5fYXhlcyB7IGdldDsgfQor KwkJcHVibGljIGludCBuX21vZGVfZ3JvdXBzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1Ymxp YyBpbnQgbl9yaW5ncyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgaW50IG5fc3RyaXBz IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgb3duZWQgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgc3RyaW5n IHByb2R1Y3RfaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuU2VhdCBz ZWF0IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisr CQlwdWJsaWMgc3RyaW5nIHZlbmRvcl9pZCB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2lucHV0X2RldmljZV90b29sX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFj dCBjbGFzcyBJbnB1dERldmljZVRvb2wgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXREZXZpY2VUb29s ICgpOworKwkJcHVibGljIHVpbnQ2NCBnZXRfaWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yOCIpXQorKwkJcHVibGljIHVpbnQ2NCBnZXRfc2VyaWFsICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVG9vbFR5cGUgZ2V0 X3Rvb2xfdHlwZSAoKTsKKysJCXB1YmxpYyB1aW50NjQgaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJcHVibGljIHVpbnQ2NCBzZXJpYWwgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVRvb2xUeXBlIHR5cGUgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9mb2N1c19nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgSW5wdXRGb2N1cyA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBJbnB1dEZvY3VzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg Y29tbWl0X3RleHQgKHN0cmluZyB0ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGRlbGV0ZV9zdXJyb3VuZGluZyAodWludCBvZmZzZXQsIHVpbnQgbGVuKTsKKysJ CXB1YmxpYyBib29sIGZpbHRlcl9rZXlfZXZlbnQgKENsdXR0ZXIuS2V5RXZlbnQga2V5KTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX2luIChDbHV0dGVyLklu cHV0TWV0aG9kIGlucHV0X21ldGhvZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBmb2N1c19vdXQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19mb2N1c2VkICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmVxdWVzdF9zdXJyb3VuZGluZyAo KTsKKysJCXB1YmxpYyB2b2lkIHJlc2V0ICgpOworKwkJcHVibGljIHZvaWQgc2V0X2Nhbl9zaG93 X3ByZWVkaXQgKGJvb2wgY2FuX3Nob3dfcHJlZWRpdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29u dGVudF9oaW50cyAoQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgaGludCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY29udGVudF9wdXJwb3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2Ug cHVycG9zZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX2xvY2F0aW9uIChHcmFwaGVuZS5S ZWN0IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVy LklucHV0UGFuZWxTdGF0ZSBzdGF0ZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBzZXRfcHJlZWRpdF90ZXh0IChzdHJpbmcgcHJlZWRpdCwgdWludCBjdXJzb3IpOwor KwkJcHVibGljIHZvaWQgc2V0X3N1cnJvdW5kaW5nIChzdHJpbmcgdGV4dCwgdWludCBjdXJzb3Is IHVpbnQgYW5jaG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfbWV0aG9kX2dldF90eXBlICgp IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dE1ldGhvZCA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBJbnB1dE1ldGhvZCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29s IGZpbHRlcl9rZXlfZXZlbnQgKENsdXR0ZXIuRXZlbnQga2V5KTsKKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgZm9jdXNfaW4gKENsdXR0ZXIuSW5wdXRGb2N1cyBhY3Rvcik7CisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGZvY3VzX291dCAoKTsKKysJCXB1YmxpYyB2b2lkIGZvcndhcmRfa2V5ICh1aW50 MzIga2V5dmFsLCB1aW50MzIga2V5Y29kZSwgdWludDMyIHN0YXRlLCB1aW50NjQgdGltZV8sIGJv b2wgcHJlc3MpOworKwkJcHVibGljIHZvaWQgbm90aWZ5X2tleV9ldmVudCAoQ2x1dHRlci5FdmVu dCBldmVudCwgYm9vbCBmaWx0ZXJlZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCByZXNldCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IHNldF9jdXJzb3JfbG9jYXRpb24gKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfaW5wdXRfcGFuZWxfc3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRlKTsK KysJCXB1YmxpYyB2b2lkIHNldF9wcmVlZGl0X3RleHQgKHN0cmluZz8gcHJlZWRpdCwgdWludCBj dXJzb3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X3N1cnJv dW5kaW5nIChzdHJpbmcgdGV4dCwgdWludCBjdXJzb3IsIHVpbnQgYW5jaG9yKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9jb250ZW50X2hpbnRzIChDbHV0 dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBoaW50KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9jb250ZW50X3B1cnBvc2UgKENsdXR0ZXIuSW5wdXRDb250 ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgY2FuX3Nob3dfcHJlZWRpdCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBjb250ZW50X2hpbnRzIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5w dXRDb250ZW50UHVycG9zZSBjb250ZW50X3B1cnBvc2UgeyBnZXQ7IHNldDsgfQorKwkJW0hhc0Vt aXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29tbWl0IChzdHJpbmcgdGV4dCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX2xvY2F0aW9uX2NoYW5nZWQgKEdyYXBoZW5lLlJlY3Qg b2JqZWN0KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRlbGV0ZV9z dXJyb3VuZGluZyAodWludCBvZmZzZXQsIHVpbnQgbGVuKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBpbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1dHRlci5JbnB1dFBhbmVsU3RhdGUgb2JqZWN0KTsKKysJ CVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHJlcXVlc3Rfc3Vycm91bmRpbmcg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ludGVydmFsX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEludGVydmFsIDogR0xpYi5Jbml0aWFs bHlVbm93bmVkLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEludGVydmFsIChHTGliLlR5cGUgZ3R5cGUs IC4uLik7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnRlcnZhbCBjbG9uZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IGNvbXB1dGUg KGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBjb21wdXRlX3ZhbHVlIChk b3VibGUgZmFjdG9yLCBvdXQgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgR0xpYi5WYWx1 ZSBnZXRfZmluYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBnZXRfaW5pdGlhbF92 YWx1ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9pbnRlcnZhbCAoLi4uKTsKKysJCXB1YmxpYyBH TGliLlR5cGUgZ2V0X3ZhbHVlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGJvb2wgaXNfdmFsaWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlZh bHVlPyBwZWVrX2ZpbmFsX3ZhbHVlICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5WYWx1ZT8g cGVla19pbml0aWFsX3ZhbHVlICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlZ2lzdGVyX3By b2dyZXNzX2Z1bmMgKEdMaWIuVHlwZSB2YWx1ZV90eXBlLCBDbHV0dGVyLlByb2dyZXNzRnVuYyBm dW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRf ZmluYWwgKC4uLik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmluYWxfdmFsdWUgKEdMaWIuVmFsdWUg dmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9pbml0aWFsICguLi4pOworKwkJcHVibGljIHZvaWQgc2V0X2luaXRpYWxfdmFsdWUgKEdMaWIu VmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2ludGVydmFsICguLi4pOworKwkJcHVi bGljIHZpcnR1YWwgYm9vbCB2YWxpZGF0ZSAoR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEludGVydmFs LndpdGhfdmFsdWVzIChHTGliLlR5cGUgZ3R5cGUsIEdMaWIuVmFsdWU/IGluaXRpYWwsIEdMaWIu VmFsdWU/IGZpbmFsKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHTGliLlZhbHVlIGZpbmFsIHsgb3duZWQgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBHTGliLlZhbHVlIGluaXRpYWwgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVi bGljIEdMaWIuVHlwZSB2YWx1ZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVi bGljIGNsYXNzIEtleUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxh Z3M7CisrCQlwdWJsaWMgdWludDE2IGhhcmR3YXJlX2tleWNvZGU7CisrCQlwdWJsaWMgdWludCBr ZXl2YWw7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1bmljaGFyIHVuaWNvZGVfdmFsdWU7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2tleWZyYW1lX3RyYW5zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIEtleWZyYW1lVHJhbnNpdGlvbiA6 IENsdXR0ZXIuUHJvcGVydHlUcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclRyYW5z aXRpb24qIildCisrCQlwdWJsaWMgS2V5ZnJhbWVUcmFuc2l0aW9uIChzdHJpbmcgcHJvcGVydHlf bmFtZSk7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9rZXlf ZnJhbWUgKHVpbnQgaW5kZXhfLCBvdXQgZG91YmxlIGtleSwgb3V0IENsdXR0ZXIuQW5pbWF0aW9u TW9kZSBtb2RlLCBvdXQgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdWludCBnZXRfbl9r ZXlfZnJhbWVzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2tleV9mcmFtZSAodWludCBpbmRleF8s IGRvdWJsZSBrZXksIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlLCBHTGliLlZhbHVlIHZhbHVl KTsKKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfZnJhbWVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9j bmFtZSA9ICJuX2tleV9mcmFtZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5n dGhfdHlwZSA9ICJndWludCIpXSBkb3VibGVbXSBrZXlfZnJhbWVzKTsKKysJCXB1YmxpYyB2b2lk IHNldF9tb2RlcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9tb2RlcyIsIGFycmF5 X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIENsdXR0ZXIu QW5pbWF0aW9uTW9kZVtdIG1vZGVzKTsKKysJCXB1YmxpYyB2b2lkIHNldF92YWx1ZXMgKFtDQ29k ZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmFsdWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAu NSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR0xpYi5WYWx1ZVtdIHZhbHVlcyk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2tleW1hcF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3Qg Y2xhc3MgS2V5bWFwIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEtleW1hcCAoKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIGJvb2wgZ2V0X2NhcHNfbG9ja19zdGF0ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIFBhbmdv LkRpcmVjdGlvbiBnZXRfZGlyZWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRf bnVtX2xvY2tfc3RhdGUgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc3RhdGVfY2hhbmdlZCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5ZXJfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgTGF5ZXJOb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJ CXB1YmxpYyBMYXllck5vZGUgKENvZ2wuTWF0cml4IHByb2plY3Rpb24sIENhaXJvLlJlY3Rhbmds ZSB2aWV3cG9ydCwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCwgdWludDggb3BhY2l0eSk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2xheW91dF9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIExheW91dE1hbmFnZXIg OiBHTGliLkluaXRpYWxseVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExheW91dE1hbmFnZXIgKCk7CisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGFsbG9jYXRlIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0 ZXIuQWN0b3JCb3ggYWxsb2NhdGlvbiwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOwor KwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENs dXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXRfcHJvcGVy dHkgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvciwgc3Ry aW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgY2hp bGRfc2V0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3Is IC4uLik7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXRfcHJvcGVydHkgKENsdXR0ZXIuQ29udGFp bmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvciwgc3RyaW5nIHByb3BlcnR5X25hbWUs IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVu b3duZWQgQ2x1dHRlci5MYXlvdXRNZXRhIGNyZWF0ZV9jaGlsZF9tZXRhIChDbHV0dGVyLkNvbnRh aW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgZW5kX2FuaW1hdGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVk IEdMaWIuUGFyYW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBuYW1lKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBkb3VibGUgZ2V0X2FuaW1hdGlvbl9wcm9ncmVz cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuTGF5b3V0TWV0YSBnZXRfY2hpbGRfbWV0YSAoQ2x1dHRlci5Db250YWluZXIgY29udGFp bmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCBHTGliLlR5cGUgZ2V0X2NoaWxkX21ldGFfdHlwZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgZ2V0X3ByZWZlcnJlZF9oZWlnaHQgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwg ZmxvYXQgZm9yX3dpZHRoLCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQgbmF0X2hl aWdodF9wKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF93aWR0aCAoQ2x1 dHRlci5Db250YWluZXIgY29udGFpbmVyLCBmbG9hdCBmb3JfaGVpZ2h0LCBvdXQgZmxvYXQgbWlu X3dpZHRoX3AsIG91dCBmbG9hdCBuYXRfd2lkdGhfcCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0 aF9wb3MgPSAwLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildCisrCQlwdWJsaWMgR0xp Yi5QYXJhbVNwZWNbXSBsaXN0X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIHNldF9jb250YWluZXIgKENsdXR0ZXIuQ29udGFpbmVyPyBjb250YWluZXIpOworKwkJ W0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBsYXlvdXRfY2hhbmdl ZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5b3V0X21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgTGF5b3V0TWV0 YSA6IENsdXR0ZXIuQ2hpbGRNZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBMYXlvdXRNZXRhICgpOworKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9tYW5hZ2VyICgpOworKwkJcHVibGljIENsdXR0 ZXIuTGF5b3V0TWFuYWdlciBtYW5hZ2VyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9u ID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX21hcmdpbl9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIE1hcmdpbiB7CisrCQlwdWJsaWMg ZmxvYXQgYm90dG9tOworKwkJcHVibGljIGZsb2F0IGxlZnQ7CisrCQlwdWJsaWMgZmxvYXQgcmln aHQ7CisrCQlwdWJsaWMgZmxvYXQgdG9wOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIE1hcmdpbiAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLk1h cmdpbiBjb3B5ICgpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNs YXNzIE1vdGlvbkV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7 CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUg bW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7 CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4Owor KwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29mZnNjcmVlbl9lZmZlY3RfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJh Y3QgY2xhc3MgT2Zmc2NyZWVuRWZmZWN0IDogQ2x1dHRlci5FZmZlY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9mZnNjcmVlbkVm ZmVjdCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIENvZ2wuSGFuZGxlIGNyZWF0ZV90ZXh0dXJlIChm bG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0Iild CisrCQlwdWJsaWMgYm9vbCBnZXRfdGFyZ2V0X3JlY3QgKG91dCB1bm93bmVkIEdyYXBoZW5lLlJl Y3QgcmVjdCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNCIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3RhcmdldF9z aXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF90ZXh0dXJl ICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwYWludF90YXJnZXQgKENsdXR0ZXIuUGFpbnRD b250ZXh0IHBhaW50X2NvbnRleHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWdlX3R1cm5fZWZmZWN0 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNs YXNzIFBhZ2VUdXJuRWZmZWN0IDogQ2x1dHRlci5EZWZvcm1FZmZlY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0K KysJCXB1YmxpYyBQYWdlVHVybkVmZmVjdCAoZG91YmxlIHBlcmlvZCwgZG91YmxlIGFuZ2xlLCBm bG9hdCByYWRpdXMpOworKwkJcHVibGljIGRvdWJsZSBnZXRfYW5nbGUgKCk7CisrCQlwdWJsaWMg ZG91YmxlIGdldF9wZXJpb2QgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JhZGl1cyAoKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9hbmdsZSAoZG91YmxlIGFuZ2xlKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9wZXJpb2QgKGRvdWJsZSBwZXJpb2QpOworKwkJcHVibGljIHZvaWQgc2V0X3JhZGl1cyAoZmxv YXQgcmFkaXVzKTsKKysJCXB1YmxpYyBkb3VibGUgYW5nbGUgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIGRvdWJsZSBwZXJpb2QgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHJhZGl1cyB7 IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgcmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJfcGFpbnRfY29udGV4dF9yZWYiLCB0 eXBlX2lkID0gImNsdXR0ZXJfcGFpbnRfY29udGV4dF9nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0 aW9uID0gImNsdXR0ZXJfcGFpbnRfY29udGV4dF91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVi bGljIGNsYXNzIFBhaW50Q29udGV4dCB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJ cHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlw dWJsaWMgdm9pZCBwb3BfZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwdXNoX2ZyYW1l YnVmZmVyIChDb2dsLkZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyKTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuUGFpbnRDb250ZXh0IEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfcGFpbnRfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgUGFpbnROb2RlIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQ YWludE5vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY2hpbGQgKENsdXR0ZXIuUGFpbnROb2Rl IGNoaWxkKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9tdWx0aXRleHR1cmVfcmVjdGFuZ2xlIChDbHV0 dGVyLkFjdG9yQm94IHJlY3QsIGZsb2F0IHRleHRfY29vcmRzLCB1aW50IHRleHRfY29vcmRzX2xl bik7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3Qp OworKwkJcHVibGljIHZvaWQgYWRkX3RleHR1cmVfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94 IHJlY3QsIGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlw dWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1 YmxpYyB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnROb2RlIEByZWYgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9m dW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIs IHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF92b2x1bWVfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBh Y3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFBhaW50Vm9s dW1lIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlBh aW50Vm9sdW1lIGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgdm9pZCBmcmVlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IGZsb2F0IGdldF9kZXB0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIHZvaWQgZ2V0X29yaWdpbiAob3V0IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2 ZXJ0ZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdl dF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9kZXB0aCAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIGJvb2wgc2V0X2Zyb21fYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfaGVpZ2h0 IChmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X29yaWdpbiAoR3JhcGhlbmUuUG9pbnQzRCBvcmlnaW4pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3dpZHRoIChmbG9hdCB3aWR0aCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCB1bmlvbiAoQ2x1 dHRlci5QYWludFZvbHVtZSBhbm90aGVyX3B2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCB1bmlvbl9ib3ggKENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfcGFuX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgUGFuQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJl QWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgUGFuQWN0aW9uICgpOworKwkJcHVibGlj IGRvdWJsZSBnZXRfYWNjZWxlcmF0aW9uX2ZhY3RvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjI0IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbnN0cmFpbmVkX21vdGlvbl9kZWx0YSAo dWludCBwb2ludCwgb3V0IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJCXB1 YmxpYyBkb3VibGUgZ2V0X2RlY2VsZXJhdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pbnRl cnBvbGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9pbnRlcnBvbGF0ZWRfY29vcmRzIChvdXQg ZmxvYXQgaW50ZXJwb2xhdGVkX3gsIG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeSk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X2ludGVycG9sYXRlZF9kZWx0YSAob3V0IGZsb2F0IGRlbHRhX3gsIG91dCBm bG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMg dm9pZCBnZXRfbW90aW9uX2Nvb3JkcyAodWludCBwb2ludCwgb3V0IGZsb2F0IG1vdGlvbl94LCBv dXQgZmxvYXQgbW90aW9uX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfbW90aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFf eCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJcHVibGljIENsdXR0ZXIuUGFuQXhpcyBnZXRfcGFu X2F4aXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWNjZWxlcmF0aW9uX2ZhY3RvciAoZG91Ymxl IGZhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZGVjZWxlcmF0aW9uIChkb3VibGUgcmF0ZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50ZXJwb2xhdGUgKGJvb2wgc2hvdWxkX2ludGVycG9sYXRl KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYW5fYXhpcyAoQ2x1dHRlci5QYW5BeGlzIGF4aXMpOwor KwkJcHVibGljIGRvdWJsZSBhY2NlbGVyYXRpb25fZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBkb3VibGUgZGVjZWxlcmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGlu dGVycG9sYXRlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlBhbkF4aXMgcGFuX2F4 aXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgcGFuIChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBib29sIGlzX2ludGVycG9sYXRlZCk7CisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCBwYW5fc3RvcHBlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgbG93ZXJfY2Fz ZV9jc3VmZml4ID0gInBhcmFtX3VuaXRzIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhcmFtX3VuaXRz X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBQYXJhbVNwZWNVbml0IDogR0xpYi5QYXJh bVNwZWMgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFBhcmFtU3BlY1VuaXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgUGF0 aCA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgUGF0aCAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9j YWlyb19wYXRoIChDYWlyby5QYXRoIGNwYXRoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jbG9zZSAo KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jdXJ2ZV90byAoaW50IHhfMSwgaW50IHlfMSwgaW50IHhf MiwgaW50IHlfMiwgaW50IHhfMywgaW50IHlfMyk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbGluZV90 byAoaW50IHgsIGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9tb3ZlX3RvIChpbnQgeCwgaW50 IHkpOworKwkJcHVibGljIHZvaWQgYWRkX25vZGUgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7Cisr CQlwdWJsaWMgdm9pZCBhZGRfcmVsX2N1cnZlX3RvIChpbnQgeF8xLCBpbnQgeV8xLCBpbnQgeF8y LCBpbnQgeV8yLCBpbnQgeF8zLCBpbnQgeV8zKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfbGlu ZV90byAoaW50IHgsIGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfbW92ZV90byAoaW50 IHgsIGludCB5KTsKKysJCXB1YmxpYyBib29sIGFkZF9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJ cHVibGljIHZvaWQgY2xlYXIgKCk7CisrCQlwdWJsaWMgdm9pZCBAZm9yZWFjaCAoQ2x1dHRlci5Q YXRoQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJcHVibGljIHN0cmluZyBnZXRfZGVzY3JpcHRpb24g KCk7CisrCQlwdWJsaWMgdWludCBnZXRfbGVuZ3RoICgpOworKwkJcHVibGljIHVpbnQgZ2V0X25f bm9kZXMgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoTm9kZSBnZXRfbm9kZSAodWludCBpbmRl eF8pOworKwkJcHVibGljIEdMaWIuU0xpc3Q8d2VhayBDbHV0dGVyLlBhdGhOb2RlPz4gZ2V0X25v ZGVzICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3Bvc2l0aW9uIChkb3VibGUgcHJvZ3Jlc3MsIG91 dCBDbHV0dGVyLktub3QgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X25vZGUgKGlu dCBpbmRleF8sIENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVf bm9kZSAodWludCBpbmRleF8pOworKwkJcHVibGljIHZvaWQgcmVwbGFjZV9ub2RlICh1aW50IGlu ZGV4XywgQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJCXB1YmxpYyBib29sIHNldF9kZXNjcmlw dGlvbiAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgdm9pZCB0b19jYWlyb19wYXRoIChDYWlyby5D b250ZXh0IGNyKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXB1YmxpYyBQYXRoLndpdGhfZGVzY3JpcHRpb24gKHN0cmluZyBkZXNjKTsKKysJCXB1Ymxp YyBzdHJpbmcgZGVzY3JpcHRpb24geyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQg bGVuZ3RoIHsgZ2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfY29uc3RyYWludF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBjbGFzcyBQYXRo Q29uc3RyYWludCA6IENsdXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1 YmxpYyBQYXRoQ29uc3RyYWludCAoQ2x1dHRlci5QYXRoPyBwYXRoLCBmbG9hdCBvZmZzZXQpOwor KwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LlBhdGggZ2V0X3BhdGggKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2V0IChmbG9hdCBvZmZz ZXQpOworKwkJcHVibGljIHZvaWQgc2V0X3BhdGggKENsdXR0ZXIuUGF0aD8gcGF0aCk7CisrCQlw dWJsaWMgZmxvYXQgb2Zmc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlBhdGgg cGF0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbm9kZV9yZWFjaGVkIChD bHV0dGVyLkFjdG9yIGFjdG9yLCB1aW50IGluZGV4KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9w aWNrX2NvbnRleHRfcmVmIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF9nZXRfdHlw ZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJfcGlja19jb250ZXh0X3VucmVmIildCisr CVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGlja0NvbnRleHQgeworKwkJcHVibGljIHZvaWQg ZGVzdHJveSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGlja0NvbnRleHQgQHJlZiAo KTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waXBlbGluZV9u b2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBjbGFzcyBQaXBlbGluZU5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGlwZWxpbmVOb2Rl ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wcm9wZXJ0eV90cmFuc2l0aW9uX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBQcm9wZXJ0eVRy YW5zaXRpb24gOiBDbHV0dGVyLlRyYW5zaXRpb24sIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJh bnNpdGlvbioiKV0KKysJCXB1YmxpYyBQcm9wZXJ0eVRyYW5zaXRpb24gKHN0cmluZz8gcHJvcGVy dHlfbmFtZSk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Byb3BlcnR5X25hbWUgKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvcGVydHlfbmFtZSAoc3RyaW5nPyBwcm9wZXJ0eV9uYW1l KTsKKysJCXB1YmxpYyBzdHJpbmcgcHJvcGVydHlfbmFtZSB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3JlY3RhbmdsZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC4yIildCisrCXB1YmxpYyBjbGFzcyBSZWN0YW5nbGUgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1w bGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIu U2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIFJlY3RhbmdsZSAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfYm9yZGVyX2NvbG9y ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9ib3JkZXJfd2lkdGgg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9ib3JkZXJfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ib3JkZXJfd2lkdGggKHVpbnQgd2lkdGgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVy QWN0b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIFJlY3RhbmdsZS53aXRoX2NvbG9yIChDbHV0dGVyLkNv bG9yIGNvbG9yKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJvcmRlcl9jb2xvciB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgdWludCBib3JkZXJfd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgYm9vbCBoYXNfYm9yZGVyIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfcm9vdF9ub2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBSb290Tm9kZSA6 IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgUm9vdE5vZGUg KENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIsIENsdXR0ZXIuQ29sb3IgY2xlYXJfY29sb3Is IENvZ2wuQnVmZmVyQml0IGNsZWFyX2ZsYWdzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2Fj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJs aWMgY2xhc3MgUm90YXRlQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24q IildCisrCQlwdWJsaWMgUm90YXRlQWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IGJvb2wgcm90YXRlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBkb3VibGUgYW5nbGUpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zY3JpcHRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwlwdWJsaWMgY2xhc3MgU2NyaXB0IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNjcmlwdCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9zZWFyY2hfcGF0 aHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fcGF0aHMiLCBhcnJheV9sZW5ndGhf cG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIpXSBzdHJpbmdbXSBwYXRocyk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgYWRkX3N0YXRlcyAoc3RyaW5nPyBu YW1lLCBDbHV0dGVyLlN0YXRlIHN0YXRlKTsKKysJCXB1YmxpYyB2b2lkIGNvbm5lY3Rfc2lnbmFs cyAodm9pZCogdXNlcl9kYXRhKTsKKysJCXB1YmxpYyB2b2lkIGNvbm5lY3Rfc2lnbmFsc19mdWxs IChDbHV0dGVyLlNjcmlwdENvbm5lY3RGdW5jIGZ1bmMpOworKwkJcHVibGljIHZvaWQgZW5zdXJl X29iamVjdHMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfb2JqZWN0IChz dHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgaW50IGdldF9vYmplY3RzICguLi4pOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhdGUgZ2V0X3N0YXRlcyAoc3Ry aW5nPyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X3RyYW5zbGF0aW9uX2RvbWFpbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFs IEdMaWIuVHlwZSBnZXRfdHlwZV9mcm9tX25hbWUgKHN0cmluZyB0eXBlX25hbWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIEdMaWIuT2Jq ZWN0PiBsaXN0X29iamVjdHMgKCk7CisrCQlwdWJsaWMgdWludCBsb2FkX2Zyb21fZGF0YSAoc3Ry aW5nIGRhdGEsIHNzaXplX3QgbGVuZ3RoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyB1 aW50IGxvYWRfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGxvYWRfZnJvbV9y ZXNvdXJjZSAoc3RyaW5nIHJlc291cmNlX3BhdGgpIHRocm93cyBHTGliLkVycm9yOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0cmluZyBsb29rdXBfZmlsZW5hbWUg KHN0cmluZyBmaWxlbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3RyYW5zbGF0aW9uX2RvbWFpbiAoc3RyaW5nPyBkb21haW4pOworKwkJcHVi bGljIHZvaWQgdW5tZXJnZV9vYmplY3RzICh1aW50IG1lcmdlX2lkKTsKKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBmaWxlbmFtZSB7IG93bmVkIGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBmaWxlbmFtZV9zZXQgeyBnZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RyaW5nIHRyYW5zbGF0aW9u X2RvbWFpbiB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9hY3Rvcl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3Mg U2Nyb2xsQWN0b3IgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5p bWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3Iq IildCisrCQlwdWJsaWMgU2Nyb2xsQWN0b3IgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxN b2RlIGdldF9zY3JvbGxfbW9kZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNjcm9sbF90b19wb2ludCAo R3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJcHVibGljIHZvaWQgc2Nyb2xsX3RvX3JlY3QgKEdy YXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX21vZGUgKENsdXR0 ZXIuU2Nyb2xsTW9kZSBtb2RlKTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbE1vZGUgc2Nyb2xs X21vZGUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgU2Nyb2xsRXZlbnQgOiBD bHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENs dXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRGlyZWN0 aW9uIGRpcmVjdGlvbjsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGZpbmlz aF9mbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMg Q2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgQ2x1dHRlci5T Y3JvbGxTb3VyY2Ugc2Nyb2xsX3NvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig c291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1 aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2VhdF9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgU2VhdCA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBTZWF0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXBwbHlf a2JkX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgYmVsbF9ub3RpZnkgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGNvbXByZXNzX21vdGlvbiAoQ2x1dHRlci5FdmVudCBldmVudCwgQ2x1dHRlci5FdmVudCB0 b19kaXNjYXJkKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvcHlf ZXZlbnRfZGF0YSAoQ2x1dHRlci5FdmVudCBzcmMsIENsdXR0ZXIuRXZlbnQgZGVzdCk7CisrCQlw dWJsaWMgdmlydHVhbCBDbHV0dGVyLlZpcnR1YWxJbnB1dERldmljZSBjcmVhdGVfdmlydHVhbF9k ZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGRldmljZV90eXBlKTsKKysJCXB1YmxpYyB2 b2lkIGVuc3VyZV9hMTF5X3N0YXRlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgZnJlZV9ldmVudF9kYXRhIChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCXB1Ymxp YyB2b2lkIGdldF9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mgc2V0 dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdl dF9rZXlib2FyZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5LZXltYXAg Z2V0X2tleW1hcCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5JbnB1dERl dmljZSBnZXRfcG9pbnRlciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludGVyX2ExMXlfc2V0 dGluZ3MgKENsdXR0ZXIuUG9pbnRlckExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMg dmlydHVhbCBDbHV0dGVyLlZpcnR1YWxEZXZpY2VUeXBlIGdldF9zdXBwb3J0ZWRfdmlydHVhbF9k ZXZpY2VfdHlwZXMgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBHTGliLkxpc3Q8d2VhayBDbHV0dGVy LklucHV0RGV2aWNlPiBsaXN0X2RldmljZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2JkX2Ex MXlfc2V0dGluZ3MgKENsdXR0ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9wb2ludGVyX2ExMXlfZHdlbGxfY2xpY2tfdHlwZSAoQ2x1dHRlci5Qb2ludGVy QTExeUR3ZWxsQ2xpY2tUeXBlIGNsaWNrX3R5cGUpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50 ZXJfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5Qb2ludGVyQTExeVNldHRpbmdzIHNldHRpbmdzKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgd2FycF9wb2ludGVyIChpbnQgeCwgaW50IHkpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5CYWNrZW5kIGJhY2tlbmQgeyBv d25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRldmljZV9hZGRl ZCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRl dmljZV9yZW1vdmVkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQga2JkX2ExMXlfZmxhZ3NfY2hhbmdlZCAodWludCBzZXR0aW5nc19mbGFncywgdWlu dCBjaGFuZ2VkX21hc2spOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGtiZF9hMTF5X21vZHNfc3Rh dGVfY2hhbmdlZCAodWludCBsYXRjaGVkX21hc2ssIHVpbnQgbG9ja2VkX21hc2spOworKwkJcHVi bGljIHNpZ25hbCB2b2lkIHB0cl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGVfY2hhbmdlZCAoQ2x1dHRl ci5Qb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIGNsaWNrX3R5cGUpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHB0cl9hMTF5X3RpbWVvdXRfc3RhcnRlZCAoQ2x1dHRlci5JbnB1dERldmljZSBkZXZp Y2UsIENsdXR0ZXIuUG9pbnRlckExMXlUaW1lb3V0VHlwZSB0aW1lb3V0X3R5cGUsIHVpbnQgZGVs YXkpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHB0cl9hMTF5X3RpbWVvdXRfc3RvcHBlZCAoQ2x1 dHRlci5JbnB1dERldmljZSBkZXZpY2UsIENsdXR0ZXIuUG9pbnRlckExMXlUaW1lb3V0VHlwZSB0 aW1lb3V0X3R5cGUsIGJvb2wgY2xpY2tlZCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdG9vbF9j aGFuZ2VkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCwgQ2x1dHRlci5JbnB1dERldmljZVRv b2wgcDApOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zZXR0aW5nc19nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBTZXR0aW5ncyA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBTZXR0aW5ncyAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlNl dHRpbmdzIGdldF9kZWZhdWx0ICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgY29uc3RydWN0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyBpbnQgZG5kX2RyYWdfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGludCBkb3VibGVfY2xpY2tfZGlzdGFuY2UgeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGRvdWJsZV9jbGlja190 aW1lIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBm b250X2FudGlhbGlhcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBpbnQgZm9udF9kcGkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgc3RyaW5nIGZvbnRfaGludF9zdHlsZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZm9udF9oaW50aW5nIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBmb250X25hbWUgeyBv d25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5n IGZvbnRfc3VicGl4ZWxfb3JkZXIgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgdWludCBmb250Y29uZmlnX3RpbWVzdGFtcCB7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgaW50IGxvbmdfcHJlc3NfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgdWludCBwYXNzd29yZF9oaW50X3RpbWUgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHVuc2NhbGVkX2ZvbnRfZHBpIHsg c2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3Mg U2hhZGVyIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJFZmZlY3Qg OiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIFNoYWRlckVmZmVjdCAoQ2x1dHRlci5TaGFkZXJUeXBl IHNoYWRlcl90eXBlKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF9wcm9ncmFt ICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X3NoYWRlciAoKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBzdHJpbmcgZ2V0X3N0YXRpY19zaGFkZXJfc291 cmNlICgpOworKwkJcHVibGljIGJvb2wgc2V0X3NoYWRlcl9zb3VyY2UgKHN0cmluZyBzb3VyY2Up OworKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fdmFsdWUgKHN0cmluZyBuYW1lLCBHTGliLlZh bHVlIHZhbHVlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2hh ZGVyVHlwZSBzaGFkZXJfdHlwZSB7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFk ZXJfZmxvYXRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlckZsb2F0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBT aGFkZXJGbG9hdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX2ludF9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVySW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJJbnQgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3NoYWRlcl9tYXRyaXhfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRl ck1hdHJpeCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgU2hhZGVyTWF0cml4ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zbmFwX2NvbnN0 cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJs aWMgY2xhc3MgU25hcENvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFp bnQqIildCisrCQlwdWJsaWMgU25hcENvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwg Q2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSwgZmxv YXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIGdldF9lZGdlcyAob3V0IENsdXR0ZXIuU25hcEVk Z2UgZnJvbV9lZGdlLCBvdXQgQ2x1dHRlci5TbmFwRWRnZSB0b19lZGdlKTsKKysJCXB1YmxpYyBm bG9hdCBnZXRfb2Zmc2V0ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRf c291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2VkZ2VzIChDbHV0dGVyLlNuYXBFZGdlIGZy b21fZWRnZSwgQ2x1dHRlci5TbmFwRWRnZSB0b19lZGdlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9v ZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0dGVy LkFjdG9yPyBzb3VyY2UpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRl ci5TbmFwRWRnZSBmcm9tX2VkZ2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBm bG9hdCBvZmZzZXQgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yIHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgQ2x1dHRlci5TbmFwRWRnZSB0b19lZGdlIHsgZ2V0OyBzZXQgY29uc3RydWN0 OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlIDogQ2x1dHRlci5Hcm91cCwgQXRr LkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0 dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIFN0YWdlICgpOworKwkJcHVibGljIGJvb2wgY2FwdHVyZSAoYm9vbCBwYWlu dCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QsIENsdXR0ZXIuQ2FwdHVyZSBjYXB0dXJlcywgaW50 IG5fY2FwdHVyZXMpOworKwkJcHVibGljIHZvaWQgY2FwdHVyZV9pbnRvIChib29sIHBhaW50LCBD YWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgdWludDggZGF0YSk7CisrCQlbQ0NvZGUgKGNuYW1lID0g ImNsdXR0ZXJfc3RhZ2VfZXZlbnQiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJ CXB1YmxpYyBib29sIGVtaXRfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGVu c3VyZV9jdXJyZW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgZW5zdXJlX3JlZHJhdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB2b2lkIGVuc3VyZV92aWV3cG9ydCAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWV6ZV91 cGRhdGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wg Z2V0X2FjY2VwdF9mb2N1cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0 X2FjdG9yX2F0X3BvcyAoQ2x1dHRlci5QaWNrTW9kZSBwaWNrX21vZGUsIGZsb2F0IHgsIGZsb2F0 IHkpOworKwkJcHVibGljIGJvb2wgZ2V0X2NhcHR1cmVfZmluYWxfc2l6ZSAoQ2Fpcm8uUmVjdGFu Z2xlSW50IHJlY3QsIGludCB3aWR0aCwgaW50IGhlaWdodCwgZmxvYXQgc2NhbGUpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfZGVmYXVsdCAoKTsKKysJCXB1YmxpYyBpbnQ2NCBn ZXRfZnJhbWVfY291bnRlciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9taW5pbXVtX3NpemUgKG91dCB1 aW50IHdpZHRoLCBvdXQgdWludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIGJvb2wgZ2V0X21vdGlvbl9ldmVudHNfZW5hYmxlZCAoKTsKKysJCXB1Ymxp YyBDbHV0dGVyLlBlcnNwZWN0aXZlIGdldF9wZXJzcGVjdGl2ZSAoKTsKKysJCXB1YmxpYyBDYWly by5SZWdpb24gZ2V0X3JlZHJhd19jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIGJvb2wgZ2V0X3Rocm90dGxlX21vdGlvbl9ldmVudHMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RpdGxl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Vz ZV9hbHBoYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lk IGhpZGVfY3Vyc29yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGlzX2Rl ZmF1bHQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgcXVldWVfcmVkcmF3 ICgpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgdWludDhb XSByZWFkX3BpeGVscyAoaW50IHgsIGludCB5LCBpbnQgd2lkdGggPSAtMSwgaW50IGhlaWdodCA9 IC0xKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9yZWRyYXciKV0KKysJCXB1YmxpYyB2 b2lkIHJlZHJhdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9hY2NlcHRfZm9jdXMgKGJvb2wgYWNjZXB0X2ZvY3VzKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV9mb2N1cyAoQ2x1dHRlci5BY3Rvcj8g YWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X21pbmltdW1fc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21vdGlvbl9ldmVudHNfZW5hYmxlZCAo Ym9vbCBlbmFibGVkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wZXJzcGVjdGl2ZSAoQ2x1dHRlci5Q ZXJzcGVjdGl2ZSBwZXJzcGVjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdm9pZCBzZXRfdGhyb3R0bGVfbW90aW9uX2V2ZW50cyAoYm9vbCB0aHJvdHRsZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGl0bGUg KHN0cmluZyB0aXRsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCBzZXRfdXNlX2FscGhhIChib29sIHVzZV9hbHBoYSk7CisrCQlwdWJsaWMgdm9pZCBzaG93 X2N1cnNvciAoKTsKKysJCXB1YmxpYyB2b2lkIHRoYXdfdXBkYXRlcyAoKTsKKysJCXB1YmxpYyB2 b2lkIHVwZGF0ZV9yZXNvdXJjZV9zY2FsZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgYm9vbCBhY2NlcHRfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGJvb2wgY3Vyc29yX3Zpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Iga2V5X2ZvY3Vz IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBD bHV0dGVyLlBlcnNwZWN0aXZlIHBlcnNwZWN0aXZlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBzdHJpbmcgdGl0bGUgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdXNlX2FscGhhIHsg Z2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAi KV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhZnRlcl9wYWludCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlYWN0aXZhdGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgYm9vbCBkZWxldGVfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgcGFpbnRfdmlldyAoQ2x1dHRlci5TdGFnZVZpZXcgdmlldyk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3N0YWdlX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2VNYW5hZ2VyIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIFN0YWdlTWFuYWdlciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlTWFuYWdlciBnZXRfZGVmYXVsdCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuU3RhZ2UgZ2V0X2RlZmF1bHRfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIENsdXR0ZXIuU3RhZ2U+IGxpc3Rfc3RhZ2Vz ICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5TTGlzdDxDbHV0dGVyLlN0YWdlPiBwZWVrX3N0 YWdlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVy LlN0YWdlIGRlZmF1bHRfc3RhZ2UgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YWdlX2FkZGVkIChDbHV0dGVyLlN0 YWdlIHN0YWdlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIHN0YWdlX3JlbW92ZWQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgY2xhc3MgU3RhZ2VTdGF0ZUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlw dWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlIGNoYW5nZWRfbWFzazsKKysJCXB1YmxpYyBDbHV0dGVy LkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlIG5ld19zdGF0 ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV92aWV3X2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZVZpZXcgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3Rh Z2VWaWV3ICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVi dWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbGF5b3V0IChDYWlyby5SZWN0YW5nbGVJbnQg cmVjdCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9vZmZzY3JlZW5fdHJhbnNmb3JtYXRp b25fbWF0cml4IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5G cmFtZWJ1ZmZlciBnZXRfb25zY3JlZW4gKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3NjYWxlICgp OworKwkJcHVibGljIHZvaWQgaW52YWxpZGF0ZV9vZmZzY3JlZW5fYmxpdF9waXBlbGluZSAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldHVwX29mZnNjcmVlbl9i bGl0X3BpcGVsaW5lIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lKTsKKysJCXB1YmxpYyB2b2lkIHRy YW5zZm9ybV90b19vbnNjcmVlbiAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBDYWlyby5SZWN0YW5nbGVJbnQgbGF5b3V0IHsgb3duZWQgZ2V0OyBz ZXQgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBz Y2FsZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0ZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBT dGF0ZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyBTdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdWludCBnZXRfZHVyYXRp b24gKHN0cmluZz8gc291cmNlX3N0YXRlX25hbWUsIHN0cmluZz8gdGFyZ2V0X3N0YXRlX25hbWUp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfc3RhdGUg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIHN0cmluZz4g Z2V0X3N0YXRlcyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZHVy YXRpb24gKHN0cmluZz8gc291cmNlX3N0YXRlX25hbWUsIHN0cmluZz8gdGFyZ2V0X3N0YXRlX25h bWUsIHVpbnQgZHVyYXRpb24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuU3RhdGUgc2V0X2tleSAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5n IHRhcmdldF9zdGF0ZV9uYW1lLCBHTGliLk9iamVjdCBvYmplY3QsIHN0cmluZyBwcm9wZXJ0eV9u YW1lLCB1aW50IG1vZGUsIEdMaWIuVmFsdWUgdmFsdWUsIGRvdWJsZSBwcmVfZGVsYXksIGRvdWJs ZSBwb3N0X2RlbGF5KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLlRpbWVsaW5lIHNldF9zdGF0ZSAoc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIHdhcnBfdG9f c3RhdGUgKHN0cmluZyB0YXJnZXRfc3RhdGVfbmFtZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgc3Ry aW5nIHN0YXRlIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBjb21wbGV0ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2Jv eGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zdGF0ZV9rZXlfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFN0YXRlS2V5IHsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgR0xpYi5UeXBlIGdldF9wcm9wZXJ0eV90eXBlICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9zd2lwZV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwlwdWJsaWMgY2xhc3MgU3dpcGVBY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rp b24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBTd2lwZUFjdGlvbiAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzd2VwdCAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgQ2x1dHRlci5Td2lwZURpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHN3aXBlIChD bHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlN3aXBlRGlyZWN0aW9uIGRpcmVjdGlvbik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3RhcF9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTQiKV0KKysJcHVibGljIGNsYXNzIFRhcEFjdGlvbiA6IENsdXR0ZXIuR2VzdHVy ZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFRhcEFjdGlvbiAoKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHRhcCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3RleHRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwlwdWJsaWMgY2xhc3MgVGV4dCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwg Q2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxl IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBUZXh0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgY29vcmRzX3RvX3Bvc2l0aW9uIChmbG9hdCB4LCBmbG9h dCB5KTsKKysJCXB1YmxpYyB2b2lkIGRlbGV0ZV9jaGFycyAodWludCBuX2NoYXJzKTsKKysJCXB1 YmxpYyBib29sIGRlbGV0ZV9zZWxlY3Rpb24gKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgVGV4 dC5mdWxsIChzdHJpbmcgZm9udF9uYW1lLCBzdHJpbmcgdGV4dCwgQ2x1dHRlci5Db2xvciBjb2xv cik7CisrCQlwdWJsaWMgYm9vbCBnZXRfYWN0aXZhdGFibGUgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBQYW5nby5BdHRyTGlzdCBnZXRfYXR0cmlidXRlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRleHRCdWZmZXIgZ2V0X2J1ZmZl ciAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2NoYXJzIChzc2l6ZV90IHN0YXJ0X3Bvcywgc3Np emVfdCBlbmRfcG9zKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jdXJzb3JfY29sb3IgKCk7CisrCQlwdWJsaWMgaW50 IGdldF9jdXJzb3JfcG9zaXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQor KwkJcHVibGljIHZvaWQgZ2V0X2N1cnNvcl9yZWN0IChvdXQgdW5vd25lZCBHcmFwaGVuZS5SZWN0 IHJlY3QpOworKwkJcHVibGljIHVpbnQgZ2V0X2N1cnNvcl9zaXplICgpOworKwkJcHVibGljIGJv b2wgZ2V0X2N1cnNvcl92aXNpYmxlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2VkaXRhYmxlICgp OworKwkJcHVibGljIFBhbmdvLkVsbGlwc2l6ZU1vZGUgZ2V0X2VsbGlwc2l6ZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBQYW5nby5Gb250RGVzY3JpcHRpb24g Z2V0X2ZvbnRfZGVzY3JpcHRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2Zv bnRfbmFtZSAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBnZXRf aW5wdXRfaGludHMgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGdl dF9pbnB1dF9wdXJwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X2p1c3RpZnkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5MYXlvdXQg Z2V0X2xheW91dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIGdldF9sYXlvdXRfb2Zmc2V0cyAob3V0IGludCB4LCBvdXQgaW50IHkpOworKwkJcHVibGlj IFBhbmdvLkFsaWdubWVudCBnZXRfbGluZV9hbGlnbm1lbnQgKCk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfbGluZV93cmFwICgpOworKwkJcHVibGljIFBhbmdvLldyYXBNb2RlIGdldF9saW5lX3dyYXBf bW9kZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF9sZW5ndGggKCk7CisrCQlwdWJsaWMgdW5p Y2hhciBnZXRfcGFzc3dvcmRfY2hhciAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zZWxlY3RhYmxl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgZ2V0X3NlbGVjdGVkX3RleHRfY29sb3IgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9zZWxl Y3Rpb24gKCk7CisrCQlwdWJsaWMgaW50IGdldF9zZWxlY3Rpb25fYm91bmQgKCk7CisrCQlwdWJs aWMgQ2x1dHRlci5Db2xvciBnZXRfc2VsZWN0aW9uX2NvbG9yICgpOworKwkJcHVibGljIGJvb2wg Z2V0X3NpbmdsZV9saW5lX21vZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Rl eHQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfdXNlX21hcmt1cCAoKTsKKysJCXB1YmxpYyBib29s IGhhc19wcmVlZGl0ICgpOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X3RleHQgKHN0cmluZyB0ZXh0 LCBzc2l6ZV90IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF91bmljaGFyICh1bmlj aGFyIHdjKTsKKysJCXB1YmxpYyBib29sIHBvc2l0aW9uX3RvX2Nvb3JkcyAoaW50IHBvc2l0aW9u LCBvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHksIG91dCBmbG9hdCBsaW5lX2hlaWdodCA9IG51bGwp OworKwkJcHVibGljIHZvaWQgc2V0X2FjdGl2YXRhYmxlIChib29sIGFjdGl2YXRhYmxlKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9hdHRyaWJ1dGVzIChQYW5nby5BdHRyTGlzdD8gYXR0cnMpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9idWZmZXIgKENs dXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0 dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfY29sb3IgKENsdXR0 ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfcG9zaXRpb24gKGlu dCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX3NpemUgKGludCBzaXplKTsK KysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfZWRpdGFibGUgKGJvb2wgZWRpdGFibGUpOworKwkJcHVibGlj IHZvaWQgc2V0X2VsbGlwc2l6ZSAoUGFuZ28uRWxsaXBzaXplTW9kZSBtb2RlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mb250X2Rlc2NyaXB0aW9u IChQYW5nby5Gb250RGVzY3JpcHRpb24gZm9udF9kZXNjKTsKKysJCXB1YmxpYyB2b2lkIHNldF9m b250X25hbWUgKHN0cmluZz8gZm9udF9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9o aW50cyAoQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgaGludHMpOworKwkJcHVibGljIHZv aWQgc2V0X2lucHV0X3B1cnBvc2UgKENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3Nl KTsKKysJCXB1YmxpYyB2b2lkIHNldF9qdXN0aWZ5IChib29sIGp1c3RpZnkpOworKwkJcHVibGlj IHZvaWQgc2V0X2xpbmVfYWxpZ25tZW50IChQYW5nby5BbGlnbm1lbnQgYWxpZ25tZW50KTsKKysJ CXB1YmxpYyB2b2lkIHNldF9saW5lX3dyYXAgKGJvb2wgbGluZV93cmFwKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9saW5lX3dyYXBfbW9kZSAoUGFuZ28uV3JhcE1vZGUgd3JhcF9tb2RlKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9tYXJrdXAgKHN0cmluZz8gbWFya3VwKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9tYXhfbGVuZ3RoIChpbnQgbWF4KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYXNzd29yZF9jaGFy ICh1bmljaGFyIHdjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9wcmVlZGl0X3N0cmluZyAoc3RyaW5nPyBwcmVlZGl0X3N0ciwgUGFuZ28uQXR0ckxp c3Q/IHByZWVkaXRfYXR0cnMsIHVpbnQgY3Vyc29yX3Bvcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRf c2VsZWN0YWJsZSAoYm9vbCBzZWxlY3RhYmxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3RlZF90ZXh0X2NvbG9yIChDbHV0dGVyLkNvbG9y PyBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0aW9uIChzc2l6ZV90IHN0YXJ0X3Bv cywgc3NpemVfdCBlbmRfcG9zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb25fYm91bmQg KGludCBzZWxlY3Rpb25fYm91bmQpOworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGlvbl9jb2xv ciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X3NpbmdsZV9saW5l X21vZGUgKGJvb2wgc2luZ2xlX2xpbmUpOworKwkJcHVibGljIHZvaWQgc2V0X3RleHQgKHN0cmlu Zz8gdGV4dCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX21hcmt1cCAoYm9vbCBzZXR0aW5nKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl90ZXh0X2FjdGl2YXRlIildCisrCQlwdWJsaWMg Ym9vbCB0cnlfYWN0aXZhdGUgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIFRleHQud2l0aF9idWZmZXIgKENsdXR0ZXIuVGV4dEJ1ZmZlciBi dWZmZXIpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUg PSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRleHQud2l0aF90ZXh0IChzdHJpbmc/IGZv bnRfbmFtZSwgc3RyaW5nIHRleHQpOworKwkJcHVibGljIGJvb2wgYWN0aXZhdGFibGUgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIFBhbmdvLkF0dHJMaXN0IGF0dHJpYnV0ZXMgeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuVGV4dEJ1 ZmZlciBidWZmZXIgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3Ig eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY3Vyc29yX2NvbG9yIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgY3Vyc29yX2Nv bG9yX3NldCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBpbnQgY3Vyc29yX3Bvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBpbnQgY3Vyc29y X3NpemUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgY3Vyc29yX3Zpc2libGUgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGJvb2wgZWRpdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IFBhbmdvLkVsbGlwc2l6ZU1vZGUgZWxsaXBzaXplIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBQYW5nby5Gb250RGVzY3JpcHRpb24gZm9udF9k ZXNjcmlwdGlvbiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfbmFt ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3Mg aW5wdXRfaGludHMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50 UHVycG9zZSBpbnB1dF9wdXJwb3NlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGp1c3Rp ZnkgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLkFsaWdubWVudCBsaW5lX2FsaWdubWVu dCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBsaW5lX3dyYXAgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIFBhbmdvLldyYXBNb2RlIGxpbmVfd3JhcF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBpbnQgbWF4X2xlbmd0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBwYXNz d29yZF9jaGFyIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBpbnQgcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IGJvb2wgc2VsZWN0YWJsZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBzZWxlY3RlZF90ZXh0X2NvbG9yIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIGJvb2wgc2VsZWN0ZWRfdGV4dF9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCXB1 YmxpYyBpbnQgc2VsZWN0aW9uX2JvdW5kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIHNlbGVjdGlvbl9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBib29sIHNlbGVjdGlvbl9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCXB1Ymxp YyBib29sIHNpbmdsZV9saW5lX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyB0 ZXh0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHVzZV9tYXJrdXAgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY3Vyc29y X2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgY3Vyc29yX2V2ZW50IChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJW0hhc0VtaXR0ZXJd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGVs ZXRlX3RleHQgKGludCBzdGFydF9wb3MsIGludCBlbmRfcG9zKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCB2b2lkIHRleHRfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9idWZm ZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IGNsYXNzIFRleHRCdWZmZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVGV4dEJ1ZmZlciAoKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHVpbnQgZGVsZXRlX3RleHQgKHVpbnQgcG9zaXRpb24sIHVpbnQgbl9jaGFycyk7 CisrCQlwdWJsaWMgdm9pZCBlbWl0X2RlbGV0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgdWludCBu X2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIGVtaXRfaW5zZXJ0ZWRfdGV4dCAodWludCBwb3NpdGlv biwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHNpemVfdCBnZXRfYnl0 ZXMgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB1aW50IGdldF9sZW5ndGggKCk7CisrCQlwdWJsaWMg aW50IGdldF9tYXhfbGVuZ3RoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90ZXh0 ICgpOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gImdldF90ZXh0IildCisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBzdHJpbmcgZ2V0X3RleHRfd2l0aF9sZW5ndGgg KHNpemVfdCBuX2J5dGVzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgaW5zZXJ0X3RleHQgKHVp bnQgcG9zaXRpb24sIHN0cmluZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lk IHNldF9tYXhfbGVuZ3RoIChpbnQgbWF4X2xlbmd0aCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGV4 dCAoc3RyaW5nIGNoYXJzLCBpbnQgbl9jaGFycyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVGV4dEJ1ZmZlci53aXRoX3RleHQgKHN0cmlu Zz8gdGV4dCwgc3NpemVfdCB0ZXh0X2xlbik7CisrCQlwdWJsaWMgdWludCBsZW5ndGggeyBnZXQ7 IH0KKysJCXB1YmxpYyBpbnQgbWF4X2xlbmd0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3Ry aW5nIHRleHQgeyBnZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlbGV0ZWRf dGV4dCAodWludCBwb3NpdGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGluc2VydGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHN0cmluZyBjaGFycywgdWlu dCBuX2NoYXJzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9ub2RlX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUZXh0Tm9kZSA6IENs dXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVGV4dE5vZGUgKFBh bmdvLkxheW91dD8gbGF5b3V0LCBDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3RleHR1cmVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmUgOiBDbHV0 dGVyLkFjdG9yIHsKKysJCXB1YmxpYyBDb2dsLk1hdGVyaWFsIGNvZ2xfbWF0ZXJpYWwgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIENvZ2wuVGV4dHVyZSBjb2dsX3RleHR1cmUgeyBnZXQ7IHNldDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmVOb2RlIDogQ2x1dHRl ci5QaXBlbGluZU5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBUZXh0dXJlTm9kZSAo Q29nbC5UZXh0dXJlIHRleHR1cmUsIENsdXR0ZXIuQ29sb3I/IGNvbG9yLCBDbHV0dGVyLlNjYWxp bmdGaWx0ZXIgbWluX2ZpbHRlciwgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ19maWx0ZXIpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl90aW1lbGluZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBUaW1lbGluZSA6IEdMaWIuT2JqZWN0LCBDbHV0 dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIFRpbWVsaW5lICh1 aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdm9p ZCBhZGRfbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfbWFya2VyX2F0X3Rp bWUgKHN0cmluZyBtYXJrZXJfbmFtZSwgdWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBhZHZh bmNlICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyB2b2lkIGFkdmFuY2VfdG9fbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9 ICIwLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lIGNsb25lICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2F1dG9fcmV2ZXJzZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfY3ViaWNf YmV6aWVyX3Byb2dyZXNzIChHcmFwaGVuZS5Qb2ludCBjXzEsIEdyYXBoZW5lLlBvaW50IGNfMik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfY3VycmVu dF9yZXBlYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWlu dCBnZXRfZGVsYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dWludCBnZXRfZGVsdGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBnZXRfZGlyZWN0aW9uICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQ2NCBnZXRfZHVyYXRpb25f aGludCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9lbGFwc2VkX3RpbWUgKCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X2xvb3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgZG91YmxlIGdldF9wcm9ncmVzcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIGdldF9wcm9ncmVzc19tb2RlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlcGVh dF9jb3VudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9v bCBnZXRfc3RlcF9wcm9ncmVzcyAob3V0IGludCBuX3N0ZXBzLCBvdXQgQ2x1dHRlci5TdGVwTW9k ZSBzdGVwX21vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJv b2wgaGFzX21hcmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lKTsKKysJCXB1YmxpYyBib29sIGlzX3Bs YXlpbmcgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IHRydWUsIGFycmF5X2xlbmd0aF9w b3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIiwgYXJyYXlfbnVsbF90ZXJtaW5h dGVkID0gdHJ1ZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3Ry aW5nW10gbGlzdF9tYXJrZXJzIChpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgcGF1c2UgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfbWFy a2VyIChzdHJpbmcgbWFya2VyX25hbWUpOworKwkJcHVibGljIHZvaWQgcmV3aW5kICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2F1dG9fcmV2ZXJz ZSAoYm9vbCByZXZlcnNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdm9pZCBzZXRfY3ViaWNfYmV6aWVyX3Byb2dyZXNzIChHcmFwaGVuZS5Qb2ludCBjXzEsIEdy YXBoZW5lLlBvaW50IGNfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJs aWMgdm9pZCBzZXRfZGVsYXkgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RpcmVjdGlvbiAoQ2x1dHRlci5UaW1lbGluZURpcmVj dGlvbiBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRf bG9vcCAoYm9vbCBsb29wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBzZXRfcHJvZ3Jlc3NfZnVuYyAob3duZWQgQ2x1dHRlci5UaW1lbGluZVByb2dyZXNz RnVuYz8gZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3Byb2dyZXNzX21vZGUgKENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVwZWF0X2NvdW50 IChpbnQgY291bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9zdGVwX3Byb2dyZXNzIChpbnQgbl9zdGVwcywgQ2x1dHRlci5TdGVwTW9kZSBzdGVw X21vZGUpOworKwkJcHVibGljIHZvaWQgc2tpcCAodWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9p ZCBzdGFydCAoKTsKKysJCXB1YmxpYyB2b2lkIHN0b3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBhdXRvX3JldmVyc2UgeyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHVpbnQgZGVsYXkgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuVGlt ZWxpbmVEaXJlY3Rpb24gZGlyZWN0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgYm9vbCBsb29wIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIHByb2dyZXNzX21vZGUgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQg cmVwZWF0X2NvdW50IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGNvbXBsZXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCB2b2lkIG1hcmtlcl9yZWFjaGVkIChzdHJpbmcgbWFya2VyX25hbWUsIGlu dCBtc2Vjcyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBuZXdfZnJhbWUgKGludCBt c2Vjcyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYXVzZWQgKCk7CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdGFydGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0b3BwZWQgKGJvb2wgaXNf ZmluaXNoZWQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFRpbWVvdXRQb29sIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUaW1l b3V0UG9vbCAoaW50IHByaW9yaXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUb3VjaEV2ZW50 IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50Rmxh Z3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7 CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2U7CisrCQlwdWJs aWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3Rh Z2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVu dFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIp XQorKwlwdWJsaWMgY2xhc3MgVG91Y2hwYWRQaW5jaEV2ZW50IDogQ2x1dHRlci5FdmVudCB7Cisr CQlwdWJsaWMgZmxvYXQgYW5nbGVfZGVsdGE7CisrCQlwdWJsaWMgZmxvYXQgZHg7CisrCQlwdWJs aWMgZmxvYXQgZHk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVi bGljIHVpbnQgbl9maW5nZXJzOworKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRHZXN0dXJlUGhh c2UgcGhhc2U7CisrCQlwdWJsaWMgZmxvYXQgc2NhbGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlw dWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJ CXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgY2xh c3MgVG91Y2hwYWRTd2lwZUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZmxvYXQg ZHg7CisrCQlwdWJsaWMgZmxvYXQgZHk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZs YWdzOworKwkJcHVibGljIHVpbnQgbl9maW5nZXJzOworKwkJcHVibGljIENsdXR0ZXIuVG91Y2hw YWRHZXN0dXJlUGhhc2UgcGhhc2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJj ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMy IHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9h dCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zZm9ybV9ub2Rl X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUcmFuc2Zvcm1Ob2RlIDogQ2x1dHRlci5Q YWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBUcmFuc2Zvcm1Ob2RlIChDb2ds Lk1hdHJpeCBwcm9qZWN0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNpdGlvbl9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgYWJzdHJhY3Qg Y2xhc3MgVHJhbnNpdGlvbiA6IENsdXR0ZXIuVGltZWxpbmUsIENsdXR0ZXIuU2NyaXB0YWJsZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgVHJhbnNpdGlvbiAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IGF0dGFjaGVkIChDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb21wdXRlX3ZhbHVlIChDbHV0dGVyLkFuaW1hdGFi bGUgYW5pbWF0YWJsZSwgQ2x1dHRlci5JbnRlcnZhbCBpbnRlcnZhbCwgZG91YmxlIHByb2dyZXNz KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRldGFjaGVkIChDbHV0 dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFu aW1hdGFibGUgZ2V0X2FuaW1hdGFibGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklu dGVydmFsIGdldF9pbnRlcnZhbCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9yZW1vdmVfb25fY29t cGxldGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYW5pbWF0YWJsZSAoQ2x1dHRlci5BbmltYXRh YmxlPyBhbmltYXRhYmxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdm9pZCBzZXRfZnJvbV92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfaW50ZXJ2YWwgKENsdXR0ZXIuSW50ZXJ2YWw/IGludGVydmFsKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9yZW1vdmVfb25fY29tcGxldGUgKGJvb2wgcmVtb3ZlX2NvbXBsZXRlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdG9fdmFsdWUgKEdM aWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxl IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkludGVydmFsIGludGVydmFsIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHJlbW92ZV9vbl9jb21wbGV0ZSB7IGdldDsgc2V0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zaXRpb25fZ3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFRyYW5zaXRpb25Hcm91cCA6 IENsdXR0ZXIuVHJhbnNpdGlvbiwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIp XQorKwkJcHVibGljIFRyYW5zaXRpb25Hcm91cCAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF90cmFu c2l0aW9uIChDbHV0dGVyLlRyYW5zaXRpb24gdHJhbnNpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBy ZW1vdmVfYWxsICgpOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX3RyYW5zaXRpb24gKENsdXR0ZXIu VHJhbnNpdGlvbiB0cmFuc2l0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdmlydHVhbF9pbnB1dF9k ZXZpY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFZpcnR1YWxJbnB1dERldmljZSA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBWaXJ0dWFsSW5wdXREZXZpY2UgKCk7CisrCQlwdWJsaWMgaW50IGdl dF9kZXZpY2VfdHlwZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Fic29sdXRl X21vdGlvbiAodWludDY0IHRpbWVfdXMsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIG5vdGlmeV9idXR0b24gKHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIgYnV0dG9u LCBDbHV0dGVyLkJ1dHRvblN0YXRlIGJ1dHRvbl9zdGF0ZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIG5vdGlmeV9kaXNjcmV0ZV9zY3JvbGwgKHVpbnQ2NCB0aW1lX3VzLCBDbHV0dGVyLlNjcm9s bERpcmVjdGlvbiBkaXJlY3Rpb24sIENsdXR0ZXIuU2Nyb2xsU291cmNlIHNjcm9sbF9zb3VyY2Up OworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfa2V5ICh1aW50NjQgdGltZV91cywgdWlu dDMyIGtleSwgQ2x1dHRlci5LZXlTdGF0ZSBrZXlfc3RhdGUpOworKwkJcHVibGljIHZpcnR1YWwg dm9pZCBub3RpZnlfa2V5dmFsICh1aW50NjQgdGltZV91cywgdWludDMyIGtleXZhbCwgQ2x1dHRl ci5LZXlTdGF0ZSBrZXlfc3RhdGUpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfcmVs YXRpdmVfbW90aW9uICh1aW50NjQgdGltZV91cywgZG91YmxlIGR4LCBkb3VibGUgZHkpOworKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfc2Nyb2xsX2NvbnRpbnVvdXMgKHVpbnQ2NCB0aW1l X3VzLCBkb3VibGUgZHgsIGRvdWJsZSBkeSwgQ2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Nyb2xsX3Nv dXJjZSwgQ2x1dHRlci5TY3JvbGxGaW5pc2hGbGFncyBmaW5pc2hfZmxhZ3MpOworKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBub3RpZnlfdG91Y2hfZG93biAodWludDY0IHRpbWVfdXMsIGludCBzbG90 LCBkb3VibGUgeCwgZG91YmxlIHkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfdG91 Y2hfbW90aW9uICh1aW50NjQgdGltZV91cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3VjaF91cCAodWludDY0IHRpbWVfdXMs IGludCBzbG90KTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlw ZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBD bHV0dGVyLlNlYXQgc2VhdCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3pvb21fYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCXB1YmxpYyBjbGFzcyBab29tQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgWm9vbUFjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIGdl dF9mb2NhbF9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJcHVibGljIHZvaWQgZ2V0 X3RyYW5zZm9ybWVkX2ZvY2FsX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlwdWJs aWMgQ2x1dHRlci5ab29tQXhpcyBnZXRfem9vbV9heGlzICgpOworKwkJcHVibGljIHZvaWQgc2V0 X3pvb21fYXhpcyAoQ2x1dHRlci5ab29tQXhpcyBheGlzKTsKKysJCXB1YmxpYyBDbHV0dGVyLlpv b21BeGlzIHpvb21fYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg Ym9vbCB6b29tIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBHcmFwaGVuZS5Qb2ludCBmb2NhbF9wb2lu dCwgZG91YmxlIGZhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9jbmFtZSA9ICJDbHV0dGVyQW5pbWF0YWJsZUludGVyZmFj ZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbmltYXRhYmxlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBpbnRlcmZhY2UgQW5pbWF0YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBhbmltYXRlX3Byb3BlcnR5IChDbHV0dGVyLkFuaW1hdGlv biBhbmltYXRpb24sIHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIGluaXRpYWxfdmFs dWUsIEdMaWIuVmFsdWUgZmluYWxfdmFsdWUsIGRvdWJsZSBwcm9ncmVzcywgR0xpYi5WYWx1ZSB2 YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qg dW5vd25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX3Byb3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFt ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9p ZCBnZXRfaW5pdGlhbF9zdGF0ZSAoc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFs dWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGFic3RyYWN0IGJv b2wgaW50ZXJwb2xhdGVfdmFsdWUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBDbHV0dGVyLkludGVy dmFsIGludGVydmFsLCBkb3VibGUgcHJvZ3Jlc3MsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9m aW5hbF9zdGF0ZSAoc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9jb250YWluZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNCIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENvbnRhaW5lciA6IEdMaWIuT2JqZWN0IHsK KysJCXB1YmxpYyB2b2lkIGFkZCAocGFyYW1zIENsdXR0ZXIuQWN0b3JbXSBhY3RvcnMpOworKwkJ W0NDb2RlICh2ZnVuY19uYW1lID0gImFkZCIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIGFkZF9hY3RvciAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXQgKENsdXR0ZXIu QWN0b3IgYWN0b3IsIC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgdm9pZCBjaGlsZF9nZXRfcHJvcGVydHkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIHN0cmluZyBw cm9wZXJ0eSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXRfcHJv cGVydHkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIHN0cmluZyBwcm9wZXJ0eSwgR0xpYi5WYWx1ZSB2 YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgR0xpYi5QYXJhbVNwZWMgY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSAoR0xpYi5PYmpl Y3RDbGFzcyBrbGFzcywgc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJW0NDb2RlIChhcnJheV9s ZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyBHTGliLlBhcmFtU3BlY1tdIGNs YXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyAoR0xpYi5PYmplY3RDbGFzcyBrbGFzcyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNyZWF0ZV9j aGlsZF9tZXRhIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVzdHJveV9jaGlsZF9tZXRhIChDbHV0dGVy LkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQWN0b3IgZmluZF9jaGlsZF9ieV9uYW1lIChzdHJpbmcgY2hpbGRfbmFt ZSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hp bGRfcHJvcGVydHkiKV0KKysJCXB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZp bmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5DaGlsZE1l dGEgZ2V0X2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQi KV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkFjdG9yPiBnZXRfY2hpbGRyZW4g KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2xpc3RfY2hp bGRfcHJvcGVydGllcyIpXQorKwkJcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWNb XSBsaXN0X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAibG93 ZXIiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGxvd2VyX2No aWxkIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nID0gbnVsbCk7 CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAicmFpc2UiKV0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHJhaXNlX2NoaWxkIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBD bHV0dGVyLkFjdG9yPyBzaWJsaW5nID0gbnVsbCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVi bGljIHZvaWQgcmVtb3ZlICguLi4pOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gInJlbW92ZSIp XQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHJlbW92ZV9hY3Rv ciAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGFi c3RyYWN0IHZvaWQgc29ydF9kZXB0aF9vcmRlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIGFjdG9yX2FkZGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIGFjdG9yX3JlbW92ZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJ W0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCBjaGlsZF9ub3RpZnkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIEdMaWIu UGFyYW1TcGVjIHBzcGVjKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2NuYW1lID0gIkNsdXR0ZXJDb250ZW50SW50ZXJmYWNlIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRlbnRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVy ZmFjZSBDb250ZW50IDogR0xpYi5PYmplY3QgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGdldF9wcmVmZXJyZWRfc2l6ZSAob3V0IGZsb2F0 IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBpbnZhbGlkYXRlICgpOworKwkJcHVibGljIGFic3Ry YWN0IHZvaWQgaW52YWxpZGF0ZV9zaXplICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIHBhaW50X2NvbnRlbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIu UGFpbnROb2RlIG5vZGUsIENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGF0dGFjaGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZXRhY2hlZCAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjcmlwdGFibGVfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIFNjcmlwdGFi bGUgOiBHTGliLk9iamVjdCB7CisrCQlwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBzdHJpbmcgZ2V0 X2lkICgpOworKwkJcHVibGljIGFic3RyYWN0IGJvb2wgcGFyc2VfY3VzdG9tX25vZGUgKENsdXR0 ZXIuU2NyaXB0IHNjcmlwdCwgR0xpYi5WYWx1ZSB2YWx1ZSwgc3RyaW5nIG5hbWUsIEpzb24uTm9k ZSBub2RlKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9jdXN0b21fcHJvcGVydHkgKENs dXR0ZXIuU2NyaXB0IHNjcmlwdCwgc3RyaW5nIG5hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJ cHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2lkIChzdHJpbmcgaWRfKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIGludGVy ZmFjZSBTdGFnZVdpbmRvdyA6IEdMaWIuT2JqZWN0IHsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgYWJzdHJhY3QgaW50IGdldF9wZW5kaW5nX3N3YXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyBhYnN0cmFjdCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3dyYXBwZXIgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgaGFzX3JlZHJhd19jbGlwcyAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGlnbm9yaW5nX3JlZHJhd19jbGlw cyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCByZWFsaXplICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHJlc2l6ZSAoaW50IHdp ZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9p ZCBzZXRfY3Vyc29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9mdWxsc2NyZWVuIChib29sIGlzX2Z1bGxz Y3JlZW4pOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRs ZSAoc3RyaW5nIHRpdGxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9p ZCBzZXRfdXNlcl9yZXNpemFibGUgKGJvb2wgaXNfcmVzaXphYmxlKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93IChib29sIGRvX3JhaXNlKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlv biA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVf aWQgPSAiY2x1dHRlcl9hY3Rvcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBB Y3RvckJveCB7CisrCQlwdWJsaWMgZmxvYXQgeDE7CisrCQlwdWJsaWMgZmxvYXQgeTE7CisrCQlw dWJsaWMgZmxvYXQgeDI7CisrCQlwdWJsaWMgZmxvYXQgeTI7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLkFjdG9yQm94PyBhbGxvYyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBjbGFt cF90b19waXhlbCAocmVmIENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGNvbnRhaW5zIChmbG9hdCB4LCBmbG9hdCB5KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94 PyBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wg ZXF1YWwgKENsdXR0ZXIuQWN0b3JCb3ggYm94X2IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYXJlYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X29yaWdpbiAob3V0IGZsb2F0IHgsIG91dCBm bG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdl dF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yQm94 PyBpbml0IChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfcmVjdCAoZmxv YXQgeCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBpbnRlcnBvbGF0ZSAo Q2x1dHRlci5BY3RvckJveCBmaW5hbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBzY2FsZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChmbG9h dCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9zaXplIChmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IHVuaW9uIChDbHV0dGVy LkFjdG9yQm94IGIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwlwdWJsaWMgc3RydWN0IEFjdG9ySXRlciB7CisrCQlwdWJsaWMgdm9pZCBkZXN0 cm95ICgpOworKwkJcHVibGljIHZvaWQgaW5pdCAoQ2x1dHRlci5BY3RvciByb290KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192YWxpZCAoKTsKKysJ CXB1YmxpYyBib29sIG5leHQgKG91dCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJ cHVibGljIGJvb2wgcHJldiAob3V0IHVub3duZWQgQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlw dWJsaWMgdm9pZCByZW1vdmUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1 Y3QgQ2FwdHVyZSB7CisrCQlwdWJsaWMgd2VhayBDYWlyby5TdXJmYWNlIGltYWdlOworKwkJcHVi bGljIENhaXJvLlJlY3RhbmdsZUludCByZWN0OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5 IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNMVVRURVJfVFlQ RV9DT0xPUiIpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsKKysJCXB1YmxpYyB1aW50OCByZWQ7 CisrCQlwdWJsaWMgdWludDggZ3JlZW47CisrCQlwdWJsaWMgdWludDggYmx1ZTsKKysJCXB1Ymxp YyB1aW50OCBhbHBoYTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGFkZCAoQ2x1dHRlci5Db2xv ciBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc3RhdGljIENs dXR0ZXIuQ29sb3I/IGFsbG9jICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJ cHVibGljIENsdXR0ZXIuQ29sb3I/IGNvcHkgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBk YXJrZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoQ2x1dHRlci5Db2xvciB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9y X2Zyb21faGxzIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9obHMgKGZsb2F0IGh1ZSwgZmxvYXQg bHVtaW5hbmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9jb2xvcl9mcm9tX3BpeGVsIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9waXhlbCAodWludDMy IHBpeGVsKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIp XQorKwkJcHVibGljIENvbG9yLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfc3RhdGljIChDbHV0dGVyLlN0YXRpY0Nv bG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50 IGhhc2ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5Db2xvcj8gaW5pdCAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1 ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IENsdXR0ZXIuQ29sb3IgaW50ZXJwb2xhdGUgKENsdXR0ZXIuQ29sb3IgZmluYWwsIGRvdWJsZSBw cm9ncmVzcyk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBsaWdodGVuICgpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgYm9vbCBw YXJzZV9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc2hhZGUg KGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc3VidHJhY3QgKENsdXR0 ZXIuQ29sb3IgYik7CisrCQlwdWJsaWMgdm9pZCB0b19obHMgKG91dCBmbG9hdCBodWUsIG91dCBm bG9hdCBsdW1pbmFuY2UsIG91dCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJCXB1YmxpYyB1aW50MzIg dG9fcGl4ZWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgc3Ry aW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBL YmRBMTF5U2V0dGluZ3MgeworKwkJcHVibGljIENsdXR0ZXIuS2V5Ym9hcmRBMTF5RmxhZ3MgY29u dHJvbHM7CisrCQlwdWJsaWMgaW50IHNsb3drZXlzX2RlbGF5OworKwkJcHVibGljIGludCBkZWJv dW5jZV9kZWxheTsKKysJCXB1YmxpYyBpbnQgdGltZW91dF9kZWxheTsKKysJCXB1YmxpYyBpbnQg bW91c2VrZXlzX2luaXRfZGVsYXk7CisrCQlwdWJsaWMgaW50IG1vdXNla2V5c19tYXhfc3BlZWQ7 CisrCQlwdWJsaWMgaW50IG1vdXNla2V5c19hY2NlbF90aW1lOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNs dXR0ZXJfa25vdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CXB1YmxpYyBzdHJ1Y3QgS25vdCB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7 CisrCQlwdWJsaWMgQ2x1dHRlci5Lbm90PyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgZXF1YWwg KENsdXR0ZXIuS25vdCBrbm90X2IpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGlj IHN0cnVjdCBNYXRyaXggOiBDb2dsLk1hdHJpeCB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBzdHJ1Y3QgUGFkQnV0dG9uRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBl IHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZs YWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1Ymxp YyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHVpbnQzMiBidXR0b247Cisr CQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmlj ZSBkZXZpY2U7CisrCQlwdWJsaWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CXB1YmxpYyBzdHJ1Y3QgUGFkUmluZ0V2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlw ZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRG bGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJs aWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5w dXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRTb3VyY2Ug cmluZ19zb3VyY2U7CisrCQlwdWJsaWMgdWludDMyIHJpbmdfbnVtYmVyOworKwkJcHVibGljIHVp bnQzMiBncm91cDsKKysJCXB1YmxpYyBkb3VibGUgYW5nbGU7CisrCQlwdWJsaWMgdWludDMyIG1v ZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFkU3RyaXBFdmVudCB7 CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGlt ZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7 CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBD bHV0dGVyLklucHV0RGV2aWNlUGFkU291cmNlIHN0cmlwX3NvdXJjZTsKKysJCXB1YmxpYyB1aW50 MzIgc3RyaXBfbnVtYmVyOworKwkJcHVibGljIHVpbnQzMiBncm91cDsKKysJCXB1YmxpYyBkb3Vi bGUgdmFsdWU7CisrCQlwdWJsaWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVk X2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRl cl9wYXRoX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RydWN0IFBhdGhOb2RlIHsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2RlVHlw ZSB0eXBlOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLktub3QgcG9pbnRzWzNdOworKwkJcHVibGljIENsdXR0ZXIuUGF0aE5vZGU/IGNv cHkgKCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5QYXRoTm9kZSBub2RlX2IpOwor KwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZy ZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BlcnNwZWN0 aXZlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGlj IHN0cnVjdCBQZXJzcGVjdGl2ZSB7CisrCQlwdWJsaWMgZmxvYXQgZm92eTsKKysJCXB1YmxpYyBm bG9hdCBhc3BlY3Q7CisrCQlwdWJsaWMgZmxvYXQgel9uZWFyOworKwkJcHVibGljIGZsb2F0IHpf ZmFyOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBvaW50ZXJBMTF5U2V0 dGluZ3MgeworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlGbGFncyBjb250cm9sczsKKysJ CXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgZHdlbGxfY2xpY2tfdHlw ZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxNb2RlIGR3ZWxsX21vZGU7Cisr CQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVf c2luZ2xlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2Vs bF9nZXN0dXJlX2RvdWJsZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJl Y3Rpb24gZHdlbGxfZ2VzdHVyZV9kcmFnOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlE d2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX3NlY29uZGFyeTsKKysJCXB1YmxpYyBpbnQgc2Vj b25kYXJ5X2NsaWNrX2RlbGF5OworKwkJcHVibGljIGludCBkd2VsbF9kZWxheTsKKysJCXB1Ymxp YyBpbnQgZHdlbGxfdGhyZXNob2xkOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yOCIpXQorKwlwdWJsaWMgc3RydWN0IFByb3hpbWl0eUV2ZW50IHsKKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJ cHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu U3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNM VVRURVJfVFlQRV9VTklUUyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBzdHJ1Y3QgVW5pdHMgeworKwkJcHVibGljIENsdXR0ZXIuVW5pdHM/IGNvcHkgKCk7CisrCQlw dWJsaWMgdm9pZCBmcmVlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zy b21fY20iKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX2NtIChmbG9hdCBjbSk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21f ZW0gKGZsb2F0IGVtKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2Vt X2Zvcl9mb250IildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9lbV9mb3JfZm9udCAoc3RyaW5nIGZv bnRfbmFtZSwgZmxvYXQgZW0pOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zy b21fbW0iKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX21tIChmbG9hdCBtbSk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9waXhlbHMiKV0KKysJCXB1YmxpYyBVbml0cy5m cm9tX3BpeGVscyAoaW50IHB4KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19m cm9tX3B0IildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9wdCAoZmxvYXQgcHQpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgVW5pdHMu ZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJcHVibGljIENsdXR0ZXIuVW5pdFR5cGUgZ2V0 X3VuaXRfdHlwZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfdW5pdF92YWx1ZSAoKTsKKysJCXB1 YmxpYyBmbG9hdCB0b19waXhlbHMgKCk7CisrCQlwdWJsaWMgc3RyaW5nIHRvX3N0cmluZyAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfQUNUT1JfQUxJR05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9y X2FsaWduX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBlbnVtIEFjdG9yQWxpZ24geworKwkJRklMTCwKKysJCVNUQVJULAorKwkJQ0VOVEVSLAor KwkJRU5ECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0FDVE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rv cl9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEFjdG9yRmxh Z3MgeworKwkJTUFQUEVELAorKwkJUkVBTElaRUQsCisrCQlSRUFDVElWRSwKKysJCVZJU0lCTEUs CisrCQlOT19MQVlPVVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQUxJR05fIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2FsaWduX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgZW51bSBBbGlnbkF4aXMgeworKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJ Qk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxsb2NhdGlvbl9m bGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIGVudW0gQWxsb2NhdGlvbkZsYWdzIHsKKysJCUFMTE9DQVRJT05fTk9ORSwK KysJCUFCU09MVVRFX09SSUdJTl9DSEFOR0VELAorKwkJREVMRUdBVEVfTEFZT1VUCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbmltYXRpb25fbW9kZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEFuaW1hdGlv bk1vZGUgeworKwkJQ1VTVE9NX01PREUsCisrCQlMSU5FQVIsCisrCQlFQVNFX0lOX1FVQUQsCisr CQlFQVNFX09VVF9RVUFELAorKwkJRUFTRV9JTl9PVVRfUVVBRCwKKysJCUVBU0VfSU5fQ1VCSUMs CisrCQlFQVNFX09VVF9DVUJJQywKKysJCUVBU0VfSU5fT1VUX0NVQklDLAorKwkJRUFTRV9JTl9R VUFSVCwKKysJCUVBU0VfT1VUX1FVQVJULAorKwkJRUFTRV9JTl9PVVRfUVVBUlQsCisrCQlFQVNF X0lOX1FVSU5ULAorKwkJRUFTRV9PVVRfUVVJTlQsCisrCQlFQVNFX0lOX09VVF9RVUlOVCwKKysJ CUVBU0VfSU5fU0lORSwKKysJCUVBU0VfT1VUX1NJTkUsCisrCQlFQVNFX0lOX09VVF9TSU5FLAor KwkJRUFTRV9JTl9FWFBPLAorKwkJRUFTRV9PVVRfRVhQTywKKysJCUVBU0VfSU5fT1VUX0VYUE8s CisrCQlFQVNFX0lOX0NJUkMsCisrCQlFQVNFX09VVF9DSVJDLAorKwkJRUFTRV9JTl9PVVRfQ0lS QywKKysJCUVBU0VfSU5fRUxBU1RJQywKKysJCUVBU0VfT1VUX0VMQVNUSUMsCisrCQlFQVNFX0lO X09VVF9FTEFTVElDLAorKwkJRUFTRV9JTl9CQUNLLAorKwkJRUFTRV9PVVRfQkFDSywKKysJCUVB U0VfSU5fT1VUX0JBQ0ssCisrCQlFQVNFX0lOX0JPVU5DRSwKKysJCUVBU0VfT1VUX0JPVU5DRSwK KysJCUVBU0VfSU5fT1VUX0JPVU5DRSwKKysJCVNURVBTLAorKwkJU1RFUF9TVEFSVCwKKysJCVNU RVBfRU5ELAorKwkJQ1VCSUNfQkVaSUVSLAorKwkJRUFTRSwKKysJCUVBU0VfSU4sCisrCQlFQVNF X09VVCwKKysJCUVBU0VfSU5fT1VULAorKwkJQU5JTUFUSU9OX0xBU1QKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfQklOX0FMSUdOTUVOVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluX2FsaWdubWVudF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEJp bkFsaWdubWVudCB7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJRklYRUQs CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJRklMTCwKKysJCVNUQVJULAor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUVORCwKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSldCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQklORF8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfYmluZF9jb29yZGluYXRlX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gQmluZENvb3JkaW5hdGUgeworKwkJ WCwKKysJCVksCisrCQlXSURUSCwKKysJCUhFSUdIVCwKKysJCVBPU0lUSU9OLAorKwkJU0laRSwK KysJCUFMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9CT1hfQUxJR05NRU5UXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9ib3hfYWxpZ25tZW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJcHVibGljIGVudW0gQm94QWxpZ25tZW50IHsKKysJCVNUQVJULAorKwkJRU5ELAor KwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JVVFRPTl9TVEFURV8iLCB0eXBlX2lkID0gImNs dXR0ZXJfYnV0dG9uX3N0YXRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEJ1dHRvblN0 YXRlIHsKKysJCVJFTEVBU0VELAorKwkJUFJFU1NFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9DT05URU5U X0dSQVZJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRlbnRfZ3Jhdml0eV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBDb250ZW50 R3Jhdml0eSB7CisrCQlUT1BfTEVGVCwKKysJCVRPUCwKKysJCVRPUF9SSUdIVCwKKysJCUxFRlQs CisrCQlDRU5URVIsCisrCQlSSUdIVCwKKysJCUJPVFRPTV9MRUZULAorKwkJQk9UVE9NLAorKwkJ Qk9UVE9NX1JJR0hULAorKwkJUkVTSVpFX0ZJTEwsCisrCQlSRVNJWkVfQVNQRUNUCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX1JFUEVBVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9yZXBlYXRfZ2V0 X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlw dWJsaWMgZW51bSBDb250ZW50UmVwZWF0IHsKKysJCU5PTkUsCisrCQlYX0FYSVMsCisrCQlZX0FY SVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGVi dWdGbGFnIHsKKysJCU1JU0MsCisrCQlBQ1RPUiwKKysJCVRFWFRVUkUsCisrCQlFVkVOVCwKKysJ CVBBSU5ULAorKwkJUEFOR08sCisrCQlCQUNLRU5ELAorKwkJU0NIRURVTEVSLAorKwkJU0NSSVBU LAorKwkJU0hBREVSLAorKwkJTVVMVElTVEFHRSwKKysJCUFOSU1BVElPTiwKKysJCUxBWU9VVCwK KysJCVBJQ0ssCisrCQlFVkVOVExPT1AsCisrCQlDTElQUElORywKKysJCU9PQl9UUkFOU0ZPUk1T CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0RSQUdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RyYWdfYXhpc19n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVt IERyYWdBeGlzIHsKKysJCUFYSVNfTk9ORSwKKysJCVhfQVhJUywKKysJCVlfQVhJUworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9ERUJVR18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJhd19kZWJ1Z19mbGFnX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRHJhd0RlYnVnRmxhZyB7Cisr CQlESVNBQkxFX1NXQVBfRVZFTlRTLAorKwkJRElTQUJMRV9DTElQUEVEX1JFRFJBV1MsCisrCQlS RURSQVdTLAorKwkJUEFJTlRfVk9MVU1FUywKKysJCURJU0FCTEVfQ1VMTElORywKKysJCURJU0FC TEVfT0ZGU0NSRUVOX1JFRElSRUNULAorKwkJQ09OVElOVU9VU19SRURSQVcsCisrCQlQQUlOVF9E RUZPUk1fVElMRVMsCisrCQlQQUlOVF9EQU1BR0VfUkVHSU9OCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0VG RkVDVF9QQUlOVF9BQ1RPUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZWZmZWN0X3BhaW50X2ZsYWdz X2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRWZmZWN0UGFpbnRGbGFn cyB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SX0RJUlRZ IildCisrCQlBQ1RPUl9ESVJUWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9FVkVOVF8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfZXZlbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBlbnVtIEV2ZW50RmxhZ3MgeworKwkJTk9ORSwK KysJCUZMQUdfU1lOVEhFVElDLAorKwkJRkxBR19JTlBVVF9NRVRIT0QsCisrCQlGTEFHX1JFUEVB VEVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF90eXBlX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0g RXZlbnRUeXBlIHsKKysJCU5PVEhJTkcsCisrCQlLRVlfUFJFU1MsCisrCQlLRVlfUkVMRUFTRSwK KysJCU1PVElPTiwKKysJCUVOVEVSLAorKwkJTEVBVkUsCisrCQlCVVRUT05fUFJFU1MsCisrCQlC VVRUT05fUkVMRUFTRSwKKysJCVNDUk9MTCwKKysJCVNUQUdFX1NUQVRFLAorKwkJREVTVFJPWV9O T1RJRlksCisrCQlDTElFTlRfTUVTU0FHRSwKKysJCURFTEVURSwKKysJCVRPVUNIX0JFR0lOLAor KwkJVE9VQ0hfVVBEQVRFLAorKwkJVE9VQ0hfRU5ELAorKwkJVE9VQ0hfQ0FOQ0VMLAorKwkJVE9V Q0hQQURfUElOQ0gsCisrCQlUT1VDSFBBRF9TV0lQRSwKKysJCVBST1hJTUlUWV9JTiwKKysJCVBS T1hJTUlUWV9PVVQsCisrCQlQQURfQlVUVE9OX1BSRVNTLAorKwkJUEFEX0JVVFRPTl9SRUxFQVNF LAorKwkJUEFEX1NUUklQLAorKwkJUEFEX1JJTkcsCisrCQlFVkVOVF9MQVNUCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX0ZFQVRVUkVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ZlYXR1cmVfZmxhZ3NfZ2V0X3R5 cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1Ymxp YyBlbnVtIEZlYXR1cmVGbGFncyB7CisrCQlURVhUVVJFX05QT1QsCisrCQlTV0FQX1RIUk9UVExF LAorKwkJU1RBR0VfU1RBVElDLAorKwkJU1RBR0VfQ1VSU09SLAorKwkJU0hBREVSU19HTFNMLAor KwkJT0ZGU0NSRUVOLAorKwkJU1RBR0VfTVVMVElQTEUsCisrCQlTV0FQX0VWRU5UUzsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2F2YWlsYWJsZSIpXQorKwkJcHVibGljIGJv b2wgaXNfYXZhaWxhYmxlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVf Z2V0X2FsbCIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLkZlYXR1cmVGbGFncyBAZ2V0ICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9GTE9XXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9mbG93X29yaWVu dGF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVi bGljIGVudW0gRmxvd09yaWVudGF0aW9uIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9HRVNUVVJFX1RSSUdHRVJfRURHRV8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfZ2VzdHVyZV90cmlnZ2VyX2VkZ2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTgiKV0KKysJcHVibGljIGVudW0gR2VzdHVyZVRyaWdnZXJFZGdlIHsKKysJCU5PTkUs CisrCQlBRlRFUiwKKysJCUJFRk9SRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9HUkFWSVRZXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9ncmF2aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC4yIildCisr CXB1YmxpYyBlbnVtIEdyYXZpdHkgeworKwkJTk9ORSwKKysJCU5PUlRILAorKwkJTk9SVEhfRUFT VCwKKysJCUVBU1QsCisrCQlTT1VUSF9FQVNULAorKwkJU09VVEgsCisrCQlTT1VUSF9XRVNULAor KwkJV0VTVCwKKysJCU5PUlRIX1dFU1QsCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfR1JJ RF9QT1NJVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JpZF9wb3NpdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBHcmlkUG9z aXRpb24geworKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVE9QLAorKwkJQk9UVE9NCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0lOSVRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2luaXRfZXJyb3JfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgZW51bSBJbml0RXJy b3IgeworKwkJU1VDQ0VTUywKKysJCUVSUk9SX1VOS05PV04sCisrCQlFUlJPUl9USFJFQURTLAor KwkJRVJST1JfQkFDS0VORCwKKysJCUVSUk9SX0lOVEVSTkFMOworKwkJcHVibGljIHN0YXRpYyBH TGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9BWElTXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9pbnB1dF9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gSW5wdXRBeGlzIHsKKysJCUlHTk9SRSwKKysJCVgs CisrCQlZLAorKwkJUFJFU1NVUkUsCisrCQlYVElMVCwKKysJCVlUSUxULAorKwkJV0hFRUwsCisr CQlESVNUQU5DRSwKKysJCVJPVEFUSU9OLAorKwkJU0xJREVSLAorKwkJTEFTVAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9JTlBVVF9DT05URU5UX0hJTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2Nv bnRlbnRfaGludF9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVt IElucHV0Q29udGVudEhpbnRGbGFncyB7CisrCQlDT01QTEVUSU9OLAorKwkJU1BFTExDSEVDSywK KysJCUFVVE9fQ0FQSVRBTElaQVRJT04sCisrCQlMT1dFUkNBU0UsCisrCQlVUFBFUkNBU0UsCisr CQlUSVRMRUNBU0UsCisrCQlISURERU5fVEVYVCwKKysJCVNFTlNJVElWRV9EQVRBLAorKwkJTEFU SU4sCisrCQlNVUxUSUxJTkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfQ09OVEVOVF9QVVJQT1NF XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9jb250ZW50X3B1cnBvc2VfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGVudW0gSW5wdXRDb250ZW50UHVycG9zZSB7CisrCQlOT1JNQUwsCisrCQlB TFBIQSwKKysJCURJR0lUUywKKysJCU5VTUJFUiwKKysJCVBIT05FLAorKwkJVVJMLAorKwkJRU1B SUwsCisrCQlOQU1FLAorKwkJUEFTU1dPUkQsCisrCQlEQVRFLAorKwkJVElNRSwKKysJCURBVEVU SU1FLAorKwkJVEVSTUlOQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX01BUFBJTkdf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV9tYXBwaW5nX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlTWFwcGluZyB7CisrCQlBQlNPTFVURSwKKysJCVJF TEFUSVZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0RFVklDRV9QQURfU09VUkNFXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfcGFkX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBJbnB1dERldmljZVBhZFNvdXJjZSB7CisrCQlVTktOT1dOLAorKwkJRklOR0VS CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0RFVklDRV9UT09MXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9pbnB1dF9kZXZpY2VfdG9vbF90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjI4IildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlVG9vbFR5cGUgeworKwkJTk9O RSwKKysJCVBFTiwKKysJCUVSQVNFUiwKKysJCUJSVVNILAorKwkJUEVOQ0lMLAorKwkJQUlSQlJV U0gsCisrCQlNT1VTRSwKKysJCUxFTlMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2lucHV0X2RldmljZV90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZpY2VUeXBlIHsKKysJCVBPSU5URVJf REVWSUNFLAorKwkJS0VZQk9BUkRfREVWSUNFLAorKwkJRVhURU5TSU9OX0RFVklDRSwKKysJCUpP WVNUSUNLX0RFVklDRSwKKysJCVRBQkxFVF9ERVZJQ0UsCisrCQlUT1VDSFBBRF9ERVZJQ0UsCisr CQlUT1VDSFNDUkVFTl9ERVZJQ0UsCisrCQlQRU5fREVWSUNFLAorKwkJRVJBU0VSX0RFVklDRSwK KysJCUNVUlNPUl9ERVZJQ0UsCisrCQlQQURfREVWSUNFLAorKwkJTl9ERVZJQ0VfVFlQRVMKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfSU5QVVRfTU9ERV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfbW9k ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBl bnVtIElucHV0TW9kZSB7CisrCQlNQVNURVIsCisrCQlTTEFWRSwKKysJCUZMT0FUSU5HCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX0lOUFVUX1BBTkVMX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1 dF9wYW5lbF9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dFBhbmVsU3Rh dGUgeworKwkJT0ZGLAorKwkJT04sCisrCQlUT0dHTEUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5URVJQ T0xBVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW50ZXJwb2xhdGlvbl9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4y MiIsIHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBJbnRlcnBvbGF0aW9uIHsKKysJCUxJ TkVBUiwKKysJCUNVQklDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0tFWV9TVEFURV8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfa2V5X3N0YXRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEtleVN0YXRl IHsKKysJCVJFTEVBU0VELAorKwkJUFJFU1NFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9rZXlib2FyZF9hMTF5X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gS2V5Ym9hcmRBMTF5RmxhZ3MgeworKwkJS0VZQk9BUkRfRU5B QkxFRCwKKysJCVRJTUVPVVRfRU5BQkxFRCwKKysJCU1PVVNFX0tFWVNfRU5BQkxFRCwKKysJCVNM T1dfS0VZU19FTkFCTEVELAorKwkJU0xPV19LRVlTX0JFRVBfUFJFU1MsCisrCQlTTE9XX0tFWVNf QkVFUF9BQ0NFUFQsCisrCQlTTE9XX0tFWVNfQkVFUF9SRUpFQ1QsCisrCQlCT1VOQ0VfS0VZU19F TkFCTEVELAorKwkJQk9VTkNFX0tFWVNfQkVFUF9SRUpFQ1QsCisrCQlUT0dHTEVfS0VZU19FTkFC TEVELAorKwkJU1RJQ0tZX0tFWVNfRU5BQkxFRCwKKysJCVNUSUNLWV9LRVlTX1RXT19LRVlfT0ZG LAorKwkJU1RJQ0tZX0tFWVNfQkVFUCwKKysJCUZFQVRVUkVfU1RBVEVfQ0hBTkdFX0JFRVAKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfTE9OR19QUkVTU18iLCB0eXBlX2lkID0gImNsdXR0ZXJfbG9uZ19wcmVz c19zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1 YmxpYyBlbnVtIExvbmdQcmVzc1N0YXRlIHsKKysJCVFVRVJZLAorKwkJQUNUSVZBVEUsCisrCQlD QU5DRUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX21vZGlmaWVyX3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40Iild CisrCXB1YmxpYyBlbnVtIE1vZGlmaWVyVHlwZSB7CisrCQlTSElGVF9NQVNLLAorKwkJTE9DS19N QVNLLAorKwkJQ09OVFJPTF9NQVNLLAorKwkJTU9EMV9NQVNLLAorKwkJTU9EMl9NQVNLLAorKwkJ TU9EM19NQVNLLAorKwkJTU9ENF9NQVNLLAorKwkJTU9ENV9NQVNLLAorKwkJQlVUVE9OMV9NQVNL LAorKwkJQlVUVE9OMl9NQVNLLAorKwkJQlVUVE9OM19NQVNLLAorKwkJQlVUVE9ONF9NQVNLLAor KwkJQlVUVE9ONV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTNfTUFTSywKKysJCU1PRElG SUVSX1JFU0VSVkVEXzE0X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNV9NQVNLLAorKwkJ TU9ESUZJRVJfUkVTRVJWRURfMTZfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE3X01BU0ss CisrCQlNT0RJRklFUl9SRVNFUlZFRF8xOF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTlf TUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIwX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZF RF8yMV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjJfTUFTSywKKysJCU1PRElGSUVSX1JF U0VSVkVEXzIzX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yNF9NQVNLLAorKwkJTU9ESUZJ RVJfUkVTRVJWRURfMjVfTUFTSywKKysJCVNVUEVSX01BU0ssCisrCQlIWVBFUl9NQVNLLAorKwkJ TUVUQV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjlfTUFTSywKKysJCVJFTEVBU0VfTUFT SywKKysJCU1PRElGSUVSX01BU0sKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfT0ZGU0NSRUVOX1JFRElSRUNU XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9vZmZzY3JlZW5fcmVkaXJlY3RfZ2V0X3R5cGUgKCkiKV0K KysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIE9m ZnNjcmVlblJlZGlyZWN0IHsKKysJCUFVVE9NQVRJQ19GT1JfT1BBQ0lUWSwKKysJCUFMV0FZUwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9PUklFTlRBVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfb3JpZW50 YXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVi bGljIGVudW0gT3JpZW50YXRpb24geworKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX1BBTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFuX2F4aXNfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gUGFuQXhp cyB7CisrCQlBWElTX05PTkUsCisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlBWElTX0FVVE8K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfUEFUSF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9ub2RlX3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg ZW51bSBQYXRoTm9kZVR5cGUgeworKwkJTU9WRV9UTywKKysJCUxJTkVfVE8sCisrCQlDVVJWRV9U TywKKysJCUNMT1NFLAorKwkJUkVMX01PVkVfVE8sCisrCQlSRUxfTElORV9UTywKKysJCVJFTF9D VVJWRV9UTworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ERUJVR19OT1BfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3BpY2tfZGVidWdfZmxhZ19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVt IFBpY2tEZWJ1Z0ZsYWcgeworKwkJUElDS0lORworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QSUNLXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9waWNrX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBQaWNrTW9kZSB7CisrCQlOT05FLAorKwkJUkVB Q1RJVkUsCisrCQlBTEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9DTElDS19UWVBFXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfY2xpY2tfdHlwZV9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIHsKKysJCU5P TkUsCisrCQlQUklNQVJZLAorKwkJU0VDT05EQVJZLAorKwkJTUlERExFLAorKwkJRE9VQkxFLAor KwkJRFJBRworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX0RXRUxMX0RJUkVDVElPTl8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBQb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIHsKKysJCU5PTkUsCisrCQlM RUZULAorKwkJUklHSFQsCisrCQlVUCwKKysJCURPV04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV9E V0VMTF9NT0RFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfbW9kZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQb2ludGVyQTExeUR3ZWxsTW9kZSB7CisrCQlX SU5ET1csCisrCQlHRVNUVVJFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3BvaW50ZXJfYTExeV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1 YmxpYyBlbnVtIFBvaW50ZXJBMTF5RmxhZ3MgeworKwkJU0VDT05EQVJZX0NMSUNLX0VOQUJMRUQs CisrCQlEV0VMTF9FTkFCTEVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfVElNRU9VVF9UWVBFXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfdGltZW91dF90eXBlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5VGltZW91dFR5cGUgeworKwkJU0VDT05EQVJZ X0NMSUNLLAorKwkJRFdFTEwsCisrCQlHRVNUVVJFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUEFJTlRf RkxBR1NfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JlcGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0K KysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBS ZXBhaW50RmxhZ3MgeworKwkJUFJFX1BBSU5ULAorKwkJUE9TVF9QQUlOVCwKKysJCVFVRVVFX1JF RFJBV19PTl9BREQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUkVRVUVTVF8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfcmVxdWVzdF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJcHVibGljIGVudW0gUmVxdWVzdE1vZGUgeworKwkJSEVJR0hUX0ZPUl9XSURUSCwKKysJ CVdJRFRIX0ZPUl9IRUlHSFQsCisrCQlDT05URU5UX1NJWkUKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gUm90YXRlQXhpcyB7CisrCQlYX0FYSVMs CisrCQlZX0FYSVMsCisrCQlaX0FYSVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUk9UQVRFXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9yb3RhdGVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAi MC40IildCisrCXB1YmxpYyBlbnVtIFJvdGF0ZURpcmVjdGlvbiB7CisrCQlDVywKKysJCUNDVwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9TQ0FMSU5HX0ZJTFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nh bGluZ19maWx0ZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJcHVibGljIGVudW0gU2NhbGluZ0ZpbHRlciB7CisrCQlMSU5FQVIsCisrCQlORUFSRVNULAor KwkJVFJJTElORUFSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfc2Nyb2xsX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCXB1YmxpYyBlbnVtIFNjcm9sbERpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04s CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlTTU9PVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xM X0ZJTklTSEVEXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfZmluaXNoX2ZsYWdzX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJcHVi bGljIGVudW0gU2Nyb2xsRmluaXNoRmxhZ3MgeworKwkJTk9ORSwKKysJCUhPUklaT05UQUwsCisr CQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3Njcm9sbF9tb2RlX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsTW9kZSB7CisrCQlOT05FLAorKwkJSE9S SVpPTlRBTExZLAorKwkJVkVSVElDQUxMWSwKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NS T0xMX1NPVVJDRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX3NvdXJjZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxT b3VyY2UgeworKwkJVU5LTk9XTiwKKysJCVdIRUVMLAorKwkJRklOR0VSLAorKwkJQ09OVElOVU9V UworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX3R5cGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBT aGFkZXJUeXBlIHsKKysJCVZFUlRFWF9TSEFERVIsCisrCQlGUkFHTUVOVF9TSEFERVIKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfU05BUF9FREdFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zbmFwX2VkZ2VfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBT bmFwRWRnZSB7CisrCQlUT1AsCisrCQlSSUdIVCwKKysJCUJPVFRPTSwKKysJCUxFRlQKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfU1RBR0VfU1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX3N0YXRl X2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQor KwlwdWJsaWMgZW51bSBTdGFnZVN0YXRlIHsKKysJCUFDVElWQVRFRAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9DT0xPUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhdGljX2NvbG9yX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gU3RhdGljQ29sb3Ig eworKwkJV0hJVEUsCisrCQlCTEFDSywKKysJCVJFRCwKKysJCURBUktfUkVELAorKwkJR1JFRU4s CisrCQlEQVJLX0dSRUVOLAorKwkJQkxVRSwKKysJCURBUktfQkxVRSwKKysJCUNZQU4sCisrCQlE QVJLX0NZQU4sCisrCQlNQUdFTlRBLAorKwkJREFSS19NQUdFTlRBLAorKwkJWUVMTE9XLAorKwkJ REFSS19ZRUxMT1csCisrCQlHUkFZLAorKwkJREFSS19HUkFZLAorKwkJTElHSFRfR1JBWSwKKysJ CUJVVFRFUiwKKysJCUJVVFRFUl9MSUdIVCwKKysJCUJVVFRFUl9EQVJLLAorKwkJT1JBTkdFLAor KwkJT1JBTkdFX0xJR0hULAorKwkJT1JBTkdFX0RBUkssCisrCQlDSE9DT0xBVEUsCisrCQlDSE9D T0xBVEVfTElHSFQsCisrCQlDSE9DT0xBVEVfREFSSywKKysJCUNIQU1FTEVPTiwKKysJCUNIQU1F TEVPTl9MSUdIVCwKKysJCUNIQU1FTEVPTl9EQVJLLAorKwkJU0tZX0JMVUUsCisrCQlTS1lfQkxV RV9MSUdIVCwKKysJCVNLWV9CTFVFX0RBUkssCisrCQlQTFVNLAorKwkJUExVTV9MSUdIVCwKKysJ CVBMVU1fREFSSywKKysJCVNDQVJMRVRfUkVELAorKwkJU0NBUkxFVF9SRURfTElHSFQsCisrCQlT Q0FSTEVUX1JFRF9EQVJLLAorKwkJQUxVTUlOSVVNXzEsCisrCQlBTFVNSU5JVU1fMiwKKysJCUFM VU1JTklVTV8zLAorKwkJQUxVTUlOSVVNXzQsCisrCQlBTFVNSU5JVU1fNSwKKysJCUFMVU1JTklV TV82LAorKwkJVFJBTlNQQVJFTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU1RFUF9NT0RFXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9zdGVwX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gU3RlcE1vZGUgeworKwkJU1RBUlQsCisrCQlFTkQK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfU1dJUEVfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9z d2lwZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIFN3aXBlRGlyZWN0aW9uIHsKKysJCVVQLAorKwkJ RE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUX0RJUkVDVElP Tl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBUZXh0RGlyZWN0aW9uIHsK KysJCURFRkFVTFQsCisrCQlMVFIsCisrCQlSVEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVFVSRV8i LCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxh Z3NdCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjIyIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVGbGFncyB7CisrCQlO T05FLAorKwkJUkdCX0ZMQUdfQkdSLAorKwkJUkdCX0ZMQUdfUFJFTVVMVCwKKysJCVlVVl9GTEFH X1lVVjIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVFVSRV9RVUFMSVRZXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl90ZXh0dXJlX3F1YWxpdHlfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjgiKV0KKysJ cHVibGljIGVudW0gVGV4dHVyZVF1YWxpdHkgeworKwkJTE9XLAorKwkJTUVESVVNLAorKwkJSElH SAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9USU1FTElORV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGltZWxp bmVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJcHVibGljIGVudW0gVGltZWxpbmVEaXJlY3Rpb24geworKwkJRk9SV0FSRCwKKysJCUJBQ0tX QVJECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RPVUNIUEFEX0dFU1RVUkVfUEhBU0VfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3RvdWNocGFkX2dlc3R1cmVfcGhhc2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGljIGVudW0gVG91Y2hwYWRHZXN0dXJlUGhhc2Ug eworKwkJQkVHSU4sCisrCQlVUERBVEUsCisrCQlFTkQsCisrCQlDQU5DRUwKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfVU5JVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdW5pdF90eXBlX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gVW5pdFR5cGUgewor KwkJUElYRUwsCisrCQlFTSwKKysJCU1NLAorKwkJUE9JTlQsCisrCQlDTQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9WSVJUVUFMX0RFVklDRV9UWVBFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl92aXJ0dWFsX2Rl dmljZV90eXBlX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gVmlydHVh bERldmljZVR5cGUgeworKwkJTk9ORSwKKysJCUtFWUJPQVJELAorKwkJUE9JTlRFUiwKKysJCVRP VUNIU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1pPT01fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3pv b21fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlw dWJsaWMgZW51bSBab29tQXhpcyB7CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0lNQUdFX0VSUk9SX0lOVkFMSURfIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBlcnJvcmRvbWFpbiBJbWFnZUVycm9yIHsKKysJCURBVEE7 CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X1NDUklQVF9FUlJPUl9JTlZBTElEXyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CXB1YmxpYyBlcnJvcmRvbWFpbiBTY3JpcHRFcnJvciB7CisrCQlUWVBFX0ZVTkNUSU9OLAorKwkJ UFJPUEVSVFksCisrCQlWQUxVRTsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFyayBxdWFyayAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlw dWJsaWMgZGVsZWdhdGUgQ2x1dHRlci5BY3RvciBBY3RvckNyZWF0ZUNoaWxkRnVuYyAoR0xpYi5P YmplY3QgaXRlbSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBk ZWxlZ2F0ZSBkb3VibGUgQWxwaGFGdW5jIChDbHV0dGVyLkFscGhhIGFscGhhKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0g NC45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9v bCBCaW5kaW5nQWN0aW9uRnVuYyAoR0xpYi5PYmplY3QgZ29iamVjdCwgc3RyaW5nIGFjdGlvbl9u YW1lLCB1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3Bv cyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIENhbGxiYWNrIChDbHV0dGVyLkFjdG9y IGFjdG9yKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgRW1pdElucHV0 RGV2aWNlRXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQsIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2 aWNlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg aW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVi bGljIGRlbGVnYXRlIGJvb2wgRXZlbnRGaWx0ZXJGdW5jIChDbHV0dGVyLkV2ZW50IGV2ZW50KTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFu Y2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZGVs ZWdhdGUgdm9pZCBQYXRoQ2FsbGJhY2sgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190YXJnZXQgPSBm YWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJv b2wgUHJvZ3Jlc3NGdW5jIChHTGliLlZhbHVlIGEsIEdMaWIuVmFsdWUgYiwgZG91YmxlIHByb2dy ZXNzLCBHTGliLlZhbHVlIHJldHZhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDYuOSldCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgU2NyaXB0Q29ubmVjdEZ1bmMgKENs dXR0ZXIuU2NyaXB0IHNjcmlwdCwgR0xpYi5PYmplY3Qgb2JqZWN0LCBzdHJpbmcgc2lnbmFsX25h bWUsIHN0cmluZyBoYW5kbGVyX25hbWUsIEdMaWIuT2JqZWN0IGNvbm5lY3Rfb2JqZWN0LCBHTGli LkNvbm5lY3RGbGFncyBmbGFncyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDMuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBkb3VibGUgVGltZWxpbmVQcm9ncmVzc0Z1bmMg KENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUsIGRvdWJsZSBlbGFwc2VkLCBkb3VibGUgdG90YWwp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0NPR0wiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IHN0 cmluZyBDT0dMOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0NVUlJFTlRfVElNRSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC40IildCisrCXB1YmxpYyBjb25zdCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0ZM QVZPVVIiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBGTEFWT1VS OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX1BBVEhfUkVMQVRJVkUiKV0KKysJcHVibGljIGNvbnN0IGludCBQQVRIX1JF TEFUSVZFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX1BSSU9SSVRZX1JFRFJBVyIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVEUkFXOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRp YyB2b2lkIGJhc2VfaW5pdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBz dGF0aWMgdm9pZCBjYWlyb19jbGVhciAoQ2Fpcm8uQ29udGV4dCBjcik7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjYWlyb19zZXRfc291cmNlX2NvbG9yIChD YWlyby5Db250ZXh0IGNyLCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBjaGVja193aW5kb3dpbmdfYmFja2VuZCAoc3Ry aW5nIGJhY2tlbmRfdHlwZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY29sb3JfZnJvbV9obHMgKG91dCBD bHV0dGVyLkNvbG9yIGNvbG9yLCBmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0 dXJhdGlvbik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY29sb3JfZnJvbV9waXhlbCAob3V0IENsdXR0ZXIu Q29sb3IgY29sb3IsIHVpbnQzMiBwaXhlbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBzdGF0aWMgYm9vbCBjb2xvcl9mcm9tX3N0cmluZyAob3V0IENsdXR0ZXIuQ29sb3IgY29s b3IsIHN0cmluZyBzdHIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgc3RhdGlj IHVub3duZWQgQ2x1dHRlci5Db2xvcj8gY29sb3JfZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWND b2xvciBjb2xvcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgZGlzYWJsZV9hY2Nlc3NpYmlsaXR5ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgZG9fZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIHN0YXRpYyB1aW50IGV2ZW50X2FkZF9maWx0ZXIg KENsdXR0ZXIuU3RhZ2U/IHN0YWdlLCBbQ0NvZGUgKGRlbGVnYXRlX3RhcmdldF9wb3MgPSAyLjIs IGRlc3Ryb3lfbm90aWZ5X3BvcyA9IDIuMSldIG93bmVkIENsdXR0ZXIuRXZlbnRGaWx0ZXJGdW5j IGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIu RXZlbnQgZXZlbnRfZ2V0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3Rh dGljIHVub3duZWQgQ2x1dHRlci5FdmVudCBldmVudF9wZWVrICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGV2ZW50X3JlbW92ZV9maWx0ZXIgKHVpbnQg aWQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZXZlbnRz X3BlbmRpbmcgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBzdGF0aWMgYm9v bCBnZXRfYWNjZXNzaWJpbGl0eV9lbmFibGVkICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5FdmVudCBnZXRfY3VycmVudF9ldmVudCAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB1aW50MzIgZ2V0X2N1 cnJlbnRfZXZlbnRfdGltZSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0 YXRpYyB1bm93bmVkIENsdXR0ZXIuQmFja2VuZCBnZXRfZGVmYXVsdF9iYWNrZW5kICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQgZ2V0X2RlZmF1bHRfZnJh bWVfcmF0ZSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0 dGVyLlRleHREaXJlY3Rpb24gZ2V0X2RlZmF1bHRfdGV4dF9kaXJlY3Rpb24gKCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBQYW5nby5Gb250TWFwIGdl dF9mb250X21hcCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0YXRpYyBH TGliLk9wdGlvbkdyb3VwIGdldF9vcHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5PcHRpb25Hcm91cCBnZXRfb3B0aW9uX2dyb3VwX3dp dGhvdXRfaW5pdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIHN0YXRpYyB1 bm93bmVkIHN0cmluZyBnZXRfc2NyaXB0X2lkIChHTGliLk9iamVjdCBnb2JqZWN0KTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBz dGF0aWMgQ2x1dHRlci5Jbml0RXJyb3IgaW5pdCAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUg PSAiYXJnYyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUpXSByZWYgdW5vd25lZCBzdHJpbmdbXT8g YXJndik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5J bml0RXJyb3IgaW5pdF93aXRoX2FyZ3MgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gImFy Z2MiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41KV0gcmVmIHVub3duZWQgc3RyaW5nW10/IGFyZ3Ys IHN0cmluZz8gcGFyYW1ldGVyX3N0cmluZywgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSld IEdMaWIuT3B0aW9uRW50cnlbXT8gZW50cmllcywgc3RyaW5nPyB0cmFuc2xhdGlvbl9kb21haW4p IHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB1aW50MzIga2V5c3ltX3RvX3VuaWNvZGUg KHVpbnQga2V5dmFsKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyBpbnQg bWFpbl9sZXZlbCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluX3F1aXQgKCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGlj IHZvaWQgc2V0X2N1c3RvbV9iYWNrZW5kX2Z1bmMgKHZvaWQqIGZ1bmMpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyB1aW50IHVuaWNvZGVfdG9fa2V5c3ltICh1aW50 MzIgd2MpOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEg Yi92YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0Citp bmRleCAwMDAwMDAwMC4uYTJjMTA2NDUKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVy LWNvZ2wtNi1jdXN0b20udmFsYQorQEAgLTAsMCArMSwxMjUgQEAKKytuYW1lc3BhY2UgQ29nbCB7 CisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGlj IGNsYXNzIEJpdG1hcDogSGFuZGxlIHsKKysJCXB1YmxpYyBzdGF0aWMgQml0bWFwIG5ld19mcm9t X2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysKKysJW0Nv bXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3Mg QnVmZmVyOiBIYW5kbGUgeworKwkJcHVibGljIHVpbnQgZ2V0X3NpemUgKCk7CisrCQlwdWJsaWMg Ym9vbCBzZXRfZGF0YSAoc2l6ZV90IG9mZnNldCwgW0NDb2RlIChhcnJheV9sZW5ndGhfdHlwZSA9 ICJzaXplX3QiKV0gdWludDhbXSBkYXRhKTsKKysJCXB1YmxpYyB2b2lkIHVubWFwICgpOworKwl9 CisrCisrCVtDQ29kZSAoaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQ29s b3IgeworKwkJcHVibGljIENvbG9yLmZyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZs b2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCXB1YmxpYyBDb2xvci5mcm9tXzR1YiAodWludDgg cmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwl9CisrCisrCVtD b21wYWN0XQorKwlbQ0NvZGUgKHJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRsZV9yZWYiLCB1bnJl Zl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRsZV91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgSGFuZGxl IHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19iaXRtYXAiKV0KKysJCXB1YmxpYyBib29s IGlzX2JpdG1hcCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19idWZmZXIiKV0KKysJ CXB1YmxpYyBib29sIGlzX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19t YXRlcmlhbCIpXQorKwkJcHVibGljIGJvb2wgaXNfbWF0ZXJpYWwgKCk7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfaXNfb2Zmc2NyZWVuIildCisrCQlwdWJsaWMgYm9vbCBpc19vZmZzY3JlZW4g KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcGl4ZWxfYnVmZmVyIildCisrCQlwdWJs aWMgYm9vbCBpc19waXhlbF9idWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNf cHJvZ3JhbSIpXQorKwkJcHVibGljIGJvb2wgaXNfcHJvZ3JhbSAoKTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY29nbF9pc19zaGFkZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3NoYWRlciAoKTsKKysJ CVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc190ZXh0dXJlIildCisrCQlwdWJsaWMgYm9vbCBpc190 ZXh0dXJlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3ZlcnRleF9idWZmZXIiKV0K KysJCXB1YmxpYyBib29sIGlzX3ZlcnRleF9idWZmZXIgKCk7CisrCX0KKysKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJjb2dsX3Bh dGhfY29weSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBhdGggeworKwkJcHVibGlj IHN0YXRpYyB2b2lkIEBuZXcgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFz cyBQaXhlbEJ1ZmZlcjogSGFuZGxlIHsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZlciAodWludCBzaXpl KTsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZlci5mb3Jfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWln aHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHN0cmlkZSk7CisrCX0KKysKKysJW0Nv bXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJj b2dsX3Byb2dyYW1fcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3VucmVmIild CisrCXB1YmxpYyBjbGFzcyBQcm9ncmFtOiBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJj b2dsX2NyZWF0ZV9wcm9ncmFtIiwgdHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgUHJvZ3JhbSAoKTsKKysJCXB1YmxpYyB2b2lk IGF0dGFjaF9zaGFkZXIgKENvZ2wuU2hhZGVyIHNoYWRlcl9oYW5kbGUpOworKwkJcHVibGljIGlu dCBnZXRfdW5pZm9ybV9sb2NhdGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlwdWJsaWMg dm9pZCBsaW5rICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fMWYgKGludCB1bmlm b3JtX25vLCBmbG9hdCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xaSAo aW50IHVuaWZvcm1fbm8sIGludCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9y bV9mbG9hdCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9w b3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3Jt X2ludCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3Mg PSAyLjkpXSBpbnRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9tYXRy aXggKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgYm9vbCB0cmFuc3Bvc2UsIFtDQ29kZSAoYXJy YXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHZvaWQgdXNl ICgpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUi LCByZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29n bF9zaGFkZXJfdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlcjogSGFuZGxlIHsKKysJCVtD Q29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfc2hhZGVyIiwgdHlwZSA9ICJDb2dsSGFuZGxlKiIs IGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2hhZGVyIChDb2ds LlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVibGljIHZvaWQgY29tcGlsZSAoKTsKKysJ CXB1YmxpYyBzdHJpbmcgZ2V0X2luZm9fbG9nICgpOworKwkJcHVibGljIENvZ2wuU2hhZGVyVHlw ZSBnZXRfdHlwZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2NvbXBpbGVkICgpOworKwkJcHVibGlj IHZvaWQgc291cmNlIChzdHJpbmcgc291cmNlKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0ND b2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1 ZmZlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfdW5yZWYiKV0K KysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZlcjogSGFuZGxlIHsKKysJCVtDQ29kZSAodHlwZSA9 ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJs aWMgVmVydGV4QnVmZmVyICh1aW50IG5fdmVydGljZXMpOworKwkJcHVibGljIHZvaWQgYWRkIChz dHJpbmcgYXR0cmlidXRlX25hbWUsIHVjaGFyIG5fY29tcG9uZW50cywgQ29nbC5BdHRyaWJ1dGVU eXBlIHR5cGUsIGJvb2wgbm9ybWFsaXplZCwgdWludDE2IHN0cmlkZSwgdm9pZCogcG9pbnRlcik7 CisrCQlwdWJsaWMgdm9pZCBkZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJs aWMgdm9pZCBkaXNhYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQg ZHJhdyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgaW50IGZpcnN0LCBpbnQgY291bnQpOworKwkJ cHVibGljIHZvaWQgZHJhd19lbGVtZW50cyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgVmVydGV4 QnVmZmVySW5kaWNlcyBpbmRpY2VzLCBpbnQgbWluX2luZGV4LCBpbnQgbWF4X2luZGV4LCBpbnQg aW5kaWNlc19vZmZzZXQsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBlbmFibGUgKHN0cmlu ZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdWludCBnZXRfbl92ZXJ0aWNlcyAoKTsKKysJ CXB1YmxpYyB2b2lkIHN1Ym1pdCAoKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChj bmFtZSA9ICJDb2dsSGFuZGxlIildCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2Vz OiBIYW5kbGUgeworKwkJcHVibGljIFZlcnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5 cGUgaW5kaWNlc190eXBlLCB2b2lkKiBpbmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOwor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9y X3F1YWRzICh1aW50IG5faW5kaWNlcyk7CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRf dHlwZSAoKTsKKysJfQorKworKwlbQ0NvZGUgKHR5cGVfaWQgPSAiQ09HTF9UWVBFX01BVFJJWCIs IGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRy aXggeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9pbml0X2Zyb21fYXJyYXkiLCBh cnJheV9sZW5ndGggPSBmYWxzZSwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gZmFsc2UpXQorKwkJ cHVibGljIE1hdHJpeC5mcm9tX2FycmF5IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0g ZmxvYXRbXSBhcnJheSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRfaWRl bnRpdHkiKV0KKysJCXB1YmxpYyBNYXRyaXguaWRlbnRpdHkgKCk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNvZ2xfbWF0cml4X211bHRpcGx5IildCisrCQlwdWJsaWMgTWF0cml4Lm11bHRpcGx5IChD b2dsLk1hdHJpeCBhLCBDb2dsLk1hdHJpeCBiKTsKKysJfQorKworKwlbU2ltcGxlVHlwZV0KKysJ W0dJUiAobmFtZSA9ICJCb29sIildCisrCVtCb29sZWFuVHlwZV0KKysJcHVibGljIHN0cnVjdCBC b29sIDogYm9vbCB7CisrCX0KKysKKysJcHVibGljIHN0YXRpYyBHTGliLkNhbGxiYWNrIGdldF9w cm9jX2FkZHJlc3Moc3RyaW5nIHMpOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jb2ds LTYuZGVwcyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0NAor aW5kZXggMDAwMDAwMDAuLjk4Y2NhYzViCistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRl ci1jb2dsLTYuZGVwcworQEAgLTAsMCArMSBAQAorK3BhbmdvCitkaWZmIC0tZ2l0IGEvdmFwaS9t dXR0ZXItY29nbC02LnZhcGkgYi92YXBpL211dHRlci1jb2dsLTYudmFwaQorbmV3IGZpbGUgbW9k ZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5jOWFiNWQ1NworLS0tIC9kZXYvbnVsbAorKysrIGIv dmFwaS9tdXR0ZXItY29nbC02LnZhcGkKK0BAIC0wLDAgKzEsMTA3NyBAQAorKy8qIG11dHRlci1j b2dsLTYudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytb Q0NvZGUgKGNwcmVmaXggPSAiQ29nbCIsIGdpcl9uYW1lc3BhY2UgPSAiQ29nbCIsIGdpcl92ZXJz aW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiY29nbF8iKV0KKytuYW1lc3BhY2UgQ29n bCB7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g IkNvZ2xIYW5kbGUiLCB0eXBlX2lkID0gImNvZ2xfYml0bWFwX2dldF9ndHlwZSAoKSIpXQorKwlb Q29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJpdG1hcCA6IENvZ2wuSGFuZGxlIHsKKysJCXB1Ymxp YyBzdGF0aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEJpdG1hcCoiKV0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBCaXRtYXAuZnJvbV9maWxlIChzdHJpbmcgZmlsZW5h bWUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBDb2dsLlBpeGVsRm9ybWF0IGdldF9mb3JtYXQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3Jvd3N0cmlkZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfc2l6ZV9m cm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSwgb3V0IGludCB3aWR0aCwgb3V0IGludCBoZWlnaHQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3dpZHRo ICgpOworKwkJcHVibGljIHN0YXRpYyBDb2dsLkJpdG1hcCBuZXdfZnJvbV9maWxlIChzdHJpbmcg ZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJW0NvbXBhY3Rd CisrCXB1YmxpYyBjbGFzcyBCdWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgdWludCBn ZXRfc2l6ZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qgb2Zmc2V0LCBbQ0Nv ZGUgKGFycmF5X2xlbmd0aF90eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRhdGEpOworKwkJcHVi bGljIHZvaWQgdW5tYXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX2NvbnRleHRfZ2V0X2d0eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBDb250ZXh0IDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIENvbnRleHQgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9 ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQg PSAiY29nbF9mcmFtZV9jbG9zdXJlX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIGNsYXNzIEZyYW1lQ2xvc3VyZSB7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgcmVmX2Z1bmN0 aW9uID0gImNvZ2xfaGFuZGxlX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3Vu cmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgSGFuZGxlIHsKKysJCVtDQ29kZSAo Y25hbWUgPSAiY29nbF9pc19iaXRtYXAiKV0KKysJCXB1YmxpYyBib29sIGlzX2JpdG1hcCAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlz X2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19tYXRlcmlhbCIpXQorKwkJ cHVibGljIGJvb2wgaXNfbWF0ZXJpYWwgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNf b2Zmc2NyZWVuIildCisrCQlwdWJsaWMgYm9vbCBpc19vZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfaXNfcGl4ZWxfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19waXhl bF9idWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcHJvZ3JhbSIpXQorKwkJ cHVibGljIGJvb2wgaXNfcHJvZ3JhbSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19z aGFkZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3NoYWRlciAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9pc190ZXh0dXJlIildCisrCQlwdWJsaWMgYm9vbCBpc190ZXh0dXJlICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3ZlcnRleF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29s IGlzX3ZlcnRleF9idWZmZXIgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0 aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9tYXRlcmlhbF9nZXRfdHlwZSAo KSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIE1hdGVyaWFsIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgTWF0ZXJpYWwg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX3Rlc3RfZnVu Y3Rpb24gKENvZ2wuTWF0ZXJpYWxBbHBoYUZ1bmMgYWxwaGFfZnVuYywgZmxvYXQgYWxwaGFfcmVm ZXJlbmNlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0 cmluZyBibGVuZF9zdHJpbmcpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZF9jb25zdGFudCAoQ29nbC5Db2xvciBjb25zdGFudF9j b2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDb2ds LkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29s b3I0dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2 Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXIgKGludCBsYXllcl9p bmRleCwgQ29nbC5IYW5kbGUgdGV4dHVyZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGJvb2wgc2V0X2xheWVyX2NvbWJpbmUgKGludCBsYXllcl9pbmRleCwgc3RyaW5nIGJsZW5kX3N0 cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2xheWVyX2NvbWJpbmVfY29uc3RhbnQgKGludCBsYXllcl9pbmRleCwgQ29nbC5Db2xv ciBjb25zdGFudCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2ZpbHRlcnMgKGludCBs YXllcl9pbmRleCwgQ29nbC5NYXRlcmlhbEZpbHRlciBtaW5fZmlsdGVyLCBDb2dsLk1hdGVyaWFs RmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9tYXRyaXgg KGludCBsYXllcl9pbmRleCwgQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfcG9pbnRfc3ByaXRlX2Nvb3Jkc19lbmFibGVkIChp bnQgbGF5ZXJfaW5kZXgsIGJvb2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6 ZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xNiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VzZXJfcHJvZ3JhbSAo Q29nbC5IYW5kbGUgcHJvZ3JhbSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJs aWMgY2xhc3MgTWF0ZXJpYWxMYXllciB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX29iamVjdF9nZXRfZ3R5cGUgKCkiKV0K KysJcHVibGljIGFic3RyYWN0IGNsYXNzIE9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgT2JqZWN0ICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9v ZmZzY3JlZW5fZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBPZmZzY3JlZW4gOiBDb2ds Lk9iamVjdCwgQ29nbC5GcmFtZWJ1ZmZlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgT2Zmc2NyZWVuICgpOworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBPZmZzY3JlZW4u dG9fdGV4dHVyZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUpOworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIE9mZnNjcmVlbi53aXRoX3RleHR1cmUg KENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fZ2V0X2d0eXBlICgpIild CisrCXB1YmxpYyBjbGFzcyBPbnNjcmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVmZmVy IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3Rl Y3RlZCBPbnNjcmVlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJs aWMgQ29nbC5PbnNjcmVlbkRpcnR5Q2xvc3VyZSBhZGRfZGlydHlfY2FsbGJhY2sgKFtDQ29kZSAo ZGVsZWdhdGVfdGFyZ2V0X3BvcyA9IDEuNSldIENvZ2wuT25zY3JlZW5EaXJ0eUNhbGxiYWNrIGNh bGxiYWNrLCBDb2dsLlVzZXJEYXRhRGVzdHJveUNhbGxiYWNrPyBkZXN0cm95KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuUmVzaXplQ2xvc3Vy ZSBhZGRfcmVzaXplX2NhbGxiYWNrIChbQ0NvZGUgKGRlbGVnYXRlX3RhcmdldF9wb3MgPSAxLjUp XSBDb2dsLk9uc2NyZWVuUmVzaXplQ2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFEZXN0 cm95Q2FsbGJhY2s/IGRlc3Ryb3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJ CXB1YmxpYyBpbnQgZ2V0X2J1ZmZlcl9hZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NCIpXQorKwkJcHVibGljIGludDY0IGdldF9mcmFtZV9jb3VudGVyICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Jlc2l6YWJsZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGhpZGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2RpcnR5X2NhbGxi YWNrIChDb2dsLk9uc2NyZWVuRGlydHlDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9mcmFtZV9jYWxsYmFjayAoQ29n bC5GcmFtZUNsb3N1cmUgY2xvc3VyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgdm9pZCByZW1vdmVfcmVzaXplX2NhbGxiYWNrIChDb2dsLk9uc2NyZWVuUmVzaXpl Q2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9yZXNpemFibGUgKGJvb2wgcmVzaXphYmxlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNob3cgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc3dhcF9idWZmZXJzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHN3YXBfYnVmZmVyc193aXRoX2RhbWFn ZSAoaW50IHJlY3RhbmdsZXMsIGludCBuX3JlY3RhbmdsZXMpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHN3YXBfcmVnaW9uIChpbnQgcmVjdGFuZ2xlcywg aW50IG5fcmVjdGFuZ2xlcyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9u ID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9vbnNjcmVlbl9kaXJ0eV9jbG9zdXJl X2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYi KV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuRGlydHlDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94 ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2ds X29uc2NyZWVuX3Jlc2l6ZV9jbG9zdXJlX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW5SZXNpemVD bG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjb3B5X2Z1bmN0aW9uID0gImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0XQorKwlwdWJs aWMgY2xhc3MgUGF0aCB7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xf cGlwZWxpbmVfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBQaXBlbGluZSA6IENvZ2wu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBQaXBlbGluZSAoQ29nbC5Db250 ZXh0IGNvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENv Z2wuUGlwZWxpbmUgY29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIGZvcmVhY2hfbGF5ZXIgKENvZ2wuUGlwZWxpbmVMYXllckNhbGxiYWNrIGNhbGxi YWNrKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVs aW5lQWxwaGFGdW5jIGdldF9hbHBoYV90ZXN0X2Z1bmN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYV90ZXN0X3JlZmVyZW5jZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLkNvbG9yIGdl dF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2ds LlBpcGVsaW5lQ3VsbEZhY2VNb2RlIGdldF9jdWxsX2ZhY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLldpbmRpbmcgZ2V0X2Zyb250X2ZhY2Vf d2luZGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29n bC5QaXBlbGluZUZpbHRlciBnZXRfbGF5ZXJfbWFnX2ZpbHRlciAoaW50IGxheWVyX2luZGV4KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUZp bHRlciBnZXRfbGF5ZXJfbWluX2ZpbHRlciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIGdldF9sYXllcl9wb2ludF9zcHJpdGVf Y29vcmRzX2VuYWJsZWQgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF9sYXllcl90ZXh0dXJl IChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBnZXRfbGF5ZXJfd3JhcF9tb2RlX3MgKGludCBsYXll cl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5Q aXBlbGluZVdyYXBNb2RlIGdldF9sYXllcl93cmFwX21vZGVfdCAoaW50IGxheWVyX2luZGV4KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fbGF5ZXJz ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Bl cl92ZXJ0ZXhfcG9pbnRfc2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfcG9pbnRfc2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3VuaWZvcm1fbG9jYXRpb24gKHN0cmluZyB1bmlmb3Jt X25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHVub3duZWQg Q29nbC5IYW5kbGUgZ2V0X3VzZXJfcHJvZ3JhbSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfbGF5ZXIgKGludCBsYXllcl9pbmRleCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGFfdGVz dF9mdW5jdGlvbiAoQ29nbC5QaXBlbGluZUFscGhhRnVuYyBhbHBoYV9mdW5jLCBmbG9hdCBhbHBo YV9yZWZlcmVuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJv b2wgc2V0X2JsZW5kIChzdHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZF9jb25z dGFudCAoQ29nbC5Db2xvciBjb25zdGFudF9jb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yNGYgKGZs b2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjR1YiAodWludDgg cmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2N1bGxfZmFjZV9tb2RlIChDb2ds LlBpcGVsaW5lQ3VsbEZhY2VNb2RlIGN1bGxfZmFjZV9tb2RlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mcm9udF9mYWNlX3dpbmRpbmcgKENvZ2wu V2luZGluZyBmcm9udF93aW5kaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyBib29sIHNldF9sYXllcl9jb21iaW5lIChpbnQgbGF5ZXJfaW5kZXgsIHN0cmluZyBi bGVuZF9zdHJpbmcpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2NvbWJpbmVfY29uc3RhbnQgKGludCBsYXll cl9pbmRleCwgQ29nbC5Db2xvciBjb25zdGFudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2ZpbHRlcnMgKGludCBsYXllcl9pbmRleCwg Q29nbC5QaXBlbGluZUZpbHRlciBtaW5fZmlsdGVyLCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1hZ19m aWx0ZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9sYXllcl9tYXRyaXggKGludCBsYXllcl9pbmRleCwgQ29nbC5NYXRyaXggbWF0cml4KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfbnVs bF90ZXh0dXJlIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAo aW50IGxheWVyX2luZGV4LCBib29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJs aWMgdm9pZCBzZXRfbGF5ZXJfdGV4dHVyZSAoaW50IGxheWVyX2luZGV4LCBDb2dsLlRleHR1cmUg dGV4dHVyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfbGF5ZXJfd3JhcF9tb2RlIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVXcmFwTW9k ZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9sYXllcl93cmFwX21vZGVfcyAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3JhcE1v ZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfbGF5ZXJfd3JhcF9tb2RlX3QgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZVdyYXBN b2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wg c2V0X3Blcl92ZXJ0ZXhfcG9pbnRfc2l6ZSAoYm9vbCBlbmFibGUpIHRocm93cyBHTGliLkVycm9y OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3BvaW50 X3NpemUgKGZsb2F0IHBvaW50X3NpemUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fMWYgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBmbG9h dCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfdW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGludCB2YWx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9mbG9hdCAo aW50IHVuaWZvcm1fbG9jYXRpb24sIGludCBuX2NvbXBvbmVudHMsIGludCBjb3VudCwgZmxvYXQg dmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3VuaWZvcm1faW50IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IG5fY29tcG9uZW50cywgaW50 IGNvdW50LCBpbnQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3VuaWZvcm1fbWF0cml4IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IGRp bWVuc2lvbnMsIGludCBjb3VudCwgYm9vbCB0cmFuc3Bvc2UsIGZsb2F0IHZhbHVlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VyX3Byb2dyYW0g KENvZ2wuSGFuZGxlIHByb2dyYW0pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBpeGVsQnVmZmVy IDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIFBpeGVsQnVmZmVyICh1aW50IHNpemUpOworKwkJ cHVibGljIFBpeGVsQnVmZmVyLmZvcl9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29n bC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgc3RyaWRlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1 bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dy YW1fdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQcm9ncmFtIDogQ29nbC5I YW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9wcm9ncmFtIiwgaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNvZ2xIYW5kbGUqIildCisrCQlwdWJs aWMgUHJvZ3JhbSAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaF9zaGFkZXIgKENvZ2wuU2hhZGVy IHNoYWRlcl9oYW5kbGUpOworKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2NhdGlvbiAoc3Ry aW5nIHVuaWZvcm1fbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBsaW5rICgpOworKwkJcHVibGljIHN0 YXRpYyB2b2lkIHVuaWZvcm1fMWYgKGludCB1bmlmb3JtX25vLCBmbG9hdCB2YWx1ZSk7CisrCQlw dWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbm8sIGludCB2YWx1ZSk7 CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZvcm1fbm8sIGlu dCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsK KysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2ludCAoaW50IHVuaWZvcm1fbm8sIGludCBz aXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBpbnRbXSB2YWx1ZSk7CisrCQlw dWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3JtX25vLCBpbnQgc2l6 ZSwgYm9vbCB0cmFuc3Bvc2UsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0 W10gdmFsdWUpOworKwkJcHVibGljIHZvaWQgdXNlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVu Y3Rpb24gPSAiY29nbF9zaGFkZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJf dW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkZXIgOiBDb2dsLkhhbmRs ZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3NoYWRlciIsIGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJcHVibGljIFNo YWRlciAoQ29nbC5TaGFkZXJUeXBlIHNoYWRlcl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGNvbXBp bGUgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9pbmZvX2xvZyAoKTsKKysJCXB1YmxpYyBDb2ds LlNoYWRlclR5cGUgZ2V0X3R5cGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jb21waWxlZCAoKTsK KysJCXB1YmxpYyB2b2lkIHNvdXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInRl eHR1cmVfMmQiLCB0eXBlX2lkID0gImNvZ2xfdGV4dHVyZV8yZF9nZXRfZ3R5cGUgKCkiKV0KKysJ cHVibGljIGNsYXNzIFRleHR1cmUyRCA6IENvZ2wuT2JqZWN0LCBDb2dsLlRleHR1cmUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFRl eHR1cmUyRCAoKTsKKysJCXB1YmxpYyB2b2lkIGVnbF9pbWFnZV9leHRlcm5hbF9hbGxvY19maW5p c2ggKHZvaWQqIHVzZXJfZGF0YSwgR0xpYi5EZXN0cm95Tm90aWZ5IGRlc3Ryb3kpOworKwkJcHVi bGljIHZvaWQgZWdsX2ltYWdlX2V4dGVybmFsX2JpbmQgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgVGV4dHVyZTJELmZyb21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXApOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGxvd2VyX2Nhc2Vf Y3N1ZmZpeCA9ICJ0ZXh0dXJlXzJkX3NsaWNlZCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlXzJk X3NsaWNlZF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmUyRFNsaWNlZCA6 IENvZ2wuT2JqZWN0LCBDb2dsLlRleHR1cmUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFRleHR1cmUyRFNsaWNlZCAoKTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE2IildCisrCQlwdWJsaWMgVGV4dHVyZTJEU2xpY2VkLmZyb21fYml0bWFwIChDb2ds LkJpdG1hcCBibXAsIGludCBtYXhfd2FzdGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24g PSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4 X2J1ZmZlcl91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZl ciA6IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlLCB0eXBlID0gIkNvZ2xIYW5kbGUqIildCisrCQlwdWJsaWMgVmVydGV4QnVmZmVyICh1aW50 IG5fdmVydGljZXMpOworKwkJcHVibGljIHZvaWQgYWRkIChzdHJpbmcgYXR0cmlidXRlX25hbWUs IHVjaGFyIG5fY29tcG9uZW50cywgQ29nbC5BdHRyaWJ1dGVUeXBlIHR5cGUsIGJvb2wgbm9ybWFs aXplZCwgdWludDE2IHN0cmlkZSwgdm9pZCogcG9pbnRlcik7CisrCQlwdWJsaWMgdm9pZCBAZGVs ZXRlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZGlzYWJsZSAoc3Ry aW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRyYXcgKENvZ2wuVmVydGljZXNN b2RlIG1vZGUsIGludCBmaXJzdCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGRyYXdfZWxl bWVudHMgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBp bmRpY2VzLCBpbnQgbWluX2luZGV4LCBpbnQgbWF4X2luZGV4LCBpbnQgaW5kaWNlc19vZmZzZXQs IGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBlbmFibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFt ZSk7CisrCQlwdWJsaWMgdWludCBnZXRfbl92ZXJ0aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHN1 Ym1pdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgVmVy dGV4QnVmZmVySW5kaWNlcyA6IENvZ2wuSGFuZGxlIHsKKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXJJ bmRpY2VzIChDb2dsLkluZGljZXNUeXBlIGluZGljZXNfdHlwZSwgdm9pZCogaW5kaWNlc19hcnJh eSwgaW50IGluZGljZXNfbGVuKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDb2dsLlZlcnRl eEJ1ZmZlckluZGljZXMgZ2V0X2Zvcl9xdWFkcyAodWludCBuX2luZGljZXMpOworKwkJcHVibGlj IENvZ2wuSW5kaWNlc1R5cGUgZ2V0X3R5cGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lYnVmZmVyX2dldF9n dHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIEZyYW1lYnVmZmVyIDogQ29nbC5PYmplY3Qg eworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgYWxsb2NhdGUg KCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCBjbGVhciAodWxvbmcgYnVmZmVycywgQ29nbC5Db2xvciBjb2xvcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcjRmICh1bG9uZyBi dWZmZXJzLCBmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBkaXNjYXJkX2J1 ZmZlcnMgKHVsb25nIGJ1ZmZlcnMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGRyYXdfbXVsdGl0ZXh0dXJlZF9yZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUg cGlwZWxpbmUsIGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gdGV4X2Nvb3JkcywgaW50IHRleF9j b29yZHNfbGVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBkcmF3X3JlY3RhbmdsZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9h dCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3JlY3RhbmdsZXMgKENvZ2wuUGlwZWxpbmUgcGlwZWxp bmUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGNvb3JkaW5hdGVzLCB1 aW50IG5fcmVjdGFuZ2xlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgZHJhd190ZXh0dXJlZF9yZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUs IGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQgc18xLCBm bG9hdCB0XzEsIGZsb2F0IHNfMiwgZmxvYXQgdF8yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3RleHR1cmVkX3JlY3RhbmdsZXMgKENvZ2wuUGlw ZWxpbmUgcGlwZWxpbmUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGNv b3JkaW5hdGVzLCB1aW50IG5fcmVjdGFuZ2xlcyk7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBl cnJvcl9xdWFyayAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBmaW5pc2ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxv YXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2FscGhhX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9ibHVlX2JpdHMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkNvbnRleHQgZ2V0 X2NvbnRleHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgaW50 IGdldF9kZXB0aF9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1 YmxpYyBib29sIGdldF9kZXB0aF93cml0ZV9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2RpdGhlcl9lbmFibGVkICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfZ3JlZW5fYml0cyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2hlaWdodCAo KTsKKysJCXB1YmxpYyBib29sIGdldF9pc19zdGVyZW8gKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuTWF0cml4IGdldF9tb2RlbHZpZXdfbWF0cml4ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeCBn ZXRfcHJvamVjdGlvbl9tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgaW50IGdldF9yZWRfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgaW50IGdldF9zYW1wbGVzX3Blcl9waXhlbCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIwIildCisrCQlwdWJsaWMgQ29nbC5TdGVyZW9Nb2RlIGdldF9zdGVyZW9f bW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdl dF92aWV3cG9ydDRmdiAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIG91dCB1bm93bmVk IGZsb2F0IHZpZXdwb3J0WzRdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF93aWR0aCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfeCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3Bv cnRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0 X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IGlkZW50aXR5X21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBvcnRob2dyYXBoaWMgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIs IGZsb2F0IHlfMiwgZmxvYXQgbmVhciwgZmxvYXQgZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0 IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcG9wX2NsaXAgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcG9wX21hdHJpeCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwdXNoX21hdHJpeCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlY3RhbmdsZV9j bGlwIChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJcHVi bGljIHZvaWQgcHVzaF9yZWdpb25fY2xpcCAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9zY2lzc29yX2NsaXAg KGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCByZWFkX3BpeGVscyAoaW50IHgsIGludCB5LCBp bnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50OCBwaXhl bHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIHJlYWRf cGl4ZWxzX2ludG9fYml0bWFwIChpbnQgeCwgaW50IHksIENvZ2wuUmVhZFBpeGVsc0ZsYWdzIHNv dXJjZSwgQ29nbC5CaXRtYXAgYml0bWFwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB2b2lkIHJlc29sdmVfc2FtcGxlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHJlc29sdmVfc2FtcGxlc19yZWdpb24gKGludCB4LCBp bnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZsb2F0IGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5 LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lk IHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZXVsZXIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h dCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRf ZGVwdGhfd3JpdGVfZW5hYmxlZCAoYm9vbCBkZXB0aF93cml0ZV9lbmFibGVkKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kaXRoZXJfZW5hYmxlZCAo Ym9vbCBkaXRoZXJfZW5hYmxlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X21vZGVsdmlld19tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Byb2plY3Rp b25fbWF0cml4IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NhbXBsZXNfcGVyX3BpeGVsIChpbnQgc2FtcGxlc19w ZXJfcGl4ZWwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9zdGVyZW9fbW9kZSAoQ29nbC5TdGVyZW9Nb2RlIHN0ZXJlb19tb2RlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF92aWV3cG9ydCAoZmxvYXQg eCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNmb3JtIChDb2dsLk1hdHJpeCBtYXRy aXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5z bGF0ZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX3RleHR1cmVfZ2V0X2d0 eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgVGV4dHVyZSA6IENvZ2wuT2JqZWN0IHsKKysJ CXB1YmxpYyBib29sIGFsbG9jYXRlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHN0 YXRpYyB1aW50MzIgZXJyb3JfcXVhcmsgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIp XQorKwkJcHVibGljIENvZ2wuVGV4dHVyZUNvbXBvbmVudHMgZ2V0X2NvbXBvbmVudHMgKCk7Cisr CQlwdWJsaWMgaW50IGdldF9kYXRhIChDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCByb3dz dHJpZGUsIHVpbnQ4IGRhdGEpOworKwkJcHVibGljIGJvb2wgZ2V0X2dsX3RleHR1cmUgKG91dCB1 aW50IG91dF9nbF9oYW5kbGUsIG91dCB1aW50IG91dF9nbF90YXJnZXQpOworKwkJcHVibGljIHVp bnQgZ2V0X2hlaWdodCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF93YXN0ZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcHJlbXVsdGlwbGll ZCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3Ns aWNlZCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE4Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVy ZSBuZXdfZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFwIGJpdG1hcCwgQ29nbC5UZXh0dXJlRmxhZ3Mg ZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9kYXRhIChpbnQgd2lk dGgsIGludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0 IGZvcm1hdCwgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQsIGludCByb3dzdHJpZGUs IHVpbnQ4IGRhdGEpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5U ZXh0dXJlIG5ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxhZ3Mg ZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5FcnJv cjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjE4Iiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX3N1 Yl90ZXh0dXJlIChpbnQgc3ViX3gsIGludCBzdWJfeSwgaW50IHN1Yl93aWR0aCwgaW50IHN1Yl9o ZWlnaHQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJl IG5ld193aXRoX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFn cyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb21wb25lbnRzIChDb2dsLlRl eHR1cmVDb21wb25lbnRzIGNvbXBvbmVudHMpOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKENv Z2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhLCBpbnQgbGV2 ZWwpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9wcmVtdWx0aXBsaWVkIChib29sIHByZW11bHRpcGxpZWQpOworKwkJ cHVibGljIGJvb2wgc2V0X3JlZ2lvbiAoaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwg aW50IGRzdF95LCB1aW50IGRzdF93aWR0aCwgdWludCBkc3RfaGVpZ2h0LCBpbnQgd2lkdGgsIGlu dCBoZWlnaHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHJvd3N0cmlkZSwgdWludDgg ZGF0YSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZXRf cmVnaW9uX2Zyb21fYml0bWFwIChpbnQgc3JjX3gsIGludCBzcmNfeSwgaW50IGRzdF94LCBpbnQg ZHN0X3ksIHVpbnQgZHN0X3dpZHRoLCB1aW50IGRzdF9oZWlnaHQsIENvZ2wuQml0bWFwIGJpdG1h cCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtTaW1wbGVUeXBlXQorKwlwdWJsaWMgc3RydWN0IEFuZ2xlIDogaW50MzIgeworKwl9CisrCVtC b29sZWFuVHlwZV0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtHSVIgKG5hbWUgPSAiQm9vbCIpXQorKwlbU2ltcGxlVHlwZV0KKysJcHVibGljIHN0cnVj dCBCb29sIDogYm9vbCB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgQ29nbC5Db2xvcj8gY29weSAo KTsKKysJCXB1YmxpYyBDb2xvci5mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9h dCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80dWIgKHVpbnQ4IHJl ZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyBmbG9h dCBnZXRfYWxwaGEgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2FscGhhX2J5dGUgKCk7CisrCQlw dWJsaWMgZmxvYXQgZ2V0X2FscGhhX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ibHVl ICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9ibHVlX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X2JsdWVfZmxvYXQgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2dyZWVuICgpOworKwkJcHVi bGljIHVpbnQ4IGdldF9ncmVlbl9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ncmVlbl9m bG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfcmVkICgpOworKwkJcHVibGljIHVpbnQ4IGdl dF9yZWRfYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfcmVkX2Zsb2F0ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tXzRmIChmbG9h dCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fNGZ2IChmbG9hdCBj b2xvcl9hcnJheSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBpbml0X2Zyb21fNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50 OCBhbHBoYSk7CisrCQlwdWJsaWMgdm9pZCBwcmVtdWx0aXBseSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYSAoZmxvYXQgYWxwaGEpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2J5 dGUgKHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9hbHBoYV9mbG9hdCAoZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsdWUgKGZsb2F0IGJsdWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsdWVfYnl0ZSAodWlu dDggYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYmx1ZV9mbG9hdCAoZmxvYXQgYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW4gKGZsb2F0IGdyZWVuKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbl9ieXRlICh1aW50OCBncmVl bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZ3Jl ZW5fZmxvYXQgKGZsb2F0IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9yZWQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVkX2J5dGUgKHVpbnQ4IHJlZCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVkX2Zsb2F0IChmbG9h dCByZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHRv X2hzbCAob3V0IGZsb2F0IGh1ZSwgb3V0IGZsb2F0IHNhdHVyYXRpb24sIG91dCBmbG9hdCBsdW1p bmFuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgdW5w cmVtdWx0aXBseSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwlwdWJsaWMgc3RydWN0IERlYnVnT2JqZWN0VHlwZUluZm8geworKwkJcHVibGljIHdlYWsg c3RyaW5nIG5hbWU7CisrCQlwdWJsaWMgdWxvbmcgaW5zdGFuY2VfY291bnQ7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJn X2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAi Q09HTF9UWVBFX01BVFJJWCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7CisrCQlwdWJsaWMg ZmxvYXQgeHg7CisrCQlwdWJsaWMgZmxvYXQgeXg7CisrCQlwdWJsaWMgZmxvYXQgeng7CisrCQlw dWJsaWMgZmxvYXQgd3g7CisrCQlwdWJsaWMgZmxvYXQgeHk7CisrCQlwdWJsaWMgZmxvYXQgeXk7 CisrCQlwdWJsaWMgZmxvYXQgenk7CisrCQlwdWJsaWMgZmxvYXQgd3k7CisrCQlwdWJsaWMgZmxv YXQgeHo7CisrCQlwdWJsaWMgZmxvYXQgeXo7CisrCQlwdWJsaWMgZmxvYXQgeno7CisrCQlwdWJs aWMgZmxvYXQgd3o7CisrCQlwdWJsaWMgZmxvYXQgeHc7CisrCQlwdWJsaWMgZmxvYXQgeXc7Cisr CQlwdWJsaWMgZmxvYXQgenc7CisrCQlwdWJsaWMgZmxvYXQgd3c7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5NYXRyaXg/IGNvcHkgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gZmFsc2UsIGNuYW1l ID0gImNvZ2xfbWF0cml4X2luaXRfZnJvbV9hcnJheSIpXQorKwkJcHVibGljIE1hdHJpeC5mcm9t X2FycmF5IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBhcnJheSk7Cisr CQlwdWJsaWMgdm9pZCBmcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90 dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJcHVibGljIHVu b3duZWQgZmxvYXRbXSBnZXRfYXJyYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgYm9vbCBnZXRfaW52ZXJzZSAob3V0IENvZ2wuTWF0cml4IGludmVyc2UpOwor KwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9pbml0X2lkZW50aXR5IildCisrCQlwdWJs aWMgTWF0cml4LmlkZW50aXR5ICgpOworKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tX2V1bGVyIChH cmFwaGVuZS5FdWxlciBldWxlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdm9pZCBpbml0X3RyYW5zbGF0aW9uIChmbG9hdCB0eCwgZmxvYXQgdHksIGZsb2F0IHR6 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGlzX2lkZW50 aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgbG9v a19hdCAoZmxvYXQgZXllX3Bvc2l0aW9uX3gsIGZsb2F0IGV5ZV9wb3NpdGlvbl95LCBmbG9hdCBl eWVfcG9zaXRpb25feiwgZmxvYXQgb2JqZWN0X3gsIGZsb2F0IG9iamVjdF95LCBmbG9hdCBvYmpl Y3RfeiwgZmxvYXQgd29ybGRfdXBfeCwgZmxvYXQgd29ybGRfdXBfeSwgZmxvYXQgd29ybGRfdXBf eik7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X211bHRpcGx5IildCisrCQlwdWJs aWMgTWF0cml4Lm11bHRpcGx5IChDb2dsLk1hdHJpeCBhLCBDb2dsLk1hdHJpeCBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBvcnRob2dyYXBoaWMgKGZs b2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQgbmVhciwgZmxv YXQgZmFyKTsKKysJCXB1YmxpYyB2b2lkIHBlcnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwgZmxvYXQg YXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1YmxpYyB2b2lkIHByb2pl Y3RfcG9pbnRzIChpbnQgbl9jb21wb25lbnRzLCBzaXplX3Qgc3RyaWRlX2luLCB2b2lkKiBwb2lu dHNfaW4sIHNpemVfdCBzdHJpZGVfb3V0LCB2b2lkKiBwb2ludHNfb3V0LCBpbnQgbl9wb2ludHMp OworKwkJcHVibGljIHZvaWQgcm90YXRlIChmbG9hdCBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwg ZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBy b3RhdGVfZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCXB1YmxpYyB2b2lkIHNjYWxl IChmbG9hdCBzeCwgZmxvYXQgc3ksIGZsb2F0IHN6KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB0 cmFuc2Zvcm1fcG9pbnQgKHJlZiBDb2dsLk1hdHJpeCBtYXRyaXgsIHJlZiBmbG9hdCB4LCByZWYg ZmxvYXQgeSwgcmVmIGZsb2F0IHosIHJlZiBmbG9hdCB3KTsKKysJCXB1YmxpYyB2b2lkIHRyYW5z Zm9ybV9wb2ludHMgKGludCBuX2NvbXBvbmVudHMsIHNpemVfdCBzdHJpZGVfaW4sIHZvaWQqIHBv aW50c19pbiwgc2l6ZV90IHN0cmlkZV9vdXQsIHZvaWQqIHBvaW50c19vdXQsIGludCBuX3BvaW50 cyk7CisrCQlwdWJsaWMgdm9pZCB0cmFuc2xhdGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHop OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zcG9z ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHZpZXdf MmRfaW5fZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxv YXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfMmQsIGZsb2F0IHdpZHRoXzJkLCBmbG9hdCBo ZWlnaHRfMmQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQg dmlld18yZF9pbl9wZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwgZmxvYXQg el9uZWFyLCBmbG9hdCB6XzJkLCBmbG9hdCB3aWR0aF8yZCwgZmxvYXQgaGVpZ2h0XzJkKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0cnVj dCBPbnNjcmVlbkRpcnR5SW5mbyB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7 CisrCQlwdWJsaWMgaW50IHdpZHRoOworKwkJcHVibGljIGludCBoZWlnaHQ7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCXB1YmxpYyBzdHJ1Y3QgVGV4dHVyZVZlcnRleCB7CisrCQlwdWJsaWMgZmxvYXQgeDsK KysJCXB1YmxpYyBmbG9hdCB5OworKwkJcHVibGljIGZsb2F0IHo7CisrCQlwdWJsaWMgZmxvYXQg dHg7CisrCQlwdWJsaWMgZmxvYXQgdHk7CisrCQlwdWJsaWMgQ29nbC5Db2xvciBjb2xvcjsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0 IFVzZXJEYXRhS2V5IHsKKysJCXB1YmxpYyBpbnQgdW51c2VkOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9Db2dsQ29sb3JTaXplQ2hl Y2siLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfQ29sb3JTaXplQ2hl Y2sgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBj aGFyW10gY29tcGlsZV90aW1lX2Fzc2VydF9Db2dsQ29sb3Jfc2l6ZTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbE1hdHJpeFNp emVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IF9NYXRyaXhT aXplQ2hlY2sgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMg d2VhayBjaGFyW10gY29tcGlsZV90aW1lX2Fzc2VydF9Db2dsTWF0cml4X3NpemU7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0NvZ2xU ZXh0dXJlVmVydGV4U2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBz dHJ1Y3QgX1RleHR1cmVWZXJ0ZXhTaXplQ2hlY2sgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29tcGlsZV90aW1lX2Fzc2VydF9Db2ds VGV4dHVyZVZlcnRleF9zaXplOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9BVFRSSUJVVEVfVFlQRV8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBB dHRyaWJ1dGVUeXBlIHsKKysJCUJZVEUsCisrCQlVTlNJR05FRF9CWVRFLAorKwkJU0hPUlQsCisr CQlVTlNJR05FRF9TSE9SVCwKKysJCUZMT0FUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0JJVE1BUF9FUlJPUl8iLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMg ZW51bSBCaXRtYXBFcnJvciB7CisrCQlGQUlMRUQsCisrCQlVTktOT1dOX1RZUEUsCisrCQlDT1JS VVBUX0lNQUdFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX0JMRU5EX1NUUklOR19FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBCbGVuZFN0 cmluZ0Vycm9yIHsKKysJCVBBUlNFX0VSUk9SLAorKwkJQVJHVU1FTlRfUEFSU0VfRVJST1IsCisr CQlJTlZBTElEX0VSUk9SLAorKwkJR1BVX1VOU1VQUE9SVEVEX0VSUk9SOworKwkJcHVibGljIHN0 YXRpYyB1aW50MzIgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0JVRkZFUl9CSVRfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJs aWMgZW51bSBCdWZmZXJCaXQgeworKwkJQ09MT1IsCisrCQlERVBUSCwKKysJCVNURU5DSUwKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0g IkNPR0xfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBCdWZmZXJUYXJnZXQgeworKwkJV0lORE9XX0JV RkZFUiwKKysJCU9GRlNDUkVFTl9CVUZGRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfREVQVEhfVEVTVF9GVU5DVElPTl8i LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gRGVwdGhUZXN0RnVuY3Rpb24g eworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJRVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVS LAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUwsCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRUdMX0lNQUdF X0ZMQUdfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJcHVibGljIGVudW0g RWdsSW1hZ2VGbGFncyB7CisrCQlOT05FLAorKwkJTk9fR0VUX0RBVEEKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRkVBVFVS RV9JRF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIGVudW0gRmVhdHVyZUlEIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9G RUFUVVJFX0lEX1VOU0lHTkVEX0lOVF9JTkRJQ0VTIildCisrCQlPR0xfRkVBVFVSRV9JRF9VTlNJ R05FRF9JTlRfSU5ESUNFUywKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX01B UF9CVUZGRVJfRk9SX1JFQUQiKV0KKysJCU9HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1JF QUQsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9X UklURSIpXQorKwkJT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfV1JJVEUsCisrCQlbQ0Nv ZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9TV0FQX0JVRkZFUlNfRVZFTlQiKV0KKysJCU9H TF9GRUFUVVJFX0lEX1NXQVBfQlVGRkVSU19FVkVOVCwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09H TF9GRUFUVVJFX0lEX1BSRVNFTlRBVElPTl9USU1FIildCisrCQlPR0xfRkVBVFVSRV9JRF9QUkVT RU5UQVRJT05fVElNRSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX0ZFTkNF IildCisrCQlPR0xfRkVBVFVSRV9JRF9GRU5DRSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9G RUFUVVJFX0lEX1RFWFRVUkVfUkciKV0KKysJCU9HTF9GRUFUVVJFX0lEX1RFWFRVUkVfUkcsCisr CQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9CVUZGRVJfQUdFIildCisrCQlPR0xf RkVBVFVSRV9JRF9CVUZGRVJfQUdFLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVf SURfVEVYVFVSRV9FR0xfSU1BR0VfRVhURVJOQUwiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1RFWFRV UkVfRUdMX0lNQUdFX0VYVEVSTkFMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZJTFRFUl8iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIGVudW0gRmlsdGVyUmV0dXJuIHsKKysJCUNPTlRJTlVFLAorKwkJUkVN T1ZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX0ZSQU1FX0VWRU5UXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgZW51bSBGcmFtZUV2ZW50IHsKKysJCVNZ TkMsCisrCQlDT01QTEVURQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9GUkFNRUJVRkZFUl9FUlJPUl8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gRnJhbWVidWZmZXJFcnJvciB7CisrCQlbQ0NvZGUg KGNuYW1lID0gIkNPR0xfRlJBTUVCVUZGRVJfRVJST1JfQUxMT0NBVEUiKV0KKysJCUZSQU1FQlVG RkVSX0VSUk9SX0FMTE9DQVRFOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgcXVhcmsgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9 ICJDT0dMX0dSQVBISUNTX1JFU0VUX1NUQVRVU18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ cHVibGljIGVudW0gR3JhcGhpY3NSZXNldFN0YXR1cyB7CisrCQlOT19FUlJPUiwKKysJCUdVSUxU WV9DT05URVhUX1JFU0VULAorKwkJSU5OT0NFTlRfQ09OVEVYVF9SRVNFVCwKKysJCVVOS05PV05f Q09OVEVYVF9SRVNFVCwKKysJCVBVUkdFRF9DT05URVhUX1JFU0VUCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0lORElDRVNf VFlQRV9VTlNJR05FRF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gSW5k aWNlc1R5cGUgeworKwkJQllURSwKKysJCVNIT1JULAorKwkJSU5UCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFM X0FMUEhBX0ZVTkNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIE1hdGVy aWFsQWxwaGFGdW5jIHsKKysJCU5FVkVSLAorKwkJTEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFM LAorKwkJR1JFQVRFUiwKKysJCU5PVEVRVUFMLAorKwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJD T0dMX01BVEVSSUFMX0ZJTFRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVu dW0gTWF0ZXJpYWxGaWx0ZXIgeworKwkJTkVBUkVTVCwKKysJCUxJTkVBUiwKKysJCU5FQVJFU1Rf TUlQTUFQX05FQVJFU1QsCisrCQlMSU5FQVJfTUlQTUFQX05FQVJFU1QsCisrCQlORUFSRVNUX01J UE1BUF9MSU5FQVIsCisrCQlMSU5FQVJfTUlQTUFQX0xJTkVBUgorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRFUklBTF9X UkFQX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIGVudW0gTWF0ZXJpYWxXcmFwTW9kZSB7CisrCQlSRVBFQVQsCisrCQlD TEFNUF9UT19FREdFLAorKwkJQVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0FMUEhBX0ZVTkNf IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lQWxwaGFGdW5j IHsKKysJCU5FVkVSLAorKwkJTEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRF UiwKKysJCU5PVEVRVUFMLAorKwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5F X0NVTExfRkFDRV9NT0RFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBQ aXBlbGluZUN1bGxGYWNlTW9kZSB7CisrCQlOT05FLAorKwkJRlJPTlQsCisrCQlCQUNLLAorKwkJ Qk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9QSVBFTElORV9GSUxURVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CXB1YmxpYyBlbnVtIFBpcGVsaW5lRmlsdGVyIHsKKysJCU5FQVJFU1QsCisrCQlMSU5FQVIsCisr CQlORUFSRVNUX01JUE1BUF9ORUFSRVNULAorKwkJTElORUFSX01JUE1BUF9ORUFSRVNULAorKwkJ TkVBUkVTVF9NSVBNQVBfTElORUFSLAorKwkJTElORUFSX01JUE1BUF9MSU5FQVIKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf UElQRUxJTkVfV1JBUF9NT0RFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lV3JhcE1vZGUgeworKwkJUkVQ RUFULAorKwkJTUlSUk9SRURfUkVQRUFULAorKwkJQ0xBTVBfVE9fRURHRSwKKysJCUFVVE9NQVRJ QworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9QSVhFTF9GT1JNQVRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBQaXhlbEZvcm1h dCB7CisrCQlBTlksCisrCQlBXzgsCisrCQlSR0JfNTY1LAorKwkJUkdCQV80NDQ0LAorKwkJUkdC QV81NTUxLAorKwkJWVVWLAorKwkJR184LAorKwkJUkdfODgsCisrCQlSR0JfODg4LAorKwkJQkdS Xzg4OCwKKysJCVJHQkFfODg4OCwKKysJCUJHUkFfODg4OCwKKysJCUFSR0JfODg4OCwKKysJCUFC R1JfODg4OCwKKysJCVJHQkFfMTAxMDEwMiwKKysJCUJHUkFfMTAxMDEwMiwKKysJCUFSR0JfMjEw MTAxMCwKKysJCUFCR1JfMjEwMTAxMCwKKysJCVJHQkFfODg4OF9QUkUsCisrCQlCR1JBXzg4ODhf UFJFLAorKwkJQVJHQl84ODg4X1BSRSwKKysJCUFCR1JfODg4OF9QUkUsCisrCQlSR0JBXzQ0NDRf UFJFLAorKwkJUkdCQV81NTUxX1BSRSwKKysJCVJHQkFfMTAxMDEwMl9QUkUsCisrCQlCR1JBXzEw MTAxMDJfUFJFLAorKwkJQVJHQl8yMTAxMDEwX1BSRSwKKysJCUFCR1JfMjEwMTAxMF9QUkUsCisr CQlERVBUSF8xNiwKKysJCURFUFRIXzMyLAorKwkJREVQVEhfMjRfU1RFTkNJTF84OworKwkJcHVi bGljIGludCBnZXRfYnl0ZXNfcGVyX3BpeGVsIChpbnQgcGxhbmUpOworKwkJcHVibGljIGludCBn ZXRfbl9wbGFuZXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9SRUFEX1BJWEVMU19DT0xPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0Zs YWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFJlYWRQaXhl bHNGbGFncyB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfUkVBRF9QSVhFTFNfQ09MT1JfQlVG RkVSIildCisrCQlSRUFEX1BJWEVMU19DT0xPUl9CVUZGRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUkVOREVSRVJfRVJS T1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFJlbmRlcmVyRXJyb3Ig eworKwkJWExJQl9ESVNQTEFZX09QRU4sCisrCQlCQURfQ09OU1RSQUlOVAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9TSEFE RVJfVFlQRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgZW51bSBTaGFkZXJUeXBlIHsKKysJCVZFUlRFWCwKKysJCUZSQUdNRU5U CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZp eCA9ICJDT0dMX1NURVJFT18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0g U3RlcmVvTW9kZSB7CisrCQlCT1RILAorKwkJTEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NZU1RF TV9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgZW51bSBTeXN0ZW1FcnJvciB7CisrCQlVTlNVUFBPUlRFRCwKKysJCU5P X01FTU9SWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGNwcmVmaXggPSAiQ09HTF9URVhUVVJFX0NPTVBPTkVOVFNfIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVD b21wb25lbnRzIHsKKysJCUEsCisrCQlSRywKKysJCVJHQiwKKysJCVJHQkEsCisrCQlERVBUSAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9URVhUVVJFX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVFcnJvciB7CisrCQlTSVpF LAorKwkJRk9STUFULAorKwkJQkFEX1BBUkFNRVRFUiwKKysJCVRZUEU7CisrCQlwdWJsaWMgc3Rh dGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfVEVYVFVSRV8iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBl bnVtIFRleHR1cmVGbGFncyB7CisrCQlOT05FLAorKwkJTk9fQVVUT19NSVBNQVAsCisrCQlOT19T TElDSU5HLAorKwkJTk9fQVRMQVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfVkVSVElDRVNfTU9ERV8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBW ZXJ0aWNlc01vZGUgeworKwkJUE9JTlRTLAorKwkJTElORVMsCisrCQlMSU5FX0xPT1AsCisrCQlM SU5FX1NUUklQLAorKwkJVFJJQU5HTEVTLAorKwkJVFJJQU5HTEVfU1RSSVAsCisrCQlUUklBTkdM RV9GQU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfV0lORElOR18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IGVudW0gV2luZGluZyB7CisrCQlDTE9DS1dJU0UsCisrCQlDT1VOVEVSX0NMT0NLV0lTRQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAi Q09HTF9XSU5TWVNfRkVBVFVSRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVu dW0gV2luc3lzRmVhdHVyZSB7CisrCQlNVUxUSVBMRV9PTlNDUkVFTiwKKysJCVNXQVBfVEhST1RU TEUsCisrCQlWQkxBTktfQ09VTlRFUiwKKysJCVZCTEFOS19XQUlULAorKwkJVEVYVFVSRV9GUk9N X1BJWE1BUCwKKysJCVNXQVBfQlVGRkVSU19FVkVOVCwKKysJCVNXQVBfUkVHSU9OLAorKwkJU1dB UF9SRUdJT05fVEhST1RUTEUsCisrCQlTV0FQX1JFR0lPTl9TWU5DSFJPTklaRUQsCisrCQlCVUZG RVJfQUdFLAorKwkJU1lOQ19BTkRfQ09NUExFVEVfRVZFTlQsCisrCQlOX0ZFQVRVUkVTCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9z ID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZGVsZWdhdGUg dm9pZCBEZWJ1Z09iamVjdEZvcmVhY2hUeXBlQ2FsbGJhY2sgKENvZ2wuRGVidWdPYmplY3RUeXBl SW5mbyBpbmZvKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg aW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMTAiKV0KKysJcHVi bGljIGRlbGVnYXRlIHZvaWQgRmVhdHVyZUNhbGxiYWNrIChDb2dsLkZlYXR1cmVJRCBmZWF0dXJl KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2Vf cG9zID0gMi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIGRlbGVn YXRlIHZvaWQgT25zY3JlZW5EaXJ0eUNhbGxiYWNrIChDb2dsLk9uc2NyZWVuIG9uc2NyZWVuLCBD b2dsLk9uc2NyZWVuRGlydHlJbmZvIGluZm8pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAzLjkpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIE9uc2NyZWVuUmVzaXplQ2FsbGJhY2sg KENvZ2wuT25zY3JlZW4gb25zY3JlZW4sIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDIuOSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgUGlw ZWxpbmVMYXllckNhbGxiYWNrIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBpbnQgbGF5ZXJfaW5k ZXgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5j ZV9wb3MgPSAxLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBUZXh0dXJlMkRFR0xJbWFnZUV4 dGVybmFsQWxsb2MgKENvZ2wuVGV4dHVyZTJEIHRleF8yZCkgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190YXJnZXQgPSBm YWxzZSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFVzZXJEYXRhRGVzdHJveUNhbGxiYWNrICh2 b2lkKiBkYXRhKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y25hbWUgPSAiQ09HTF9BRklSU1RfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgQUZJUlNUX0JJ VDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAi Q09HTF9BX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEFfQklUOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0JHUl9CSVQiKV0KKysJ cHVibGljIGNvbnN0IGludCBCR1JfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0RFUFRIX0JJVCIpXQorKwlwdWJsaWMgY29uc3Qg aW50IERFUFRIX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY25hbWUgPSAiQ09HTF9QSVhFTF9GT1JNQVRfTUFYX1BMQU5FUyIpXQorKwlwdWJsaWMgY29u c3QgaW50IFBJWEVMX0ZPUk1BVF9NQVhfUExBTkVTOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1BSRU1VTFRfQklUIildCisrCXB1Ymxp YyBjb25zdCBpbnQgUFJFTVVMVF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfU1RFTkNJTF9CSVQiKV0KKysJcHVibGljIGNvbnN0 IGludCBTVEVOQ0lMX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY25hbWUgPSAiQ09HTF9URVhUVVJFX01BWF9XQVNURSIpXQorKwlwdWJsaWMgY29uc3Qg aW50IFRFWFRVUkVfTUFYX1dBU1RFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGJsaXRfZnJhbWVidWZmZXIgKENvZ2wu RnJhbWVidWZmZXIgc3JjLCBDb2dsLkZyYW1lYnVmZmVyIGRlc3QsIGludCBzcmNfeCwgaW50IHNy Y195LCBpbnQgZHN0X3gsIGludCBkc3RfeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCXB1YmxpYyBzdGF0aWMgYm9vbCBjbHV0dGVyX3dpbnN5c19oYXNfZmVhdHVyZV9DTFVUVEVS IChDb2dsLldpbnN5c0ZlYXR1cmUgZmVhdHVyZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBzdGF0aWMgYm9vbCBjb2xvcl9lcXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjb2xvcl9pbml0X2Zyb21faHNsIChvdXQg Q29nbC5Db2xvciBjb2xvciwgZmxvYXQgaHVlLCBmbG9hdCBzYXR1cmF0aW9uLCBmbG9hdCBsdW1p bmFuY2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGVidWdfbWF0 cml4X3ByaW50IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgZGVidWdfb2JqZWN0X2ZvcmVhY2hfdHlwZSAoQ29nbC5EZWJ1Z09iamVj dEZvcmVhY2hUeXBlQ2FsbGJhY2sgZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBz dGF0aWMgdm9pZCBkZWJ1Z19vYmplY3RfcHJpbnRfaW5zdGFuY2VzICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZmx1c2ggKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgc3RhdGljIHZvaWQgZm9yZWFjaF9mZWF0dXJlIChDb2dsLkNvbnRleHQgY29udGV4 dCwgQ29nbC5GZWF0dXJlQ2FsbGJhY2sgY2FsbGJhY2spOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9iYWNr ZmFjZV9jdWxsaW5nX2VuYWJsZWQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgc3Rh dGljIGludDY0IGdldF9jbG9ja190aW1lIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgZ2V0X2RlcHRoX3Rlc3RfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5HcmFwaGljc1Jlc2V0 U3RhdHVzIGdldF9ncmFwaGljc19yZXNldF9zdGF0dXMgKENvZ2wuQ29udGV4dCBjb250ZXh0KTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5PcHRpb25Hcm91cCBnZXRfb3B0aW9uX2dyb3Vw ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVi bGljIHN0YXRpYyBHTGliLkNhbGxiYWNrIGdldF9wcm9jX2FkZHJlc3MgKHN0cmluZyBzKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBz dGF0aWMgR0xpYi5UeXBlIGd0eXBlX21hdHJpeF9nZXRfdHlwZSAoKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBoYXNfZmVhdHVyZSAoQ29nbC5Db250ZXh0IGNvbnRl eHQsIENvZ2wuRmVhdHVyZUlEIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IHN0YXRpYyBib29sIGlzX2NvbnRleHQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZnJhbWVidWZmZXIgKHZvaWQqIG9iamVjdCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfb25zY3JlZW4gKHZvaWQq IG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19waXBl bGluZSAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc190ZXh0dXJlXzJkICh2b2lkKiBvYmpl Y3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3RleHR1cmVf MmRfc2xpY2VkICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3Rh dGljIGJvb2wgbWF0cml4X2VxdWFsICh2b2lkKiB2MSwgdm9pZCogdjIpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lk IHNldF9iYWNrZmFjZV9jdWxsaW5nX2VuYWJsZWQgKGJvb2wgc2V0dGluZyk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgc2V0X2RlcHRoX3Rlc3RfZW5hYmxlZCAoYm9vbCBzZXR0aW5nKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBz aGFkZXJfY29tcGlsZSAoQ29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgc3RyaW5nIHNoYWRl cl9nZXRfaW5mb19sb2cgKENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuU2hhZGVy VHlwZSBzaGFkZXJfZ2V0X3R5cGUgKENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wg c2hhZGVyX2lzX2NvbXBpbGVkIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNo YWRlcl9zb3VyY2UgKENvZ2wuSGFuZGxlIHNoYWRlciwgc3RyaW5nIHNvdXJjZSk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2JpdG1hcCAoQ29n bC5CaXRtYXAgYml0bWFwLCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1h dCBpbnRlcm5hbF9mb3JtYXQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUg dGV4dHVyZV9uZXdfZnJvbV9kYXRhIChpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuVGV4dHVy ZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgQ29nbC5QaXhlbEZvcm1hdCBp bnRlcm5hbF9mb3JtYXQsIGludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVi bGljIHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9maWxlIChzdHJpbmcgZmls ZW5hbWUsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFs X2Zvcm1hdCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wu VGV4dHVyZSB0ZXh0dXJlX25ld193aXRoX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBD b2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyB1aW50MzIgeDExX29uc2NyZWVu X2dldF93aW5kb3dfeGlkIChDb2dsLk9uc2NyZWVuIG9uc2NyZWVuKTsKKyt9CistLSAKKzIuMjUu MAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlIGIvc3JjcGtn cy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZQppbmRleCBiMzJlNzczNGQzYi4uMTgwY2RjMDJmMWYg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZQpAQCAtMSwyMSArMSwyMiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnYnVkZ2llLWRlc2t0b3AnCiBwa2duYW1lPWJ1ZGdpZS1kZXNrdG9wCiB2ZXJzaW9u PTEwLjUuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxk X2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItRHdpdGgtZ3RrLWRvYz1mYWxzZSAtRHdpdGgt ZGVza3RvcC1pY29ucz1ub25lIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29s IHZhbGEgZ2xpYi1kZXZlbCBnb2JqZWN0LWludHJvc3BlY3Rpb24gc2Fzc2MiCiBtYWtlZGVwZW5k cz0iYWxzYS1saWItZGV2ZWwgbGlibm90aWZ5LWRldmVsIGFjY291bnRzc2VydmljZS1kZXZlbCBs aWJwZWFzLWRldmVsIGxpYnduY2stZGV2ZWwKLW11dHRlci1kZXZlbCBpYnVzLWRldmVsIGdub21l LWRlc2t0b3AtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCB1cG93ZXItZGV2ZWwgZ3RrKzMtZGV2ZWwg cG9sa2l0LWRldmVsCi1nbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtbWVudXMtZGV2ZWwgZ25v bWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIHZhbGEgbGlidXVpZC1kZXZlbCBsaWJ1cG93ZXItZ2xp YjMiCi1kZXBlbmRzPSJnbm9tZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1j b250cm9sLWNlbnRlciBlbG9naW5kIgorIG11dHRlci1kZXZlbCBpYnVzLWRldmVsIGdub21lLWRl c2t0b3AtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCB1cG93ZXItZGV2ZWwgZ3RrKzMtZGV2ZWwgcG9s a2l0LWRldmVsCisgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLW1lbnVzLWRldmVsIGdub21l LXNldHRpbmdzLWRhZW1vbi1kZXZlbCB2YWxhIGxpYnV1aWQtZGV2ZWwgbGlidXBvd2VyLWdsaWIz IgorZGVwZW5kcz0iZ25vbWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtY29u dHJvbC1jZW50ZXIgZ25vbWUtdGhlbWVzLWV4dHJhIGVsb2dpbmQiCiBzaG9ydF9kZXNjPSJNb2Rl cm4gZGVza3RvcCBlbnZpcm9ubWVudCBmcm9tIHRoZSBTb2x1cyBQcm9qZWN0IgogbWFpbnRhaW5l cj0iTG9yZW0gPG5vdGxvcmVtaXBzdW1AcHJvdG9ubWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTIu MC1vbmx5LCBMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1 cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9wIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20v c29sdXMtcHJvamVjdC9idWRnaWUtZGVza3RvcC9yZWxlYXNlcy9kb3dubG9hZC92JHt2ZXJzaW9u fS9idWRnaWUtZGVza3RvcC0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPWQwMzVlYzc2NGUw MDkzNzIyYTgzMjQxMWFlYjZhYmEyOTZjMDk5NWQ5MjdlYTA2OWIyMDViMTljODVhYWU1NjUKK3Bh dGNoX2FyZ3M9Ii1OcDEiCiAKIHByZV9jb25maWd1cmUoKSB7CiAJdnNlZCAtaSAncy9leGVjIGdu b21lLXNlc3Npb24vZXhlYyBnbm9tZS1zZXNzaW9uIC0tYnVpbHRpbi8nIHNyYy9zZXNzaW9uL2J1 ZGdpZS1kZXNrdG9wLmluCgpGcm9tIDNkNTAwZDQ5YzQxN2ZiNDA0YTUyYzlmMTVjYjUxZTVhOTg1 MmM2ZWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMTM6NDY6MTYgKzA2MDAKU3ViamVjdDog W1BBVENIIDQ0LzUzXSB4ZGctZGVza3RvcC1wb3J0YWwtZ3RrOiByZWJ1aWxkIGFnYWluc3QKIGxp Ymdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1n dGsvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVt cGxhdGUgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUKaW5kZXggZGVl MGU0NjMzODYuLjU1OGM3NWY1MzlkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBv cnRhbC1ndGsvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneGRnLWRlc2t0b3At cG9ydGFsLWd0aycKIHBrZ25hbWU9eGRnLWRlc2t0b3AtcG9ydGFsLWd0awogdmVyc2lvbj0xLjYu MAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGxpYnhzbHQgZ2xpYi1kZXZlbCB4ZGctZGVza3RvcC1w b3J0YWwgZ2V0dGV4dCIKIG1ha2VkZXBlbmRzPSJmbGF0cGFrLWRldmVsIGd0ayszLWRldmVsIGxp YnhzbHQtZGV2ZWwgbGliZ2xpYi1kZXZlbAoKRnJvbSBjNmZkMTk3ZGJjMjNmOGRkYzc3YmYxNjkw MzQ0MGE2MzBiZTIzZGJkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjQ5OjEzICswNjAw ClN1YmplY3Q6IFtQQVRDSCA0NS81M10gY2hlZXNlOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUt ZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlIHwgMiArLQogMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9jaGVlc2UvdGVtcGxhdGUgYi9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZQppbmRleCA3 YTU2YmEwMzlmYi4uMDM3Y2RhNDljOTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY2hlZXNlL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnY2hlZXNlJwogcGtnbmFtZT1jaGVlc2UKIHZlcnNpb249My4zNC4wCi1y ZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJn aXIiCiBjb25maWd1cmVfYXJncz0iLURndGtfZG9jPSQodm9wdF9pZiBndGtfZG9jICd0cnVlJyAn ZmFsc2UnKQoKRnJvbSA0YmQ5YTE2MzY5MzBmNDQyN2Y4NjgwODNmM2M5YmE4N2NmOTY0NjQzIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjM0OjU0ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0 Ni81M10gZ25vbWUtYm9va3M6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28u MTkKCi0tLQogc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z25vbWUtYm9va3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCmluZGV4 IDExNGI5ZTAzNGMyLi4xZDQ5NzRmZTE4MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1ib29r cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtYm9va3MnCiBwa2duYW1lPWdub21lLWJv b2tzCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVy PSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHZh bGEgZ2xpYi1kZXZlbCBsaWJyc3ZnIGRvY2Jvb2steHNsIGxpYnhzbHQKCkZyb20gN2U5OWNlOGQ0 OTRjNjY1OGJjZDhkMDZjN2Q2YTI4ZWZlYTIxYWU2MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAy MCAwMjo0NzozMSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDcvNTNdIGdub21lLWNoYXJhY3RlcnM6 IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3Mv Z25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2hhcmFj dGVycy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQppbmRleCA4 OTg2OGY0YmMwNC4uYWMyNjRlNTFhNmEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtY2hhcmFj dGVycy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jaGFyYWN0ZXJzJwogcGtn bmFtZT1nbm9tZS1jaGFyYWN0ZXJzCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MgorcmV2aXNp b249MwogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgogaG9zdG1ha2VkZXBl bmRzPSJnZXR0ZXh0IGdqcyBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyIKCkZyb20gNGYx YTBmNDFlOGRjNmE4NTJmNWYwZjE2ODNjNDg3M2U3YjIxYzg1NiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBB cHIgMjAyMCAwMjo1NToxOCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDgvNTNdIGdub21lLWRvY3Vt ZW50czogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3Jj cGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWRv Y3VtZW50cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlCmluZGV4 IDk3YjUzZDYzNWQ3Li43ZTQ1YjgyNWU3MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1kb2N1 bWVudHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1kb2N1bWVudHMnCiBwa2du YW1lPWdub21lLWRvY3VtZW50cwogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9u PTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5k cz0iZG9jYm9vay14c2wgZ2V0dGV4dCBpdHN0b29sIHBrZy1jb25maWcgZ2xpYi1kZXZlbCBsaWJ4 c2x0IGdkay1waXhidWYKCkZyb20gNzZhOWNlYTk2ZDUwNDc0NTM2ZTZhMjhlZWQyMDQ1ZjExNTRl MDllZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo1Njo1NiArMDYwMApTdWJqZWN0OiBb UEFUQ0ggNDkvNTNdIGdub21lLWZvbnQtdmlld2VyOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21l LWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBsYXRl IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZSBiL3NyY3BrZ3Mv Z25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUKaW5kZXggNmQwMzUzNjZkNDQuLmY3NGZjYmNiMDAw IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdnbm9tZS1mb250LXZpZXdlcicKIHBrZ25hbWU9Z25vbWUtZm9udC12aWV3 ZXIKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1t ZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5k cz0iZm9udGNvbmZpZy1kZXZlbCBmcmVldHlwZS1kZXZlbCBnbGliLWRldmVsIGd0ayszLWRldmVs CgpGcm9tIDBiNzRmNTEyOTU4Nzg1MmMxZTUxYjg1NmYzNzU5N2ZlZTAxYzkzMGMgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6 IFN1biwgMyBNYXkgMjAyMCAwMjoyNzoxNyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNTAvNTNdIGdu b21lLXNjcmVlbnNhdmVyOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4x OQoKLS0tCiAuLi4vcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2ggICAgICAgICAgICAg ICAgfCAxMyArKysrKysrKysrKysrCiBzcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRl ICAgICAgICAgICAgICAgICAgfCAgMyArKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtc2Ny ZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2gKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNo IGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNThkOTJlNDYzYTMK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25v bWUtZGVza3RvcC0zLjM2LnBhdGNoCkBAIC0wLDAgKzEsMTMgQEAKK2RpZmYgLU5hdXIgZ25vbWUt c2NyZWVuc2F2ZXItMy42LjEub3JpZy9zcmMvZ3MtbWFuYWdlci5jIGdub21lLXNjcmVlbnNhdmVy LTMuNi4xL3NyYy9ncy1tYW5hZ2VyLmMKKy0tLSBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS5vcmln L3NyYy9ncy1tYW5hZ2VyLmMJMjAyMC0wMy0wOCAwODo1Mzo0Ni40MDg0MzE1NzggKzAwMDAKKysr KyBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS9zcmMvZ3MtbWFuYWdlci5jCTIwMjAtMDMtMDggMDg6 NTQ6MzEuODc1NzM4NzMyICswMDAwCitAQCAtNzg4LDggKzc4OCw3IEBACisgICAgICAgICBzdXJm YWNlID0gZ25vbWVfYmdfY3JlYXRlX3N1cmZhY2UgKG1hbmFnZXItPnByaXYtPmJnLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZGtfd2luZG93LAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0LAorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGQUxTRSk7CisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodCk7CisgICAgICAgICBnc193aW5kb3dfc2V0 X2JhY2tncm91bmRfc3VyZmFjZSAod2luZG93LCBzdXJmYWNlKTsKKyAgICAgICAgIGNhaXJvX3N1 cmZhY2VfZGVzdHJveSAoc3VyZmFjZSk7CisgfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1z Y3JlZW5zYXZlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUK aW5kZXggMzYzZmNmMTJlMTAuLjIwMGM2OTFmNTFkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21l LXNjcmVlbnNhdmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zY3JlZW5z YXZlcicKIHBrZ25hbWU9Z25vbWUtc2NyZWVuc2F2ZXIKIHZlcnNpb249My42LjEKLXJldmlzaW9u PTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdz PSItLWVuYWJsZS1jb21waWxlLXdhcm5pbmdzPW1pbmltdW0iCiBob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgYXV0b21ha2UgaW50bHRvb2wgZ2xpYi1kZXZlbCIKQEAgLTEzLDMgKzEzLDQgQEAg bGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL1Byb2plY3RzL0dub21lU2NyZWVuc2F2ZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0v JHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCiBj aGVja3N1bT1mMzliNzhkNGY3ZmVkNzQ4YzdmMGEzMWQ2OTQxMTJmYjkwN2M2ZDNjNGU2M2RiMjJl Yjg1OGRmMDdlOTYyY2QwCitwYXRjaF9hcmdzPSItTnAxIgoKRnJvbSA4YWM1MDM5ZDFjYjVlNzRi ZGY0YWUwZGU1MWQ1MWQ0YzQ3NGRmYzQyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBTdW4sIDMgTWF5IDIwMjAgMTE6NDM6 MTkgKzA2MDAKU3ViamVjdDogW1BBVENIIDUxLzUzXSBnbm9tZS13ZWF0aGVyOiByZWJ1aWxkIGFn YWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtd2VhdGhl ci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZQppbmRleCBkMzBiZTliZjE5Mi4uYzAyOGU0NmJh NjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnbm9tZS13ZWF0aGVyJwogcGtnbmFtZT1nbm9tZS13ZWF0aGVyCiB2ZXJzaW9uPTMu MzYuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgaXRzdG9vbCBn bGliLWRldmVsIGdqcyIKCkZyb20gZWQ2ZjIyMTMxZDgyNWEyNGZkNTA5OTgyMWY4ZWFiNjZhMTQw ZjViMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo1Nzo1NyArMDYwMApTdWJqZWN0OiBb UEFUQ0ggNTIvNTNdIHRvdGVtOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNv LjE5CgotLS0KIHNyY3BrZ3MvdG90ZW0vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RvdGVt L3RlbXBsYXRlIGIvc3JjcGtncy90b3RlbS90ZW1wbGF0ZQppbmRleCA4MTUyMmIzMTQ4OC4uZTQx ODY2MzIxNTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKKysrIGIvc3JjcGtn cy90b3RlbS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Rv dGVtJwogcGtnbmFtZT10b3RlbQogdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTEKK3JldmlzaW9u PTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdz PSItRGVuYWJsZS1weXRob249bm8gLURlbmFibGUtbmF1dGlsdXM9eWVzCgpGcm9tIGZhOGNiMGVm ZWE3Y2FmZTliZjk1NGRmMjMzY2RkNTU4ODEwNjYwZTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIw MjAgMDM6MDQ6MDcgKzA2MDAKU3ViamVjdDogW1BBVENIIDUzLzUzXSBsdXRyaXM6IHJlYnVpbGQg YWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCltjaSBza2lwXQotLS0KIHNyY3BrZ3Mv bHV0cmlzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9sdXRyaXMvdGVtcGxhdGUgYi9zcmNw a2dzL2x1dHJpcy90ZW1wbGF0ZQppbmRleCBmODAxODQ0Yzc3YS4uMzk2MjI5YWU2MjcgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbHV0cmlzL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbHV0cmlzJwogcGtnbmFt ZT1sdXRyaXMKIHZlcnNpb249MC41LjYKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGFyY2hzPW5v YXJjaAogYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKIGJ1aWxkX2hlbHBlcj0iZ2lyIgo= --===============5578939475895845263==--