From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 16678 invoked from network); 1 Jun 2020 01:11:35 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 1 Jun 2020 01:11:35 -0000 Content-Type: multipart/mixed; boundary="===============8788571692201928668==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_=5BWIP=5D_gnome_3=2E36_updates?= To: ml@inbox.vuxu.org From: mnabid Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 01 Jun 2020 03:11:35 +0200 List-Id: Message-ID: <20200601011135.4LvZ2vrP9RR2fNaMciDOmPgHAXxzKQoCovdqeWbDAs0@z> GitHub notification mails are now in MIME to allow UTF8. --===============8788571692201928668== 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+IDMuMzYuMw0KICogZXZvbHV0aW9uIC0+IDMuMzYuMw0KICogZXZv bHV0aW9uLWRhdGEtc2VydmVyIC0+IDMuMzYuMw0KICogZXZvbHV0aW9uLWV3cyAtPiAzLjM2LjMN CiAqIGZpbGUtcm9sbGVyIC0+IDMuMzYuMg0KICogZm9sa3MgLT4gMC4xNC4wDQogKiBnZG0gLT4g My4zNi4yDQogKiBnZWRpdCAtPiAzLjM2LjINCiAqIGdub21lLWJvb2tzIC0+IChyZXZidW1wKQ0K ICogZ25vbWUtY2hhcmFjdGVycyAtPiAocmV2YnVtcCkNCiAqIGdub21lLWNsb2NrcyAtPiAzLjM2 LjINCiAqIGdub21lLWNvbnRhY3RzIC0+IDMuMzYuMQ0KICogZ25vbWUtY29udHJvbC1jZW50ZXIg LT4gMy4zNi4yDQogKiBnbm9tZS1kZXNrdG9wIC0+IDMuMzYuMg0KICogZ25vbWUtZG9jdW1lbnRz IC0+IChyZXZidW1wKQ0KICogZ25vbWUtZXB1Yi10aHVtYm5haWxlciAtPiAxLjYNCiAqIGdub21l LWZsYXNoYmFjayAtPiAzLjM2LjMNCiAqIGdub21lLWZvbnQtdmlld2VyIC0+IChyZXZidW1wKQ0K ICogZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MgLT4gMy4zNi4yDQogKiBnbm9tZS1pbml0aWFs LXNldHVwIC0+IDMuMzYuMw0KICogZ25vbWUtbWFwcyAtPiAzLjM2LjINCiAqIGdub21lLW1lbnVz IC0+IDMuMzYuMA0KICogZ25vbWUtbXVzaWMgLT4gMy4zNi4yDQogKiBnbm9tZS1wYW5lbCAtPiAz LjM2LjENCiAqIGdub21lLXBvZGNhc3RzIC0+IDAuNC43DQogKiBnbm9tZS1zY3JlZW5zYXZlciAt PiAocmV2YnVtcCkNCiAqIGdub21lLXNlc3Npb24gLT4gMy4zNi4wDQogKiBnbm9tZS1zZXR0aW5n cy1kYWVtb24gLT4gMy4zNi4xDQogKiBnbm9tZS1zaGVsbCAtPiAzLjM2LjINCiAqIGdub21lLXNo ZWxsLWV4dGVuc2lvbnMgLT4gMy4zNi4yDQogKiBnbm9tZS10ZXJtaW5hbCAtPiAzLjM2LjINCiAq IGdub21lLXVzZXItZG9jcyAtPiAzLjM2LjINCiAqIGdub21lLXdlYXRoZXIgLT4gKHJldmJ1bXAp DQogKiBncmFwaGVuZSAtPiAxLjEwLjANCiAqIGx1dHJpcyAtPiAocmV2YnVtcCkNCiAqIG1ldGFj aXR5IC0+IDMuMzYuMQ0KICogbXV0dGVyIC0+IDMuMzYuMg0KICogbmF1dGlsdXMgLT4gMy4zNi4z DQogKiBvcmNhIC0+IDMuMzYuMg0KICogcHl0aG9uLWF0c3BpIC0+IDIuMzYuMA0KICogdG90ZW0g LT4gKHJldmJ1bXApDQogKiB0cmFja2VyIC0+IDIuMy40DQogKiB4ZGctZGVza3RvcC1wb3J0YWwt Z3RrIC0+IChyZXZidW1wKQ0KPC9kZXRhaWxzPg0KDQpCdWlsdCBpbiBgeDg2XzY0YC4KCkEgcGF0 Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMv cHVsbC8yMTM4Mi5wYXRjaCBpcyBhdHRhY2hlZA== --===============8788571692201928668== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSBlNDRkNWM5ZDFlYmJhYjEwZmVlMTNkMGRjMmQ4NmQ3MTUwODNhNjVlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS81MV0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIHwgOCArKysr LS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggZTQ3ZmE5ZTNl YzUuLmYyZWYyY2ExZjkxIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z aGxpYnMKQEAgLTExNzksNyArMTE3OSw3IEBAIGxpYmdzdGJhc2VjYW1lcmFiaW5zcmMtMS4wLnNv 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 Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDFiNGQ3NDRmNTVkODNlZjdh ODI0ODM5YzU4N2M0MDcwM2UzNmMyNzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTFdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi44OGRlZTIwZWI2ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisJcm0gLXJmICR7REVT VERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIGRiMjg0ZTI3MmQ4ZGI2OTc3MjUwZTJiMzNi NzcwOWQzMGFhNmMyOTIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUgKzA2MDAK U3ViamVjdDogW1BBVENIIDAzLzUxXSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQog c3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4NTE5NzNm Li45NGNiMTA0OTJjYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYuMS4xCit2 ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1hbmFnZXIi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNhZjMzODAz YTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPWI2Y2FmYzdhYjFl NzBhNjQzODNkZTM5MWI2MDk3ZmNjY2JmMzZiMjA4Zjg1MDJkOGM0NjQyMzIyNGZkMzBlZjgKIAog YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIGY5 Y2E5NGE3MWY3YTRlNWU4OGZlMWMxYjIyNTYyMmQ3YmYyOGQ3MWIgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcg QXByIDIwMjAgMTI6NDM6MDIgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzUxXSBnbm9tZS1tdXNp YzogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQogc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1tdXNpYy90ZW1wbGF0ZQppbmRleCAxMjUxMTczNjQwNy4uMjI3M2FjMWNhMTYgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1tdXNp Yy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW11 c2ljJwogcGtnbmFtZT1nbm9tZS1tdXNpYwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4z CiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0x NSw1ICsxNSw1IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9NdXNpYyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9 LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTdi ODBmNjMwZDE1ODMzNDkzNWE4NzYwMjk2NTUwY2M5MWI1MGQ2MDRmYTY4YjQwMmZlNTE2NWIxNTMx ZWMzMzIKK2NoZWNrc3VtPTU0ZjhkMjQwZjg5OTVmNGNmZjRkY2U1ZTFjYmRjNjBiZWZjODFkNzli ZjcyYzFlNGZkODA3ZWQwNWMxMTQyMzcKIGxpYjMyZGlzYWJsZWQ9eWVzCgpGcm9tIDM3OWFiODNm MGJlMWZhMWI5OTFkNjc1NzFhZWY2N2Q3ZGQ2OGI3YTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIw MjAgMTM6MDI6NDcgKzA2MDAKU3ViamVjdDogW1BBVENIIDA1LzUxXSBkZXZoZWxwOiB1cGRhdGUg dG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmls ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCmluZGV4 IGExYzJkY2JiNzYyLi5iYTc1ZGZmZGNlNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9kZXZoZWxwL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2RldmhlbHAnCiBwa2duYW1lPWRldmhlbHAKLXZlcnNpb249My4z Ni4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWls ZF9zdHlsZT1tZXNvbgpAQCAtMTEsNyArMTEsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRGV2aGVscCIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKLWNoZWNrc3VtPTRjZjhlYzkzMDJiYzRhNzllMDFhYzUzYmQ5YzhiOTVhNTk2Zjcx ZjM1MzUxZjQ4YjYzMjYzMjI3ZjA5YThhM2QKK2NoZWNrc3VtPThiNWE4NDMxOWVmYmIyZWYxYmM0 MDIyZWUzZWQyZDY2Nzg3OTRlYmEyZGZhOTkzZTUwZTAzZDZlN2I5MzBjNWUKIAogZGV2aGVscC1k ZXZlbF9wYWNrYWdlKCkgewogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKCkZy b20gMTEyMDgzZWQxZTE4YjQ2MTcwNDIyNjg0OTRiMmI1NzM2ZDM4MDRlZiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9u LCAyNyBBcHIgMjAyMCAxMzoxNzo0MiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTFdIGVvZzog dXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9lb2cvdGVtcGxhdGUgfCA0ICsrLS0KIDEg ZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9lb2cvdGVtcGxhdGUgYi9zcmNwa2dzL2VvZy90ZW1wbGF0ZQppbmRleCBmNTM0 MDAwMGViNS4uMjc2Mzk5Y2EyY2MgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZW9nL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZW9nL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZW9nJwogcGtnbmFtZT1lb2cKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgog cmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTQs NyArMTQsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25v bWUub3JnL0FwcHMvRXllT2ZHbm9tZSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9lb2cvJHt2 ZXJzaW9uJS4qfS9lb2ctJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1lNDU0YTFhN2FhNWUz YTMzMjFlYWIwMTE2Nzc4MTEwZTVhN2E3YjYzYmNmMjE2NzZlZGExYTdiZTE4N2M5Yzk1CitjaGVj a3N1bT01YzA1NmIwMjk1YThlMDZkMDkzYjhmYzYwYjEwZTJhOGMxOWFiZGI3YmVhZTFjN2U3ZTA1 OTVlY2UyZTFiNzhjCiBzaGxpYl9wcm92aWRlcz0ibGliZW9nLnNvIgogbGliMzJkaXNhYmxlZD15 ZXMKIAoKRnJvbSA4MjQ3ZTdlZjAxNzhjY2M0MjU5Mzc0ZmViNmIyYjFkNjE4OWE5Yjc3IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBXZWQsIDI5IEFwciAyMDIwIDE2OjA4OjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNy81 MV0gZXZpbmNlOiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2V2aW5jZS90ZW1wbGF0 ZSB8IDIwICsrKysrKysrKysrLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9u cygrKSwgOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlCmluZGV4IGMzMzdhMjY2Y2UwLi5mZTQwNTA0OGY0 NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9ldmluY2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ldmlu Y2UvdGVtcGxhdGUKQEAgLTEsMTQgKzEsMTQgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5j ZScKIHBrZ25hbWU9ZXZpbmNlCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjMKIHJldmlz aW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgotYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotY29u ZmlndXJlX2FyZ3M9IiQodm9wdF9lbmFibGUgZ2lyIGludHJvc3BlY3Rpb24pIC0tZGlzYWJsZS1z Y2hlbWFzLWNvbXBpbGUKLSAtLWVuYWJsZS1jb21pY3MgLS1kaXNhYmxlLXN0YXRpYyAtLWVuYWJs ZS14cHMgLS1kaXNhYmxlLXQxbGliCi0gLS1kaXNhYmxlLWJyb3dzZXItcGx1Z2luIC0tZW5hYmxl LXBzIgorYnVpbGRfc3R5bGU9bWVzb24KK2NvbmZpZ3VyZV9hcmdzPSItRGNvbWljcz1lbmFibGVk IC1EeHBzPWVuYWJsZWQgLUR0MWxpYj1lbmFibGVkIC1EYnJvd3Nlcl9wbHVnaW49dHJ1ZQorIC1E cHM9ZW5hYmxlZCAtRGR2aT1kaXNhYmxlZCAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0 cnVlIGZhbHNlKQorIC1EZ3RrX2RvYz0kKHZvcHRfaWYgZ3RrX2RvYyB0cnVlIGZhbHNlKSIKIGhv c3RtYWtlZGVwZW5kcz0iYWR3YWl0YS1pY29uLXRoZW1lIGdldHRleHQgZ2xpYi1kZXZlbCBnbm9t ZS1kb2MtdXRpbHMKLSBpdHN0b29sIHBrZy1jb25maWcgcGVybC1YTUwtUGFyc2VyIGFwcHN0cmVh bS1nbGliIgorIGl0c3Rvb2wgcGtnLWNvbmZpZyBwZXJsLVhNTC1QYXJzZXIgYXBwc3RyZWFtLWds aWIgJCh2b3B0X2lmIGd0a19kb2MgZ3RrLWRvYykiCiAjIFhYWCBtaXNzaW5nIHBhY2thZ2VzIGZv ciBEVkkgYmFja2VuZC4KIG1ha2VkZXBlbmRzPSJhZHdhaXRhLWljb24tdGhlbWUgZGp2dWxpYnJl LWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgbGliU00tZGV2ZWwKICBsaWJneHBzLWRldmVsIGxp YnNlY3JldC1kZXZlbCBsaWJzcGVjdHJlLWRldmVsIG5hdXRpbHVzLWRldmVsCkBAIC0xOSw5ICsx OSw5IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5v cmcvQXBwcy9FdmluY2UiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT04NTFkOWI1 MjM0ZDQ3OWFiNGM4ZjdjNWNiYWNlYjBlOTFhZDc5Y2NiYTFhN2I3MzNjZGU3MmRhY2M5MjhmYmE4 CitjaGVja3N1bT1hZjJlYmRmN2Y3NGU2NTgwYzRmMWExMmJkZmUyNmI5ZmY5MDM3NGQ3YWNhZTA2 MWRlMDY2NmQ2NDAxMmE5ZGIyCiAKLWJ1aWxkX29wdGlvbnM9ImdpciIKK2J1aWxkX29wdGlvbnM9 ImdpciBndGtfZG9jIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCiAKIGxpYmV2aW5jZV9w YWNrYWdlKCkgewpAQCAtNDEsNyArNDEsOSBAQCBldmluY2UtZGV2ZWxfcGFja2FnZSgpIHsKIAkJ dm1vdmUgdXNyL2luY2x1ZGUKIAkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcKIAkJdm1vdmUgInVz ci9saWIvKi5zbyIKLQkJdm1vdmUgdXNyL3NoYXJlL2d0ay1kb2MKKwkJaWYgWyAiJGJ1aWxkX29w dGlvbl9ndGtfZG9jIiBdOyB0aGVuCisJCQl2bW92ZSB1c3Ivc2hhcmUvZ3RrLWRvYworCQlmaQog CQlpZiBbICIkYnVpbGRfb3B0aW9uX2dpciIgXTsgdGhlbgogCQkJdm1vdmUgdXNyL3NoYXJlL2dp ci0xLjAKIAkJZmkKCkZyb20gNDhhZWVhN2ZiMjFhMDA0OWUyMDk1NGNmNDIxNTNhMTc0OTk3NzAx ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29r LmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMzozMDo1NiArMDYwMApTdWJqZWN0OiBbUEFU Q0ggMDgvNTFdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25v bWUtbWFwcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxh dGUgYi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKaW5kZXggMDMwMGJlNjA1OTkuLjlmZGQy N2RiM2JkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZ25vbWUtbWFwcycKIHBrZ25hbWU9Z25vbWUtbWFwcwotdmVyc2lvbj0zLjM2LjEKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBl bmRzPSJnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBpbnRsdG9vbCBwa2ctY29uZmln IEFwcFN0cmVhbSIKQEAgLTEyLDUgKzEyLDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdv dHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL01hcHMiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT0xYTMyZWZkOTZhZDg5OGY3N2E2MzZkMmQwNDYzZDc1NzAwOWI0YjgxMjI1 OWM4OWZmZGNiOTFkNmFmYzA1MmY5CitjaGVja3N1bT01YmEyMTliOWRlOTg2NzhjZWZhNTg0OGY2 NTM4ZGI4ZGJkMDdmNmM3NDdmZDQzYTk5MTY3YTI2Njg3OGE5Nzg0CiBub2Nyb3NzPSJldm9sdXRp b24tZGF0YXNlcnZlciBjcm9zcyBnaXIgZG9lc24ndCB3b3JrIgoKRnJvbSBkMzQxNDJmNGEyZmZj Y2VmNmYxMDE5M2MxMmVkMjRlODUzMThmOWEyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE0 OjI3OjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAwOS81MV0gZ2VkaXQ6IHVwZGF0ZSB0byAzLjM2 LjIuCgotLS0KIHNyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2Vk LCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n ZWRpdC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYxODIu LmUzZWJlYTA1ZWE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ2VkaXQvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdnZWRpdCcKIHBrZ25hbWU9Z2VkaXQKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgog cmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTcs NyArMTcsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25v bWUub3JnL0FwcHMvR2VkaXQiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02ZGMz OGVkYTIyN2QxYzM2OGUwMzllOWJmZjQ4NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4YTRl Mzg3CitjaGVja3N1bT02ODg3NTU0NjQzYzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1ZTY3 NThhZWFhMDhmNGE0ODJiNTU0MTk3CiBzaGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5zbyIK IHB5dGhvbl92ZXJzaW9uPTMKIAoKRnJvbSAzMDAyNDhjNTY3NGRjMTRhOGIyZmE2M2Y0MDlhM2U4 YmU0YzNhNGFlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjAyOjE0ICswNjAwClN1Ympl Y3Q6IFtQQVRDSCAxMC81MV0gZ25vbWUtY29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0K IHNyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hh bmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBs YXRlCmluZGV4IDJhODIxM2E3MjQwLi4wMWZiODJiNzgyNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9n bm9tZS1jb250YWN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBs YXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250YWN0 cycKIHBrZ25hbWU9Z25vbWUtY29udGFjdHMKLXZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0yCit2 ZXJzaW9uPTMuMzYuMQorcmV2aXNpb249MQogd3Jrc3JjPSJnbm9tZS1jb250YWN0cy0ke3ZlcnNp b24lLip9IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wg Z2V0dGV4dCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgoraG9zdG1ha2VkZXBl bmRzPSJkb2Nib29rLXhzbCBmb2xrcy1kZXZlbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGlieHNsdCBw a2ctY29uZmlnIHZhbGEiCiBtYWtlZGVwZW5kcz0iY2hlZXNlLWRldmVsIGZvbGtzLWRldmVsIGdl b2NvZGUtZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsCiAgbGliY2hhbXBsYWluLWRldmVs IGxpYm5vdGlmeS1kZXZlbCB2YWxhLWRldmVsIGxpYmhhbmR5LWRldmVsIgogZGVwZW5kcz0iZGVz a3RvcC1maWxlLXV0aWxzIgpAQCAtMTMsNCArMTMsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFu ZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvQ29udGFjdHMiCiBkaXN0ZmlsZXM9 IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJz aW9uJS4qfS50YXIueHoiCi1jaGVja3N1bT05OTYwMmVjOGQ2NjBjMWYzYzkyY2FlNjM1NmY2NGY3 MmZiNmRiNThlNTViY2UyN2E1OTkzMzBiZjdiNjIyZjEyCitjaGVja3N1bT1lZWNiZDIyMDlkOTNj OGQzMWRmOTJmNmNjZjc5MTgzYjQ1NmM2ZTA3YTI4YWUwMTU1Y2JkYTE4YWFiZDM2ZjdiCgpGcm9t IDU1ODI4YjYzODk0NDBhNDNlZTY1OTgyNDE4MjFmMDcyMjM5MGE5ODUgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwg MzAgQXByIDIwMjAgMDI6NTI6MTIgKzA2MDAKU3ViamVjdDogW1BBVENIIDExLzUxXSBnbm9tZS1j bG9ja3M6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBs YXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlIGIvc3JjcGtn cy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUKaW5kZXggM2UwNDliNDJmYjEuLjM0YjE1OWFlNmE2IDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2du b21lLWNsb2Nrcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2dub21lLWNsb2NrcycKIHBrZ25hbWU9Z25vbWUtY2xvY2tzCi12ZXJzaW9uPTMuMzYuMAordmVy c2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9 bWVzb24KQEAgLTE1LDQgKzE1LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0Nsb2NrcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPTRjOTc4YjBjN2Y3YjlkYWViZDI3MmQwMTc1ZjhhNTQ0MTVlMjA3OGYxMzRmNDhh ZGQ1Y2YyNDM2MmVlZjQ5YzYKK2NoZWNrc3VtPWYxMWIxYjIyZWMxZjI4NWU1MDk4ODM2ODRjMGIx ZjRhNTE0OTZhZWExMDU1OTEyMzllNWIyNmY4OTg2NzUxZTYKCkZyb20gODdiYzg0OTViYTEzNjI5 YzMyZTE5Nzc3M2I4ZWQwZDE0NWZhNWQwOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxNToy OTozMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTIvNTFdIGdub21lLWVwdWItdGh1bWJuYWlsZXI6 IHVwZGF0ZSB0byAxLjYuCgotLS0KIHNyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1w bGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1w bGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQppbmRleCBiMTZl NzA1NDc1Zi4uZDY3Yjc3ZjFlNDMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVt Ym5haWxlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVt cGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWVwdWIt dGh1bWJuYWlsZXInCiBwa2duYW1lPWdub21lLWVwdWItdGh1bWJuYWlsZXIKLXZlcnNpb249MS41 Cit2ZXJzaW9uPTEuNgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9Imdkay1waXhidWYtZGV2ZWwg bGliYXJjaGl2ZS1kZXZlbCBsaWJ4bWwyLWRldmVsIgogc2hvcnRfZGVzYz0iVGh1bWJuYWlsZXIg Zm9yIEVQdWIgYW5kIE1PQkkgYm9va3MiCiBtYWludGFpbmVyPSJBbGlmIFJhY2htYXdhZGkgPGFy Y2hAc3Vib3NpdG8uY29tPiIKLWxpY2Vuc2U9IkdQTC0zIgorbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdC5nbm9tZS5vcmcvYnJvd3NlL2dub21lLWVwdWIt dGh1bWJuYWlsZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zMDgyMTBmNTgwMDIx OWY2NGNhZTQ4MjhlNTliYjhlNmU0YzUzYjg4ODA0OGNmNDg3MjIxYWViNDMzN2Q3OTFhCitjaGVj a3N1bT1iNTAyNDIwZDliMDJlYTBiMGZjNzk4NmVmNWEwOTFhMTJiMjI4NmJlMTRmZWQ5ZTQ3NTk0 ZmU5ZmEwYzU4OThlCgpGcm9tIDU3ODBmOTZjYzRiNTJiYWIxZjY3MzYyZGFhZjI1MTcyOTZhYzY5 YjggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTY6MjM6NDYgKzA2MDAKU3ViamVjdDogW1BB VENIIDEzLzUxXSBnbm9tZS10ZXJtaW5hbDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtn cy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUt dGVybWluYWwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCmluZGV4 IGJmM2Q1YmNkZDQyLi4yMmRiYzExYmFkYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS10ZXJt aW5hbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCkBAIC0x LDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdGVybWluYWwnCiBwa2duYW1l PWdub21lLXRlcm1pbmFsCi12ZXJzaW9uPTMuMzYuMS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJs ZS1zdGF0aWMgLS13aXRoLW5hdXRpbHVzLWV4dGVuc2lvbiIKQEAgLTEzLDggKzEzLDggQEAgc2hv cnRfZGVzYz0iR05PTUUgdGVybWluYWwgZW11bGF0b3IgYXBwbGljYXRpb24iCiBtYWludGFpbmVy PSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1v ci1sYXRlciwgR0ZETC0xLjMtb25seSIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3Jn L0FwcHMvVGVybWluYWwiCi1kaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb246MDo0fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjNkNzA4 YTFlNzZkNzdjMWM4NWIxMjZmNmUwMDMyMjBhMTVkNGE0NmE1MGZkODA3MGUxYTNhYWJlNjc4YTM3 NgorZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgorY2hlY2tzdW09NDFkMWI2YTNkYzk3YzA2NmUyOTRh Y2RiN2YzNjkzMWU4MTY2ODYzOGRjYzkyZmZhMjViY2EzZGRlYmFjZGY0NgogbGliMzJkaXNhYmxl ZD15ZXMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCgpGcm9tIGQxOTMyZTQ4NzNiNmJj M2ExYzk0NTA4MmRlNmYwYjA2ZjUwZWFiNjAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMjggQXByIDIwMjAgMTg6 MTg6MDAgKzA2MDAKU3ViamVjdDogW1BBVENIIDE0LzUxXSBnbm9tZS1wb2RjYXN0czogdXBkYXRl IHRvIDAuNC43LgoKLS0tCiAuLi4vZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0 Y2ggICAgfCAyMSAtLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBs YXRlICAgICAgICAgICAgICAgfCAyNCArKysrKysrKysrLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5n ZWQsIDEzIGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoIGIvc3Jj cGtncy9nbm9tZS1wb2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggYWViOTU4MWJkNzkuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv Z25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwyMSArMCwwIEBACi0tLS0gcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRzL2VwaXNvZGUucnMub3Jp ZwkyMDE5LTA2LTA5IDE1OjU0OjU5Ljc5MzQ1MTA0NyArMDIwMAotKysrIHBvZGNhc3RzLWd0ay9z cmMvd2lkZ2V0cy9lcGlzb2RlLnJzCTIwMTktMDYtMDkgMTU6NTU6MTkuMTkxMzExNTEyICswMjAw Ci1AQCAtNTU5LDcgKzU1OSw3IEBACi0gICAgICAgICAgICAgLnRvdGFsX3NpemUKLSAgICAgICAg ICAgICAuZ2V0X3RleHQoKQotICAgICAgICAgICAgIC5hc19yZWYoKQotLSAgICAgICAgICAgIC5t YXAofHN8IHMudHJpbV9yaWdodF9tYXRjaGVzKCIgTUIiKSkKLSsgICAgICAgICAgICAubWFwKHxz fCBzLnRyaW1fZW5kX21hdGNoZXMoIiBNQiIpKQotICAgICAgICAgICAgIC5hbmRfdGhlbih8c3wg cy5wYXJzZTo6PGkzMj4oKS5vaygpKQotICAgICAgICAgICAgIC5pc19ub25lKCkKLSAgICAgICAg IHsKLS0tLSBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvc2hvd3Nfdmlldy5ycy5vcmlnCTIwMTkt MDYtMDkgMTU6NTQ6MDAuMzIwODc4ODY3ICswMjAwCi0rKysgcG9kY2FzdHMtZ3RrL3NyYy93aWRn ZXRzL3Nob3dzX3ZpZXcucnMJMjAxOS0wNi0wOSAxNTo1NDoxMy4xNTE3ODY1NjMgKzAyMDAKLUBA IC04MCw3ICs4MCw2IEBACi0gfQotIAotIGZuIG9uX2NoaWxkX2FjdGl2YXRlKGNoaWxkOiAmZ3Rr OjpGbG93Qm94Q2hpbGQsIHNlbmRlcjogJlNlbmRlcjxBY3Rpb24+KSAtPiBSZXN1bHQ8KCksIEVy cm9yPiB7Ci0tICAgIHVzZSBndGs6OldpZGdldEV4dDsKLSAKLSAgICAgLy8gVGhpcyBpcyBzdWNo IGFuIHVnbHkgaGFjay4uLgotICAgICBsZXQgaWQgPSBXaWRnZXRFeHQ6OmdldF9uYW1lKGNoaWxk KQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZSBiL3NyY3BrZ3Mv Z25vbWUtcG9kY2FzdHMvdGVtcGxhdGUKaW5kZXggNzJlMmRiNmIxMDkuLjNjMjM5ZGY4NDI0IDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Z25vbWUtcG9kY2FzdHMvdGVtcGxhdGUKQEAgLTEsMjYgKzEsMjggQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2dub21lLXBvZGNhc3RzJwogcGtnbmFtZT1nbm9tZS1wb2RjYXN0cwotdmVyc2lvbj0w LjQuNgotcmV2aXNpb249MwordmVyc2lvbj0wLjQuNworcmV2aXNpb249MQogd3Jrc3JjPSJwb2Rj YXN0cy0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iY2Fy Z28gZ2V0dGV4dC1kZXZlbCBnbGliLWRldmVsIHBrZy1jb25maWciCitidWlsZF9oZWxwZXI9InJ1 c3QiCitob3N0bWFrZWRlcGVuZHM9ImNhcmdvIGdldHRleHQgZ2xpYi1kZXZlbCBwa2ctY29uZmln IHNxbGl0ZS1kZXZlbCIKIG1ha2VkZXBlbmRzPSJnc3RyZWFtZXIxLWRldmVsIGdzdC1wbHVnaW5z LWJhZDEtZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwKLSBndGsrMy1kZXZlbCBsaWJoYW5k eS1kZXZlbCBsaWJyZXNzbC1kZXZlbCBzcWxpdGUtZGV2ZWwgdGV4aW5mbyIKKyBndGsrMy1kZXZl bCBsaWJoYW5keS1kZXZlbCBsaWJyZXNzbC1kZXZlbCBzcWxpdGUtZGV2ZWwgcnVzdC1zdGQiCiBz aG9ydF9kZXNjPSJMaXN0ZW4gdG8geW91ciBmYXZvcml0ZSBwb2RjYXN0cyIKIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9Qb2RjYXN0cyIK IGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL1dvcmxkL3BvZGNhc3RzLy0vYXJj aGl2ZS8ke3ZlcnNpb259L3BvZGNhc3RzLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09OTUz YzYzZTgxODRjYTFmNzQ4NDE4ZDhhODI2MmQ0MGVhYTQxMDQ3ZjgxZTJkMmM4NzRhMzAzNWQ5ZDlk MGU0YQotbm9jcm9zcz0icnVzdGMgY2FudCBiZSBjcm9zc2NvbXBpbGVkIGFzIG9mIG5vdyIKLWJy b2tlbj0iZ2V0dGV4dC1ycyBoYXNoIGRvZXMgbm90IGV4aXN0cywgaWYgZml4ZWQgYnVpbGQgZmFp bHMgaW4gZ2lvIDAuNS4wIgorY2hlY2tzdW09YTlhMWI2MmRkMzU2N2UzY2NhMzhlZTI5ZGYyZmFk ZDgyZTJmYjVlODM3YjBhMmEyNmVjYWM3NGU5MzA1MTYxYwogCiBleHBvcnQgR0VUVEVYVF9CSU5f RElSPS91c3IvYmluCiBleHBvcnQgR0VUVEVYVF9MSUJfRElSPSIke1hCUFNfQ1JPU1NfQkFTRX0v dXNyL2xpYi9nZXR0ZXh0IgogZXhwb3J0IEdFVFRFWFRfSU5DTFVERV9ESVI9IiR7WEJQU19DUk9T U19CQVNFfS91c3IvaW5jbHVkZSIKIAotcHJlX2J1aWxkKCkgewotCWNhcmdvIHVwZGF0ZSAtLXBh Y2thZ2Ugb3BlbnNzbC1zeXMgLS1wcmVjaXNlIDAuOS40NgotCWNhcmdvIHVwZGF0ZSAtLXBhY2th Z2Ugb3BlbnNzbCAtLXByZWNpc2UgMC4xMC4yMgotfQoraWYgWyAiJENST1NTX0JVSUxEIiBdOyB0 aGVuCisJcG9zdF9wYXRjaCgpIHsKKwkJdnNlZCAtaSBzY3JpcHRzL2NhcmdvLnNoIFwKKwkJCS1l ICdzJSIkQ0FSR09fVEFSR0VUX0RJUiIvJSYke1JVU1RfVEFSR0VUfS8lJyBcCisJCQktZSAnL0NB UkdPX0hPTUUvZCcKKwl9CitmaQoKRnJvbSAwOGU5YzE1NzQyNmQ2NDJlMTYyZDY0NDZmODZkOTky MDFlOWIzNDIzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDE0OjQxOjMyICswNjAwClN1Ympl Y3Q6IFtQQVRDSCAxNS81MV0gZ25vbWUtY29udHJvbC1jZW50ZXI6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUgfCAyMCArKysrKysr KysrKysrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDQgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUKaW5kZXggMGUyNzg3ODk4 YWUuLjA3MDM2Y2Y5OWYwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVy L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUKQEAg LTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250cm9sLWNlbnRlcicK IHBrZ25hbWU9Z25vbWUtY29udHJvbC1jZW50ZXIKLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMu MzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgpA QCAtMTAsMjQgKzEwLDM2IEBAIGhvc3RtYWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBnc2V0dGluZ3Mt ZGVza3RvcC1zY2hlbWFzLWRldmVsIGludGx0b29sIHBrZy1jb25maWcKIG1ha2VkZXBlbmRzPSJN b2RlbU1hbmFnZXItZGV2ZWwgYWNjb3VudHNzZXJ2aWNlLWRldmVsIGFsc2EtcGx1Z2lucwogIGNv bG9yZC1ndGstZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwg Z25vbWUtbWVudXMtZGV2ZWwKICBnbm9tZS1vbmxpbmUtYWNjb3VudHMtZGV2ZWwgZ25vbWUtc2V0 dGluZ3MtZGFlbW9uLWRldmVsIGdyaWxvLWRldmVsIGlidXMtZGV2ZWwKLSBsaWJTTS1kZXZlbCBs aWJYeGY4Nm1pc2MtZGV2ZWwgbGliZ25vbWVrYmQtZGV2ZWwgbGliZ3RvcC1kZXZlbAorIGxpYlNN LWRldmVsIGxpYlh4Zjg2bWlzYy1kZXZlbCBsaWJnbm9tZWtiZC1kZXZlbCBsaWJndG9wLWRldmVs IGxpYmhhbmR5LWRldmVsCiAgbGlicHdxdWFsaXR5LWRldmVsIG1pdC1rcmI1LWRldmVsIG5ldHdv cmstbWFuYWdlci1hcHBsZXQtZGV2ZWwgcG9sa2l0LWRldmVsCiAgcHVsc2VhdWRpby1kZXZlbCBz YW1iYS1kZXZlbCB0emRhdGEgdXBvd2VyLWRldmVsIHZhbGEtZGV2ZWwgY2x1dHRlci1ndGstZGV2 ZWwKICBsaWJ4bWwyLWRldmVsIGxpYlgxMS1kZXZlbCBndGsrMy1kZXZlbCBjdXBzLWRldmVsIGxp Ymd1ZGV2LWRldmVsIGxpYndhY29tLWRldmVsCiAgY2x1dHRlci1kZXZlbCBsaWJzZWNyZXQtZGV2 ZWwgbGliY2FuYmVycmEtZGV2ZWwgdWRpc2tzMi1kZXZlbCBnc291bmQtZGV2ZWwKICAkKHZvcHRf aWYgY2hlZXNlIGNoZWVzZS1kZXZlbCkiCi1kZXBlbmRzPSJhbHNhLXBsdWdpbnMtcHVsc2VhdWRp byBkZXNrdG9wLWZpbGUtdXRpbHMKK2RlcGVuZHM9ImFsc2EtcGx1Z2lucy1wdWxzZWF1ZGlvIGRl c2t0b3AtZmlsZS11dGlscyB1cG93ZXIgY29sb3JkIGN1cHMtcGstaGVscGVyCiAgZ3NldHRpbmdz LWRlc2t0b3Atc2NoZW1hcyBoaWNvbG9yLWljb24tdGhlbWUgaXNvLWNvZGVzIHNvdW5kLXRoZW1l LWZyZWVkZXNrdG9wCiAgY3JhY2tsaWIiCitjaGVja2RlcGVuZHM9InB5dGhvbjMtZGJ1c21vY2sg eG9yZy1zZXJ2ZXIteHZmYiIKIHNob3J0X2Rlc2M9IkdOT01FIGNvbnRyb2wgY2VudGVyIgogbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01F L2dub21lLWNvbnRyb2wtY2VudGVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFt ZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09 NWY4MmVjZDU1NTQxMzZjNDYyMjQ4ZWM1MzYzYjgyZDk1MzU4YjM5ZGZkNjc4NzAwNmQ4MzA3YjQ1 MDRlNTE1ZQorY2hlY2tzdW09ZTBhNWVmZjBjNmQ2YzIyZGIwYzU0ZmQwNzA0NjBkZTg3NGQzNjdl ZjNmOTA3MmUxNTU5YjcwZjI4Yjg0NzgxNwogCiBidWlsZF9vcHRpb25zPSJjaGVlc2UiCiBkZXNj X29wdGlvbl9jaGVlc2U9IkFkZCBzdXBwb3J0IGZvciBhZGRpbmcgdXNlciBhY2NvdW50IGltYWdl cyB3aXRoIHlvdXIgd2ViY2FtIgorCitwcmVfY2hlY2soKSB7CisJIyB0ZXN0LW5ldHdvcmstcGFu ZWwgbmVlZHMgaWQgZ2VuZXJhdGVkIGJ5IGRidXMtdXVpZGdlbgorCW1rZGlyIC1wIC92YXIvbGli L2RidXMKKwlkYnVzLXV1aWRnZW4gLS1lbnN1cmUKK30KKworcG9zdF9jaGVjaygpIHsKKwlybSAt cmYgL3Zhci9saWIvZGJ1cworfQorCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAli dWlsZF9vcHRpb25zX2RlZmF1bHQrPSIgY2hlZXNlIgogZmkKCkZyb20gMmFiNjFlNDY0NjllNjU3 OWM4MTBiZTA1MGEzOTRmODhmODUyNTYxOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDEwOjU3 OjQ1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxNi81MV0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uOiB1 cGRhdGUgdG8gMy4zNi4xLgoKQWRkZWQgYSBwYXRjaCB0byBmaXggYnJpZ2h0bmVzcyBjb250cm9s cyB3aXRoIGVsb2dpbmQuCi0tLQogLi4udC11c2UtbG9naW5kLWZvci1icmlnaHRuZXNzLWNoYW5n aW5nLnBhdGNoIHwgMTIxICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1zZXR0aW5n cy1kYWVtb24vdGVtcGxhdGUgICAgICAgIHwgIDEwICstCiAyIGZpbGVzIGNoYW5nZWQsIDEyNiBp bnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv Z25vbWUtc2V0dGluZ3MtZGFlbW9uL3BhdGNoZXMvZG9udC11c2UtbG9naW5kLWZvci1icmlnaHRu ZXNzLWNoYW5naW5nLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1k YWVtb24vcGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5lc3MtY2hhbmdpbmcucGF0 Y2ggYi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2lu ZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMC4uYTNhODM0ZTNiNzQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2du b21lLXNldHRpbmdzLWRhZW1vbi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVz cy1jaGFuZ2luZy5wYXRjaApAQCAtMCwwICsxLDEyMSBAQAorVXBzdHJlYW0gaW50cm9kdWNlZCBi cmlnaHRuZXNzIGxldmVsIGNoYW5naW5nIHdpdGgKK2h0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXR0aW5ncy1kYWVtb24vLS9jb21taXQvY2QwNTFlNmM3Y2NmYjdlN2IwZWM0 NDA0MDljNTU5YjJlNTEyODRlOAorYnV0IGFwcGFyZW50bHkgdGhpcyBkb2Vzbid0IHdvcmsgd2l0 aCBlbG9naW5kIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL2Vsb2dpbmQvZWxvZ2luZC9pc3N1ZXMv MTU4KSwKK3NvIGxldCdzIHJldmVydCB0aGlzIGZvciBub3cgYW5kIGtlZXAgdXNpbmcgdGhlIG9s ZCBtZWNoYW5pc20uCitkaWZmIC0tZ2l0IHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jIHBs dWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jCitpbmRleCA5ZjQwNmM5Li45Yzg3MmY4IDEwMDY0 NAorLS0tIHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jCisrKysgcGx1Z2lucy9wb3dlci9n c2QtYmFja2xpZ2h0LmMKK0BAIC00MCw4ICs0MCw2IEBAIHN0cnVjdCBfR3NkQmFja2xpZ2h0Cisg ICAgICAgICBnaW50IGJyaWdodG5lc3Nfc3RlcDsKKyAKKyAjaWZkZWYgX19saW51eF9fCistICAg ICAgICBHREJ1c1Byb3h5ICpsb2dpbmRfcHJveHk7CistCisgICAgICAgICBHVWRldkNsaWVudCAq dWRldjsKKyAgICAgICAgIEdVZGV2RGV2aWNlICp1ZGV2X2RldmljZTsKKyAKK0BAIC02MSwxMCAr NTksNiBAQCBlbnVtIHsKKyAgICAgICAgIFBST1BfTEFTVCwKKyB9OworIAorLSNkZWZpbmUgU1lT VEVNRF9EQlVTX05BTUUgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AubG9n aW4xIgorLSNkZWZpbmUgU1lTVEVNRF9EQlVTX1BBVEggICAgICAgICAgICAgICAgICAgICAgICIv b3JnL2ZyZWVkZXNrdG9wL2xvZ2luMS9zZXNzaW9uL2F1dG8iCistI2RlZmluZSBTWVNURU1EX0RC VVNfSU5URVJGQUNFICAgICAgICAgICAgICAgICAgIm9yZy5mcmVlZGVza3RvcC5sb2dpbjEuU2Vz c2lvbiIKKy0KKyBzdGF0aWMgR1BhcmFtU3BlYyAqcHJvcHNbUFJPUF9MQVNUXTsKKyAKKyBzdGF0 aWMgdm9pZCAgICAgZ3NkX2JhY2tsaWdodF9pbml0YWJsZV9pZmFjZV9pbml0IChHSW5pdGFibGVJ ZmFjZSAgKmlmYWNlKTsKK0BAIC00ODEsMzEgKzQ3NSwxMyBAQCBnc2RfYmFja2xpZ2h0X3NldF9i cmlnaHRuZXNzX3ZhbF9hc3luYyAoR3NkQmFja2xpZ2h0ICpiYWNrbGlnaHQsCisgI2lmZGVmIF9f bGludXhfXworICAgICAgICAgaWYgKGJhY2tsaWdodC0+dWRldl9kZXZpY2UgIT0gTlVMTCkgewor ICAgICAgICAgICAgICAgICBCYWNrbGlnaHRIZWxwZXJEYXRhICp0YXNrX2RhdGE7CisrICAgICAg ICAgICAgICAgICAgdGFza19kYXRhID0gZ19uZXcwIChCYWNrbGlnaHRIZWxwZXJEYXRhLCAxKTsK KysgICAgICAgICAgICAgICAgICB0YXNrX2RhdGEtPnZhbHVlID0gYmFja2xpZ2h0LT5icmlnaHRu ZXNzX3RhcmdldDsKKysgICAgICAgICAgICAgICAgICBnX3Rhc2tfc2V0X3Rhc2tfZGF0YSAodGFz aywgdGFza19kYXRhLCBiYWNrbGlnaHRfdGFza19kYXRhX2Rlc3Ryb3kpOworIAorLSAgICAgICAg ICAgICAgICBpZiAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHkpIHsKKy0gICAgICAgICAgICAgICAg ICAgICAgICBnX2RidXNfcHJveHlfY2FsbCAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHksCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTZXRCcmlnaHRuZXNzIiwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ192YXJpYW50X25l dyAoIihzc3UpIiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgImJhY2tsaWdodCIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdfdWRldl9kZXZpY2VfZ2V0X25hbWUgKGJh Y2tsaWdodC0+dWRldl9kZXZpY2UpLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfdGFyZ2V0KSwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0NBTExf RkxBR1NfTk9ORSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LTEsIE5VTEwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIE5VTEwpOworLQorLSAgICAgICAgICAgICAgICAgICAgICAgIHBlcmNlbnQgPSBBQlNfVE9f UEVSQ0VOVEFHRSAoYmFja2xpZ2h0LT5icmlnaHRuZXNzX21pbiwKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tsaWdodC0+YnJpZ2h0bmVz c19tYXgsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfdGFyZ2V0KTsKKy0gICAgICAgICAgICAgICAgICAg ICAgICBnX3Rhc2tfcmV0dXJuX2ludCAodGFzaywgcGVyY2VudCk7CistICAgICAgICAgICAgICAg IH0gZWxzZSB7CistICAgICAgICAgICAgICAgICAgICAgICAgdGFza19kYXRhID0gZ19uZXcwIChC YWNrbGlnaHRIZWxwZXJEYXRhLCAxKTsKKy0gICAgICAgICAgICAgICAgICAgICAgICB0YXNrX2Rh dGEtPnZhbHVlID0gYmFja2xpZ2h0LT5icmlnaHRuZXNzX3RhcmdldDsKKy0gICAgICAgICAgICAg ICAgICAgICAgICBnX3Rhc2tfc2V0X3Rhc2tfZGF0YSAodGFzaywgdGFza19kYXRhLCBiYWNrbGln aHRfdGFza19kYXRhX2Rlc3Ryb3kpOworLQorLSAgICAgICAgICAgICAgICAgICAgICAgIC8qIFRh c2sgaXMgc2V0IHVwIG5vdy4gUXVldWUgaXQgYW5kIGVuc3VyZSB3ZSBhcmUgd29ya2luZyBzb21l dGhpbmcuICovCistICAgICAgICAgICAgICAgICAgICAgICAgZ19xdWV1ZV9wdXNoX3RhaWwgKCZi YWNrbGlnaHQtPnRhc2tzLCB0YXNrKTsKKy0gICAgICAgICAgICAgICAgICAgICAgICBnc2RfYmFj a2xpZ2h0X3Byb2Nlc3NfdGFza3F1ZXVlIChiYWNrbGlnaHQpOworLSAgICAgICAgICAgICAgICB9 CisrICAgICAgICAgICAgICAgICAgLyogVGFzayBpcyBzZXQgdXAgbm93LiBRdWV1ZSBpdCBhbmQg ZW5zdXJlIHdlIGFyZSB3b3JraW5nIHNvbWV0aGluZy4gKi8KKysgICAgICAgICAgICAgICAgICBn X3F1ZXVlX3B1c2hfdGFpbCAoJmJhY2tsaWdodC0+dGFza3MsIHRhc2spOworKyAgICAgICAgICAg ICAgICAgIGdzZF9iYWNrbGlnaHRfcHJvY2Vzc190YXNrcXVldWUgKGJhY2tsaWdodCk7CisgCisg ICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgIH0KK0BAIC04MjMsNyArNzk5LDYgQEAg Z3NkX2JhY2tsaWdodF9pbml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICAgKmluaXRhYmxlLAor IHsKKyAgICAgICAgIEdzZEJhY2tsaWdodCAqYmFja2xpZ2h0ID0gR1NEX0JBQ0tMSUdIVCAoaW5p dGFibGUpOworICAgICAgICAgR25vbWVSUk91dHB1dCogb3V0cHV0ID0gTlVMTDsKKy0gICAgICAg IEdFcnJvciAqbG9naW5kX2Vycm9yID0gTlVMTDsKKyAKKyAgICAgICAgIGlmIChjYW5jZWxsYWJs ZSAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgIGdfc2V0X2Vycm9yX2xpdGVyYWwgKGVycm9y LCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX05PVF9TVVBQT1JURUQsCitAQCAtODMyLDM4ICs4MDcs NiBAQCBnc2RfYmFja2xpZ2h0X2luaXRhYmxlX2luaXQgKEdJbml0YWJsZSAgICAgICAqaW5pdGFi bGUsCisgICAgICAgICB9CisgCisgI2lmZGVmIF9fbGludXhfXworLSAgICAgICAgYmFja2xpZ2h0 LT5sb2dpbmRfcHJveHkgPQorLSAgICAgICAgICAgICAgICBnX2RidXNfcHJveHlfbmV3X2Zvcl9i dXNfc3luYyAoR19CVVNfVFlQRV9TWVNURU0sCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAwLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFNZU1RFTURfREJVU19OQU1FLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgU1lTVEVNRF9EQlVTX1BBVEgsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWVNURU1EX0RCVVNfSU5URVJGQUNF LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg JmxvZ2luZF9lcnJvcik7CistICAgICAgICBpZiAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHkpIHsK Ky0gICAgICAgICAgICAgICAgLyogQ2hlY2sgdGhhdCB0aGUgU2V0QnJpZ2h0bmVzcyBtZXRob2Qg ZG9lcyBleGlzdCAqLworLSAgICAgICAgICAgICAgICBnX2RidXNfcHJveHlfY2FsbF9zeW5jIChi YWNrbGlnaHQtPmxvZ2luZF9wcm94eSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIlNldEJyaWdodG5lc3MiLCBOVUxMLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBHX0RCVVNfQ0FMTF9GTEFHU19OT05FLCAtMSwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgJmxvZ2luZF9lcnJvcik7CistCist ICAgICAgICAgICAgICAgIGlmIChnX2Vycm9yX21hdGNoZXMgKGxvZ2luZF9lcnJvciwgR19EQlVT X0VSUk9SLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX0RCVVNfRVJS T1JfSU5WQUxJRF9BUkdTKSkgeworLSAgICAgICAgICAgICAgICAgICAgICAgIC8qIFdlIGFyZSBj YWxsaW5nIHRoZSBtZXRob2Qgd2l0aCBubyBhcmd1bWVudHMsIHNvCistICAgICAgICAgICAgICAg ICAgICAgICAgICogdGhpcyBpcyBleHBlY3RlZC4KKy0gICAgICAgICAgICAgICAgICAgICAgICAg Ki8KKy0gICAgICAgICAgICAgICAgICAgICAgICBnX2NsZWFyX2Vycm9yICgmbG9naW5kX2Vycm9y KTsKKy0gICAgICAgICAgICAgICAgfSBlbHNlIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICAv KiBGYWlsIG9uIGFueXRoaW5nIGVsc2UgKi8KKy0gICAgICAgICAgICAgICAgICAgICAgICBnX2Ns ZWFyX29iamVjdCAoJmJhY2tsaWdodC0+bG9naW5kX3Byb3h5KTsKKy0gICAgICAgICAgICAgICAg fQorLSAgICAgICAgfQorLQorLSAgICAgICAgaWYgKGxvZ2luZF9lcnJvcikgeworLSAgICAgICAg ICAgICAgICBnX3dhcm5pbmcgKCJObyBsb2dpbmQgZm91bmQ6ICVzIiwgbG9naW5kX2Vycm9yLT5t ZXNzYWdlKTsKKy0gICAgICAgICAgICAgICAgZ19lcnJvcl9mcmVlIChsb2dpbmRfZXJyb3IpOwor LSAgICAgICAgfQorLQorICAgICAgICAgLyogVHJ5IGZpbmRpbmcgYSB1ZGV2IGRldmljZS4gKi8K KyAgICAgICAgIGlmIChnc2RfYmFja2xpZ2h0X3VkZXZfaW5pdCAoYmFja2xpZ2h0KSkKKyAgICAg ICAgICAgICAgICAgZ290byBmb3VuZDsKK0BAIC05MDUsNyArODQ4LDYgQEAgZ3NkX2JhY2tsaWdo dF9maW5hbGl6ZSAoR09iamVjdCAqb2JqZWN0KQorICNpZmRlZiBfX2xpbnV4X18KKyAgICAgICAg IGdfYXNzZXJ0IChiYWNrbGlnaHQtPmFjdGl2ZV90YXNrID09IE5VTEwpOworICAgICAgICAgZ19h c3NlcnQgKGdfcXVldWVfaXNfZW1wdHkgKCZiYWNrbGlnaHQtPnRhc2tzKSk7CistICAgICAgICBn X2NsZWFyX29iamVjdCAoJmJhY2tsaWdodC0+bG9naW5kX3Byb3h5KTsKKyAgICAgICAgIGdfY2xl YXJfb2JqZWN0ICgmYmFja2xpZ2h0LT51ZGV2KTsKKyAgICAgICAgIGdfY2xlYXJfb2JqZWN0ICgm YmFja2xpZ2h0LT51ZGV2X2RldmljZSk7CisgICAgICAgICBpZiAoYmFja2xpZ2h0LT5pZGxlX3Vw ZGF0ZSkgewpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxh dGUgYi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQppbmRleCBhNzBlMjhi ZTVmYS4uOWNlYjFkMTNkZTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFl bW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRl CkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zZXR0aW5ncy1k YWVtb24nCiBwa2duYW1lPWdub21lLXNldHRpbmdzLWRhZW1vbgotdmVyc2lvbj0zLjM0LjEKLXJl dmlzaW9uPTIKK3ZlcnNpb249My4zNi4xCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgot Y29uZmlndXJlX2FyZ3MrPSItRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9ImNtYWtl IGRvY2Jvb2steHNsIGdsaWItZGV2ZWwgbGliZ2xpYi1kZXZlbCBsaWJ4c2x0IHBlcmwgcGtnLWNv bmZpZyIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWQ9ZmFsc2UiCitob3N0bWFrZWRlcGVuZHM9 ImNtYWtlIGRvY2Jvb2steHNsIGdldHRleHQgZ2xpYi1kZXZlbCBsaWJnbGliLWRldmVsIGxpYnhz bHQgcGVybCBwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9Ik5ldHdvcmtNYW5hZ2VyLWRldmVsIGFs c2EtbGliLWRldmVsIGNvbG9yZC1kZXZlbCBjdXBzLWRldmVsIGdjci1kZXZlbAogIGdlb2NsdWUy LWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgaWJ1cy1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBs aWJnbm9tZWtiZC1kZXZlbAogIGxpYmd3ZWF0aGVyLWRldmVsIGxpYm5vdGlmeS1kZXZlbCBsaWJy c3ZnLWRldmVsIGxpYndhY29tLWRldmVsIG5zcy1kZXZlbApAQCAtMTgsNyArMTgsNyBAQCBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUv Z25vbWUtc2V0dGluZ3MtZGFlbW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFt ZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09 OTk4MWEyMGJhYmY4ZGE3NzQ0YjdmYmUxNzViOWUzNjA3OGJmMDhmM2JmNjVmZTVhZWRlYjgyY2Zl MjdhYzExZgorY2hlY2tzdW09M2UzM2RiZDMxOWI1NjJhNWFiNjAyZGNhYjZkZTNjYTgxYjg1Zjgz NDY2NzJlOTBlYzYzMmIzNmJiZjE1ZWU0YgogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4K IAlob3N0bWFrZWRlcGVuZHMrPSIgcG9sa2l0IgoKRnJvbSBkYTQwZmExMDYwOGUxMzY5YjFmZDg2 YWY5M2NmZmY2MzZkYWU3NGY1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMTA6MTE6NTQgKzA2 MDAKU3ViamVjdDogW1BBVENIIDE3LzUxXSBnbm9tZS11c2VyLWRvY3M6IHVwZGF0ZSB0byAzLjM2 LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlIHwgOCArKysrLS0tLQog MSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtdXNl ci1kb2NzL3RlbXBsYXRlCmluZGV4IDRjYjU1Mzk2ZTM3Li5jYTk5MzM0NmUzYSAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS11 c2VyLWRvY3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn bm9tZS11c2VyLWRvY3MnCiBwa2duYW1lPWdub21lLXVzZXItZG9jcwotdmVyc2lvbj0zLjM0LjAK K3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdu dS1jb25maWd1cmUKQEAgLTEwLDcgKzEwLDcgQEAgZGVwZW5kcz0ieWVscCIKIHNob3J0X2Rlc2M9 IlVzZXIgZG9jdW1lbnRhdGlvbiBmb3IgR05PTUUiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iQ0MtQlktMy4wIgotaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0aHViLmNvbS9HTk9NRS9nbm9tZS11c2VyLWRvY3MiCi0jY2hhbmdlbG9nPSJodHRw czovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtdXNlci1kb2NzL21hc3Rl ci9ORVdTIgoraG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS11 c2VyLWRvY3MiCitjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9t ZS11c2VyLWRvY3MvLS9yYXcvMy4zNi4yL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0v JHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1j aGVja3N1bT04Zjk5MDdmZjE1ZmZmOTdkYTc1ZWNlNjQ1Y2M4Njc2NjcwM2FjNTRkNzE2ZDI1NTYz YmE2N2ZmZWQxYWYyNGVkCitjaGVja3N1bT0xOThmZTRjODM2Nzc1YTVkYzI1NDNhNmE1MjBkZmIw YWM1YmYyOTJjZGNiMzU4YTU3Yzg2ZjM1ZjcwNWU5OTU4CgpGcm9tIGJiZTFlNTRkODY5MzhlMGU2 YjJjODc3MjE3ZmMxNmRjNmMxNzJlMjYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAwMjoyMDo1 MiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTgvNTFdIGdub21lLWluaXRpYWwtc2V0dXA6IHVwZGF0 ZSB0byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZSB8 IDEwICsrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRl IGIvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlCmluZGV4IGFiYTVhMDk0YzI4 Li5jYWEzM2MyNjk1ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZQpAQCAtMSwx MCArMSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtaW5pdGlhbC1zZXR1cCcKIHBr Z25hbWU9Z25vbWUtaW5pdGlhbC1zZXR1cAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTIKK3Zl cnNpb249My4zNi4zCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgotY29uZmlndXJlX2Fy Z3M9Ii1Ec29mdHdhcmUtc291cmNlcz1kaXNhYmxlZCAtRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCIKK2NvbmZpZ3VyZV9hcmdzPSItRHBhcmVu dGFsX2NvbnRyb2xzPWRpc2FibGVkIC1Ec3lzdGVtZD1mYWxzZSIKK2hvc3RtYWtlZGVwZW5kcz0i Z2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iTmV0d29ya01hbmFn ZXItZGV2ZWwgYWNjb3VudHNzZXJ2aWNlLWRldmVsIGxpYmdsaWItZGV2ZWwKICBnbm9tZS1kZXNr dG9wLWRldmVsIGNoZWVzZS1kZXZlbCBsaWJnd2VhdGhlci1kZXZlbCB3ZWJraXQyZ3RrLWRldmVs CiAgZ25vbWUtb25saW5lLWFjY291bnRzLWRldmVsIGdkbS1kZXZlbCBsaWJwd3F1YWxpdHktZGV2 ZWwKQEAgLTE3LDQgKzE3LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9EZXNpZ24vT1MvSW5pdGlhbFNldHVwIgogZGlzdGZpbGVzPSIke0dO T01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09ZTcxZjEwZWY2YjYzMWNkOTJmZmRlNzc0ZTQxMzBiMzJiMjQ5NGI0 ZGY1ZWYyODgzNzVkOGIxOTU3ZWVhYmZhMQorY2hlY2tzdW09ZDhhOTMzZjhjODIyY2MyOTNjYzEw YjUzMjc3OWY4NTYyMzQyYWUyMjcxYjkyOTg3OWU4ZjEwODQ5MWY0YzI4NQoKRnJvbSBkMTIyNmM1 ZWUzNGNlNTUyMzNlNzk4ZDJiMmYzMTRkZGQwZDYyNTMxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIw MjAgMDg6Mzg6MTUgKzA2MDAKU3ViamVjdDogW1BBVENIIDE5LzUxXSBldm9sdXRpb24tZGF0YS1z ZXJ2ZXI6IHVwZGF0ZSB0byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2Vy dmVyL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyks IDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2 ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRl eCA0YWU4MjBiZTA2OC4uZWJmODE0NWY4OGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9u LWRhdGEtc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVy L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9u LWRhdGEtc2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4z Ni4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 Y21ha2UKIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9VT0E9T0ZG CkBAIC0xNyw3ICsxNyw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0 cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9y YXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1kYXRhLXNlcnZlci9nbm9t ZS0zLTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0xMzEyMmIyZWRk ZGI5ODMwNjIwN2QyYTM1ZDVjY2FlMjVhOTA3MDI3NjljYTBhMGI1MTY1M2I1OTg0OTg2Nzk2Citj aGVja3N1bT0xZjVmNDgxNzNkMGYyODgyMTlkNzNkNGYxOTNjYjkyMWFlNjMxOTMyYmE4NDAzMGYw NTc1MWM0MmJiMDAzZGIyCiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGlmIFsgLXogIiRDUk9TU19C VUlMRCIgXTsgdGhlbgoKRnJvbSBiZTlmYzEyYTVhYWY4ZjYzNjc5OWUzZGE5MjY4N2ZlM2FiM2Rk ZGMwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BB VENIIDIwLzUxXSBldm9sdXRpb246IHVwZGF0ZSB0byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvZXZv bHV0aW9uL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRl IGIvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKaW5kZXggNTYwZWQ5M2RhMDIuLmQ5NWMwN2Vi NzJjIDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2V2b2x1dGlvbi90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2V2b2x1dGlvbicKIHBrZ25hbWU9ZXZvbHV0aW9uCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0z LjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURF TkFCTEVfQVVUT0FSPU9GRiAtREVOQUJMRV9MSUJDUllQVFVJPU9GRiAtREVOQUJMRV9HVEtTUEVM TD1PRkYKQEAgLTE5LDcgKzE5LDcgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIsIExHUEwt My4wLW9yLWxhdGVyLCBHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVz ZXJjb250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24vZ25vbWUtMy0zNi9ORVdTIgogZGlzdGZpbGVz PSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODczYWNmMWRiZWMzOGU2N2UxNjkwNjQ2NDVhYzNhOWI5 YTk0NGJkMmI2MzMxNjFkZjZlNWYwNTcwMGUzNmNiOAorY2hlY2tzdW09NTRlMTZjYWEyODZjMDJk NGZlOTRiNDNlMzNhYmY1Y2Q2ZjNhMTUwMjE4MWJiOGNmNTU3YWFkYzg4NmI1Y2EwMwogc2hsaWJf cHJvdmlkZXM9ImxpYmV2b2x1dGlvbi1jYWxlbmRhci5zbyBsaWJldm9sdXRpb24tdXRpbC5zbyBs aWJlbWFpbC1lbmdpbmUuc28KICBsaWJldm9sdXRpb24tbWFpbC5zbyBsaWJldm9sdXRpb24tc2hl bGwuc28iCiAKCkZyb20gNDcwMzFjMzQ5MmIxODUwMjA5M2UwNzQyYjg0ZDNkZDdiZjMzOTE3MiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjI3ICswNjAwClN1YmplY3Q6IFtQQVRDSCAy MS81MV0gZXZvbHV0aW9uLWV3czogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQogc3JjcGtncy9ldm9s dXRpb24tZXdzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQppbmRleCA0ZmY4MTE2NDY2 Yy4uMzhmZDYyZDM5ZTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZXdzJwogcGtnbmFtZT1ldm9sdXRpb24tZXdz Ci12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxl PWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURMSUJFWEVDX0lOU1RBTExfRElSPS91c3IvbGliL2V2 b2x1dGlvbiIKQEAgLTEyLDQgKzEyLDQgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxv Zz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1ld3Mv Z25vbWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDA4ODNj N2QyMjc4MjdjYzVjNDQ2OGI3ZTMxYTNlZTM3MGJjZDdkNDFhNGRiYjk1MGFiNWRiMzZjOTU1MWFj MQorY2hlY2tzdW09N2E5N2E1OWIxMGY3YTQ4YTNiY2Y2ZDQ3NmM2YTJjMDY4ZWM1YzQ4YzU0NmE0 MzM4MTI2OTFiODMwMTc1MmQwNAoKRnJvbSA1YjQ1MDc4ODczNWRjNDMzZmZjODZhZmRhZmViMWQz YTYyNWUwZTI0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6MjA6MjMgKzA2MDAKU3ViamVj dDogW1BBVENIIDIyLzUxXSBhdGs6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvYXRr L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdGsvdGVtcGxhdGUgYi9zcmNwa2dz L2F0ay90ZW1wbGF0ZQppbmRleCA3YzE0YjExNjU5OC4uY2EyMmQzNjYxOTggMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvYXRrL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXRrL3RlbXBsYXRlCkBAIC0xLDE4 ICsxLDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdGsnCiBwa2duYW1lPWF0awotdmVyc2lv bj0yLjM0LjEKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgog YnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURpbnRyb3NwZWN0aW9uPSQodm9w dF9pZiBnaXIgdHJ1ZSBmYWxzZSkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1k ZXZlbCIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBt YWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCIKIHNob3J0X2Rlc2M9IlNldCBvZiBpbnRlcmZhY2Vz IGZvciBhY2Nlc3NpYmlsaXR5IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vZGV2ZWxvcGVyLmdub21lLm9yZy9hdGsvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2F0 ay8ke3ZlcnNpb24lLip9L2F0ay0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQ0ZjBlM2Iz ZDIxMjY1ZmNmMmJjMzcxZTExN2RhNTFjNDJlZGUxYTcxZjZkYjFjODM0ZTY5NzZiYjIwOTk3Y2IK K2NoZWNrc3VtPWZiNzYyNDdlMzY5NDAyYmUyM2YxZjVjNjVkMzhhOTYzOWMxMTY0ZDkzNGU0MGY2 YTljZjNjOWU5NmI2NTI3ODgKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlvbnMKIGJ1aWxkX29wdGlv bnM9ImdpciIKCkZyb20gNWU4NjBiNzMzNWI5OGJjNjJlYzRkNzVhZWUzZDQ4NGFhYmY5ZWQyOCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDEyOjQzOjUyICswNjAwClN1YmplY3Q6IFtQQVRDSCAy My81MV0gYXQtc3BpMi1jb3JlOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL2F0LXNw aTItY29yZS90ZW1wbGF0ZSB8IDkgKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRp b25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1jb3Jl L3RlbXBsYXRlIGIvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKaW5kZXggYjM4M2ZlOTli ZWQuLmZiNzk5YWY3ZTUyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1jb3JlJwogcGtnbmFtZT1hdC1zcGkyLWNvcmUK LXZlcnNpb249Mi4zNC4wCit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGRi dXMgZ2xpYi1kZXZlbCIKLW1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIGxpYlhleHQtZGV2ZWwg bGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbAotIGxpYlhldmllLWRldmVsIGRidXMtZGV2ZWwiCito b3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2ZWwiCittYWtl ZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsIGRidXMtZGV2 ZWwiCiBzaG9ydF9kZXNjPSJBc3Npc3RpdmUgVGVjaG5vbG9neSBTZXJ2aWNlIFByb3ZpZGVyIElu dGVyZmFjZSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdu b21lLm9yZy9HTk9NRS9hdC1zcGkyLWNvcmUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT1kNjI5Y2RiZDY3NGU1MzlmODkxMjAyODUxMmFmNTgzOTkwOTM4YzdiNDllMjUxODRjMTI2 YjAwMTIxZWYxMWM2CitjaGVja3N1bT04OGRhNTdkZTBhN2UzYzYwYmMzNDFhOTc0YTgwZmRiYTA5 MTYxMmRiMzU0N2M0MTBkNmRlYWIwMzljYTVjMDVhCiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25z CiBidWlsZF9vcHRpb25zPSJnaXIiCgpGcm9tIGMxNzI5ZTdiMjVkZTU3N2UwODMyMTc4NjE4ZDJj MDVlNWMzNDk1ODEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMjo0NDowMCArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMjQvNTFdIGF0LXNwaTItYXRrOiB1cGRhdGUgdG8gMi4zNC4yLgoKLS0tCiBz cmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3Bp Mi1hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCmluZGV4IDQzNTFi Nzk5NmYzLi5hYTdiODgzOWM5ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1hdGsnCiBwa2duYW1lPWF0LXNwaTItYXRrCi12 ZXJzaW9uPTIuMzQuMQordmVyc2lvbj0yLjM0LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCiBob3N0bWFrZWRlcGVuZHM9ImxpYnRvb2wgcGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRl dmVsIgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cDovL3d3dy5nbm9tZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03NzZk ZjkzMDc0OGZkZTcxYzEyOGJlNmMzNjZhOTg3Yjk4YjZlZTY2ZDUwOGVkOWM4ZGIyMzU1YmY0Yjlj YzE2CitjaGVja3N1bT05MDEzMjNjZWUwZWVmMDVjMDFlYzRkZWUwNmM3MDFhZWVjYTgxYTMxNGE3 ZDYwMjE2ZmEzNjMwMDVlMjdmNGYwCiAKIGF0LXNwaTItYXRrLWRldmVsX3BhY2thZ2UoKSB7CiAJ ZGVwZW5kcz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNp b259IgoKRnJvbSA5MmU2MjYyYmE0YWE4MTYyYTQ1NjA2N2QzNzNmZmQxZTEyODVjMTJiIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBXZWQsIDYgTWF5IDIwMjAgMTk6NDc6NTggKzA2MDAKU3ViamVjdDogW1BBVENIIDI1LzUx 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 c2MvUHl0aG9uMi9QeXRob24zfSIKIAlwa2dfaW5zdGFsbCgpIHsKCkZyb20gNThhYmI1NTU0NGRl NmNiNzdhNWViZTc4MTVjYTk0MjFjMGIzZDhiZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDE1 OjQzOjAxICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNi81MV0gZm9sa3M6IHVwZGF0ZSB0byAwLjE0 LjAuCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgfCAgNyArKysrLS0tCiBzcmNwa2dzL2Zv bGtzL3RlbXBsYXRlIHwgMTIgKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2Vy dGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2Nv bW1vbi9zaGxpYnMKaW5kZXggZjJlZjJjYTFmOTEuLjZmMDJkMjA0Mjk2IDEwMDY0NAotLS0gYS9j b21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTgzNiw5ICs4MzYsMTAgQEAgbGli ZG1yLnNvLjAuMSBkZWVwaW4tbW92aWUtcmVib3JuLTMuMi41XzEKIGxpYmdqcy5zby4wIGdqcy0x LjY1LjJfMQogbGlidGVsZXBhdGh5LWdsaWIuc28uMCB0ZWxlcGF0aHktZ2xpYi0wLjE1LjVfMQog bGliYWNjb3VudHNzZXJ2aWNlLnNvLjAgYWNjb3VudHNzZXJ2aWNlLTAuNi40XzEKLWxpYmZvbGtz LnNvLjI1IGZvbGtzLTAuOS41XzEKLWxpYmZvbGtzLXRlbGVwYXRoeS5zby4yNSBmb2xrcy0wLjku NV8xCi1saWJmb2xrcy1lZHMuc28uMjUgZm9sa3MtMC45LjVfMQorbGliZm9sa3Muc28uMjUgZm9s a3MtMC4xNC4wXzEKK2xpYmZvbGtzLWR1bW15LnNvLjI1IGZvbGtzLTAuMTQuMF8xCitsaWJmb2xr cy10ZWxlcGF0aHkuc28uMjUgZm9sa3MtMC4xNC4wXzEKK2xpYmZvbGtzLWVkcy5zby4yNSBmb2xr cy0wLjE0LjBfMQogbGlibmljZS5zby4xMCBsaWJuaWNlLTAuMS4wXzEKIGxpYmd1cG5wLWlnZC0x LjAuc28uNCBndXBucC1pZ2QtMC4yLjBfMQogbGlidGVsZXBhdGh5LWxvZ2dlci5zby4zIHRlbGVw YXRoeS1sb2dnZXItMC42LjBfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mb2xrcy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKaW5kZXggMzMxMGM1NGZhZGQuLmUyMWNhOWMxMDc3IDEw MDY0NAotLS0gYS9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZm9sa3MvdGVt cGxhdGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZvbGtzJwogcGtn bmFtZT1mb2xrcwotdmVyc2lvbj0wLjEzLjEKLXJldmlzaW9uPTIKK3ZlcnNpb249MC4xNC4wCity ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgotY29uZmlndXJl X2FyZ3M9Ii1EYl9sdG89ZmFsc2UgLURsaWJzb2NpYWx3ZWItYmFja2VuZD1mYWxzZSIKLWhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVsIHZhbGEgcHl0aG9uIGdv YmplY3QtaW50cm9zcGVjdGlvbgotIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCIKK2NvbmZp Z3VyZV9hcmdzPSItRGJfbHRvPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGlu dGx0b29sIGdsaWItZGV2ZWwgdmFsYSBweXRob24zIHB5dGhvbjMtZGJ1c21vY2sKKyBnb2JqZWN0 LWludHJvc3BlY3Rpb24gZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIgogbWFrZWRlcGVuZHM9 InJlYWRsaW5lLWRldmVsIHRlbGVwYXRoeS1nbGliLWRldmVsIHplaXRnZWlzdC1kZXZlbAogIGxp YmdlZTA4LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVsIgog ZGVwZW5kcz0iemVpdGdlaXN0IgpAQCAtMTUsNyArMTUsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJv bGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Gb2xrcyIKIGRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNkZjFjNjYzYjgyZmUyMTFhZWFkMmIzMWNhZTFm YzQxZDEyNGU4NTQzNjM3NTc2MmY2NzQ1YzQ1YmE0NmFhNWQKK2NoZWNrc3VtPWQ2ZTc3OGRhNjM3 ZDNiMzNmZDlhNmI0NTExNWU4MTU3ZDg4NjgyMTFkYzA4Yjk0M2QxMDc1YjVlYjcyODJiYjkKIAog Zm9sa3MtZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIke21ha2VkZXBlbmRzfSAke3NvdXJj ZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIDZkOGY4ZjhiMWU1OTVjNmM1NjNi YTk0YWNiZmNlNjk3MGMyYjgxYmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwODo0MTo1NiAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggMjcvNTFdIGZpbGUtcm9sbGVyOiB1cGRhdGUgdG8gMy4zNi4y LgoKLS0tCiBzcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hh bmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCmlu ZGV4IDVmYjc2ZDk3MzA3Li42YTBjMjgwZjBkNSAxMDA2NDQKLS0tIGEvc3JjcGtncy9maWxlLXJv bGxlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCkBAIC0xLDYg KzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZmlsZS1yb2xsZXInCiBwa2duYW1lPWZpbGUt cm9sbGVyCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxk X3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29s IHBrZy1jb25maWciCkBAIC0xMiw0ICsxMiw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxn b3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBh Z2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9GaWxlUm9sbGVyIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09YjkxNDRkZThmNTM2ZjU4M2VjMjlkNzAzYzJjMTcwYmYyZDAw YzZjMTY2Y2Q1ZTNmN2VmYWJkYTU1MWYxMDQ3OAorY2hlY2tzdW09MjY4ZjdmZGFkOGQyYTc4ZGZl ZDVlODJlYjg3MTBiYWQzODljMzExYjcyMDY2NmQ2ZjA3YTA0ZWQ1MTA1NmJkMgoKRnJvbSAxMWZl MzE2ZTE1NGQ0MjI3NGY2ZTQyZmNmMWFhZTBjNjMzMWRiNWMwIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5 IDIwMjAgMDc6NTg6MDIgKzA2MDAKU3ViamVjdDogW1BBVENIIDI4LzUxXSBkY29uZi1lZGl0b3I6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIHwg NCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIGIvc3JjcGtncy9kY29u Zi1lZGl0b3IvdGVtcGxhdGUKaW5kZXggZGUyNTBiYmM4YTkuLjNiOGNkOGNiNzJmIDEwMDY0NAot LS0gYS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Rjb25mLWVk aXRvci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rjb25m LWVkaXRvcicKIHBrZ25hbWU9ZGNvbmYtZWRpdG9yCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0z LjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRv Y2Jvb2steHNsIGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCkBAIC0xMCw0ICsx MCw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5v cmcvUHJvamVjdHMvZGNvbmYiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03MmVl ZDA1NjcwOTE3ZjhlNDMyMDBlNDBjY2M2YmU2MDIxMWYwYTg3YjAxNzUzNGVhYzFmZDZjNzE3M2Ew NjkzCitjaGVja3N1bT1lZGNlYzg4NjdmMDE4NTg5MTI1ZjE3NzQwNzc2MGM2NDJiYmJiNTJmZTUx MjJkYWFjNTkwNTIyM2Q2YjNlMWM3CgpGcm9tIGYzNzMwOTIwNTVjZjUwNTBjY2Y3ZjRhYTJiZjRl NTQ3YTE5YzljNWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMDoyMDo1NiArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMjkvNTFdIHRyYWNrZXI6IHVwZGF0ZSB0byAyLjMuNC4KCi0tLQogc3JjcGtn cy90cmFja2VyL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0 aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVt cGxhdGUgYi9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKaW5kZXggMzcwNzRjYjM0OGQuLmU4MTRm NzdjNzExIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy90cmFja2VyL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICd0cmFja2VyJwogcGtnbmFtZT10cmFja2VyCi12ZXJzaW9uPTIuMy4xCi1yZXZpc2lvbj0yCit2 ZXJzaW9uPTIuMy40CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVy PSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURkb2NzPWZhbHNlIC1EZnRzPXRydWUgLURmdW5jdGlv bmFsX3Rlc3RzPWZhbHNlCiAgLURqb3VybmFsPXRydWUgLURtYW49dHJ1ZSAtRG5ldHdvcmtfbWFu YWdlcj1lbmFibGVkIC1Ec3RlbW1lcj1kaXNhYmxlZAogIC1Ec3lzdGVtZF91c2VyX3NlcnZpY2Vz PW5vIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKK2hvc3Rt YWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKIG1ha2VkZXBl bmRzPSJkYnVzLWRldmVsIGxpYmdsaWItZGV2ZWwgaWN1LWRldmVsIGpzb24tZ2xpYi1kZXZlbAog IGxpYnNvdXAtZGV2ZWwgbGlieG1sMi1kZXZlbCBzcWxpdGUtZGV2ZWwgTmV0d29ya01hbmFnZXIt ZGV2ZWwKICBiYXNoLWNvbXBsZXRpb24iCkBAIC0xNiw3ICsxNiw3IEBAIG1haW50YWluZXI9Ik9y cGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vbGl2ZS5nbm9tZS5vcmcvVHJhY2tlciIKIGRpc3RmaWxlcz0i JHtHTk9NRV9TSVRFfS90cmFja2VyLyR7dmVyc2lvbiUuKn0vdHJhY2tlci0ke3ZlcnNpb259LnRh ci54eiIKLWNoZWNrc3VtPWI2NzQ4NzI2ZTQ2NWFkMmY0ZDk5MTU2MDYzNGIxZmQwZGY4ODQxZjNk OTgxYjNiODM3YzQxNjJhYmVkZjA4YTEKK2NoZWNrc3VtPTU3Nzk1MjI0NGFiOTc3Yzc4YjBiODhl MmY2M2M0MTk3ZWFiYTE2ZTRkNjZiZmY2OTJiN2Y1ODk5M2UwNjUxNmQKIAogaWYgWyAiJENST1NT X0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGRidXMiCgpGcm9tIDc2NmFkMjMx ODIzNGE0ZDllNTRkZjI2ZDhkOWIxODRiOWRlMTNhNTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgNiBNYXkgMjAy MCAxOTo1NjoxNCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzAvNTFdIG9yY2E6IHVwZGF0ZSB0byAz LjM2LjIuCgotLS0KIHNyY3BrZ3Mvb3JjYS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5n ZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L29yY2EvdGVtcGxhdGUgYi9zcmNwa2dzL29yY2EvdGVtcGxhdGUKaW5kZXggZjcwMjAyZTZkNzYu LjhhNzBjODQ5ZjZkIDEwMDY0NAotLS0gYS9zcmNwa2dzL29yY2EvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9vcmNhL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn b3JjYScKIHBrZ25hbWU9b3JjYQotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZp c2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTEzLDcg KzEzLDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIK IGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9Qcm9qZWN0cy9PcmNhIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzFh YzY0OGI2YmUzMTQ4OGMyNmZmOTU5MTE0Mjg3ODY5ZGY5Y2UzY2EyMTk5OWU0MGRlZDg3NzQxYzk4 ODMxZgorY2hlY2tzdW09Y2YwMDU1Yjc2ZjIxNTljMzNjOWQ5ZjdkZWJiNzY5NDM1YzIwMWJiZmE2 ZGNmMGYwMWZkYzU4ZTkyOTQ3YmY0MwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlo b3N0bWFrZWRlcGVuZHMrPSIgcHl0aG9uMy1nb2JqZWN0LWRldmVsIgoKRnJvbSBjNGM4YjU3NWEx YzczNjZlZjU5MDFkNGRiMTQ2MWVjZGQ2NTExMjRmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAg MTE6MDM6MjkgKzA2MDAKU3ViamVjdDogW1BBVENIIDMxLzUxXSBnbm9tZS1nZXR0aW5nLXN0YXJ0 ZWQtZG9jczogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0 YXJ0ZWQtZG9jcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWdldHRpbmct c3RhcnRlZC1kb2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9j cy90ZW1wbGF0ZQppbmRleCA1YmVjOTM0OTBiYS4uYmVkOWI2OTYxNjIgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9n bm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzJwogcGtnbmFtZT1nbm9t ZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcwotdmVyc2lvbj0zLjM0LjAKK3ZlcnNpb249My4zNi4yCiBy ZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTEx LDQgKzExLDQgQEAgbGljZW5zZT0iQ0MtQlktU0EtMy4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0 bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcyIKICNjaGFuZ2Vs b2c9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQt ZG9jcy9yYXcvbWFzdGVyL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1m NzBjZTJjYTIzYWQ3ODYyMTVmM2M5MmVjODU3ODNlM2FhYmVkMDdlNGY3ODcwMGZhMjdmOWIyY2Y3 NmUwM2RiCitjaGVja3N1bT0wNDk0Yjg5MTNhOTQ2YjY0NTA1MzZlMTIwYzE1NGFiZDI5MjM4ZWJi YTJmNTI3MzQ1OTJiMWY2NDVlNTIxZGM2CgpGcm9tIDAyZmYxNWI0YTAwYzUwZGIxMmU2NTQ1Nzdl NjFjMDJhMzdkZDI1YWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMTkgQXByIDIwMjAgMTY6NTE6NDIgKzA2MDAK U3ViamVjdDogW1BBVENIIDMyLzUxXSBnbm9tZS1wYW5lbDogdXBkYXRlIHRvIDMuMzYuMS4KCi0t LQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICB8IDMgKystCiBzcmNwa2dzL2dub21lLXBh bmVsL3RlbXBsYXRlIHwgNiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCsp LCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hs aWJzCmluZGV4IDZmMDJkMjA0Mjk2Li45OTk1NWJiNjFiOSAxMDA2NDQKLS0tIGEvY29tbW9uL3No bGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC01NjgsNyArNTY4LDggQEAgbGlicGFja2FnZWtp dC1nbGliMi5zby4xOCBQYWNrYWdlS2l0LTEuMS4xMl8xCiBsaWJwc2wuc28uNSBsaWJwc2wtMC4y MC4yXzEKIGxpYnNvdXAtMi40LnNvLjEgbGlic291cC0yLjM0LjBfMQogbGlic291cC1nbm9tZS0y LjQuc28uMSBsaWJzb3VwLWdub21lLTIuMzQuMF8xCi1saWJwYW5lbC1hcHBsZXQuc28uMyBnbm9t ZS1wYW5lbC0zLjMwLjBfMQorbGliZ25vbWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFf MQorbGlicGFuZWwtYXBwbGV0LnNvLjMgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnVuaW51bS5z by41IGxpYnVuaW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVuaXF1ZS0yLjkxLjRf MQogbGlid2Via2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8xCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1w bGF0ZQppbmRleCA3MGYyM2I4YjU1MS4uOWIwMGJmYWI2NTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv Z25vbWUtcGFuZWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXBhbmVsJwogcGtnbmFt ZT1nbm9tZS1wYW5lbAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTMKK3ZlcnNpb249My4zNi4x CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0i YXhfY3Zfem9uZWluZm9fdHpkaXI9L3Vzci9zaGFyZS96b25laW5mbyIKIGhvc3RtYWtlZGVwZW5k cz0iZ2V0dGV4dC1kZXZlbCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB0emRhdGEgZ2V0 dGV4dCIKQEAgLTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdGREwtMS4xLW9yLWxh dGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3Jn L1Byb2plY3RzL0dub21lUGFuZWwiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1h NmJjMDI1NTI1MmVlYjRiOTY0YmNiZTU1ZmQ3OTA4YjY5ZjkxNGMwNjJjNWVjOGRmZjVhYzAyNjJk MjliOTBkCitjaGVja3N1bT0xZTIxYjcyNmRkMzk3NTIzYWU3OWQyOWViNTM4YmNhZTA5ZTM0Mjdl MjNjY2Q2M2YyOGViMjVlZjM1NTJhYmQzCiBwYXRjaF9hcmdzPSItTnAxIgogCiBnbm9tZS1wYW5l bC1kZXZlbF9wYWNrYWdlKCkgewoKRnJvbSAzZmIxZjVlN2Q3OTIyMGQ1ZGJhZTQyZjczNmNjMzIw NDg3YTc1MjU3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBTdW4sIDE5IEFwciAyMDIwIDE3OjI2OjM2ICswNjAwClN1Ympl Y3Q6IFtQQVRDSCAzMy81MV0gbWV0YWNpdHk6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIGNvbW1v bi9zaGxpYnMgICAgICAgICAgICAgfCAxICsKIHNyY3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUgfCA2 ICsrKy0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggOTk5NTVi YjYxYjkuLjRjZGY3ZWQ3YzU1IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1v bi9zaGxpYnMKQEAgLTU3MCw2ICs1NzAsNyBAQCBsaWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4z NC4wXzEKIGxpYnNvdXAtZ25vbWUtMi40LnNvLjEgbGlic291cC1nbm9tZS0yLjM0LjBfMQogbGli Z25vbWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQogbGlicGFuZWwtYXBwbGV0LnNv LjMgZ25vbWUtcGFuZWwtMy4zNi4xXzEKK2xpYm1ldGFjaXR5LnNvLjEgbWV0YWNpdHktMy4zNi4x XzEKIGxpYnVuaW51bS5zby41IGxpYnVuaW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxp YnVuaXF1ZS0yLjkxLjRfMQogbGlid2Via2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYu Ml8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlIGIvc3JjcGtncy9tZXRh Y2l0eS90ZW1wbGF0ZQppbmRleCAxZDQxOTI2NzY2OC4uYmI3ZGZjMGJmYzkgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0 ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21ldGFjaXR5JwogcGtnbmFt ZT1tZXRhY2l0eQotdmVyc2lvbj0zLjMwLjEKK3ZlcnNpb249My4zNi4xCiByZXZpc2lvbj0xCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCi1ob3N0bWFrZWRlcGVuZHM9ImdldHRleHQtZGV2ZWwg Z2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgeWVscC10b29scyB6ZW5pdHkiCitob3N0bWFr ZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgeWVscC10b29s cyB6ZW5pdHkiCiBtYWtlZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbCBn dGsrMy1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbAogIGxpYmdsaWItZGV2ZWwgbGliZ3RvcC1kZXZl bCBsaWJTTS1kZXZlbCBsaWJYY29tcG9zaXRlLWRldmVsIGxpYlhkYW1hZ2UtZGV2ZWwKICBsaWJY Zml4ZXMtZGV2ZWwgbGliWGluZXJhbWEtZGV2ZWwgbGliWHJlbmRlci1kZXZlbCBsaWJYMTEtZGV2 ZWwgcGFuZ28tZGV2ZWwKQEAgLTE0LDQgKzE0LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQg PGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL21ldGFjaXR5IgogZGlzdGZpbGVz PSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09MGYxMzExYjdhYTM4ZGU3MWM2NjA4MGJkMmI3NDRkZTJj ZDk1ODBhZmNhZWU5YzYwOTdhN2QzZjVjNDIxNzk4YQorY2hlY2tzdW09MTFmMDc2OTNlMmIyNjY4 NDA3NTkwNjNhNGJjODA3MzQ2MDcwZThlN2ZlYzhmNTNjZDA3NTdmNjY2MmMxYjMyMwoKRnJvbSBi ZDM2OWQxNzhiYTAxZWQ2M2VjNzYyNmMxN2Y3NjIxMzVkNjExY2Y1IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5 IEFwciAyMDIwIDA1OjMyOjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNC81MV0gZ25vbWUtbWVu dXM6IHVwZGF0ZSB0byAzLjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUg fCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1tZW51cy90ZW1wbGF0ZQppbmRleCAyOTEwMjEyOWMzOC4uZTc4N2ZiOGRlNmIgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1t ZW51cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LW1lbnVzJwogcGtnbmFtZT1nbm9tZS1tZW51cwotdmVyc2lvbj0zLjMyLjAKLXJldmlzaW9uPTIK K3ZlcnNpb249My4zNi4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBi dWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIgpAQCAt MTIsNyArMTIsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5v cmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLW1lbnVzIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09Yzg1MGM2NGIyMDc0MjY1ZmU1OWUwOTlhMzQwYjg2 ODljZjNkZDQ2NThkYzlmZWRkZDJhYjVlOTVmMWE3NGI3NAorY2hlY2tzdW09ZDkzNDhmMzhiZGU5 NTZmYzMyNzUzYjI4YzFjZGUxOWMxNzViZmRiZjFmNGQ1YjA2MDAzYjNhYTA5MTUzYmIxZgogCiBi dWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gZmZm Njg3NDU3ZTMwNTZkMDViZDk1MzcyZWI1YmI4ZmY2MmM1NTdkNCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1h eSAyMDIwIDA2OjAzOjU1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNS81MV0gZ25vbWUtZmxhc2hi YWNrOiB1cGRhdGUgdG8gMy4zNi4zLgoKQWRkZWQgUEFNIGNvbmZpZyB0byBlbmFibGUgc2NyZWVu IGxvY2tpbmcuCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2su cGFtIHwgIDYgKysrKwogLi4uL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0 Y2ggIHwgMjggKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVt cGxhdGUgICAgICAgICAgICAgIHwgMjcgKysrKysrKysrKysrLS0tLS0tCiAzIGZpbGVzIGNoYW5n ZWQsIDUyIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9nbm9tZS1mbGFzaGJhY2svZmlsZXMvZ25vbWUtZmxhc2hiYWNrLnBhbQogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5w YXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2dub21lLWZs YXNoYmFjay5wYW0gYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJh Y2sucGFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5lYmJiNTFkZDBl OAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2dub21l LWZsYXNoYmFjay5wYW0KQEAgLTAsMCArMSw2IEBACisjJVBBTS0xLjAKK2F1dGggICAgICAgaW5j bHVkZQlzeXN0ZW0tYXV0aAorYXV0aCAgICAgICBvcHRpb25hbCAgICAgcGFtX2dub21lX2tleXJp bmcuc28KK2FjY291bnQgICAgaW5jbHVkZQlzeXN0ZW0tYXV0aAorcGFzc3dvcmQgICBpbmNsdWRl CXN5c3RlbS1hdXRoCitzZXNzaW9uICAgIGluY2x1ZGUJc3lzdGVtLWF1dGgKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaCBiL3NyY3Br Z3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZThhMmE1Yzg3ZmQKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gKQEAgLTAs MCArMSwyOCBAQAorZGlmZiAtLWdpdCBjb25maWd1cmUgY29uZmlndXJlCitpbmRleCAyNmNlYTUx Li5kMjQ2M2NjIDEwMDc1NQorLS0tIGNvbmZpZ3VyZQorKysrIGNvbmZpZ3VyZQorQEAgLTIwODQy LDggKzIwODQyLDggQEAgZmkKKyBpZiB0ZXN0ICJ4JHdpdGhfY29tcGl6X3Nlc3Npb24iICE9ICJ4 bm8iOyB0aGVuIDoKKyAKKyAgIGlmIHRlc3QgLW4gIiRQS0dfQ09ORklHIiAmJiBcCistICAgIHsg eyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05GSUcgLS1l eGlzdHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC45LjE0LjBcIiI7IH0g PiY1CistICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNvbXBpemNv bmZpZyA+PSAwLjkuMTQuMCIpIDI+JjUKKysgICAgeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19s aW5lbm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyBcImxp YmNvbXBpemNvbmZpZyA+PSAwLjguMTYuMFwiIjsgfSA+JjUKKysgICgkUEtHX0NPTkZJRyAtLWV4 aXN0cyAtLXByaW50LWVycm9ycyAibGliY29tcGl6Y29uZmlnID49IDAuOC4xNi4wIikgMj4mNQor ICAgYWNfc3RhdHVzPSQ/CisgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99 OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07IHRoZW4K K2RpZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5hYworaW5kZXggYjZlMTQ3MC4uZDI4 YTcwYiAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBjb25maWd1cmUuYWMKK0BAIC0zNDAs NyArMzQwLDcgQEAgQUNfQVJHX1dJVEgoW2NvbXBpei1zZXNzaW9uXSwKKyAgICAgICAgICAgICBb d2l0aF9jb21waXpfc2Vzc2lvbj0iJHdpdGh2YWwiXSwgW3dpdGhfY29tcGl6X3Nlc3Npb249ImF1 dG8iXSkKKyAKKyBBU19JRihbdGVzdCAieCR3aXRoX2NvbXBpel9zZXNzaW9uIiAhPSAieG5vIl0s IFsKKy0gIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQuMF0sCisr ICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjBdLAorICAgICAg ICAgICAgICAgICAgICBbZm91bmRfY29tcGl6PSJ5ZXMiXSwgW2ZvdW5kX2NvbXBpej0ibm8iXSkK KyAKKyAgIEFTX0lGKFt0ZXN0ICJ4JGZvdW5kX2NvbXBpeiIgPSAieHllcyJdLCBbCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZmxh c2hiYWNrL3RlbXBsYXRlCmluZGV4IGQzMjEyMGNhYjZmLi4wODU2NmRmNWZkNCAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1m bGFzaGJhY2svdGVtcGxhdGUKQEAgLTEsMjAgKzEsMjkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2dub21lLWZsYXNoYmFjaycKIHBrZ25hbWU9Z25vbWUtZmxhc2hiYWNrCi12ZXJzaW9uPTMuMzQu MgordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj1naXIKIGJ1aWxkX3N0 eWxlPWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1jb21waWxlLXdhcm5p bmdzPW1pbmltdW0iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2UgZ2xpYi1k ZXZlbCBnZXR0ZXh0IgotbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9w LXNjaGVtYXMtZGV2ZWwKLSBsaWJnbGliLWRldmVsIGdkay1waXhidWYtZGV2ZWwgdXBvd2VyLWRl dmVsIGlidXMtZGV2ZWwgcG9sa2l0LWRldmVsCi0gcHVsc2VhdWRpby1kZXZlbCBsaWJjYW5iZXJy YS1kZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRldmVsCi0gbGlieGtiZmls ZS1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCIKK2NvbmZp Z3VyZV9hcmdzPSItLXdpdGgtY29tcGl6LXNlc3Npb24gLS1lbmFibGUtY29tcGlsZS13YXJuaW5n cz1taW5pbXVtIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRldmVsIHBrZy1jb25maWcgYXV0 b21ha2UgZ2xpYi1kZXZlbCBnZXR0ZXh0IGxpYnRvb2wiCittYWtlZGVwZW5kcz0iZ3RrKzMtZGV2 ZWwgcGFtLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZWxvZ2luZC1kZXZl bAorIGdkbS1kZXZlbCBsaWJjb21waXpjb25maWctZGV2ZWwgbGliZ2xpYi1kZXZlbCBnZGstcGl4 YnVmLWRldmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsCisgcG9sa2l0LWRldmVsIHB1bHNlYXVk aW8tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxpYlgxMS1kZXZlbCBwYW5n by1kZXZlbAorIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRl c2t0b3AtZGV2ZWwgZ25vbWUtcGFuZWwtZGV2ZWwiCiBkZXBlbmRzPSJnbm9tZS1ibHVldG9vdGgg Z25vbWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24KLSBnbm9tZS1wYW5lbCBnbm9tZS10 aGVtZXMtc3RhbmRhcmQgbWV0YWNpdHkiCisgZ25vbWUtcGFuZWwgZ25vbWUtdGhlbWVzLWV4dHJh IG1ldGFjaXR5Igogc2hvcnRfZGVzYz0iR05PTUUgMyBzZXNzaW9uIHdpdGggc2ltaWxhciB1c2Vy IGV4cGVyaWVuY2UgdG8gdGhlIEdOT01FIDIueCBzZXJpZXMiCiBtYWludGFpbmVyPSJzaGl6b25p YyA8cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZUZsYXNoYmFjayIKIGRp c3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNiZTY1Mzg4Y2QyYzhmMzk3NDFiY2MwNWRh ODdlZjQwMDM1MTgzYTlhMzk1MDJkNjc2OTYyNDJjMmFlYjQ2OWMKK2NoZWNrc3VtPTJkYmE5ZWE0 MGYyZGE4MWMyMjk1NGE4Y2NjMjlmOGYxZmE0Y2E4Mzk1YTZiYjU1MjUwNjYzNTgzMjc1MWMxYTcK KworcHJlX2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkKK30KKworcG9zdF9pbnN0YWxs KCkgeworCXZpbnN0YWxsICR7RklMRVNESVJ9L2dub21lLWZsYXNoYmFjay5wYW0gNjQ0IC9ldGMv cGFtLmQgZ25vbWUtZmxhc2hiYWNrCisJdnNlZCAtaSAtZSAicy8gLS1zeXN0ZW1kLy9nIiAke0RF U1RESVJ9L3Vzci9saWJleGVjL2dub21lLWZsYXNoYmFjay17Y29tcGl6LG1ldGFjaXR5fQorfQoK RnJvbSAxNWQ5MGRmYzZhMzAwOGQ2NWNhMTMxMTIxNmZlMWE3YTZhYzE2NmZhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDA2OjU5OjQwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNi81MV0gZ3Jh cGhlbmU6IHVwZGF0ZSB0byAxLjEwLjAuCgotLS0KIHNyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUg fCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgYi9zcmNwa2dz L2dyYXBoZW5lL3RlbXBsYXRlCmluZGV4IGYyZmU4MWEzZjQ3Li5jYjczODVmZWRiNyAxMDA2NDQK LS0tIGEvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dyYXBoZW5lL3Rl bXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdncmFwaGVuZScK IHBrZ25hbWU9Z3JhcGhlbmUKLXZlcnNpb249MS44LjIKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4x MC4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1j b25maWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxzZSAtRGJlbmNobWFya3M9ZmFsc2UKK2NvbmZpZ3Vy ZV9hcmdzPSItRHRlc3RzPWZhbHNlIC1EYXJtX25lb249ZmFsc2UKICAtRGludHJvc3BlY3Rpb249 JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIK IG1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIgpAQCAtMTMsMTMgKzEzLDEzIEBAIG1haW50YWlu ZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBo b21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2ViYXNzaS9ncmFwaGVuZSIKIGRpc3RmaWxlcz0i JHtHTk9NRV9TSVRFfS9ncmFwaGVuZS8ke3ZlcnNpb24lLip9L2dyYXBoZW5lLSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09YjNmY2YyMDk5NmU1N2IxZjRkZjM5NDFjYWFjMTBmMTQzYmIyOTg5 MGE0MmY3YTY1NDA3Y2QxOTI3MWZjODlmNworY2hlY2tzdW09NDA2ZDk3ZjUxZGQ0Y2E2MWU5MWY4 NDY2NmEwMGMzZTk3NmQzZTY2N2NkMjQ4Yjc2ZDkyZmRiMzVjZTg3NjQ5OQogCiBidWlsZF9vcHRp b25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKIAogcG9zdF9pbnN0YWxsKCkg ewotCXZsaWNlbnNlIExJQ0VOU0UKKwl2bGljZW5zZSBMSUNFTlNFLnR4dCBMSUNFTlNFCiB9CiAK IGdyYXBoZW5lLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIDEyMzIwMjkwZGZjMzg0ZTI0MjQ3YzEw MzU0YjMxNGY4Zjc2NWZmODEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMTE6NTM6MjkgKzA2 MDAKU3ViamVjdDogW1BBVENIIDM3LzUxXSBtdXR0ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0K IGNvbW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysr Ky0tLS0tLS0KIC4uLi9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaCAgICAgICB8 IDExIC0tLS0tLS0tCiBzcmNwa2dzL211dHRlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAg ICAgfCAyNyArKysrKysrKysrLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlv bnMoKyksIDMzIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0dGVy L3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9u L3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggNGNkZjdlZDdjNTUuLjY4YjJiZTAyMTE1IDEw MDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTMwMTUsMTUg KzMwMTUsMTUgQEAgbGliZGVjb3JhdGlvbi5zby4wIGNvbXBpei1jb3JlLTAuOC4xNF8xCiBsaWJj b21waXpjb25maWcuc28uMCBsaWJjb21waXpjb25maWctMC44LjE0XzEKIGxpYmVtZXJhbGRlbmdp bmUuc28uMCBlbWVyYWxkLTAuOC4xNF8xCiBsaWJoYW5ndWwuc28uMSBsaWJoYW5ndWwtMC4xLjBf MQotbGlibXV0dGVyLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUu c28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY2x1dHRlci01LnNvLjAgbXV0dGVyLTMuMzQu MV8xCi1saWJtdXR0ZXItY29nbC1wYXRoLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXIt Y29nbC1wYXRoLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28gbXV0 dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJt dXR0ZXItY29nbC1wYW5nby01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGFu Z28tNS5zby4wIG11dHRlci0zLjM0LjFfMQorbGlibXV0dGVyLTYuc28uMCBtdXR0ZXItMy4zNi4y XzEKK2xpYm11dHRlci1jbHV0dGVyLTYuc28gbXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY2x1 dHRlci02LnNvLjAgbXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28gbXV0 dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28uMCBtdXR0ZXItMy4zNi4yXzEK K2xpYm11dHRlci1jb2dsLTYuc28gbXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC02LnNv LjAgbXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvIG11dHRlci0zLjM2 LjJfMQorbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zby4wIG11dHRlci0zLjM2LjJfMQogbGliZ2Vv Y2x1ZS0yLnNvLjAgZ2VvY2x1ZTItMi40LjRfMQogbGliZ2VwdWIuc28uMCBsaWJnZXB1Yi0wLjRf MQogbGlic2xvcHkuc28uNy41IHNsb3AtNy41XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVy L3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9tdXR0ZXIvcGF0 Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IGQ5MDk4ODg4N2MzLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211dHRlci9wYXRj aGVzL2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICsw LDAgQEAKLS0tLSBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMC0wOCAxOToxNToxMC4wMDAw MDAwMDAgKzAyMDAKLSsrKyBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMi0xNiAxNTo0NTo0 NC4wMzc2NDA1NDggKzAxMDAKLUBAIC00OCw3ICs0OCw3IEBACi0gYnVpbHRfaGVhZGVycyArPSBb Y29nbF9nbF9oZWFkZXJfaF0KLSAKLSBpZiBoYXZlX2VnbAotLSAgY29nbF9lZ2xfaW5jbHVkZXNf c3RyaW5nID0gJyNpbmNsdWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPicK LSsgIGNvZ2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2VnbC5oPlxuI2lu Y2x1ZGUgPEVHTC9lZ2xleHQuaD5cbiNpbmNsdWRlIDxFR0wvZWdsbWVzYWV4dC5oPicKLSBlbHNl Ci0gICBjb2dsX2VnbF9pbmNsdWRlc19zdHJpbmcgPSAnJwotIGVuZGlmCmRpZmYgLS1naXQgYS9z cmNwa2dzL211dHRlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCmluZGV4IDRl MGJkMzJiNjdkLi5iOTgzMTIzNjgwNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKQEAgLTEsMzQgKzEsMzUgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ211dHRlcicKIHBrZ25hbWU9bXV0dGVyCi12ZXJzaW9uPTMuMzQuMQot cmV2aXNpb249MgordmVyc2lvbj0zLjM2LjIKK3JldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2ly IgogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAt RHVkZXY9dHJ1ZSAtRG5hdGl2ZV9iYWNrZW5kPXRydWUKLSAtRHByb2ZpbGVyPWZhbHNlIC1EaW50 cm9zcGVjdGlvbj10cnVlIC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKKyAtRHBy b2ZpbGVyPWZhbHNlIC1EaW50cm9zcGVjdGlvbj10cnVlIC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jp bi9Yd2F5bGFuZAorIC1EeHdheWxhbmRfaW5pdGZkPWRpc2FibGVkIgogaG9zdG1ha2VkZXBlbmRz PSJnZXR0ZXh0IGdsaWItZGV2ZWwgcGtnLWNvbmZpZyB6ZW5pdHkgd2F5bGFuZC1kZXZlbCB4b3Jn LXNlcnZlciIKLW1ha2VkZXBlbmRzPSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25vbWUtZGVz a3RvcC1kZXZlbCBqc29uLWdsaWItZGV2ZWwKLSBsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxp Ylh0c3QtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliaW5wdXQtZGV2ZWwKLSBNZXNhTGliLWRl dmVsIHBpcGV3aXJlLWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsIHdheWxhbmQtcHJv dG9jb2xzCi0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIgorbWFrZWRlcGVuZHM9ImVsb2dp bmQtZGV2ZWwgZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdyYXBoZW5lLWRldmVsCisg anNvbi1nbGliLWRldmVsIGxpYmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBs aWJjYW5iZXJyYS1kZXZlbAorIGxpYmlucHV0LWRldmVsIE1lc2FMaWItZGV2ZWwgcGlwZXdpcmUt ZGV2ZWwgc3RhcnR1cC1ub3RpZmljYXRpb24tZGV2ZWwKKyB3YXlsYW5kLXByb3RvY29scyBnbm9t ZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMgemVu aXR5Igogc2hvcnRfZGVzYz0iTGlnaHR3ZWlnaHQgR1RLKzMgd2luZG93IG1hbmFnZXIiCiBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3Rz L011dHRlci8iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iYTE4MjZjZjg4YmRi ODFlNjM5NDNjYWMwMTRhOGU4YmNmMzVlYzE3OGM1MzI2NDQwMWY5YzcyZmRlYWI3NThlCi1zaGxp Yl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNS5zbyBsaWJtdXR0ZXItY29nbC01LnNvCi0g bGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTUuc28iCitjaGVj a3N1bT03NWIzNzY0ZWIwNTlmYzkzNWE1NDUyM2E2MmJlYzFiZWRiOTM1Mjg0MDQ2YjZkYWE1MDg2 OWIxOTVhZGRkYWY0CitzaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNi5zbyBsaWJt dXR0ZXItY29nbC02LnNvCisgbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBsaWJtdXR0ZXItY29n bC1wYXRoLTYuc28iCiAKIG11dHRlci1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9ImdzZXR0 aW5ncy1kZXNrdG9wLXNjaGVtYXMgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbCBsaWJYMTEtZGV2 ZWwKLQkgbGliWHRzdC1kZXZlbCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlkZXBl bmRzPSJnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIGdyYXBoZW5lLWRldmVsIGd0ayszLWRldmVs IGNsdXR0ZXItZGV2ZWwKKwkgbGliWDExLWRldmVsIGxpYlh0c3QtZGV2ZWwgbXV0dGVyLSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgog CXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSB1c3IvaW5jbHVkZQogCQl2bW92ZSB1c3IvbGliL3Br Z2NvbmZpZwotCQl2bW92ZSAidXNyL2xpYi9tdXR0ZXItNS8qLmdpciIKKwkJdm1vdmUgInVzci9s aWIvbXV0dGVyLTYvKi5naXIiCiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJfQogfQoKRnJvbSBi NzVjMmJhMDIzMzBhOGMzYTk1ZTYwNjJiZmQ4MDNjZDZiNGE5NTBhIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDQg TWF5IDIwMjAgMTQ6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENIIDM4LzUxXSBnbm9tZS1zaGVs bDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSB8 IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSBiL3NyY3BrZ3Mv Z25vbWUtc2hlbGwvdGVtcGxhdGUKaW5kZXggOTZjNWI4MGExOTQuLmI2N2FjNjUzZDkwIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUt c2hlbGwvdGVtcGxhdGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLXNoZWxsJwogcGtnbmFtZT1nbm9tZS1zaGVsbAotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249 My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgog Y29uZmlndXJlX2FyZ3M9Ii1Ec3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0iZ29iamVj dC1pbnRyb3NwZWN0aW9uIGd0ay1kb2MgbGlieHNsdCBwa2ctY29uZmlnIHB5dGhvbjMgc2Fzc2MK LSBhc2NpaWRvYyBwZXJsIGdsaWItZGV2ZWwgbXV0dGVyLWRldmVsIgoraG9zdG1ha2VkZXBlbmRz PSJnZXR0ZXh0IGdvYmplY3QtaW50cm9zcGVjdGlvbiBndGstZG9jIGxpYnhzbHQgcGtnLWNvbmZp ZyBweXRob24zIHNhc3NjCisgYXNjaWlkb2MgcGVybCBnanMtZGV2ZWwgZ2xpYi1kZXZlbCBtdXR0 ZXItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iYXQtc3BpMi1hdGsgY2FyaWJvdS1kZXZlbCBldm9sdXRp b24tZGF0YS1zZXJ2ZXItZGV2ZWwgZm9sa3MtZGV2ZWwKICBnY3ItZGV2ZWwgZ2pzLWRldmVsIGdu b21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1jb250cm9sLWNlbnRlci1kZXZlbCBnbm9tZS1kZXNr dG9wLWRldmVsCiAgZ25vbWUtbWVudXMtZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1k ZXZlbCBnc3RyZWFtZXIxLWRldmVsIGd0ayszLWRldmVsCkBAIC0yMSw0ICsyMSw0IEBAIGxpY2Vu c2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Q cm9qZWN0cy9Hbm9tZVNoZWxsIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29u dGVudC5jb20vR05PTUUvZ25vbWUtc2hlbGwvZ25vbWUtMy0zMC9ORVdTIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09Y2NkODY1NTliOWM4OTdjMjE5ZDJkMmViZmRiODQxM2VmYTRj MWJlZTg0NjQyN2M3NTBjYjhhMzAxYjNmNmQxZQorY2hlY2tzdW09M2IxMjliMmExZjFmMTY1NGEx MDEwOThlYThiOTFhNzNhODM2YWFkN2QxNjZmNTJkZDQ2YjFjNjAzN2VjMTc1MwoKRnJvbSA0Yjdm Y2EyMjIxMmM4NmM0NDk5YzZmY2Y5NjY0NWYyZGUyMWNkYTQ5IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDQgTWF5 IDIwMjAgMTQ6Mzg6MzIgKzA2MDAKU3ViamVjdDogW1BBVENIIDM5LzUxXSBnbm9tZS1zaGVsbC1l eHRlbnNpb25zOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXNoZWxsLWV4 dGVuc2lvbnMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNoZWxsLWV4 dGVuc2lvbnMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxh dGUKaW5kZXggOTcxNjhiNDBmNjYuLmUxZGQ0M2JiMTUyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2du b21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1zaGVsbC1l eHRlbnNpb25zL3RlbXBsYXRlCkBAIC0xLDE1ICsxLDE1IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdnbm9tZS1zaGVsbC1leHRlbnNpb25zJwogcGtnbmFtZT1nbm9tZS1zaGVsbC1leHRlbnNpb25z Ci12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFyY2hzPW5vYXJj aAogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGV4dGVuc2lvbl9zZXQ9YWxs IgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0 IHBrZy1jb25maWciCiBkZXBlbmRzPSJnbm9tZS1zaGVsbD49JHt2ZXJzaW9ufSBuYXV0aWx1cyB1 bnppcCIKIHNob3J0X2Rlc2M9IkV4dGVuc2lvbnMgZm9yIEdOT01FIHNoZWxsLCBpbmNsdWRpbmcg Y2xhc3NpYyBtb2RlIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgu b3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtp Lmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsL0V4dGVuc2lvbnMiCiBkaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIueHoiCi1jaGVja3N1bT1iMGFkNTExNDNiMWJmNDBkZWY0YTEwZjhmZDBhYjBmZmI0NzIx ODMwNDgwMDc5NGU2MmNhZGQyOWQwYWNjNzViCitjaGVja3N1bT05NzgyMDJkZTUxNWNkYjAzYTU4 ODU4NTljNTM4MzY2YmNhOGZkNzg3NjJjZTk4YjE3MmFjMmMwMTI2ZjgwMDNmCgpGcm9tIDlmM2E2 ZjQ5ODllZmNiYjI0ZGZiNjM4ODUxZmFhMjczM2FhYjhlNmUgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgNyBNYXkg MjAyMCAxMjoyNzo1NSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDAvNTFdIGdkbTogdXBkYXRlIHRv IDMuMzYuMi4KCi0tLQogc3JjcGtncy9nZG0vdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUg Y2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ2RtL3RlbXBsYXRlIGIvc3JjcGtncy9nZG0vdGVtcGxhdGUKaW5kZXggYmI1YjQ4Njky ZDQuLjA5OWM0Y2M5ZDRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dkbS90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dkbS90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ2RtJwogcGtnbmFtZT1nZG0KLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBj b25maWd1cmVfYXJncz0iJCh2b3B0X2VuYWJsZSBnaXIgaW50cm9zcGVjdGlvbikKLSAtLWRpc2Fi bGUtc2NoZW1hcy1jb21waWxlIC0tZGlzYWJsZS1zdGF0aWMgLS13aXRoLWRlZmF1bHQtcGFtLWNv bmZpZz1hcmNoCisgLS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtZGVmYXVsdC1wYW0tY29uZmlnPWFy Y2gKICAtLXdpdGgtYXQtc3BpLXJlZ2lzdHJ5ZC1kaXJlY3Rvcnk9L3Vzci9saWJleGVjIC0td2l0 aG91dC10Y3Atd3JhcHBlcnMKICAtLXdpdGgtc2NyZWVuc2hvdC1kaXI9L3Zhci9saWIvZ2RtL2dy ZWV0ZXIgLS1zYmluZGlyPS91c3IvYmluIC0td2l0aG91dC1wbHltb3V0aAogIC0td2l0aC14YXV0 aC1kaXI9L3J1bi9nZG0gLS13aXRoLXBpZC1maWxlPS9ydW4vZ2RtL2dkbS5waWQKQEAgLTE0LDE0 ICsxNCwxNCBAQCBob3N0bWFrZWRlcGVuZHM9ImRjb25mIGdldHRleHQgaXRzdG9vbCBwa2ctY29u ZmlnIgogbWFrZWRlcGVuZHM9ImFjY291bnRzc2VydmljZS1kZXZlbCBlbG9naW5kLWRldmVsIGdl dHRleHQtZGV2ZWwgZ2xpYi1kZXZlbAogIGlzby1jb2RlcyBsaWJTTS1kZXZlbCBsaWJjYW5iZXJy YS1kZXZlbCBuc3MtZGV2ZWwgcGFtLWRldmVsIHVwb3dlci1kZXZlbCIKIGRlcGVuZHM9Imdub21l LXNldHRpbmdzLWRhZW1vbiBnbm9tZS1zaGVsbCB4b3JnLXNlcnZlciB4b3JnLXNlcnZlci14d2F5 bGFuZAotIHhyZGIiCisgeHJkYiBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIgogY2hlY2tkZXBl bmRzPSJjaGVjay1kZXZlbCIKIHNob3J0X2Rlc2M9IkdOT01FIERpc3BsYXkgTWFuYWdlciIKIG1h aW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJH UEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVj dHMvR0RNIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4q fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTg1ZGY2NTdhYThkOTM2 MWFmNGZiMTIyMDE0ZDhmMTIzYTkzYmZlNDVhNzY2MmZiYTJiMzczZDgzOWRiZDhkMworY2hlY2tz dW09M2Y1NjFjMTBhZTJlNTk0MmIwMzAyNmYwMmMwYWE3ZDg3MTJlMzgyNzA4YjE3YTA5NzA4NzRk ZjgxNzViODNhOAogCiBjb25mX2ZpbGVzPSIKIAkvZXRjL2dkbS9jdXN0b20uY29uZgoKRnJvbSBj MDBkMGNiMDFmOGRmMGYyOWJmYTYxY2FmM2JhZDY4ZmNjOWQ1YWE1IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEg TWF5IDIwMjAgMTg6MjQ6MDIgKzA1MzAKU3ViamVjdDogW1BBVENIIDQxLzUxXSBidWRnaWUtZGVz a3RvcDogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogLi4u L3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoIHwgMTI3MTMgKysrKysr KysrKysrKysrKwogc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZSAgICAgICAgICAgICAg IHwgICAgIDkgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTI3MTggaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNo ZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRj aCBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0 LTE5MTgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmJmZjFi YWQwMzlmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVz L011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaApAQCAtMCwwICsxLDEyNzEzIEBACitG cm9tIDlkMDlhMWIxNWJiZjY2NzgwY2M4OWVmZjNjNGI4NGU2NjZiMGJmZGEgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCitGcm9tOiBEYXZpZCBNb2hhbW1lZCA8Zm9zc2ZyZWVkb21AdXNlcnMubm9y ZXBseS5naXRodWIuY29tPgorRGF0ZTogVHVlLCAxOCBGZWIgMjAyMCAwNjo0MDoxMiArMDAwMAor U3ViamVjdDogW1BBVENIXSBNdXR0ZXIgMy4zNiBzdXBwb3J0ICgjMTkxOCkKKworKiBBZGQgbXV0 dGVyIDMuMzUuMiBzdXBwb3J0CisKKyogTXV0dGVyIGNvbXBpbGVyIGZsYWdzIG5lZWRzIHRvIGJl IHNwZWNpZmllZCBiZWZvcmUgZGVwZW5kZW5jeSBjaGVja3MKKworKiBSZWdlbmVyYXRlIHZhcGkg Zm9yIDMuMzUuOTAKKworT3JpZ2luOiBodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJvamVjdC9i dWRnaWUtZGVza3RvcC9jb21taXRzLzlkMDlhMWIxNWIKKy0tLQorIHNyYy93bS9tZXNvbi5idWls ZCAgICAgICAgICAgICAgICB8ICAgMTIgKy0KKyBzcmMvd20vd20udmFsYSAgICAgICAgICAgICAg ICAgICAgfCAgIDE2ICstCisgdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEgICAgICAgICAgIHwgIDIw NCArCisgdmFwaS9Db2dsLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICAyNyArCisgdmFwaS9N ZXRhLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICA4MCArCisgdmFwaS9ncmFwaGVuZS1nb2Jq ZWN0LTEuMC52YXBpICAgIHwgIDY5MSArKysKKyB2YXBpL2xpYm11dHRlci02LmRlcHMgICAgICAg ICAgICAgfCAgICA2ICsKKyB2YXBpL2xpYm11dHRlci02LnZhcGkgICAgICAgICAgICAgfCAxNDc1 ICsrKysrCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhIHwgIDE0NyArCisgdmFw aS9tdXR0ZXItY2x1dHRlci02LmRlcHMgICAgICAgIHwgICAgNCArCisgdmFwaS9tdXR0ZXItY2x1 dHRlci02LnZhcGkgICAgICAgIHwgODY4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKwor IHZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYSAgICB8ICAxMjUgKworIHZhcGkvbXV0dGVy LWNvZ2wtNi5kZXBzICAgICAgICAgICB8ICAgIDEgKworIHZhcGkvbXV0dGVyLWNvZ2wtNi52YXBp ICAgICAgICAgICB8IDEwNzcgKysrKworIDE0IGZpbGVzIGNoYW5nZWQsIDEyNTQ5IGluc2VydGlv bnMoKyksIDMgZGVsZXRpb25zKC0pCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvQ2x1dHRlci02 Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvQ29nbC02Lm1ldGFkYXRhCisgY3Jl YXRlIG1vZGUgMTAwNjQ0IHZhcGkvTWV0YS02Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0 IHZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBp L2xpYm11dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9saWJtdXR0ZXItNi52 YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFs YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcworIGNyZWF0 ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorIGNyZWF0ZSBtb2RlIDEw MDY0NCB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQg dmFwaS9tdXR0ZXItY29nbC02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXIt Y29nbC02LnZhcGkKKworZGlmZiAtLWdpdCBhL3NyYy93bS9tZXNvbi5idWlsZCBiL3NyYy93bS9t ZXNvbi5idWlsZAoraW5kZXggZTM5Yjg2NzguLjRiY2MwZjllIDEwMDY0NAorLS0tIGEvc3JjL3dt L21lc29uLmJ1aWxkCisrKysgYi9zcmMvd20vbWVzb24uYnVpbGQKK0BAIC0yNSwxMSArMjUsMTkg QEAgaWYgbm90IGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgbWVzc2FnZSgnVXNpbmcgbmV3 IGxpYm11dHRlci00IEFCSSBmcm9tIEdOT01FIDMuMzInKQorICAgICAgICAgdmFwaV9tdXR0ZXIg PSAnbGlibXV0dGVyLTQnCisgICAgIGVsc2UKKy0gICAgICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRl bmN5KCdsaWJtdXR0ZXItNScsIHZlcnNpb246IGdub21lX21pbmltdW1fdmVyc2lvbikKKysgICAg ICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNScsIHZlcnNpb246IGdub21l X21pbmltdW1fdmVyc2lvbiwgcmVxdWlyZWQ6IGZhbHNlKQorKyAgICAgICAgYnVkZ2llX3dtX3N0 YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl81J10KKyAgICAgICAgIGlmIGRl cF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0 ZXItNSBBQkkgZnJvbSBHTk9NRSAzLjM0JykKKyAgICAgICAgICAgICB2YXBpX211dHRlciA9ICds aWJtdXR0ZXItNScKKy0gICAgICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJncyArPSBb Jy1EJywgJ0hBVkVfTVVUVEVSXzUnXQorKyAgICAgICAgZWxzZQorKyAgICAgICAgICAgIGRlcF9t dXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNicsIHZlcnNpb246IGdub21lX21pbmltdW1f dmVyc2lvbikKKysgICAgICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJncyArPSBbJy1E JywgJ0hBVkVfTVVUVEVSXzYnXQorKyAgICAgICAgICAgIGlmIGRlcF9tdXR0ZXIuZm91bmQoKQor KyAgICAgICAgICAgICAgICBkZXBfZ3JhcGhlbmUgPSBkZXBlbmRlbmN5KCdncmFwaGVuZS1nb2Jq ZWN0LTEuMCcsIHZlcnNpb246ICc+PSAxLjEwJykKKysgICAgICAgICAgICAgICAgbWVzc2FnZSgn VXNpbmcgbmV3IGxpYm11dHRlci02IEFCSSBmcm9tIEdOT01FIDMuMzYnKQorKyAgICAgICAgICAg ICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNicKKysgICAgICAgICAgICBlbmRpZgorICAg ICAgICAgZW5kaWYKKyAgICAgZW5kaWYKKyBlbmRpZgorZGlmZiAtLWdpdCBhL3NyYy93bS93bS52 YWxhIGIvc3JjL3dtL3dtLnZhbGEKK2luZGV4IGZlZTg5NDQzLi5iYjQ2Y2QwNiAxMDA2NDQKKy0t LSBhL3NyYy93bS93bS52YWxhCisrKysgYi9zcmMvd20vd20udmFsYQorQEAgLTEzNyw4ICsxMzcs MTMgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4KKyAgICAgcHVibGljIHN0 YXRpYyBzdHJpbmdbXT8gb2xkX2FyZ3M7CisgICAgIHB1YmxpYyBzdGF0aWMgYm9vbCB3YXlsYW5k ID0gZmFsc2U7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAgc3RhdGljIEdyYXBoZW5lLlBv aW50IFBWX0NFTlRFUjsKKysgICAgc3RhdGljIEdyYXBoZW5lLlBvaW50IFBWX05PUk07CisrI2Vs c2UKKyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZfQ0VOVEVSOworICAgICBzdGF0aWMgQ2x1 dHRlci5Qb2ludCBQVl9OT1JNOworKyNlbmRpZgorIAorICAgICBwcml2YXRlIE1ldGEuQmFja2dy b3VuZEdyb3VwPyBiYWNrZ3JvdW5kX2dyb3VwOworIAorQEAgLTE3MSwxMCArMTc2LDE1IEBAIHB1 YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgICAgICAgICAgbGljZW5zZSA9 ICJHUEwtMi4wIiwKKyAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9ICJCdWRnaWUgV2luZG93IE1h bmFnZXIiCisgICAgICAgICB9OworKyNpZiBIQVZFX01VVFRFUl82CisrICAgICAgICBQVl9DRU5U RVIgPSBHcmFwaGVuZS5Qb2ludCgpOworKyAgICAgICAgUFZfTk9STSA9IEdyYXBoZW5lLlBvaW50 KCk7CisrI2Vsc2UKKyAgICAgICAgIFBWX0NFTlRFUiA9IENsdXR0ZXIuUG9pbnQuYWxsb2MoKTsK KysgICAgICAgIFBWX05PUk0gPSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7CisrI2VuZGlmCisgICAg ICAgICBQVl9DRU5URVIueCA9IDAuNWY7CisgICAgICAgICBQVl9DRU5URVIueSA9IDAuNWY7Cist ICAgICAgICBQVl9OT1JNID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworICAgICAgICAgUFZfTk9S TS54ID0gMC4wZjsKKyAgICAgICAgIFBWX05PUk0ueSA9IDAuMGY7CisgICAgIH0KK0BAIC0xMDAx LDcgKzEwMTEsMTEgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4KKyAgICAg ICAgIHRpbGVfcHJldmlldy5zZXQoInNjYWxlLXgiLCBOT1RJRklDQVRJT05fTUFQX1NDQUxFX1gs ICJzY2FsZS15IiwgTk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9ZLAorICAgICAgICAgICAgICJwaXZv dC1wb2ludCIsIFBWX0NFTlRFUik7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAgICAgIC8v dGlsZV9wcmV2aWV3Lmxvd2VyKHdpbl9hY3Rvcik7CisrI2Vsc2UKKyAgICAgICAgIHRpbGVfcHJl dmlldy5sb3dlcih3aW5fYWN0b3IpOworKyNlbmRpZgorICAgICAgICAgdGlsZV9wcmV2aWV3LnRp bGVfcmVjdCA9IHRpbGVfcmVjdDsKKyAKKyAgICAgICAgIHRpbGVfcHJldmlldy5zaG93KCk7Citk aWZmIC0tZ2l0IGEvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEgYi92YXBpL0NsdXR0ZXItNi5tZXRh ZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi44YzI2YTEyMgorLS0t IC9kZXYvbnVsbAorKysrIGIvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEsMjA0 IEBACisrLy8gTm9uIG1pbmktb2JqZWN0CisrQWN0b3JCb3ggc3RydWN0CisrQ29sb3Igc3RydWN0 CisrRm9nIHN0cnVjdAorK0dlb21ldHJ5IHN0cnVjdAorK0tub3Qgc3RydWN0CisrUGF0aE5vZGUg c3RydWN0CisrUGVyc3BlY3RpdmUgc3RydWN0CisrVW5pdHMgc3RydWN0CisrVmVydGV4IHN0cnVj dAorKworKyoucmVmIHVub3duZWQKKysKKytpbml0LmFyZ3YgdW5vd25lZAorK2luaXRfd2l0aF9h cmdzCisrCS5hcmd2IHVub3duZWQKKytBY3RvcgorKwkuYXBwbHlfdHJhbnNmb3JtLm1hdHJpeCBy ZWYKKysJLmdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcy52ZXJ0cyBvdXQ9ZmFsc2UKKysJLmdl dF9hbGxvY2F0aW9uX3ZlcnRpY2VzLnZlcnRzIG91dD1mYWxzZQorK0NhbnZhcworKwkubmV3IHN5 bWJvbF90eXBlPSJjb25zdHJ1Y3RvciIKKytFdmVudC50eXBlI21ldGhvZCBuYW1lPSJnZXRfdHlw ZSIKKytJbWFnZQorKwkubmV3IHN5bWJvbF90eXBlPSJjb25zdHJ1Y3RvciIKKysKKysvLyA/Pz8K KytBY3Rvci5oYXNfcG9pbnRlciNtZXRob2QgbmFtZT0iZ2V0X2hhc19wb2ludGVyIgorK0luaXRF cnJvciBlcnJvcmRvbWFpbj1mYWxzZQorKworKy8vIE5vdCBhbGwgYmFja2luZyBzeW1ib2xzIGFy ZSBkZXByZWNhdGVkCisrQWN0b3IucGljayBkZXByZWNhdGVkPWZhbHNlCisrCisrLy8gTnVsbGFi bGUgcmV0dXJuIHZhbHVlcworK0FjdG9yCisrCS5nZXRfcGFyZW50IG51bGxhYmxlCisrdmFsdWVf Z2V0X2NvbG9yIG51bGxhYmxlCisrCisrLy8gbWV0aG9kL3ZpcnR1YWwtbWV0aG9kL3NpZ25hbCBk b24ndCBtYXRjaAorK0FjdG9yCisrCS5ldmVudCNtZXRob2QgbmFtZT0iZW1pdF9ldmVudCIKKysJ LmdldF9wYWludF92b2x1bWUjbWV0aG9kIHNraXAKKysJLnF1ZXVlX3JlZHJhdyNzaWduYWwgc2tp cAorKwkucXVldWVfcmVkcmF3I3ZpcnR1YWxfbWV0aG9kIHNraXAKKytDb250YWluZXIKKysJLmFk ZF9hY3RvciBza2lwPWZhbHNlCisrVGV4dAorKwkuYWN0aXZhdGUjbWV0aG9kIG5hbWU9InRyeV9h Y3RpdmF0ZSIKKysJLmluc2VydF90ZXh0I3NpZ25hbCBza2lwCisrVGV4dEJ1ZmZlci5nZXRfdGV4 dCN2aXJ0dWFsX21ldGhvZCBuYW1lPSJnZXRfdGV4dF93aXRoX2xlbmd0aCIKKysKKysvLyB2aXJ0 dWFsL2Fic3RyYWN0IGRpc3RpbmN0aW9uCisrQ29udGFpbmVyCisrCS5sb3dlciB2aXJ0dWFsCisr CS5yYWlzZSB2aXJ0dWFsCisrCS4qX2NoaWxkX21ldGEjdmlydHVhbF9tZXRob2QgdmlydHVhbAor KwkuZm9yZWFjaF93aXRoX2ludGVybmFscyN2aXJ0dWFsX21ldGhvZCB2aXJ0dWFsCisrCisrLy8g RGVmYXVsdCB2YWx1ZXMKKytDb250YWluZXIKKysJLmxvd2VyLnNpYmxpbmcgbnVsbGFibGUgZGVm YXVsdD1udWxsCisrCS5yYWlzZS5zaWJsaW5nIG51bGxhYmxlIGRlZmF1bHQ9bnVsbAorK1N0YWdl LnJlYWRfcGl4ZWxzCisrCS53aWR0aCBkZWZhdWx0PS0xCisrCS5oZWlnaHQgZGVmYXVsdD0tMQor K1RleHQKKysJLnBvc2l0aW9uX3RvX2Nvb3Jkcy5saW5lX2hlaWdodCBkZWZhdWx0PW51bGwKKysK KysvLyBSZXBhcmVudGVkIGZ1bmNzIG1ldGhvZHMgY2FuJ3QgYmUgaW5zdGFuY2UgbWV0aG9kcwor K2ZlYXR1cmVfYXZhaWxhYmxlIHNraXAKKytmZWF0dXJlX2dldF9hbGwgc2tpcAorKworKy8vIFNr aXBwZWQgYnkgZy1pIGZvciB1bmtub3duIHJlYXNvbnMKKytMYXlvdXRNYW5hZ2VyCisrCS5jcmVh dGVfY2hpbGRfbWV0YSBza2lwPWZhbHNlCisrCisrLy8gVmFyaWFkaWMgYXJndW1lbnRzCisrQWN0 b3IKKysJLmFuaW1hdGUgc2tpcD1mYWxzZQorKwkuYW5pbWF0ZV93aXRoX2FscGhhIHNraXA9ZmFs c2UKKysJLmFuaW1hdGVfd2l0aF90aW1lbGluZSBza2lwPWZhbHNlCisrQm94CisrCS5wYWNrIHNr aXA9ZmFsc2UKKysJLnBhY2tfYWZ0ZXIgc2tpcD1mYWxzZQorKwkucGFja19hdCBza2lwPWZhbHNl CisrCS5wYWNrX2JlZm9yZSBza2lwPWZhbHNlCisrQ29udGFpbmVyCisrCS5hZGRfdmFsaXN0IHNr aXA9ZmFsc2UKKysJLmNoaWxkX2dldCBza2lwPWZhbHNlCisrCS5jaGlsZF9zZXQgc2tpcD1mYWxz ZQorKwkucmVtb3ZlIHNraXA9ZmFsc2UKKysJLnJlbW92ZV92YWxpc3Qgc2tpcD1mYWxzZQorK0lu dGVydmFsCisrCS5uZXcgc2tpcD1mYWxzZQorKwkuZ2V0X2ludGVydmFsIHNraXA9ZmFsc2UKKysJ LnNldF9maW5hbCBza2lwPWZhbHNlCisrCS5zZXRfaW5pdGlhbCBza2lwPWZhbHNlCisrCS5zZXRf aW50ZXJ2YWwgc2tpcD1mYWxzZQorK0xheW91dE1hbmFnZXIKKysJLmNoaWxkX2dldCBza2lwPWZh bHNlCisrCS5jaGlsZF9zZXQgc2tpcD1mYWxzZQorK1NjcmlwdAorKwkuZ2V0X29iamVjdHMgc2tp cD1mYWxzZQorKworKy8vIENoYW5naW5nIGVycm9yIGRvbWFpbnMKKytUZXh0dXJlCisrCS5uZXdf ZnJvbV9maWxlIHRocm93cz0iQ2x1dHRlci5UZXh0dXJlRXJyb3IiCisrCisrLy8gU2tpcHBlZCB1 cHN0cmVhbSBmb3IgdW5rbm93biByZWFzb25zCisrQWxwaGEucmVnaXN0ZXJfZnVuYyBza2lwPWZh bHNlCisrSW50ZXJ2YWwucmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyBza2lwPWZhbHNlCisrZ2V0X29w dGlvbl9ncm91cCBza2lwPWZhbHNlCisrZ2V0X29wdGlvbl9ncm91cF93aXRob3V0X2luaXQgc2tp cD1mYWxzZQorK3RocmVhZHNfYWRkX2lkbGUgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX2lkbGVf ZnVsbCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfdGltZW91dCBza2lwPWZhbHNlCisrdGhyZWFk c19hZGRfdGltZW91dF9mdWxsIHNraXA9ZmFsc2UKKysKKysvLyBzdHJ1Y3QvY2xhc3MgY29uZnVz aW9uCisrQWN0b3JCb3gKKysJLm5ldyBza2lwCisrCS5mcm9tX3ZlcnRpY2VzIHNraXAKKytVbml0 cy5mcm9tXyogc2tpcAorK0NvbG9yCisrCS5uZXcgc2tpcAorK1ZlcnRleC5uZXcgc2tpcAorKwor Ky8vIENsYXNzIG1ldGhvZHMKKytjb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSBz a2lwCisrY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyBza2lwCisrCisrLy8g TW92ZSBzeW1ib2xzCisrZ2V0X2FjdG9yX2J5X2dpZCBwYXJlbnQ9IkNsdXR0ZXIuQWN0b3IiIG5h bWU9ImdldF9ieV9naWQiCisrdW5pdHNfZnJvbV8qIHNraXAKKysKKysvLyBDbGFzc2VzIG1hcmtl ZCBhcyBvdXQgYnV0IG5vdCBkb3VibGUgcHRyCisrQWN0b3IKKysJLmdldF9tYXJnaW4ubWFyZ2lu IG91dD1mYWxzZQorK0RyYWdBY3Rpb24KKysJLmdldF9kcmFnX2FyZWEuZHJhZ19hcmVhIG91dD1m YWxzZQorK0lucHV0RGV2aWNlCisrCS5nZXRfY29vcmRzLnBvaW50IG91dD1mYWxzZQorK1JlY3QK KysJLmdldF9jZW50ZXIuY2VudGVyIG91dD1mYWxzZQorKwkuaW50ZXJzZWN0aW9uLnJlcyBvdXQ9 ZmFsc2UKKysJLnVuaW9uLnJlcyBvdXQ9ZmFsc2UKKytUaW1lbGluZQorKwkuZ2V0X2N1YmljX2Jl emllcl9wcm9ncmVzcy5jXyogb3V0PWZhbHNlCisrWm9vbUFjdGlvbgorKwkuZ2V0X2ZvY2FsX3Bv aW50LnBvaW50IG91dD1mYWxzZQorKwkuZ2V0X3RyYW5zZm9ybWVkX2ZvY2FsX3BvaW50LnBvaW50 IG91dD1mYWxzZQorKworKy8vIFN0cnVjdCByZXR1cm4gdmFsdWVzCisrY29sb3JfZ2V0X3N0YXRp YyBudWxsYWJsZQorKworKy8vIFJlbW92ZSBmb3IgY2x1dHRlci0yLjAKKysvLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vCisrCisrU3RhZ2UKKysgCS5ldmVudCBuYW1lPSJlbWl0X2V2ZW50IgorKwor Ky8vICpFdmVudCBzaG91bGQgYmUgY29tcGFjdCBjbGFzc2VzIGRlcml2ZWQgZnJvbSBDbHV0dGVy LkV2ZW50CisrRXZlbnQudHlwZSBza2lwPWZhbHNlCisrQW55RXZlbnQgc3RydWN0PWZhbHNlIGJh c2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytCdXR0b25FdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90 eXBlPSJDbHV0dGVyLkV2ZW50IgorK0Nyb3NzaW5nRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlw ZT0iQ2x1dHRlci5FdmVudCIKKytLZXlFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0 dGVyLkV2ZW50IgorK01vdGlvbkV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIu RXZlbnQiCisrU2Nyb2xsRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVu dCIKKytTdGFnZVN0YXRlRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVu dCIKKytUb3VjaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisr VG91Y2hwYWRQaW5jaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQi CisrVG91Y2hwYWRTd2lwZUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZl bnQiCisrCisrLy8gS2V5c3ltcyB1c2VkIHRvIGJlIENMVVRURVJfWCBpbnN0ZWFkIG9mIENMVVRU RVJfS0VZX1gKKysqI2NvbnN0YW50IHNraXAKKytDT0dMIHNraXA9ZmFsc2UKKytDVVJSRU5UX1RJ TUUgc2tpcD1mYWxzZQorK0ZMQVZPVVIgc2tpcD1mYWxzZQorK1BBVEhfUkVMQVRJVkUgc2tpcD1m YWxzZQorK1BSSU9SSVRZX1JFRFJBVyBza2lwPWZhbHNlCisrCisrLy8gQ2x1dHRlciBkZXZzIGRv bid0IGxpa2UgdXMgY3JlYXRpbmcgbmVzdGVkIG5hbWVzcGFjZXMKKyt2YWx1ZV8qIG5hbWU9InZh bHVlXyguKykiIHBhcmVudD0iQ2x1dHRlci5WYWx1ZSIKKyt0aHJlYWRzXyogbmFtZT0idGhyZWFk c18oLispIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcyIKKyt0aHJlYWRzX2FkZF9pZGxlIG5hbWU9 ImFkZCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuSWRsZSIKKyt0aHJlYWRzX2FkZF9pZGxlX2Z1 bGwgbmFtZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLklkbGUiCisrdGhyZWFk c19hZGRfdGltZW91dCBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLlRpbWVvdXQi CisrdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIG5hbWU9ImFkZF9mdWxsIiBwYXJlbnQ9IkNsdXR0 ZXIuVGhyZWFkcy5UaW1lb3V0IgorKworKy8vIEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5CisrQ29s b3IuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1BvaW50LmFsbG9jIHN5bWJvbF90eXBl PSJmdW5jdGlvbiIKKytSZWN0LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytTaXplLmFs bG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytWZXJ0ZXguYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1 bmN0aW9uIgorKworK0JpbkFsaWdubWVudCBkZXByZWNhdGVkPWZhbHNlIGRlcHJlY2F0ZWRfc2lu Y2U9bnVsbAorK0JpbkFsaWdubWVudC4qIGRlcHJlY2F0ZWQKKytCaW5BbGlnbm1lbnQuc3RhcnQg ZGVwcmVjYXRlZD1mYWxzZQorK0JpbkxheW91dC5uZXcuKl9hbGlnbiBkZWZhdWx0PUNsdXR0ZXIu QmluQWxpZ25tZW50LlNUQVJUCisrCisrLy8gUG9zc2libHkga2VlcAorK0tFWV8qIHNraXA9ZmFs c2UgbmFtZT0iS0VZXyguKykiIHR5cGU9InVpbnQiIHBhcmVudD0iQ2x1dHRlci5LZXkiCitkaWZm IC0tZ2l0IGEvdmFwaS9Db2dsLTYubWV0YWRhdGEgYi92YXBpL0NvZ2wtNi5tZXRhZGF0YQorbmV3 IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4wOTJiNWUyOQorLS0tIC9kZXYvbnVs bAorKysrIGIvdmFwaS9Db2dsLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEsMjcgQEAKKytDb2dsIGNo ZWFkZXJfZmlsZW5hbWU9ImNvZ2wvY29nbC5oIgorKworK0NvbG9yIHN0cnVjdAorKyAgLm5ldyBz a2lwCisrICAuZnJlZSBza2lwCisrCisrY3JlYXRlX3Byb2dyYW0gc2tpcAorK2NyZWF0ZV9zaGFk ZXIgc2tpcAorKworKworK2lzX2JpdG1hcCBza2lwCisraXNfbWF0ZXJpYWwgc2tpcAorK2lzX29m ZnNjcmVlbiBza2lwCisraXNfcHJvZ3JhbSBza2lwCisraXNfc2hhZGVyIHNraXAKKytpc190ZXh0 dXJlIHNraXAKKytpc192ZXJ0ZXhfYnVmZmVyIHNraXAKKysKKytNYXRyaXggc3RydWN0CisrICAu Z2V0X2FycmF5IGFycmF5PXRydWUgYXJyYXlfbGVuZ3RoX2lkeD0tMQorKyAgLmdldF9pbnZlcnNl LmludmVyc2Ugb3V0PXRydWUKKysgIC5tdWx0aXBseSBza2lwCisrICAuaW5pdF9mcm9tX2FycmF5 IHNraXAKKysgIC5pbml0X2lkZW50aXR5IHNraXAKKysgIC50cmFuc2Zvcm1fcG9pbnQuKiByZWY9 dHJ1ZQorKworK3Byb2dyYW1fKiBza2lwCitkaWZmIC0tZ2l0IGEvdmFwaS9NZXRhLTYubWV0YWRh dGEgYi92YXBpL01ldGEtNi5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAwLi4xZDk4NDc3OAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9NZXRhLTYubWV0YWRh dGEKK0BAIC0wLDAgKzEsODAgQEAKKytCYWNrZW5kIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0 YS1iYWNrZW5kLmgiCisrQmFja2dyb3VuZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFj a2dyb3VuZC5oIgorK0JhY2tncm91bmRBY3RvciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEt YmFja2dyb3VuZC1hY3Rvci5oIgorK0JhY2tncm91bmRHcm91cCBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL21ldGEtYmFja2dyb3VuZC1ncm91cC5oIgorK0JhY2tncm91bmRJbWFnZSBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIgorK0JhY2tncm91bmRJbWFnZUNh Y2hlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgiCisrQmFy cmllciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2JhcnJpZXIuaCIKKytCYXJyaWVyRXZlbnQgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9iYXJyaWVyLmgiCisrQ2xvc2VEaWFsb2cgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIgorK0N1cnNvclRyYWNrZXIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9tZXRhLWN1cnNvci10cmFja2VyLmgiCisrRGlzcGxheSBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL2Rpc3BsYXkuaCIKKytEbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRh LWRuZC5oIgorK0lkbGVNb25pdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1pZGxlLW1v bml0b3IuaCIKKytJbmhpYml0U2hvcnRjdXRzRGlhbG9nIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv bWV0YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIKKytMYXVuY2hDb250ZXh0IGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvbWV0YS1sYXVuY2gtY29udGV4dC5oIgorK01ldGEgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tYWluLmgiCisrTW9uaXRvck1hbmFnZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLW1vbml0b3ItbWFuYWdlci5oIgorK1ByZWZlcmVuY2UgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9wcmVmcy5oIgorK1JlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIgorK1JlbW90ZUFjY2Vzc0hhbmRs ZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9sbGVyLmgi CisrU2V0dGluZ3MgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNldHRpbmdzLmgiCisrU2hh ZG93RmFjdG9yeSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc2hhZG93LWZhY3RvcnkuaCIK KytTaGFwZWRUZXh0dXJlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zaGFwZWQtdGV4dHVy ZS5oIgorK1NvdW5kUGxheWVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zb3VuZC1wbGF5 ZXIuaCIKKytTdGFnZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc3RhZ2UuaCIKKytTdGFy dHVwTm90aWZpY2F0aW9uIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zdGFydHVwLW5vdGlm aWNhdGlvbi5oIgorK1RoZW1lIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdGhlbWUuaCIKKytXaW5k b3cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS93aW5kb3cuaCIKKytXaW5kb3dBY3RvciBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93LWFjdG9yLmgiCisrV2luZG93R3JvdXAgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1ncm91cC5oIgorK1dpbmRvd1NoYXBlIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctc2hhcGUuaCIKKytXb3Jrc3BhY2UgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS93b3Jrc3BhY2UuaCIKKytXb3Jrc3BhY2VNYW5hZ2VyIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIgorK1gxMURpc3BsYXkgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXgxMS1kaXNwbGF5LmgiCisrUmVjdGFuZ2xlIHN0cnVj dAorK1BsdWdpbiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1Z2luLmgiCisrUGx1Z2lu SW5mbyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1Z2luLmgiCisrcHJlZnNfKiBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL3ByZWZzLmgiIHBhcmVudD0iTWV0YS5QcmVmcyIKKythZGRfdmVy Ym9zZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGls LmgiCisreDExX2Vycm9yX3RyYXBfcG9wIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9wdXNoIHBhcmVudD0iTWV0YS5VdGls IiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9wb3Bfd2l0 aF9yZXR1cm4gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK2V4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uIHBhcmVudD0iTWV0YS5VdGlsIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRfbG9jYWxlX2RpcmVjdGlvbiBwYXJl bnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZ3Jhdml0eV90 b19zdHJpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK2lzX2RlYnVnZ2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS91dGlsLmgiCisraXNfc3luY2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS91dGlsLmgiCisraXNfdmVyYm9zZSBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfd2F5bGFuZF9jb21wb3NpdG9yIHBhcmVudD0iTWV0 YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytsYXRlcl9hZGQgcGFyZW50 PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2xhdGVyX3JlbW92 ZSBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcG9w X25vX21zZ19wcmVmaXggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK3B1c2hfbm9fbXNnX3ByZWZpeCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVjdCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVtb3ZlX3ZlcmJvc2VfdG9waWMgcGFyZW50PSJNZXRh LlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Vuc2lnbmVkX2xvbmdfZXF1 YWwgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Vu c2lnbmVkX2xvbmdfaGFzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS91dGlsLmgiCisrc2hvd19kaWFsb2cgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK2dldF9zdGFnZV9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29t cG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dl dF93aW5kb3dfYWN0b3JzIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dpbmRvd19ncm91cF9mb3JfZGlzcGxh eSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3Np dG9yLW11dHRlci5oIgorK2dldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0i TWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVy LmgiCisrZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3Np dG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZGlzYWJs ZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZW5hYmxlX3VucmVkaXJlY3Rf Zm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytzZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIHBhcmVudD0i TWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVy LmgiCisrZW1wdHlfc3RhZ2VfaW5wdXRfcmVnaW9uIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZm9jdXNfc3RhZ2Vf d2luZG93IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2Nv bXBvc2l0b3ItbXV0dGVyLmgiCisra2V5YmluZGluZ3Nfc2V0X2N1c3RvbV9oYW5kbGVyIHBhcmVu dD0iTWV0YS5LZXlCaW5kaW5nIiBuYW1lPSJzZXRfY3VzdG9tX2hhbmRsZXIiCisrS2V5SGFuZGxl ckZ1bmMuZXZlbnQgdHlwZT0iQ2x1dHRlci5LZXlFdmVudD8iCisrZ2V0X2JhY2tlbmQgcGFyZW50 PSJNZXRhLkJhY2tlbmQiCisrV2luZG93LmZvY3VzI3NpZ25hbCBza2lwPXRydWUKKytXaW5kb3cu Z2V0X3h3aW5kb3cgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fY29udGV4dCBza2lwPWZhbHNlCisr c2V0X2dub21lX3dtX2tleWJpbmRpbmdzIHNraXA9ZmFsc2UKKytzZXRfd21fbmFtZSBza2lwPWZh bHNlCisraW5pdCBza2lwPWZhbHNlCisrcnVuIHNraXA9ZmFsc2UKKytzaG93X2RpYWxvZyBza2lw PWZhbHNlCisrZ2V0X2JhY2tlbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tlbmQu aCIKK2RpZmYgLS1naXQgYS92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgYi92YXBpL2dy YXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAw MDAwMC4uNjk4MDE1MzUKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvZ3JhcGhlbmUtZ29iamVj dC0xLjAudmFwaQorQEAgLTAsMCArMSw2OTEgQEAKKysvKiBncmFwaGVuZS1nb2JqZWN0LTEuMC52 YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAo Y3ByZWZpeCA9ICJHcmFwaGVuZSIsIGdpcl9uYW1lc3BhY2UgPSAiR3JhcGhlbmUiLCBnaXJfdmVy c2lvbiA9ICIxLjAiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiZ3JhcGhlbmVfIildCisrbmFtZXNw YWNlIEdyYXBoZW5lIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdv YmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2JveF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9i b3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMg c3RydWN0IEJveCB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19ib3ggKEdyYXBoZW5lLkJveCBi KTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50 KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGVtcHR5ICgpOworKwkJ cHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5C b3ggZXhwYW5kIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5C b3ggZXhwYW5kX3NjYWxhciAoZmxvYXQgc2NhbGFyKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3gg ZXhwYW5kX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdmVjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5TcGhl cmUgZ2V0X2JvdW5kaW5nX3NwaGVyZSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdl dF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJcHVibGljIGZs b2F0IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfbWF4ICgp OworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21pbiAoKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5WZWMzIGdldF9zaXplICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3ZlcnRpY2VzIChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlZlYzMgdmVydGljZXNbOF0p OworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBHcmFwaGVuZS5Cb3g/IGluZmluaXRlICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu Qm94PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBtaW4sIEdyYXBoZW5lLlBvaW50M0Q/IG1heCk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV9ib3ggKEdyYXBoZW5l LkJveCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fcG9p bnRzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BvaW50cyIsIGFycmF5X2xlbmd0 aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5lLlBvaW50 M0RbXSBwb2ludHMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21f dmVjMyAoR3JhcGhlbmUuVmVjMz8gbWluLCBHcmFwaGVuZS5WZWMzPyBtYXgpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fdmVjdG9ycyAoW0NDb2RlIChhcnJheV9s ZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlf bGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1tdIHZlY3RvcnMpOworKwkJcHVi bGljIGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5Cb3ggYiwgb3V0IEdyYXBoZW5lLkJveCBy ZXMpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gbWludXNfb25lICgp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25lICgpOworKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25lX21pbnVzX29uZSAoKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5Cb3ggdW5pb24gKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2V1bGVy X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2V1bGVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBFdWxlciB7CisrCQlwdWJsaWMgYm9v bCBlcXVhbCAoR3JhcGhlbmUuRXVsZXIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JldGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9nYW1tYSAoKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5FdWxlck9yZGVyIGdldF9vcmRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsK KysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBm bG9hdCB6KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fZXVs ZXIgKEdyYXBoZW5lLkV1bGVyPyBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVs ZXI/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeD8gbSwgR3JhcGhlbmUuRXVsZXJP cmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9t X3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24/IHEsIEdyYXBoZW5lLkV1bGVyT3JkZXIg b3JkZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcmFkaWFucyAoZmxvYXQgeCwgZmxvYXQgeSwgZmxv YXQgeiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5FdWxlcj8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IHYsIEdyYXBoZW5lLkV1 bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRf d2l0aF9vcmRlciAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgR3JhcGhlbmUuRXVsZXJPcmRl ciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXIgcmVvcmRlciAoR3JhcGhlbmUuRXVs ZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHRvX21hdHJpeCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVy bmlvbiB0b19xdWF0ZXJuaW9uICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgdG9fdmVjMyAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5o IiwgY25hbWUgPSAiZ3JhcGhlbmVfZnJ1c3R1bV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9mcnVz dHVtX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGlj IHN0cnVjdCBGcnVzdHVtIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVu ZS5Qb2ludDNEIHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBib29sIGVxdWFsIChHcmFwaGVuZS5GcnVzdHVtIGIpOworKwkJcHVibGljIHZvaWQgZ2V0X3Bs YW5lcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBHcmFwaGVuZS5QbGFuZSBw bGFuZXNbNl0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1c3R1bT8gaW5pdCAoR3Jh cGhlbmUuUGxhbmUgcDAsIEdyYXBoZW5lLlBsYW5lIHAxLCBHcmFwaGVuZS5QbGFuZSBwMiwgR3Jh cGhlbmUuUGxhbmUgcDMsIEdyYXBoZW5lLlBsYW5lIHA0LCBHcmFwaGVuZS5QbGFuZSBwNSk7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0X2Zyb21fZnJ1c3R1bSAoR3Jh cGhlbmUuRnJ1c3R1bSBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1c3R1bT8g aW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG1hdHJpeCk7CisrCQlwdWJsaWMgYm9v bCBpbnRlcnNlY3RzX2JveCAoR3JhcGhlbmUuQm94IGJveCk7CisrCQlwdWJsaWMgYm9vbCBpbnRl cnNlY3RzX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHNwaGVyZSk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5l X21hdHJpeF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9tYXRyaXhfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVibGljIGJvb2wgZGVjb21wb3NlIChvdXQgR3Jh cGhlbmUuVmVjMyB0cmFuc2xhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNjYWxlLCBvdXQgR3JhcGhl bmUuUXVhdGVybmlvbiByb3RhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNoZWFyLCBvdXQgR3JhcGhl bmUuVmVjNCBwZXJzcGVjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZGV0ZXJtaW5hbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbF9mYXN0IChHcmFwaGVuZS5N YXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjNCBnZXRfcm93ICh1aW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZhbHVlICh1aW50IHJvdywgdWludCBjb2wpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94X3NjYWxlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeF90 cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfeV9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3lfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3RyYW5zbGF0aW9uICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0 cml4PyBpbml0X2Zyb21fMmQgKGRvdWJsZSB4eCwgZG91YmxlIHl4LCBkb3VibGUgeHksIGRvdWJs ZSB5eSwgZG91YmxlIHhfMCwgZG91YmxlIHlfMCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV9mbG9hdCAo W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHZbMTZdKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5p dF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV92 ZWM0IChHcmFwaGVuZS5WZWM0IHYwLCBHcmFwaGVuZS5WZWM0IHYxLCBHcmFwaGVuZS5WZWM0IHYy LCBHcmFwaGVuZS5WZWM0IHYzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcnVzdHVtIChmbG9hdCBsZWZ0LCBm bG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQg el9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuTWF0cml4PyBpbml0X2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2xvb2tfYXQg KEdyYXBoZW5lLlZlYzMgZXllLCBHcmFwaGVuZS5WZWMzIGNlbnRlciwgR3JhcGhlbmUuVmVjMyB1 cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5NYXRyaXg/IGluaXRfb3J0aG8gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCB0 b3AsIGZsb2F0IGJvdHRvbSwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGlu aXRfcGVyc3BlY3RpdmUgKGZsb2F0IGZvdnksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBm bG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfcm90YXRlIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUu VmVjMyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9zY2FsZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg eik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5NYXRyaXg/IGluaXRfc2tldyAoZmxvYXQgeF9za2V3LCBmbG9hdCB5X3NrZXcpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0 cml4PyBpbml0X3RyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggaW50ZXJwb2xhdGUgKEdy YXBoZW5lLk1hdHJpeCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBib29sIGludmVyc2UgKG91dCBHcmFwaGVuZS5NYXRyaXggcmVzKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzXzJkICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfYmFja2ZhY2Vf dmlzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29s IGlzX2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGJvb2wgaXNfc2luZ3VsYXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuTWF0cml4IG11bHRpcGx5IChHcmFwaGVuZS5NYXRyaXggYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUu TWF0cml4IGIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHBlcnNwZWN0aXZlIChmbG9h dCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBw cmludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5Qb2ludCBwcm9qZWN0X3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWFkIHByb2plY3RfcmVjdCAoR3Jh cGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5SZWN0IHByb2plY3RfcmVjdF9ib3VuZHMgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZsb2F0IGFu Z2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxlciBlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9xdWF0ZXJuaW9uIChH cmFwaGVuZS5RdWF0ZXJuaW9uIHEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZvaWQgcm90YXRlX3ggKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV95IChmbG9hdCBhbmdsZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfeiAoZmxvYXQgYW5n bGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUg KGZsb2F0IGZhY3Rvcl94LCBmbG9hdCBmYWN0b3JfeSwgZmxvYXQgZmFjdG9yX3opOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld194eSAoZmxvYXQgZmFj dG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNrZXdf eHogKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdm9pZCBza2V3X3l6IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIGJvb2wgdG9fMmQgKG91dCBkb3VibGUgeHgsIG91dCBkb3VibGUgeXgs IG91dCBkb3VibGUgeHksIG91dCBkb3VibGUgeXksIG91dCBkb3VibGUgeF8wLCBvdXQgZG91Ymxl IHlfMCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0b19m bG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCB2WzE2XSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCB0cmFu c2Zvcm1fYm91bmRzIChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIEdyYXBoZW5lLkJveCB0cmFuc2Zvcm1fYm94IChHcmFwaGVuZS5Cb3gg Yik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQgdHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHRyYW5zZm9ybV9wb2ludDNk IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlJheSB0cmFuc2Zvcm1fcmF5IChHcmFwaGVuZS5SYXkgcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhZCB0cmFuc2Zv cm1fcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNmb3JtX3NwaGVyZSAoR3JhcGhlbmUuU3Bo ZXJlIHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzMgdHJhbnNmb3JtX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCB0cmFuc2Zvcm1fdmVjNCAoR3Jh cGhlbmUuVmVjNCB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2 b2lkIHRyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb3MpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0cmFuc3Bvc2UgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCB1bnBy b2plY3RfcG9pbnQzZCAoR3JhcGhlbmUuTWF0cml4IG1vZGVsdmlldywgR3JhcGhlbmUuUG9pbnQz RCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUmVjdCB1bnRyYW5zZm9ybV9ib3VuZHMgKEdyYXBoZW5lLlJlY3QgciwgR3JhcGhlbmUuUmVj dCBib3VuZHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wg dW50cmFuc2Zvcm1fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHAsIEdyYXBoZW5lLlJlY3QgYm91bmRz LCBvdXQgR3JhcGhlbmUuUG9pbnQgcmVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcGxhbmVfdCIsIHR5 cGVfaWQgPSAiZ3JhcGhlbmVfcGxhbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFBsYW5lIHsKKysJCXB1YmxpYyBmbG9hdCBkaXN0 YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3Jh cGhlbmUuUGxhbmUgYik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbnN0YW50ICgpOworKwkJcHVi bGljIEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlBsYW5lPyBpbml0IChHcmFwaGVuZS5WZWMzPyBub3JtYWwsIGZsb2F0IGNvbnN0YW50KTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcGxhbmUgKEdyYXBo ZW5lLlBsYW5lIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9m cm9tX3BvaW50IChHcmFwaGVuZS5WZWMzIG5vcm1hbCwgR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3BvaW50cyAoR3Jh cGhlbmUuUG9pbnQzRCBhLCBHcmFwaGVuZS5Qb2ludDNEIGIsIEdyYXBoZW5lLlBvaW50M0QgYyk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBo ZW5lLlZlYzQgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBuZWdhdGUgKCk7CisrCQlw dWJsaWMgR3JhcGhlbmUuUGxhbmUgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSB0cmFuc2Zvcm0gKEdyYXBoZW5lLk1h dHJpeCBtYXRyaXgsIEdyYXBoZW5lLk1hdHJpeD8gbm9ybWFsX21hdHJpeCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdy YXBoZW5lX3BvaW50X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BvaW50X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBQb2ludCB7Cisr CQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwkJcHVibGljIGZsb2F0IGRp c3RhbmNlIChHcmFwaGVuZS5Qb2ludCBiLCBvdXQgZmxvYXQgZF94LCBvdXQgZmxvYXQgZF95KTsK KysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Qb2ludCBiKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0X2Zyb21fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHNy Yyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5Qb2ludD8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5Qb2ludCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUG9pbnQgYiwgZG91YmxlIGZh Y3Rvcik7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5Qb2ludCBiLCBmbG9hdCBlcHNp bG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMyIHRvX3ZlYzIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/ IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdv YmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BvaW50M2RfdCIsIGxvd2VyX2Nhc2VfY3N1ZmZp eCA9ICJwb2ludDNkIiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wb2ludDNkX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBQb2ludDNEIHsK KysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMgZmxvYXQg ejsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGNyb3NzIChHcmFwaGVuZS5Qb2ludDNEIGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGZsb2F0IGRpc3RhbmNl IChHcmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5WZWMzIGRlbHRhKTsKKysJCXB1Ymxp YyBmbG9hdCBkb3QgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAo R3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/ IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUG9pbnQzRD8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHNyYyk7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0X2Zyb21fdmVjMyAoR3JhcGhl bmUuVmVjMyB2KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGludGVycG9sYXRlIChHcmFw aGVuZS5Qb2ludDNEIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGZsb2F0IGxlbmd0aCAo KTsKKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlBvaW50M0QgYiwgZmxvYXQgZXBzaWxv bik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3JtYWxpemVf dmlld3BvcnQgKEdyYXBoZW5lLlJlY3Qgdmlld3BvcnQsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9m YXIpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgc2NhbGUgKGZsb2F0IGZhY3Rvcik7Cisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlBvaW50M0Q/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3F1YWRfdCIs IHR5cGVfaWQgPSAiZ3JhcGhlbmVfcXVhZF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhZCB7CisrCQlwdWJsaWMgR3JhcGhlbmUu UmVjdCBib3VuZHMgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoR3JhcGhlbmUuUG9pbnQg cCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gZ2V0X3BvaW50ICh1aW50IGlu ZGV4Xyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0IChHcmFwaGVuZS5Q b2ludCBwMSwgR3JhcGhlbmUuUG9pbnQgcDIsIEdyYXBoZW5lLlBvaW50IHAzLCBHcmFwaGVuZS5Q b2ludCBwNCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9 IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQgcG9pbnRzWzRdKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlF1YWQ/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0IHIpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV9xdWF0ZXJuaW9uX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3F1YXRlcm5pb25fZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0 IFF1YXRlcm5pb24geworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5RdWF0ZXJuaW9uIGFkZCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1Ymxp YyBmbG9hdCBkb3QgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgYm9vbCBlcXVh bCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1 YXRlcm5pb24/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIGZsb2F0IHcpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xlX3ZlYzMg KGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xlcyAoZmxvYXQgZGVnX3gsIGZsb2F0IGRl Z195LCBmbG9hdCBkZWdfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fZXVsZXIgKEdyYXBoZW5l LkV1bGVyIGUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9m cm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24g c3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9y YWRpYW5zIChmbG9hdCByYWRfeCwgZmxvYXQgcmFkX3ksIGZsb2F0IHJhZF96KTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5W ZWM0IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2lk ZW50aXR5ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gaW52ZXJ0ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9u IG11bHRpcGx5IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIEdyYXBoZW5lLlF1 YXRlcm5pb24gbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVi bGljIEdyYXBoZW5lLlF1YXRlcm5pb24gc2xlcnAgKEdyYXBoZW5lLlF1YXRlcm5pb24gYiwgZmxv YXQgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHRvX2FuZ2xlX3ZlYzMgKG91dCBmbG9hdCBhbmds ZSwgb3V0IEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCB0b19hbmdsZXMgKG91dCBmbG9hdCBkZWdfeCwgb3V0IGZsb2F0IGRl Z195LCBvdXQgZmxvYXQgZGVnX3opOworKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0b19tYXRy aXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCB0b19y YWRpYW5zIChvdXQgZmxvYXQgcmFkX3gsIG91dCBmbG9hdCByYWRfeSwgb3V0IGZsb2F0IHJhZF96 KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHRvX3ZlYzQgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5l X3JheV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yYXlfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0IFJheSB7CisrCQlwdWJsaWMgYm9v bCBlcXVhbCAoR3JhcGhlbmUuUmF5IGIpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0 X2Nsb3Nlc3RfcG9pbnRfdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjMyBnZXRfZGlyZWN0aW9uICgpOworKwkJcHVibGljIGZsb2F0IGdldF9kaXN0 YW5jZV90b19wbGFuZSAoR3JhcGhlbmUuUGxhbmUgcCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rp c3RhbmNlX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIEdyYXBoZW5l LlBvaW50M0QgZ2V0X29yaWdpbiAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9w b3NpdGlvbl9hdCAoZmxvYXQgdCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/IGlu aXQgKEdyYXBoZW5lLlBvaW50M0Q/IG9yaWdpbiwgR3JhcGhlbmUuVmVjMz8gZGlyZWN0aW9uKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdF9mcm9tX3JheSAoR3JhcGhlbmUu UmF5IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/IGluaXRfZnJvbV92ZWMz IChHcmFwaGVuZS5WZWMzPyBvcmlnaW4sIEdyYXBoZW5lLlZlYzM/IGRpcmVjdGlvbik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheUludGVyc2Vj dGlvbktpbmQgaW50ZXJzZWN0X2JveCAoR3JhcGhlbmUuQm94IGIsIG91dCBmbG9hdCB0X291dCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheUlu dGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHMsIG91dCBm bG9hdCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3RyaWFuZ2xlIChHcmFwaGVuZS5U cmlhbmdsZSB0LCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfYm94IChHcmFwaGVuZS5Cb3ggYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19zcGhl cmUgKEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX3RyaWFuZ2xlIChHcmFwaGVuZS5UcmlhbmdsZSB0KTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiZ3JhcGhlbmVfcmVjdF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yZWN0X2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBS ZWN0IHsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBvcmlnaW47CisrCQlwdWJsaWMgR3JhcGhl bmUuU2l6ZSBzaXplOworKwkJcHVibGljIHN0YXRpYyBHcmFwaGVuZS5SZWN0PyBhbGxvYyAoKTsK KysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCXB1 YmxpYyBib29sIGNvbnRhaW5zX3JlY3QgKEdyYXBoZW5lLlJlY3QgYik7CisrCQlwdWJsaWMgYm9v bCBlcXVhbCAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGV4cGFuZCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOwor KwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9ib3R0b21fbGVmdCAoKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludCBnZXRfYm90dG9tX3JpZ2h0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBv aW50IGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfdG9wX2xlZnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQgZ2V0X3RvcF9yaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSld IHJlZiBHcmFwaGVuZS5WZWMyIHZlcnRpY2VzWzRdKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lk dGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbml0IChmbG9hdCB4LCBmbG9h dCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlJlY3Q/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0IHNyYyk7CisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbnNldCAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgaW5zZXRf ciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgaW50ZXJw b2xhdGUgKEdyYXBoZW5lLlJlY3QgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgYm9vbCBp bnRlcnNlY3Rpb24gKEdyYXBoZW5lLlJlY3QgYiwgb3V0IEdyYXBoZW5lLlJlY3QgcmVzKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IG5vcm1hbGl6ZV9yICgp OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gb2Zmc2V0IChmbG9hdCBkX3gsIGZs b2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhl bmUuUmVjdCBvZmZzZXRfciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kX2V4dGVudHMgKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS40Iiwg c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyByb3VuZF90 b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUmVjdCBzY2FsZSAoZmxvYXQgc19oLCBmbG9hdCBzX3YpOworKwkJcHVibGljIEdyYXBo ZW5lLlJlY3QgdW5pb24gKEdyYXBoZW5lLlJlY3QgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gemVybyAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiZ3JhcGhlbmVfc2ltZDRmX3QiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIHN0cnVjdCBTaW1kNEYgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJn cmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zaW1kNHg0Zl90IiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2ltZDRYNEYgeworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFw aGVuZV9zaXplX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3NpemVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFNpemUgeworKwkJcHVi bGljIGZsb2F0IHdpZHRoOworKwkJcHVibGljIGZsb2F0IGhlaWdodDsKKysJCXB1YmxpYyBib29s IGVxdWFsIChHcmFwaGVuZS5TaXplIGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU2l6 ZT8gaW5pdCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5TaXplPyBpbml0X2Zyb21fc2l6ZSAoR3JhcGhlbmUuU2l6ZSBzcmMpOworKwkJcHVi bGljIEdyYXBoZW5lLlNpemUgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlNpemUgYiwgZG91YmxlIGZh Y3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyB6ZXJvICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV9zcGhlcmVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfc3BoZXJlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBTcGhlcmUg eworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQp OworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJ CXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5TcGhlcmUgYik7CisrCQlwdWJsaWMgR3JhcGhl bmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBn ZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yYWRpdXMgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXQgKEdyYXBoZW5lLlBvaW50M0Q/IGNlbnRlciwg ZmxvYXQgcmFkaXVzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVyZT8gaW5pdF9m cm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wb2ludHMiLCBhcnJh eV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHcmFwaGVu ZS5Qb2ludDNEW10gcG9pbnRzLCBHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21fdmVjdG9ycyAoW0NDb2RlIChhcnJh eV9sZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJy YXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1tdIHZlY3RvcnMsIEdyYXBo ZW5lLlBvaW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgYm9vbCBpc19lbXB0eSAoKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNsYXRlIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiZ3JhcGhlbmVfdHJpYW5nbGVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdHJpYW5n bGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMg c3RydWN0IFRyaWFuZ2xlIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVu ZS5Qb2ludDNEIHApOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlRyaWFuZ2xlIGIp OworKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2Jhcnlj b29yZHMgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIG91dCBHcmFwaGVuZS5WZWMyIHJlcyk7CisrCQlw dWJsaWMgR3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCBnZXRfbWlkcG9pbnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRf bm9ybWFsICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIGdldF9wbGFuZSAoKTsKKysJCXB1 YmxpYyB2b2lkIGdldF9wb2ludHMgKG91dCBHcmFwaGVuZS5Qb2ludDNEIGEsIG91dCBHcmFwaGVu ZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5Qb2ludDNEIGMpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGdldF91diAoR3JhcGhlbmUuUG9pbnQzRD8gcCwg R3JhcGhlbmUuVmVjMiB1dl9hLCBHcmFwaGVuZS5WZWMyIHV2X2IsIEdyYXBoZW5lLlZlYzIgdXZf Yywgb3V0IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAo b3V0IEdyYXBoZW5lLlZlYzMgYSwgb3V0IEdyYXBoZW5lLlZlYzMgYiwgb3V0IEdyYXBoZW5lLlZl YzMgYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldIGZsb2F0IGFbM10sIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9h dCBiWzNdLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgY1szXSk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5pdF9mcm9tX3BvaW50M2QgKEdyYXBo ZW5lLlBvaW50M0Q/IGEsIEdyYXBoZW5lLlBvaW50M0Q/IGIsIEdyYXBoZW5lLlBvaW50M0Q/IGMp OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV92ZWMzIChH cmFwaGVuZS5WZWMzPyBhLCBHcmFwaGVuZS5WZWMzPyBiLCBHcmFwaGVuZS5WZWMzPyBjKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfdmVjMl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWMyX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMiB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBhZGQgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBkaXZpZGUg KEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlZlYzIgdjIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gaW5p dCAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbMl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gaW5pdF9mcm9tX3ZlYzIg KEdyYXBoZW5lLlZlYzIgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMiBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVjMiB2MiwgZG91Ymxl IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQg bGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzIgbWF4IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbWluIChHcmFwaGVuZS5WZWMyIGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbXVsdGlw bHkgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMyIHYyLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG5lZ2F0ZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMy IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBzY2FsZSAoZmxvYXQgZmFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIHN1 YnRyYWN0IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBy ZWYgZmxvYXQgZGVzdFsyXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geF9heGlzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/ IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV92ZWMz X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzNfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0 cnVjdCBWZWMzIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5WZWMzIGFkZCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGNyb3NzIChHcmFwaGVuZS5WZWMzIGIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZGl2 aWRlIChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWMzIHYyKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGdldF94eSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMz IGdldF94eTAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuVmVjNCBnZXRfeHl6MCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXoxICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5encgKGZsb2F0IHcpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVj Mz8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0X2Zyb21fZmxv YXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbM10pOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8g aW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUu VmVjMyB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbWF4IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbWluIChHcmFwaGVu ZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzMgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMzIHYyLCBmbG9hdCBl cHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMzIG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMzIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBvbmUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBzY2FsZSAo ZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMzIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFszXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8geF9heGlzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzM/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB6X2F4aXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhl bmUuVmVjMz8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjNF90IiwgdHlwZV9pZCA9ICJn cmFwaGVuZV92ZWM0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjNCB7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBhZGQgKEdy YXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjNCBkaXZpZGUgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWM0IGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5l LlZlYzQgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzIgZ2V0X3h5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzMgZ2V0X3h5eiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXQgKGZsb2F0IHgsIGZsb2F0 IHksIGZsb2F0IHosIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzRdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWMy IChHcmFwaGVuZS5WZWMyIHNyYywgZmxvYXQgeiwgZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0X2Zyb21f dmVjMyAoR3JhcGhlbmUuVmVjMyBzcmMsIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzQg KEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjNCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVjNCB2MiwgZG91Ymxl IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQg bGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzQgbWF4IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbWluIChHcmFwaGVuZS5WZWM0IGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbXVsdGlw bHkgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWM0IHYyLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG5lZ2F0ZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0 IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBzY2FsZSAoZmxvYXQgZmFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHN1 YnRyYWN0IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBy ZWYgZmxvYXQgZGVzdFs0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gd19heGlzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/ IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gel9heGlz ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzQ/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2V1bGVyX29yZGVy X3QiLCBjcHJlZml4ID0gIkdSQVBIRU5FX0VVTEVSX09SREVSXyIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEV1bGVyT3Jk ZXIgeworKwkJREVGQVVMVCwKKysJCVhZWiwKKysJCVlaWCwKKysJCVpYWSwKKysJCVhaWSwKKysJ CVlYWiwKKysJCVpZWCwKKysJCVNYWVosCisrCQlTWFlYLAorKwkJU1haWSwKKysJCVNYWlgsCisr CQlTWVpYLAorKwkJU1laWSwKKysJCVNZWFosCisrCQlTWVhZLAorKwkJU1pYWSwKKysJCVNaWFos CisrCQlTWllYLAorKwkJU1pZWiwKKysJCVJaWVgsCisrCQlSWFlYLAorKwkJUllaWCwKKysJCVJY WlgsCisrCQlSWFpZLAorKwkJUllaWSwKKysJCVJaWFksCisrCQlSWVhZLAorKwkJUllYWiwKKysJ CVJaWFosCisrCQlSWFlaLAorKwkJUlpZWgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yYXlfaW50ZXJzZWN0 aW9uX2tpbmRfdCIsIGNwcmVmaXggPSAiR1JBUEhFTkVfUkFZX0lOVEVSU0VDVElPTl9LSU5EXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlw dWJsaWMgZW51bSBSYXlJbnRlcnNlY3Rpb25LaW5kIHsKKysJCU5PTkUsCisrCQlFTlRFUiwKKysJ CUxFQVZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19HQ0MiKV0KKysJcHVibGljIGNvbnN0IGludCBI QVNfR0NDOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5o IiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX1NDQUxBUiIpXQorKwlwdWJsaWMgY29uc3QgaW50IEhB U19TQ0FMQVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfU1NFIildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFT X1NTRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIs IGNuYW1lID0gIkdSQVBIRU5FX1BJIildCisrCXB1YmxpYyBjb25zdCBkb3VibGUgUEk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJH UkFQSEVORV9QSV8yIildCisrCXB1YmxpYyBjb25zdCBkb3VibGUgUElfMjsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5F X1NJTURfUyIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIFNJTURfUzsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZF QzJfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGlu dCBWRUMyX0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzNfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGludCBWRUMzX0xFTjsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzRf TEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGludCBW RUM0X0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImZhbHNlIildCisrCXB1YmxpYyBjb25zdCBpbnQgQGZhbHNlOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAidHJ1 ZSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEB0cnVlOworK30KK2RpZmYgLS1naXQgYS92YXBpL2xp Ym11dHRlci02LmRlcHMgYi92YXBpL2xpYm11dHRlci02LmRlcHMKK25ldyBmaWxlIG1vZGUgMTAw NjQ0CitpbmRleCAwMDAwMDAwMC4uMjIzNTI1ZTQKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkv bGlibXV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw2IEBACisrZ3RrKy0zLjAKKytqc29uLWdsaWIt MS4wCisrbXV0dGVyLWNsdXR0ZXItNgorK3gxMQorK3hmaXhlcy00LjAKKytncmFwaGVuZS1nb2Jq ZWN0LTEuMAorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVyLTYudmFwaSBiL3ZhcGkvbGlibXV0 dGVyLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4zMWY0ODAx YworLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0ZXItNi52YXBpCitAQCAtMCwwICsx LDE0NzUgQEAKKysvKiBsaWJtdXR0ZXItNi52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBu b3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJNZXRhIiwgZ2lyX25hbWVzcGFj ZSA9ICJNZXRhIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9ICJtZXRh XyIpXQorK25hbWVzcGFjZSBNZXRhIHsKKysJbmFtZXNwYWNlIENvbXBvc2l0b3IgeworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1l ID0gIm1ldGFfZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlz cGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11 dHRlci5oIiwgY25hbWUgPSAibWV0YV9lbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSIpXQor KwkJcHVibGljIHN0YXRpYyB2b2lkIGVuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IChNZXRh LkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9j b21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9mb2N1c19zdGFnZV93aW5kb3ciKV0K KysJCXB1YmxpYyBzdGF0aWMgdm9pZCBmb2N1c19zdGFnZV93aW5kb3cgKE1ldGEuRGlzcGxheSBk aXNwbGF5LCB1aW50MzIgdGltZXN0YW1wKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9mZWVkYmFja19n cm91cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5o IiwgY25hbWUgPSAibWV0YV9nZXRfc3RhZ2VfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zdGFnZV9mb3JfZGlzcGxheSAoTWV0YS5EaXNw bGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9z aXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3RvcF93aW5kb3dfZ3JvdXBfZm9yX2Rp c3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF90b3Bf d2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUg PSAibWV0YV9nZXRfd2luZG93X2FjdG9ycyIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdM aWIuTGlzdDxDbHV0dGVyLkFjdG9yPiBnZXRfd2luZG93X2FjdG9ycyAoTWV0YS5EaXNwbGF5IGRp c3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1t dXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSIpXQor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3dpbmRvd19ncm91cF9m b3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwl9CisrCW5hbWVzcGFjZSBQcmVm cyB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19iZWxsX2lzX2F1ZGlibGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBw cmVmc19iZWxsX2lzX2F1ZGlibGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19jaGFuZ2Vfd29ya3NwYWNlX25hbWUi KV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19jaGFuZ2Vfd29ya3NwYWNlX25hbWUgKGlu dCBpLCBzdHJpbmcgbmFtZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX2RvdWJsZV9jbGlja190aXRs ZWJhciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19n ZXRfYWN0aW9uX2RvdWJsZV9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hY3Rpb25f bWlkZGxlX2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLlRpdGxl YmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25fbWlkZGxlX2NsaWNrX3RpdGxlYmFyICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfZ2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJhciIpXQorKwkJcHVibGljIHN0YXRp YyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX3JpZ2h0X2NsaWNrX3Rp dGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFsb2dzIildCisrCQlwdWJs aWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFsb2dzICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X2F1dG9fbWF4aW1pemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRf YXV0b19tYXhpbWl6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX3JhaXNlIildCisrCQlwdWJsaWMg c3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fcmFpc2UgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYXV0b19y YWlzZV9kZWxheSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2F1dG9fcmFpc2Vf ZGVsYXkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwg Y25hbWUgPSAibWV0YV9wcmVmc19nZXRfYnV0dG9uX2xheW91dCIpXQorKwkJcHVibGljIHN0YXRp YyBNZXRhLkJ1dHRvbkxheW91dCBwcmVmc19nZXRfYnV0dG9uX2xheW91dCAoKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZz X2dldF9jZW50ZXJfbmV3X3dpbmRvd3MiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19n ZXRfY2VudGVyX25ld193aW5kb3dzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2NvbXBvc2l0aW5nX21hbmFn ZXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfY29tcG9zaXRpbmdfbWFuYWdl ciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX2dldF9jdXJzb3Jfc2l6ZSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQg cHJlZnNfZ2V0X2N1cnNvcl9zaXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2N1cnNvcl90aGVtZSIpXQor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBwcmVmc19nZXRfY3Vyc29yX3RoZW1lICgp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0g Im1ldGFfcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fyb3VuZHMiKV0KKysJCXB1YmxpYyBzdGF0aWMg Ym9vbCBwcmVmc19nZXRfZGlzYWJsZV93b3JrYXJvdW5kcyAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kcmFn X3RocmVzaG9sZCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2RyYWdfdGhyZXNo b2xkICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdnYWJsZV9ib3JkZXJfd2lkdGgiKV0KKysJCXB1Ymxp YyBzdGF0aWMgaW50IHByZWZzX2dldF9kcmFnZ2FibGVfYm9yZGVyX3dpZHRoICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X2R5bmFtaWNfd29ya3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZz X2dldF9keW5hbWljX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZWRnZV90aWxpbmciKV0K KysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZWRnZV90aWxpbmcgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19nZXRfZm9jdXNfY2hhbmdlX29uX3BvaW50ZXJfcmVzdCIpXQorKwkJcHVibGljIHN0YXRpYyBi b29sIHByZWZzX2dldF9mb2N1c19jaGFuZ2Vfb25fcG9pbnRlcl9yZXN0ICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2ZvY3VzX21vZGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuRm9jdXNNb2RlIHBy ZWZzX2dldF9mb2N1c19tb2RlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX25ld193aW5kb3dzIild CisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLkZvY3VzTmV3V2luZG93cyBwcmVmc19nZXRfZm9j dXNfbmV3X3dpbmRvd3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9yY2VfZnVsbHNjcmVlbiIpXQorKwkJ cHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9mb3JjZV9mdWxsc2NyZWVuICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X2dub21lX2FjY2Vzc2liaWxpdHkiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVm c19nZXRfZ25vbWVfYWNjZXNzaWJpbGl0eSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9nbm9tZV9hbmltYXRp b25zIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2dub21lX2FuaW1hdGlvbnMg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfa2V5YmluZGluZ19hY3Rpb24iKV0KKysJCXB1YmxpYyBzdGF0aWMg TWV0YS5LZXlCaW5kaW5nQWN0aW9uIHByZWZzX2dldF9rZXliaW5kaW5nX2FjdGlvbiAoc3RyaW5n IG5hbWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tZW51IildCisrCQlwdWJsaWMgc3Rh dGljIGludCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX21lbnUgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfbW91 c2VfYnV0dG9uX21vZHMiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5WaXJ0dWFsTW9kaWZpZXIg cHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2RzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRv bl9yZXNpemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9tb3VzZV9idXR0b25f cmVzaXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X251bV93b3Jrc3BhY2VzIildCisrCQlwdWJsaWMgc3Rh dGljIGludCBwcmVmc19nZXRfbnVtX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfcmFpc2Vf b25fY2xpY2siKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfcmFpc2Vfb25fY2xp Y2sgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSIpXQorKwkJcHVibGlj IHN0YXRpYyBib29sIHByZWZzX2dldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51ICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X3RpdGxlYmFyX2ZvbnQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBQYW5nby5G b250RGVzY3JpcHRpb24gcHJlZnNfZ2V0X3RpdGxlYmFyX2ZvbnQgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf dmlzdWFsX2JlbGwiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfdmlzdWFsX2Jl bGwgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlwZSIpXQorKwkJcHVibGljIHN0YXRp YyBHRGVza3RvcC5WaXN1YWxCZWxsVHlwZSBwcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlwZSAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF93b3Jrc3BhY2VfbmFtZSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IHN0cmluZyBwcmVmc19nZXRfd29ya3NwYWNlX25hbWUgKGludCBpKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF93 b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZz X2dldF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2luaXQiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19pbml0ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfc2V0X2ZvcmNlX2Z1 bGxzY3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfZm9yY2VfZnVsbHNj cmVlbiAoYm9vbCB3aGV0aGVyKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9udW1fd29ya3NwYWNlcyIpXQorKwkJ cHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9udW1fd29ya3NwYWNlcyAoaW50IG5fd29ya3Nw YWNlcyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19zZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSIpXQorKwkJcHVibGlj IHN0YXRpYyB2b2lkIHByZWZzX3NldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51IChib29sIHdoZXRo ZXIpOworKwl9CisrCW5hbWVzcGFjZSBVdGlsIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfYWRkX3ZlcmJvc2VfdG9waWMiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBhZGRfdmVyYm9zZV90b3BpYyAoTWV0YS5EZWJ1Z1RvcGljIHRv cGljKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1l ID0gIm1ldGFfZXh0ZXJuYWxfYmluZGluZ19uYW1lX2Zvcl9hY3Rpb24iKV0KKysJCXB1YmxpYyBz dGF0aWMgc3RyaW5nIGV4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uICh1aW50IGtleWJp bmRpbmdfYWN0aW9uKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwu aCIsIGNuYW1lID0gIm1ldGFfZ2V0X2xvY2FsZV9kaXJlY3Rpb24iKV0KKysJCXB1YmxpYyBzdGF0 aWMgTWV0YS5Mb2NhbGVEaXJlY3Rpb24gZ2V0X2xvY2FsZV9kaXJlY3Rpb24gKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2dyYXZp dHlfdG9fc3RyaW5nIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdyYXZpdHlf dG9fc3RyaW5nIChpbnQgZ3Jhdml0eSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX2RlYnVnZ2luZyIpXQorKwkJcHVibGljIHN0 YXRpYyBib29sIGlzX2RlYnVnZ2luZyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNfc3luY2luZyIpXQorKwkJcHVibGljIHN0 YXRpYyBib29sIGlzX3N5bmNpbmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX3ZlcmJvc2UiKV0KKysJCXB1YmxpYyBzdGF0 aWMgYm9vbCBpc192ZXJib3NlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc193YXlsYW5kX2NvbXBvc2l0b3IiKV0KKysJCXB1 YmxpYyBzdGF0aWMgYm9vbCBpc193YXlsYW5kX2NvbXBvc2l0b3IgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2xhdGVyX2FkZCIp XQorKwkJcHVibGljIHN0YXRpYyB1aW50IGxhdGVyX2FkZCAoTWV0YS5MYXRlclR5cGUgd2hlbiwg b3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9sYXRlcl9yZW1vdmUiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCBsYXRlcl9yZW1vdmUgKHVpbnQgbGF0ZXJfaWQpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9wb3Bfbm9fbXNn X3ByZWZpeCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHBvcF9ub19tc2dfcHJlZml4ICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0 YV9wdXNoX25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwdXNoX25vX21z Z19wcmVmaXggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX3JlY3QiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5SZWN0YW5nbGU/ IHJlY3QgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcmVtb3ZlX3Zl cmJvc2VfdG9waWMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVfdmVyYm9zZV90b3Bp YyAoTWV0YS5EZWJ1Z1RvcGljIHRvcGljKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfc2hvd19kaWFsb2ciKV0KKysJCXB1YmxpYyBz dGF0aWMgR0xpYi5QaWQgc2hvd19kaWFsb2cgKHN0cmluZyB0eXBlLCBzdHJpbmcgbWVzc2FnZSwg c3RyaW5nIHRpbWVvdXQsIHN0cmluZyBkaXNwbGF5LCBzdHJpbmcgb2tfdGV4dCwgc3RyaW5nIGNh bmNlbF90ZXh0LCBzdHJpbmcgaWNvbl9uYW1lLCBpbnQgdHJhbnNpZW50X2ZvciwgR0xpYi5TTGlz dDx2b2lkKj4gY29sdW1ucywgR0xpYi5TTGlzdDx2b2lkKj4gZW50cmllcyk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vuc2lnbmVk X2xvbmdfZXF1YWwiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHVuc2lnbmVkX2xvbmdfZXF1YWwg KHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vuc2lnbmVkX2xvbmdfaGFzaCIpXQorKwkJcHVibGlj IHN0YXRpYyB1aW50IHVuc2lnbmVkX2xvbmdfaGFzaCAodm9pZCogdik7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9lcnJvcl90 cmFwX3BvcCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHgxMV9lcnJvcl90cmFwX3BvcCAoTWV0 YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0 dXJuIildCisrCQlwdWJsaWMgc3RhdGljIGludCB4MTFfZXJyb3JfdHJhcF9wb3Bfd2l0aF9yZXR1 cm4gKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9lcnJvcl90cmFwX3B1c2gi KV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB4MTFfZXJyb3JfdHJhcF9wdXNoIChNZXRhLlgxMURp c3BsYXkgeDExX2Rpc3BsYXkpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21ldGEtYmFja2VuZC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tlbmRfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCwgR0xpYi5J bml0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21ldGEtYmFja2VuZC5oIiwgY25hbWUgPSAibWV0YV9nZXRfYmFja2VuZCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2VuZCBnZXRfYmFja2VuZCAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIE1ldGEuRG5kIGdldF9kbmQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlJl bW90ZUFjY2Vzc0NvbnRyb2xsZXIgZ2V0X3JlbW90ZV9hY2Nlc3NfY29udHJvbGxlciAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3N0YWdlICgpOworKwkJcHVibGljIHZv aWQgbG9ja19sYXlvdXRfZ3JvdXAgKHVpbnQgaWR4KTsKKysJCXB1YmxpYyB2b2lkIHNldF9rZXlt YXAgKHN0cmluZyBsYXlvdXRzLCBzdHJpbmcgdmFyaWFudHMsIHN0cmluZyBvcHRpb25zKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9udW1sb2NrIChib29sIG51bWxvY2tfc3RhdGUpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGtleW1hcF9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGtl eW1hcF9sYXlvdXRfZ3JvdXBfY2hhbmdlZCAodWludCBvYmplY3QpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIGxhc3RfZGV2aWNlX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0KTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBsaWRfaXNfY2xvc2VkX2NoYW5nZWQgKGJvb2wgb2JqZWN0 KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91 bmQuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBjbGFzcyBCYWNrZ3JvdW5kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEJhY2tncm91bmQgKE1ldGEuRGlzcGxh eSBkaXNwbGF5KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZWZyZXNoX2FsbCAoKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9ibGVuZCAoR0xpYi5GaWxlIGZpbGUxLCBHTGliLkZpbGUgZmlsZTIsIGRv dWJsZSBibGVuZF9mYWN0b3IsIEdEZXNrdG9wLkJhY2tncm91bmRTdHlsZSBzdHlsZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIHZv aWQgc2V0X2ZpbGUgKEdMaWIuRmlsZT8gZmlsZSwgR0Rlc2t0b3AuQmFja2dyb3VuZFN0eWxlIHN0 eWxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ncmFkaWVudCAoR0Rlc2t0b3AuQmFja2dyb3VuZFNo YWRpbmcgc2hhZGluZ19kaXJlY3Rpb24sIENsdXR0ZXIuQ29sb3IgY29sb3IsIENsdXR0ZXIuQ29s b3Igc2Vjb25kX2NvbG9yKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEu RGlzcGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dy b3VuZF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEFjdG9y IDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENs dXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVi bGljIEJhY2tncm91bmRBY3RvciAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIGludCBtb25pdG9yKTsK KysJCXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kIChNZXRhLkJhY2tncm91bmQgYmFja2dyb3Vu ZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JhZGllbnQgKGJvb2wgZW5hYmxlZCwgaW50IGhlaWdo dCwgZG91YmxlIHRvbmVfc3RhcnQpOworKwkJcHVibGljIHZvaWQgc2V0X21vbml0b3IgKGludCBt b25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF92aWduZXR0ZSAoYm9vbCBlbmFibGVkLCBkb3Vi bGUgYnJpZ2h0bmVzcywgZG91YmxlIHNoYXJwbmVzcyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBNZXRhLkJhY2tncm91bmQgYmFja2dyb3VuZCB7IG93bmVkIGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUgYnJpZ2h0bmVzcyB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGdyYWRpZW50 IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBncmFk aWVudF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgZG91YmxlIGdyYWRpZW50X21heF9kYXJrbmVzcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgbWV0YV9kaXNwbGF5IHsgb3duZWQg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBt b25pdG9yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGJvb2wgdmlnbmV0dGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgZG91YmxlIHZpZ25ldHRlX3NoYXJwbmVzcyB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWdyb3VwLmgi LCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgQmFja2dyb3VuZEdyb3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9y LCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIEJhY2tncm91bmRHcm91cCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIs IHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBjbGFzcyBCYWNrZ3JvdW5kSW1hZ2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFja2dyb3VuZEltYWdl ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3N1Y2Nlc3MgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBD b2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19sb2FkZWQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbG9hZGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIiwgdHlwZV9pZCA9ICJt ZXRhX2JhY2tncm91bmRfaW1hZ2VfY2FjaGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IEJhY2tncm91bmRJbWFnZUNhY2hlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tncm91bmRJbWFnZUNh Y2hlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2dyb3VuZEltYWdlQ2Fj aGUgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5CYWNrZ3JvdW5kSW1hZ2UgbG9hZCAo R0xpYi5GaWxlIGZpbGUpOworKwkJcHVibGljIHZvaWQgcHVyZ2UgKEdMaWIuRmlsZSBmaWxlKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9iYXJyaWVyLmgiLCB0eXBl X2lkID0gIm1ldGFfYmFycmllcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFycmll ciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBCYXJyaWVyICgpOworKwkJcHVibGljIHZvaWQgZGVzdHJveSAo KTsKKysJCXB1YmxpYyBib29sIGlzX2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHJlbGVhc2Ug KE1ldGEuQmFycmllckV2ZW50IGV2ZW50KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIE1ldGEuQmFycmllckRpcmVjdGlvbiBkaXJlY3Rpb25zIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNwbGF5IHsg b3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGludCB4MSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBpbnQgeDIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgaW50IHkxIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGludCB5MiB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgaGl0IChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgbGVmdCAoTWV0YS5CYXJyaWVyRXZlbnQgZXZlbnQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL2JhcnJpZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9j b3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1ldGFfYmFy cmllcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJh cnJpZXJFdmVudCB7CisrCQlwdWJsaWMgaW50IGR0OworKwkJcHVibGljIGRvdWJsZSBkeDsKKysJ CXB1YmxpYyBkb3VibGUgZHk7CisrCQlwdWJsaWMgaW50IGV2ZW50X2lkOworKwkJcHVibGljIGJv b2wgZ3JhYmJlZDsKKysJCXB1YmxpYyBib29sIHJlbGVhc2VkOworKwkJcHVibGljIHVpbnQzMiB0 aW1lOworKwkJcHVibGljIGRvdWJsZSB4OworKwkJcHVibGljIGRvdWJsZSB5OworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtY3Vyc29yLXRyYWNrZXIuaCIsIHR5 cGVfaWQgPSAibWV0YV9jdXJzb3JfdHJhY2tlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgQ3Vyc29yVHJhY2tlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDdXJzb3JUcmFja2VyICgpOworKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQ3Vyc29yVHJhY2tlciBnZXRfZm9yX2Rpc3BsYXkg KE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9ob3QgKG91dCBpbnQg eCwgb3V0IGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludGVyIChpbnQgeCwgaW50IHks IENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZHMpOworKwkJcHVibGljIGJvb2wgZ2V0X3BvaW50ZXJf dmlzaWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfc3ByaXRlICgp OworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfdmlzaWJsZSAoYm9vbCB2aXNpYmxlKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCBjdXJzb3JfbW92ZWQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIHZpc2liaWxpdHlfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgY2xhc3MgRGlzcGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEaXNwbGF5ICgp OworKwkJcHVibGljIHZvaWQgYWRkX2lnbm9yZWRfY3Jvc3Npbmdfc2VyaWFsICh1bG9uZyBzZXJp YWwpOworKwkJcHVibGljIHVpbnQgYWRkX2tleWJpbmRpbmcgKHN0cmluZyBuYW1lLCBHTGliLlNl dHRpbmdzIHNldHRpbmdzLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFncywgb3duZWQgTWV0YS5L ZXlIYW5kbGVyRnVuYyBoYW5kbGVyKTsKKysJCXB1YmxpYyBib29sIGJlZ2luX2dyYWJfb3AgKE1l dGEuV2luZG93IHdpbmRvdywgTWV0YS5HcmFiT3Agb3AsIGJvb2wgcG9pbnRlcl9hbHJlYWR5X2dy YWJiZWQsIGJvb2wgZnJhbWVfYWN0aW9uLCBpbnQgYnV0dG9uLCB1bG9uZyBtb2RtYXNrLCB1aW50 MzIgdGltZXN0YW1wLCBpbnQgcm9vdF94LCBpbnQgcm9vdF95KTsKKysJCXB1YmxpYyB2b2lkIGNs ZWFyX21vdXNlX21vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBjbG9zZSAodWludDMyIHRpbWVzdGFt cCk7CisrCQlwdWJsaWMgdm9pZCBlbmRfZ3JhYl9vcCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlw dWJsaWMgdm9pZCBmb2N1c19kZWZhdWx0X3dpbmRvdyAodWludDMyIHRpbWVzdGFtcCk7CisrCQlw dWJsaWMgdm9pZCBmcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGlj IGludCBnZXRfY3VycmVudF9tb25pdG9yICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRfY3VycmVu dF90aW1lICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRfY3VycmVudF90aW1lX3JvdW5kdHJpcCAo KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF9mb2N1c193aW5kb3cgKCk7Cisr CQlwdWJsaWMgTWV0YS5HcmFiT3AgZ2V0X2dyYWJfb3AgKCk7CisrCQlwdWJsaWMgdWludCBnZXRf a2V5YmluZGluZ19hY3Rpb24gKHVpbnQga2V5Y29kZSwgdWxvbmcgbWFzayk7CisrCQlwdWJsaWMg dWludDMyIGdldF9sYXN0X3VzZXJfdGltZSAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBn ZXRfbW9uaXRvcl9nZW9tZXRyeSAoaW50IG1vbml0b3IpOworKwkJcHVibGljIGJvb2wgZ2V0X21v bml0b3JfaW5fZnVsbHNjcmVlbiAoaW50IG1vbml0b3IpOworKwkJcHVibGljIGludCBnZXRfbW9u aXRvcl9pbmRleF9mb3JfcmVjdCAoTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlwdWJsaWMgaW50 IGdldF9tb25pdG9yX25laWdoYm9yX2luZGV4IChpbnQgd2hpY2hfbW9uaXRvciwgTWV0YS5EaXNw bGF5RGlyZWN0aW9uIGRpcik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X21vbml0b3Jfc2NhbGUgKGlu dCBtb25pdG9yKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fbW9uaXRvcnMgKCk7CisrCQlwdWJsaWMg c3RyaW5nIGdldF9wYWRfYWN0aW9uX2xhYmVsIChDbHV0dGVyLklucHV0RGV2aWNlIHBhZCwgTWV0 YS5QYWRBY3Rpb25UeXBlIGFjdGlvbl90eXBlLCB1aW50IGFjdGlvbl9udW1iZXIpOworKwkJcHVi bGljIGludCBnZXRfcHJpbWFyeV9tb25pdG9yICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5T ZWxlY3Rpb24gZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9zaXplIChvdXQg aW50IHdpZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlNvdW5k UGxheWVyIGdldF9zb3VuZF9wbGF5ZXIgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRv dyBnZXRfdGFiX2N1cnJlbnQgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZSB3b3Jr c3BhY2UpOworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBnZXRfdGFiX2xp c3QgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZT8gd29ya3NwYWNlKTsKKysJCXB1 YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJfbmV4dCAoTWV0YS5UYWJMaXN0IHR5cGUs IE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgTWV0YS5XaW5kb3c/IHdpbmRvdywgYm9vbCBiYWNr d2FyZCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZU1hbmFnZXIgZ2V0X3dvcmtz cGFjZV9tYW5hZ2VyICgpOworKwkJcHVibGljIHVpbnQgZ3JhYl9hY2NlbGVyYXRvciAoc3RyaW5n IGFjY2VsZXJhdG9yLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFncyk7CisrCQlwdWJsaWMgYm9v bCBpc19wb2ludGVyX2VtdWxhdGluZ19zZXF1ZW5jZSAoQ2x1dHRlci5FdmVudFNlcXVlbmNlPyBz ZXF1ZW5jZSk7CisrCQlwdWJsaWMgYm9vbCByZW1vdmVfa2V5YmluZGluZyAoc3RyaW5nIG5hbWUp OworKwkJcHVibGljIHZvaWQgcmVxdWVzdF9wYWRfb3NkIChDbHV0dGVyLklucHV0RGV2aWNlIHBh ZCwgYm9vbCBlZGl0aW9uX21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvciAoTWV0YS5D dXJzb3IgY3Vyc29yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9mb2N1cyAoTWV0YS5XaW5k b3cgd2luZG93LCBib29sIGZvY3VzX2ZyYW1lLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1Ymxp YyBHTGliLlNMaXN0PHdlYWsgTWV0YS5XaW5kb3c+IHNvcnRfd2luZG93c19ieV9zdGFja2luZyAo R0xpYi5TTGlzdDxNZXRhLldpbmRvdz4gd2luZG93cyk7CisrCQlwdWJsaWMgYm9vbCBzdXBwb3J0 c19leHRlbmRlZF9iYXJyaWVycyAoKTsKKysJCXB1YmxpYyB2b2lkIHVuZnJlZXplX2tleWJvYXJk ICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHVuZ3JhYl9hY2NlbGVyYXRvciAo dWludCBhY3Rpb25faWQpOworKwkJcHVibGljIHZvaWQgdW5ncmFiX2tleWJvYXJkICh1aW50MzIg dGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X2lucHV0X2ZvY3VzICh1aW50MzIgdGlt ZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHhzZXJ2ZXJfdGltZV9pc19iZWZvcmUgKHVpbnQzMiB0 aW1lMSwgdWludDMyIHRpbWUyKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvdyBmb2N1c193aW5kb3cg eyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY2NlbGVyYXRvcl9hY3RpdmF0ZWQgKHVp bnQgb2JqZWN0LCBDbHV0dGVyLklucHV0RGV2aWNlIHAwLCB1aW50IHAxKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBjbG9zaW5nICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNvcl91cGRh dGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdsX3ZpZGVvX21lbW9yeV9wdXJnZWQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9iZWdpbiAoTWV0YS5EaXNwbGF5IG9iamVj dCwgTWV0YS5XaW5kb3cgcDAsIE1ldGEuR3JhYk9wIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBncmFiX29wX2VuZCAoTWV0YS5EaXNwbGF5IG9iamVjdCwgTWV0YS5XaW5kb3cgcDAsIE1ldGEu R3JhYk9wIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBpbl9mdWxsc2NyZWVuX2NoYW5nZWQg KCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgbW9kaWZpZXJzX2FjY2VsZXJhdG9yX2FjdGl2YXRl ZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBvdmVybGF5X2tleSAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBwYWRfbW9kZV9zd2l0Y2ggKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0LCB1 aW50IHAwLCB1aW50IHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXN0YWNrZWQgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIGJvb2wgcmVzdGFydCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBz aG93X29zZCAoaW50IG9iamVjdCwgc3RyaW5nIHAwLCBzdHJpbmcgcDEpOworKwkJcHVibGljIHNp Z25hbCB1bm93bmVkIENsdXR0ZXIuQWN0b3I/IHNob3dfcGFkX29zZCAoQ2x1dHRlci5JbnB1dERl dmljZSBwYWQsIEdMaWIuU2V0dGluZ3Mgc2V0dGluZ3MsIHN0cmluZyBsYXlvdXRfcGF0aCwgYm9v bCBlZGl0aW9uX21vZGUsIGludCBtb25pdG9yX2lkeCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wg c2hvd19yZXNpemVfcG9wdXAgKGJvb2wgb2JqZWN0LCBNZXRhLlJlY3RhbmdsZSBwMCwgaW50IHAx LCBpbnQgcDIpOworKwkJcHVibGljIHNpZ25hbCBib29sIHNob3dfcmVzdGFydF9tZXNzYWdlIChz dHJpbmc/IG1lc3NhZ2UpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dpbmdfZGVza3RvcF9j aGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19jcmVhdGVkIChNZXRhLldp bmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19kZW1hbmRzX2F0dGVu dGlvbiAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3df ZW50ZXJlZF9tb25pdG9yIChpbnQgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgd2luZG93X2xlZnRfbW9uaXRvciAoaW50IG9iamVjdCwgTWV0YS5XaW5kb3cg cDApOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19tYXJrZWRfdXJnZW50IChNZXRhLldp bmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmthcmVhc19jaGFuZ2VkICgp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X2Nsb3NpbmcgKCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfb3BlbmVkICgpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIHgxMV9kaXNwbGF5X3NldHVwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtZG5kLmgiLCB0eXBlX2lkID0gIm1ldGFfZG5kX2dldF90eXBlICgpIild CisrCXB1YmxpYyBjbGFzcyBEbmQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRG5kICgpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGRuZF9lbnRlciAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkbmRfbGVh dmUgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX3Bvc2l0aW9uX2NoYW5nZSAoaW50IG9i amVjdCwgaW50IHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFz cyBGcmFtZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1p ZGxlLW1vbml0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV9pZGxlX21vbml0b3JfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIElkbGVNb25pdG9yIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElkbGVNb25p dG9yICgpOworKwkJcHVibGljIHVpbnQgYWRkX2lkbGVfd2F0Y2ggKHVpbnQ2NCBpbnRlcnZhbF9t c2VjLCBvd25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5jPyBjYWxsYmFjayk7CisrCQlwdWJs aWMgdWludCBhZGRfdXNlcl9hY3RpdmVfd2F0Y2ggKG93bmVkIE1ldGEuSWRsZU1vbml0b3JXYXRj aEZ1bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLklkbGVNb25p dG9yIGdldF9jb3JlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuSWRsZU1vbml0 b3IgZ2V0X2Zvcl9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlKTsKKysJCXB1Ymxp YyBpbnQ2NCBnZXRfaWRsZXRpbWUgKCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfd2F0Y2ggKHVp bnQgaWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERl dmljZSBkZXZpY2UgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9j b3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1ldGFfa2V5 X2JpbmRpbmdfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBLZXlC aW5kaW5nIHsKKysJCXB1YmxpYyB1aW50IGdldF9tYXNrICgpOworKwkJcHVibGljIE1ldGEuVmly dHVhbE1vZGlmaWVyIGdldF9tb2RpZmllcnMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcg Z2V0X25hbWUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19idWlsdGluICgpOworKwkJcHVibGljIGJv b2wgaXNfcmV2ZXJzZWQgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gIm1ldGFfa2V5YmluZGluZ3Nf c2V0X2N1c3RvbV9oYW5kbGVyIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgc2V0X2N1c3RvbV9o YW5kbGVyIChzdHJpbmcgbmFtZSwgb3duZWQgTWV0YS5LZXlIYW5kbGVyRnVuYz8gaGFuZGxlcik7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1sYXVuY2gtY29u dGV4dC5oIiwgdHlwZV9pZCA9ICJtZXRhX2xhdW5jaF9jb250ZXh0X2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBMYXVuY2hDb250ZXh0IDogR0xpYi5BcHBMYXVuY2hDb250ZXh0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBM YXVuY2hDb250ZXh0ICgpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVzdGFtcCAodWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3 b3Jrc3BhY2UpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5 IGRpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgdWludCB0aW1lc3RhbXAgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlIHsgb3duZWQgZ2V0OyBz ZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLW1vbml0 b3ItbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX21vbml0b3JfbWFuYWdlcl9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgY2xhc3MgTW9uaXRvck1hbmFnZXIgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTW9u aXRvck1hbmFnZXIgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fc3dpdGNoX2NvbmZpZyAoKTsKKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLk1vbml0b3JNYW5hZ2VyIEBnZXQgKCk7CisrCQlw dWJsaWMgc3RhdGljIGludCBnZXRfZGlzcGxheV9jb25maWd1cmF0aW9uX3RpbWVvdXQgKCk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfaXNfYnVpbHRpbl9kaXNwbGF5X29uICgpOworKwkJcHVibGljIGlu dCBnZXRfbW9uaXRvcl9mb3JfY29ubmVjdG9yIChzdHJpbmcgY29ubmVjdG9yKTsKKysJCXB1Ymxp YyBNZXRhLk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGdldF9zd2l0Y2hfY29uZmlnICgpOworKwkJ cHVibGljIHZvaWQgc3dpdGNoX2NvbmZpZyAoTWV0YS5Nb25pdG9yU3dpdGNoQ29uZmlnVHlwZSBj b25maWdfdHlwZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhY2tl bmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgY29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBtb25p dG9yc19jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG1vbml0b3JzX2NoYW5nZWRf aW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcG93ZXJfc2F2ZV9tb2RlX2NoYW5n ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1wbHVn aW4uaCIsIHR5cGVfaWQgPSAibWV0YV9wbHVnaW5fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFi c3RyYWN0IGNsYXNzIFBsdWdpbiA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQbHVnaW4gKCk7CisrCQlwdWJs aWMgYm9vbCBiZWdpbl9tb2RhbCAoTWV0YS5Nb2RhbE9wdGlvbnMgb3B0aW9ucywgdWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBjb21wbGV0ZV9kaXNwbGF5X2NoYW5nZSAoYm9vbCBv ayk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb25maXJtX2Rpc3Bs YXlfY2hhbmdlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVz dHJveSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95X2Nv bXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBlbmRfbW9k YWwgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EaXNwbGF5IGdl dF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5QbHVnaW5JbmZvPyBnZXRfaW5m byAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGhpZGVfdGlsZV9w cmV2aWV3ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wga2V5Ymlu ZGluZ19maWx0ZXIgKE1ldGEuS2V5QmluZGluZyBiaW5kaW5nKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfc3dpdGNoX3dvcmtzcGFjZSAoKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfd2luZG93X2VmZmVjdHMgKE1ldGEu V2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgbG9jYXRlX3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgbWFuYWdlcl9zZXRf cGx1Z2luX3R5cGUgKEdMaWIuVHlwZSBndHlwZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBtYXAgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZv aWQgbWFwX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtaW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rv cik7CisrCQlwdWJsaWMgdm9pZCBtaW5pbWl6ZV9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3Ig YWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgTWV0YS5Q bHVnaW5JbmZvPyBwbHVnaW5faW5mbyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHNob3dfdGlsZV9wcmV2aWV3IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuUmVj dGFuZ2xlIHRpbGVfcmVjdCwgaW50IHRpbGVfbW9uaXRvcl9udW1iZXIpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd193aW5kb3dfbWVudSAoTWV0YS5XaW5kb3cg d2luZG93LCBNZXRhLldpbmRvd01lbnVUeXBlIG1lbnUsIGludCB4LCBpbnQgeSk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X3dpbmRvd19tZW51X2Zvcl9yZWN0 IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuV2luZG93TWVudVR5cGUgbWVudSwgTWV0YS5SZWN0 YW5nbGUgcmVjdCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaXpl X2NoYW5nZSAoTWV0YS5XaW5kb3dBY3RvciBhY3RvciwgTWV0YS5TaXplQ2hhbmdlIHdoaWNoX2No YW5nZSwgTWV0YS5SZWN0YW5nbGUgb2xkX2ZyYW1lX3JlY3QsIE1ldGEuUmVjdGFuZ2xlIG9sZF9i dWZmZXJfcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzaXplX2NoYW5nZV9jb21wbGV0ZWQgKE1ldGEu V2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgc2l6ZV9jaGFuZ2VkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0YXJ0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgc3dpdGNoX3dvcmtzcGFjZSAoaW50IGZyb20sIGludCB0bywgTWV0 YS5Nb3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHN3aXRjaF93b3Jr c3BhY2VfY29tcGxldGVkICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgdW5taW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCB1 bm1pbmltaXplX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCB4ZXZlbnRfZmlsdGVyIChYLkV2ZW50IGV2ZW50 KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXJlbW90ZS1h Y2Nlc3MtY29udHJvbGxlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3JlbW90ZV9hY2Nlc3NfY29udHJv bGxlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3RlQWNjZXNzQ29udHJvbGxl ciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NDb250cm9sbGVyICgpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIG5ld19oYW5kbGUgKE1ldGEuUmVtb3RlQWNjZXNzSGFuZGxlIG9iamVjdCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1yZW1vdGUtYWNj ZXNzLWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9yZW1vdGVfYWNjZXNzX2hhbmRsZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3RlQWNjZXNzSGFuZGxlIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFJlbW90ZUFjY2Vzc0hhbmRsZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg c3RvcCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzdG9wcGVkICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9zZWxl Y3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVjdGlvbiA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1 YmxpYyBTZWxlY3Rpb24gKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBHTGliLkxp c3Q8c3RyaW5nPiBnZXRfbWltZXR5cGVzIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5 cGUpOworKwkJcHVibGljIHZvaWQgc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0 aW9uX3R5cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1YmxpYyBhc3luYyBi b29sIHRyYW5zZmVyX2FzeW5jIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5cGUsIHN0 cmluZyBtaW1ldHlwZSwgc3NpemVfdCBzaXplLCBHTGliLk91dHB1dFN0cmVhbSBvdXRwdXQsIEdM aWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1Ymxp YyB2b2lkIHVuc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5cGUsIE1l dGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBvd25lcl9j aGFuZ2VkICh1aW50IG9iamVjdCwgTWV0YS5TZWxlY3Rpb25Tb3VyY2UgcDApOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9z ZWxlY3Rpb25fc291cmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxlY3Rpb25T b3VyY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2VsZWN0aW9uU291cmNlICgpOworKwkJcHVibGljIHZp cnR1YWwgR0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBlcyAoKTsKKysJCXB1YmxpYyBib29s IGlzX2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGFzeW5jIEdMaWIuSW5wdXRTdHJlYW0g cmVhZF9hc3luYyAoc3RyaW5nIG1pbWV0eXBlLCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJs ZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhY3Rp dmF0ZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWFjdGl2YXRlZCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lk ID0gIm1ldGFfc2VsZWN0aW9uX3NvdXJjZV9tZW1vcnlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIFNlbGVjdGlvblNvdXJjZU1lbW9yeSA6IE1ldGEuU2VsZWN0aW9uU291cmNlIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIk1ldGFTZWxl Y3Rpb25Tb3VyY2UqIildCisrCQlwdWJsaWMgU2VsZWN0aW9uU291cmNlTWVtb3J5IChzdHJpbmcg bWltZXR5cGUsIEdMaWIuQnl0ZXMgY29udGVudCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWV0YS1zZXR0aW5ncy5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3MgeworKwkJcHVibGljIGludCBnZXRf Zm9udF9kcGkgKCk7CisrCQlwdWJsaWMgaW50IGdldF91aV9zY2FsaW5nX2ZhY3RvciAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCByZWZfZnVuY3Rp b24gPSAibWV0YV9zaGFkb3dfcmVmIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRvd19nZXRfdHlwZSAo KSIsIHVucmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3VucmVmIildCisrCVtDb21wYWN0XQor KwlwdWJsaWMgY2xhc3MgU2hhZG93IHsKKysJCXB1YmxpYyB2b2lkIGdldF9ib3VuZHMgKGludCB3 aW5kb3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dpZHRoLCBpbnQgd2luZG93X2hlaWdo dCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IGJvdW5kcyk7CisrCQlwdWJsaWMgdm9pZCBwYWludCAoQ29n bC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgaW50IHdpbmRvd194LCBpbnQgd2luZG93X3ksIGlu dCB3aW5kb3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCB1aW50OCBvcGFjaXR5LCBDYWlyby5S ZWdpb24/IGNsaXAsIGJvb2wgY2xpcF9zdHJpY3RseSk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3cg QHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhZG93LWZhY3RvcnkuaCIsIHR5cGVfaWQgPSAibWV0 YV9zaGFkb3dfZmFjdG9yeV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZG93RmFj dG9yeSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXB1YmxpYyBTaGFkb3dGYWN0b3J5ICgpOworKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIE1ldGEuU2hhZG93RmFjdG9yeSBnZXRfZGVmYXVsdCAoKTsKKysJCXB1YmxpYyBNZXRh LlNoYWRvd1BhcmFtcyBnZXRfcGFyYW1zIChzdHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2Vk KTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvdyBnZXRfc2hhZG93IChNZXRhLldpbmRvd1NoYXBlIHNo YXBlLCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIHN0cmluZyBjbGFzc19uYW1lLCBib29sIGZvY3Vz ZWQpOworKwkJcHVibGljIHZvaWQgc2V0X3BhcmFtcyAoc3RyaW5nIGNsYXNzX25hbWUsIGJvb2wg Zm9jdXNlZCwgTWV0YS5TaGFkb3dQYXJhbXMgQHBhcmFtcyk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t ZXRhLXNoYXBlZC10ZXh0dXJlLmgiLCB0eXBlX2lkID0gIm1ldGFfc2hhcGVkX3RleHR1cmVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYXBlZFRleHR1cmUgOiBHTGliLk9iamVjdCwg Q2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBTaGFwZWRUZXh0dXJlICgpOworKwkJcHVibGljIENhaXJvLlN1 cmZhY2U/IGdldF9pbWFnZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlwKTsKKysJCXB1YmxpYyB1 bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9j cmVhdGVfbWlwbWFwcyAoYm9vbCBjcmVhdGVfbWlwbWFwcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRf bWFza190ZXh0dXJlIChDb2dsLlRleHR1cmUgbWFza190ZXh0dXJlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9vcGFxdWVfcmVnaW9uIChvd25lZCBDYWlyby5SZWdpb24gb3BhcXVlX3JlZ2lvbik7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgc2l6ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc291bmQtcGxheWVyLmgiLCB0eXBlX2lkID0gIm1l dGFfc291bmRfcGxheWVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTb3VuZFBsYXll ciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBTb3VuZFBsYXllciAoKTsKKysJCXB1YmxpYyB2b2lkIHBsYXlf ZnJvbV9maWxlIChHTGliLkZpbGUgZmlsZSwgc3RyaW5nIGRlc2NyaXB0aW9uLCBHTGliLkNhbmNl bGxhYmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwkJcHVibGljIHZvaWQgcGxheV9mcm9tX3Ro ZW1lIChzdHJpbmcgbmFtZSwgc3RyaW5nIGRlc2NyaXB0aW9uLCBHTGliLkNhbmNlbGxhYmxlPyBj YW5jZWxsYWJsZSA9IG51bGwpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21ldGEtc3RhZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFnZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLlN0YWdlLCBBdGsuSW1wbGVtZW50b3IsIENs dXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgU3RhZ2UgKCk7CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZm9jdXNlZCAoTWV0YS5EaXNw bGF5IGRpc3BsYXkpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGFjdG9yc19wYWludGVkICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc3RhcnR1cC1ub3Rp ZmljYXRpb24uaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFydHVwX25vdGlmaWNhdGlvbl9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cE5vdGlmaWNhdGlvbiA6IEdMaWIuT2JqZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3Rl Y3RlZCBTdGFydHVwTm90aWZpY2F0aW9uICgpOworKwkJcHVibGljIE1ldGEuTGF1bmNoQ29udGV4 dCBjcmVhdGVfbGF1bmNoZXIgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBN ZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgY2hhbmdlZCAodm9pZCogb2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc3RhcnR1cF9zZXF1 ZW5jZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cFNlcXVlbmNlIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIFN0YXJ0dXBTZXF1ZW5jZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfYXBwbGljYXRpb25faWQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29tcGxldGVkICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pY29uX25hbWUgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9u YW1lICgpOworKwkJcHVibGljIHVpbnQ2NCBnZXRfdGltZXN0YW1wICgpOworKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIGdldF93bWNsYXNzICgpOworKwkJcHVibGljIGludCBnZXRfd29ya3NwYWNl ICgpOworKwkJcHVibGljIHN0cmluZyBhcHBsaWNhdGlvbl9pZCB7IGdldDsgY29uc3RydWN0OyB9 CisrCQlwdWJsaWMgc3RyaW5nIGljb25fbmFtZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJs aWMgc3RyaW5nIGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7 IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHRpbWVzdGFtcCB7IGdldDsgY29u c3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHdtY2xhc3MgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJcHVibGljIGludCB3b3Jrc3BhY2UgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW0hhc0VtaXR0 ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29tcGxldGUgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdGhlbWUuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFRoZW1lIHsKKysJCXB1YmxpYyB2b2lkIGZyZWUg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvd2luZG93LmgiLCB0 eXBlX2lkID0gIm1ldGFfd2luZG93X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBj bGFzcyBXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93ICgpOworKwkJcHVibGljIHZvaWQg YWN0aXZhdGUgKHVpbnQzMiBjdXJyZW50X3RpbWUpOworKwkJcHVibGljIHZvaWQgYWN0aXZhdGVf d2l0aF93b3Jrc3BhY2UgKHVpbnQzMiBjdXJyZW50X3RpbWUsIE1ldGEuV29ya3NwYWNlIHdvcmtz cGFjZSk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfbW92ZSAoKTsKKysJCXB1YmxpYyBib29sIGFs bG93c19yZXNpemUgKCk7CisrCQlwdWJsaWMgdm9pZCBiZWdpbl9ncmFiX29wIChNZXRhLkdyYWJP cCBvcCwgYm9vbCBmcmFtZV9hY3Rpb24sIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIGJv b2wgY2FuX2Nsb3NlICgpOworKwkJcHVibGljIGJvb2wgY2FuX21heGltaXplICgpOworKwkJcHVi bGljIGJvb2wgY2FuX21pbmltaXplICgpOworKwkJcHVibGljIGJvb2wgY2FuX3NoYWRlICgpOwor KwkJcHVibGljIHZvaWQgY2hhbmdlX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNl KTsKKysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3BhY2VfYnlfaW5kZXggKGludCBzcGFjZV9p bmRleCwgYm9vbCBhcHBlbmQpOworKwkJcHVibGljIHZvaWQgY2hlY2tfYWxpdmUgKHVpbnQzMiB0 aW1lc3RhbXApOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0X3RvX2ZyYW1l X3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0KTsKKysJCXB1YmxpYyB2b2lkIGNvbXB1 dGVfZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRlICh1aW50MzIgdGltZXN0YW1wKTsK KysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGZpbmRfcm9vdF9hbmNlc3RvciAoKTsKKysJ CXB1YmxpYyB2b2lkIGZvY3VzICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGZv cmVhY2hfYW5jZXN0b3IgKE1ldGEuV2luZG93Rm9yZWFjaEZ1bmMgZnVuYyk7CisrCQlwdWJsaWMg dm9pZCBmb3JlYWNoX3RyYW5zaWVudCAoTWV0YS5XaW5kb3dGb3JlYWNoRnVuYyBmdW5jKTsKKysJ CXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0X3RvX2NsaWVudF9yZWN0IChNZXRhLlJl Y3RhbmdsZSBmcmFtZV9yZWN0KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfYnVmZmVy X3JlY3QgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2NsaWVudF9tYWNoaW5lICgp OworKwkJcHVibGljIE1ldGEuV2luZG93Q2xpZW50VHlwZSBnZXRfY2xpZW50X3R5cGUgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfY29tcG9zaXRvcl9wcml2YXRlICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENh aXJvLlJlZ2lvbj8gZ2V0X2ZyYW1lX2JvdW5kcyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3Rhbmds ZSBnZXRfZnJhbWVfcmVjdCAoKTsKKysJCXB1YmxpYyBNZXRhLkZyYW1lVHlwZSBnZXRfZnJhbWVf dHlwZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX2FwcF9tZW51X29iamVj dF9wYXRoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfYXBwbGljYXRpb25f aWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19hcHBsaWNhdGlvbl9vYmpl Y3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX21lbnViYXJfb2Jq ZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a190aGVtZV92YXJp YW50ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfdW5pcXVlX2J1c19uYW1l ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfd2luZG93X29iamVjdF9wYXRo ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2ljb25fZ2VvbWV0cnkgKG91dCBNZXRhLlJlY3Rhbmds ZSByZWN0KTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X2lkICgpOworKwkJcHVibGljIE1ldGEuU3Rh Y2tMYXllciBnZXRfbGF5ZXIgKCk7CisrCQlwdWJsaWMgTWV0YS5NYXhpbWl6ZUZsYWdzIGdldF9t YXhpbWl6ZWQgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yICgpOworKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIGdldF9tdXR0ZXJfaGludHMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9waWQg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3JvbGUgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X3NhbmRib3hlZF9hcHBfaWQgKCk7CisrCQlwdWJsaWMgdWludCBnZXRf c3RhYmxlX3NlcXVlbmNlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9zdGFydHVw X2lkICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3c/IGdldF90aWxlX21hdGNoICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90aXRsZSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIE1ldGEuV2luZG93IGdldF90cmFuc2llbnRfZm9yICgpOworKwkJcHVibGljIHVpbnQzMiBn ZXRfdXNlcl90aW1lICgpOworKwkJcHVibGljIE1ldGEuV2luZG93VHlwZSBnZXRfd2luZG93X3R5 cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3dtX2NsYXNzICgpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF93bV9jbGFzc19pbnN0YW5jZSAoKTsKKysJCXB1YmxpYyBN ZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2FsbF9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBN ZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2N1cnJlbnRfbW9uaXRvciAoKTsKKysJCXB1Ymxp YyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2Zvcl9tb25pdG9yIChpbnQgd2hpY2hfbW9u aXRvcik7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfd29ya3NwYWNlICgp OworKwkJcHVibGljIFguV2luZG93IGdldF94d2luZG93ICgpOworKwkJcHVibGljIHZvaWQgZ3Jv dXBfbGVhZGVyX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZm9jdXMgKCk7CisrCQlw dWJsaWMgYm9vbCBpc19hYm92ZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Fsd2F5c19vbl9hbGxf d29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FuY2VzdG9yX29mX3RyYW5zaWVudCAo TWV0YS5XaW5kb3cgdHJhbnNpZW50KTsKKysJCXB1YmxpYyBib29sIGlzX2F0dGFjaGVkX2RpYWxv ZyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2NsaWVudF9kZWNvcmF0ZWQgKCk7CisrCQlwdWJsaWMg Ym9vbCBpc19mdWxsc2NyZWVuICgpOworKwkJcHVibGljIGJvb2wgaXNfaGlkZGVuICgpOworKwkJ cHVibGljIGJvb2wgaXNfbW9uaXRvcl9zaXplZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX29uX2Fs bF93b3Jrc3BhY2VzICgpOworKwkJcHVibGljIGJvb2wgaXNfb25fcHJpbWFyeV9tb25pdG9yICgp OworKwkJcHVibGljIGJvb2wgaXNfb3ZlcnJpZGVfcmVkaXJlY3QgKCk7CisrCQlwdWJsaWMgYm9v bCBpc19yZW1vdGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zY3JlZW5fc2l6ZWQgKCk7CisrCQlw dWJsaWMgYm9vbCBpc19zaGFkZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19za2lwX3Rhc2tiYXIg KCk7CisrCQlwdWJsaWMgdm9pZCBraWxsICgpOworKwkJcHVibGljIGJvb2wgbG9jYXRlZF9vbl93 b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdm9pZCBsb3dl ciAoKTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfYWJvdmUgKCk7CisrCQlwdWJsaWMgdm9pZCBtYWtl X2Z1bGxzY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCBtYXhpbWl6ZSAoTWV0YS5NYXhpbWl6ZUZs YWdzIGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQgbWluaW1pemUgKCk7CisrCQlwdWJsaWMg dm9pZCBtb3ZlX2ZyYW1lIChib29sIHVzZXJfb3AsIGludCByb290X3hfbncsIGludCByb290X3lf bncpOworKwkJcHVibGljIHZvaWQgbW92ZV9yZXNpemVfZnJhbWUgKGJvb2wgdXNlcl9vcCwgaW50 IHJvb3RfeF9udywgaW50IHJvb3RfeV9udywgaW50IHcsIGludCBoKTsKKysJCXB1YmxpYyB2b2lk IG1vdmVfdG9fbW9uaXRvciAoaW50IG1vbml0b3IpOworKwkJcHVibGljIHZvaWQgcmFpc2UgKCk7 CisrCQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfYnlwYXNzX2NvbXBvc2l0b3IgKCk7CisrCQlwdWJs aWMgYm9vbCByZXF1ZXN0ZWRfZG9udF9ieXBhc3NfY29tcG9zaXRvciAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9jb21wb3NpdG9yX3ByaXZhdGUgKEdMaWIuT2JqZWN0IHByaXYpOworKwkJcHVibGlj IHZvaWQgc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJcHVibGljIHZvaWQgc2V0X2ljb25f Z2VvbWV0cnkgKE1ldGEuUmVjdGFuZ2xlPyByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNoYWRlICh1 aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHNob3ZlX3RpdGxlYmFyX29uc2NyZWVu ICgpOworKwkJcHVibGljIGJvb2wgc2hvd2luZ19vbl9pdHNfd29ya3NwYWNlICgpOworKwkJcHVi bGljIHZvaWQgc2h1dGRvd25fZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBzdGljayAoKTsKKysJ CXB1YmxpYyBib29sIHRpdGxlYmFyX2lzX29uc2NyZWVuICgpOworKwkJcHVibGljIHZvaWQgdW5t YWtlX2Fib3ZlICgpOworKwkJcHVibGljIHZvaWQgdW5tYWtlX2Z1bGxzY3JlZW4gKCk7CisrCQlw dWJsaWMgdm9pZCB1bm1heGltaXplIChNZXRhLk1heGltaXplRmxhZ3MgZGlyZWN0aW9ucyk7Cisr CQlwdWJsaWMgdm9pZCB1bm1pbmltaXplICgpOworKwkJcHVibGljIHZvaWQgdW5zZXRfZGVtYW5k c19hdHRlbnRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCB1bnNoYWRlICh1aW50MzIgdGltZXN0YW1w KTsKKysJCXB1YmxpYyB2b2lkIHVuc3RpY2sgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIGFib3ZlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBib29sIGFwcGVhcnNfZm9jdXNlZCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgYm9vbCBkZWNvcmF0ZWQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGJvb2wgZGVtYW5kc19hdHRlbnRpb24geyBnZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZnVsbHNjcmVlbiB7IGdldDsgfQorKwkJcHVibGlj IHN0cmluZyBndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJp bmcgZ3RrX2FwcGxpY2F0aW9uX2lkIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19hcHBs aWNhdGlvbl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfbWVudWJh cl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfdW5pcXVlX2J1c19u YW1lIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a193aW5kb3dfb2JqZWN0X3BhdGggeyBn ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHZvaWQqIGljb24geyBnZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWF4aW1pemVkX2hvcml6 b250YWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBt YXhpbWl6ZWRfdmVydGljYWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgdm9pZCogbWluaV9pY29uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIG1pbmltaXplZCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBtdXR0ZXJf aGludHMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgb25f YWxsX3dvcmtzcGFjZXMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGJvb2wgcmVzaXplYWJsZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgYm9vbCBza2lwX3Rhc2tiYXIgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGl0bGUgeyBn ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgdXJnZW50IHsgZ2V0 OyB9CisrCQlwdWJsaWMgdWludCB1c2VyX3RpbWUgeyBnZXQ7IH0KKysJCXB1YmxpYyBNZXRhLldp bmRvd1R5cGUgd2luZG93X3R5cGUgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgd21fY2xhc3Mg eyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwb3NpdGlvbl9jaGFuZ2VkICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHJhaXNlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaG93 biAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaXplX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgdW5tYW5hZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFj ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21l dGEtd2luZG93LWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2FjdG9yX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBXaW5kb3dBY3RvciA6IENsdXR0ZXIuQWN0 b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5l ciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dBY3RvciAoKTsKKysJCXB1YmxpYyBDYWly by5TdXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3RhbmdsZUludD8gY2xpcCk7CisrCQlwdWJs aWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfbWV0YV93aW5kb3cgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBNZXRhLlNoYXBlZFRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBp c19kZXN0cm95ZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzeW5jX3Zpc2liaWxpdHkgKCk7CisrCQlw dWJsaWMgTWV0YS5XaW5kb3cgbWV0YV93aW5kb3cgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVi bGljIHNpZ25hbCB2b2lkIGRhbWFnZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZWZmZWN0 c19jb21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZmlyc3RfZnJhbWUgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgdGhhd2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtd2luZG93LWdyb3VwLmgiLCB0eXBlX2lkID0gIm1ldGFfd2lu ZG93X2dyb3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXaW5kb3dHcm91cCA6IENs dXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVy LkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dHcm91cCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1zaGFwZS5oIiwg cmVmX2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3JlZiIsIHR5cGVfaWQgPSAibWV0YV93 aW5kb3dfc2hhcGVfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJtZXRhX3dpbmRvd19z aGFwZV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFdpbmRvd1NoYXBlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBX aW5kb3dTaGFwZSAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAo TWV0YS5XaW5kb3dTaGFwZSBzaGFwZV9iKTsKKysJCXB1YmxpYyB2b2lkIGdldF9ib3JkZXJzIChp bnQgYm9yZGVyX3RvcCwgaW50IGJvcmRlcl9yaWdodCwgaW50IGJvcmRlcl9ib3R0b20sIGludCBi b3JkZXJfbGVmdCk7CisrCQlwdWJsaWMgdWludCBoYXNoICgpOworKwkJcHVibGljIE1ldGEuV2lu ZG93U2hhcGUgQHJlZiAoKTsKKysJCXB1YmxpYyBDYWlyby5SZWdpb24gdG9fcmVnaW9uIChpbnQg Y2VudGVyX3dpZHRoLCBpbnQgY2VudGVyX2hlaWdodCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS93b3Jrc3BhY2UuaCIs IHR5cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IFdvcmtzcGFjZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgdm9p ZCBhY3RpdmF0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZV93 aXRoX2ZvY3VzIChNZXRhLldpbmRvdyBmb2N1c190aGlzLCB1aW50MzIgdGltZXN0YW1wKTsKKysJ CXB1YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIE1ldGEuV29ya3NwYWNlIGdldF9uZWlnaGJvciAoTWV0YS5Nb3Rpb25EaXJlY3Rpb24g ZGlyZWN0aW9uKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2FsbF9t b25pdG9ycyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2Zvcl9t b25pdG9yIChpbnQgd2hpY2hfbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGluZGV4ICgpOworKwkJ cHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBsaXN0X3dpbmRvd3MgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfYnVpbHRpbl9zdHJ1dHMgKEdMaWIuU0xpc3Q8TWV0YS5TdHJ1dD8+IHN0 cnV0cyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IG5fd2luZG93cyB7 IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB3b3Jrc3BhY2Vf aW5kZXggeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfYWRkZWQgKE1ldGEu V2luZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X3JlbW92ZWQgKE1l dGEuV2luZG93IG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3dvcmtzcGFjZV9t YW5hZ2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXb3Jrc3BhY2VNYW5hZ2VyIDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFdvcmtzcGFjZU1hbmFnZXIgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBN ZXRhLldvcmtzcGFjZSBhcHBlbmRfbmV3X3dvcmtzcGFjZSAoYm9vbCBhY3RpdmF0ZSwgdWludDMy IHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfYWN0aXZl X3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2FjdGl2ZV93b3Jrc3BhY2VfaW5kZXgg KCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3dvcmtzcGFjZXMgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBNZXRhLldvcmtzcGFjZT8gZ2V0X3dvcmtzcGFjZV9ieV9pbmRleCAoaW50IGluZGV4KTsKKysJ CXB1YmxpYyB2b2lkIG92ZXJyaWRlX3dvcmtzcGFjZV9sYXlvdXQgKE1ldGEuRGlzcGxheUNvcm5l ciBzdGFydGluZ19jb3JuZXIsIGJvb2wgdmVydGljYWxfbGF5b3V0LCBpbnQgbl9yb3dzLCBpbnQg bl9jb2x1bW5zKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV93b3Jrc3BhY2UgKE1ldGEuV29ya3Nw YWNlIHdvcmtzcGFjZSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCByZW9yZGVy X3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlLCBpbnQgbmV3X2luZGV4KTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBsYXlvdXRfY29sdW1ucyB7IGdldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGxheW91dF9yb3dzIHsgZ2V0 OyB9CisrCQlwdWJsaWMgaW50IG5fd29ya3NwYWNlcyB7IGdldDsgfQorKwkJcHVibGljIHNpZ25h bCB2b2lkIGFjdGl2ZV93b3Jrc3BhY2VfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBzaG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jr c3BhY2VfYWRkZWQgKGludCBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFj ZV9yZW1vdmVkIChpbnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2Vf c3dpdGNoZWQgKGludCBvYmplY3QsIGludCBwMCwgTWV0YS5Nb3Rpb25EaXJlY3Rpb24gcDEpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZXNfcmVvcmRlcmVkICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEteDExLWRpc3BsYXkuaCIsIHR5cGVf aWQgPSAibWV0YV94MTFfZGlzcGxheV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgWDEx RGlzcGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBYMTFEaXNwbGF5ICgpOworKwkJcHVibGljIHZvaWQg Y2xlYXJfc3RhZ2VfaW5wdXRfcmVnaW9uICgpOworKwkJcHVibGljIGludCBnZXRfZGFtYWdlX2V2 ZW50X2Jhc2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9zY3JlZW5fbnVtYmVyICgpOworKwkJcHVi bGljIGludCBnZXRfc2hhcGVfZXZlbnRfYmFzZSAoKTsKKysJCXB1YmxpYyBib29sIGhhc19zaGFw ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jbV9zZWxlY3Rpb24gKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIChYLlhzZXJ2ZXJSZWdpb24gcmVnaW9uKTsKKysJCXB1 YmxpYyBib29sIHh3aW5kb3dfaXNfYV9ub19mb2N1c193aW5kb3cgKFguV2luZG93IHh3aW5kb3cp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtY2xvc2UtZGlh bG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFDbG9zZURpYWxvZ0ludGVyZmFjZSIsIHR5cGVfaWQg PSAibWV0YV9jbG9zZV9kaWFsb2dfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBD bG9zZURpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGZvY3Vz ICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJCXB1YmxpYyBib29sIGlz X3Zpc2libGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93ICgpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0YS5XaW5kb3cgd2luZG93IHsgb3du ZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2 b2lkIHJlc3BvbnNlIChNZXRhLkNsb3NlRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtaW5oaWJpdC1zaG9ydGN1dHMt ZGlhbG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFJbmhpYml0U2hvcnRjdXRzRGlhbG9nSW50ZXJm YWNlIiwgdHlwZV9pZCA9ICJtZXRhX2luaGliaXRfc2hvcnRjdXRzX2RpYWxvZ19nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIEluaGliaXRTaG9ydGN1dHNEaWFsb2cgOiBHTGliLk9i amVjdCB7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKwkJcHVibGljIGFic3Ry YWN0IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGFic3Ry YWN0IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbSGFz RW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNwb25zZSAoTWV0YS5JbmhpYml0U2hv cnRjdXRzRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg c3RydWN0IEJ1dHRvbkxheW91dCB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0K KysJCXB1YmxpYyB3ZWFrIE1ldGEuQnV0dG9uRnVuY3Rpb24gbGVmdF9idXR0b25zWzRdOworKwkJ W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBib29sIGxlZnRf YnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSld CisrCQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1bmN0aW9uIHJpZ2h0X2J1dHRvbnNbNF07Cisr CQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGJvb2wgcmln aHRfYnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0 IEVkZ2UgeworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHJlY3Q7CisrCQlwdWJsaWMgTWV0YS5T aWRlIHNpZGVfdHlwZTsKKysJCXB1YmxpYyBNZXRhLkVkZ2VUeXBlIGVkZ2VfdHlwZTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBGcmFtZUJvcmRlcnMgeworKwkJcHVibGljIEd0ay5C b3JkZXIgdmlzaWJsZTsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIGludmlzaWJsZTsKKysJCXB1Ymxp YyBHdGsuQm9yZGVyIHRvdGFsOworKwkJcHVibGljIHZvaWQgY2xlYXIgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1wbHVnaW4uaCIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdpbkluZm8geworKwkJcHVibGljIHdlYWsg c3RyaW5nIG5hbWU7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgdmVyc2lvbjsKKysJCXB1YmxpYyB3 ZWFrIHN0cmluZyBhdXRob3I7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbGljZW5zZTsKKysJCXB1 YmxpYyB3ZWFrIHN0cmluZyBkZXNjcmlwdGlvbjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0 cnVjdCBQbHVnaW5WZXJzaW9uIHsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fbWFqb3I7CisrCQlw dWJsaWMgdWludCB2ZXJzaW9uX21pbm9yOworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9taWNybzsK KysJCXB1YmxpYyB1aW50IHZlcnNpb25fYXBpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJl ZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1ldGFfcmVjdGFuZ2xlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdGFuZ2xlIHsKKysJCXB1YmxpYyBpbnQg eDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7CisrCQlwdWJsaWMgaW50 IGhlaWdodDsKKysJCXB1YmxpYyBpbnQgYXJlYSAoKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5z X3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGlubmVyX3JlY3QpOworKwkJcHVibGljIE1ldGEuUmVjdGFu Z2xlPyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgY291bGRfZml0X3JlY3QgKE1ldGEuUmVjdGFu Z2xlIGlubmVyX3JlY3QpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKE1ldGEuUmVjdGFuZ2xlIHNy YzIpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCXB1YmxpYyBib29sIGhvcml6X292ZXJs YXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdCAoTWV0 YS5SZWN0YW5nbGUgc3JjMiwgb3V0IE1ldGEuUmVjdGFuZ2xlIGRlc3QpOworKwkJcHVibGljIGJv b2wgb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOworKwkJcHVibGljIE1ldGEuUmVjdGFu Z2xlIHVuaW9uIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCQlwdWJsaWMgYm9vbCB2ZXJ0X292 ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0 cnVjdCBTaGFkb3dQYXJhbXMgeworKwkJcHVibGljIGludCByYWRpdXM7CisrCQlwdWJsaWMgaW50 IHRvcF9mYWRlOworKwkJcHVibGljIGludCB4X29mZnNldDsKKysJCXB1YmxpYyBpbnQgeV9vZmZz ZXQ7CisrCQlwdWJsaWMgdWludDggb3BhY2l0eTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0 cnVjdCBTdHJ1dCB7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgcmVjdDsKKysJCXB1YmxpYyBN ZXRhLlNpZGUgc2lkZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQkFSUklFUl9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJt ZXRhX2JhcnJpZXJfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGlj IGVudW0gQmFycmllckRpcmVjdGlvbiB7CisrCQlQT1NJVElWRV9YLAorKwkJUE9TSVRJVkVfWSwK KysJCU5FR0FUSVZFX1gsCisrCQlORUdBVElWRV9ZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0JVVFRPTl9GVU5DVElPTl8i LCB0eXBlX2lkID0gIm1ldGFfYnV0dG9uX2Z1bmN0aW9uX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIEJ1dHRvbkZ1bmN0aW9uIHsKKysJCU1FTlUsCisrCQlNSU5JTUlaRSwKKysJCU1BWElN SVpFLAorKwkJQ0xPU0UsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NMT1NFX0RJQUxPR19SRVNQT05TRV8i LCB0eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX3Jlc3BvbnNlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIENsb3NlRGlhbG9nUmVzcG9uc2UgeworKwkJV0FJVCwKKysJCUZPUkNFX0NM T1NFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0NPTVBfRUZGRUNUXyIsIHR5cGVfaWQgPSAibWV0YV9jb21wX2VmZmVjdF9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDb21wRWZmZWN0IHsKKysJCUNSRUFURSwKKysJ CVVOTUlOSU1JWkUsCisrCQlERVNUUk9ZLAorKwkJTUlOSU1JWkUsCisrCQlOT05FCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X0NVUlNPUl8iLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIEN1cnNvciB7CisrCQlOT05FLAorKwkJREVGQVVMVCwKKysJCU5PUlRIX1JFU0laRSwK KysJCVNPVVRIX1JFU0laRSwKKysJCVdFU1RfUkVTSVpFLAorKwkJRUFTVF9SRVNJWkUsCisrCQlT RV9SRVNJWkUsCisrCQlTV19SRVNJWkUsCisrCQlORV9SRVNJWkUsCisrCQlOV19SRVNJWkUsCisr CQlNT1ZFX09SX1JFU0laRV9XSU5ET1csCisrCQlCVVNZLAorKwkJRE5EX0lOX0RSQUcsCisrCQlE TkRfTU9WRSwKKysJCURORF9DT1BZLAorKwkJRE5EX1VOU1VQUE9SVEVEX1RBUkdFVCwKKysJCVBP SU5USU5HX0hBTkQsCisrCQlDUk9TU0hBSVIsCisrCQlJQkVBTSwKKysJCUxBU1QKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFf REVCVUdfIiwgdHlwZV9pZCA9ICJtZXRhX2RlYnVnX3RvcGljX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gRGVidWdUb3BpYyB7CisrCQlWRVJCT1NFLAorKwkJRk9DVVMs CisrCQlXT1JLQVJFQSwKKysJCVNUQUNLLAorKwkJVEhFTUVTLAorKwkJU00sCisrCQlFVkVOVFMs CisrCQlXSU5ET1dfU1RBVEUsCisrCQlXSU5ET1dfT1BTLAorKwkJR0VPTUVUUlksCisrCQlQTEFD RU1FTlQsCisrCQlQSU5HLAorKwkJWElORVJBTUEsCisrCQlLRVlCSU5ESU5HUywKKysJCVNZTkMs CisrCQlFUlJPUlMsCisrCQlTVEFSVFVQLAorKwkJUFJFRlMsCisrCQlHUk9VUFMsCisrCQlSRVNJ WklORywKKysJCVNIQVBFUywKKysJCUNPTVBPU0lUT1IsCisrCQlFREdFX1JFU0lTVEFOQ0UsCisr CQlEQlVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y3ByZWZpeCA9ICJNRVRBX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfZGlyZWN0aW9uX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGlyZWN0aW9uIHsKKysJCUxF RlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTSwKKysJCVVQLAorKwkJRE9XTiwKKysJ CUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVfaWQgPSAi bWV0YV9kaXNwbGF5X2Nvcm5lcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBEaXNwbGF5 Q29ybmVyIHsKKysJCVRPUExFRlQsCisrCQlUT1BSSUdIVCwKKysJCUJPVFRPTUxFRlQsCisrCQlC T1RUT01SSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVfaWQgPSAibWV0YV9kaXNwbGF5X2Rp cmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBEaXNwbGF5RGlyZWN0aW9uIHsK KysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9FREdFXyIsIHR5 cGVfaWQgPSAibWV0YV9lZGdlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gRWRn ZVR5cGUgeworKwkJV0lORE9XLAorKwkJTU9OSVRPUiwKKysJCVNDUkVFTgorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9FWElU XyIsIHR5cGVfaWQgPSAibWV0YV9leGl0X2NvZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gRXhpdENvZGUgeworKwkJU1VDQ0VTUywKKysJCUVSUk9SCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0ZSQU1FXyIsIHR5 cGVfaWQgPSAibWV0YV9mcmFtZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1 YmxpYyBlbnVtIEZyYW1lRmxhZ3MgeworKwkJQUxMT1dTX0RFTEVURSwKKysJCUFMTE9XU19NRU5V LAorKwkJQUxMT1dTX01JTklNSVpFLAorKwkJQUxMT1dTX01BWElNSVpFLAorKwkJQUxMT1dTX1ZF UlRJQ0FMX1JFU0laRSwKKysJCUFMTE9XU19IT1JJWk9OVEFMX1JFU0laRSwKKysJCUhBU19GT0NV UywKKysJCVNIQURFRCwKKysJCVNUVUNLLAorKwkJTUFYSU1JWkVELAorKwkJQUxMT1dTX1NIQURF LAorKwkJQUxMT1dTX01PVkUsCisrCQlGVUxMU0NSRUVOLAorKwkJQUJPVkUsCisrCQlUSUxFRF9M RUZULAorKwkJVElMRURfUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRlJBTUVfVFlQRV8iLCB0eXBlX2lkID0gIm1l dGFfZnJhbWVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBGcmFtZVR5cGUgewor KwkJTk9STUFMLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElBTE9HLAorKwkJVVRJTElUWSwKKysJ CU1FTlUsCisrCQlCT1JERVIsCisrCQlBVFRBQ0hFRCwKKysJCUxBU1Q7CisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9HUkFCX09QXyIsIHR5cGVfaWQgPSAi bWV0YV9ncmFiX29wX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEdyYWJPcCB7CisrCQlO T05FLAorKwkJV0lORE9XX0JBU0UsCisrCQlDT01QT1NJVE9SLAorKwkJV0FZTEFORF9QT1BVUCwK KysJCUZSQU1FX0JVVFRPTiwKKysJCU1PVklORywKKysJCVJFU0laSU5HX05XLAorKwkJUkVTSVpJ TkdfTiwKKysJCVJFU0laSU5HX05FLAorKwkJUkVTSVpJTkdfRSwKKysJCVJFU0laSU5HX1NXLAor KwkJUkVTSVpJTkdfUywKKysJCVJFU0laSU5HX1NFLAorKwkJUkVTSVpJTkdfVywKKysJCUtFWUJP QVJEX01PVklORywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1VOS05PV04sCisrCQlLRVlCT0FSRF9S RVNJWklOR19OVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX04sCisrCQlLRVlCT0FSRF9SRVNJWklO R19ORSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX0UsCisrCQlLRVlCT0FSRF9SRVNJWklOR19TVywK KysJCUtFWUJPQVJEX1JFU0laSU5HX1MsCisrCQlLRVlCT0FSRF9SRVNJWklOR19TRSwKKysJCUtF WUJPQVJEX1JFU0laSU5HX1cKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfSU5ISUJJVF9TSE9SVENVVFNfRElBTE9HX1JFU1BP TlNFXyIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0X3Nob3J0Y3V0c19kaWFsb2dfcmVzcG9uc2Vf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5oaWJpdFNob3J0Y3V0c0RpYWxvZ1Jlc3Bv bnNlIHsKKysJCUFMTE9XLAorKwkJREVOWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9LRVlCSU5ESU5HX0FDVElPTl8iLCB0 eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfYWN0aW9uX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIEtleUJpbmRpbmdBY3Rpb24geworKwkJTk9ORSwKKysJCVdPUktTUEFDRV8xLAorKwkJ V09SS1NQQUNFXzIsCisrCQlXT1JLU1BBQ0VfMywKKysJCVdPUktTUEFDRV80LAorKwkJV09SS1NQ QUNFXzUsCisrCQlXT1JLU1BBQ0VfNiwKKysJCVdPUktTUEFDRV83LAorKwkJV09SS1NQQUNFXzgs CisrCQlXT1JLU1BBQ0VfOSwKKysJCVdPUktTUEFDRV8xMCwKKysJCVdPUktTUEFDRV8xMSwKKysJ CVdPUktTUEFDRV8xMiwKKysJCVdPUktTUEFDRV9MRUZULAorKwkJV09SS1NQQUNFX1JJR0hULAor KwkJV09SS1NQQUNFX1VQLAorKwkJV09SS1NQQUNFX0RPV04sCisrCQlXT1JLU1BBQ0VfTEFTVCwK KysJCVNXSVRDSF9BUFBMSUNBVElPTlMsCisrCQlTV0lUQ0hfQVBQTElDQVRJT05TX0JBQ0tXQVJE LAorKwkJU1dJVENIX0dST1VQLAorKwkJU1dJVENIX0dST1VQX0JBQ0tXQVJELAorKwkJU1dJVENI X1dJTkRPV1MsCisrCQlTV0lUQ0hfV0lORE9XU19CQUNLV0FSRCwKKysJCVNXSVRDSF9QQU5FTFMs CisrCQlTV0lUQ0hfUEFORUxTX0JBQ0tXQVJELAorKwkJQ1lDTEVfR1JPVVAsCisrCQlDWUNMRV9H Uk9VUF9CQUNLV0FSRCwKKysJCUNZQ0xFX1dJTkRPV1MsCisrCQlDWUNMRV9XSU5ET1dTX0JBQ0tX QVJELAorKwkJQ1lDTEVfUEFORUxTLAorKwkJQ1lDTEVfUEFORUxTX0JBQ0tXQVJELAorKwkJU0hP V19ERVNLVE9QLAorKwkJUEFORUxfTUFJTl9NRU5VLAorKwkJUEFORUxfUlVOX0RJQUxPRywKKysJ CVRPR0dMRV9SRUNPUkRJTkcsCisrCQlTRVRfU1BFV19NQVJLLAorKwkJQUNUSVZBVEVfV0lORE9X X01FTlUsCisrCQlUT0dHTEVfRlVMTFNDUkVFTiwKKysJCVRPR0dMRV9NQVhJTUlaRUQsCisrCQlU T0dHTEVfVElMRURfTEVGVCwKKysJCVRPR0dMRV9USUxFRF9SSUdIVCwKKysJCVRPR0dMRV9BQk9W RSwKKysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJCVRPR0dMRV9TSEFERUQsCisrCQlN SU5JTUlaRSwKKysJCUNMT1NFLAorKwkJQkVHSU5fTU9WRSwKKysJCUJFR0lOX1JFU0laRSwKKysJ CVRPR0dMRV9PTl9BTExfV09SS1NQQUNFUywKKysJCU1PVkVfVE9fV09SS1NQQUNFXzEsCisrCQlN T1ZFX1RPX1dPUktTUEFDRV8yLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMywKKysJCU1PVkVfVE9f V09SS1NQQUNFXzQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV81LAorKwkJTU9WRV9UT19XT1JLU1BB Q0VfNiwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzcsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV84LAor KwkJTU9WRV9UT19XT1JLU1BBQ0VfOSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzEwLAorKwkJTU9W RV9UT19XT1JLU1BBQ0VfMTEsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xMiwKKysJCU1PVkVfVE9f V09SS1NQQUNFX0xFRlQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9SSUdIVCwKKysJCU1PVkVfVE9f V09SS1NQQUNFX1VQLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfRE9XTiwKKysJCU1PVkVfVE9fV09S S1NQQUNFX0xBU1QsCisrCQlNT1ZFX1RPX01PTklUT1JfTEVGVCwKKysJCU1PVkVfVE9fTU9OSVRP Ul9SSUdIVCwKKysJCU1PVkVfVE9fTU9OSVRPUl9VUCwKKysJCU1PVkVfVE9fTU9OSVRPUl9ET1dO LAorKwkJUkFJU0VfT1JfTE9XRVIsCisrCQlSQUlTRSwKKysJCUxPV0VSLAorKwkJTUFYSU1JWkVf VkVSVElDQUxMWSwKKysJCU1BWElNSVpFX0hPUklaT05UQUxMWSwKKysJCU1PVkVfVE9fQ09STkVS X05XLAorKwkJTU9WRV9UT19DT1JORVJfTkUsCisrCQlNT1ZFX1RPX0NPUk5FUl9TVywKKysJCU1P VkVfVE9fQ09STkVSX1NFLAorKwkJTU9WRV9UT19TSURFX04sCisrCQlNT1ZFX1RPX1NJREVfUywK KysJCU1PVkVfVE9fU0lERV9FLAorKwkJTU9WRV9UT19TSURFX1csCisrCQlNT1ZFX1RPX0NFTlRF UiwKKysJCU9WRVJMQVlfS0VZLAorKwkJTE9DQVRFX1BPSU5URVJfS0VZLAorKwkJSVNPX05FWFRf R1JPVVAsCisrCQlBTFdBWVNfT05fVE9QLAorKwkJU1dJVENIX01PTklUT1IsCisrCQlST1RBVEVf TU9OSVRPUiwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfS0VZX0JJTkRJTkdfIiwgdHlwZV9pZCA9ICJtZXRh X2tleV9iaW5kaW5nX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVu dW0gS2V5QmluZGluZ0ZsYWdzIHsKKysJCU5PTkUsCisrCQlQRVJfV0lORE9XLAorKwkJQlVJTFRJ TiwKKysJCUlTX1JFVkVSU0VELAorKwkJTk9OX01BU0tBQkxFLAorKwkJSUdOT1JFX0FVVE9SRVBF QVQsCisrCQlOT19BVVRPX0dSQUIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTEFURVJfIiwgdHlwZV9pZCA9ICJtZXRhX2xh dGVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTGF0ZXJUeXBlIHsKKysJCVJF U0laRSwKKysJCUNBTENfU0hPV0lORywKKysJCUNIRUNLX0ZVTExTQ1JFRU4sCisrCQlTWU5DX1NU QUNLLAorKwkJQkVGT1JFX1JFRFJBVywKKysJCUlETEUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTE9DQUxFX0RJUkVDVElP Tl8iLCB0eXBlX2lkID0gIm1ldGFfbG9jYWxlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBMb2NhbGVEaXJlY3Rpb24geworKwkJTFRSLAorKwkJUlRMCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX01B WElNSVpFXyIsIHR5cGVfaWQgPSAibWV0YV9tYXhpbWl6ZV9mbGFnc19nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIE1heGltaXplRmxhZ3MgeworKwkJSE9SSVpPTlRBTCwK KysJCVZFUlRJQ0FMLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT0RBTF8iLCB0eXBlX2lkID0gIm1ldGFf bW9kYWxfb3B0aW9uc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIE1v ZGFsT3B0aW9ucyB7CisrCQlQT0lOVEVSX0FMUkVBRFlfR1JBQkJFRCwKKysJCUtFWUJPQVJEX0FM UkVBRFlfR1JBQkJFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT05JVE9SX1NXSVRDSF9DT05GSUdfIiwgdHlwZV9pZCA9 ICJtZXRhX21vbml0b3Jfc3dpdGNoX2NvbmZpZ190eXBlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIE1vbml0b3JTd2l0Y2hDb25maWdUeXBlIHsKKysJCUFMTF9NSVJST1IsCisrCQlBTExf TElORUFSLAorKwkJRVhURVJOQUwsCisrCQlCVUlMVElOLAorKwkJVU5LTk9XTgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9N T1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX21vdGlvbl9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGVudW0gTW90aW9uRGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxF RlQsCisrCQlSSUdIVCwKKysJCVVQX0xFRlQsCisrCQlVUF9SSUdIVCwKKysJCURPV05fTEVGVCwK KysJCURPV05fUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfUEFEX0FDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfcGFk X2FjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBhZEFjdGlvblR5cGUg eworKwkJQlVUVE9OLAorKwkJUklORywKKysJCVNUUklQCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNwcmVmaXggPSAiTUVUQV9QUkVGXyIsIHR5cGVf aWQgPSAibWV0YV9wcmVmZXJlbmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFByZWZl cmVuY2UgeworKwkJTU9VU0VfQlVUVE9OX01PRFMsCisrCQlGT0NVU19NT0RFLAorKwkJRk9DVVNf TkVXX1dJTkRPV1MsCisrCQlBVFRBQ0hfTU9EQUxfRElBTE9HUywKKysJCVJBSVNFX09OX0NMSUNL LAorKwkJQUNUSU9OX0RPVUJMRV9DTElDS19USVRMRUJBUiwKKysJCUFDVElPTl9NSURETEVfQ0xJ Q0tfVElUTEVCQVIsCisrCQlBQ1RJT05fUklHSFRfQ0xJQ0tfVElUTEVCQVIsCisrCQlBVVRPX1JB SVNFLAorKwkJQVVUT19SQUlTRV9ERUxBWSwKKysJCUZPQ1VTX0NIQU5HRV9PTl9QT0lOVEVSX1JF U1QsCisrCQlUSVRMRUJBUl9GT05ULAorKwkJTlVNX1dPUktTUEFDRVMsCisrCQlEWU5BTUlDX1dP UktTUEFDRVMsCisrCQlLRVlCSU5ESU5HUywKKysJCURJU0FCTEVfV09SS0FST1VORFMsCisrCQlC VVRUT05fTEFZT1VULAorKwkJV09SS1NQQUNFX05BTUVTLAorKwkJVklTVUFMX0JFTEwsCisrCQlB VURJQkxFX0JFTEwsCisrCQlWSVNVQUxfQkVMTF9UWVBFLAorKwkJR05PTUVfQUNDRVNTSUJJTElU WSwKKysJCUdOT01FX0FOSU1BVElPTlMsCisrCQlDVVJTT1JfVEhFTUUsCisrCQlDVVJTT1JfU0la RSwKKysJCVJFU0laRV9XSVRIX1JJR0hUX0JVVFRPTiwKKysJCUVER0VfVElMSU5HLAorKwkJRk9S Q0VfRlVMTFNDUkVFTiwKKysJCVdPUktTUEFDRVNfT05MWV9PTl9QUklNQVJZLAorKwkJRFJBR0dB QkxFX0JPUkRFUl9XSURUSCwKKysJCUFVVE9fTUFYSU1JWkUsCisrCQlDRU5URVJfTkVXX1dJTkRP V1MsCisrCQlEUkFHX1RIUkVTSE9MRCwKKysJCUxPQ0FURV9QT0lOVEVSOworKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfIiwgdHlwZV9pZCA9ICJtZXRhX3Nl bGVjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNlbGVjdGlvblR5cGUg eworKwkJU0VMRUNUSU9OX1BSSU1BUlksCisrCQlTRUxFQ1RJT05fQ0xJUEJPQVJELAorKwkJU0VM RUNUSU9OX0RORCwKKysJCU5fU0VMRUNUSU9OX1RZUEVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NIQURPV19NT0RFXyIs IHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBTaGFkb3dNb2RlIHsKKysJCUFVVE8sCisrCQlGT1JDRURfT0ZGLAorKwkJRk9SQ0VEX09OCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9 ICJNRVRBX1NJREVfIiwgdHlwZV9pZCA9ICJtZXRhX3NpZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGVudW0gU2lkZSB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlCT1RUT00K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4 ID0gIk1FVEFfU0laRV9DSEFOR0VfIiwgdHlwZV9pZCA9ICJtZXRhX3NpemVfY2hhbmdlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNpemVDaGFuZ2UgeworKwkJTUFYSU1JWkUsCisrCQlV Tk1BWElNSVpFLAorKwkJRlVMTFNDUkVFTiwKKysJCVVORlVMTFNDUkVFTgorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9MQVlF Ul8iLCB0eXBlX2lkID0gIm1ldGFfc3RhY2tfbGF5ZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gU3RhY2tMYXllciB7CisrCQlERVNLVE9QLAorKwkJQk9UVE9NLAorKwkJTk9STUFMLAor KwkJVE9QLAorKwkJRE9DSywKKysJCU9WRVJSSURFX1JFRElSRUNULAorKwkJTEFTVAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9UQUJfTElTVF8iLCB0eXBlX2lkID0gIm1ldGFfdGFiX2xpc3RfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gVGFiTGlzdCB7CisrCQlOT1JNQUwsCisrCQlET0NLUywKKysJCUdST1VQLAor KwkJTk9STUFMX0FMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNwcmVmaXggPSAiTUVUQV9UQUJfU0hPV18iLCB0eXBlX2lkID0gIm1ldGFfdGFiX3No b3dfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBUYWJTaG93VHlwZSB7CisrCQlJ Q09OLAorKwkJSU5TVEFOVExZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1ZJUlRVQUxfIiwgdHlwZV9pZCA9ICJtZXRhX3Zp cnR1YWxfbW9kaWZpZXJfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBW aXJ0dWFsTW9kaWZpZXIgeworKwkJU0hJRlRfTUFTSywKKysJCUNPTlRST0xfTUFTSywKKysJCUFM VF9NQVNLLAorKwkJTUVUQV9NQVNLLAorKwkJU1VQRVJfTUFTSywKKysJCUhZUEVSX01BU0ssCisr CQlNT0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ssCisrCQlNT0Q1X01BU0sK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4 ID0gIk1FVEFfV0lORE9XX0NMSUVOVF9UWVBFXyIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfY2xp ZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2luZG93Q2xpZW50VHlwZSB7 CisrCQlXQVlMQU5ELAorKwkJWDExCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV19NRU5VXyIsIHR5cGVfaWQgPSAi bWV0YV93aW5kb3dfbWVudV90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFdpbmRv d01lbnVUeXBlIHsKKysJCVdNLAorKwkJQVBQCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV18iLCB0eXBlX2lkID0g Im1ldGFfd2luZG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2luZG93VHlw ZSB7CisrCQlOT1JNQUwsCisrCQlERVNLVE9QLAorKwkJRE9DSywKKysJCURJQUxPRywKKysJCU1P REFMX0RJQUxPRywKKysJCVRPT0xCQVIsCisrCQlNRU5VLAorKwkJVVRJTElUWSwKKysJCVNQTEFT SFNDUkVFTiwKKysJCURST1BET1dOX01FTlUsCisrCQlQT1BVUF9NRU5VLAorKwkJVE9PTFRJUCwK KysJCU5PVElGSUNBVElPTiwKKysJCUNPTUJPLAorKwkJRE5ELAorKwkJT1ZFUlJJREVfT1RIRVIK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5j ZV9wb3MgPSAyLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBJZGxlTW9uaXRvcldhdGNoRnVu YyAoTWV0YS5JZGxlTW9uaXRvciBtb25pdG9yLCB1aW50IHdhdGNoX2lkKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gNC45KV0KKysJ cHVibGljIGRlbGVnYXRlIHZvaWQgS2V5SGFuZGxlckZ1bmMgKE1ldGEuRGlzcGxheSBkaXNwbGF5 LCBNZXRhLldpbmRvdyB3aW5kb3csIFtDQ29kZSAodHlwZSA9ICJDbHV0dGVyS2V5RXZlbnQqIild IENsdXR0ZXIuS2V5RXZlbnQ/IGV2ZW50LCBNZXRhLktleUJpbmRpbmcgYmluZGluZyk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDEu OSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFByZWZzQ2hhbmdlZEZ1bmMgKE1ldGEuUHJlZmVy ZW5jZSBwcmVmKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg aW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgV2luZG93Rm9yZWFj aEZ1bmMgKE1ldGEuV2luZG93IHdpbmRvdyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfQ1VSUkVOVF9USU1FIildCisrCXB1YmxpYyBj b25zdCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0RFRkFVTFRfSUNPTl9OQU1FIildCisrCXB1YmxpYyBj b25zdCBzdHJpbmcgREVGQVVMVF9JQ09OX05BTUU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNPTl9IRUlHSFQiKV0KKysJcHVibGlj IGNvbnN0IGludCBJQ09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9JQ09OX1dJRFRIIildCisrCXB1YmxpYyBjb25zdCBp bnQgSUNPTl9XSURUSDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgY25hbWUgPSAiTUVUQV9NQUpPUl9WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUFK T1JfVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y25hbWUgPSAiTUVUQV9NSUNST19WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlDUk9f VkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25h bWUgPSAiTUVUQV9NSU5JX0lDT05fSEVJR0hUIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlOSV9J Q09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y25hbWUgPSAiTUVUQV9NSU5JX0lDT05fV0lEVEgiKV0KKysJcHVibGljIGNvbnN0IGludCBNSU5J X0lDT05fV0lEVEg7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNuYW1lID0gIk1FVEFfTUlOT1JfVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1JTk9S X1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNu YW1lID0gIk1FVEFfUExVR0lOX0FQSV9WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgUExV R0lOX0FQSV9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX0JFRk9SRV9SRURSQVciKV0KKysJcHVibGljIGNv bnN0IGludCBQUklPUklUWV9CRUZPUkVfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1BSRUZTX05PVElGWSIp XQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1BSRUZTX05PVElGWTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9S RURSQVciKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9SRURSQVc7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJT1JJVFlf UkVTSVpFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVTSVpFOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1ZJUlRVQUxf Q09SRV9LRVlCT0FSRF9JRCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZJUlRVQUxfQ09SRV9LRVlC T0FSRF9JRDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25h bWUgPSAiTUVUQV9WSVJUVUFMX0NPUkVfUE9JTlRFUl9JRCIpXQorKwlwdWJsaWMgY29uc3QgaW50 IFZJUlRVQUxfQ09SRV9QT0lOVEVSX0lEOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGFjdGl2YXRlX3Nlc3Npb24gKCk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgYWRkX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVidWdGbGFnIGRl YnVnX2ZsYWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1dHRlci5QaWNr RGVidWdGbGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGV4aXQgKE1ldGEuRXhpdENvZGUgY29k ZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJs aWMgc3RhdGljIHN0cmluZyBnX3V0Zjhfc3RybmR1cCAoc3RyaW5nIHNyYywgc2l6ZV90IG4pOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0 YXRpYyB1bm93bmVkIEdMaWIuT3B0aW9uQ29udGV4dCBnZXRfb3B0aW9uX2NvbnRleHQgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3Rh dGljIGJvb2wgZ2V0X3JlcGxhY2VfY3VycmVudF93bSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBpbml0ICgpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0 YXRpYyBib29sIGlzX3Jlc3RhcnQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcXVpdCAoTWV0YS5FeGl0Q29kZSBj b2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCByZWdpc3Rlcl93aXRoX3Nlc3Npb24gKCk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcmVt b3ZlX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVidWdGbGFnIGRlYnVnX2ZsYWdzLCBD bHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1dHRlci5QaWNrRGVidWdGbGFnIHBp Y2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIHJlc3RhcnQgKHN0cmluZz8gbWVzc2FnZSk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIGlu dCBydW4gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQor KwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2dub21lX3dtX2tleWJpbmRpbmdzIChzdHJpbmcgd21f a2V5YmluZGluZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi KV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF93bV9uYW1lIChzdHJpbmcgd21fbmFtZSk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3Rh dGljIHZvaWQgdGVzdF9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIHgxMV9pbml0X2dka19kaXNwbGF5ICgp IHRocm93cyBHTGliLkVycm9yOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jbHV0dGVy LTYtY3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEKK25ldyBm aWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uODkyMjRiZTYKKy0tLSAvZGV2L251bGwK KysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYQorQEAgLTAsMCArMSwxNDcg QEAKKytuYW1lc3BhY2UgQ2x1dHRlciB7CisrCisrICBwdWJsaWMgc3RydWN0IE1hdHJpeCA6IENv Z2wuTWF0cml4IHsKKysgIH0KKysKKysgIHB1YmxpYyBjbGFzcyBCYWNrZW5kIDogR0xpYi5PYmpl Y3QgeworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIGFkZF9vcHRp b25zIChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVi bGljIHZpcnR1YWwgYm9vbCBjcmVhdGVfY29udGV4dCAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysg ICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLlN0YWdl V2luZG93IGNyZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBlbnN1cmVf Y29udGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyB2aXJ0dWFsIENsdXR0ZXIuRmVhdHVyZUZsYWdzIGdldF9mZWF0dXJlcyAoKTsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2V2ZW50cyAoKTsKKysg ICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1cmVzICgp OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIHBvc3RfcGFyc2Ug KCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0 dWFsIGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFwcGVy XQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIHJlZHJhdyAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7 CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBlICgpIildCisrICBwdWJsaWMgY2xh c3MgQm94IDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFn ZXIgbGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKyAgfQorKworKyAgW0NDb2RlICh0eXBl X2lkID0gIkNMVVRURVJfVFlQRV9DT0xPUiIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysgIHB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKyAgICBbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysgICAgcHVibGljIENvbG9yLmZyb21faGxz IChmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJhdGlvbik7CisrICAgIFtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3BpeGVsIildCisrICAgIHB1YmxpYyBD b2xvci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysgICAgcHVibGljIENvbG9yLmZyb21fc3RyaW5n IChzdHJpbmcgc3RyKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21f c3RyaW5nIildCisrICAgIHB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0cik7Cisr ICAgIHB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfc3RhdGljIChDbHV0 dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysgIH0KKysKKysgIFtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250YWluZXJf Z2V0X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBpbnRlcmZhY2UgQ29udGFpbmVyIDogR0xpYi5PYmpl Y3QgeworKyAgICBwdWJsaWMgdm9pZCBhZGQgKHBhcmFtcyBDbHV0dGVyLkFjdG9yW10gYWN0b3Jz KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19maW5kX2No aWxkX3Byb3BlcnR5IildCisrICAgIHB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVj IGZpbmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysgICAgW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19saXN0X2NoaWxkX3Byb3BlcnRpZXMi KV0KKysgICAgcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWNbXSBsaXN0X2NoaWxk X3Byb3BlcnRpZXMgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVf ZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X2dldF90 eXBlICgpIildCisrICBbQ29tcGFjdF0KKysgIHB1YmxpYyBjbGFzcyBFdmVudCB7CisrICAgIHB1 YmxpYyBDbHV0dGVyLkFueUV2ZW50IGFueSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJBbnlF dmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuQnV0dG9uRXZlbnQgYnV0dG9u IHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckJ1dHRvbkV2ZW50ICopIildIGdldDsgfQorKyAg ICBwdWJsaWMgQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGNyb3NzaW5nIHsgW0NDb2RlIChjbmFtZSA9 ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVy LktleUV2ZW50IGtleSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJLZXlFdmVudCAqKSIpXSBn ZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90aW9uIHsgW0NDb2RlIChj bmFtZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1 dHRlci5TY3JvbGxFdmVudCBzY3JvbGwgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU2Nyb2xs RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGVFdmVudCBz dGFnZV9zdGF0ZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTdGFnZVN0YXRlRXZlbnQgKiki KV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQgdG91Y2ggeyBbQ0NvZGUg KGNuYW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENs dXR0ZXIuVG91Y2hwYWRQaW5jaEV2ZW50IHRvdWNocGFkX3BpbmNoIHsgW0NDb2RlIChjbmFtZSA9 ICIoQ2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENs dXR0ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3aXBlIHsgW0NDb2RlIChjbmFtZSA9 ICIoQ2x1dHRlclRvdWNocGFkU3dpcGVFdmVudCAqKSIpXSBnZXQ7IH0KKysgIH0KKysKKysgIFtD Q29kZSAodHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX2dldF90eXBlICgpIiwgY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFN0YWdlIDogQ2x1 dHRlci5Hcm91cCB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9yZWRyYXciKV0KKysg ICAgcHVibGljIHZvaWQgcmVkcmF3ICgpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgaW50ZXJmYWNlIFN0YWdl V2luZG93IDogR0xpYi5PYmplY3QgeworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJz dHJhY3QgaW50IGdldF9wZW5kaW5nX3N3YXBzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBw dWJsaWMgYWJzdHJhY3QgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93cmFwcGVyICgpOworKyAg ICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCBoYXNfcmVkcmF3X2NsaXBz ICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgp OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCBpZ25vcmluZ19y ZWRyYXdfY2xpcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCBi b29sIHJlYWxpemUgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2 b2lkIHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysgICAgW05vV3JhcHBlcl0KKysg ICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1cnNvcl92aXNpYmxlIChib29sIGN1cnNvcl92 aXNpYmxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0 X2Z1bGxzY3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7CisrICAgIFtOb1dyYXBwZXJdCisrICAg IHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysgICAgW05v V3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3VzZXJfcmVzaXphYmxlIChi b29sIGlzX3Jlc2l6YWJsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFj dCB2b2lkIHNob3cgKGJvb2wgZG9fcmFpc2UpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJs aWMgYWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVf aWQgPSAiY2x1dHRlcl90ZXh0dXJlX2dldF90eXBlICgpIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFRleHR1cmUgOiBDbHV0dGVyLkFj dG9yIHsKKysgICAgcHVibGljIENvZ2wuTWF0ZXJpYWwgY29nbF9tYXRlcmlhbCB7IGdldDsgc2V0 OyB9CisrICAgIHB1YmxpYyBDb2dsLlRleHR1cmUgY29nbF90ZXh0dXJlIHsgZ2V0OyBzZXQ7IH0K KysgIH0KKysKKysgIFtDb21wYWN0XQorKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgY2xhc3MgVGltZW91dFBvb2wgeworKyAgICBb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrICAgIHB1YmxpYyBUaW1l b3V0UG9vbCAoaW50IHByaW9yaXR5KTsKKysgIH0KKysKKysgIFtDQ29kZSAoY3ByZWZpeCA9ICJD TFVUVEVSX0ZFQVRVUkVfIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKyAgW0ZsYWdzXQorKyAgcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsKKysgICAgVEVYVFVS RV9OUE9UOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9hdmFpbGFibGUi KV0KKysgICAgcHVibGljIGJvb2wgaXNfYXZhaWxhYmxlICgpOworKyAgICBbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrICAgIHB1YmxpYyBzdGF0aWMgQ2x1dHRl ci5GZWF0dXJlRmxhZ3MgQGdldCAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJD TFVUVEVSX1RZUEVfVU5JVFMiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrICBwdWJsaWMgc3RydWN0IFVuaXRzIHsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX3VuaXRzX2Zyb21fY20iKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fY20gKGZsb2F0IGNt KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW0iKV0KKysgICAg cHVibGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21f ZW1fZm9yX2ZvbnQgKHN0cmluZyBmb250X25hbWUsIGZsb2F0IGVtKTsKKysgICAgW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21f bW0gKGZsb2F0IG1tKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21f cGl4ZWxzIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3BpeGVscyAoaW50IHB4KTsKKysgICAg W0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysgICAgcHVibGljIFVu aXRzLmZyb21fcHQgKGZsb2F0IHB0KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3Vu aXRzX2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3N0cmluZyAoc3RyaW5n IHN0cik7CisrICB9CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBz IGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRl eCAwMDAwMDAwMC4uN2E3MGQ2ZGYKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNs dXR0ZXItNi5kZXBzCitAQCAtMCwwICsxLDQgQEAKKythdGsKKytjYWlybworK2pzb24tZ2xpYi0x LjAKKyttdXR0ZXItY29nbC02CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRlci02LnZh cGkgYi92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2lu ZGV4IDAwMDAwMDAwLi5kNjZmOWFjOAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXIt Y2x1dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsODY4NyBAQAorKy8qIG11dHRlci1jbHV0dGVyLTYu dmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUg KGNwcmVmaXggPSAiQ2x1dHRlciIsIGdpcl9uYW1lc3BhY2UgPSAiQ2x1dHRlciIsIGdpcl92ZXJz aW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiY2x1dHRlcl8iKV0KKytuYW1lc3BhY2Ug Q2x1dHRlciB7CisrCW5hbWVzcGFjZSBLZXkgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQDA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8xIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV8zMjcwX0FsdEN1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQWx0Q3Vy c29yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BdHRuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9BdHRuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9CYWNrVGFiIildCisrCQlwdWJsaWMgY29u c3QgdWludCBAMzI3MF9CYWNrVGFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DaGFuZ2VTY3JlZW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0NoYW5nZVNjcmVlbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzMyNzBfQ29weSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQ29weTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfQ3Vyc29yQmxpbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcw X0N1cnNvckJsaW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DdXJzb3JTZWxlY3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAzMjcwX0N1cnNvclNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBf RGVsZXRlV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRGVsZXRlV29yZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzMyNzBfRHVwbGljYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9EdXBsaWNhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VudGVyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBAMzI3MF9FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXJhc2VFT0YiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0VyYXNlRU9GOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9F cmFzZUlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FcmFzZUlucHV0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfMzI3MF9FeFNlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf RXhTZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0ZpZWxkTWFyayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQDMyNzBfRmllbGRNYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9JZGVudCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfSWRlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0p1 bXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0p1bXA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX0tleUNsaWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9LZXlDbGljazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzMyNzBfTGVmdDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0xl ZnQyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAz MjcwX1BBMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEEyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMzI3MF9QQTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BBMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfUEEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QbGF5IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMzI3MF9QbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QcmludFNjcmVlbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUHJpbnRTY3JlZW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV8zMjcwX1F1aXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1F1aXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX1JlY29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUmVjb3Jk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SZXNldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMy NzBfUmVzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1JpZ2h0MiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfUmlnaHQyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SdWxlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9SdWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9TZXR1cCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfU2V0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1Rl c3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Rlc3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV80 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEA1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQUUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFicmV2ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlYmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWJlbG93ZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQWJyZXZlaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZlaG9v azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB YnJldmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hfRW5hYmxlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBY2Nlc3NYX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hfRmVlZGJh Y2tfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2Nlc3NYX0ZlZWRiYWNrX0VuYWJs ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxl eGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4aG9vayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1 bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXh0aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FkZEZhdm9yaXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZGRGYXZv cml0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fob29rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB bHRfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBbHRf UjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFtYWNy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBb2dv bmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXBwbGljYXRpb25MZWZ0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcHBsaWNhdGlvbkxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcHBsaWNhdGlvblJpZ2h0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcHBsaWNhdGlvblJpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18wOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18xOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18yOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY180Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY181 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y182OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY184OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY185OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FpbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2FpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19hbGVmIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19hbGVm bWFrc3VyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FsZWZtYWtzdXJhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2JlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2Jl aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19jb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2RhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFtbWEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYW1tYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19kYW1tYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RhbW1hdGFuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RkYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19kZGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhcnNpX3llaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2ZhcnNpX3llaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mYXRoYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhdGhhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX2ZhdGhhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZmF0aGF0YW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf ZmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2Z1bGxzdG9wIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfZnVsbHN0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZ2FmIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2FmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2doYWlu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2hhaW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19oYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfaGFtemEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19o YW16YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9hYm92ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2hhbXphX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXph X2JlbG93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFfYmVsb3c7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19oYW16YW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YW9ud2F3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbndhdzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19oYW16YW9ueWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbnll aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YXVuZGVyYWxlZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2hhbXphdW5kZXJhbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hl aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19oZWhfZG9hY2hhc2htZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oZWhf ZG9hY2hhc2htZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoX2dvYWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19oZWhfZ29hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19qZWVt IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfamVlbTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19qZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19qZWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfa2FmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2FmOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2thc3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf a2FzcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FzcmF0YW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19rYXNyYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rZWhlaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2tlaGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2toYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19raGFoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2xhbTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19tYWRkYV9hYm92ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX21hZGRhX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21hZGRhb25hbGVmIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFvbmFsZWY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfbWVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX21lZW07CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfbm9vbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX25vb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbl9naHVubmEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19ub29uX2dodW5uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19wZWgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19wZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcGVy Y2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3BlcmNlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfcWFmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcWFmOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3F1ZXN0aW9uX21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19xdWVzdGlvbl9tYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3JhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcnJlaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JyZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfc2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2FkOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX3NlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zZWVuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3NlbWljb2xvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX3NlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zaGFkZGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19zaGFkZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2hlZW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGVlbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19zdWt1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N1a3VuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3N1cGVyc2NyaXB0X2FsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19zdXBlcnNjcmlwdF9hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N3aXRjaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY190YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190YWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfdGF0d2VlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RhdHdl ZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGNoZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY190Y2hlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190ZWgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY190ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGVobWFyYnV0YSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RlaG1hcmJ1dGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfdGhhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RoYWw7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfdGhlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3Ro ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdHRlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX3R0ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdmVoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfdmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3dhdyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX3dhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY195ZWgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY195ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf eWVoX2JhcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfeWVoX2JhcmVlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3phaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3ph aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfemFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FUIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9BVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FZQiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQVlCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fQkVO IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9CRU47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9DSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0NIQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX0RBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9E QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RaQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fRFpBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0ZFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9GRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0dI QVQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0dIQVQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9HSU0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0dJTTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9ISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hPIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9ITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0lOSSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fSU5JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fSkUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fS0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0tFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fS0VOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9LRU47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX0tIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0xZVU4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX0xZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9NRU4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX01FTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9OVTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX087CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9QRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUEU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QWVVSIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9QWVVSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUkEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX1JBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUkUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f U0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1NFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fU0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9TSEE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9UQ0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9UQ0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVE8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFNBIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9UU0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UU08i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RTTzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX1RZVU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RZVU47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9WRVYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X1ZFVjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZPIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9WTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZZVU4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX1ZZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9ZRUNI IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9ZRUNIOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fWkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1pBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9a SEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX2FjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2FtYW5hayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYW1hbmFrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fYXBvc3Ryb3BoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXBvc3Ry b3BoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9hdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F5YiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fYXliOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYmVuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9iZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9idXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2J1dDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX2NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fY2hh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZHphIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9kemE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9lIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZXhj bGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9leGNsYW07CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9mZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9mdWxsX3N0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX2Z1bGxfc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2doYXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2doYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9naW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2dpbTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX2hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9oaTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2h5cGhlbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5faHlwaGVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5faW5pIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9pbmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5famU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9rZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2tlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2toZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fa2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbGlnYXR1cmVfZXciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2xpZ2F0dXJlX2V3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fbHl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbHl1bjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX21lbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fbWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbnUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX251OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3BhcnV5 ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcGFydXlrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3BlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fcHl1ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fcHl1cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3F1ZXN0aW9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9xdWVzdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Jh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9yYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9yZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX3NlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NlcGFyYXRpb25fbWFyayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fc2VwYXJhdGlvbl9tYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fc2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zaGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9zaGVzaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3No ZXNodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RjaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3RjaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90byIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90c2Ei KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RzYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX3RzbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdHNvOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fdHl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f dHl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Zlcmpha2V0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl92ZXJqYWtldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3ZldiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmV2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fdm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3ZvOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fdnl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdnl1 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3llY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3llY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl95ZW50YW1uYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5feWVudGFtbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl96YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5femE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl96aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3poZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0F0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXRpbGRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXVkaWJsZUJlbGxfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBdWRpYmxlQmVsbF9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0N5Y2xlVHJhY2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvQ3ljbGVUcmFjazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1 ZGlvRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9Gb3J3YXJkOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXVkaW9Mb3dlclZvbHVtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9M b3dlclZvbHVtZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTWVkaWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEF1ZGlvTWVkaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb01pY011dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEF1ZGlvTWljTXV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTXV0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9O ZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb05leHQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B dWRpb1BhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1BhdXNlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9QbGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1BsYXk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BdWRpb1ByZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUHJldjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0F1ZGlvUmFpc2VWb2x1bWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEF1ZGlvUmFpc2VWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JhbmRvbVBsYXkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmFuZG9tUGxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlv UmVjb3JkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JlY29yZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0F1ZGlvUmVwZWF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JlcGVhdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F1ZGlvUmV3aW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1Jl d2luZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvU3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXVkaW9TdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXdheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXdheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9CYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhYm92ZWRvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0JhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhY2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9CYWNrRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFja0Zvcndh cmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrU3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJh Y2tTcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhdHRlcnkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEJhdHRlcnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CZWdpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QmVnaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CbHVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCbHVl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQmx1ZXRvb3RoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCbHVl dG9vdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Cb29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCb29r OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQm91bmNlS2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEJvdW5jZUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJlYWsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEJyZWFrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJpZ2h0bmVzc0FkanVzdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQnJpZ2h0bmVzc0FkanVzdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0J5 ZWxvcnVzc2lhbl9TSE9SVFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJ5ZWxvcnVzc2lhbl9T SE9SVFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5fc2hvcnR1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBCeWVsb3J1c3NpYW5fc2hvcnR1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NEIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD SDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0NfSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ19IOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ19oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDX2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhYm92ZWRvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ2FsY3VsYXRvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FsY3VsYXRvcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0NhbGVuZGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYWxlbmRh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0NhbmNlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FuY2Vs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ2Fwc19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYXBz X0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENj YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD Y2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD bGVhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyR3JhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q2xlYXJHcmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2xvc2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IENsb3NlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29kZWlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDb2RlaW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db2xvblNpZ24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IENvbG9uU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbW11bml0eSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ29tbXVuaXR5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJhc3RBZGp1c3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyYXN0QWRqdXN0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29u dHJvbF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cm9sX0w7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Db250cm9sX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyb2xfUjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0NvcHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvcHk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DcnV6ZWlyb1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENydXplaXJvU2lnbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3V0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3ljbGVBbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ljbGVBbmdsZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19CRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfQkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX0NIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0NIRV9kZXNj ZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRV9kZXNjZW5kZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEVfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfQ0hFX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19E RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfREU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19EWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19EWkhFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VGIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19FRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VMIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19FTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VNIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VO IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0VOX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRU5f ZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRVIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0VSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRVMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VTOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfR0hF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19HSEU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19HSEVfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19HSEVfYmFy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEFSRFNJR04iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0hBUkRTSUdOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf SEFfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQV9kZXNjZW5k ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSUUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0lFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSU8iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSV9t YWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lfbWFjcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0pF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX0tBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0FfZGVzY2VuZGVyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19LQV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19L QV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTEpFIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19MSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19OSkUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX05KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX087CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19PX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfT19iYXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19QRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TQ0hXQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfU0NIV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSEEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1NIQ0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSENIQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1NISEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X1NISEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSE9SVEkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX1NIT1JUSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NPRlRTSUdO IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TT0ZUU0lHTjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX1RFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19URTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX1RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfVFNFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1VfbWFjcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1Vfc3RyYWlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1Vfc3RyYWln aHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFpZ2h0X2JhciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodF9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19WRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVkU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19ZQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWUE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ZRVJVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19ZRVJVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWVUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX1lVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkhF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aSEU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19aSEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19a SEVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2JlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19iZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2No ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfY2hlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfY2hlX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf Y2hlX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2NoZV92ZXJ0c3Ryb2tlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVfdmVydHN0cm9rZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX2RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19kZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2R6aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2R6aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZWYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VtOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW5fZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19lbl9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19naGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2doZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2doZV9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2doZV9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYV9k ZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhX2Rlc2NlbmRlcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2hhcmRzaWduIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19oYXJkc2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2kiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pX21h Y3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaV9tYWNyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19pZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaWU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfaW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19qZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYV9k ZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thX2Rlc2NlbmRlcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2thX3ZlcnRzdHJva2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX2thX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19s amUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2xqZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfbmplOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX29fYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19vX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3BlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19wZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NjaHdh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zY2h3YTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hjaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX3NoY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hoYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfc2hoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Nob3J0aSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hvcnRpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfc29mdHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NvZnRz aWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX3RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdHNlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY190c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191IildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf dV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3VfbWFjcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfdV9zdHJhaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Vfc3RyYWlnaHRf YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X3N0cmFpZ2h0X2JhcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y192ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3lhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY195YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3llcnUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX3llcnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY195dSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY196ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfemU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY196aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3poZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3poZV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX3poZV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EIildCisrCQlw dWJsaWMgY29uc3QgdWludCBEOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRE9TIildCisrCQlwdWJsaWMgY29u c3QgdWludCBET1M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IERhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RjYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGVsZXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBEZWxldGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EaXNwbGF5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBEaXNwbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG9jdW1lbnRzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBEb2N1bWVudHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb25nU2lnbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRG9uZ1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb3duIildCisrCQlwdWJs aWMgY29uc3QgdWludCBEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRHN0cm9rZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FTkciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVO RzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0VUSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRVRIOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRVpIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFWkg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9FYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVhYm92ZWRvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFYmVsb3dkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9FY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjYXJvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3Vt ZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleGJlbG93 ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1 bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXh0 aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0VjdVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjdVNpZ247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFZGlhZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFZ3JhdmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9FaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWhvb2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9FaXN1X1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFaXN1X1NoaWZ0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRWlzdV90b2dnbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVp c3VfdG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWplY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEVqZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRW5k OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRW9nb25l azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0VzY2FwZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXNjYXBl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdGg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9FdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV0aWxkZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0V1cm9TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdXJvU2lnbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0V4Y2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFeGNlbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0V4ZWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV4ZWN1dGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9FeHBsb3JlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXhwbG9yZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEwIild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYxMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YxNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjE2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GMTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxOCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE5IildCisrCQlw dWJsaWMgY29uc3QgdWludCBGMTk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYyMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIxOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjIyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyMzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YyNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYyNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjI3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyOTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YzMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjMxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYzMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjMzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjM0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0Y0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0Y1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0Y2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBGODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZGcmFuY1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEZGcmFuY1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzAiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEZhcnNpXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8xIildCisrCQlwdWJs aWMgY29uc3QgdWludCBGYXJzaV8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRmFyc2lfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEZhcnNpXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV80IildCisrCQlw dWJsaWMgY29uc3QgdWludCBGYXJzaV80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV83IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV95ZWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpX3llaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Zhdm9y aXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmF2b3JpdGVzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RmluYW5jZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmluYW5jZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0ZpbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaXJz dF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmlyc3RfVmlydHVhbF9T Y3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Gb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG b3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRnJhbWVCYWNrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGcmFtZUJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GcmFtZUZvcndhcmQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEZyYW1lRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dhbWUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdhbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fYW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f YmFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9iYW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl9jYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2NhbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX2NoYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX2NoYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaGluIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHZW9yZ2lhbl9jaGluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2lsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lh bl9kb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2RvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9lbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX2ZpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lh bl9maTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2dhbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2VvcmdpYW5fZ2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZ2hhbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZ2hhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hh ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGFlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5faGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oYXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl9oZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oaWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX2hpZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hvZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5faG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2luOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5famhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5famhhbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dlb3JnaWFuX2ppbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5famls OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fa2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH ZW9yZ2lhbl9rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9raGFyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHZW9yZ2lhbl9raGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fbGFzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9sYXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl9tYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX21hbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dlb3JnaWFuX25hciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fbmFy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcGFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHZW9yZ2lhbl9wYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9waGFyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9waGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5fcWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9xYXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HZW9yZ2lhbl9yYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3JhZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3NhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vv cmdpYW5fc2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fc2hpbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3RhbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5fdGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl90YXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HZW9yZ2lhbl91biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl92aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX3ZpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3dlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl93ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3hhbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR2VvcmdpYW5feGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5femVu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96ZW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H ZW9yZ2lhbl96aGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96aGFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdvOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfQUxQSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0FMUEhBOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfQUxQSEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX0FMUEhBYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQkVUQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfQkVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0NISSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQ0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfREVMVEEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0RFTFRBOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfRVBTSUxPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVBTSUxPTjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX0VQU0lMT05hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX0VQU0lMT05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FVEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX0VUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VUQWFjY2VudCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVRBYWNjZW50OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfR0FNTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0dBTU1BOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfSU9UQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX0lPVEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBZGlhZXJlc2lzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBZGlhZXJlc2lzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfSU9UQWRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RB ZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19LQVBQQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfS0FQUEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19MQU1CREEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX0xBTUJEQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0xBTURB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1EQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX01VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19NVTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19OVTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX09NRUdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUVHQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX09NRUdBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19PTUVHQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NSUNST04iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX09NSUNST047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUlD Uk9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUlDUk9OYWNjZW50Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfUEhJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19Q SEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfUEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QU0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX1BTSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1JITyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfUkhPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfU0lHTUEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX1NJR01BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVEFVIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19UQVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19USEVU QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEhFVEE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19VUFNJTE9OIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19VUFNJTE9OOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfVVBTSUxPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT05kaWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxPTmRpZXJlc2lzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfWEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1hJOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfWkVUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfWkVU QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2FjY2VudGRpZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19hY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2FscGhh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX2FscGhhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBoYWFjY2Vu dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2JldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX2JldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19jaGkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX2NoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2RlbHRhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19kZWx0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2Vwc2lsb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2Vwc2lsb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19lcHNpbG9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19lcHNpbG9uYWNj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19ldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ldGFhY2NlbnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX2V0YWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2ZpbmFsc21h bGxzaWdtYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZmluYWxzbWFsbHNpZ21hOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfZ2FtbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X2dhbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaG9yaXpiYXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX2hvcml6YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGFh Y2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFhY2NlbnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19pb3RhYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX2lvdGFhY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGFkaWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YWRpZXJlc2lzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfa2FwcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2thcHBh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbGFtYmRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19sYW1iZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19sYW1kYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfbGFtZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19tdSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfbXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19udSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWVnYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19vbWVnYWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2FhY2NlbnQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWljcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19vbWljcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21pY3JvbmFjY2VudCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX3BoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcGhpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfcGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3BpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfcHNpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19wc2k7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19yaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3JobzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX3NpZ21hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19zaWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdGF1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla190YXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla190aGV0YSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGhldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla191 cHNpbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfdXBzaWxvbmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf dXBzaWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25hY2NlbnRkaWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmFjY2VudGRpZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla191cHNpbG9uZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla194aSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfeGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla196ZXRh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla196ZXRhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0EiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FFIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQXJh ZUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BcmFlQTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9BcmFlQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BcmFlQUU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfQmFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9CYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9DaWV1YyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0NpZXVjOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0NvZGVpbnB1dCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0NvZGVpbnB1dDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9EaWtldWQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9F TzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0VVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9IYW5qYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0hhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0hpZXVoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9JZXVuZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9KX0NpZXVjIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf Sl9DaWV1YzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0Rpa2V1ZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0pfRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSGlldWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0hpZXVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0lldW5nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9KX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2hpZXVxIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSl9LaGlldXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9L aXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0tpeWVvZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9KX0tpeWVvZ1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9La29namlEYWxyaW5JZXVu ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2tvZ2ppRGFscmluSWV1bmc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9OaWV1biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9OaWV1 bkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9OaWV1bkhpZXVoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BhblNpb3MiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BhblNpb3M7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSl9QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BoaWV1ZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfSl9QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViU2lvcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWJTaW9zOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0pfUmlldWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxIaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfUmlldWxIaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsS2l5ZW9n IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bEtpeWVvZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9KX1JpZXVsTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX1JpZXVsTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bFBoaWV1ZiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQaGlldWY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9SaWV1bFBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9S aWV1bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxTaW9zIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9SaWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFRpZXV0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1NzYW5nS2l5ZW9nIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ0tpeWVvZzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9KX1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfU3Nh bmdTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfVGlldXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9KX1RpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfWWVvcmluSGll dWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1llb3JpbkhpZXVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0phbW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KYW1v OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0plb25qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0plb25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KaWV1aiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0toaWV1cSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0toaWV1cTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9LaXllb2c7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfS2l5ZW9nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2tvZ2ppRGFscmluSWV1bmci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9La29namlEYWxyaW5JZXVuZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX01p ZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX011bHRpcGxlQ2FuZGlkYXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfTXVsdGlwbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9OaWV1bjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9OaWV1bkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfTmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1bkppZXVqIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9PRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX09FOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1BhblNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QYW5TaW9z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1BoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaWV1YiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BpZXViU2lv cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViU2lvczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9Qb3N0SGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Qb3N0 SGFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUHJlSGFuamEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9QcmVIYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QcmV2aW91c0Nh bmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1ByZXZpb3VzQ2FuZGlkYXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfUmlldWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxIaWV1aCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf UmlldWxLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bEtpeWVvZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bE1pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfUmlldWxNaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFBoaWV1ZiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsUGhpZXVmOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1JpZXVsUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1 bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsU2lvcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1JpZXVsU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFRp ZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxUaWV1dDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9SaWV1bFllb3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfUmlldWxZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Sb21hamEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Sb21hamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfU2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU2luZ2xl Q2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Npb3MiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NwZWNpYWwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TcGVjaWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1NzYW5nRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdEaWtldWQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdKaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX1NzYW5nSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdLaXllb2ci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0tpeWVvZzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9Tc2FuZ1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Nh bmdQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ1Npb3MiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9Tc2FuZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3RhcnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdGFydDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9TdW5reWVvbmdldW1NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1 bmt5ZW9uZ2V1bU1pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBoaWV1 ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBoaWV1ZjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1QaWV1YiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Rp ZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfVGlldXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9XQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XQUU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9XRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9XRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0kiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9XSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lBRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1lFTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFTzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lJOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX1lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWU87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfWVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZVTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZZW9yaW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX1llb3JpbkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX3N3aXRjaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmth a3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmtha3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IY2ly Y3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGNpcmN1bWZsZXg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IZWJyZXdfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIZWJyZXdfc3dpdGNo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGVscCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVscDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hlbmthbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVua2FuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGVua2FuX01vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhlbmthbl9N b2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGliZXJuYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI aWJlcm5hdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGlyYWdhbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYV9LYXRha2FuYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGlyYWdhbmFfS2F0YWthbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXN0b3J5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXN0b3J5OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSG9tZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hvbWVQYWdlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIb21lUGFnZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hvdExpbmtz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb3RMaW5rczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hzdHJv a2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IeXBl cl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIeXBlcl9MOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSHlw ZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHlwZXJfUjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fQ2VudGVyX09i amVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0NlbnRlcl9PYmplY3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fQ29udGludW91c19VbmRlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19Db250aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19EaXNjb250aW51 b3VzX1VuZGVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Rpc2NvbnRpbnVvdXNf VW5kZXJsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0VtcGhhc2l6ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX0VtcGhhc2l6ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19FbnRlciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX0VudGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vy c29yX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9Eb3duOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElTT19GYXN0X0N1cnNvcl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29y X1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfUmlnaHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19GYXN0X0N1cnNvcl9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GaXJzdF9Hcm91cCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3VwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X0ZpcnN0X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GaXJzdF9Hcm91 cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX0xhdGNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fR3JvdXBfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fR3JvdXBfTG9jayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fR3JvdXBfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Hcm91cF9TaGlmdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fTGFzdF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwX0xvY2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fTGVmdF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZWZ0X1RhYjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lTT19MZXZlbDJfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19M ZXZlbDJfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX0xhdGNoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fTGV2ZWwzX0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVs M19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwzX0xvY2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fTGV2ZWwzX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2 ZWwzX1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9MYXRjaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX0xldmVsNV9MYXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDVf TG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9Mb2NrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX0xldmVsNV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVs NV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3ZlX0xpbmVfRG93biIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX01v dmVfTGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9VcDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09f TmV4dF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3VwX0xvY2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19OZXh0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f UGFydGlhbF9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX0xp bmVfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX0xpbmVfVXAiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IElTT19QYXJ0aWFsX0xpbmVfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUGFy dGlhbF9TcGFjZV9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9TcGFj ZV9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfU3BhY2VfUmlnaHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX1JpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX1ByZXZfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QcmV2X0dyb3VwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX1ByZXZfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX1ByZXZfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNlX0JvdGhf TWFyZ2lucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1JlbGVhc2VfQm90aF9NYXJnaW5z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfTWFyZ2luX0xlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1Jl bGVhc2VfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUmVsZWFzZV9N YXJnaW5fUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0X01hcmdpbl9MZWZ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBJU09fU2V0X01hcmdpbl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X1NldF9NYXJnaW5fUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19TZXRfTWFyZ2lu X1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWJyZXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JY2lyY3VtZmxleCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JZGlhZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWdyYXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JaG9vayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JbWFjcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSW5zZXJ0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBJbnNlcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Jb2dvbmVrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSXRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9KIildCisrCQlwdWJs aWMgY29uc3QgdWludCBKOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSmNpcmN1bWZsZXgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEpjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LUF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF80OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF83 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS1BfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9BZGQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtQX0FkZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0JlZ2luIildCisrCQlwdWJs aWMgY29uc3QgdWludCBLUF9CZWdpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0RlY2ltYWwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQX0RlY2ltYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9EZWxldGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlbGV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Rp dmlkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRGl2aWRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRG93bjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRW5kOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VudGVyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfRXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VxdWFsOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YxOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfRjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf RjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Y0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfSG9t ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0lu c2VydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSW5zZXJ0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTGVmdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX011bHRpcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9NdWx0aXBseTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tQX05leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX05leHQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LUF9QYWdlX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1BhZ2Vf RG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1BhZ2VfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX1BhZ2VfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QcmlvciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9SaWdodCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9TZXBhcmF0b3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQX1NlcGFyYXRvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1NwYWNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1N1YnRy YWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TdWJ0cmFjdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfVGFiOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1VwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2Fu YV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5hX0xvY2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9LYW5hX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5hX1NoaWZ0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS2FuamkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEthbmppOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS2FuamlfQmFuZ291IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5qaV9CYW5nb3U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LYXRha2FuYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2F0YWth bmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRuZXNzRG93biIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS2JkQnJpZ2h0bmVzc0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRuZXNzVXAi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdodG5lc3NVcDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tiZExpZ2h0T25PZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZExpZ2h0T25PZmY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9LY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2NlZGlsbGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Lb3JlYW5fV29uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLb3Jl YW5fV29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0wxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0wxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDEwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEwzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEw0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEw5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBMYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXN0X1ZpcnR1YWxfU2NyZWVu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXN0X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTGF1bmNoMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xhdW5jaDEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9MYXVuY2gyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTGF1bmNoMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0xhdW5jaDQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9MYXVuY2g1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTGF1bmNoNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoNjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0xhdW5jaDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MYXVuY2g4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTGF1bmNoOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoOTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0xhdW5jaEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hC OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNo QzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5j aEQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVu Y2hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1 bmNoRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0xiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGlnaHRCdWxiIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMaWdodEJ1bGI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaW5lZmVlZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTGluZWZlZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaXJhU2lnbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dHcmFiSW5mbyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTG9nR3JhYkluZm87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dPZmYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IExvZ09mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xvZ1dpbmRvd1RyZWUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ1dpbmRvd1RyZWU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9M c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMc3Ryb2tlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRv bmlhX0RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0RTRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX01hY2Vkb25pYV9HSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9H SkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfS0pFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNYWNlZG9uaWFfS0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2RzZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX2RzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9n amUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9namU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9NYWNlZG9uaWFfa2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfa2plOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTWFlX0tvaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hZV9Lb2hv OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTWFpbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFpbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX01haWxGb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWlsRm9y d2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX01hcmtldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFy a2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFzc3lvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYXNz eW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NZWV0aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZWV0 aW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVtbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVtbzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX01lbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9NZW51S0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnVLQjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01lbnVQQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVudVBCOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTWVzc2VuZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZXNzZW5nZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9NZXRhX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1ldGFfTDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX01ldGFfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWV0YV9SOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTWlsbFNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1pbGxTaWduOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTW9kZUxvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vZGVMb2Nr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTW9kZV9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1v ZGVfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9uQnJpZ2h0bmVzc0Rvd24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE1vbkJyaWdodG5lc3NEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9uQnJpZ2h0 bmVzc1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb25CcmlnaHRuZXNzVXA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Nb3VzZUtleXNfQWNjZWxfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN b3VzZUtleXNfQWNjZWxfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW91c2VLZXlzX0VuYWJsZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X011aGVua2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdWhlbmthbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX011bHRpX2tleSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVsdGlfa2V5OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTXVsdGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE11bHRp cGxlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVzaWMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE11c2ljOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXlDb21wdXRlciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTXlDb21wdXRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015U2l0ZXMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE15U2l0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBO YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OYWlyYVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE5haXJhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE5jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBOZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXdTaGVxZWxTaWduIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBOZXdTaGVxZWxTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3cyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTmV3czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXh0X1ZNb2RlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBOZXh0X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4dF9WaXJ0dWFsX1NjcmVlbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dF9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X050aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTnRpbGRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TnVtX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE51bV9Mb2NrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09FIildCisr CQlwdWJsaWMgY29uc3QgdWludCBPRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09hY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgT2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2JhcnJlZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgT2JhcnJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09iZWxvd2RvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgT2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2Nhcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBPY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2ly Y3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleGFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT2NpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4Z3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4aG9v azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9jaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZGlhZXJlc2lzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBPZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2RvdWJsZWFjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9P ZmZpY2VIb21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZmZpY2VIb21lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZ3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9P aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5iZWxvd2Rv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX09ob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9o b3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JudGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PbWFjcm9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBPbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT29ibGlxdWUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3BlbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgT3BlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09wZW5VUkwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE9wZW5VUkw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PcHRpb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE9wdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09zbGFzaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgT3NsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3RpbGRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBPdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PdmVybGF5MV9FbmFibGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE92ZXJsYXkxX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX092ZXJs YXkyX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3ZlcmxheTJfRW5hYmxlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFib3ZlZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUGFnZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYWdlX0Rvd247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9QYWdlX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYWdlX1VwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUGFzdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhc3RlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUGF1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhdXNlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUGVzZXRhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGVzZXRhU2lnbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Bob25lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQaG9uZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BpY3R1cmVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQaWN0dXJlczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BvaW50ZXJfQWNjZWxlcmF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UG9pbnRlcl9BY2NlbGVyYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b24xIildCisr CQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0J1dHRvbjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uMjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9CdXR0b24zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b240IildCisrCQlwdWJs aWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1 dHRvbjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uNTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BvaW50ZXJfQnV0dG9uX0RmbHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfQnV0dG9uX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0RibENsaWNrMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUG9pbnRlcl9EYmxDbGljazM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrNCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0RibENsaWNrNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxD bGljazU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrX0RmbHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2tfRGZsdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50 ZXJfRGZsdEJ0bk5leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGZsdEJ0bk5l eHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5QcmV2IildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb2ludGVyX0RmbHRCdG5QcmV2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3du IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q b2ludGVyX0Rvd25MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd25MZWZ0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfRG93blJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50 ZXJfRHJhZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX0RyYWczIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Ry YWczOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnNCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUG9pbnRlcl9EcmFnNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Ry YWdfRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnX0RmbHQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Qb2ludGVyX0VuYWJsZUtleXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBv aW50ZXJfRW5hYmxlS2V5czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfTGVmdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG9pbnRlcl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9SaWdo dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9SaWdodDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX1VwTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9V cExlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwUmlnaHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFBvaW50ZXJfVXBSaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bvd2VyRG93biIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG93ZXJEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG93ZXJPZmYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBvd2VyT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldl9WTW9k ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldl9WTW9kZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1By ZXZfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZfVmlydHVhbF9T Y3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2aW91c0NhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmludCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUHJpbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmlvciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9RIildCisrCQlwdWJsaWMgY29u c3QgdWludCBROworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1IxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1IxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UjExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFIxMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUjEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjE0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBSMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFIxNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1IyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1IzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1I0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBSNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBSNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBSNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1I5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSOTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSY2Fyb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9SY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmNlZGlsbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9SZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1JlZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZG87CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWZy ZXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWZyZXNoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVs b2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWxvYWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZXBl YXRLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVwZWF0S2V5c19FbmFibGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9SZXBseSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVwbHk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SZXR1cm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJldHVybjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSaWdodDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1JvY2tlckRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlckRvd247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJFbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9j a2VyRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJVcCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUm9ja2VyVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb21hamkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFJvbWFqaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvdGF0ZVdpbmRvd3MiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJvdGF0ZVdpbmRvd3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb3RhdGlvbktCIildCisr CQlwdWJsaWMgY29uc3QgdWludCBSb3RhdGlvbktCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm90YXRpb25Q QiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25QQjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1J1 cGVlU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUnVwZWVTaWduOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NDSFdBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTQ0hXQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NhYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2FjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TYXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nhcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2VkaWxsYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2lyY3VtZmxl eCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T Y3JlZW5TYXZlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NyZWVuU2F2ZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TY3JvbGxDbGljayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsQ2xpY2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3Jv bGxEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNjcm9sbFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsX0xvY2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNjcm9sbF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VhcmNoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTZWFyY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZWxlY3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlbGVjdEJ1dHRvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2VsZWN0QnV0dG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VuZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fREpFIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RKRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5f RFpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RaRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NlcmJpYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fSkU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TZXJiaWFuX0xKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9MSkU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX05KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Vy Ymlhbl9OSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX1RTSEUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNlcmJpYW5fVFNIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fZGplIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2RqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fZHpl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2R6ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nl cmJpYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5famU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TZXJiaWFuX2xqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9samU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TZXJiaWFuX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlh bl9uamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX3RzaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNlcmJpYW5fdHNoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NoaWZ0X0wiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNoaWZ0X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9Mb2NrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaGlmdF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hpZnRfUiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2hpZnRfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nob3AiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNob3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5nbGVDYW5kaWRhdGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmdsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9hYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfYWEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FhMjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2FlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZTI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2FlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZWU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2FlZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWVlMjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2FpMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9haTI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2Fs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9h dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2F1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfYmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2JoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9iaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2NhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2NhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9jaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfZGRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGhhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2RkaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RoYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9kaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RoaGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGhoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2VlMiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2Zh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2ZhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9n YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9nYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf Z2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2doYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfaDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaDI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2hhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2kyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2kyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9paSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9paTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfaWkyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2lpMjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfamE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2poYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9qaGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2pueWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfam55YTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Npbmhfa2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfa2E7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2toYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9raGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2t1bmRkYWxpeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfa3VuZGRhbGl5YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2xsYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9sbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2x1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdTIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfbHUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdXUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHV1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdXUyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX21h IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX21hOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9t YmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbWJhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfbmRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZGRhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9uZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25kaGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX25nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9uZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmcyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9uZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmdhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9uamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmph OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ubmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf bm5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ueWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfbnlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX28yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX28yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9vbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfb28yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX29vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3BoYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9waGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3JhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9yaSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9yaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcmlpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX3JpaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcnUyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX3J1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcnV1MiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9ydXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9zYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfc2hhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfc3No YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zc2hhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF90aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdGhhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF90aGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3RoaGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX3R0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90dGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX3R0aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdHRoYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF91MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91MjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdXU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX3V1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91dTI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3Zh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF95YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF95 YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NsZWVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTbGVlcDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1Nsb3dLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2xvd0tleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BlbGwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNwZWxsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BsaXRTY3JlZW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNwbGl0U2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RhbmRieSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU3RhbmRieTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0YXJ0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBTdGFydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0aWNreUtleXNfRW5hYmxlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTdGlja3lLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1N0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdWJ0 aXRsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VidGl0bGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T dXBlcl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXBlcl9MOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U3VwZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VwZXJfUjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1N1cHBvcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1cHBvcnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TdXNwZW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXNwZW5kOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3dpdGNoX1ZUXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hf VlRfMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFN3aXRjaF9WVF8xMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dp dGNoX1ZUXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8zOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU3dpdGNoX1ZUXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF80Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRj aF9WVF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFN3aXRjaF9WVF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFN3aXRjaF9WVF83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF84OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNo X1ZUXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF85OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3lzX1JlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3lzX1JlcTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9USE9STiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVEhPUk47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UYWIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RhYm92ZWRvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGFza1BhbmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRhc2tQYW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGNhcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UY2VkaWxsYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UZXJtaW5h bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGVybWluYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UZXJt aW5hdGVfU2VydmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUZXJtaW5hdGVfU2VydmVyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9iYWh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Jh aHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2JvYmFpbWFpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX2JvYmFpbWFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaGFuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2NoYW5n IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW5nOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9jaG9jaGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaGluZzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfY2hvY2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9j aG9jaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9kb2NoYWRhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX2RvY2hhZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2RvZGVrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX2RvZGVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9mb2ZhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2ZvZmFu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmFuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9ob2hpcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ob2hpcDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfaG9ub2todWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfaG9ub2todWs7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2toYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfa2hva2hhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2hvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9raG9raG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raHVhdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raHVhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf a2hva2h3YWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2h3YWk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX2tob3Jha2hhbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hv cmFraGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa29rYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfa29rYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xha2toYW5neWFvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2xha2toYW5neWFvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9s ZWtjaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2NoZXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX2xla2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2hhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9sZWtob2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVr aG9rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtrYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfbGVra2FvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtudW5nIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2xla251bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3BhZXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrcGFldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf bGVrc2FtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3NhbTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfbGVrc2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrc2k7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2xla3NvbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVr c29uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc3VuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX2xla3N1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbG9jaHVsYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9sb2NodWxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sb2xpbmciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9saW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9s dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf bWFpY2hhdHRhd2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpY2hhdHRhd2E7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX21haWVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21h aWVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWloYW5ha2F0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX21haWhhbmFrYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWhhbmFrYXRfbWFp dGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWhhbmFrYXRfbWFpdGhvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9tYWl0YWlraHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf bWFpdGFpa2h1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0aG8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbWFpdGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0cmkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpdHJpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl5YW1v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl5YW1vazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbW9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tb21hOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9uZ29uZ3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbmdvbmd1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9uaWtoYWhpdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9uaWtoYWhpdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbm9uZW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbm9uZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25vbnUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbm9udTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfb2FuZyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9vYW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9wYWl5YW5u b2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGFpeWFubm9pOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9waGludGh1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3BoaW50aHU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3BoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf cGhvcGhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvcGh1bmciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfcGhvcGh1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3NhbXBoYW8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvc2FtcGhhbzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfcG9wbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcG9wbGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3JvcnVhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3JvcnVhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9ydSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ydTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfc2FyYWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2Fy YWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9zYXJhYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9zYXJhYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhaW1haW1hbGFp IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhaW1haW1hbGFpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9zYXJhYWltYWltdWFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Nh cmFhaW1haW11YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhbSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9zYXJhYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhaSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf c2FyYWlpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFpaTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfc2FyYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYW87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3NhcmF1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfc2FyYXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWVlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX3NhcmF1ZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1dSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NvcnVz aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3J1c2k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX3Nvc2FsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3NhbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX3Nvc28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29zbzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfc29zdWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29z dWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RoYW50aGFraGF0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3RoYW50aGFraGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG9uYW5nbW9udGhv IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob25hbmdtb250aG87CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3Rob3BodXRoYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvcGh1 dGhhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhaGFuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3Rob3RoYWhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG90 aG9uZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aG9uZzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfdGhvdGh1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGh1bmc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RvcGF0YWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfdG9wYXRhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdG90YW8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfdG90YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3dvd2FlbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV93b3dhZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3lveWFrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3lveWFrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV95 b3lpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfeW95aW5nOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRob3JuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGltZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGltZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvRG9M aXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb0RvTGlzdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rv b2xzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb29sczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvcE1l bnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvcE1lbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3Vj aHBhZE9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRPZmY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Ub3VjaHBhZE9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3VjaHBhZE9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVG91Y2hwYWRUb2dnbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvdWNo cGFkVG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91cm9rdSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVG91cm9rdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RyYXZlbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVHJhdmVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVHNsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVVdCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVV0I7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9VYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVhY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWJlbG93ZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVYnJldmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9VY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWNpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9VZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZ3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmJlbG93ZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5n cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5ncmF2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1Vob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5ob29rOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm50aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1VrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFVrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5p YW5fSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0k7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Va3JhaW5pYW5fSUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9JRTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1VrcmFpbmlhbl9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWlu aWFuX1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2doZV93aXRoX3VwdHVybiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX2doZV93aXRoX3VwdHVybjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1VrcmFpbmlhbl9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5faTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1VrcmFpbmlhbl9pZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWlu aWFuX2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX3lpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVa3JhaW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9JIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVa3Jhbmlhbl9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5fSkUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5p YW5fWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX1lJOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVWtyYW5pYW5faSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5faTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFuaWFuX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9q ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX3lpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV a3Jhbmlhbl95aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbmRvIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBVbmRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW5ncmFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV bmdyYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV b2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVyaW5nOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVXNlcjFLQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXNlcjFLQjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1VzZXIyS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXIyS0I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Vc2VyUEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXJQQjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfViIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1ZlbmRvckhvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZlbmRvckhvbWU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9WaWRlbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVmlkZW87CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9WaWV3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBWaWV3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Vm9pZFN5bWJvbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVm9pZFN5bWJvbDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XTEFO IildCisrCQlwdWJsaWMgY29uc3QgdWludCBXTEFOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV1dXIildCisr CQlwdWJsaWMgY29uc3QgdWludCBXV1c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFdhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dha2VVcCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgV2FrZVVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2NpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2RpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dl YkNhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2ViQ2FtOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2dy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XaGVl bEJ1dHRvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2hlZWxCdXR0b247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9XaW5kb3dDbGVhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2luZG93Q2xlYXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Xb25TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXb25TaWduOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV29yZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Y YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhhYm92ZWRvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1hmZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhmZXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Z IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBZYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZYmVsb3dkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ljaXJjdW1m bGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlkaWFlcmVzaXM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ZZWxsb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFllbGxvdzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWdyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfWWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfWXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZdGlsZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9aIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmFib3ZlZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBaYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aYWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFphY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pjYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmVuX0tv aG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbl9Lb2hvOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmVu a2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2FrdTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pl bmtha3VfSGFua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2FrdV9IYW5rYWt1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfWm9vbUluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBab29tSW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ab29tT3V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBab29tT3V0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfWnN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWnN0cm9rZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9hYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9hYnJldmVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlYWN1 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYWJyZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYWJyZXZlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVob29rIild CisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZl dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZXRpbGRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNp cmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h Y2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGdyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBhY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleHRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWRpYWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2FlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FncmF2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWhvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGFob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYW1hY3JvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FtcGVyc2FuZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW1wZXJzYW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYW9nb25l ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fwb3N0 cm9waGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwb3N0cm9waGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hcHByb3hlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXBwcm94ZXE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9hcHByb3hpbWF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXBwcm94aW1hdGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9hcmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXJpbmc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9hc2NpaWNpcmN1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXNjaWljaXJj dW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hc2NpaXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh c2NpaXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXN0ZXJpc2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGFzdGVyaXNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhdGls ZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9iIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYWJvdmVkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9iYWNrc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhY2tzbGFz aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JhbGxvdGNyb3NzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBi YWxsb3Rjcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYmVjYXVzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmVj YXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBibGFu azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JvdGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBi b3RpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRwYXJlbnMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJvdGxlZnRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RsZWZ0c3FicmFja2V0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0c3FicmFja2V0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYm90bGVmdHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90bGVmdHN1bW1h dGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBib3RyaWdodHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0c3FicmFja2V0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JvdHJpZ2h0c3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHN1bW1h dGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9ib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh Y2VsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFjZWxlZnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFjZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFjZXJpZ2h0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhY2tldGxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNrZXRsZWZ0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2tldHJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFja2V0cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2JsYW5rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2JsYW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfMSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90XzEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8xMDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90XzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8zIildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdF8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90XzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF85OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz NDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1Njc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMjM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy MzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz NDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy MzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Njg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy NDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0Njc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Njc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTI0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTI1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMjY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEzNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTY4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NjgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzE0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzE0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY3 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0 NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0Njc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0 Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzE0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzE0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzE1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1NjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzE1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzE1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y MzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0 NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0 NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzIzNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1NjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzIzNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzIzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzY3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIz OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1NjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTY3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzI0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzI0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDY3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzI1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1 Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NjgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzI3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18zNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU2 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18zNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18zNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18zNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18zNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18zNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Njc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18zNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c180OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c180NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1Njc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ2NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c180Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY3 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c180Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c180NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c180ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c181NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181Njc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c181NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Njg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c181NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c182IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c182OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJldmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icm9rZW5iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyb2tlbmJhcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9j X2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNfaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhYm92ZWRv dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Fj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYXJl b2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhcmVvZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhcmV0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nhcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NjYXJvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgY2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2NlZGlsbGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGNjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2NpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Y2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaGVja2VyYm9hcmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoZWNrZXJib2FyZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2No ZWNrbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2hlY2ttYXJrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaXJjbGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9jbHViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjbHViOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29s b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29tbWEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29udGFpbnNh cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29udGFpbnNhczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nv cHlyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29weXJpZ2h0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3Jvc3Np bmdsaW5lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Jvc3NpbmdsaW5lczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2N1YmVyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjdWJlcm9vdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2N1cnJlbmN5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjdXJyZW5jeTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2N1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Vyc29yOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGFib3ZlZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkYWdnZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRjYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9BOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGVhZF9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX0U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfSTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9POworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX1U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfYWJvdmVjb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZWNvbW1hOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVyZXZlcnNlZGNvbW1hIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlcmV2ZXJzZWRjb21tYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfYWJvdmVyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3Zlcmlu ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmV2ZXJ0aWNhbGxpbmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfYWJvdmV2ZXJ0aWNhbGxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2FjdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9iZWxvd2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93YnJldmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9iZWxvd2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93Y29t bWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3djb21tYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfYmVsb3dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVs b3dkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93ZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd21hY3Jv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd21hY3JvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfYmVsb3dyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93cmlu ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3d0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9iZWxvd3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd3ZlcnRpY2FsbGlu ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3ZlcnRpY2FsbGluZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYnJldmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NhcGl0YWxfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfY2FwaXRhbF9zY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY2Fyb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NlZGls bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9jaXJjdW1mbGV4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jdXJyZW5jeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9jdXJyZW5jeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZGFzaWEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfZGFzaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2RpYWVyZXNpcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2RvdWJsZWFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9kb3VibGVncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9kb3VibGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ncmF2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZ3JlZWsiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JlZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2hvb2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRf aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9ob3JuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX2ludmVydGVkYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaW52ZXJ0ZWRi cmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW90YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9pb3RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9sb25nc29saWR1c292ZXJsYXkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbG9uZ3NvbGlkdXNvdmVybGF5OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGVhZF9sb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2xvd2xpbmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9t YWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX29nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfcGVyaXNwb21lbmkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfcGVyaXNwb21lbmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3Bz aWxpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3BzaWxpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9zZW1pdm9pY2VkX3NvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3NlbWl2 b2ljZWRfc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3NtYWxsX3NjaHdhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX3NtYWxsX3NjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9zdHJv a2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc3Ryb2tlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF90aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF90aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF91OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF92b2ljZWRfc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfdm9p Y2VkX3NvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVjaW1hbHBvaW50IildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWNpbWFscG9pbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWdyZWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlZ3JlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpYWVyZXNpcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGlhbW9uZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGlhbW9uZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpZ2l0c3BhY2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRpZ2l0c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaW50ZWdy YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rp dmlzaW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaXZpc2lvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RvbGxhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG9sbGFyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZG91YmJhc2VsaW5lZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3ViYmFzZWxpbmVkb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91 YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVkYWdnZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRvdWJsZWRhZ2dlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJsZWxvd3F1b3RlbWFyayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmxlbG93cXVvdGVtYXJrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZG93bmFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duYXJyb3c7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kb3duY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25jYXJldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2Rvd25zaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duc2hvZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2Rvd25zdGlsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bnN0 aWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRv d250YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9lYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVhYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlYmVs b3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVj YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3Vt ZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGJlbG93ZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4aG9vayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNp cmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXh0aWxkZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVkaWFl cmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVn cmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2Vob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlaG9v azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlaWdodHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3VwZXJpb3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGVpZ2h0c3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbGVtZW50b2Yi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVsZW1lbnRvZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VsbGlw c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGxpcHNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vt M3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTNzcGFjZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VtNHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTRzcGFjZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtYWNyb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lbWRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZGFzaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VtZmlsbGVkY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWZpbGxlZGNpcmNs ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VtZmlsbGVkcmVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZW1maWxsZWRyZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1vcGVuY2lyY2xlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBlbW9wZW5jaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbW9wZW5yZWN0YW5nbGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtb3BlbnJlY3RhbmdsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VtcHR5c2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbXB0eXNldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2Vtc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtc3BhY2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lbmRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZGFzaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VuZmlsbGVkY2lyY2J1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5maWxsZWRj aXJjYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxsZWRzcWJ1bGxldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZW5maWxsZWRzcWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5vcGVuY2lyY2J1bGxldCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVuY2lyY2J1bGxldDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2Vub3BlbnNxdWFyZWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVuc3F1YXJl YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZW5zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV0aDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXRpbGRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZXhjbGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBleGNsYW07Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9leGNsYW1kb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBleGNsYW1k b3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZXpoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlemg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmYWJvdmVkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9mZW1hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZlbWFsZXN5bWJv bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2ZpZ2Rhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpZ2Rhc2g7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9maWxsZWRsZWZ0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBm aWxsZWRsZWZ0dHJpYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkcmVjdGJ1bGxldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkcmVjdGJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Zp bGxlZHJpZ2h0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWRyaWdodHRy aWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1bGxldGRvd24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGZpbGxlZHRyaWJ1bGxldGRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWR0 cmlidWxsZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkdHJpYnVsbGV0dXA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9maXZlZWlnaHRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZWVp Z2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc2l4dGhzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBmaXZlc2l4dGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXN1YnNjcmlwdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZml2ZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpdmVzdXBlcmlvciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91 cmZpZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cmZpZnRoczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2ZvdXJzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZvdXJzdWJzY3JpcHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9mb3Vyc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZv dXJzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJ0aHJvb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGZvdXJ0aHJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mdW5jdGlvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZnVuY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBnOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBnYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nYnJldmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2djYXJvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZ2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NpcmN1bWZsZXgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3JhdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3JlYXRlciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZ3JlYXRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dyZWF0ZXJ0aGFuZXF1YWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXJ0aGFuZXF1YWw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9ndWlsbGVtb3RsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBndWlsbGVtb3RsZWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZ3VpbGxlbW90cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGd1 aWxsZW1vdHJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hhaXJzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGFp cnNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVhcnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhlYXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2FsZXBoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfYWxlcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYXlpbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2F5aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdf YmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYmV0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X2JldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19iZXRoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X2NoZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19jaGV0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RhbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfZGFsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZGFsZXRoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfZGFsZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RvdWJsZWxv d2xpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kb3VibGVsb3dsaW5lOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsa2FwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X2ZpbmFsa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbG1lbSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsbWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2Zp bmFsbnVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxudW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfZmluYWxwZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2Zp bmFscGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6YWRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfZmluYWx6YWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsemFk aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsemFkaTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hlYnJld19naW1lbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2dpbWVsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X2dpbW1lbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X2dpbW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19oZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2hldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19rYXBoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19r dWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19rdWY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfbGFtZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19sYW1lZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld19tZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19tZW07 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbnVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfbnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3BlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoZWJyZXdfcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfcW9waCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaGVicmV3X3FvcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfcmVzaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3Jlc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfc2Ft ZWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfc2FtZWNoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaGVicmV3X3NhbWVraCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3NhbWVraDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld19zaGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190YWYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld190YWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGF3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfdGF3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190ZXRo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGV0aDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld193YXc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oZWJyZXdfeW9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfeW9kOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaGVicmV3X3phZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld196 YWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld196YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phaW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld196YWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3pheWluIildCisr CQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemF5aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZXhhZ3Jh bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGV4YWdyYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3Jp emNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpjb25uZWN0b3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXps aW5lc2NhbjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaG9yaXpsaW5lc2NhbjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuNSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o b3JpemxpbmVzY2FuNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2Nhbjc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9y aXpsaW5lc2Nhbjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaHlwaGVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoeXBo ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaVRvdWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpVG91Y2g7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9pYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlhY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWJlbG93ZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpYnJldmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9pY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWNpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9pZGVudGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlk ZW50aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZG90bGVzcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaWRvdGxlc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZm9ubHlpZiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaWZvbmx5aWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZ3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBpaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ltYWNyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGltYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbXBsaWVzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBpbXBsaWVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5jbHVkZWRpbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaW5jbHVkZWRpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2luY2x1ZGVzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBpbmNsdWRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2luZmluaXR5Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBpbmZpbml0eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ludGVncmFs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ludGVy c2VjdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50ZXJzZWN0aW9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW9nb25lazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaXRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgajsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2pjaXJj dW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBqY2lyY3VtZmxleDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2pvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgam90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9DSEkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfQ0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9FIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0ZVIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0ZVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9IQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9IQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSEUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hJIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ITyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSFUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0ki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0Ei KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9L SSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9LSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf S08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS087CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X0tVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tVOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9NQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfTUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTUU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX01JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01JOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9NTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NTzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfTVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTVU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfTkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTkE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX05FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05FOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9OSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OSTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfTk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTk87CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05VOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX087CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JBOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9SRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfUkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUkk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX1JPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JPOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9SVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SVTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfU0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU0E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX1NFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9TSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU0hJOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9TTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TTzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfU1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU1U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9URSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9U RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf VEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UU1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfVFNVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9UVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9XQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9XQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfV08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfV087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1lBIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ZTyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9ZTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfWVUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY2xvc2luZ2JyYWNrZXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfY2xvc2luZ2JyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2NvbW1hOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9jb25qdW5jdGl2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9jb25qdW5j dGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9mdWxsc3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9mdWxsc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfaSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9taWRkbGVkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfbWlkZGxlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9vIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX29wZW5p bmdicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX29wZW5pbmdicmFja2V0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf c3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90c3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfdHN1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90dSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV90dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV95YSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfeW8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3l1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FwcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGtjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa3JhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYWN1dGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9sYXRpbmNyb3NzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYXRpbmNyb3Nz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYmVs b3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxj YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2xjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBs Y2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRhbmdsZWJyYWNrZXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGxlZnRhbmdsZWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0YXJyb3ciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRhcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRjYXJl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVm dGRvdWJsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGRvdWJsZXF1b3Rl bWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRtaWRkbGVjdXJseWJyYWNlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBsZWZ0bWlkZGxlY3VybHlicmFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRvcGVu dHJpYW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRvcGVudHJpYW5nbGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9sZWZ0cG9pbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHBvaW50 ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bGVmdHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2hvZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbGVmdHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2luZ2xlcXVvdGVtYXJrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBsZWZ0c2luZ2xlcXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bGVmdHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVm dHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0YWNrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bGVzcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVzczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlc3N0 aGFuZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlc3N0aGFuZXF1YWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9s b2dpY2FsYW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb2dpY2FsYW5kOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbG9naWNhbG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb2dpY2Fsb3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9sb3dsZWZ0Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb3dsZWZ0 Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93cmlnaHRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGxvd3JpZ2h0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbHN0cm9rZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX20iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG1hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hY3JvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFsZXN5bWJvbCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbWFsZXN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hbHRlc2Vjcm9zcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbWFsdGVzZWNyb3NzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFya2Vy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYXJrZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYXNjdWxp bmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hc2N1bGluZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21p bnVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtaW51czsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21pbnV0 ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1pbnV0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdWx0aXBseSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbXVsdGlwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdXNpY2FsZmxh dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVzaWNhbGZsYXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9t dXNpY2Fsc2hhcnAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11c2ljYWxzaGFycDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9u YWJsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmFibGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uYWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25jYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmNlZGls bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmlu ZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmluZXN1YnNjcmlwdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX25pbmVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmluZXN1cGVy aW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbmwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5sOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbm9icmVha3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub2JyZWFr c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RhcHByb3hlcSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgbm90YXBwcm94ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RlbGVtZW50b2YiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG5vdGVsZW1lbnRvZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGVxdWFsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBub3RlcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGlkZW50aWNh bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90aWRlbnRpY2FsOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bm90c2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90c2lnbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X250aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnRpbGRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bnVtYmVyc2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnVtYmVyc2lnbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX251bWVyb3NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG51bWVyb3NpZ247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfb2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vYmFycmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmFycmVkOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfb2JlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmVsb3dkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jYXJvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29jaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9jaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGJlbG93ZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfb2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhn cmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2NpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXh0aWxkZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X29kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9kaWFlcmVzaXM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9kb3VibGVhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2dvbmVrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5iZWxv d2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9ob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JudGlsZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbWFjcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBvbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lZWlnaHRoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvbmVlaWdodGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVmaWZ0aCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lZmlmdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVoYWxm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVoYWxmOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lcXVh cnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lcXVhcnRlcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X29uZXNpeHRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVzaXh0aDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX29uZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lc3Vic2NyaXB0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb25lc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZXN1 cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25ldGhpcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9uZXRoaXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb29ibGlxdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnJlY3RidWxsZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9wZW5yZWN0YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnN0YXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW5zdGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnRyaWJ1 bGxldGRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW50cmlidWxsZXRkb3duOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb3BlbnRyaWJ1bGxldHVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVu dHJpYnVsbGV0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcmRmZW1pbmluZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb3JkZmVtaW5pbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vc2xhc2giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9zbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX290aWxkZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3ZlcmJhciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb3ZlcmJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX292ZXJsaW5lIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvdmVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3AiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmFncmFwaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgcGFyYWdyYXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFyZW5sZWZ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBwYXJlbmxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJlbnJpZ2h0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJlbnJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFydGRp ZmZlcmVudGlhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFydGRpZmZlcmVudGlhbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3BhcnRpYWxkZXJpdmF0aXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBw YXJ0aWFsZGVyaXZhdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmNlbnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHBlcmNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJpb2QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHBlcmlvZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmlvZGNlbnRlcmVkIildCisrCQlw dWJsaWMgY29uc3QgdWludCBwZXJpb2RjZW50ZXJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Blcm1pbGxl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJtaWxsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bob25v Z3JhcGhjb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBob25vZ3JhcGhjb3B5cmln aHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wbHVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwbHVzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcGx1c21pbnVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwbHVzbWlu dXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wcmVzY3JpcHRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHByZXNjcmlwdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Byb2xvbmdlZHNvdW5kIildCisrCQlwdWJs aWMgY29uc3QgdWludCBwcm9sb25nZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3B1bmN0c3BhY2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHB1bmN0c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xIild CisrCQlwdWJsaWMgY29uc3QgdWludCBxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVhZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgcXVhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1ZXN0aW9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBxdWVzdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1ZXN0aW9uZG93biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb25kb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVvdGVk YmwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1b3RlZGJsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVv dGVsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZWxlZnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9xdW90ZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZXJpZ2h0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Jh Y3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmFk aWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFkaWNhbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Jj YXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmNl ZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJjZWRpbGxhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cmVnaXN0ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmVnaXN0ZXJlZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3JpZ2h0YW5nbGVicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGFu Z2xlYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0YXJyb3ciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHJpZ2h0YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGNhcmV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCByaWdodGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRkb3VibGVxdW90 ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0ZG91YmxlcXVvdGVtYXJrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcmlnaHRtaWRkbGVjdXJseWJyYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCByaWdodG1pZGRsZWN1cmx5YnJhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodG1pZGRsZXN1bW1h dGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRtaWRkbGVzdW1tYXRpb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9yaWdodG9wZW50cmlhbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmln aHRvcGVudHJpYW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHBvaW50ZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHJpZ2h0cG9pbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0c2hvZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRzaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRzaW5n bGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0c2luZ2xlcXVvdGVtYXJr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHR0IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9yaWdodHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0 dGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9zYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNhYm92ZWRvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2FjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfc2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2Fyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9zY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2NlZGlsbGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Nod2E7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9zY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2NpcmN1 bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY3JpcHRfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBzY3JpcHRfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Vjb25kcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2Vjb25kczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlY3Rpb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHNlY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZW1pY29sb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlbWl2b2ljZWRzb3Vu ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VtaXZvaWNlZHNvdW5kOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfc2V2ZW5laWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbmVpZ2h0aHM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9zZXZlbnN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2V2 ZW5zdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1cGVyaW9yIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBzZXZlbnN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2lnbmF0dXJlbWFyayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2lnbmF0dXJlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Np Z25pZmJsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaWduaWZibGFuazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3NpbWlsYXJlcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2ltaWxhcmVxdWFs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfc2luZ2xlbG93cXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBzaW5nbGVsb3dxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaXhzdWJzY3JpcHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHNpeHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpeHN1 cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhzdXBlcmlvcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzbGFzaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NvbGlkZGlhbW9uZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc29saWRkaWFtb25kOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNwYWNlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfc3F1YXJlcm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3F1YXJlcm9vdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3NzaGFycCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3NoYXJwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfc3RlcmxpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHN0ZXJsaW5n OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfc3RyaWN0ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHN0cmlj dGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGFib3ZlZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0Y2Fyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90Y2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGNlZGlsbGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90ZWxlcGhvbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRlbGVw aG9uZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3RlbGVwaG9uZXJlY29yZGVyIildCisrCQlwdWJsaWMgY29u c3QgdWludCB0ZWxlcGhvbmVyZWNvcmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RoZXJlZm9yZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdGhlcmVmb3JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhpbnNwYWNl IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aGluc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aG9y biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZWVp Z2h0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlZWlnaHRoczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3RocmVlZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZWZpZnRoczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3RocmVlcXVhcnRlcnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVl cXVhcnRlcnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdGhyZWVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1cGVyaW9yIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGlu dGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV90b3BpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9waW50ZWdyYWw7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90b3BsZWZ0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0 cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHJhZGljYWwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHRvcGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHNxYnJhY2tldCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3RvcGxlZnRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRzdW1tYXRp b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdG9wcmlnaHRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHNxYnJhY2tldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 b3ByaWdodHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRzdW1tYXRp b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV90b3B0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3B0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RyYWRl bWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHJhZGVtYXJrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dHJhZGVtYXJraW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRyYWRlbWFya2luY2ly Y2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdHNsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0c2xh c2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV90d29maWZ0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3 b2ZpZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3N1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdHdvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvc3VwZXJpb3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHR3b3N1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvdGhpcmRzIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0d290aGlyZHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91IildCisr CQlwdWJsaWMgY29uc3QgdWludCB1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCB1YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91YmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VicmV2ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWNpcmN1bWZsZXgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWRpYWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3Vkb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRvdWJsZWFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1Z3JhdmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV91aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdWhvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5i ZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHVob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmhvb2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JudGlsZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHVob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bWFjcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCB1bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5kZXJiYXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVuZGVyYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5kZXJzY29y ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5kZXJzY29yZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vu aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VvZ29u ZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGFy cm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cGFycm93OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBj YXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vw bGVmdGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBsZWZ0Y29ybmVyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdXByaWdodGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXByaWdodGNv cm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwc2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBz aG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBzdGlsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBz dGlsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3VwdGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXB0 YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVyaW5n OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1dGlsZGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV92IildCisrCQlwdWJsaWMgY29uc3QgdWludCB2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdmFyaWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2YXJpYXRpb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV92ZXJ0YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2ZXJ0YmFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdmVydGNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdmVydGNv bm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZvaWNlZHNvdW5kIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB2b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Z0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCB2dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV93YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHdhY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCB3Y2lyY3Vt ZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHdkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHdncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV94YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHhhYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV95YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlhY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfeWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHljaXJj dW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgeWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3llbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgeWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5 Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWhv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV95dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHl0aWxk ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHo7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV96YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHphYm92ZWRvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3phY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfemNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB6Y2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV96ZXJvc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6ZXJvc3Vi c2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB6ZXJvc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96c3Ryb2tlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB6c3Ryb2tlOworKwl9CisrCW5hbWVzcGFjZSBUaHJlYWRzIHsKKysJCW5hbWVz cGFjZSBJZGxlIHsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX2lkbGUiKV0KKysJCQlbVmVyc2lv biAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZCAoR0xpYi5Tb3Vy Y2VGdW5jIGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfaWRsZV9mdWxsIildCisrCQkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBhZGRfZnVs bCAoaW50IHByaW9yaXR5LCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQl9CisrCQlu YW1lc3BhY2UgVGltZW91dCB7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF90aW1lb3V0IildCisr CQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBhZGQg KHVpbnQgaW50ZXJ2YWwsIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVh ZHNfYWRkX3RpbWVvdXRfZnVsbCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJ CQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBwcmlvcml0eSwgdWludCBpbnRlcnZh bCwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJfQorKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX3JlcGFpbnRfZnVuYyAob3duZWQgR0xp Yi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHN0YXRpYyB1aW50IGFkZF9yZXBhaW50X2Z1bmNfZnVsbCAoQ2x1dHRlci5SZXBhaW50RmxhZ3Mg ZmxhZ3MsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9yZXBhaW50X2Z1bmMgKHVpbnQgaGFu ZGxlX2lkKTsKKysJfQorKwluYW1lc3BhY2UgVmFsdWUgeworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLlBhaW50Tm9kZSBkdXBfcGFpbnRfbm9kZSAo R0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfY29sb3IgKEdMaWIuVmFsdWUgdmFsdWUp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENs dXR0ZXIuUGFpbnROb2RlIGdldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtD Q29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUi LCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgZmxvYXRbXSBnZXRfc2hh ZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3Bv cyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgaW50W10gZ2V0X3NoYWRlcl9pbnQgKEdMaWIuVmFsdWUgdmFs dWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlw ZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBmbG9h dFtdIGdldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuVW5pdHM/IGdldF91 bml0cyAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCBzZXRfY29sb3IgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIuQ29s b3IgY29sb3IpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB2 b2lkIHNldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlBhaW50Tm9kZT8g bm9kZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBz ZXRfc2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9j bmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGZsb2F0W10gZmxvYXRzKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9zaGFk ZXJfaW50IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJz aXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGludFtdIGludHMpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9tYXRyaXggKEdM aWIuVmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUiLCBhcnJh eV9sZW5ndGhfcG9zID0gMS41KV0gZmxvYXRbXSBtYXRyaXgpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3VuaXRzIChHTGliLlZhbHVlIHZhbHVl LCBDbHV0dGVyLlVuaXRzIHVuaXRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCB0YWtlX3BhaW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0 ZXIuUGFpbnROb2RlPyBub2RlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0aW9uX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNz IEFjdGlvbiA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBBY3Rpb24gKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2FjdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBBY3RvciA6IEdMaWIuSW5p dGlhbGx5VW5vd25lZCwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0 ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJcHVibGljIHVpbnQzMiBmbGFn czsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQWN0b3IgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfYWN0aW9uIChDbHV0dGVyLkFjdGlv biBhY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQg YWRkX2FjdGlvbl93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVyLkFjdGlvbiBhY3Rpb24p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9jaGls ZCAoQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCBhZGRfY29uc3RyYWludCAoQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFp bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2Nv bnN0cmFpbnRfd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0 cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRk X2VmZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3Rfd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwg Q2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCBhZGRfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuVHJhbnNp dGlvbiB0cmFuc2l0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0dGVyLkFs bG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCBhbGxvY2F0ZV9hbGlnbl9maWxsIChDbHV0dGVyLkFjdG9yQm94IGJveCwgZG91 YmxlIHhfYWxpZ24sIGRvdWJsZSB5X2FsaWduLCBib29sIHhfZmlsbCwgYm9vbCB5X2ZpbGwsIENs dXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX2F2YWlsYWJsZV9zaXplIChmbG9hdCB4LCBmbG9h dCB5LCBmbG9hdCBhdmFpbGFibGVfd2lkdGgsIGZsb2F0IGF2YWlsYWJsZV9oZWlnaHQsIENsdXR0 ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX3ByZWZlcnJlZF9zaXplIChDbHV0dGVyLkFsbG9jYXRp b25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5BbmltYXRpb24gYW5pbWF0ZSAodWxvbmcgbW9kZSwgdWludCBkdXJhdGlvbiwgLi4uKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1hdGlvbiBh bmltYXRlX3dpdGhfdGltZWxpbmUgKHVsb25nIG1vZGUsIENsdXR0ZXIuVGltZWxpbmUgdGltZWxp bmUsIC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBh cHBseV9yZWxhdGl2ZV90cmFuc2Zvcm1fdG9fcG9pbnQgKENsdXR0ZXIuQWN0b3I/IGFuY2VzdG9y LCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEIHZl cnRleCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhcHBseV90cmFu c2Zvcm0gKHJlZiBDbHV0dGVyLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNCIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfdHJhbnNmb3JtX3RvX3BvaW50IChHcmFwaGVu ZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRleCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHZvaWQgYmluZF9tb2RlbCAo R0xpYi5MaXN0TW9kZWw/IG1vZGVsLCBvd25lZCBDbHV0dGVyLkFjdG9yQ3JlYXRlQ2hpbGRGdW5j IGNyZWF0ZV9jaGlsZF9mdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB2b2lkIGNsZWFyX2FjdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9jb25zdHJhaW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2VmZmVjdHMgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoQ2x1dHRlci5BY3Rv ciBkZXNjZW5kYW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIGNvbnRpbnVlX3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsK KysJCXB1YmxpYyB2b2lkIGNvbnRpbnVlX3BpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19j b250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBQYW5nby5D b250ZXh0IGNyZWF0ZV9wYW5nb19jb250ZXh0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIFBhbmdvLkxheW91dCBjcmVhdGVfcGFuZ29fbGF5b3V0IChzdHJpbmc/ IHRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRl c3Ryb3lfYWxsX2NoaWxkcmVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2FjdG9y X2V2ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBl bWl0X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGNhcHR1cmUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Fic19hbGxvY2F0aW9uX3Zl cnRpY2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQzRCB2 ZXJ0c1s0XSk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIEF0ay5PYmplY3QgZ2V0X2FjY2Vz c2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdGlvbiBnZXRfYWN0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5BY3Rpb24+ IGdldF9hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQWN0b3JCb3ggZ2V0X2FsbG9jYXRpb25fYm94ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2FsbG9jYXRpb25fdmVydGljZXMgKENs dXR0ZXIuQWN0b3I/IGFuY2VzdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3Jh cGhlbmUuUG9pbnQzRCB2ZXJ0c1s0XSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENs dXR0ZXIuR3Jhdml0eSBnZXRfYW5jaG9yX3BvaW50X2dyYXZpdHkgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2JhY2tncm91bmRf Y29sb3IgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZ2V0X2FjdG9yX2J5X2dpZCIp XQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu OCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X2J5X2dpZCAodWludDMyIGlkXyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfY2hpbGRfYXRfaW5kZXggKGlu dCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLk1hdHJpeCBnZXRfY2hpbGRfdHJhbnNmb3JtICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkFjdG9yPiBnZXRfY2hp bGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBn ZXRfY2xpcCAob3V0IGZsb2F0IHhvZmYsIG91dCBmbG9hdCB5b2ZmLCBvdXQgZmxvYXQgd2lkdGgs IG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X2NsaXBfdG9fYWxsb2NhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29uc3RyYWludCBnZXRfY29uc3Ry YWludCAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQ29uc3RyYWludD4gZ2V0X2NvbnN0cmFpbnRzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQ29udGVudCBnZXRfY29udGVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBnZXRfY29udGVudF9ib3ggKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudEdyYXZpdHkg Z2V0X2NvbnRlbnRfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgQ2x1dHRlci5Db250ZW50UmVwZWF0IGdldF9jb250ZW50X3JlcGVhdCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29udGVudF9z Y2FsaW5nX2ZpbHRlcnMgKG91dCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRlciwgb3V0 IENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Vm9sdW1lIGdldF9kZWZh dWx0X3BhaW50X3ZvbHVtZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9lYXNpbmdf ZGVsYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVpbnQg Z2V0X2Vhc2luZ19kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIGdldF9lYXNpbmdfbW9kZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRWZmZWN0 IGdldF9lZmZlY3QgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkVmZmVjdD4gZ2V0X2VmZmVjdHMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5BY3RvciBnZXRfZmlyc3RfY2hpbGQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgYm9vbCBnZXRfZml4ZWRfcG9zaXRpb25fc2V0ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JGbGFncyBnZXRfZmxhZ3Mg KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0b3JfaGFzX3BvaW50ZXIiKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9oYXNfcG9pbnRl ciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2xhc3RfY2hp bGQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFuYWdlciAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfbWFyZ2luIChDbHV0dGVyLk1h cmdpbiBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfbWFyZ2luX2JvdHRvbSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9sZWZ0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX3JpZ2h0ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX3RvcCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9uX2No aWxkcmVuICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X25leHRfc2libGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IGdldF9vZmZzY3JlZW5fcmVkaXJlY3QgKCk7 CisrCQlwdWJsaWMgdWludDggZ2V0X29wYWNpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yMiIpXQorKwkJcHVibGljIGludCBnZXRfb3BhY2l0eV9vdmVycmlkZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9wYWludF9ib3ggKG91dCBD bHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdWludDggZ2V0X3BhaW50X29wYWNpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGFpbnRfdmlzaWJpbGl0eSAoKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9wYWludF92b2x1bWUgKENsdXR0ZXIu UGFpbnRWb2x1bWUgdm9sdW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIFBhbmdvLkNvbnRleHQgZ2V0X3BhbmdvX2NvbnRleHQgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yPyBnZXRfcGFyZW50ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9waXZvdF9wb2ludCAob3V0IGZsb2F0 IHBpdm90X3gsIG91dCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Bpdm90X3BvaW50X3ogKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfcG9zaXRpb24gKG91dCBmbG9hdCB4 LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfaGVpZ2h0IChmbG9hdCBmb3Jfd2lkdGgsIG91dCBm bG9hdCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFsX2hlaWdodF9wKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9wcmVmZXJyZWRfc2l6ZSAo b3V0IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQg bmF0dXJhbF93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF9oZWlnaHRfcCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRf d2lkdGggKGZsb2F0IGZvcl9oZWlnaHQsIG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0 IG5hdHVyYWxfd2lkdGhfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcHJldmlvdXNfc2libGluZyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9yZWFjdGl2ZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlJlcXVlc3RN b2RlIGdldF9yZXF1ZXN0X21vZGUgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcmVzb3VyY2Vfc2Nh bGUgKG91dCBmbG9hdCByZXNvdXJjZV9zY2FsZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIGRvdWJsZSBnZXRfcm90YXRpb24gKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzLCBvdXQgZmxv YXQgeCwgb3V0IGZsb2F0IHksIG91dCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgZG91YmxlIGdldF9yb3RhdGlvbl9hbmdsZSAoQ2x1dHRlci5Sb3Rh dGVBeGlzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZv aWQgZ2V0X3NjYWxlIChvdXQgZG91YmxlIHNjYWxlX3gsIG91dCBkb3VibGUgc2NhbGVfeSk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NjYWxlX2NlbnRlciAob3V0IGZs b2F0IGNlbnRlcl94LCBvdXQgZmxvYXQgY2VudGVyX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3NjYWxlX2dyYXZpdHkgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfc2NhbGVfeiAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zaXplIChvdXQg ZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfc3RhZ2UgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0RGlyZWN0aW9u IGdldF90ZXh0X2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0X3RyYW5zZm9ybSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnRWb2x1bWUgZ2V0 X3RyYW5zZm9ybWVkX3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5BY3RvciByZWxhdGl2ZV90b19hbmNl c3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRf dHJhbnNmb3JtZWRfcG9zaXRpb24gKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfc2l6 ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRyYW5zaXRpb24gZ2V0X3Ry YW5zaXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNsYXRpb24gKG91dCBmbG9hdCB0cmFuc2xhdGVfeCwgb3V0 IGZsb2F0IHRyYW5zbGF0ZV95LCBvdXQgZmxvYXQgdHJhbnNsYXRlX3opOworKwkJcHVibGljIGZs b2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIGdldF94X2Fs aWduICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdl dF94X2V4cGFuZCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIGdldF95X2FsaWdu ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdldF95 X2V4cGFuZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X3pfcG9zaXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuR3Jhdml0eSBnZXRfel9yb3RhdGlvbl9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ3JhYl9rZXlfZm9jdXMgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2FjdGlvbnMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBoYXNfYWxsb2NhdGlvbiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBoYXNfY29u c3RyYWludHMgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZGFtYWdlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19lZmZlY3RzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2tleV9mb2N1cyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBoYXNfbWFwcGVk X2Nsb25lcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIGJvb2wgaGFzX292ZXJsYXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgaGlkZV9hbGwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2Fib3ZlIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0 dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRfYXRfaW5kZXggKENsdXR0ZXIuQWN0b3IgY2hpbGQsIGlu dCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IGluc2VydF9jaGlsZF9iZWxvdyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8g c2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBp c19pbl9jbG9uZV9wYWludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlw dWJsaWMgYm9vbCBpc19tYXBwZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQor KwkJcHVibGljIGJvb2wgaXNfcmVhbGl6ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgYm9vbCBpc19yb3RhdGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIGJvb2wgaXNfc2NhbGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3Zpc2libGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG1hcCAoKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBtb3ZlX2FuY2hvcl9wb2ludCAoZmxvYXQgYW5jaG9y X3gsIGZsb2F0IGFuY2hvcl95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBt b3ZlX2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jhdml0eSBncmF2aXR5KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIG1vdmVfYnkgKGZs b2F0IGR4LCBmbG9hdCBkeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIGJvb2wgbmVlZHNfZXhwYW5kIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50X25vZGUgKENsdXR0 ZXIuUGFpbnROb2RlIHJvb3QpOworKwkJcHVibGljIHZvaWQgcGlja19ib3ggKENsdXR0ZXIuUGlj a0NvbnRleHQgcGlja19jb250ZXh0LCBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlwdWJsaWMg dm9pZCBwb3BfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBwdXNoX2ludGVybmFsICgpOwor KwkJcHVibGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhd193aXRoX2NsaXAgKENhaXJvLlJlY3Rh bmdsZUludD8gY2xpcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dm9pZCByZW1vdmVfYWN0aW9uIChDbHV0dGVyLkFjdGlvbiBhY3Rpb24pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbl9ieV9uYW1lIChz dHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2FsbF9jaGlsZHJlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsX3RyYW5zaXRpb25zICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jaGlsZCAoQ2x1dHRlci5B Y3RvciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY2xpcCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jb25zdHJhaW50IChDbHV0 dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY29uc3RyYWludF9ieV9uYW1lIChzdHJpbmcgbmFtZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfZWZm ZWN0IChDbHV0dGVyLkVmZmVjdCBlZmZlY3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdF9ieV9uYW1lIChzdHJpbmcgbmFtZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX3RyYW5z aXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCByZXBsYWNlX2NoaWxkIChDbHV0dGVyLkFjdG9yIG9sZF9jaGlsZCwgQ2x1dHRl ci5BY3RvciBuZXdfY2hpbGQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHJlc3RvcmVfZWFzaW5nX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNhdmVfZWFzaW5nX3N0YXRlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbGxvY2F0aW9uIChDbHV0 dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNob3JfcG9pbnQgKGZsb2F0IGFuY2hv cl94LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jhdml0eSBncmF2aXR5KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmFja2dy b3VuZF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9hYm92ZV9zaWJsaW5nIChDbHV0dGVy LkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYXRfaW5kZXggKENsdXR0ZXIu QWN0b3IgY2hpbGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9iZWxvd19zaWJsaW5nIChDbHV0dGVyLkFjdG9yIGNo aWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfdHJhbnNmb3JtIChDbHV0dGVyLk1hdHJpeD8g dHJhbnNmb3JtKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9jbGlwIChmbG9hdCB4b2ZmLCBmbG9hdCB5b2ZmLCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVp Z2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9j bGlwX3RvX2FsbG9jYXRpb24gKGJvb2wgY2xpcF9zZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50IChDbHV0dGVyLkNvbnRlbnQ/IGNv bnRlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9jb250ZW50X2dyYXZpdHkgKENsdXR0ZXIuQ29udGVudEdyYXZpdHkgZ3Jhdml0eSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRfcmVw ZWF0IChDbHV0dGVyLkNvbnRlbnRSZXBlYXQgcmVwZWF0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9zY2FsaW5nX2ZpbHRlcnMgKENs dXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFn X2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0aCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19k ZWxheSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19tb2RlIChDbHV0dGVy LkFuaW1hdGlvbk1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdm9pZCBzZXRfZml4ZWRfcG9zaXRpb25fc2V0IChib29sIGlzX3NldCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmxhZ3MgKENsdXR0ZXIu QWN0b3JGbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJs aWMgdm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXlvdXRfbWFuYWdlciAoQ2x1dHRlci5MYXlv dXRNYW5hZ2VyPyBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfbWFyZ2luIChDbHV0dGVyLk1hcmdpbiBtYXJnaW4pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW5fYm90dG9tIChm bG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9tYXJnaW5fbGVmdCAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX3JpZ2h0IChmbG9hdCBtYXJnaW4p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJn aW5fdG9wIChmbG9hdCBtYXJnaW4pOworKwkJcHVibGljIHZvaWQgc2V0X25hbWUgKHN0cmluZyBu YW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9v ZmZzY3JlZW5fcmVkaXJlY3QgKENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJlY3QgcmVkaXJlY3QpOwor KwkJcHVibGljIHZvaWQgc2V0X29wYWNpdHkgKHVpbnQ4IG9wYWNpdHkpOworKwkJcHVibGljIHZv aWQgc2V0X29wYWNpdHlfb3ZlcnJpZGUgKGludCBvcGFjaXR5KTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfcGFyZW50IChDbHV0dGVyLkFjdG9yIHBhcmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bpdm90X3BvaW50IChmbG9hdCBwaXZvdF94 LCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdm9pZCBzZXRfcGl2b3RfcG9pbnRfeiAoZmxvYXQgcGl2b3Rfeik7CisrCQlwdWJsaWMgdm9p ZCBzZXRfcG9zaXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlYWN0aXZlIChib29sIHJlYWN0aXZlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZXF1ZXN0X21v ZGUgKENsdXR0ZXIuUmVxdWVzdE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3JvdGF0aW9uIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywgZG91YmxlIGFu Z2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcm90YXRpb25fYW5nbGUgKENsdXR0ZXIuUm90YXRl QXhpcyBheGlzLCBkb3VibGUgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3NjYWxlIChkb3VibGUgc2NhbGVfeCwgZG91YmxlIHNjYWxlX3kp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV9mdWxsIChkb3Vi bGUgc2NhbGVfeCwgZG91YmxlIHNjYWxlX3ksIGZsb2F0IGNlbnRlcl94LCBmbG9hdCBjZW50ZXJf eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Nj YWxlX3ogKGRvdWJsZSBzY2FsZV96KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zaXplIChmbG9hdCB3 aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF90ZXh0X2RpcmVjdGlvbiAoQ2x1dHRlci5UZXh0RGlyZWN0aW9uIHRleHRf ZGlyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRf dHJhbnNmb3JtIChDbHV0dGVyLk1hdHJpeD8gdHJhbnNmb3JtKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRpb24gKGZsb2F0IHRyYW5z bGF0ZV94LCBmbG9hdCB0cmFuc2xhdGVfeSwgZmxvYXQgdHJhbnNsYXRlX3opOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3dpZHRoIChmbG9hdCB3aWR0 aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfeCAo ZmxvYXQgeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X3hfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeF9leHBhbmQgKGJvb2wgZXhwYW5k KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95IChm bG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfeV9hbGlnbiAoQ2x1dHRlci5BY3RvckFsaWduIHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95X2V4cGFuZCAoYm9vbCBleHBhbmQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF96X3Bv c2l0aW9uIChmbG9hdCB6X3Bvc2l0aW9uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBzZXRfel9yb3RhdGlvbl9mcm9tX2dyYXZpdHkgKGRvdWJsZSBhbmdsZSwgQ2x1dHRlci5H cmF2aXR5IGdyYXZpdHkpOworKwkJcHVibGljIGJvb2wgc2hvdWxkX3BpY2tfcGFpbnQgKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X2FsbCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIHRyYW5zZm9ybV9zdGFn ZV9wb2ludCAoZmxvYXQgeCwgZmxvYXQgeSwgb3V0IGZsb2F0IHhfb3V0LCBvdXQgZmxvYXQgeV9v dXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCB1bm1hcCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCB1bnBhcmVudCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHVuc2V0X2Zs YWdzIChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rpb24gYWN0 aW9ucyB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uIHsgb3duZWQg Z2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgQ2x1dHRlci5HcmF2aXR5IGFuY2hvcl9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBhbmNob3Jf eCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgZmxvYXQgYW5jaG9yX3kgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJhY2tncm91bmRfY29sb3Ig eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgYmFja2dyb3VuZF9jb2xvcl9zZXQgeyBnZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBib29sIGNoaWxkX3RyYW5zZm9ybV9zZXQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5SZWN0IGNsaXBfcmVjdCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBjbGlwX3RvX2FsbG9jYXRpb24geyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnRzIHsgc2V0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudCBjb250ZW50 IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q2x1dHRlci5BY3RvckJveCBjb250ZW50X2JveCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGNvbnRlbnRfZ3Jh dml0eSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIENsdXR0ZXIuQ29udGVudFJlcGVhdCBjb250ZW50X3JlcGVhdCB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGZsb2F0IGRlcHRoIHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIENsdXR0ZXIuRWZmZWN0IGVmZmVjdCB7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGZpcnN0X2NoaWxkIHsgZ2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBmaXhlZF9wb3NpdGlv bl9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4ZWRfeCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBmbG9hdCBmaXhlZF95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGJvb2wgaGFzX2NsaXAgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgaGFzX3BvaW50ZXIg eyBnZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCBoZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGxhc3RfY2hpbGQg eyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRl ci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWduaWZpY2F0aW9u X2ZpbHRlciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIG1hcHBlZCB7IGdldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fYm90dG9tIHsg Z2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxv YXQgbWFyZ2luX2xlZnQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fcmlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fdG9wIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIGZsb2F0IG1pbl9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBt aW5faGVpZ2h0X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBtaW5fd2lkdGggeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgYm9vbCBtaW5fd2lkdGhfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5pZmljYXRp b25fZmlsdGVyIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJ CXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBuYXR1cmFsX2hl aWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVyYWxfaGVpZ2h0X3NldCB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyBmbG9hdCBuYXR1cmFsX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJv b2wgbmF0dXJhbF93aWR0aF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJlY3Qgb2Zmc2NyZWVuX3Jl ZGlyZWN0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IG9wYWNpdHkgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHBpdm90X3BvaW50IHsgb3duZWQgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgcGl2b3RfcG9p bnRfeiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgcG9zaXRpb24geyBvd25l ZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJv b2wgcmVhY3RpdmUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCByZWFsaXplZCB7IGdldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuUmVxdWVzdE1v ZGUgcmVxdWVzdF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGZsb2F0IHJlc291cmNlX3NjYWxlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRp b25fYW5nbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5nbGVfeSB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5nbGVfeiB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQz RCByb3RhdGlvbl9jZW50ZXJfeiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IHJvdGF0 aW9uX2NlbnRlcl96X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2NlbnRlcl94IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBmbG9hdCBzY2FsZV9jZW50ZXJfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IHNjYWxl X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxlX3ggeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgZG91YmxlIHNjYWxlX3kgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVfeiB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBib29sIHNob3dfb25fc2V0X3BhcmVudCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUu U2l6ZSBzaXplIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gdGV4dF9kaXJlY3Rpb24geyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIGJvb2wgdHJhbnNmb3JtX3NldCB7IGdldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0 IHRyYW5zbGF0aW9uX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3kg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3ogeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB2aXNpYmxlIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBmbG9hdCB3aWR0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQg eCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB4X2V4cGFuZCB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgZmxvYXQgeSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB5X2FsaWduIHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB5X2V4cGFuZCB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZs b2F0IHpfcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFsbG9jYXRpb25fY2hhbmdlZCAoQ2x1dHRlci5BY3Rv ckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGJ1dHRvbl9wcmVz c19ldmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBidXR0b25fcmVsZWFzZV9l dmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBjYXB0dXJlZF9ldmVudCAoQ2x1 dHRlci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlc3Ryb3kgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBl bnRlcl9ldmVudCAoQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGV2ZW50IChDbHV0 dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaGlkZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGtleV9m b2N1c19pbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIGtleV9mb2N1c19vdXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBrZXlfcHJlc3NfZXZlbnQgKENs dXR0ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wga2V5X3JlbGVhc2VfZXZlbnQgKENsdXR0ZXIuS2V5 RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIGJvb2wgbGVhdmVfZXZlbnQgKENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBldmVu dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgYm9vbCBtb3Rpb25fZXZlbnQgKENsdXR0ZXIuTW90aW9uRXZlbnQgZXZlbnQpOworKwkJW0hh c0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGFyZW50 X3NldCAoQ2x1dHRlci5BY3Rvcj8gb2xkX3BhcmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBp Y2sgKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0KTsKKysJCVtIYXNFbWl0dGVyXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgcXVldWVfcmVsYXlvdXQgKCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCByZWFsaXplICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgc2Nyb2xsX2V2 ZW50IChDbHV0dGVyLlNjcm9sbEV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc2hv dyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgYm9vbCB0b3VjaF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHRyYW5zaXRpb25fc3Rv cHBlZCAoc3RyaW5nIG5hbWUsIGJvb2wgaXNfZmluaXNoZWQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0cmFuc2l0aW9uc19jb21wbGV0ZWQg KCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX21ldGFf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJz dHJhY3QgY2xhc3MgQWN0b3JNZXRhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBBY3Rvck1l dGEgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3RvciAoKTsKKysJ CXB1YmxpYyBib29sIGdldF9lbmFibGVkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdl dF9uYW1lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2Fj dG9yIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZW5hYmxlZCAo Ym9vbCBpc19lbmFibGVkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7 CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBhY3RvciB7IGdldDsgfQorKwkJcHVibGljIGJvb2wg ZW5hYmxlZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IHNldDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9ub2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBBY3Rvck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJ cHVibGljIEFjdG9yTm9kZSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2FsaWduX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgY2xhc3MgQWxpZ25Db25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEFsaWduQ29uc3RyYWludCAoQ2x1dHRlci5B Y3Rvcj8gc291cmNlLCBDbHV0dGVyLkFsaWduQXhpcyBheGlzLCBmbG9hdCBmYWN0b3IpOworKwkJ cHVibGljIENsdXR0ZXIuQWxpZ25BeGlzIGdldF9hbGlnbl9heGlzICgpOworKwkJcHVibGljIGZs b2F0IGdldF9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9z b3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25fYXhpcyAoQ2x1dHRlci5BbGlnbkF4 aXMgYXhpcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9yIChmbG9hdCBmYWN0b3IpOworKwkJ cHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCXB1Ymxp YyBDbHV0dGVyLkFsaWduQXhpcyBhbGlnbl9heGlzIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgZmxvYXQgZmFjdG9yIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMg Q2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfYWxwaGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNs YXNzIEFscGhhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBDbHV0dGVyLlNjcmlwdGFibGUgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEFs cGhhICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEFscGhhLmZ1bGwgKENsdXR0ZXIu VGltZWxpbmUgdGltZWxpbmUsIHVsb25nIG1vZGUpOworKwkJcHVibGljIGRvdWJsZSBnZXRfYWxw aGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWxvbmcgZ2V0 X21vZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90aW1lbGlu ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9j bG9zdXJlIChHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZnVuYyAo b3duZWQgQ2x1dHRlci5BbHBoYUZ1bmMgZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZSAodWxvbmcgbW9kZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUpOworKwkJcHVibGljIGRv dWJsZSBhbHBoYSB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHVsb25nIG1vZGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVy LlRpbWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYW5pbWF0 aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBBbmlt YXRpb24gOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBBbmltYXRpb24gKCk7Cisr CQlwdWJsaWMgdWludCBnZXRfZHVyYXRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LkludGVydmFsIGdldF9pbnRlcnZhbCAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJcHVibGlj IGJvb2wgZ2V0X2xvb3AgKCk7CisrCQlwdWJsaWMgdWxvbmcgZ2V0X21vZGUgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90aW1lbGluZSAoKTsKKysJCXB1YmxpYyBi b29sIGhhc19wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJcHVibGljIHZvaWQg c2V0X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9sb29wIChib29s IGxvb3ApOworKwkJcHVibGljIHZvaWQgc2V0X21vZGUgKHVsb25nIG1vZGUpOworKwkJcHVibGlj IHZvaWQgc2V0X29iamVjdCAoR0xpYi5PYmplY3Qgb2JqZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNl dF90aW1lbGluZSAoQ2x1dHRlci5UaW1lbGluZT8gdGltZWxpbmUpOworKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWxwaGEgYWxwaGEg eyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7IHNldDsg fQorKwkJcHVibGljIGJvb2wgbG9vcCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWxvbmcgbW9k ZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBHTGliLk9i amVjdCBvYmplY3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxp bmUgdGltZWxpbmUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg Y29tcGxldGVkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhcnRlZCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIw LjIiKV0KKysJcHVibGljIGNsYXNzIEFueUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3Rv ciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGlj IHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2JhY2tlbmRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZW5kICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWRkX29wdGlvbnMgKEdM aWIuT3B0aW9uR3JvdXAgZ3JvdXApOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IGJvb2wgY3JlYXRlX2NvbnRleHQgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLlN0YWdlV2luZG93IGNyZWF0ZV9z dGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGVuc3VyZV9jb250ZXh0IChDbHV0dGVyLlN0 YWdlIHN0YWdlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU2VhdCBnZXRfZGVmYXVsdF9z ZWF0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuRmVhdHVy ZUZsYWdzIGdldF9mZWF0dXJlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENhaXJvLkZvbnRPcHRpb25zIGdldF9mb250X29wdGlvbnMgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0TWV0aG9kIGdldF9pbnB1dF9tZXRob2QgKCk7 CisrCQlwdWJsaWMgZG91YmxlIGdldF9yZXNvbHV0aW9uICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9ldmVudHMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1cmVzICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHByZV9wYXJzZSAoKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlZHJh dyAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgdm9pZCBzZXRfZm9udF9vcHRpb25zIChDYWlyby5Gb250T3B0aW9ucyBvcHRpb25z KTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9tZXRob2QgKENsdXR0ZXIuSW5wdXRNZXRob2Qg bWV0aG9kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzaWduYWwg dm9pZCBmb250X2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgcmVzb2x1dGlvbl9jaGFuZ2VkICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHNldHRpbmdzX2NoYW5nZWQgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2Jpbl9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQmluTGF5b3V0IDogQ2x1dHRlci5MYXlv dXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJpbkxheW91dCAoQ2x1 dHRlci5CaW5BbGlnbm1lbnQgeF9hbGlnbiA9IENsdXR0ZXIuQmluQWxpZ25tZW50LlNUQVJULCBD bHV0dGVyLkJpbkFsaWdubWVudCB5X2FsaWduID0gQ2x1dHRlci5CaW5BbGlnbm1lbnQuU1RBUlQp OworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENs dXR0ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmluQWxpZ25tZW50 IHlfYWxpZ24geyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kX2NvbnN0cmFpbnRf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xh c3MgQmluZENvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIild CisrCQlwdWJsaWMgQmluZENvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRl ci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIENs dXR0ZXIuQmluZENvb3JkaW5hdGUgZ2V0X2Nvb3JkaW5hdGUgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJj ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb29yZGluYXRlIChDbHV0dGVyLkJpbmRDb29yZGlu YXRlIGNvb3JkaW5hdGUpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0 KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7Cisr CQlwdWJsaWMgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlIHsgZ2V0OyBzZXQgY29u c3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9 CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfYmluZGluZ19wb29sX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEJpbmRpbmdQb29sIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVi bGljIEJpbmRpbmdQb29sIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBhY3RpdmF0ZSAo dWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdMaWIuT2JqZWN0 IGdvYmplY3QpOworKwkJcHVibGljIHZvaWQgYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25h bWUpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmluZGluZ1Bvb2wgZmluZCAo c3RyaW5nIG5hbWUpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGZpbmRfYWN0aW9uICh1aW50 IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgQ2x1dHRlci5CaW5kaW5nUG9vbCBnZXRfZm9yX2NsYXNzICh2b2lkKiBrbGFz cyk7CisrCQlwdWJsaWMgdm9pZCBpbnN0YWxsX2FjdGlvbiAoc3RyaW5nIGFjdGlvbl9uYW1lLCB1 aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgb3duZWQgQ2x1dHRl ci5CaW5kaW5nQWN0aW9uRnVuYyBjYWxsYmFjayk7CisrCQlwdWJsaWMgdm9pZCBpbnN0YWxsX2Ns b3N1cmUgKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVy VHlwZSBtb2RpZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIG92 ZXJyaWRlX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmll cnMsIG93bmVkIEdMaWIuQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJcHVibGljIHZvaWQgb3ZlcnJp ZGVfY2xvc3VyZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMs IEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hY3Rpb24gKHVp bnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2 b2lkIHVuYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25hbWUpOworKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9ibHVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCbHVyRWZmZWN0IDogQ2x1dHRlci5PZmZz Y3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBCbHVyRWZmZWN0ICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgY2xhc3MgQm94IDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9y LCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBCb3ggKENsdXR0 ZXIuTGF5b3V0TWFuYWdlciBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFuYWdlciAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0dGVyLkFjdG9yIGFjdG9y LCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2tfYWZ0ZXIgKENs dXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIC4uLik7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19hdCAoQ2x1dHRlci5BY3RvciBhY3Rvciwg aW50IHBvc2l0aW9uLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBh Y2tfYmVmb3JlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nLCAu Li4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2t2IChDbHV0dGVyLkFj dG9yIGFjdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3Byb3BlcnRpZXMiLCBh cnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBzdHJp bmdbXSBwcm9wZXJ0aWVzLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3Byb3BlcnRp ZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIp XSBHTGliLlZhbHVlW10gdmFsdWVzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdm9pZCBzZXRfbGF5b3V0X21hbmFnZXIgKENsdXR0ZXIuTGF5b3V0TWFuYWdlciBt YW5hZ2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xv ciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgYm9vbCBjb2xvcl9zZXQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdldDsgc2V0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2JveF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgY2xhc3MgQm94TGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJveExheW91dCAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfYWxpZ25tZW50IChDbHV0dGVyLkFjdG9yIGFjdG9y LCBvdXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwgb3V0IENsdXR0ZXIuQm94QWxpZ25t ZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9lYXNp bmdfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVsb25nIGdldF9l YXNpbmdfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfZXhw YW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCBnZXRfZmlsbCAoQ2x1dHRlci5BY3RvciBhY3Rvciwgb3V0IGJvb2wgeF9maWxsLCBvdXQg Ym9vbCB5X2ZpbGwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJv b2wgZ2V0X2hvbW9nZW5lb3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAoKTsKKysJCXB1Ymxp YyBib29sIGdldF9wYWNrX3N0YXJ0ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3NwYWNpbmcgKCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3VzZV9hbmltYXRpb25zICgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF92ZXJ0aWNhbCAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0dGVyLkFjdG9yIGFjdG9y LCBib29sIGV4cGFuZCwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsLCBDbHV0dGVyLkJveEFsaWdu bWVudCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25tZW50IChDbHV0dGVyLkFjdG9yIGFjdG9y LCBDbHV0dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2Fs aWduKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX2R1cmF0 aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRf ZWFzaW5nX21vZGUgKHVsb25nIG1vZGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9leHBhbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgZXhwYW5kKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmlsbCAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91cyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWVudGF0 aW9uIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9wYWNrX3N0YXJ0IChib29sIHBhY2tfc3RhcnQpOworKwkJcHVibGljIHZvaWQgc2V0X3NwYWNp bmcgKHVpbnQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3VzZV9hbmltYXRpb25zIChib29sIGFuaW1hdGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF92ZXJ0aWNhbCAoYm9vbCB2ZXJ0aWNhbCk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHVpbnQgZWFzaW5nX2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdWxvbmcgZWFzaW5nX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaG9tb2dlbmVvdXMgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29s IHBhY2tfc3RhcnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgc3BhY2luZyB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdXNlX2FuaW1hdGlvbnMg eyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHZlcnRpY2Fs IHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYnJpZ2h0bmVzc19jb250cmFzdF9lZmZl Y3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IGNsYXNzIEJyaWdodG5lc3NDb250cmFzdEVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQnJpZ2h0bmVzc0NvbnRyYXN0RWZmZWN0ICgpOwor KwkJcHVibGljIHZvaWQgZ2V0X2JyaWdodG5lc3MgKG91dCBmbG9hdCByZWQsIG91dCBmbG9hdCBn cmVlbiwgb3V0IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgZ2V0X2NvbnRyYXN0IChvdXQg ZmxvYXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9hdCBibHVlKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9icmlnaHRuZXNzIChmbG9hdCBicmlnaHRuZXNzKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9icmlnaHRuZXNzX2Z1bGwgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUpOwor KwkJcHVibGljIHZvaWQgc2V0X2NvbnRyYXN0IChmbG9hdCBjb250cmFzdCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfY29udHJhc3RfZnVsbCAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1 ZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJyaWdo dG5lc3MgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgQ2x1dHRlci5Db2xvciBjb250cmFzdCB7IG93bmVkIGdldDsgc2V0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1 YmxpYyBjbGFzcyBCdXR0b25FdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJs ZSBheGVzOworKwkJcHVibGljIHVpbnQzMiBidXR0b247CisrCQlwdWJsaWMgdWludCBjbGlja19j b3VudDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVy VHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNl OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIg dGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0 IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2FudmFzX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBDYW52 YXMgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb250ZW50KiIpXQorKwkJcHVi bGljIENhbnZhcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfc2NhbGVfZmFjdG9yICgpOworKwkJ cHVibGljIHZvaWQgc2V0X3NjYWxlX2ZhY3RvciAoZmxvYXQgc2NhbGUpOworKwkJcHVibGljIGJv b2wgc2V0X3NpemUgKGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBpbnQgaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCBz Y2FsZV9mYWN0b3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgaW50IHdpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29s IGRyYXcgKENhaXJvLkNvbnRleHQgY3IsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2NoaWxkX21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQ2hpbGRNZXRhIDogR0xpYi5PYmplY3Qg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIENoaWxkTWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2Fj dG9yICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db250YWluZXIgZ2V0X2NvbnRhaW5l ciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGFjdG9yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCXB1YmxpYyBDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9jbGlja19hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xpY2tBY3Rpb24gOiBDbHV0dGVy LkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIENsaWNrQWN0aW9uICgpOworKwkJcHVi bGljIHVpbnQgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxvYXQgcHJl c3NfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5N b2RpZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJcHVibGljIHZvaWQgcmVsZWFzZSAoKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgaGVsZCB7IGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg aW50IGxvbmdfcHJlc3NfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGxvbmdfcHJl c3NfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGJvb2wgcHJlc3NlZCB7IGdldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg Y2xpY2tlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBsb25nX3ByZXNzIChDbHV0dGVyLkFj dG9yIGFjdG9yLCBDbHV0dGVyLkxvbmdQcmVzc1N0YXRlIHN0YXRlKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfY2xpcF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCXB1YmxpYyBjbGFzcyBDbGlwTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5v ZGUqIildCisrCQlwdWJsaWMgQ2xpcE5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Nsb25lX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNz IENsb25lIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFi bGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQor KwkJcHVibGljIENsb25lIChDbHV0dGVyLkFjdG9yIHNvdXJjZSk7CisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNl IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNl IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbG9yX25vZGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNz IENvbG9yTm9kZSA6IENsdXR0ZXIuUGlwZWxpbmVOb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlw dWJsaWMgQ29sb3JOb2RlIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2NvbG9yaXplX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBjbGFzcyBDb2xvcml6ZUVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZm ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQ29sb3JpemVFZmZlY3QgKENsdXR0ZXIuQ29s b3IgdGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfdGludCAoKTsKKysJCXB1Ymxp YyB2b2lkIHNldF90aW50IChDbHV0dGVyLkNvbG9yIHRpbnQpOworKwkJcHVibGljIENsdXR0ZXIu Q29sb3IgdGludCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnN0cmFpbnRfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJh Y3QgY2xhc3MgQ29uc3RyYWludCA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDb25zdHJhaW50ICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2FsbG9jYXRp b24gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3JCb3ggYWxsb2NhdGlvbik7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfcHJlZmVycmVkX3Np emUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuT3JpZW50YXRpb24gZGlyZWN0aW9uLCBm bG9hdCBmb3Jfc2l6ZSwgZmxvYXQgbWluaW11bV9zaXplLCBmbG9hdCBuYXR1cmFsX3NpemUpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu MiIpXQorKwlwdWJsaWMgY2xhc3MgQ3Jvc3NpbmdFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciByZWxhdGVk OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0 YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZl bnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9kZWZvcm1fZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIERlZm9ybUVmZmVjdCA6IENs dXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEZWZvcm1FZmZlY3QgKCk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZWZvcm1fdmVydGV4IChmbG9hdCB3aWR0aCwgZmxv YXQgaGVpZ2h0LCBDb2dsLlRleHR1cmVWZXJ0ZXggdmVydGV4KTsKKysJCXB1YmxpYyB1bm93bmVk IENvZ2wuSGFuZGxlIGdldF9iYWNrX21hdGVyaWFsICgpOworKwkJcHVibGljIHZvaWQgZ2V0X25f dGlsZXMgKG91dCB1aW50IHhfdGlsZXMsIG91dCB1aW50IHlfdGlsZXMpOworKwkJcHVibGljIHZv aWQgaW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrX21hdGVyaWFsIChDb2ds LkhhbmRsZT8gbWF0ZXJpYWwpOworKwkJcHVibGljIHZvaWQgc2V0X25fdGlsZXMgKHVpbnQgeF90 aWxlcywgdWludCB5X3RpbGVzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVp bnQgeF90aWxlcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyB1aW50IHlfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZXNhdHVyYXRl X2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1 YmxpYyBjbGFzcyBEZXNhdHVyYXRlRWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl ckVmZmVjdCoiKV0KKysJCXB1YmxpYyBEZXNhdHVyYXRlRWZmZWN0IChkb3VibGUgZmFjdG9yKTsK KysJCXB1YmxpYyBkb3VibGUgZ2V0X2ZhY3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9mYWN0 b3IgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGRvdWJsZSBmYWN0b3IgeyBnZXQ7IHNldDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBEcmFnQWN0aW9uIDogQ2x1dHRlci5B Y3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUg PSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBEcmFnQWN0aW9uICgpOworKwkJcHVibGlj IGJvb2wgZ2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdCBkcmFnX2FyZWEpOworKwkJcHVibGlj IENsdXR0ZXIuRHJhZ0F4aXMgZ2V0X2RyYWdfYXhpcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuQWN0b3IgZ2V0X2RyYWdfaGFuZGxlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2RyYWdf dGhyZXNob2xkIChvdXQgdWludCB4X3RocmVzaG9sZCwgb3V0IHVpbnQgeV90aHJlc2hvbGQpOwor KwkJcHVibGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKG91dCBmbG9hdCBtb3Rpb25feCwgb3V0 IGZsb2F0IG1vdGlvbl95KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wcmVzc19jb29yZHMgKG91dCBm bG9hdCBwcmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJh Z19hcmVhIChHcmFwaGVuZS5SZWN0PyBkcmFnX2FyZWEpOworKwkJcHVibGljIHZvaWQgc2V0X2Ry YWdfYXhpcyAoQ2x1dHRlci5EcmFnQXhpcyBheGlzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFn X2hhbmRsZSAoQ2x1dHRlci5BY3Rvcj8gaGFuZGxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFn X3RocmVzaG9sZCAoaW50IHhfdGhyZXNob2xkLCBpbnQgeV90aHJlc2hvbGQpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdy YXBoZW5lLlJlY3QgZHJhZ19hcmVhIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGRy YWdfYXJlYV9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkRyYWdBeGlzIGRyYWdfYXhp cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBkcmFnX2hhbmRsZSB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeF9kcmFnX3Ro cmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBp bnQgeV9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBkcmFnX2JlZ2luIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBm bG9hdCBldmVudF95LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19lbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0 IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3ksIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7 CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFnX21vdGlvbiAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFfeSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZHJhZ19wcm9ncmVz cyAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFfeSk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2Ryb3BfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIERyb3BBY3Rpb24gOiBDbHV0dGVyLkFjdGlv biB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIERyb3BBY3Rpb24gKCk7CisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgYm9vbCBjYW5fZHJvcCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZl bnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcm9w IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZHJvcF9j YW5jZWwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3kp OworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgb3Zlcl9pbiAoQ2x1dHRlci5BY3RvciBh Y3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBvdmVyX291dCAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBFZmZlY3Qg OiBDbHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRWZmZWN0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIGJvb2wgbW9kaWZ5X3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5QYWludFZvbHVt ZSB2b2x1bWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGFpbnQg KENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQsIENsdXR0ZXIuRWZmZWN0UGFpbnRG bGFncyBmbGFncyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwaWNr IChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBwb3N0X3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWlu dF9jb250ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHByZV9w YWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZXBhaW50ICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVu Y3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0 eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEV2ZW50IHsKKysJCXB1Ymxp YyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEV2ZW50IChDbHV0dGVyLkV2ZW50VHlwZSB0eXBlKTsK KysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50IGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X2Fu Z2xlIChDbHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgZG91YmxlIGdldF9heGVzIChvdXQgdWludCBuX2F4ZXMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQzMiBnZXRfYnV0dG9uICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2NsaWNrX2NvdW50 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Nv b3JkcyAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2RldmljZSAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjI4IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlVG9vbCBnZXRf ZGV2aWNlX3Rvb2wgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Q2x1dHRlci5JbnB1dERldmljZVR5cGUgZ2V0X2RldmljZV90eXBlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2UgKENsdXR0ZXIu RXZlbnQgdGFyZ2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X2V2ZW50X3NlcXVlbmNlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBn ZXRfZmxhZ3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHZv aWQgZ2V0X2dlc3R1cmVfbW90aW9uX2RlbHRhIChvdXQgZG91YmxlIGR4LCBvdXQgZG91YmxlIGR5 KTsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVyZVBoYXNlIGdldF9nZXN0dXJlX3Bo YXNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBkb3VibGUg Z2V0X2dlc3R1cmVfcGluY2hfYW5nbGVfZGVsdGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yNCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVyZV9waW5jaF9zY2FsZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50MTYgZ2V0X2tleV9jb2Rl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2tl eV9zeW1ib2wgKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRfa2V5X3VuaWNvZGUgKCk7CisrCQlw dWJsaWMgdWludCBnZXRfbW9kZV9ncm91cCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9wYWRfZXZl bnRfZGV0YWlscyAob3V0IHVpbnQgbnVtYmVyLCBvdXQgdWludCBtb2RlLCBvdXQgZG91YmxlIHZh bHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBnZXRf cG9zaXRpb24gKEdyYXBoZW5lLlBvaW50IHBvc2l0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3JlbGF0ZWQgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3Njcm9s bF9kZWx0YSAob3V0IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBkeSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZ2V0X3Njcm9s bF9kaXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJcHVibGlj IENsdXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZ2V0X3Njcm9sbF9maW5pc2hfZmxhZ3MgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsU291 cmNlIGdldF9zY3JvbGxfc291cmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmlj ZSBnZXRfc291cmNlX2RldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3N0YWdlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9zdGF0 ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBnZXRf c3RhdGVfZnVsbCAob3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGJ1dHRvbl9zdGF0ZSwgb3V0IENs dXR0ZXIuTW9kaWZpZXJUeXBlIGJhc2Vfc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBs YXRjaGVkX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbG9ja2VkX3N0YXRlLCBvdXQg Q2x1dHRlci5Nb2RpZmllclR5cGUgZWZmZWN0aXZlX3N0YXRlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50MzIgZ2V0X3RpbWUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X3RvdWNocGFkX2dlc3R1cmVfZmlu Z2VyX2NvdW50ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2V2ZW50X3R5cGUiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSBnZXRfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNfY29udHJvbF9tb2RpZmllciAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNfc2hpZnRf bW9kaWZpZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJv b2wgaXNfcG9pbnRlcl9lbXVsYXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB2b2lkIHB1dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9idXR0b24gKHVpbnQzMiBidXR0b24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nvb3JkcyAoZmxvYXQgeCwgZmxvYXQg eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGV2 aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2VfdG9vbCAoQ2x1dHRlci5JbnB1dERl dmljZVRvb2w/IHRvb2wpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2ZsYWdzIChDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV9jb2RlICh1aW50MTYga2V5 X2NvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2tleV9zeW1ib2wgKHVpbnQga2V5X3N5bSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X3VuaWNvZGUgKHVuaWNoYXIga2V5X3VuaWNvZGUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlbGF0ZWQg KENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX2RlbHRhIChkb3VibGUgZHgsIGRvdWJsZSBkeSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX2Rp cmVjdGlvbiAoQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0 b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9zb3VyY2VfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0YWdlIChDbHV0dGVy LlN0YWdlPyBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg dm9pZCBzZXRfc3RhdGUgKENsdXR0ZXIuTW9kaWZpZXJUeXBlIHN0YXRlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aW1lICh1aW50MzIgdGltZV8p OworKwkJcHVibGljIENsdXR0ZXIuQW55RXZlbnQgYW55IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0 dGVyQW55RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQnV0dG9uRXZlbnQg YnV0dG9uIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQnV0dG9uRXZlbnQgKikiKV0gIGdldDsg fQorKwkJcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBjcm9zc2luZyB7W0NDb2RlIChjbmFt ZSA9ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuS2V5RXZlbnQga2V5IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyS2V5RXZlbnQgKikiKV0g IGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90aW9uIHtbQ0NvZGUgKGNu YW1lID0gIihDbHV0dGVyTW90aW9uRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuU2Nyb2xsRXZlbnQgc2Nyb2xsIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU2Nyb2xsRXZl bnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZUV2ZW50IHN0YWdl X3N0YXRlIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU3RhZ2VTdGF0ZUV2ZW50ICopIildICBn ZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQgdG91Y2gge1tDQ29kZSAoY25hbWUg PSAiKENsdXR0ZXJUb3VjaEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRv dWNocGFkUGluY2hFdmVudCB0b3VjaHBhZF9waW5jaCB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRl clRvdWNocGFkUGluY2hFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3Vj aHBhZFN3aXBlRXZlbnQgdG91Y2hwYWRfc3dpcGUge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJU b3VjaHBhZFN3aXBlRXZlbnQgKikiKV0gIGdldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9j b3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJf ZXZlbnRfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBFdmVudFNlcXVlbmNlIHsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfZml4ZWRfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEZpeGVkTGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5h Z2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZpeGVkTGF5b3V0ICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9mbG93X2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGbG93TGF5b3V0IDogQ2x1dHRlci5MYXlvdXRN YW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZsb3dMYXlvdXQgKENsdXR0 ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfY29s dW1uX3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfY29sdW1uX3dpZHRoIChvdXQgZmxv YXQgbWluX3dpZHRoLCBvdXQgZmxvYXQgbWF4X3dpZHRoKTsKKysJCXB1YmxpYyBib29sIGdldF9o b21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBnZXRfb3Jp ZW50YXRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcm93X2hlaWdodCAob3V0IGZsb2F0IG1p bl9oZWlnaHQsIG91dCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfcm93 X3NwYWNpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGJv b2wgZ2V0X3NuYXBfdG9fZ3JpZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fc3BhY2lu ZyAoZmxvYXQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX3dpZHRoIChmbG9h dCBtaW5fd2lkdGgsIGZsb2F0IG1heF93aWR0aCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaG9tb2dl bmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQgc2V0X29yaWVudGF0aW9u IChDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcm93X2hlaWdodCAoZmxvYXQgbWluX2hlaWdodCwgZmxvYXQgbWF4X2hlaWdodCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfcm93X3NwYWNpbmcgKGZsb2F0IHNwYWNpbmcpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zbmFwX3RvX2dyaWQgKGJvb2wg c25hcF90b19ncmlkKTsKKysJCXB1YmxpYyBmbG9hdCBjb2x1bW5fc3BhY2luZyB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtYXhfY29sdW1uX3dpZHRoIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1heF9yb3dfaGVpZ2h0 IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1p bl9jb2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgZmxvYXQgbWluX3Jvd19oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgZmxvYXQgcm93X3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIHNuYXBfdG9fZ3JpZCB7IGdldDsgc2V0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2dlc3R1cmVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIEdlc3R1cmVBY3Rpb24gOiBDbHV0 dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIEdlc3R1cmVBY3Rpb24gKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgY2FuY2VsICgpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2VzdHVyZV9wcmVwYXJlIChD bHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9kZXZpY2UgKHVpbnQgcG9pbnQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuRXZlbnQgZ2V0X2xhc3RfZXZlbnQgKHVpbnQgcG9pbnQpOworKwkJcHVibGljIHZvaWQgZ2V0 X21vdGlvbl9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBtb3Rpb25feCwgb3V0IGZsb2F0 IG1vdGlvbl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0IGRlbHRhX3gsIG91dCBm bG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg dWludCBnZXRfbl9jdXJyZW50X3BvaW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgaW50IGdldF9uX3RvdWNoX3BvaW50cyAoKTsKKysJCXB1YmxpYyB2b2lk IGdldF9wcmVzc19jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxv YXQgcHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcmVsZWFzZV9jb29yZHMgKHVpbnQgcG9p bnQsIG91dCBmbG9hdCByZWxlYXNlX3gsIG91dCBmbG9hdCByZWxlYXNlX3kpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnRTZXF1 ZW5jZSBnZXRfc2VxdWVuY2UgKHVpbnQgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZSAob3V0 IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisr CQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0X3RocmVzaG9sZF90cmlnZ2Vy X2VkZ2UgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4yMCIsIHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdlc3R1cmVU cmlnZ2VyRWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWdkZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZlbG9jaXR5ICh1aW50IHBvaW50 LCBvdXQgZmxvYXQgdmVsb2NpdHlfeCwgb3V0IGZsb2F0IHZlbG9jaXR5X3kpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9uX3RvdWNoX3BvaW50cyAo aW50IG5iX3BvaW50cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlIChmbG9hdCB4LCBmbG9hdCB5KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGhyZXNo b2xkX3RyaWdnZXJfZWRnZSAoQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZWRnZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGludCBuX3RvdWNoX3BvaW50cyB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xkX3RyaWdnZXJfZGlzdGFuY2VfeCB7 IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xkX3RyaWdnZXJfZGlzdGFu Y2VfeSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQor KwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIHRocmVzaG9sZF90cmlnZ2VyX2Vk Z2UgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZ2Vz dHVyZV9iZWdpbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBnZXN0dXJlX2NhbmNlbCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBnZXN0dXJlX2VuZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJlX3Byb2dyZXNzIChDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JpZF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIEdyaWRMYXlvdXQg OiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIildCisrCQlwdWJsaWMg R3JpZExheW91dCAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaCAoQ2x1dHRlci5BY3RvciBjaGls ZCwgaW50IGxlZnQsIGludCB0b3AsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlwdWJsaWMg dm9pZCBhdHRhY2hfbmV4dF90byAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8g c2libGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0 KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2NoaWxkX2F0IChpbnQgbGVm dCwgaW50IHRvcCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29sdW1uX2hvbW9nZW5lb3VzICgpOwor KwkJcHVibGljIHVpbnQgZ2V0X2NvbHVtbl9zcGFjaW5nICgpOworKwkJcHVibGljIENsdXR0ZXIu T3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3Jvd19o b21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9yb3dfc3BhY2luZyAoKTsKKysJCXB1 YmxpYyB2b2lkIGluc2VydF9jb2x1bW4gKGludCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBp bnNlcnRfbmV4dF90byAoQ2x1dHRlci5BY3RvciBzaWJsaW5nLCBDbHV0dGVyLkdyaWRQb3NpdGlv biBzaWRlKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9yb3cgKGludCBwb3NpdGlvbik7CisrCQlw dWJsaWMgdm9pZCBzZXRfY29sdW1uX2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbik7 CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsK KysJCXB1YmxpYyB2b2lkIHNldF9yb3dfc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJCXB1Ymxp YyBib29sIGNvbHVtbl9ob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBj b2x1bW5fc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlv biBvcmllbnRhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCByb3dfaG9tb2dlbmVv dXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgcm93X3NwYWNpbmcgeyBnZXQ7IHNldDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBHcm91cCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5J bXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRl ci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JvdXAgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjAuMiIpXQorKwkJcHVibGljIGludCBnZXRfbl9jaGlsZHJlbiAoKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2Ug PSAiMC4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9udGhfY2hpbGQg KGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2ltYWdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBjbGFzcyBJbWFnZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLkNvbnRlbnQg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckNvbnRlbnQqIildCisrCQlwdWJsaWMgSW1hZ2UgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBD b2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfYXJlYSAoW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5QaXhlbEZvcm1h dCBwaXhlbF9mb3JtYXQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1aW50IHJvd19zdHJpZGUp IHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIHNldF9ieXRlcyAoR0xpYi5CeXRlcyBkYXRhLCBDb2dsLlBpeGVsRm9ybWF0IHBp eGVsX2Zvcm1hdCwgdWludCB3aWR0aCwgdWludCBoZWlnaHQsIHVpbnQgcm93X3N0cmlkZSkgdGhy b3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoW0NDb2RlIChhcnJheV9s ZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBwaXhlbF9mb3Jt YXQsIHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCB1aW50IHJvd19zdHJpZGUpIHRocm93cyBHTGli LkVycm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGNsYXNzIElucHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0RGV2aWNlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5JbnB1dERldmljZSBnZXRfYXNzb2NpYXRlZF9kZXZpY2UgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dEF4aXMgZ2V0X2F4aXMgKHVpbnQg aW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdl dF9heGlzX3ZhbHVlIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZG91YmxlW10gYXhl cywgQ2x1dHRlci5JbnB1dEF4aXMgYXhpcywgb3V0IGRvdWJsZSB2YWx1ZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2Nvb3JkcyAoQ2x1dHRlci5F dmVudFNlcXVlbmNlPyBzZXF1ZW5jZSwgR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBnZXRfZGV2aWNlX2lkICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRNb2RlIGdl dF9kZXZpY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB1bm93bmVkIHN0cmluZyBnZXRfZGV2aWNlX25hbWUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X2RldmljZV9ub2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdldF9kZXZpY2VfdHlwZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9lbmFibGVkICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2dyYWJiZWRfYWN0b3IgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBpbnQgZ2V0 X2dyb3VwX25fbW9kZXMgKGludCBncm91cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgYm9vbCBnZXRfaGFzX2N1cnNvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9rZXkgKHVpbnQgaW5kZXhfLCBvdXQgdWludCBr ZXl2YWwsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIENs dXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIGdldF9tYXBwaW5nX21vZGUgKCk7CisrCQlwdWJsaWMg aW50IGdldF9tb2RlX3N3aXRjaF9idXR0b25fZ3JvdXAgKHVpbnQgYnV0dG9uKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgZ2V0 X21vZGlmaWVyX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIHVpbnQgZ2V0X25fYXhlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyB1aW50IGdldF9uX2tleXMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX21vZGVfZ3Jv dXBzICgpOworKwkJcHVibGljIGludCBnZXRfbl9yaW5ncyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0 X25fc3RyaXBzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcG9pbnRlcl9hY3RvciAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3BvaW50 ZXJfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIGdldF9wcm9kdWN0X2lkICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5TZWF0IGdldF9zZWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGdldF9zbGF2ZV9kZXZpY2Vz ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfdmVuZG9yX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGdyYWIgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1 YWwgYm9vbCBpc19ncm91cGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG90aGVyX2RldmljZSk7Cisr CQlwdWJsaWMgdmlydHVhbCBib29sIGlzX21vZGVfc3dpdGNoX2J1dHRvbiAodWludCBncm91cCwg dWludCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIGJvb2wga2V5Y29kZV90b19ldmRldiAodWludCBoYXJkd2FyZV9rZXljb2RlLCB1aW50 IGV2ZGV2X2tleWNvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuQWN0b3Igc2VxdWVuY2VfZ2V0X2dyYWJiZWRfYWN0b3IgKENsdXR0 ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIHZvaWQgc2VxdWVuY2VfZ3JhYiAoQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNl cXVlbmNlLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBzZXF1ZW5jZV91bmdyYWIgKENsdXR0ZXIuRXZlbnRTZXF1ZW5j ZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXkgKHVpbnQgaW5kZXhfLCB1aW50IGtleXZhbCwgQ2x1 dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXBwaW5n X21vZGUgKENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIG1hcHBpbmcpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuZ3JhYiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHVwZGF0ZV9mcm9tX2V2ZW50IChDbHV0 dGVyLkV2ZW50IGV2ZW50LCBib29sIHVwZGF0ZV9zdGFnZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfZnJvbV90b29sIChDbHV0dGVyLklucHV0RGV2aWNl VG9vbCB0b29sKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgb3duZWQgZ2V0OyBj b25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0TW9kZSBkZXZpY2VfbW9kZSB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGRldmljZV9ub2RlIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVy LklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBlbmFibGVkIHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGhhc19jdXJz b3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgaW50IGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBtYXBwaW5nX21vZGUgeyBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVpbnQgbl9h eGVzIHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fbW9kZV9ncm91cHMgeyBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIGludCBuX3JpbmdzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1Ymxp YyBpbnQgbl9zdHJpcHMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBv d25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJ CXB1YmxpYyBzdHJpbmcgcHJvZHVjdF9pZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMg Q2x1dHRlci5TZWF0IHNlYXQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdmVuZG9yX2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3Rvb2xfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0RGV2aWNlVG9vbCA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJ bnB1dERldmljZVRvb2wgKCk7CisrCQlwdWJsaWMgdWludDY0IGdldF9pZCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdWludDY0IGdldF9zZXJpYWwgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZp Y2VUb29sVHlwZSBnZXRfdG9vbF90eXBlICgpOworKwkJcHVibGljIHVpbnQ2NCBpZCB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHNlcmlhbCB7IGdldDsgY29uc3RydWN0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVG9v bFR5cGUgdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2Zv Y3VzX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dEZvY3VzIDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIElucHV0Rm9jdXMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBjb21taXRfdGV4dCAoc3RyaW5nIHRleHQpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9mZnNldCwg dWludCBsZW4pOworKwkJcHVibGljIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1dHRlci5LZXlF dmVudCBrZXkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNf aW4gKENsdXR0ZXIuSW5wdXRNZXRob2QgaW5wdXRfbWV0aG9kKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX291dCAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Zv Y3VzZWQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCByZXF1ZXN0 X3N1cnJvdW5kaW5nICgpOworKwkJcHVibGljIHZvaWQgcmVzZXQgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfY2FuX3Nob3dfcHJlZWRpdCAoYm9vbCBjYW5fc2hvd19wcmVlZGl0KTsKKysJCXB1Ymxp YyB2b2lkIHNldF9jb250ZW50X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBo aW50KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3B1cnBvc2UgKENsdXR0ZXIuSW5wdXRD b250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfbG9jYXRp b24gKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcGFuZWxf c3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRlKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9wcmVlZGl0X3RleHQgKHN0cmluZyBwcmVlZGl0LCB1 aW50IGN1cnNvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3Vycm91bmRpbmcgKHN0cmluZyB0ZXh0 LCB1aW50IGN1cnNvciwgdWludCBhbmNob3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9tZXRo b2RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0TWV0aG9kIDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIElucHV0TWV0aG9kICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1dHRlci5FdmVudCBrZXkpOworKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRlci5JbnB1dEZvY3VzIGFjdG9yKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfb3V0ICgpOworKwkJcHVibGljIHZvaWQgZm9y d2FyZF9rZXkgKHVpbnQzMiBrZXl2YWwsIHVpbnQzMiBrZXljb2RlLCB1aW50MzIgc3RhdGUsIHVp bnQ2NCB0aW1lXywgYm9vbCBwcmVzcyk7CisrCQlwdWJsaWMgdm9pZCBub3RpZnlfa2V5X2V2ZW50 IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGZpbHRlcmVkKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlc2V0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAoR3JhcGhlbmUuUmVjdCByZWN0KTsK KysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1dHRlci5JbnB1dFBhbmVs U3RhdGUgc3RhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfdGV4dCAoc3RyaW5nPyBw cmVlZGl0LCB1aW50IGN1cnNvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBzZXRfc3Vycm91bmRpbmcgKHN0cmluZyB0ZXh0LCB1aW50IGN1cnNvciwgdWludCBhbmNo b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2NvbnRl bnRfaGludHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnQpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2NvbnRlbnRfcHVycG9zZSAoQ2x1 dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgYm9vbCBjYW5fc2hvd19wcmVlZGl0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGNv bnRlbnRfaGludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGNvbnRlbnRfcHVycG9zZSB7IGdldDsgc2V0 OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjb21taXQgKHN0cmlu ZyB0ZXh0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfbG9jYXRpb25fY2hhbmdlZCAo R3JhcGhlbmUuUmVjdCBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9mZnNldCwgdWludCBsZW4pOworKwkJcHVi bGljIHNpZ25hbCB2b2lkIGlucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0 ZSBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVxdWVz dF9zdXJyb3VuZGluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW50ZXJ2YWxfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgSW50ZXJ2YWwg OiBHTGliLkluaXRpYWxseVVub3duZWQsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgSW50ZXJ2YWwgKEdM aWIuVHlwZSBndHlwZSwgLi4uKTsKKysJCXB1YmxpYyBDbHV0dGVyLkludGVydmFsIGNsb25lICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgR0xpYi5W YWx1ZT8gY29tcHV0ZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGNv bXB1dGVfdmFsdWUgKGRvdWJsZSBmYWN0b3IsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1 YmxpYyBHTGliLlZhbHVlIGdldF9maW5hbF92YWx1ZSAoKTsKKysJCXB1YmxpYyBHTGliLlZhbHVl IGdldF9pbml0aWFsX3ZhbHVlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ludGVydmFsICguLi4p OworKwkJcHVibGljIEdMaWIuVHlwZSBnZXRfdmFsdWVfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192YWxpZCAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdMaWIuVmFsdWU/IHBlZWtfZmluYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBHTGliLlZhbHVlPyBwZWVrX2luaXRpYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZv aWQgcmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyAoR0xpYi5UeXBlIHZhbHVlX3R5cGUsIENsdXR0ZXIu UHJvZ3Jlc3NGdW5jIGZ1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9maW5hbCAoLi4uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9maW5hbF92YWx1 ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2luaXRpYWwgKC4uLik7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5pdGlh bF92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50ZXJ2YWwg KC4uLik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIHZhbGlkYXRlIChHTGliLlBhcmFtU3BlYyBw c3BlYyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw dWJsaWMgSW50ZXJ2YWwud2l0aF92YWx1ZXMgKEdMaWIuVHlwZSBndHlwZSwgR0xpYi5WYWx1ZT8g aW5pdGlhbCwgR0xpYi5WYWx1ZT8gZmluYWwpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUgZmluYWwgeyBv d25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUgaW5pdGlhbCB7IG93bmVkIGdldDsg c2V0OyB9CisrCQlwdWJsaWMgR0xpYi5UeXBlIHZhbHVlX3R5cGUgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgS2V5RXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIu RXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1aW50MTYgaGFyZHdhcmVfa2V5Y29kZTsKKysJ CXB1YmxpYyB1aW50IGtleXZhbDsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2Rp Zmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIHVuaWNoYXIgdW5pY29k ZV92YWx1ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5ZnJhbWVfdHJhbnNpdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgS2V5ZnJh bWVUcmFuc2l0aW9uIDogQ2x1dHRlci5Qcm9wZXJ0eVRyYW5zaXRpb24sIENsdXR0ZXIuU2NyaXB0 YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1YmxpYyBLZXlmcmFtZVRyYW5zaXRpb24gKHN0 cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFyICgpOworKwkJcHVibGlj IHZvaWQgZ2V0X2tleV9mcmFtZSAodWludCBpbmRleF8sIG91dCBkb3VibGUga2V5LCBvdXQgQ2x1 dHRlci5BbmltYXRpb25Nb2RlIG1vZGUsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1Ymxp YyB1aW50IGdldF9uX2tleV9mcmFtZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X2ZyYW1l ICh1aW50IGluZGV4XywgZG91YmxlIGtleSwgQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUsIEdM aWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2tleV9mcmFtZXMgKFtDQ29kZSAo YXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fa2V5X2ZyYW1lcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAw LjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIGRvdWJsZVtdIGtleV9mcmFtZXMpOwor KwkJcHVibGljIHZvaWQgc2V0X21vZGVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJu X21vZGVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3Vp bnQiKV0gQ2x1dHRlci5BbmltYXRpb25Nb2RlW10gbW9kZXMpOworKwkJcHVibGljIHZvaWQgc2V0 X3ZhbHVlcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92YWx1ZXMiLCBhcnJheV9s ZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHTGliLlZhbHVl W10gdmFsdWVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5bWFwX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBhYnN0cmFjdCBjbGFzcyBLZXltYXAgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgS2V5bWFwICgpOwor KwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRfY2Fwc19sb2NrX3N0YXRlICgpOworKwkJcHVibGlj IHZpcnR1YWwgUGFuZ28uRGlyZWN0aW9uIGdldF9kaXJlY3Rpb24gKCk7CisrCQlwdWJsaWMgdmly dHVhbCBib29sIGdldF9udW1fbG9ja19zdGF0ZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBz dGF0ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXllcl9ub2RlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBMYXllck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFp bnROb2RlKiIpXQorKwkJcHVibGljIExheWVyTm9kZSAoQ29nbC5NYXRyaXggcHJvamVjdGlvbiwg Q2Fpcm8uUmVjdGFuZ2xlIHZpZXdwb3J0LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0LCB1aW50 OCBvcGFjaXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5b3V0X21hbmFnZXJfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3Mg TGF5b3V0TWFuYWdlciA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTGF5b3V0TWFuYWdlciAo KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQ29udGFpbmVyIGNv bnRhaW5lciwgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uLCBDbHV0dGVyLkFsbG9jYXRpb25G bGFncyBmbGFncyk7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXQgKENsdXR0ZXIuQ29udGFpbmVy IGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2b2lkIGNo aWxkX2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFj dG9yIGFjdG9yLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlw dWJsaWMgdm9pZCBjaGlsZF9zZXQgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRl ci5BY3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldF9wcm9wZXJ0eSAo Q2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yLCBzdHJpbmcg cHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLkxheW91dE1ldGEgY3JlYXRlX2NoaWxkX21ldGEg KENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBlbmRfYW5pbWF0aW9uICgpOworKwkJ cHVibGljIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3RyaW5n IG5hbWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGRvdWJsZSBnZXRfYW5p bWF0aW9uX3Byb2dyZXNzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNZXRhIGdldF9jaGlsZF9tZXRhIChDbHV0dGVyLkNv bnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRfY2hpbGRfbWV0YV90eXBlICgpOworKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hlaWdodCAoQ2x1dHRlci5Db250YWlu ZXIgY29udGFpbmVyLCBmbG9hdCBmb3Jfd2lkdGgsIG91dCBmbG9hdCBtaW5faGVpZ2h0X3AsIG91 dCBmbG9hdCBuYXRfaGVpZ2h0X3ApOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVy cmVkX3dpZHRoIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIGZsb2F0IGZvcl9oZWlnaHQs IG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0IG5hdF93aWR0aF9wKTsKKysJCVtDQ29k ZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDAuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0K KysJCXB1YmxpYyBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2NvbnRhaW5lciAoQ2x1dHRlci5Db250YWluZXI/IGNv bnRhaW5lcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGxheW91dF9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXlvdXRfbWV0YV9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBhYnN0cmFjdCBj bGFzcyBMYXlvdXRNZXRhIDogQ2x1dHRlci5DaGlsZE1ldGEgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExheW91dE1ldGEgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFnZXIgZ2V0X21hbmFnZXIgKCk7Cisr CQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVk X2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfbWFyZ2luX2dldF90eXBlICgpIildCisrCVtDb21w YWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgTWFyZ2lu IHsKKysJCXB1YmxpYyBmbG9hdCBib3R0b207CisrCQlwdWJsaWMgZmxvYXQgbGVmdDsKKysJCXB1 YmxpYyBmbG9hdCByaWdodDsKKysJCXB1YmxpYyBmbG9hdCB0b3A7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgTWFyZ2luICgpOworKwkJcHVi bGljIENsdXR0ZXIuTWFyZ2luIGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgY2xhc3MgTW90aW9uRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1Ymxp YyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNl OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVy Lk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0 b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1Ymxp YyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVi bGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfb2Zmc2Ny ZWVuX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBPZmZzY3JlZW5FZmZlY3QgOiBDbHV0dGVyLkVmZmVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgT2Zmc2NyZWVuRWZmZWN0ICgpOworKwkJcHVibGljIHZpcnR1YWwgQ29nbC5IYW5kbGUgY3Jl YXRlX3RleHR1cmUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBib29sIGdldF90YXJnZXRfcmVjdCAob3V0IHVub3du ZWQgR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9v bCBnZXRfdGFyZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5k bGUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50X3RhcmdldCAo Q2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bh Z2VfdHVybl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgY2xhc3MgUGFnZVR1cm5FZmZlY3QgOiBDbHV0dGVyLkRlZm9ybUVmZmVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIFBhZ2VUdXJuRWZmZWN0IChkb3VibGUgcGVyaW9kLCBk b3VibGUgYW5nbGUsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hbmdsZSAo KTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X3BlcmlvZCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRf cmFkaXVzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FuZ2xlIChkb3VibGUgYW5nbGUpOworKwkJ cHVibGljIHZvaWQgc2V0X3BlcmlvZCAoZG91YmxlIHBlcmlvZCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcmFkaXVzIChmbG9hdCByYWRpdXMpOworKwkJcHVibGljIGRvdWJsZSBhbmdsZSB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgZG91YmxlIHBlcmlvZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg ZmxvYXQgcmFkaXVzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9wYWludF9j b250ZXh0X3JlZiIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9jb250ZXh0X2dldF90eXBlICgp IiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9wYWludF9jb250ZXh0X3VucmVmIildCisrCVtD b21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGFpbnRDb250ZXh0IHsKKysJCXB1YmxpYyB2b2lkIGRl c3Ryb3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9mcmFtZWJ1 ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHBvcF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2 b2lkIHB1c2hfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIpOworKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludENvbnRleHQgQHJlZiAoKTsKKysJCXB1YmxpYyB2 b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9ub2RlX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBQ YWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIFBhaW50Tm9kZSAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jaGlsZCAoQ2x1 dHRlci5QYWludE5vZGUgY2hpbGQpOworKwkJcHVibGljIHZvaWQgYWRkX211bHRpdGV4dHVyZV9y ZWN0YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgdGV4dF9jb29yZHMsIHVpbnQg dGV4dF9jb29yZHNfbGVuKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWN0YW5nbGUgKENsdXR0ZXIu QWN0b3JCb3ggcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfdGV4dHVyZV9yZWN0YW5nbGUgKENs dXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxv YXQgeV8yKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2ZyYW1lYnVm ZmVyICgpOworKwkJcHVibGljIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50 X2NvbnRleHQpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludE5vZGUgQHJlZiAoKTsK KysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgdm9pZCB1 bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAi Z19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhaW50X3ZvbHVtZV9nZXRfdHlwZSAo KSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMg Y2xhc3MgUGFpbnRWb2x1bWUgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIENsdXR0ZXIuUGFpbnRWb2x1bWUgY29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjYiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3JpZ2luIChvdXQgdW5vd25lZCBHcmFw aGVuZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBzZXRfZnJvbV9hbGxvY2F0aW9uIChDbHV0dGVy LkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9oZWlnaHQgKGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChHcmFwaGVuZS5Qb2ludDNEIG9yaWdpbik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfd2lkdGgg KGZsb2F0IHdpZHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2 b2lkIHVuaW9uIChDbHV0dGVyLlBhaW50Vm9sdW1lIGFub3RoZXJfcHYpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuaW9uX2JveCAoQ2x1dHRlci5BY3Rv ckJveCBib3gpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYW5fYWN0aW9uX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBQYW5BY3Rpb24gOiBD bHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBQYW5BY3Rpb24g KCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hY2NlbGVyYXRpb25fZmFjdG9yICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfY29uc3RyYWluZWRf bW90aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRl bHRhX3kpOworKwkJcHVibGljIGRvdWJsZSBnZXRfZGVjZWxlcmF0aW9uICgpOworKwkJcHVibGlj IGJvb2wgZ2V0X2ludGVycG9sYXRlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ludGVycG9sYXRl ZF9jb29yZHMgKG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeCwgb3V0IGZsb2F0IGludGVycG9sYXRl ZF95KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaW50ZXJwb2xhdGVkX2RlbHRhIChvdXQgZmxvYXQg ZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRzICh1aW50IHBvaW50LCBvdXQgZmxv YXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9pbnQsIG91 dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlwdWJsaWMgQ2x1dHRlci5Q YW5BeGlzIGdldF9wYW5fYXhpcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hY2NlbGVyYXRpb25f ZmFjdG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kZWNlbGVyYXRpb24g KGRvdWJsZSByYXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnBvbGF0ZSAoYm9vbCBzaG91 bGRfaW50ZXJwb2xhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3Bhbl9heGlzIChDbHV0dGVyLlBh bkF4aXMgYXhpcyk7CisrCQlwdWJsaWMgZG91YmxlIGFjY2VsZXJhdGlvbl9mYWN0b3IgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGRvdWJsZSBkZWNlbGVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIGJvb2wgaW50ZXJwb2xhdGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIu UGFuQXhpcyBwYW5fYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg Ym9vbCBwYW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgaXNfaW50ZXJwb2xhdGVkKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhbl9zdG9wcGVkIChDbHV0dGVyLkFjdG9yIGFj dG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicGFyYW1fdW5pdHMiLCB0eXBlX2lkID0gImNsdXR0 ZXJfcGFyYW1fdW5pdHNfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFBhcmFtU3BlY1Vu aXQgOiBHTGliLlBhcmFtU3BlYyB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGFyYW1TcGVjVW5pdCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfcGF0aF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBjbGFzcyBQYXRoIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQYXRoICgpOworKwkJcHVi bGljIHZvaWQgYWRkX2NhaXJvX3BhdGggKENhaXJvLlBhdGggY3BhdGgpOworKwkJcHVibGljIHZv aWQgYWRkX2Nsb3NlICgpOworKwkJcHVibGljIHZvaWQgYWRkX2N1cnZlX3RvIChpbnQgeF8xLCBp bnQgeV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQgeF8zLCBpbnQgeV8zKTsKKysJCXB1YmxpYyB2 b2lkIGFkZF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZvaWQgYWRkX21vdmVf dG8gKGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbm9kZSAoQ2x1dHRlci5QYXRo Tm9kZSBub2RlKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfY3VydmVfdG8gKGludCB4XzEsIGlu dCB5XzEsIGludCB4XzIsIGludCB5XzIsIGludCB4XzMsIGludCB5XzMpOworKwkJcHVibGljIHZv aWQgYWRkX3JlbF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZvaWQgYWRkX3Jl bF9tb3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIGJvb2wgYWRkX3N0cmluZyAoc3Ry aW5nIHN0cik7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJCXB1YmxpYyB2b2lkIEBmb3Jl YWNoIChDbHV0dGVyLlBhdGhDYWxsYmFjayBjYWxsYmFjayk7CisrCQlwdWJsaWMgc3RyaW5nIGdl dF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9sZW5ndGggKCk7CisrCQlwdWJs aWMgdWludCBnZXRfbl9ub2RlcyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2RlIGdldF9u b2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIENsdXR0ZXIuUGF0 aE5vZGU/PiBnZXRfbm9kZXMgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfcG9zaXRpb24gKGRvdWJs ZSBwcm9ncmVzcywgb3V0IENsdXR0ZXIuS25vdCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBp bnNlcnRfbm9kZSAoaW50IGluZGV4XywgQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJCXB1Ymxp YyB2b2lkIHJlbW92ZV9ub2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgdm9pZCByZXBsYWNl X25vZGUgKHVpbnQgaW5kZXhfLCBDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwkJcHVibGljIGJv b2wgc2V0X2Rlc2NyaXB0aW9uIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyB2b2lkIHRvX2NhaXJv X3BhdGggKENhaXJvLkNvbnRleHQgY3IpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFBhdGgud2l0aF9kZXNjcmlwdGlvbiAoc3RyaW5nIGRl c2MpOworKwkJcHVibGljIHN0cmluZyBkZXNjcmlwdGlvbiB7IG93bmVkIGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9jb25z dHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVi bGljIGNsYXNzIFBhdGhDb25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJh aW50KiIpXQorKwkJcHVibGljIFBhdGhDb25zdHJhaW50IChDbHV0dGVyLlBhdGg/IHBhdGgsIGZs b2F0IG9mZnNldCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X29mZnNldCAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuUGF0aCBnZXRfcGF0aCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vZmZz ZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGF0aCAoQ2x1dHRlci5QYXRo PyBwYXRoKTsKKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuUGF0aCBwYXRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBu b2RlX3JlYWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIHVpbnQgaW5kZXgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHJlZl9mdW5jdGlv biA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF9yZWYiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGlja19j b250ZXh0X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9waWNrX2NvbnRl eHRfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaWNrQ29udGV4dCB7Cisr CQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QaWNr Q29udGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3BpcGVsaW5lX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGNsYXNzIFBpcGVsaW5lTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBQaXBlbGluZU5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Byb3BlcnR5X3RyYW5zaXRpb25f Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNs YXNzIFByb3BlcnR5VHJhbnNpdGlvbiA6IENsdXR0ZXIuVHJhbnNpdGlvbiwgQ2x1dHRlci5TY3Jp cHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGljIFByb3BlcnR5VHJhbnNpdGlvbiAo c3RyaW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfcHJv cGVydHlfbmFtZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wcm9wZXJ0eV9uYW1lIChzdHJpbmc/ IHByb3BlcnR5X25hbWUpOworKwkJcHVibGljIHN0cmluZyBwcm9wZXJ0eV9uYW1lIHsgZ2V0OyBz ZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVjdGFuZ2xlX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFJlY3RhbmdsZSA6IENsdXR0ZXIu QWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRh aW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgUmVj dGFuZ2xlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdl dF9ib3JkZXJfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHVpbnQgZ2V0 X2JvcmRlcl93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3Ig KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRlcl9jb2xvciAoQ2x1dHRlci5Db2xvciBj b2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRlcl93aWR0 aCAodWludCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNv bG9yIGNvbG9yKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgUmVjdGFuZ2xlLndpdGhfY29s b3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgYm9yZGVy X2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGJvcmRlcl93aWR0aCB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhhc19ib3JkZXIgeyBnZXQ7IHNldDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9yb290X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFJvb3ROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1 YmxpYyBSb290Tm9kZSAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgQ2x1dHRlci5Db2xv ciBjbGVhcl9jb2xvciwgQ29nbC5CdWZmZXJCaXQgY2xlYXJfZmxhZ3MpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9yb3RhdGVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCXB1YmxpYyBjbGFzcyBSb3RhdGVBY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rp b24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBSb3RhdGVBY3Rpb24gKCk7CisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgYm9vbCByb3RhdGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGRvdWJsZSBh bmdsZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjcmlwdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBjbGFzcyBTY3JpcHQgOiBHTGliLk9iamVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMg U2NyaXB0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQg YWRkX3NlYXJjaF9wYXRocyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wYXRocyIs IGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIildIHN0 cmluZ1tdIHBhdGhzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfc3Rh dGVzIChzdHJpbmc/IG5hbWUsIENsdXR0ZXIuU3RhdGUgc3RhdGUpOworKwkJcHVibGljIHZvaWQg Y29ubmVjdF9zaWduYWxzICh2b2lkKiB1c2VyX2RhdGEpOworKwkJcHVibGljIHZvaWQgY29ubmVj dF9zaWduYWxzX2Z1bGwgKENsdXR0ZXIuU2NyaXB0Q29ubmVjdEZ1bmMgZnVuYyk7CisrCQlwdWJs aWMgdm9pZCBlbnN1cmVfb2JqZWN0cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuT2JqZWN0 IGdldF9vYmplY3QgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyBpbnQgZ2V0X29iamVjdHMgKC4u Lik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGF0ZSBn ZXRfc3RhdGVzIChzdHJpbmc/IG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdHJhbnNsYXRpb25fZG9tYWluICgpOworKwkJ cHVibGljIHZpcnR1YWwgR0xpYi5UeXBlIGdldF90eXBlX2Zyb21fbmFtZSAoc3RyaW5nIHR5cGVf bmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgR0xpYi5MaXN0 PHdlYWsgR0xpYi5PYmplY3Q+IGxpc3Rfb2JqZWN0cyAoKTsKKysJCXB1YmxpYyB1aW50IGxvYWRf ZnJvbV9kYXRhIChzdHJpbmcgZGF0YSwgc3NpemVfdCBsZW5ndGgpIHRocm93cyBHTGliLkVycm9y OworKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dz IEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVp bnQgbG9hZF9mcm9tX3Jlc291cmNlIChzdHJpbmcgcmVzb3VyY2VfcGF0aCkgdGhyb3dzIEdMaWIu RXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RyaW5nIGxv b2t1cF9maWxlbmFtZSAoc3RyaW5nIGZpbGVuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRpb25fZG9tYWluIChzdHJpbmc/IGRv bWFpbik7CisrCQlwdWJsaWMgdm9pZCB1bm1lcmdlX29iamVjdHMgKHVpbnQgbWVyZ2VfaWQpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZpbGVuYW1lIHsgb3duZWQg Z2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGZpbGVuYW1lX3Nl dCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdHJp bmcgdHJhbnNsYXRpb25fZG9tYWluIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Ny b2xsX2FjdG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CXB1YmxpYyBjbGFzcyBTY3JvbGxBY3RvciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRv ciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRh YmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBTY3JvbGxBY3RvciAoKTsKKysJCXB1YmxpYyBD bHV0dGVyLlNjcm9sbE1vZGUgZ2V0X3Njcm9sbF9tb2RlICgpOworKwkJcHVibGljIHZvaWQgc2Ny b2xsX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlwdWJsaWMgdm9pZCBzY3Jv bGxfdG9fcmVjdCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zY3Jv bGxfbW9kZSAoQ2x1dHRlci5TY3JvbGxNb2RlIG1vZGUpOworKwkJcHVibGljIENsdXR0ZXIuU2Ny b2xsTW9kZSBzY3JvbGxfbW9kZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBT Y3JvbGxFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRl ci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRmlu aXNoRmxhZ3MgZmluaXNoX2ZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFn czsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1 YmxpYyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdl OworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5 cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zZWF0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBTZWF0IDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFNlYXQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBhcHBseV9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mg c2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBiZWxsX25vdGlmeSAoKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgY29tcHJlc3NfbW90aW9uIChDbHV0dGVyLkV2ZW50IGV2ZW50LCBD bHV0dGVyLkV2ZW50IHRvX2Rpc2NhcmQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgY29weV9ldmVudF9kYXRhIChDbHV0dGVyLkV2ZW50IHNyYywgQ2x1dHRlci5FdmVu dCBkZXN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVhbElucHV0RGV2aWNlIGNy ZWF0ZV92aXJ0dWFsX2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNlX3R5cGUp OworKwkJcHVibGljIHZvaWQgZW5zdXJlX2ExMXlfc3RhdGUgKCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCBmcmVlX2V2ZW50X2RhdGEgKENsdXR0ZXIuRXZlbnQgZXZl bnQpOworKwkJcHVibGljIHZvaWQgZ2V0X2tiZF9hMTF5X3NldHRpbmdzIChDbHV0dGVyLktiZEEx MXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIu SW5wdXREZXZpY2UgZ2V0X2tleWJvYXJkICgpOworKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBD bHV0dGVyLktleW1hcCBnZXRfa2V5bWFwICgpOworKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBD bHV0dGVyLklucHV0RGV2aWNlIGdldF9wb2ludGVyICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3Bv aW50ZXJfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5Qb2ludGVyQTExeVNldHRpbmdzIHNldHRpbmdz KTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVhbERldmljZVR5cGUgZ2V0X3N1cHBv cnRlZF92aXJ0dWFsX2RldmljZV90eXBlcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuTGlz dDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGxpc3RfZGV2aWNlcyAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mgc2V0dGlu Z3MpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTExeV9kd2VsbF9jbGlja190eXBlIChD bHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xpY2tfdHlwZSk7CisrCQlwdWJsaWMg dm9pZCBzZXRfcG9pbnRlcl9hMTF5X3NldHRpbmdzIChDbHV0dGVyLlBvaW50ZXJBMTF5U2V0dGlu Z3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCB3YXJwX3BvaW50ZXIgKGludCB4 LCBpbnQgeSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLkJhY2tl bmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgZGV2aWNlX2FkZGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgZGV2aWNlX3JlbW92ZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0KTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9mbGFnc19jaGFuZ2VkICh1aW50IHNldHRp bmdzX2ZsYWdzLCB1aW50IGNoYW5nZWRfbWFzayk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2Jk X2ExMXlfbW9kc19zdGF0ZV9jaGFuZ2VkICh1aW50IGxhdGNoZWRfbWFzaywgdWludCBsb2NrZWRf bWFzayk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfZHdlbGxfY2xpY2tfdHlwZV9j aGFuZ2VkIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xpY2tfdHlwZSk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfdGltZW91dF9zdGFydGVkIChDbHV0dGVyLklu cHV0RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2ludGVyQTExeVRpbWVvdXRUeXBlIHRpbWVvdXRf dHlwZSwgdWludCBkZWxheSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfdGltZW91 dF9zdG9wcGVkIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2ludGVyQTEx eVRpbWVvdXRUeXBlIHRpbWVvdXRfdHlwZSwgYm9vbCBjbGlja2VkKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCB0b29sX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0LCBDbHV0dGVy LklucHV0RGV2aWNlVG9vbCBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NldHRpbmdzX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFNldHRp bmdzIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNldHRpbmdzICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuU2V0dGluZ3MgZ2V0X2RlZmF1bHQgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5CYWNrZW5kIGJhY2tlbmQg eyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIGludCBkbmRfZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGRvdWJsZV9jbGlja19kaXN0 YW5jZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQg ZG91YmxlX2NsaWNrX3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgaW50IGZvbnRfYW50aWFsaWFzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2RwaSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9oaW50X3N0eWxlIHsgb3duZWQgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2hpbnRp bmcgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5n IGZvbnRfbmFtZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBzdHJpbmcgZm9udF9zdWJwaXhlbF9vcmRlciB7IG93bmVkIGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IGZvbnRjb25maWdfdGltZXN0YW1w IHsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc19kdXJhdGlvbiB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHBhc3N3b3JkX2hpbnRfdGltZSB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgdW5zY2Fs ZWRfZm9udF9kcGkgeyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisr CXB1YmxpYyBjbGFzcyBTaGFkZXIgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfZWZmZWN0X2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNz IFNoYWRlckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgU2hhZGVyRWZmZWN0IChDbHV0 dGVyLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5k bGUgZ2V0X3Byb2dyYW0gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfc2hh ZGVyICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHN0cmluZyBnZXRfc3Rh dGljX3NoYWRlcl9zb3VyY2UgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfc2hhZGVyX3NvdXJjZSAo c3RyaW5nIHNvdXJjZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV92YWx1ZSAoc3RyaW5n IG5hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgQ2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlIHsgY29uc3RydWN0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3NoYWRlcl9mbG9hdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hh ZGVyRmxvYXQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIFNoYWRlckZsb2F0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfaW50 X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJJbnQgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNoYWRlckludCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX21hdHJpeF9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgU2hhZGVyTWF0cml4IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJNYXRyaXggKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3NuYXBfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCXB1YmxpYyBjbGFzcyBTbmFwQ29uc3RyYWludCA6IENsdXR0ZXIuQ29uc3RyYWlu dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBTbmFwQ29uc3RyYWludCAoQ2x1dHRlci5B Y3Rvcj8gc291cmNlLCBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwgQ2x1dHRlci5TbmFwRWRn ZSB0b19lZGdlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgZ2V0X2VkZ2VzIChvdXQg Q2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIG91dCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2Up OworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWRnZXMgKENsdXR0 ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UpOworKwkJcHVi bGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9z b3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsg fQorKwkJcHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVi bGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UgeyBnZXQ7 IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2VfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0 dGVyLkdyb3VwLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5D b250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgU3RhZ2UgKCk7CisrCQlwdWJsaWMgYm9vbCBjYXB0 dXJlIChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgQ2x1dHRlci5DYXB0dXJl IGNhcHR1cmVzLCBpbnQgbl9jYXB0dXJlcyk7CisrCQlwdWJsaWMgdm9pZCBjYXB0dXJlX2ludG8g KGJvb2wgcGFpbnQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1aW50OCBkYXRhKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9zdGFnZV9ldmVudCIpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNCIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVu dCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHZvaWQgZW5zdXJlX2N1cnJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3ZpZXdwb3J0ICgpOworKwkJcHVibGlj IHZvaWQgZnJlZXplX3VwZGF0ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgYm9vbCBnZXRfYWNjZXB0X2ZvY3VzICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5BY3RvciBnZXRfYWN0b3JfYXRfcG9zIChDbHV0dGVyLlBpY2tNb2RlIHBpY2tfbW9kZSwg ZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY2FwdHVyZV9maW5hbF9zaXpl IChDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBmbG9hdCBz Y2FsZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9kZWZhdWx0ICgpOworKwkJ cHVibGljIGludDY0IGdldF9mcmFtZV9jb3VudGVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfa2V5X2ZvY3VzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X21pbmlt dW1fc2l6ZSAob3V0IHVpbnQgd2lkdGgsIG91dCB1aW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfbW90aW9uX2V2ZW50c19lbmFibGVk ICgpOworKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgZ2V0X3BlcnNwZWN0aXZlICgpOwor KwkJcHVibGljIENhaXJvLlJlZ2lvbiBnZXRfcmVkcmF3X2NsaXAgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdGhyb3R0bGVfbW90aW9uX2V2ZW50 cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfdGl0bGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgYm9vbCBnZXRfdXNlX2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQor KwkJcHVibGljIHZvaWQgaGlkZV9jdXJzb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIGJvb2wgaXNfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBxdWV1ZV9yZWRyYXcgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJ CXB1YmxpYyB1aW50OFtdIHJlYWRfcGl4ZWxzIChpbnQgeCwgaW50IHksIGludCB3aWR0aCA9IC0x LCBpbnQgaGVpZ2h0ID0gLTEpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3JlZHJhdyIp XQorKwkJcHVibGljIHZvaWQgcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X2FjY2VwdF9mb2N1cyAoYm9vbCBhY2NlcHRfZm9jdXMpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X2ZvY3VzIChD bHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBzZXRfbWluaW11bV9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW90aW9uX2V2 ZW50c19lbmFibGVkIChib29sIGVuYWJsZWQpOworKwkJcHVibGljIHZvaWQgc2V0X3BlcnNwZWN0 aXZlIChDbHV0dGVyLlBlcnNwZWN0aXZlIHBlcnNwZWN0aXZlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJvdHRsZV9tb3Rpb25fZXZlbnRzIChi b29sIHRocm90dGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VfYWxwaGEgKGJvb2wgdXNlX2FscGhhKTsKKysJCXB1 YmxpYyB2b2lkIHNob3dfY3Vyc29yICgpOworKwkJcHVibGljIHZvaWQgdGhhd191cGRhdGVzICgp OworKwkJcHVibGljIHZvaWQgdXBkYXRlX3Jlc291cmNlX3NjYWxlcyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGFjY2VwdF9mb2N1cyB7IGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjdXJzb3JfdmlzaWJsZSB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5B Y3RvciBrZXlfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgcGVyc3BlY3RpdmUgeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHN0cmluZyB0aXRsZSB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9v bCB1c2VfYWxwaGEgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFmdGVyX3BhaW50ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgZGVhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCBib29sIGRlbGV0ZV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7 CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWludF92aWV3IChDbHV0dGVyLlN0YWdl VmlldyB2aWV3KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2VfbWFuYWdlcl9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZU1hbmFn ZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VNYW5hZ2VyICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2VNYW5hZ2Vy IGdldF9kZWZhdWx0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfZGVmYXVsdF9zdGFnZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgQ2x1dHRlci5TdGFn ZT4gbGlzdF9zdGFnZXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlNMaXN0PENsdXR0ZXIu U3RhZ2U+IHBlZWtfc3RhZ2VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIENsdXR0ZXIuU3RhZ2UgZGVmYXVsdF9zdGFnZSB7IGdldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhZ2VfYWRk ZWQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhZ2VfcmVtb3ZlZCAoQ2x1dHRlci5TdGFn ZSBzdGFnZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZVN0YXRlRXZlbnQgOiBDbHV0dGVy LkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGUgY2hhbmdlZF9tYXNrOworKwkJ cHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdl U3RhdGUgbmV3X3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1l OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0 YWdlX3ZpZXdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlVmlldyA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBTdGFnZVZpZXcgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVm ZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9sYXlvdXQgKENhaXJv LlJlY3RhbmdsZUludCByZWN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X29mZnNjcmVl bl90cmFuc2Zvcm1hdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlwdWJsaWMg dW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9vbnNjcmVlbiAoKTsKKysJCXB1YmxpYyBmbG9h dCBnZXRfc2NhbGUgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnZhbGlkYXRlX29mZnNjcmVlbl9ibGl0 X3BpcGVsaW5lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0 dXBfb2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUpOworKwkJ cHVibGljIHZvaWQgdHJhbnNmb3JtX3RvX29uc2NyZWVuIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENhaXJvLlJlY3RhbmdsZUludCBsYXlvdXQg eyBvd25lZCBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGZsb2F0IHNjYWxlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ cHVibGljIGNsYXNzIFN0YXRlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIFN0YXRlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1 aW50IGdldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5nPyB0YXJn ZXRfc3RhdGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0 PHdlYWsgc3RyaW5nPiBnZXRfc3RhdGVzICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5nPyB0 YXJnZXRfc3RhdGVfbmFtZSwgdWludCBkdXJhdGlvbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5TdGF0ZSBzZXRfa2V5IChzdHJpbmc/IHNvdXJjZV9zdGF0 ZV9uYW1lLCBzdHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUsIEdMaWIuT2JqZWN0IG9iamVjdCwgc3Ry aW5nIHByb3BlcnR5X25hbWUsIHVpbnQgbW9kZSwgR0xpYi5WYWx1ZSB2YWx1ZSwgZG91YmxlIHBy ZV9kZWxheSwgZG91YmxlIHBvc3RfZGVsYXkpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgc2V0X3N0YXRlIChzdHJpbmcgdGFyZ2V0X3N0YXRl X25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGlt ZWxpbmUgd2FycF90b19zdGF0ZSAoc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1aW50IGR1cmF0aW9u IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBzdHJpbmcgc3RhdGUgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1 bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRlX2tleV9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU3RhdGVLZXkgewor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLlR5cGUgZ2V0X3Byb3BlcnR5X3R5cGUg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFzcyBTd2lwZUFjdGlvbiA6IENsdXR0 ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFN3aXBlQWN0aW9uICgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTQiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN3ZXB0 IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlN3aXBlRGlyZWN0aW9uIGRpcmVjdGlvbik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IGJvb2wgc3dpcGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuU3dpcGVEaXJlY3Rpb24g ZGlyZWN0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGFwX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgY2xhc3MgVGFwQWN0aW9uIDog Q2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgVGFwQWN0aW9u ICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGFwIChDbHV0dGVyLkFjdG9yIGFj dG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBUZXh0IDogQ2x1dHRlci5BY3RvciwgQXRr LkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0 dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRleHQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBjb29yZHNfdG9fcG9zaXRpb24g KGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHZvaWQgZGVsZXRlX2NoYXJzICh1aW50IG5f Y2hhcnMpOworKwkJcHVibGljIGJvb2wgZGVsZXRlX3NlbGVjdGlvbiAoKTsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0K KysJCXB1YmxpYyBUZXh0LmZ1bGwgKHN0cmluZyBmb250X25hbWUsIHN0cmluZyB0ZXh0LCBDbHV0 dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyBib29sIGdldF9hY3RpdmF0YWJsZSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIFBhbmdvLkF0dHJMaXN0IGdldF9hdHRyaWJ1dGVzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGV4dEJ1 ZmZlciBnZXRfYnVmZmVyICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfY2hhcnMgKHNzaXplX3Qg c3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0 X2NvbG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2N1cnNvcl9jb2xvciAoKTsK KysJCXB1YmxpYyBpbnQgZ2V0X2N1cnNvcl9wb3NpdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY3Vyc29yX3JlY3QgKG91dCB1bm93bmVk IEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdWludCBnZXRfY3Vyc29yX3NpemUgKCk7 CisrCQlwdWJsaWMgYm9vbCBnZXRfY3Vyc29yX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfZWRpdGFibGUgKCk7CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBnZXRfZWxsaXBz aXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIFBhbmdvLkZv bnREZXNjcmlwdGlvbiBnZXRfZm9udF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfZm9udF9uYW1lICgpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50 SGludEZsYWdzIGdldF9pbnB1dF9oaW50cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29u dGVudFB1cnBvc2UgZ2V0X2lucHV0X3B1cnBvc2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfanVzdGlmeSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IFBhbmdvLkxheW91dCBnZXRfbGF5b3V0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIHZvaWQgZ2V0X2xheW91dF9vZmZzZXRzIChvdXQgaW50IHgsIG91dCBpbnQg eSk7CisrCQlwdWJsaWMgUGFuZ28uQWxpZ25tZW50IGdldF9saW5lX2FsaWdubWVudCAoKTsKKysJ CXB1YmxpYyBib29sIGdldF9saW5lX3dyYXAgKCk7CisrCQlwdWJsaWMgUGFuZ28uV3JhcE1vZGUg Z2V0X2xpbmVfd3JhcF9tb2RlICgpOworKwkJcHVibGljIGludCBnZXRfbWF4X2xlbmd0aCAoKTsK KysJCXB1YmxpYyB1bmljaGFyIGdldF9wYXNzd29yZF9jaGFyICgpOworKwkJcHVibGljIGJvb2wg Z2V0X3NlbGVjdGFibGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgQ2x1dHRlci5Db2xvciBnZXRfc2VsZWN0ZWRfdGV4dF9jb2xvciAoKTsKKysJCXB1YmxpYyBz dHJpbmcgZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3NlbGVjdGlvbl9ib3Vu ZCAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9zZWxlY3Rpb25fY29sb3IgKCk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfc2luZ2xlX2xpbmVfbW9kZSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfdGV4dCAoKTsKKysJCXB1YmxpYyBib29sIGdldF91c2VfbWFya3VwICgpOwor KwkJcHVibGljIGJvb2wgaGFzX3ByZWVkaXQgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfdGV4 dCAoc3RyaW5nIHRleHQsIHNzaXplX3QgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0 X3VuaWNoYXIgKHVuaWNoYXIgd2MpOworKwkJcHVibGljIGJvb2wgcG9zaXRpb25fdG9fY29vcmRz IChpbnQgcG9zaXRpb24sIG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSwgb3V0IGZsb2F0IGxpbmVf aGVpZ2h0ID0gbnVsbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWN0aXZhdGFibGUgKGJvb2wgYWN0 aXZhdGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2F0dHJpYnV0ZXMgKFBhbmdvLkF0dHJMaXN0 PyBhdHRycyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2J1ZmZlciAoQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlwdWJsaWMgdm9pZCBz ZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNv cl9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNv cl9wb3NpdGlvbiAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3Jfc2l6 ZSAoaW50IHNpemUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl92aXNpYmxlIChib29sIGN1 cnNvcl92aXNpYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lZGl0YWJsZSAoYm9vbCBlZGl0YWJs ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWxsaXBzaXplIChQYW5nby5FbGxpcHNpemVNb2RlIG1v ZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Zv bnRfZGVzY3JpcHRpb24gKFBhbmdvLkZvbnREZXNjcmlwdGlvbiBmb250X2Rlc2MpOworKwkJcHVi bGljIHZvaWQgc2V0X2ZvbnRfbmFtZSAoc3RyaW5nPyBmb250X25hbWUpOworKwkJcHVibGljIHZv aWQgc2V0X2lucHV0X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBoaW50cyk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQ dXJwb3NlIHB1cnBvc2UpOworKwkJcHVibGljIHZvaWQgc2V0X2p1c3RpZnkgKGJvb2wganVzdGlm eSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGluZV9hbGlnbm1lbnQgKFBhbmdvLkFsaWdubWVudCBh bGlnbm1lbnQpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcCAoYm9vbCBsaW5lX3dyYXAp OworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcF9tb2RlIChQYW5nby5XcmFwTW9kZSB3cmFw X21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X21hcmt1cCAoc3RyaW5nPyBtYXJrdXApOworKwkJ cHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXgpOworKwkJcHVibGljIHZvaWQgc2V0 X3Bhc3N3b3JkX2NoYXIgKHVuaWNoYXIgd2MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfc3RyaW5nIChzdHJpbmc/IHByZWVkaXRfc3Ry LCBQYW5nby5BdHRyTGlzdD8gcHJlZWRpdF9hdHRycywgdWludCBjdXJzb3JfcG9zKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9zZWxlY3RhYmxlIChib29sIHNlbGVjdGFibGUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGVkX3RleHRfY29sb3Ig KENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb24gKHNz aXplX3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVibGljIHZvaWQgc2V0X3Nl bGVjdGlvbl9ib3VuZCAoaW50IHNlbGVjdGlvbl9ib3VuZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf c2VsZWN0aW9uX2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBz ZXRfc2luZ2xlX2xpbmVfbW9kZSAoYm9vbCBzaW5nbGVfbGluZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfdGV4dCAoc3RyaW5nPyB0ZXh0KTsKKysJCXB1YmxpYyB2b2lkIHNldF91c2VfbWFya3VwIChi b29sIHNldHRpbmcpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3RleHRfYWN0aXZhdGUi KV0KKysJCXB1YmxpYyBib29sIHRyeV9hY3RpdmF0ZSAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgVGV4dC53aXRoX2J1ZmZlciAoQ2x1dHRl ci5UZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgVGV4dC53aXRoX3Rl eHQgKHN0cmluZz8gZm9udF9uYW1lLCBzdHJpbmcgdGV4dCk7CisrCQlwdWJsaWMgYm9vbCBhY3Rp dmF0YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uQXR0ckxpc3QgYXR0cmlidXRl cyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg Q2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRl ci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjdXJz b3JfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Ym9vbCBjdXJzb3JfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIGludCBjdXJzb3JfcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIGludCBjdXJzb3Jfc2l6ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBjdXJzb3Jf dmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBlZGl0YWJsZSB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBlbGxpcHNpemUgeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIFBhbmdvLkZvbnREZXNj cmlwdGlvbiBmb250X2Rlc2NyaXB0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBz dHJpbmcgZm9udF9uYW1lIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29u dGVudEhpbnRGbGFncyBpbnB1dF9oaW50cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRl ci5JbnB1dENvbnRlbnRQdXJwb3NlIGlucHV0X3B1cnBvc2UgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIGJvb2wganVzdGlmeSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uQWxpZ25tZW50 IGxpbmVfYWxpZ25tZW50IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGxpbmVfd3JhcCB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uV3JhcE1vZGUgbGluZV93cmFwX21vZGUgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3RoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyB1aW50IHBhc3N3b3JkX2NoYXIgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBwb3NpdGlvbiB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgYm9vbCBzZWxlY3RhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNlbGVjdGVkX3RleHRf Y29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZWxlY3RlZF90ZXh0X2NvbG9yX3NldCB7 IGdldDsgfQorKwkJcHVibGljIGludCBzZWxlY3Rpb25fYm91bmQgeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIENsdXR0ZXIuQ29sb3Igc2VsZWN0aW9uX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2VsZWN0aW9uX2NvbG9yX3NldCB7IGdl dDsgfQorKwkJcHVibGljIGJvb2wgc2luZ2xlX2xpbmVfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgc3RyaW5nIHRleHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgdXNlX21hcmt1 cCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhY3RpdmF0ZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBjdXJzb3JfZXZlbnQgKEdyYXBoZW5lLlJlY3QgcmVjdCk7Cisr CQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBz aWduYWwgdm9pZCBkZWxldGVfdGV4dCAoaW50IHN0YXJ0X3BvcywgaW50IGVuZF9wb3MpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGV4dF9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl90ZXh0X2J1ZmZlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dEJ1ZmZlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUZXh0QnVmZmVy ICgpOworKwkJcHVibGljIHZpcnR1YWwgdWludCBkZWxldGVfdGV4dCAodWludCBwb3NpdGlvbiwg dWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIGVtaXRfZGVsZXRlZF90ZXh0ICh1aW50IHBv c2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZvaWQgZW1pdF9pbnNlcnRlZF90ZXh0 ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMg c2l6ZV90IGdldF9ieXRlcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgZ2V0X2xlbmd0aCAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF9sZW5ndGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X3RleHQgKCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAiZ2V0X3RleHQiKV0K KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIHN0cmluZyBnZXRfdGV4 dF93aXRoX2xlbmd0aCAoc2l6ZV90IG5fYnl0ZXMpOworKwkJcHVibGljIHZpcnR1YWwgdWludCBp bnNlcnRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOwor KwkJcHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXhfbGVuZ3RoKTsKKysJCXB1Ymxp YyB2b2lkIHNldF90ZXh0IChzdHJpbmcgY2hhcnMsIGludCBuX2NoYXJzKTsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUZXh0QnVmZmVyLndp dGhfdGV4dCAoc3RyaW5nPyB0ZXh0LCBzc2l6ZV90IHRleHRfbGVuKTsKKysJCXB1YmxpYyB1aW50 IGxlbmd0aCB7IGdldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3RoIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBzdHJpbmcgdGV4dCB7IGdldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgZGVsZXRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaW5zZXJ0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgc3Ry aW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X25vZGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNz IFRleHROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1Ymxp YyBUZXh0Tm9kZSAoUGFuZ28uTGF5b3V0PyBsYXlvdXQsIENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg VGV4dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKwkJcHVibGljIENvZ2wuTWF0ZXJpYWwgY29nbF9t YXRlcmlhbCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlIGNvZ2xfdGV4dHVy ZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfbm9kZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVy ZU5vZGUgOiBDbHV0dGVyLlBpcGVsaW5lTm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGlj IFRleHR1cmVOb2RlIChDb2dsLlRleHR1cmUgdGV4dHVyZSwgQ2x1dHRlci5Db2xvcj8gY29sb3Is IENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIg bWFnX2ZpbHRlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RpbWVsaW5lX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFRpbWVsaW5lIDogR0xp Yi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgVGltZWxpbmUgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0K KysJCXB1YmxpYyB2b2lkIGFkZF9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSwgZG91YmxlIHBy b2dyZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFk ZF9tYXJrZXJfYXRfdGltZSAoc3RyaW5nIG1hcmtlcl9uYW1lLCB1aW50IG1zZWNzKTsKKysJCXB1 YmxpYyB2b2lkIGFkdmFuY2UgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZvaWQgYWR2YW5jZV90b19tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFt ZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmUgY2xvbmUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYXV0 b19yZXZlcnNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBi b29sIGdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdyYXBoZW5lLlBvaW50IGNfMSwgR3JhcGhl bmUuUG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg aW50IGdldF9jdXJyZW50X3JlcGVhdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0K KysJCXB1YmxpYyB1aW50IGdldF9kZWxheSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB1aW50IGdldF9kZWx0YSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9uIGdldF9kaXJlY3Rpb24g KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdWludCBnZXRfZHVy YXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludDY0 IGdldF9kdXJhdGlvbl9oaW50ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2VsYXBzZWRfdGltZSAo KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgYm9vbCBnZXRfbG9vcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3Byb2dyZXNzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgZ2V0X3By b2dyZXNzX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGludCBnZXRfcmVwZWF0X2NvdW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBib29sIGdldF9zdGVwX3Byb2dyZXNzIChvdXQgaW50IG5fc3RlcHMsIG91dCBD bHV0dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgYm9vbCBoYXNfbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUpOworKwkJcHVi bGljIGJvb2wgaXNfcGxheWluZyAoKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gdHJ1ZSwg YXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBhcnJh eV9udWxsX3Rlcm1pbmF0ZWQgPSB0cnVlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBzdHJpbmdbXSBsaXN0X21hcmtlcnMgKGludCBtc2Vjcyk7CisrCQlwdWJsaWMg dm9pZCBwYXVzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2 b2lkIHJlbW92ZV9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBy ZXdpbmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYXV0b19yZXZlcnNlIChib29sIHJldmVyc2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdyYXBoZW5l LlBvaW50IGNfMSwgR3JhcGhlbmUuUG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZWxheSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGlyZWN0aW9uIChDbHV0dGVy LlRpbWVsaW5lRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9sb29wIChib29sIGxvb3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9ncmVzc19mdW5jIChvd25lZCBDbHV0dGVyLlRp bWVsaW5lUHJvZ3Jlc3NGdW5jPyBmdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvZ3Jlc3NfbW9kZSAoQ2x1dHRlci5BbmltYXRpb25Nb2Rl IG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9yZXBlYXRfY291bnQgKGludCBjb3VudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3N0ZXBfcHJvZ3Jlc3MgKGludCBuX3N0ZXBzLCBDbHV0dGVy LlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBza2lwICh1aW50IG1zZWNzKTsK KysJCXB1YmxpYyB2b2lkIHN0YXJ0ICgpOworKwkJcHVibGljIHZvaWQgc3RvcCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGF1dG9fcmV2ZXJzZSB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWludCBk ZWxheSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rpb24geyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgcHJv Z3Jlc3NfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIGludCByZXBlYXRfY291bnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbWFya2VyX3JlYWNoZWQgKHN0cmluZyBt YXJrZXJfbmFtZSwgaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIG5l d19mcmFtZSAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhdXNl ZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YXJ0ZWQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3Rv cHBlZCAoYm9vbCBpc19maW5pc2hlZCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgVGlt ZW91dFBvb2wgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHVibGljIFRpbWVvdXRQb29sIChpbnQgcHJpb3JpdHkpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNs YXNzIFRvdWNoRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENs dXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBt b2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1 ZW5jZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdl YWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1Ymxp YyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMg ZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFBpbmNoRXZlbnQgOiBDbHV0 dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBmbG9hdCBhbmdsZV9kZWx0YTsKKysJCXB1YmxpYyBmbG9h dCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3Mg ZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3Vj aHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyBmbG9hdCBzY2FsZTsKKysJCXB1Ymxp YyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFn ZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50 VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0Iild CisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFN3aXBlRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJ CXB1YmxpYyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1YmxpYyBDbHV0dGVy LkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7CisrCQlwdWJsaWMg Q2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJ CXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOwor KwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf dHJhbnNmb3JtX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRyYW5zZm9ybU5v ZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFRyYW5z Zm9ybU5vZGUgKENvZ2wuTWF0cml4IHByb2plY3Rpb24pOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90cmFu c2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBhYnN0cmFjdCBjbGFzcyBUcmFuc2l0aW9uIDogQ2x1dHRlci5UaW1lbGluZSwgQ2x1dHRl ci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBUcmFuc2l0aW9uICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbXB1dGVfdmFsdWUgKENs dXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlLCBDbHV0dGVyLkludGVydmFsIGludGVydmFsLCBk b3VibGUgcHJvZ3Jlc3MpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg ZGV0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlKTsKKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuQW5pbWF0YWJsZSBnZXRfYW5pbWF0YWJsZSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuSW50ZXJ2YWwgZ2V0X2ludGVydmFsICgpOworKwkJcHVibGljIGJvb2wgZ2V0 X3JlbW92ZV9vbl9jb21wbGV0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hbmltYXRhYmxlIChD bHV0dGVyLkFuaW1hdGFibGU/IGFuaW1hdGFibGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mcm9tX3ZhbHVlIChHTGliLlZhbHVlIHZhbHVlKTsK KysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoQ2x1dHRlci5JbnRlcnZhbD8gaW50ZXJ2YWwp OworKwkJcHVibGljIHZvaWQgc2V0X3JlbW92ZV9vbl9jb21wbGV0ZSAoYm9vbCByZW1vdmVfY29t cGxldGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF90b192YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRh YmxlIGFuaW1hdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW50ZXJ2YWwg aW50ZXJ2YWwgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcmVtb3ZlX29uX2NvbXBsZXRl IHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNpdGlvbl9ncm91cF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgVHJh bnNpdGlvbkdyb3VwIDogQ2x1dHRlci5UcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl clRyYW5zaXRpb24qIildCisrCQlwdWJsaWMgVHJhbnNpdGlvbkdyb3VwICgpOworKwkJcHVibGlj IHZvaWQgYWRkX3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFuc2l0aW9uKTsKKysJ CXB1YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfdHJhbnNp dGlvbiAoQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl92 aXJ0dWFsX2lucHV0X2RldmljZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVmlydHVh bElucHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFZpcnR1YWxJbnB1dERldmljZSAoKTsKKysJ CXB1YmxpYyBpbnQgZ2V0X2RldmljZV90eXBlICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBu b3RpZnlfYWJzb2x1dGVfbW90aW9uICh1aW50NjQgdGltZV91cywgZG91YmxlIHgsIGRvdWJsZSB5 KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2J1dHRvbiAodWludDY0IHRpbWVfdXMs IHVpbnQzMiBidXR0b24sIENsdXR0ZXIuQnV0dG9uU3RhdGUgYnV0dG9uX3N0YXRlKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Rpc2NyZXRlX3Njcm9sbCAodWludDY0IHRpbWVfdXMs IENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbiwgQ2x1dHRlci5TY3JvbGxTb3VyY2Ug c2Nyb2xsX3NvdXJjZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXkgKHVpbnQ2 NCB0aW1lX3VzLCB1aW50MzIga2V5LCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7CisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXl2YWwgKHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIg a2V5dmFsLCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIG5vdGlmeV9yZWxhdGl2ZV9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUgZHgsIGRv dWJsZSBkeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9zY3JvbGxfY29udGludW91 cyAodWludDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91YmxlIGR5LCBDbHV0dGVyLlNjcm9sbFNv dXJjZSBzY3JvbGxfc291cmNlLCBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGZpbmlzaF9mbGFn cyk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3VjaF9kb3duICh1aW50NjQgdGlt ZV91cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIG5vdGlmeV90b3VjaF9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBpbnQgc2xvdCwgZG91Ymxl IHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3RvdWNoX3VwICh1 aW50NjQgdGltZV91cywgaW50IHNsb3QpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VU eXBlIGRldmljZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfem9vbV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFpvb21BY3Rpb24gOiBDbHV0dGVyLkdl c3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBab29tQWN0aW9uICgpOworKwkJ cHVibGljIHZvaWQgZ2V0X2ZvY2FsX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlw dWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfZm9jYWxfcG9pbnQgKEdyYXBoZW5lLlBvaW50IHBv aW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIGdldF96b29tX2F4aXMgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfem9vbV9heGlzIChDbHV0dGVyLlpvb21BeGlzIGF4aXMpOworKwkJcHVi bGljIENsdXR0ZXIuWm9vbUF4aXMgem9vbV9heGlzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCBib29sIHpvb20gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIEdyYXBoZW5lLlBv aW50IGZvY2FsX3BvaW50LCBkb3VibGUgZmFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2NuYW1lID0gIkNsdXR0ZXJBbmlt YXRhYmxlSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGFibGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGludGVyZmFjZSBBbmltYXRhYmxlIDogR0xpYi5PYmplY3QgeworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGFuaW1hdGVfcHJvcGVydHkgKENs dXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGlvbiwgc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFs dWUgaW5pdGlhbF92YWx1ZSwgR0xpYi5WYWx1ZSBmaW5hbF92YWx1ZSwgZG91YmxlIHByb2dyZXNz LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBhYnN0cmFjdCB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfcHJvcGVydHkgKHN0cmlu ZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIGdldF9pbml0aWFsX3N0YXRlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwg R0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgYWJzdHJhY3QgYm9vbCBpbnRlcnBvbGF0ZV92YWx1ZSAoc3RyaW5nIHByb3BlcnR5X25hbWUs IENsdXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBwcm9ncmVzcywgb3V0IEdMaWIuVmFs dWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3Ry YWN0IHZvaWQgc2V0X2ZpbmFsX3N0YXRlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1 ZSB2YWx1ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5lcl9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ29udGFpbmVyIDog R0xpYi5PYmplY3QgeworKwkJcHVibGljIHZvaWQgYWRkIChwYXJhbXMgQ2x1dHRlci5BY3Rvcltd IGFjdG9ycyk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAiYWRkIildCisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAu NCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgYWRkX2FjdG9yIChDbHV0dGVyLkFjdG9yIGFj dG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxk X2dldCAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5BY3RvciBj aGlsZCwgc3RyaW5nIHByb3BlcnR5LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldCAoQ2x1dHRlci5BY3RvciBh Y3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lk IGNoaWxkX3NldF9wcm9wZXJ0eSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgc3RyaW5nIHByb3BlcnR5 LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBjbGFzc19maW5kX2NoaWxkX3Byb3Bl cnR5IChHTGliLk9iamVjdENsYXNzIGtsYXNzLCBzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlb Q0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50 IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIEdMaWIu UGFyYW1TcGVjW10gY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIChHTGliLk9iamVjdENsYXNz IGtsYXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgY3JlYXRlX2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXN0cm95X2NoaWxk X21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBmaW5kX2NoaWxkX2J5X25hbWUgKHN0 cmluZyBjaGlsZF9uYW1lKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJf Y2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKwkJcHVibGljIGNsYXNzIHVub3duZWQgR0xp Yi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBD bHV0dGVyLkNoaWxkTWV0YSBnZXRfY2hpbGRfbWV0YSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQWN0b3I+ IGdldF9jaGlsZHJlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJf Y2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrCQlwdWJsaWMgY2xhc3MgdW5vd25lZCBH TGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsKKysJCVtDQ29kZSAodmZ1 bmNfbmFtZSA9ICJsb3dlciIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgbG93ZXJfY2hpbGQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNp YmxpbmcgPSBudWxsKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJyYWlzZSIpXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmFpc2VfY2hpbGQgKENsdXR0ZXIu QWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcgPSBudWxsKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmUgKC4uLik7CisrCQlbQ0NvZGUgKHZmdW5jX25h bWUgPSAicmVtb3ZlIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZv aWQgcmVtb3ZlX2FjdG9yIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzb3J0X2RlcHRoX29yZGVyICgpOworKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfYWRkZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOwor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfcmVtb3ZlZCAoQ2x1dHRlci5BY3Rv ciBhY3Rvcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNoaWxkX25vdGlmeSAoQ2x1dHRlci5BY3Rv ciBjaGlsZCwgR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfY25hbWUgPSAiQ2x1dHRlckNvbnRl bnRJbnRlcmZhY2UiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgaW50ZXJmYWNlIENvbnRlbnQgOiBHTGliLk9iamVjdCB7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgZ2V0X3ByZWZlcnJlZF9z aXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGludmFsaWRhdGUgKCk7Cisr CQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBpbnZhbGlkYXRlX3NpemUgKCk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgcGFpbnRfY29udGVudCAoQ2x1dHRlci5BY3RvciBh Y3RvciwgQ2x1dHRlci5QYWludE5vZGUgbm9kZSwgQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRf Y29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRldGFj aGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2NyaXB0YWJsZV9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBpbnRl cmZhY2UgU2NyaXB0YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0cmFjdCB1bm93 bmVkIHN0cmluZyBnZXRfaWQgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBwYXJzZV9jdXN0 b21fbm9kZSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLlZhbHVlIHZhbHVlLCBzdHJpbmcg bmFtZSwgSnNvbi5Ob2RlIG5vZGUpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1c3Rv bV9wcm9wZXJ0eSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBzdHJpbmcgbmFtZSwgR0xpYi5WYWx1 ZSB2YWx1ZSk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfaWQgKHN0cmluZyBpZF8pOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlwdWJsaWMgaW50ZXJmYWNlIFN0YWdlV2luZG93IDogR0xpYi5PYmplY3QgeworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBpbnQgZ2V0X3BlbmRpbmdfc3dhcHMgKCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRf d3JhcHBlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBoYXNf cmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lk IGhpZGUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgaWdub3Jp bmdfcmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBi b29sIHJlYWxpemUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQg cmVzaXplIChpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2Z1bGxzY3JlZW4g KGJvb2wgaXNfZnVsbHNjcmVlbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAoYm9vbCBpc19yZXNpemFibGUpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKGJvb2wgZG9fcmFp c2UpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHVucmVhbGl6ZSAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hl ZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2JveF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgc3RydWN0IEFjdG9yQm94IHsKKysJCXB1YmxpYyBmbG9hdCB4MTsKKysJCXB1YmxpYyBm bG9hdCB5MTsKKysJCXB1YmxpYyBmbG9hdCB4MjsKKysJCXB1YmxpYyBmbG9hdCB5MjsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIuQWN0b3JC b3g/IGFsbG9jICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHN0 YXRpYyB2b2lkIGNsYW1wX3RvX3BpeGVsIChyZWYgQ2x1dHRlci5BY3RvckJveCBib3gpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgY29udGFpbnMgKGZsb2F0 IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3JCb3g/IGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5BY3RvckJveCBib3hfYik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3JpZ2luIChvdXQg ZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRo ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuQWN0b3JCb3g/IGluaXQgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZs b2F0IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg aW5pdF9yZWN0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94 IGludGVycG9sYXRlIChDbHV0dGVyLkFjdG9yQm94IGZpbmFsLCBkb3VibGUgcHJvZ3Jlc3MpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0 IHNjYWxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9vcmlnaW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3gg dW5pb24gKENsdXR0ZXIuQWN0b3JCb3ggYik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdHJ1Y3QgQWN0b3JJdGVyIHsKKysJCXB1 YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdm9pZCBpbml0IChDbHV0dGVyLkFjdG9y IHJvb3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGlz X3ZhbGlkICgpOworKwkJcHVibGljIGJvb2wgbmV4dCAob3V0IHVub3duZWQgQ2x1dHRlci5BY3Rv ciBjaGlsZCk7CisrCQlwdWJsaWMgYm9vbCBwcmV2IChvdXQgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGNoaWxkKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJcHVibGljIHN0cnVjdCBDYXB0dXJlIHsKKysJCXB1YmxpYyB3ZWFrIENhaXJvLlN1cmZhY2Ug aW1hZ2U7CisrCQlwdWJsaWMgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3Q7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9 ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQg PSAiQ0xVVFRFUl9UWVBFX0NPTE9SIildCisrCXB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKwkJcHVi bGljIHVpbnQ4IHJlZDsKKysJCXB1YmxpYyB1aW50OCBncmVlbjsKKysJCXB1YmxpYyB1aW50OCBi bHVlOworKwkJcHVibGljIHVpbnQ4IGFscGhhOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgYWRk IChDbHV0dGVyLkNvbG9yIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBzdGF0aWMgQ2x1dHRlci5Db2xvcj8gYWxsb2MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvcj8gY29weSAoKTsKKysJCXB1YmxpYyBD bHV0dGVyLkNvbG9yIGRhcmtlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJ CXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLkNvbG9yIHYyKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0g ImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysJCXB1YmxpYyBDb2xvci5mcm9tX2hscyAoZmxv YXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24pOworKwkJW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fcGl4ZWwiKV0KKysJCXB1YmxpYyBDb2xvci5mcm9t X3BpeGVsICh1aW50MzIgcGl4ZWwpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9y X2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/IGdldF9zdGF0aWMgKENs dXR0ZXIuU3RhdGljQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVpbnQgaGFzaCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBpbml0ICh1aW50OCByZWQsIHVpbnQ4IGdy ZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBpbnRlcnBvbGF0ZSAoQ2x1dHRlci5Db2xvciBm aW5hbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGxpZ2h0ZW4g KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysJ CXB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgQ2x1dHRl ci5Db2xvciBzaGFkZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBz dWJ0cmFjdCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCXB1YmxpYyB2b2lkIHRvX2hscyAob3V0IGZs b2F0IGh1ZSwgb3V0IGZsb2F0IGx1bWluYW5jZSwgb3V0IGZsb2F0IHNhdHVyYXRpb24pOworKwkJ cHVibGljIHVpbnQzMiB0b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0K KysJCXB1YmxpYyBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlw dWJsaWMgc3RydWN0IEtiZEExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1dHRlci5LZXlib2Fy ZEExMXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBpbnQgc2xvd2tleXNfZGVsYXk7CisrCQlw dWJsaWMgaW50IGRlYm91bmNlX2RlbGF5OworKwkJcHVibGljIGludCB0aW1lb3V0X2RlbGF5Owor KwkJcHVibGljIGludCBtb3VzZWtleXNfaW5pdF9kZWxheTsKKysJCXB1YmxpYyBpbnQgbW91c2Vr ZXlzX21heF9zcGVlZDsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX2FjY2VsX3RpbWU7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9m dW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIs IHR5cGVfaWQgPSAiY2x1dHRlcl9rbm90X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjIiKV0KKysJcHVibGljIHN0cnVjdCBLbm90IHsKKysJCXB1YmxpYyBpbnQgeDsKKysJ CXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBDbHV0dGVyLktub3Q/IGNvcHkgKCk7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5Lbm90IGtub3RfYik7CisrCQlwdWJsaWMgdm9pZCBmcmVl ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCA6IENvZ2wuTWF0cml4IHsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRCdXR0b25FdmVudCB7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0 YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgdWlu dDMyIGJ1dHRvbjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRSaW5nRXZlbnQgeworKwkJcHVibGljIENs dXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMg Q2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBz dGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdl YWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERl dmljZVBhZFNvdXJjZSByaW5nX3NvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgcmluZ19udW1iZXI7 CisrCQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGljIGRvdWJsZSBhbmdsZTsKKysJCXB1 YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQ YWRTdHJpcEV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVi bGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNl OworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRTb3VyY2Ugc3RyaXBfc291cmNlOwor KwkJcHVibGljIHVpbnQzMiBzdHJpcF9udW1iZXI7CisrCQlwdWJsaWMgdWludDMyIGdyb3VwOwor KwkJcHVibGljIGRvdWJsZSB2YWx1ZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0 aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3BhdGhfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUGF0aE5vZGUgeworKwkJcHVibGljIENsdXR0 ZXIuUGF0aE5vZGVUeXBlIHR5cGU7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0K KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuS25vdCBwb2ludHNbM107CisrCQlwdWJsaWMgQ2x1dHRl ci5QYXRoTm9kZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLlBhdGhO b2RlIG5vZGVfYik7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNs dXR0ZXJfcGVyc3BlY3RpdmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwlwdWJsaWMgc3RydWN0IFBlcnNwZWN0aXZlIHsKKysJCXB1YmxpYyBmbG9hdCBmb3Z5 OworKwkJcHVibGljIGZsb2F0IGFzcGVjdDsKKysJCXB1YmxpYyBmbG9hdCB6X25lYXI7CisrCQlw dWJsaWMgZmxvYXQgel9mYXI7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3Qg UG9pbnRlckExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUZsYWdz IGNvbnRyb2xzOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbENsaWNrVHlwZSBk d2VsbF9jbGlja190eXBlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbE1vZGUg ZHdlbGxfbW9kZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24g ZHdlbGxfZ2VzdHVyZV9zaW5nbGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxs RGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfZG91YmxlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRl ckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2RyYWc7CisrCQlwdWJsaWMgQ2x1dHRl ci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfc2Vjb25kYXJ5OworKwkJ cHVibGljIGludCBzZWNvbmRhcnlfY2xpY2tfZGVsYXk7CisrCQlwdWJsaWMgaW50IGR3ZWxsX2Rl bGF5OworKwkJcHVibGljIGludCBkd2VsbF90aHJlc2hvbGQ7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCXB1YmxpYyBzdHJ1Y3QgUHJveGltaXR5 RXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWlu dDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig c291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9m dW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIs IHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIHN0cnVjdCBVbml0cyB7CisrCQlwdWJsaWMgQ2x1dHRlci5Vbml0cz8g Y29weSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfdW5pdHNfZnJvbV9jbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fY20gKGZsb2F0IGNt KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtIildCisrCQlwdWJs aWMgVW5pdHMuZnJvbV9lbSAoZmxvYXQgZW0pOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX2VtX2Zvcl9m b250IChzdHJpbmcgZm9udF9uYW1lLCBmbG9hdCBlbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfdW5pdHNfZnJvbV9tbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fbW0gKGZsb2F0IG1t KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3BpeGVscyIpXQorKwkJ cHVibGljIFVuaXRzLmZyb21fcGl4ZWxzIChpbnQgcHgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3B0IChmbG9hdCBw dCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9zdHJpbmciKV0KKysJ CXB1YmxpYyBVbml0cy5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgQ2x1dHRl ci5Vbml0VHlwZSBnZXRfdW5pdF90eXBlICgpOworKwkJcHVibGljIGZsb2F0IGdldF91bml0X3Zh bHVlICgpOworKwkJcHVibGljIGZsb2F0IHRvX3BpeGVscyAoKTsKKysJCXB1YmxpYyBzdHJpbmcg dG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BQ1RPUl9BTElHTl8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfYWN0b3JfYWxpZ25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJcHVibGljIGVudW0gQWN0b3JBbGlnbiB7CisrCQlGSUxMLAorKwkJU1RBUlQs CisrCQlDRU5URVIsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQUNUT1JfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2FjdG9yX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGlj IGVudW0gQWN0b3JGbGFncyB7CisrCQlNQVBQRUQsCisrCQlSRUFMSVpFRCwKKysJCVJFQUNUSVZF LAorKwkJVklTSUJMRSwKKysJCU5PX0xBWU9VVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BTElHTl8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfYWxpZ25fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEFsaWduQXhpcyB7CisrCQlYX0FYSVMsCisr CQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9hbGxvY2F0aW9uX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbGxvY2F0aW9uRmxhZ3MgeworKwkJQUxM T0NBVElPTl9OT05FLAorKwkJQUJTT0xVVEVfT1JJR0lOX0NIQU5HRUQsCisrCQlERUxFR0FURV9M QVlPVVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGlvbl9t b2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IGVudW0gQW5pbWF0aW9uTW9kZSB7CisrCQlDVVNUT01fTU9ERSwKKysJCUxJTkVBUiwKKysJCUVB U0VfSU5fUVVBRCwKKysJCUVBU0VfT1VUX1FVQUQsCisrCQlFQVNFX0lOX09VVF9RVUFELAorKwkJ RUFTRV9JTl9DVUJJQywKKysJCUVBU0VfT1VUX0NVQklDLAorKwkJRUFTRV9JTl9PVVRfQ1VCSUMs CisrCQlFQVNFX0lOX1FVQVJULAorKwkJRUFTRV9PVVRfUVVBUlQsCisrCQlFQVNFX0lOX09VVF9R VUFSVCwKKysJCUVBU0VfSU5fUVVJTlQsCisrCQlFQVNFX09VVF9RVUlOVCwKKysJCUVBU0VfSU5f T1VUX1FVSU5ULAorKwkJRUFTRV9JTl9TSU5FLAorKwkJRUFTRV9PVVRfU0lORSwKKysJCUVBU0Vf SU5fT1VUX1NJTkUsCisrCQlFQVNFX0lOX0VYUE8sCisrCQlFQVNFX09VVF9FWFBPLAorKwkJRUFT RV9JTl9PVVRfRVhQTywKKysJCUVBU0VfSU5fQ0lSQywKKysJCUVBU0VfT1VUX0NJUkMsCisrCQlF QVNFX0lOX09VVF9DSVJDLAorKwkJRUFTRV9JTl9FTEFTVElDLAorKwkJRUFTRV9PVVRfRUxBU1RJ QywKKysJCUVBU0VfSU5fT1VUX0VMQVNUSUMsCisrCQlFQVNFX0lOX0JBQ0ssCisrCQlFQVNFX09V VF9CQUNLLAorKwkJRUFTRV9JTl9PVVRfQkFDSywKKysJCUVBU0VfSU5fQk9VTkNFLAorKwkJRUFT RV9PVVRfQk9VTkNFLAorKwkJRUFTRV9JTl9PVVRfQk9VTkNFLAorKwkJU1RFUFMsCisrCQlTVEVQ X1NUQVJULAorKwkJU1RFUF9FTkQsCisrCQlDVUJJQ19CRVpJRVIsCisrCQlFQVNFLAorKwkJRUFT RV9JTiwKKysJCUVBU0VfT1VULAorKwkJRUFTRV9JTl9PVVQsCisrCQlBTklNQVRJT05fTEFTVAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9CSU5fQUxJR05NRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5f YWxpZ25tZW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ cHVibGljIGVudW0gQmluQWxpZ25tZW50IHsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSldCisrCQlGSVhFRCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSldCisrCQlGSUxM LAorKwkJU1RBUlQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJRU5ELAor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUNFTlRFUgorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9CSU5EXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kX2Nvb3JkaW5hdGVfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBCaW5kQ29v cmRpbmF0ZSB7CisrCQlYLAorKwkJWSwKKysJCVdJRFRILAorKwkJSEVJR0hULAorKwkJUE9TSVRJ T04sCisrCQlTSVpFLAorKwkJQUxMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JPWF9BTElHTk1FTlRfIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2JveF9hbGlnbm1lbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBCb3hBbGlnbm1lbnQgeworKwkJU1RB UlQsCisrCQlFTkQsCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQlVUVE9OX1NUQVRFXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9idXR0b25fc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gQnV0dG9uU3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVTU0VECisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX0NPTlRFTlRfR1JBVklUWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9ncmF2 aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBlbnVtIENvbnRlbnRHcmF2aXR5IHsKKysJCVRPUF9MRUZULAorKwkJVE9QLAorKwkJVE9QX1JJ R0hULAorKwkJTEVGVCwKKysJCUNFTlRFUiwKKysJCVJJR0hULAorKwkJQk9UVE9NX0xFRlQsCisr CQlCT1RUT00sCisrCQlCT1RUT01fUklHSFQsCisrCQlSRVNJWkVfRklMTCwKKysJCVJFU0laRV9B U1BFQ1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUkVQRUFUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250 ZW50X3JlcGVhdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIENvbnRlbnRSZXBlYXQgeworKwkJTk9ORSwKKysJCVhf QVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfREVCVUdfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlw dWJsaWMgZW51bSBEZWJ1Z0ZsYWcgeworKwkJTUlTQywKKysJCUFDVE9SLAorKwkJVEVYVFVSRSwK KysJCUVWRU5ULAorKwkJUEFJTlQsCisrCQlQQU5HTywKKysJCUJBQ0tFTkQsCisrCQlTQ0hFRFVM RVIsCisrCQlTQ1JJUFQsCisrCQlTSEFERVIsCisrCQlNVUxUSVNUQUdFLAorKwkJQU5JTUFUSU9O LAorKwkJTEFZT1VULAorKwkJUElDSywKKysJCUVWRU5UTE9PUCwKKysJCUNMSVBQSU5HLAorKwkJ T09CX1RSQU5TRk9STVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRFJBR18iLCB0eXBlX2lkID0gImNsdXR0 ZXJfZHJhZ19heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJcHVibGljIGVudW0gRHJhZ0F4aXMgeworKwkJQVhJU19OT05FLAorKwkJWF9BWElTLAorKwkJ WV9BWElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmF3 X2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBEcmF3 RGVidWdGbGFnIHsKKysJCURJU0FCTEVfU1dBUF9FVkVOVFMsCisrCQlESVNBQkxFX0NMSVBQRURf UkVEUkFXUywKKysJCVJFRFJBV1MsCisrCQlQQUlOVF9WT0xVTUVTLAorKwkJRElTQUJMRV9DVUxM SU5HLAorKwkJRElTQUJMRV9PRkZTQ1JFRU5fUkVESVJFQ1QsCisrCQlDT05USU5VT1VTX1JFRFJB VywKKysJCVBBSU5UX0RFRk9STV9USUxFUywKKysJCVBBSU5UX0RBTUFHRV9SRUdJT04KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9lZmZl Y3RfcGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBF ZmZlY3RQYWludEZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ0xVVFRFUl9FRkZFQ1RfUEFJ TlRfQUNUT1JfRElSVFkiKV0KKysJCUFDVE9SX0RJUlRZCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0VWRU5U XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxh Z3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVudW0gRXZlbnRGbGFn cyB7CisrCQlOT05FLAorKwkJRkxBR19TWU5USEVUSUMsCisrCQlGTEFHX0lOUFVUX01FVEhPRCwK KysJCUZMQUdfUkVQRUFURUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2V2ZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQor KwlwdWJsaWMgZW51bSBFdmVudFR5cGUgeworKwkJTk9USElORywKKysJCUtFWV9QUkVTUywKKysJ CUtFWV9SRUxFQVNFLAorKwkJTU9USU9OLAorKwkJRU5URVIsCisrCQlMRUFWRSwKKysJCUJVVFRP Tl9QUkVTUywKKysJCUJVVFRPTl9SRUxFQVNFLAorKwkJU0NST0xMLAorKwkJU1RBR0VfU1RBVEUs CisrCQlERVNUUk9ZX05PVElGWSwKKysJCUNMSUVOVF9NRVNTQUdFLAorKwkJREVMRVRFLAorKwkJ VE9VQ0hfQkVHSU4sCisrCQlUT1VDSF9VUERBVEUsCisrCQlUT1VDSF9FTkQsCisrCQlUT1VDSF9D QU5DRUwsCisrCQlUT1VDSFBBRF9QSU5DSCwKKysJCVRPVUNIUEFEX1NXSVBFLAorKwkJUFJPWElN SVRZX0lOLAorKwkJUFJPWElNSVRZX09VVCwKKysJCVBBRF9CVVRUT05fUFJFU1MsCisrCQlQQURf QlVUVE9OX1JFTEVBU0UsCisrCQlQQURfU1RSSVAsCisrCQlQQURfUklORywKKysJCUVWRU5UX0xB U1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfRkVBVFVSRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZmVhdHVy ZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIw LjQiKV0KKysJcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsKKysJCVRFWFRVUkVfTlBPVCwKKysJ CVNXQVBfVEhST1RUTEUsCisrCQlTVEFHRV9TVEFUSUMsCisrCQlTVEFHRV9DVVJTT1IsCisrCQlT SEFERVJTX0dMU0wsCisrCQlPRkZTQ1JFRU4sCisrCQlTVEFHRV9NVUxUSVBMRSwKKysJCVNXQVBf RVZFTlRTOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfYXZhaWxhYmxlIild CisrCQlwdWJsaWMgYm9vbCBpc19hdmFpbGFibGUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIuRmVhdHVy ZUZsYWdzIEBnZXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZMT1dfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2Zsb3dfb3JpZW50YXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwlwdWJsaWMgZW51bSBGbG93T3JpZW50YXRpb24geworKwkJSE9SSVpPTlRBTCwK KysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dFU1RVUkVfVFJJR0dFUl9FREdFXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9nZXN0dXJlX3RyaWdnZXJfZWRnZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZW51bSBHZXN0dXJlVHJpZ2dlckVk Z2UgeworKwkJTk9ORSwKKysJCUFGVEVSLAorKwkJQkVGT1JFCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dS QVZJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyYXZpdHlfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5j ZSA9ICIwLjIiKV0KKysJcHVibGljIGVudW0gR3Jhdml0eSB7CisrCQlOT05FLAorKwkJTk9SVEgs CisrCQlOT1JUSF9FQVNULAorKwkJRUFTVCwKKysJCVNPVVRIX0VBU1QsCisrCQlTT1VUSCwKKysJ CVNPVVRIX1dFU1QsCisrCQlXRVNULAorKwkJTk9SVEhfV0VTVCwKKysJCUNFTlRFUgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9HUklEX1BPU0lUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncmlkX3Bvc2l0 aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1Ymxp YyBlbnVtIEdyaWRQb3NpdGlvbiB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlC T1RUT00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5JVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5pdF9l cnJvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1Ymxp YyBlbnVtIEluaXRFcnJvciB7CisrCQlTVUNDRVNTLAorKwkJRVJST1JfVU5LTk9XTiwKKysJCUVS Uk9SX1RIUkVBRFMsCisrCQlFUlJPUl9CQUNLRU5ELAorKwkJRVJST1JfSU5URVJOQUw7CisrCQlw dWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVU X0FYSVNfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBJbnB1dEF4aXMgeworKwkJ SUdOT1JFLAorKwkJWCwKKysJCVksCisrCQlQUkVTU1VSRSwKKysJCVhUSUxULAorKwkJWVRJTFQs CisrCQlXSEVFTCwKKysJCURJU1RBTkNFLAorKwkJUk9UQVRJT04sCisrCQlTTElERVIsCisrCQlM QVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRfSElOVF8iLCB0eXBlX2lkID0gImNs dXR0ZXJfaW5wdXRfY29udGVudF9oaW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10K KysJcHVibGljIGVudW0gSW5wdXRDb250ZW50SGludEZsYWdzIHsKKysJCUNPTVBMRVRJT04sCisr CQlTUEVMTENIRUNLLAorKwkJQVVUT19DQVBJVEFMSVpBVElPTiwKKysJCUxPV0VSQ0FTRSwKKysJ CVVQUEVSQ0FTRSwKKysJCVRJVExFQ0FTRSwKKysJCUhJRERFTl9URVhULAorKwkJU0VOU0lUSVZF X0RBVEEsCisrCQlMQVRJTiwKKysJCU1VTFRJTElORQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9D T05URU5UX1BVUlBPU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2NvbnRlbnRfcHVycG9z ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dENvbnRlbnRQdXJwb3NlIHsKKysJ CU5PUk1BTCwKKysJCUFMUEhBLAorKwkJRElHSVRTLAorKwkJTlVNQkVSLAorKwkJUEhPTkUsCisr CQlVUkwsCisrCQlFTUFJTCwKKysJCU5BTUUsCisrCQlQQVNTV09SRCwKKysJCURBVEUsCisrCQlU SU1FLAorKwkJREFURVRJTUUsCisrCQlURVJNSU5BTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9E RVZJQ0VfTUFQUElOR18iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX21hcHBpbmdf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZpY2VNYXBwaW5nIHsKKysJCUFC U09MVVRFLAorKwkJUkVMQVRJVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX1BBRF9T T1VSQ0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV9wYWRfc291cmNlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlUGFkU291cmNlIHsKKysJCVVOS05P V04sCisrCQlGSU5HRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX1RPT0xfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV90b29sX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZpY2VUb29s VHlwZSB7CisrCQlOT05FLAorKwkJUEVOLAorKwkJRVJBU0VSLAorKwkJQlJVU0gsCisrCQlQRU5D SUwsCisrCQlBSVJCUlVTSCwKKysJCU1PVVNFLAorKwkJTEVOUworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8i LCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERldmljZVR5cGUg eworKwkJUE9JTlRFUl9ERVZJQ0UsCisrCQlLRVlCT0FSRF9ERVZJQ0UsCisrCQlFWFRFTlNJT05f REVWSUNFLAorKwkJSk9ZU1RJQ0tfREVWSUNFLAorKwkJVEFCTEVUX0RFVklDRSwKKysJCVRPVUNI UEFEX0RFVklDRSwKKysJCVRPVUNIU0NSRUVOX0RFVklDRSwKKysJCVBFTl9ERVZJQ0UsCisrCQlF UkFTRVJfREVWSUNFLAorKwkJQ1VSU09SX0RFVklDRSwKKysJCVBBRF9ERVZJQ0UsCisrCQlOX0RF VklDRV9UWVBFUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9NT0RFXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9pbnB1dF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJcHVibGljIGVudW0gSW5wdXRNb2RlIHsKKysJCU1BU1RFUiwKKysJCVNMQVZFLAorKwkJ RkxPQVRJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfUEFORUxfU1RBVEVfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2lucHV0X3BhbmVsX3N0YXRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IElucHV0UGFuZWxTdGF0ZSB7CisrCQlPRkYsCisrCQlPTiwKKysJCVRPR0dMRQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9JTlRFUlBPTEFUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnRlcnBvbGF0aW9u X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEludGVycG9s YXRpb24geworKwkJTElORUFSLAorKwkJQ1VCSUMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfS0VZX1NUQVRF XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rZXlfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gS2V5U3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVTU0VECisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleWJvYXJkX2ExMXlfZmxhZ3NfZ2V0X3R5 cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBLZXlib2FyZEExMXlGbGFncyB7Cisr CQlLRVlCT0FSRF9FTkFCTEVELAorKwkJVElNRU9VVF9FTkFCTEVELAorKwkJTU9VU0VfS0VZU19F TkFCTEVELAorKwkJU0xPV19LRVlTX0VOQUJMRUQsCisrCQlTTE9XX0tFWVNfQkVFUF9QUkVTUywK KysJCVNMT1dfS0VZU19CRUVQX0FDQ0VQVCwKKysJCVNMT1dfS0VZU19CRUVQX1JFSkVDVCwKKysJ CUJPVU5DRV9LRVlTX0VOQUJMRUQsCisrCQlCT1VOQ0VfS0VZU19CRUVQX1JFSkVDVCwKKysJCVRP R0dMRV9LRVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19FTkFCTEVELAorKwkJU1RJQ0tZX0tF WVNfVFdPX0tFWV9PRkYsCisrCQlTVElDS1lfS0VZU19CRUVQLAorKwkJRkVBVFVSRV9TVEFURV9D SEFOR0VfQkVFUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9MT05HX1BSRVNTXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9sb25nX3ByZXNzX3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJcHVibGljIGVudW0gTG9uZ1ByZXNzU3RhdGUgeworKwkJUVVFUlksCisrCQlB Q1RJVkFURSwKKysJCUNBTkNFTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfbW9kaWZpZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gTW9kaWZpZXJUeXBlIHsKKysJCVNISUZUX01B U0ssCisrCQlMT0NLX01BU0ssCisrCQlDT05UUk9MX01BU0ssCisrCQlNT0QxX01BU0ssCisrCQlN T0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ssCisrCQlNT0Q1X01BU0ssCisr CQlCVVRUT04xX01BU0ssCisrCQlCVVRUT04yX01BU0ssCisrCQlCVVRUT04zX01BU0ssCisrCQlC VVRUT040X01BU0ssCisrCQlCVVRUT041X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xM19N QVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTRfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVE XzE1X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNl9NQVNLLAorKwkJTU9ESUZJRVJfUkVT RVJWRURfMTdfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE4X01BU0ssCisrCQlNT0RJRklF Ul9SRVNFUlZFRF8xOV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjBfTUFTSywKKysJCU1P RElGSUVSX1JFU0VSVkVEXzIxX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yMl9NQVNLLAor KwkJTU9ESUZJRVJfUkVTRVJWRURfMjNfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzI0X01B U0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yNV9NQVNLLAorKwkJU1VQRVJfTUFTSywKKysJCUhZ UEVSX01BU0ssCisrCQlNRVRBX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yOV9NQVNLLAor KwkJUkVMRUFTRV9NQVNLLAorKwkJTU9ESUZJRVJfTUFTSworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9PRkZT Q1JFRU5fUkVESVJFQ1RfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29mZnNjcmVlbl9yZWRpcmVjdF9n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ cHVibGljIGVudW0gT2Zmc2NyZWVuUmVkaXJlY3QgeworKwkJQVVUT01BVElDX0ZPUl9PUEFDSVRZ LAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX09SSUVOVEFUSU9OXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9vcmllbnRhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwlwdWJsaWMgZW51bSBPcmllbnRhdGlvbiB7CisrCQlIT1JJWk9OVEFMLAorKwkJ VkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUEFOXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYW5f YXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJs aWMgZW51bSBQYW5BeGlzIHsKKysJCUFYSVNfTk9ORSwKKysJCVhfQVhJUywKKysJCVlfQVhJUywK KysJCUFYSVNfQVVUTworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QQVRIXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9wYXRoX25vZGVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBlbnVtIFBhdGhOb2RlVHlwZSB7CisrCQlNT1ZFX1RPLAorKwkJTElORV9U TywKKysJCUNVUlZFX1RPLAorKwkJQ0xPU0UsCisrCQlSRUxfTU9WRV9UTywKKysJCVJFTF9MSU5F X1RPLAorKwkJUkVMX0NVUlZFX1RPCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHX05PUF8iLCB0eXBl X2lkID0gImNsdXR0ZXJfcGlja19kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisrCVtGbGFnc10K KysJcHVibGljIGVudW0gUGlja0RlYnVnRmxhZyB7CisrCQlQSUNLSU5HCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX1BJQ0tfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfbW9kZV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFBpY2tNb2RlIHsKKysJ CU5PTkUsCisrCQlSRUFDVElWRSwKKysJCUFMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX0RXRUxM X0NMSUNLX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV9kd2VsbF9jbGlj a190eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdlbGxDbGlj a1R5cGUgeworKwkJTk9ORSwKKysJCVBSSU1BUlksCisrCQlTRUNPTkRBUlksCisrCQlNSURETEUs CisrCQlET1VCTEUsCisrCQlEUkFHCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExfRElSRUNU SU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfZGlyZWN0aW9uX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gewor KwkJTk9ORSwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQLAorKwkJRE9XTgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9BMTFZX0RXRUxMX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTEx eV9kd2VsbF9tb2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdl bGxNb2RlIHsKKysJCVdJTkRPVywKKysJCUdFU1RVUkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV8i LCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2ZsYWdzX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlGbGFncyB7CisrCQlTRUNPTkRBUllf Q0xJQ0tfRU5BQkxFRCwKKysJCURXRUxMX0VOQUJMRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV9U SU1FT1VUX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV90aW1lb3V0X3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlUaW1lb3V0VHlwZSB7 CisrCQlTRUNPTkRBUllfQ0xJQ0ssCisrCQlEV0VMTCwKKysJCUdFU1RVUkUKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfUkVQQUlOVF9GTEFHU18iLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVwYWludF9mbGFnc19n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CXB1YmxpYyBlbnVtIFJlcGFpbnRGbGFncyB7CisrCQlQUkVfUEFJTlQsCisrCQlQT1NUX1BBSU5U LAorKwkJUVVFVUVfUkVEUkFXX09OX0FERAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9SRVFVRVNUXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9yZXF1ZXN0X21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBSZXF1ZXN0TW9kZSB7CisrCQlIRUlHSFRf Rk9SX1dJRFRILAorKwkJV0lEVEhfRk9SX0hFSUdIVCwKKysJCUNPTlRFTlRfU0laRQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2F4aXNfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBSb3RhdGVBeGlz IHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCVpfQVhJUworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9S T1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gUm90YXRlRGlyZWN0aW9uIHsKKysJ CUNXLAorKwkJQ0NXCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDQUxJTkdfRklMVEVSXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zY2FsaW5nX2ZpbHRlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBTY2FsaW5nRmlsdGVyIHsKKysJCUxJTkVBUiwK KysJCU5FQVJFU1QsCisrCQlUUklMSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsRGlyZWN0aW9uIHsKKysJ CVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVNNT09USAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9TQ1JPTExfRklOSVNIRURfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9maW5p c2hfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4yNiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxGaW5pc2hGbGFncyB7CisrCQlOT05FLAorKwkJ SE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF8iLCB0eXBl X2lkID0gImNsdXR0ZXJfc2Nyb2xsX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxNb2RlIHsKKysJ CU5PTkUsCisrCQlIT1JJWk9OVEFMTFksCisrCQlWRVJUSUNBTExZLAorKwkJQk9USAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9TQ1JPTExfU09VUkNFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfc291 cmNlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisrCXB1Ymxp YyBlbnVtIFNjcm9sbFNvdXJjZSB7CisrCQlVTktOT1dOLAorKwkJV0hFRUwsCisrCQlGSU5HRVIs CisrCQlDT05USU5VT1VTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9z aGFkZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJVkVSVEVYX1NIQURFUiwKKysJCUZSQUdNRU5U X1NIQURFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TTkFQX0VER0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3NuYXBfZWRnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CXB1YmxpYyBlbnVtIFNuYXBFZGdlIHsKKysJCVRPUCwKKysJCVJJR0hULAorKwkJQk9UVE9NLAor KwkJTEVGVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TVEFHRV9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfc3RhZ2Vfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFN0YWdlU3RhdGUgeworKwkJQUNUSVZBVEVECisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0NPTE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0aWNfY29sb3Jf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51 bSBTdGF0aWNDb2xvciB7CisrCQlXSElURSwKKysJCUJMQUNLLAorKwkJUkVELAorKwkJREFSS19S RUQsCisrCQlHUkVFTiwKKysJCURBUktfR1JFRU4sCisrCQlCTFVFLAorKwkJREFSS19CTFVFLAor KwkJQ1lBTiwKKysJCURBUktfQ1lBTiwKKysJCU1BR0VOVEEsCisrCQlEQVJLX01BR0VOVEEsCisr CQlZRUxMT1csCisrCQlEQVJLX1lFTExPVywKKysJCUdSQVksCisrCQlEQVJLX0dSQVksCisrCQlM SUdIVF9HUkFZLAorKwkJQlVUVEVSLAorKwkJQlVUVEVSX0xJR0hULAorKwkJQlVUVEVSX0RBUkss CisrCQlPUkFOR0UsCisrCQlPUkFOR0VfTElHSFQsCisrCQlPUkFOR0VfREFSSywKKysJCUNIT0NP TEFURSwKKysJCUNIT0NPTEFURV9MSUdIVCwKKysJCUNIT0NPTEFURV9EQVJLLAorKwkJQ0hBTUVM RU9OLAorKwkJQ0hBTUVMRU9OX0xJR0hULAorKwkJQ0hBTUVMRU9OX0RBUkssCisrCQlTS1lfQkxV RSwKKysJCVNLWV9CTFVFX0xJR0hULAorKwkJU0tZX0JMVUVfREFSSywKKysJCVBMVU0sCisrCQlQ TFVNX0xJR0hULAorKwkJUExVTV9EQVJLLAorKwkJU0NBUkxFVF9SRUQsCisrCQlTQ0FSTEVUX1JF RF9MSUdIVCwKKysJCVNDQVJMRVRfUkVEX0RBUkssCisrCQlBTFVNSU5JVU1fMSwKKysJCUFMVU1J TklVTV8yLAorKwkJQUxVTUlOSVVNXzMsCisrCQlBTFVNSU5JVU1fNCwKKysJCUFMVU1JTklVTV81 LAorKwkJQUxVTUlOSVVNXzYsCisrCQlUUkFOU1BBUkVOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TVEVQ X01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0ZXBfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBTdGVwTW9kZSB7CisrCQlT VEFSVCwKKysJCUVORAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TV0lQRV9ESVJFQ1RJT05fIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3N3aXBlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gU3dpcGVEaXJlY3Rpb24g eworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X1RFWFRfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X2RpcmVjdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIFRl eHREaXJlY3Rpb24geworKwkJREVGQVVMVCwKKysJCUxUUiwKKysJCVJUTAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9URVhUVVJFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX2ZsYWdzX2dldF90eXBl ICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gVGV4dHVy ZUZsYWdzIHsKKysJCU5PTkUsCisrCQlSR0JfRkxBR19CR1IsCisrCQlSR0JfRkxBR19QUkVNVUxU LAorKwkJWVVWX0ZMQUdfWVVWMgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUVVJFX1FVQUxJVFlfIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfcXVhbGl0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNl ID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlUXVhbGl0eSB7CisrCQlMT1csCisrCQlN RURJVU0sCisrCQlISUdICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RJTUVMSU5FXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl90aW1lbGluZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZW51bSBUaW1lbGluZURpcmVjdGlvbiB7CisrCQlGT1JX QVJELAorKwkJQkFDS1dBUkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVE9VQ0hQQURfR0VTVFVSRV9QSEFT RV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdG91Y2hwYWRfZ2VzdHVyZV9waGFzZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgZW51bSBUb3VjaHBh ZEdlc3R1cmVQaGFzZSB7CisrCQlCRUdJTiwKKysJCVVQREFURSwKKysJCUVORCwKKysJCUNBTkNF TAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9VTklUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl91bml0X3R5cGVf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51 bSBVbml0VHlwZSB7CisrCQlQSVhFTCwKKysJCUVNLAorKwkJTU0sCisrCQlQT0lOVCwKKysJCUNN CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX1ZJUlRVQUxfREVWSUNFX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3ZpcnR1YWxfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJs aWMgZW51bSBWaXJ0dWFsRGV2aWNlVHlwZSB7CisrCQlOT05FLAorKwkJS0VZQk9BUkQsCisrCQlQ T0lOVEVSLAorKwkJVE9VQ0hTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfWk9PTV8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfem9vbV9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFpvb21BeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJ UywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU1BR0VfRVJST1JfSU5WQUxJRF8iKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVycm9yZG9tYWluIEltYWdlRXJy b3IgeworKwkJREFUQTsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFyayBxdWFyayAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfU0NSSVBUX0VSUk9SX0lOVkFMSURfIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJcHVibGljIGVycm9yZG9tYWluIFNjcmlwdEVycm9yIHsKKysJCVRZUEVf RlVOQ1RJT04sCisrCQlQUk9QRVJUWSwKKysJCVZBTFVFOworKwkJcHVibGljIHN0YXRpYyBHTGli LlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjI0IildCisrCXB1YmxpYyBkZWxlZ2F0ZSBDbHV0dGVyLkFjdG9yIEFjdG9yQ3JlYXRlQ2hp bGRGdW5jIChHTGliLk9iamVjdCBpdGVtKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjIi KV0KKysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBBbHBoYUZ1bmMgKENsdXR0ZXIuQWxwaGEgYWxw aGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBp bnN0YW5jZV9wb3MgPSA0LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBkZWxlZ2F0ZSBib29sIEJpbmRpbmdBY3Rpb25GdW5jIChHTGliLk9iamVjdCBnb2JqZWN0LCBz dHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9k aWZpZXJzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgQ2FsbGJhY2sg KENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQorKwlwdWJsaWMgZGVsZWdhdGUg dm9pZCBFbWl0SW5wdXREZXZpY2VFdmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgQ2x1dHRlci5J bnB1dERldmljZSBkZXZpY2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xOCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBFdmVudEZpbHRlckZ1bmMgKENsdXR0ZXIu RXZlbnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFBhdGhDYWxsYmFjayAoQ2x1dHRlci5QYXRoTm9kZSBu b2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg aGFzX3RhcmdldCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJs aWMgZGVsZWdhdGUgYm9vbCBQcm9ncmVzc0Z1bmMgKEdMaWIuVmFsdWUgYSwgR0xpYi5WYWx1ZSBi LCBkb3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFsdWUgcmV0dmFsKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gNi45KV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBTY3JpcHRD b25uZWN0RnVuYyAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLk9iamVjdCBvYmplY3QsIHN0 cmluZyBzaWduYWxfbmFtZSwgc3RyaW5nIGhhbmRsZXJfbmFtZSwgR0xpYi5PYmplY3QgY29ubmVj dF9vYmplY3QsIEdMaWIuQ29ubmVjdEZsYWdzIGZsYWdzKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMy45KV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBUaW1lbGlu ZVByb2dyZXNzRnVuYyAoQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgZG91YmxlIGVsYXBzZWQs IGRvdWJsZSB0b3RhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ09HTCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwlw dWJsaWMgY29uc3Qgc3RyaW5nIENPR0w7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ1VSUkVOVF9USU1FIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IGludCBDVVJSRU5UX1RJTUU7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfRkxBVk9VUiIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgY29uc3Qg c3RyaW5nIEZMQVZPVVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUEFUSF9SRUxBVElWRSIpXQorKwlwdWJsaWMgY29u c3QgaW50IFBBVEhfUkVMQVRJVkU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUFJJT1JJVFlfUkVEUkFXIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9SRURS QVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlwdWJsaWMgc3RhdGljIHZvaWQgYmFzZV9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJvX2NsZWFyIChDYWlyby5Db250ZXh0IGNyKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJvX3NldF9z b3VyY2VfY29sb3IgKENhaXJvLkNvbnRleHQgY3IsIENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNoZWNrX3dpbmRvd2lu Z19iYWNrZW5kIChzdHJpbmcgYmFja2VuZF90eXBlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjb2xvcl9m cm9tX2hscyAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIGZsb2F0IGh1ZSwgZmxvYXQgbHVtaW5h bmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjb2xvcl9mcm9tX3BpeGVs IChvdXQgQ2x1dHRlci5Db2xvciBjb2xvciwgdWludDMyIHBpeGVsKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2Zyb21fc3RyaW5nIChvdXQgQ2x1 dHRlci5Db2xvciBjb2xvciwgc3RyaW5nIHN0cik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBjb2xvcl9nZXRfc3RhdGljIChD bHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCBkaXNhYmxlX2FjY2Vzc2liaWxpdHkgKCk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkb19ldmVudCAoQ2x1dHRlci5FdmVudCBl dmVudCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQgZXZl bnRfYWRkX2ZpbHRlciAoQ2x1dHRlci5TdGFnZT8gc3RhZ2UsIFtDQ29kZSAoZGVsZWdhdGVfdGFy Z2V0X3BvcyA9IDIuMiwgZGVzdHJveV9ub3RpZnlfcG9zID0gMi4xKV0gb3duZWQgQ2x1dHRlci5F dmVudEZpbHRlckZ1bmMgZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBz dGF0aWMgQ2x1dHRlci5FdmVudCBldmVudF9nZXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40Iild CisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGV2ZW50X3BlZWsgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZXZlbnRfcmVtb3Zl X2ZpbHRlciAodWludCBpZCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0 aWMgYm9vbCBldmVudHNfcGVuZGluZyAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIHN0YXRpYyBib29sIGdldF9hY2Nlc3NpYmlsaXR5X2VuYWJsZWQgKCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGdldF9j dXJyZW50X2V2ZW50ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGlj IHVpbnQzMiBnZXRfY3VycmVudF9ldmVudF90aW1lICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIp XQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CYWNrZW5kIGdldF9kZWZhdWx0X2Jh Y2tlbmQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBzdGF0aWMgdWludCBn ZXRfZGVmYXVsdF9mcmFtZV9yYXRlICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJs aWMgc3RhdGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRfZGVmYXVsdF90ZXh0X2RpcmVjdGlv biAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIFBh bmdvLkZvbnRNYXAgZ2V0X2ZvbnRfbWFwICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlw dWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91cCAoKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3VwIGdldF9v cHRpb25fZ3JvdXBfd2l0aG91dF9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlw dWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdldF9zY3JpcHRfaWQgKEdMaWIuT2JqZWN0IGdv YmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0IChbQ0NvZGUgKGFycmF5 X2xlbmd0aF9jbmFtZSA9ICJhcmdjIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSldIHJlZiB1bm93 bmVkIHN0cmluZ1tdPyBhcmd2KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0 YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0X3dpdGhfYXJncyAoW0NDb2RlIChhcnJheV9sZW5n dGhfY25hbWUgPSAiYXJnYyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUpXSByZWYgdW5vd25lZCBz dHJpbmdbXT8gYXJndiwgc3RyaW5nPyBwYXJhbWV0ZXJfc3RyaW5nLCBbQ0NvZGUgKGFycmF5X2xl bmd0aCA9IGZhbHNlKV0gR0xpYi5PcHRpb25FbnRyeVtdPyBlbnRyaWVzLCBzdHJpbmc/IHRyYW5z bGF0aW9uX2RvbWFpbikgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQzMiBrZXlz eW1fdG9fdW5pY29kZSAodWludCBrZXl2YWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJs aWMgc3RhdGljIGludCBtYWluX2xldmVsICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIG1haW5fcXVpdCAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfY3VzdG9tX2JhY2tlbmRfZnVuYyAodm9pZCogZnVuYyk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQgdW5pY29kZV90 b19rZXlzeW0gKHVpbnQzMiB3Yyk7CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNvZ2wt Ni1jdXN0b20udmFsYSBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYQorbmV3IGZpbGUg bW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5hMmMxMDY0NQorLS0tIC9kZXYvbnVsbAorKysr IGIvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhCitAQCAtMCwwICsxLDEyNSBAQAorK25h bWVzcGFjZSBDb2dsIHsKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRs ZSIpXQorKwlwdWJsaWMgY2xhc3MgQml0bWFwOiBIYW5kbGUgeworKwkJcHVibGljIHN0YXRpYyBC aXRtYXAgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5FcnJvcjsK KysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIildCisr CXB1YmxpYyBjbGFzcyBCdWZmZXI6IEhhbmRsZSB7CisrCQlwdWJsaWMgdWludCBnZXRfc2l6ZSAo KTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qgb2Zmc2V0LCBbQ0NvZGUgKGFycmF5 X2xlbmd0aF90eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRhdGEpOworKwkJcHVibGljIHZvaWQg dW5tYXAgKCk7CisrCX0KKysKKysJW0NDb2RlIChoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80ZiAoZmxvYXQgcmVkLCBm bG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJcHVibGljIENvbG9yLmZy b21fNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7 CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAocmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFu ZGxlX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3VucmVmIildCisrCXB1Ymxp YyBjbGFzcyBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1hcCIpXQor KwkJcHVibGljIGJvb2wgaXNfYml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lz X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjb2dsX2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlhbCAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1YmxpYyBib29s IGlzX29mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhlbF9idWZm ZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY29nbF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFtICgpOwor KwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJvb2wgaXNf c2hhZGVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0KKysJCXB1 YmxpYyBib29sIGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdmVy dGV4X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsKKysJfQor KworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0 aW9uID0gImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGF0 aCB7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsKKysJfQorKworKwlbQ29tcGFjdF0K KysJcHVibGljIGNsYXNzIFBpeGVsQnVmZmVyOiBIYW5kbGUgeworKwkJcHVibGljIFBpeGVsQnVm ZmVyICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVmZmVyLmZvcl9zaXplICh1aW50IHdp ZHRoLCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgc3RyaWRlKTsK KysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVm X2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3By b2dyYW1fdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFByb2dyYW06IEhhbmRsZSB7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3Byb2dyYW0iLCB0eXBlID0gIkNvZ2xIYW5kbGUqIiwg aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQcm9ncmFtICgpOwor KwkJcHVibGljIHZvaWQgYXR0YWNoX3NoYWRlciAoQ29nbC5TaGFkZXIgc2hhZGVyX2hhbmRsZSk7 CisrCQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1l KTsKKysJCXB1YmxpYyB2b2lkIGxpbmsgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9y bV8xZiAoaW50IHVuaWZvcm1fbm8sIGZsb2F0IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCB1bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9ubywgaW50IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0 aWMgdm9pZCB1bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAo YXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRp YyB2b2lkIHVuaWZvcm1faW50IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJy YXlfbGVuZ3RoX3BvcyA9IDIuOSldIGludFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCB1bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBib29sIHRyYW5zcG9z ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlw dWJsaWMgdm9pZCB1c2UgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUg PSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9yZWYiLCB1bnJlZl9m dW5jdGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyOiBI YW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9zaGFkZXIiLCB0eXBlID0g IkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1Ymxp YyBTaGFkZXIgKENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBj b21waWxlICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfaW5mb19sb2cgKCk7CisrCQlwdWJsaWMg Q29nbC5TaGFkZXJUeXBlIGdldF90eXBlICgpOworKwkJcHVibGljIGJvb2wgaXNfY29tcGlsZWQg KCk7CisrCQlwdWJsaWMgdm9pZCBzb3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwl9CisrCisrCVtD b21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAi Y29nbF92ZXJ0ZXhfYnVmZmVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1 ZmZlcl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVyOiBIYW5kbGUgeworKwkJ W0NDb2RlICh0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7CisrCQlwdWJs aWMgdm9pZCBhZGQgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25lbnRzLCBD b2dsLkF0dHJpYnV0ZVR5cGUgdHlwZSwgYm9vbCBub3JtYWxpemVkLCB1aW50MTYgc3RyaWRlLCB2 b2lkKiBwb2ludGVyKTsKKysJCXB1YmxpYyB2b2lkIGRlbGV0ZSAoc3RyaW5nIGF0dHJpYnV0ZV9u YW1lKTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7Cisr CQlwdWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBpbnQgZmlyc3QsIGlu dCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3X2VsZW1lbnRzIChDb2dsLlZlcnRpY2VzTW9k ZSBtb2RlLCBWZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgsIGludCBt YXhfaW5kZXgsIGludCBpbmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lk IGVuYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX3Zl cnRpY2VzICgpOworKwkJcHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCisrCVtDb21wYWN0 XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNzIFZlcnRl eEJ1ZmZlckluZGljZXM6IEhhbmRsZSB7CisrCQlwdWJsaWMgVmVydGV4QnVmZmVySW5kaWNlcyAo Q29nbC5JbmRpY2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQqIGluZGljZXNfYXJyYXksIGludCBp bmRpY2VzX2xlbik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ29nbC5WZXJ0ZXhCdWZmZXJJ bmRpY2VzIGdldF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2VzKTsKKysJCXB1YmxpYyBDb2dsLklu ZGljZXNUeXBlIGdldF90eXBlICgpOworKwl9CisrCisrCVtDQ29kZSAodHlwZV9pZCA9ICJDT0dM X1RZUEVfTUFUUklYIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJs aWMgc3RydWN0IE1hdHJpeCB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRf ZnJvbV9hcnJheSIsIGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9udWxsX3Rlcm1pbmF0ZWQg PSBmYWxzZSldCisrCQlwdWJsaWMgTWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UpXSBmbG9hdFtdIGFycmF5KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9t YXRyaXhfaW5pdF9pZGVudGl0eSIpXQorKwkJcHVibGljIE1hdHJpeC5pZGVudGl0eSAoKTsKKysJ CVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfbXVsdGlwbHkiKV0KKysJCXB1YmxpYyBNYXRy aXgubXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENvZ2wuTWF0cml4IGIpOworKwl9CisrCisrCVtT aW1wbGVUeXBlXQorKwlbR0lSIChuYW1lID0gIkJvb2wiKV0KKysJW0Jvb2xlYW5UeXBlXQorKwlw dWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKworKwlwdWJsaWMgc3RhdGljIEdMaWIu Q2FsbGJhY2sgZ2V0X3Byb2NfYWRkcmVzcyhzdHJpbmcgcyk7CisrfQorZGlmZiAtLWdpdCBhL3Zh cGkvbXV0dGVyLWNvZ2wtNi5kZXBzIGIvdmFwaS9tdXR0ZXItY29nbC02LmRlcHMKK25ldyBmaWxl IG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uOThjY2FjNWIKKy0tLSAvZGV2L251bGwKKysr KyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCitAQCAtMCwwICsxIEBACisrcGFuZ28KK2RpZmYg LS1naXQgYS92YXBpL211dHRlci1jb2dsLTYudmFwaSBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi52YXBp CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLmM5YWI1ZDU3CistLS0gL2Rl di9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYudmFwaQorQEAgLTAsMCArMSwxMDc3IEBA CisrLyogbXV0dGVyLWNvZ2wtNi52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9k aWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJDb2dsIiwgZ2lyX25hbWVzcGFjZSA9ICJD b2dsIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9ICJjb2dsXyIpXQor K25hbWVzcGFjZSBDb2dsIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHR5cGVfaWQgPSAiY29nbF9iaXRtYXBfZ2V0X2d0 eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgQml0bWFwIDogQ29nbC5IYW5k bGUgeworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3JfcXVhcmsgKCk7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2dsQml0bWFwKiIpXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEJpdG1hcC5mcm9tX2ZpbGUg KHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGl4ZWxGb3JtYXQgZ2V0X2Zvcm1hdCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9oZWlnaHQgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfcm93c3Ry aWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyBi b29sIGdldF9zaXplX2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBvdXQgaW50IHdpZHRoLCBv dXQgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGludCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgc3RhdGljIENvZ2wuQml0bWFwIG5ld19mcm9t X2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIp XQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJ1ZmZlciA6IENvZ2wuSGFuZGxlIHsKKysJ CXB1YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKHNpemVf dCBvZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5cGUgPSAic2l6ZV90IildIHVpbnQ4W10g ZGF0YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfY29udGV4dF9nZXRfZ3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIENvbnRleHQgOiBDb2dsLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ29udGV4 dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lX2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtD b21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgY2xhc3MgRnJh bWVDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAi Y29nbF9oYW5kbGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBIYW5kbGUg eworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1hcCIpXQorKwkJcHVibGljIGJvb2wg aXNfYml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2J1ZmZlciIpXQorKwkJ cHVibGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX21h dGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlhbCAoKTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1YmxpYyBib29sIGlzX29mZnNjcmVlbiAo KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhlbF9idWZmZXIiKV0KKysJCXB1Ymxp YyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19w cm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFtICgpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJvb2wgaXNfc2hhZGVyICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0KKysJCXB1YmxpYyBib29sIGlzX3Rl eHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdmVydGV4X2J1ZmZlciIpXQor KwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29w eSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX21hdGVy aWFsX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgTWF0ZXJpYWwg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJCXB1 YmxpYyBNYXRlcmlhbCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRf YWxwaGFfdGVzdF9mdW5jdGlvbiAoQ29nbC5NYXRlcmlhbEFscGhhRnVuYyBhbHBoYV9mdW5jLCBm bG9hdCBhbHBoYV9yZWZlcmVuY2UpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29s IHNldF9ibGVuZCAoc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsZW5kX2NvbnN0YW50IChDb2dsLkNv bG9yIGNvbnN0YW50X2NvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfY29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwg dWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXll ciAoaW50IGxheWVyX2luZGV4LCBDb2dsLkhhbmRsZSB0ZXh0dXJlKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfY29tYmluZSAoaW50IGxheWVyX2luZGV4LCBz dHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmluZV9jb25zdGFudCAoaW50IGxheWVyX2lu ZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJf ZmlsdGVycyAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdGVyaWFsRmlsdGVyIG1pbl9maWx0ZXIs IENvZ2wuTWF0ZXJpYWxGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIHNldF9sYXllcl9wb2ludF9zcHJpdGVfY29v cmRzX2VuYWJsZWQgKGludCBsYXllcl9pbmRleCwgYm9vbCBlbmFibGUpIHRocm93cyBHTGliLkVy cm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludF9zaXplIChm bG9hdCBwb2ludF9zaXplKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRf dXNlcl9wcm9ncmFtIChDb2dsLkhhbmRsZSBwcm9ncmFtKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbExheWVyIHsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfb2JqZWN0X2dl dF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPYmplY3Qg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlw ZV9pZCA9ICJjb2dsX29mZnNjcmVlbl9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE9m ZnNjcmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVmZmVyIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPZmZzY3JlZW4gKCk7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVi bGljIE9mZnNjcmVlbi50b190ZXh0dXJlIChDb2dsLlRleHR1cmUgdGV4dHVyZSk7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgT2Zmc2NyZWVu LndpdGhfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9vbnNjcmVlbl9n ZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuIDogQ29nbC5PYmplY3QsIENv Z2wuRnJhbWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIE9uc2NyZWVuICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTYiKV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuRGlydHlDbG9zdXJlIGFkZF9kaXJ0eV9jYWxs YmFjayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMS41KV0gQ29nbC5PbnNjcmVlbkRp cnR5Q2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFEZXN0cm95Q2FsbGJhY2s/IGRlc3Ry b3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuT25zY3Jl ZW5SZXNpemVDbG9zdXJlIGFkZF9yZXNpemVfY2FsbGJhY2sgKFtDQ29kZSAoZGVsZWdhdGVfdGFy Z2V0X3BvcyA9IDEuNSldIENvZ2wuT25zY3JlZW5SZXNpemVDYWxsYmFjayBjYWxsYmFjaywgQ29n bC5Vc2VyRGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xNCIpXQorKwkJcHVibGljIGludCBnZXRfYnVmZmVyX2FnZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgaW50NjQgZ2V0X2ZyYW1lX2NvdW50ZXIgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfcmVzaXph YmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgaGlk ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCByZW1v dmVfZGlydHlfY2FsbGJhY2sgKENvZ2wuT25zY3JlZW5EaXJ0eUNsb3N1cmUgY2xvc3VyZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2ZyYW1l X2NhbGxiYWNrIChDb2dsLkZyYW1lQ2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9yZXNpemVfY2FsbGJhY2sgKENvZ2wu T25zY3JlZW5SZXNpemVDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Jlc2l6YWJsZSAoYm9vbCByZXNpemFibGUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2hvdyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzd2FwX2J1ZmZlcnMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgc3dhcF9idWZm ZXJzX3dpdGhfZGFtYWdlIChpbnQgcmVjdGFuZ2xlcywgaW50IG5fcmVjdGFuZ2xlcyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc3dhcF9yZWdpb24gKGlu dCByZWN0YW5nbGVzLCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIs IGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX29uc2NyZWVu X2RpcnR5X2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW5EaXJ0eUNsb3N1cmUgewor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVu Y3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0 eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fcmVzaXplX2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisr CVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBjbGFzcyBP bnNjcmVlblJlc2l6ZUNsb3N1cmUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29nbF9wYXRoX2NvcHkiKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBAbmV3 ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5 cGVfaWQgPSAiY29nbF9waXBlbGluZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFBp cGVsaW5lIDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIFBpcGVs aW5lIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZSBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIHZvaWQgZm9yZWFjaF9sYXllciAoQ29nbC5QaXBlbGluZUxheWVy Q2FsbGJhY2sgY2FsbGJhY2spOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVi bGljIENvZ2wuUGlwZWxpbmVBbHBoYUZ1bmMgZ2V0X2FscGhhX3Rlc3RfZnVuY3Rpb24gKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FscGhhX3Rl c3RfcmVmZXJlbmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IENvZ2wuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgZ2V0X2N1bGxfZmFjZV9tb2RlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuV2luZGluZyBn ZXRfZnJvbnRfZmFjZV93aW5kaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9tYWdfZmlsdGVyIChpbnQg bGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBD b2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9taW5fZmlsdGVyIChpbnQgbGF5ZXJfaW5kZXgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2xheWVy X3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0 X2xheWVyX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBNb2RlIGdldF9sYXllcl93cmFwX21v ZGVfcyAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgZ2V0X2xheWVyX3dyYXBfbW9kZV90IChpbnQg bGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGlu dCBnZXRfbl9sYXllcnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJs aWMgYm9vbCBnZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9wb2ludF9zaXplICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2NhdGlvbiAo c3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdXNlcl9wcm9ncmFtICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9sYXllciAoaW50IGxh eWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9hbHBoYV90ZXN0X2Z1bmN0aW9uIChDb2dsLlBpcGVsaW5lQWxwaGFGdW5jIGFscGhhX2Z1 bmMsIGZsb2F0IGFscGhhX3JlZmVyZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBibGVuZF9zdHJpbmcpIHRocm93cyBH TGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2JsZW5kX2NvbnN0YW50IChDb2dsLkNvbG9yIGNvbnN0YW50X2NvbG9yKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ29nbC5Db2xv ciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfY29sb3I0ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxw aGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nv bG9yNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY3VsbF9m YWNlX21vZGUgKENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgY3VsbF9mYWNlX21vZGUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Zyb250X2ZhY2Vf d2luZGluZyAoQ29nbC5XaW5kaW5nIGZyb250X3dpbmRpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX2NvbWJpbmUgKGludCBsYXllcl9p bmRleCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmluZV9jb25z dGFudCAoaW50IGxheWVyX2luZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfZmlsdGVycyAoaW50 IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1pbl9maWx0ZXIsIENvZ2wuUGlwZWxp bmVGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdHJp eCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9sYXllcl9udWxsX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfcG9pbnRfc3ByaXRlX2Nv b3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgsIGJvb2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl90ZXh0dXJlIChpbnQgbGF5ZXJfaW5kZXgs IENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGUgKGludCBsYXllcl9pbmRleCwgQ29nbC5Q aXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2xheWVyX3dyYXBfbW9kZV9zIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wu UGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGVfdCAoaW50IGxheWVyX2luZGV4LCBDb2ds LlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgYm9vbCBzZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplIChib29sIGVuYWJsZSkgdGhy b3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg dm9pZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6ZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV8xZiAoaW50IHVuaWZvcm1f bG9jYXRpb24sIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF91bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IHZh bHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91 bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IG5fY29tcG9uZW50cywgaW50 IGNvdW50LCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9pbnQgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgbl9j b21wb25lbnRzLCBpbnQgY291bnQsIGludCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3JtX2xv Y2F0aW9uLCBpbnQgZGltZW5zaW9ucywgaW50IGNvdW50LCBib29sIHRyYW5zcG9zZSwgZmxvYXQg dmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3VzZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJvZ3JhbSk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xh c3MgUGl4ZWxCdWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIgKHVp bnQgc2l6ZSk7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIuZm9yX3NpemUgKHVpbnQgd2lkdGgsIHVp bnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCBzdHJpZGUpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xI YW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3JlZiIsIHVucmVmX2Z1bmN0aW9u ID0gImNvZ2xfcHJvZ3JhbV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBy b2dyYW0gOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3By b2dyYW0iLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRs ZSoiKV0KKysJCXB1YmxpYyBQcm9ncmFtICgpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX3NoYWRl ciAoQ29nbC5TaGFkZXIgc2hhZGVyX2hhbmRsZSk7CisrCQlwdWJsaWMgaW50IGdldF91bmlmb3Jt X2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGxpbmsgKCk7 CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xZiAoaW50IHVuaWZvcm1fbm8sIGZsb2F0 IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9u bywgaW50IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2Zsb2F0IChpbnQg dW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZs b2F0W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1faW50IChpbnQgdW5p Zm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGludFtd IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX21hdHJpeCAoaW50IHVuaWZv cm1fbm8sIGludCBzaXplLCBib29sIHRyYW5zcG9zZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9z ID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCB1c2UgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhh bmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9 ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNoYWRl ciA6IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfc2hhZGVy IiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNvZ2xIYW5kbGUqIild CisrCQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVi bGljIHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2luZm9fbG9nICgpOwor KwkJcHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAoKTsKKysJCXB1YmxpYyBib29sIGlz X2NvbXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNlIChzdHJpbmcgc291cmNlKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBsb3dlcl9jYXNl X2NzdWZmaXggPSAidGV4dHVyZV8yZCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlXzJkX2dldF9n dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZTJEIDogQ29nbC5PYmplY3QsIENvZ2wu VGV4dHVyZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgVGV4dHVyZTJEICgpOworKwkJcHVibGljIHZvaWQgZWdsX2ltYWdlX2V4dGVy bmFsX2FsbG9jX2ZpbmlzaCAodm9pZCogdXNlcl9kYXRhLCBHTGliLkRlc3Ryb3lOb3RpZnkgZGVz dHJveSk7CisrCQlwdWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0ZXJuYWxfYmluZCAoKTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkQuZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFw IGJpdG1hcCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmRfc2xpY2VkIiwgdHlwZV9pZCA9ICJj b2dsX3RleHR1cmVfMmRfc2xpY2VkX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4 dHVyZTJEU2xpY2VkIDogQ29nbC5PYmplY3QsIENvZ2wuVGV4dHVyZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVGV4dHVyZTJEU2xp Y2VkICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkRTbGljZWQuZnJv bV9iaXRtYXAgKENvZ2wuQml0bWFwIGJtcCwgaW50IG1heF93YXN0ZSk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIs IHJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24g PSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xh c3MgVmVydGV4QnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1YmxpYyBWZXJ0 ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7CisrCQlwdWJsaWMgdm9pZCBhZGQgKHN0cmluZyBh dHRyaWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25lbnRzLCBDb2dsLkF0dHJpYnV0ZVR5cGUgdHlw ZSwgYm9vbCBub3JtYWxpemVkLCB1aW50MTYgc3RyaWRlLCB2b2lkKiBwb2ludGVyKTsKKysJCXB1 YmxpYyB2b2lkIEBkZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9p ZCBkaXNhYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZHJhdyAo Q29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgaW50IGZpcnN0LCBpbnQgY291bnQpOworKwkJcHVibGlj IHZvaWQgZHJhd19lbGVtZW50cyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgQ29nbC5WZXJ0ZXhC dWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgsIGludCBtYXhfaW5kZXgsIGludCBp bmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGVuYWJsZSAoc3RyaW5n IGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX3ZlcnRpY2VzICgpOworKwkJ cHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJW0NvbXBhY3RdCisrCXB1 YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGlj IFZlcnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5cGUgaW5kaWNlc190eXBlLCB2b2lk KiBpbmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOworKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9yX3F1YWRzICh1aW50IG5faW5kaWNl cyk7CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRfdHlwZSAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfZnJh bWVidWZmZXJfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgRnJhbWVidWZmZXIg OiBDb2dsLk9iamVjdCB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg Ym9vbCBhbGxvY2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyICh1bG9uZyBidWZmZXJzLCBDb2dsLkNvbG9y IGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNs ZWFyNGYgKHVsb25nIGJ1ZmZlcnMsIGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUs IGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIGRpc2NhcmRfYnVmZmVycyAodWxvbmcgYnVmZmVycyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19tdWx0aXRleHR1cmVkX3JlY3RhbmdsZSAo Q29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwg ZmxvYXQgeV8yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSB0ZXhfY29v cmRzLCBpbnQgdGV4X2Nvb3Jkc19sZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBm bG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlcyAoQ29nbC5Q aXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10g Y29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3RleHR1cmVkX3JlY3RhbmdsZSAoQ29nbC5QaXBl bGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8y LCBmbG9hdCBzXzEsIGZsb2F0IHRfMSwgZmxvYXQgc18yLCBmbG9hdCB0XzIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfdGV4dHVyZWRfcmVjdGFu Z2xlcyAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldIGZsb2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJCXB1YmxpYyBz dGF0aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIGZpbmlzaCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBmcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxv YXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfYWxwaGFfYml0cyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2JsdWVfYml0 cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENv Z2wuQ29udGV4dCBnZXRfY29udGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyBpbnQgZ2V0X2RlcHRoX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2RlcHRoX3dyaXRlX2VuYWJsZWQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZGl0aGVyX2VuYWJs ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9n cmVlbl9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGlu dCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2lzX3N0ZXJlbyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5NYXRyaXggZ2V0X21vZGVs dmlld19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENvZ2wuTWF0cml4IGdldF9wcm9qZWN0aW9uX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlZF9iaXRzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3NhbXBsZXNfcGVyX3BpeGVsICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBDb2dsLlN0ZXJlb01v ZGUgZ2V0X3N0ZXJlb19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X3ZpZXdwb3J0NGZ2IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gb3V0IHVub3duZWQgZmxvYXQgdmlld3BvcnRbNF0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF9oZWlnaHQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X3dpZHRo ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92 aWV3cG9ydF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZs b2F0IGdldF92aWV3cG9ydF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIGludCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgaWRlbnRpdHlfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIG9ydGhvZ3JhcGhpYyAoZmxvYXQgeF8xLCBmbG9hdCB5 XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBuZWFyLCBmbG9hdCBmYXIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHBlcnNwZWN0aXZlIChmbG9h dCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwb3BfY2xpcCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwb3BfbWF0cml4ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1c2hfbWF0 cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1 c2hfcmVjdGFuZ2xlX2NsaXAgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0 IHlfMik7CisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlZ2lvbl9jbGlwIChDYWlyby5SZWdpb24gcmVn aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwdXNo X3NjaXNzb3JfY2xpcCAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIHJlYWRfcGl4ZWxzIChp bnQgeCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3Jt YXQsIHVpbnQ4IHBpeGVscyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGJvb2wgcmVhZF9waXhlbHNfaW50b19iaXRtYXAgKGludCB4LCBpbnQgeSwgQ29nbC5SZWFk UGl4ZWxzRmxhZ3Mgc291cmNlLCBDb2dsLkJpdG1hcCBiaXRtYXApOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2ZV9zYW1wbGVzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2ZV9zYW1wbGVzX3Jl Z2lvbiAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5nbGUsIGZs b2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxlciBldWxlcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0IHgs IGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9kZXB0aF93cml0ZV9lbmFibGVkIChib29sIGRlcHRoX3dyaXRlX2VuYWJs ZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Rp dGhlcl9lbmFibGVkIChib29sIGRpdGhlcl9lbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZWx2aWV3X21hdHJpeCAoQ29nbC5NYXRy aXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfcHJvamVjdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2FtcGxlc19wZXJfcGl4ZWwg KGludCBzYW1wbGVzX3Blcl9waXhlbCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3N0ZXJlb19tb2RlIChDb2dsLlN0ZXJlb01vZGUgc3RlcmVvX21v ZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Zp ZXdwb3J0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2Zvcm0gKENv Z2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xf dGV4dHVyZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBUZXh0dXJlIDogQ29n bC5PYmplY3QgeworKwkJcHVibGljIGJvb2wgYWxsb2NhdGUgKCkgdGhyb3dzIEdMaWIuRXJyb3I7 CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlQ29tcG9uZW50cyBnZXRfY29t cG9uZW50cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RhdGEgKENvZ2wuUGl4ZWxGb3JtYXQgZm9y bWF0LCB1aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZ2xf dGV4dHVyZSAob3V0IHVpbnQgb3V0X2dsX2hhbmRsZSwgb3V0IHVpbnQgb3V0X2dsX3RhcmdldCk7 CisrCQlwdWJsaWMgdWludCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGludCBnZXRfbWF4X3dh c3RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBib29sIGdl dF9wcmVtdWx0aXBsaWVkICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3dpZHRoICgpOworKwkJcHVi bGljIGJvb2wgaXNfc2xpY2VkICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFwLCBDb2ds LlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgi LCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9t X2RhdGEgKGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENv Z2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCwg aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBDb2ds LlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpIHRo cm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDb2dsLlRleHR1 cmUgbmV3X2Zyb21fc3ViX3RleHR1cmUgKGludCBzdWJfeCwgaW50IHN1Yl95LCBpbnQgc3ViX3dp ZHRoLCBpbnQgc3ViX2hlaWdodCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRp YyBDb2dsLlRleHR1cmUgbmV3X3dpdGhfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENv Z2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbXBv bmVudHMgKENvZ2wuVGV4dHVyZUNvbXBvbmVudHMgY29tcG9uZW50cyk7CisrCQlwdWJsaWMgYm9v bCBzZXRfZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIGludCByb3dzdHJpZGUsIHVpbnQ4 IGRhdGEsIGludCBsZXZlbCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZW11bHRpcGxpZWQgKGJvb2wgcHJlbXVs dGlwbGllZCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9uIChpbnQgc3JjX3gsIGludCBzcmNf eSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0X3dpZHRoLCB1aW50IGRzdF9oZWlnaHQs IGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgcm93 c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBib29sIHNldF9yZWdpb25fZnJvbV9iaXRtYXAgKGludCBzcmNfeCwgaW50IHNyY195LCBp bnQgZHN0X3gsIGludCBkc3RfeSwgdWludCBkc3Rfd2lkdGgsIHVpbnQgZHN0X2hlaWdodCwgQ29n bC5CaXRtYXAgYml0bWFwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1YmxpYyBzdHJ1Y3QgQW5nbGUgOiBpbnQz MiB7CisrCX0KKysJW0Jvb2xlYW5UeXBlXQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW0dJUiAobmFtZSA9ICJCb29sIildCisrCVtTaW1wbGVUeXBlXQor KwlwdWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsKKysJCXB1YmxpYyBDb2ds LkNvbG9yPyBjb3B5ICgpOworKwkJcHVibGljIENvbG9yLmZyb21fNGYgKGZsb2F0IHJlZCwgZmxv YXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCXB1YmxpYyBDb2xvci5mcm9t XzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOwor KwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRfYWxwaGFf Ynl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFfZmxvYXQgKCk7CisrCQlwdWJsaWMg ZmxvYXQgZ2V0X2JsdWUgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2JsdWVfYnl0ZSAoKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfYmx1ZV9mbG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZ3Jl ZW4gKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2dyZWVuX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxv YXQgZ2V0X2dyZWVuX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yZWQgKCk7CisrCQlw dWJsaWMgdWludDggZ2V0X3JlZF9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yZWRfZmxv YXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBpbml0 X2Zyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhh KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJv bV80ZnYgKGZsb2F0IGNvbG9yX2FycmF5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVp bnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyB2b2lkIHByZW11bHRpcGx5ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhIChm bG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfYWxwaGFfYnl0ZSAodWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2Zsb2F0IChmbG9hdCBhbHBoYSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1ZSAoZmxvYXQg Ymx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRf Ymx1ZV9ieXRlICh1aW50OCBibHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9ibHVlX2Zsb2F0IChmbG9hdCBibHVlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbiAoZmxvYXQgZ3JlZW4pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2dyZWVuX2J5 dGUgKHVpbnQ4IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9ncmVlbl9mbG9hdCAoZmxvYXQgZ3JlZW4pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZCAoZmxvYXQgcmVkKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWRfYnl0ZSAodWludDgg cmVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9y ZWRfZmxvYXQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJ cHVibGljIHZvaWQgdG9faHNsIChvdXQgZmxvYXQgaHVlLCBvdXQgZmxvYXQgc2F0dXJhdGlvbiwg b3V0IGZsb2F0IGx1bWluYW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCB1bnByZW11bHRpcGx5ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdHJ1Y3QgRGVidWdPYmplY3RUeXBlSW5mbyB7Cisr CQlwdWJsaWMgd2VhayBzdHJpbmcgbmFtZTsKKysJCXB1YmxpYyB1bG9uZyBpbnN0YW5jZV9jb3Vu dDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5 X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVl IiwgdHlwZV9pZCA9ICJDT0dMX1RZUEVfTUFUUklYIildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4 IHsKKysJCXB1YmxpYyBmbG9hdCB4eDsKKysJCXB1YmxpYyBmbG9hdCB5eDsKKysJCXB1YmxpYyBm bG9hdCB6eDsKKysJCXB1YmxpYyBmbG9hdCB3eDsKKysJCXB1YmxpYyBmbG9hdCB4eTsKKysJCXB1 YmxpYyBmbG9hdCB5eTsKKysJCXB1YmxpYyBmbG9hdCB6eTsKKysJCXB1YmxpYyBmbG9hdCB3eTsK KysJCXB1YmxpYyBmbG9hdCB4ejsKKysJCXB1YmxpYyBmbG9hdCB5ejsKKysJCXB1YmxpYyBmbG9h dCB6ejsKKysJCXB1YmxpYyBmbG9hdCB3ejsKKysJCXB1YmxpYyBmbG9hdCB4dzsKKysJCXB1Ymxp YyBmbG9hdCB5dzsKKysJCXB1YmxpYyBmbG9hdCB6dzsKKysJCXB1YmxpYyBmbG9hdCB3dzsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeD8gY29weSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7 CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9udWxsX3Rlcm1pbmF0ZWQg PSBmYWxzZSwgY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9mcm9tX2FycmF5IildCisrCQlwdWJs aWMgTWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9h dFtdIGFycmF5KTsKKysJCXB1YmxpYyB2b2lkIGZydXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJp Z2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7 CisrCQlwdWJsaWMgdW5vd25lZCBmbG9hdFtdIGdldF9hcnJheSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9pbnZlcnNlIChvdXQgQ29nbC5NYXRy aXggaW52ZXJzZSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRfaWRlbnRp dHkiKV0KKysJCXB1YmxpYyBNYXRyaXguaWRlbnRpdHkgKCk7CisrCQlwdWJsaWMgdm9pZCBpbml0 X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfdHJhbnNsYXRpb24gKGZsb2F0IHR4LCBmbG9h dCB0eSwgZmxvYXQgdHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IGJvb2wgaXNfaWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCBsb29rX2F0IChmbG9hdCBleWVfcG9zaXRpb25feCwgZmxvYXQgZXllX3Bvc2l0 aW9uX3ksIGZsb2F0IGV5ZV9wb3NpdGlvbl96LCBmbG9hdCBvYmplY3RfeCwgZmxvYXQgb2JqZWN0 X3ksIGZsb2F0IG9iamVjdF96LCBmbG9hdCB3b3JsZF91cF94LCBmbG9hdCB3b3JsZF91cF95LCBm bG9hdCB3b3JsZF91cF96KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfbXVsdGlw bHkiKV0KKysJCXB1YmxpYyBNYXRyaXgubXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENvZ2wuTWF0 cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIG9y dGhvZ3JhcGhpYyAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBm bG9hdCBuZWFyLCBmbG9hdCBmYXIpOworKwkJcHVibGljIHZvaWQgcGVyc3BlY3RpdmUgKGZsb2F0 IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJcHVi bGljIHZvaWQgcHJvamVjdF9wb2ludHMgKGludCBuX2NvbXBvbmVudHMsIHNpemVfdCBzdHJpZGVf aW4sIHZvaWQqIHBvaW50c19pbiwgc2l6ZV90IHN0cmlkZV9vdXQsIHZvaWQqIHBvaW50c19vdXQs IGludCBuX3BvaW50cyk7CisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZsb2F0IGFuZ2xlLCBmbG9h dCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZXVsZXIpOworKwkJcHVi bGljIHZvaWQgc2NhbGUgKGZsb2F0IHN4LCBmbG9hdCBzeSwgZmxvYXQgc3opOworKwkJcHVibGlj IHN0YXRpYyB2b2lkIHRyYW5zZm9ybV9wb2ludCAocmVmIENvZ2wuTWF0cml4IG1hdHJpeCwgcmVm IGZsb2F0IHgsIHJlZiBmbG9hdCB5LCByZWYgZmxvYXQgeiwgcmVmIGZsb2F0IHcpOworKwkJcHVi bGljIHZvaWQgdHJhbnNmb3JtX3BvaW50cyAoaW50IG5fY29tcG9uZW50cywgc2l6ZV90IHN0cmlk ZV9pbiwgdm9pZCogcG9pbnRzX2luLCBzaXplX3Qgc3RyaWRlX291dCwgdm9pZCogcG9pbnRzX291 dCwgaW50IG5fcG9pbnRzKTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoZmxvYXQgeCwgZmxv YXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIHZvaWQgdmlld18yZF9pbl9mcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxv YXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel8yZCwgZmxvYXQgd2lk dGhfMmQsIGZsb2F0IGhlaWdodF8yZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgdm9pZCB2aWV3XzJkX2luX3BlcnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwgZmxvYXQg YXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfMmQsIGZsb2F0IHdpZHRoXzJkLCBmbG9hdCBo ZWlnaHRfMmQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQor KwlwdWJsaWMgc3RydWN0IE9uc2NyZWVuRGlydHlJbmZvIHsKKysJCXB1YmxpYyBpbnQgeDsKKysJ CXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7CisrCQlwdWJsaWMgaW50IGhlaWdo dDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBUZXh0dXJlVmVydGV4IHsKKysJCXB1 YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMgZmxvYXQgejsKKysJ CXB1YmxpYyBmbG9hdCB0eDsKKysJCXB1YmxpYyBmbG9hdCB0eTsKKysJCXB1YmxpYyBDb2dsLkNv bG9yIGNvbG9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBzdHJ1Y3QgVXNlckRhdGFLZXkgeworKwkJcHVibGljIGludCB1bnVzZWQ7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0Nv Z2xDb2xvclNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0 IF9Db2xvclNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJ CXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xDb2xvcl9zaXplOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g Il9Db2dsTWF0cml4U2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBz dHJ1Y3QgX01hdHJpeFNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xNYXRyaXhf c2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj bmFtZSA9ICJfQ29nbFRleHR1cmVWZXJ0ZXhTaXplQ2hlY2siLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIHN0cnVjdCBfVGV4dHVyZVZlcnRleFNpemVDaGVjayB7CisrCQlbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3Rp bWVfYXNzZXJ0X0NvZ2xUZXh0dXJlVmVydGV4X3NpemU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0FUVFJJQlVURV9UWVBF XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBlbnVtIEF0dHJpYnV0ZVR5cGUgeworKwkJQllURSwKKysJCVVOU0lHTkVEX0JZVEUs CisrCQlTSE9SVCwKKysJCVVOU0lHTkVEX1NIT1JULAorKwkJRkxPQVQKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQklUTUFQ X0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBlbnVtIEJpdG1hcEVycm9yIHsKKysJCUZBSUxFRCwKKysJCVVOS05PV05f VFlQRSwKKysJCUNPUlJVUFRfSU1BR0UKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQkxFTkRfU1RSSU5HX0VSUk9SXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBlbnVtIEJsZW5kU3RyaW5nRXJyb3IgeworKwkJUEFSU0VfRVJST1IsCisrCQlBUkdVTUVOVF9Q QVJTRV9FUlJPUiwKKysJCUlOVkFMSURfRVJST1IsCisrCQlHUFVfVU5TVVBQT1JURURfRVJST1I7 CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQlVGRkVSX0JJVF8i LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlckJpdCB7CisrCQlDT0xPUiwKKysJCURFUFRILAor KwkJU1RFTkNJTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNwcmVmaXggPSAiQ09HTF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlclRhcmdldCB7 CisrCQlXSU5ET1dfQlVGRkVSLAorKwkJT0ZGU0NSRUVOX0JVRkZFUgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9ERVBUSF9U RVNUX0ZVTkNUSU9OXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBEZXB0 aFRlc3RGdW5jdGlvbiB7CisrCQlORVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJCUxFUVVB TCwKKysJCUdSRUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZUworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAi Q09HTF9FR0xfSU1BR0VfRkxBR18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQor KwlwdWJsaWMgZW51bSBFZ2xJbWFnZUZsYWdzIHsKKysJCU5PTkUsCisrCQlOT19HRVRfREFUQQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9GRUFUVVJFX0lEXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBGZWF0dXJlSUQgeworKwkJW0NDb2RlIChj bmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVU5TSUdORURfSU5UX0lORElDRVMiKV0KKysJCU9HTF9G RUFUVVJFX0lEX1VOU0lHTkVEX0lOVF9JTkRJQ0VTLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dM X0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfUkVBRCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfTUFQ X0JVRkZFUl9GT1JfUkVBRCwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX01B UF9CVUZGRVJfRk9SX1dSSVRFIildCisrCQlPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9X UklURSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1NXQVBfQlVGRkVSU19F VkVOVCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfU1dBUF9CVUZGRVJTX0VWRU5ULAorKwkJW0NDb2Rl IChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfUFJFU0VOVEFUSU9OX1RJTUUiKV0KKysJCU9HTF9G RUFUVVJFX0lEX1BSRVNFTlRBVElPTl9USU1FLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZF QVRVUkVfSURfRkVOQ0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0ZFTkNFLAorKwkJW0NDb2RlIChj bmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9SRyIpXQorKwkJT0dMX0ZFQVRVUkVfSURf VEVYVFVSRV9SRywKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX0JVRkZFUl9B R0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0JVRkZFUl9BR0UsCisrCQlbQ0NvZGUgKGNuYW1lID0g IkNPR0xfRkVBVFVSRV9JRF9URVhUVVJFX0VHTF9JTUFHRV9FWFRFUk5BTCIpXQorKwkJT0dMX0ZF QVRVUkVfSURfVEVYVFVSRV9FR0xfSU1BR0VfRVhURVJOQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRklMVEVSXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBGaWx0ZXJSZXR1cm4geworKwkJQ09O VElOVUUsCisrCQlSRU1PVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRlJBTUVfRVZFTlRfIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBlbnVtIEZyYW1l RXZlbnQgeworKwkJU1lOQywKKysJCUNPTVBMRVRFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZSQU1FQlVGRkVSX0VSUk9S XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBGcmFtZWJ1ZmZlckVycm9y IHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GUkFNRUJVRkZFUl9FUlJPUl9BTExPQ0FURSIp XQorKwkJRlJBTUVCVUZGRVJfRVJST1JfQUxMT0NBVEU7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQz MiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfR1JBUEhJQ1NfUkVTRVRfU1RBVFVTXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBHcmFwaGljc1Jlc2V0U3RhdHVzIHsKKysJCU5PX0VS Uk9SLAorKwkJR1VJTFRZX0NPTlRFWFRfUkVTRVQsCisrCQlJTk5PQ0VOVF9DT05URVhUX1JFU0VU LAorKwkJVU5LTk9XTl9DT05URVhUX1JFU0VULAorKwkJUFVSR0VEX0NPTlRFWFRfUkVTRVQKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0g IkNPR0xfSU5ESUNFU19UWVBFX1VOU0lHTkVEXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlw dWJsaWMgZW51bSBJbmRpY2VzVHlwZSB7CisrCQlCWVRFLAorKwkJU0hPUlQsCisrCQlJTlQKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0g IkNPR0xfTUFURVJJQUxfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIGVudW0gTWF0ZXJpYWxBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJRVFV QUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUwsCisr CQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfRklMVEVSXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbEZpbHRlciB7CisrCQlORUFSRVNULAorKwkJTElORUFS LAorKwkJTkVBUkVTVF9NSVBNQVBfTkVBUkVTVCwKKysJCUxJTkVBUl9NSVBNQVBfTkVBUkVTVCwK KysJCU5FQVJFU1RfTUlQTUFQX0xJTkVBUiwKKysJCUxJTkVBUl9NSVBNQVBfTElORUFSCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJD T0dMX01BVEVSSUFMX1dSQVBfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbFdyYXBNb2RlIHsKKysJ CVJFUEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRPTUFUSUMKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUElQRUxJ TkVfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlw ZWxpbmVBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJRVFVQUwsCisrCQlMRVFV QUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUwsCisrCQlBTFdBWVMKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0g IkNPR0xfUElQRUxJTkVfQ1VMTF9GQUNFX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CXB1YmxpYyBlbnVtIFBpcGVsaW5lQ3VsbEZhY2VNb2RlIHsKKysJCU5PTkUsCisrCQlGUk9OVCwK KysJCUJBQ0ssCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0ZJTFRFUl8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVGaWx0ZXIgeworKwkJTkVBUkVTVCwK KysJCUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJFU1QsCisrCQlMSU5FQVJfTUlQTUFQ X05FQVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIsCisrCQlMSU5FQVJfTUlQTUFQX0xJ TkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9QSVBFTElORV9XUkFQX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVXcmFw TW9kZSB7CisrCQlSRVBFQVQsCisrCQlNSVJST1JFRF9SRVBFQVQsCisrCQlDTEFNUF9UT19FREdF LAorKwkJQVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJWEVMX0ZPUk1BVF8iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBl bnVtIFBpeGVsRm9ybWF0IHsKKysJCUFOWSwKKysJCUFfOCwKKysJCVJHQl81NjUsCisrCQlSR0JB XzQ0NDQsCisrCQlSR0JBXzU1NTEsCisrCQlZVVYsCisrCQlHXzgsCisrCQlSR184OCwKKysJCVJH Ql84ODgsCisrCQlCR1JfODg4LAorKwkJUkdCQV84ODg4LAorKwkJQkdSQV84ODg4LAorKwkJQVJH Ql84ODg4LAorKwkJQUJHUl84ODg4LAorKwkJUkdCQV8xMDEwMTAyLAorKwkJQkdSQV8xMDEwMTAy LAorKwkJQVJHQl8yMTAxMDEwLAorKwkJQUJHUl8yMTAxMDEwLAorKwkJUkdCQV84ODg4X1BSRSwK KysJCUJHUkFfODg4OF9QUkUsCisrCQlBUkdCXzg4ODhfUFJFLAorKwkJQUJHUl84ODg4X1BSRSwK KysJCVJHQkFfNDQ0NF9QUkUsCisrCQlSR0JBXzU1NTFfUFJFLAorKwkJUkdCQV8xMDEwMTAyX1BS RSwKKysJCUJHUkFfMTAxMDEwMl9QUkUsCisrCQlBUkdCXzIxMDEwMTBfUFJFLAorKwkJQUJHUl8y MTAxMDEwX1BSRSwKKysJCURFUFRIXzE2LAorKwkJREVQVEhfMzIsCisrCQlERVBUSF8yNF9TVEVO Q0lMXzg7CisrCQlwdWJsaWMgaW50IGdldF9ieXRlc19wZXJfcGl4ZWwgKGludCBwbGFuZSk7Cisr CQlwdWJsaWMgaW50IGdldF9uX3BsYW5lcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyB0 b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY3ByZWZpeCA9ICJDT0dMX1JFQURfUElYRUxTX0NPTE9SXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IGVudW0gUmVhZFBpeGVsc0ZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9SRUFEX1BJ WEVMU19DT0xPUl9CVUZGRVIiKV0KKysJCVJFQURfUElYRUxTX0NPTE9SX0JVRkZFUgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09H TF9SRU5ERVJFUl9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0g UmVuZGVyZXJFcnJvciB7CisrCQlYTElCX0RJU1BMQVlfT1BFTiwKKysJCUJBRF9DT05TVFJBSU5U CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZp eCA9ICJDT0dMX1NIQURFUl9UWVBFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJVkVSVEVY LAorKwkJRlJBR01FTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU1RFUkVPXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlwdWJsaWMgZW51bSBTdGVyZW9Nb2RlIHsKKysJCUJPVEgsCisrCQlMRUZULAorKwkJUklHSFQK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfU1lTVEVNX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIFN5c3RlbUVycm9yIHsKKysJCVVOU1VQ UE9SVEVELAorKwkJTk9fTUVNT1JZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfQ09NUE9ORU5UU18iLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGlj IGVudW0gVGV4dHVyZUNvbXBvbmVudHMgeworKwkJQSwKKysJCVJHLAorKwkJUkdCLAorKwkJUkdC QSwKKysJCURFUFRICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUVy cm9yIHsKKysJCVNJWkUsCisrCQlGT1JNQVQsCisrCQlCQURfUEFSQU1FVEVSLAorKwkJVFlQRTsK KysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9URVhUVVJFXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIGVudW0gVGV4dHVyZUZsYWdzIHsKKysJCU5PTkUsCisrCQlOT19BVVRPX01J UE1BUCwKKysJCU5PX1NMSUNJTkcsCisrCQlOT19BVExBUworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9WRVJUSUNFU19NT0RF XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBlbnVtIFZlcnRpY2VzTW9kZSB7CisrCQlQT0lOVFMsCisrCQlMSU5FUywKKysJCUxJ TkVfTE9PUCwKKysJCUxJTkVfU1RSSVAsCisrCQlUUklBTkdMRVMsCisrCQlUUklBTkdMRV9TVFJJ UCwKKysJCVRSSUFOR0xFX0ZBTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5ESU5HXyIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlwdWJsaWMgZW51bSBXaW5kaW5nIHsKKysJCUNMT0NLV0lTRSwKKysJCUNPVU5URVJf Q0xPQ0tXSVNFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX1dJTlNZU19GRUFUVVJFXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgZW51bSBXaW5zeXNGZWF0dXJlIHsKKysJCU1VTFRJUExFX09OU0NSRUVOLAor KwkJU1dBUF9USFJPVFRMRSwKKysJCVZCTEFOS19DT1VOVEVSLAorKwkJVkJMQU5LX1dBSVQsCisr CQlURVhUVVJFX0ZST01fUElYTUFQLAorKwkJU1dBUF9CVUZGRVJTX0VWRU5ULAorKwkJU1dBUF9S RUdJT04sCisrCQlTV0FQX1JFR0lPTl9USFJPVFRMRSwKKysJCVNXQVBfUkVHSU9OX1NZTkNIUk9O SVpFRCwKKysJCUJVRkZFUl9BR0UsCisrCQlTWU5DX0FORF9DT01QTEVURV9FVkVOVCwKKysJCU5f RkVBVFVSRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1 YmxpYyBkZWxlZ2F0ZSB2b2lkIERlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayAoQ29nbC5E ZWJ1Z09iamVjdFR5cGVJbmZvIGluZm8pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC4xMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBGZWF0dXJlQ2FsbGJhY2sgKENvZ2wuRmVh dHVyZUlEIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQor KwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlbkRpcnR5Q2FsbGJhY2sgKENvZ2wuT25zY3Jl ZW4gb25zY3JlZW4sIENvZ2wuT25zY3JlZW5EaXJ0eUluZm8gaW5mbyk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDMuOSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgT25zY3JlZW5S ZXNpemVDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbiwgaW50IHdpZHRoLCBpbnQgaGVp Z2h0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFu Y2VfcG9zID0gMi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMgZGVs ZWdhdGUgYm9vbCBQaXBlbGluZUxheWVyQ2FsbGJhY2sgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUs IGludCBsYXllcl9pbmRleCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFRleHR1 cmUyREVHTEltYWdlRXh0ZXJuYWxBbGxvYyAoQ29nbC5UZXh0dXJlMkQgdGV4XzJkKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg aGFzX3RhcmdldCA9IGZhbHNlKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgVXNlckRhdGFEZXN0 cm95Q2FsbGJhY2sgKHZvaWQqIGRhdGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FGSVJTVF9CSVQiKV0KKysJcHVibGljIGNvbnN0 IGludCBBRklSU1RfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjbmFtZSA9ICJDT0dMX0FfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgQV9CSVQ7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xf QkdSX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEJHUl9CSVQ7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfREVQVEhfQklUIildCisr CXB1YmxpYyBjb25zdCBpbnQgREVQVEhfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1BJWEVMX0ZPUk1BVF9NQVhfUExBTkVTIild CisrCXB1YmxpYyBjb25zdCBpbnQgUElYRUxfRk9STUFUX01BWF9QTEFORVM7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfUFJFTVVMVF9C SVQiKV0KKysJcHVibGljIGNvbnN0IGludCBQUkVNVUxUX0JJVDsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9TVEVOQ0lMX0JJVCIpXQor KwlwdWJsaWMgY29uc3QgaW50IFNURU5DSUxfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1RFWFRVUkVfTUFYX1dBU1RFIildCisr CXB1YmxpYyBjb25zdCBpbnQgVEVYVFVSRV9NQVhfV0FTVEU7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgYmxpdF9mcmFt ZWJ1ZmZlciAoQ29nbC5GcmFtZWJ1ZmZlciBzcmMsIENvZ2wuRnJhbWVidWZmZXIgZGVzdCwgaW50 IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCBpbnQgd2lkdGgsIGludCBo ZWlnaHQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNsdXR0ZXJfd2luc3lzX2hhc19m ZWF0dXJlX0NMVVRURVIgKENvZ2wuV2luc3lzRmVhdHVyZSBmZWF0dXJlKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2VxdWFsICh2b2lkKiB2MSwgdm9pZCog djIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNvbG9yX2luaXRf ZnJvbV9oc2wgKG91dCBDb2dsLkNvbG9yIGNvbG9yLCBmbG9hdCBodWUsIGZsb2F0IHNhdHVyYXRp b24sIGZsb2F0IGx1bWluYW5jZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBzdGF0aWMg dm9pZCBkZWJ1Z19tYXRyaXhfcHJpbnQgKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19vYmplY3RfZm9yZWFjaF90eXBlIChD b2dsLkRlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayBmdW5jKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX29iamVjdF9wcmludF9pbnN0YW5jZXMgKCk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBmbHVzaCAoKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBmb3JlYWNoX2ZlYXR1cmUgKENvZ2wu Q29udGV4dCBjb250ZXh0LCBDb2dsLkZlYXR1cmVDYWxsYmFjayBjYWxsYmFjayk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgZ2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0Iild CisrCXB1YmxpYyBzdGF0aWMgaW50NjQgZ2V0X2Nsb2NrX3RpbWUgKENvZ2wuQ29udGV4dCBjb250 ZXh0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisr CXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfZGVwdGhfdGVzdF9lbmFibGVkICgpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBDb2ds LkdyYXBoaWNzUmVzZXRTdGF0dXMgZ2V0X2dyYXBoaWNzX3Jlc2V0X3N0YXR1cyAoQ29nbC5Db250 ZXh0IGNvbnRleHQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3VwIGdl dF9vcHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuQ2FsbGJhY2sgZ2V0X3Byb2NfYWRkcmVzcyAo c3RyaW5nIHMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgi KV0KKysJcHVibGljIHN0YXRpYyBHTGliLlR5cGUgZ3R5cGVfbWF0cml4X2dldF90eXBlICgpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGhhc19mZWF0dXJlIChDb2ds LkNvbnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJlSUQgZmVhdHVyZSk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfY29udGV4dCAodm9pZCogb2JqZWN0KTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19mcmFtZWJ1ZmZlciAodm9p ZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19v bnNjcmVlbiAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIHN0YXRp YyBib29sIGlzX3BpcGVsaW5lICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3RleHR1cmVf MmQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJv b2wgaXNfdGV4dHVyZV8yZF9zbGljZWQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCXB1YmxpYyBzdGF0aWMgYm9vbCBtYXRyaXhfZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgc2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAoYm9vbCBzZXR0aW5n KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCBzZXRfZGVwdGhfdGVzdF9lbmFibGVkIChib29sIHNldHRpbmcpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGlj IHN0YXRpYyB2b2lkIHNoYWRlcl9jb21waWxlIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRp YyBzdHJpbmcgc2hhZGVyX2dldF9pbmZvX2xvZyAoQ29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0 aWMgQ29nbC5TaGFkZXJUeXBlIHNoYWRlcl9nZXRfdHlwZSAoQ29nbC5IYW5kbGUgaGFuZGxlKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1Ymxp YyBzdGF0aWMgYm9vbCBzaGFkZXJfaXNfY29tcGlsZWQgKENvZ2wuSGFuZGxlIGhhbmRsZSk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgc2hhZGVyX3NvdXJjZSAoQ29nbC5IYW5kbGUgc2hhZGVyLCBzdHJpbmcgc291 cmNlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X2Zy b21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBD b2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGlj IENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2RhdGEgKGludCB3aWR0aCwgaW50IGhlaWdo dCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBDb2ds LlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0g IjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2Zp bGUgKHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxG b3JtYXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCXB1Ymxp YyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X3dpdGhfc2l6ZSAodWludCB3aWR0aCwg dWludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGlu dGVybmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQz MiB4MTFfb25zY3JlZW5fZ2V0X3dpbmRvd194aWQgKENvZ2wuT25zY3JlZW4gb25zY3JlZW4pOwor K30KKy0tIAorMi4yNS4wCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVt cGxhdGUgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCmluZGV4IGIzMmU3NzM0ZDNi Li4xODBjZGMwMmYxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCkBAIC0xLDIxICsxLDIyIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdidWRnaWUtZGVza3RvcCcKIHBrZ25hbWU9YnVkZ2llLWRl c2t0b3AKIHZlcnNpb249MTAuNS4xCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHls ZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29uZmlndXJlX2FyZ3M9Ii1Ed2l0aC1ndGstZG9j PWZhbHNlIC1Ed2l0aC1kZXNrdG9wLWljb25zPW5vbmUiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1j b25maWcgaW50bHRvb2wgdmFsYSBnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBzYXNz YyIKIG1ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBsaWJub3RpZnktZGV2ZWwgYWNjb3VudHNz ZXJ2aWNlLWRldmVsIGxpYnBlYXMtZGV2ZWwgbGlid25jay1kZXZlbAotbXV0dGVyLWRldmVsIGli dXMtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIHVwb3dlci1kZXZl bCBndGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKLWdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1t ZW51cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwgdmFsYSBsaWJ1dWlkLWRldmVs IGxpYnVwb3dlci1nbGliMyIKLWRlcGVuZHM9Imdub21lLXNlc3Npb24gZ25vbWUtc2V0dGluZ3Mt ZGFlbW9uIGdub21lLWNvbnRyb2wtY2VudGVyIGVsb2dpbmQiCisgbXV0dGVyLWRldmVsIGlidXMt ZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIHVwb3dlci1kZXZlbCBn dGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKKyBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtbWVu dXMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIHZhbGEgbGlidXVpZC1kZXZlbCBs aWJ1cG93ZXItZ2xpYjMiCitkZXBlbmRzPSJnbm9tZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRh ZW1vbiBnbm9tZS1jb250cm9sLWNlbnRlciBnbm9tZS10aGVtZXMtZXh0cmEgZWxvZ2luZCIKIHNo b3J0X2Rlc2M9Ik1vZGVybiBkZXNrdG9wIGVudmlyb25tZW50IGZyb20gdGhlIFNvbHVzIFByb2pl Y3QiCiBtYWludGFpbmVyPSJMb3JlbSA8bm90bG9yZW1pcHN1bUBwcm90b25tYWlsLmNvbT4iCiBs aWNlbnNlPSJHUEwtMi4wLW9ubHksIExHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly9n aXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3AiCiBkaXN0ZmlsZXM9Imh0dHBz Oi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9wL3JlbGVhc2VzL2Rvd25s b2FkL3Yke3ZlcnNpb259L2J1ZGdpZS1kZXNrdG9wLSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tz dW09ZDAzNWVjNzY0ZTAwOTM3MjJhODMyNDExYWViNmFiYTI5NmMwOTk1ZDkyN2VhMDY5YjIwNWIx OWM4NWFhZTU2NQorcGF0Y2hfYXJncz0iLU5wMSIKIAogcHJlX2NvbmZpZ3VyZSgpIHsKIAl2c2Vk IC1pICdzL2V4ZWMgZ25vbWUtc2Vzc2lvbi9leGVjIGdub21lLXNlc3Npb24gLS1idWlsdGluLycg c3JjL3Nlc3Npb24vYnVkZ2llLWRlc2t0b3AuaW4KCkZyb20gYTQwNjljODUyM2FkNTZjMTY2ZjM1 MzBlYTNlODNjNDZmMjgzMTQzOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAxMzo0NjoxNiAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggNDIvNTFdIHhkZy1kZXNrdG9wLXBvcnRhbC1ndGs6IHJlYnVp bGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MveGRnLWRl c2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3At cG9ydGFsLWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1w bGF0ZQppbmRleCBkZWUwZTQ2MzM4Ni4uNTU4Yzc1ZjUzOWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv eGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hkZy1kZXNrdG9w LXBvcnRhbC1ndGsvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICd4ZGctZGVza3RvcC1wb3J0YWwtZ3RrJwogcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0YWwtZ3Rr CiB2ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUt Y29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgbGlieHNsdCBnbGliLWRldmVs IHhkZy1kZXNrdG9wLXBvcnRhbCBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9ImZsYXRwYWstZGV2ZWwg Z3RrKzMtZGV2ZWwgbGlieHNsdC1kZXZlbCBsaWJnbGliLWRldmVsCgpGcm9tIDQ0NzEzYjMzMjRm YTMxNmQzMTIyYmI4YjBmNTFlODFkYzcwN2MyODcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAg MDI6NDk6MTMgKzA2MDAKU3ViamVjdDogW1BBVENIIDQzLzUxXSBjaGVlc2U6IHJlYnVpbGQgYWdh aW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9jaGVlc2UvdGVtcGxh dGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2hlZXNlL3Rl bXBsYXRlCmluZGV4IDdhNTZiYTAzOWZiLi4wMzdjZGE0OWM5OCAxMDA2NDQKLS0tIGEvc3JjcGtn cy9jaGVlc2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjaGVlc2UnCiBwa2duYW1lPWNoZWVzZQogdmVy c2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBi dWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGd0a19kb2M9JCh2b3B0X2lmIGd0 a19kb2MgJ3RydWUnICdmYWxzZScpCgpGcm9tIGFiZjI3YThlMzA2NzU2MjU1Y2JjMjFhOWI5NWU4 MDU3YjE0ZTZkNzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6MzQ6NTQgKzA2MDAKU3Vi amVjdDogW1BBVENIIDQ0LzUxXSBnbm9tZS1ib29rczogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21l LWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtYm9va3Mv dGVtcGxhdGUKaW5kZXggMTE0YjllMDM0YzIuLjFkNDk3NGZlMTgzIDEwMDY0NAotLS0gYS9zcmNw a2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1ib29rcycKIHBr Z25hbWU9Z25vbWUtYm9va3MKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgdmFsYSBnbGliLWRldmVsIGxpYnJzdmcgZG9jYm9vay14c2wgbGlieHNsdAoK RnJvbSBmMzUxMDc1ZTNhN2VmZWU0MmJhZDI2MmQ2ZWE3ZDBkN2ZhYTQ4MDdiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBU aHUsIDMwIEFwciAyMDIwIDAyOjQ3OjMxICswNjAwClN1YmplY3Q6IFtQQVRDSCA0NS81MV0gZ25v bWUtY2hhcmFjdGVyczogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkK Ci0tLQogc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3Rl bXBsYXRlCmluZGV4IDg5ODY4ZjRiYzA0Li5hYzI2NGU1MWE2YSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVy cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNo YXJhY3RlcnMnCiBwa2duYW1lPWdub21lLWNoYXJhY3RlcnMKIHZlcnNpb249My4zNC4wCi1yZXZp c2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIi CiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2pzIGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29u ZmlnIgoKRnJvbSBiYjNjYTliNzk0ODAxNDM2Y2VjZDE2Y2U3YzlmZjQ1YzcxNmQ5ZmQ5IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU1OjE4ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0Ni81 MV0gZ25vbWUtZG9jdW1lbnRzOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5z by4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMv dGVtcGxhdGUKaW5kZXggOTdiNTNkNjM1ZDcuLjdlNDViODI1ZTcxIDEwMDY0NAotLS0gYS9zcmNw a2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWRvY3VtZW50 cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWRv Y3VtZW50cycKIHBrZ25hbWU9Z25vbWUtZG9jdW1lbnRzCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNp b249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgog aG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0IGl0c3Rvb2wgcGtnLWNvbmZpZyBn bGliLWRldmVsIGxpYnhzbHQgZ2RrLXBpeGJ1ZgoKRnJvbSAxODE5NGIxOTdhYTRhMDQ0YjkxNTEx OTBkNzhhZmVhMjg1NzI3MjRiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU2OjU2ICsw NjAwClN1YmplY3Q6IFtQQVRDSCA0Ny81MV0gZ25vbWUtZm9udC12aWV3ZXI6IHJlYnVpbGQgYWdh aW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtZm9udC12 aWV3ZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBs YXRlIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQppbmRleCA2ZDAzNTM2NmQ0 NC4uZjc0ZmNiY2IwMDAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWZvbnQtdmlld2VyJwogcGtnbmFtZT1n bm9tZS1mb250LXZpZXdlcgogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK IGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZl bCIKIG1ha2VkZXBlbmRzPSJmb250Y29uZmlnLWRldmVsIGZyZWV0eXBlLWRldmVsIGdsaWItZGV2 ZWwgZ3RrKzMtZGV2ZWwKCkZyb20gNjI3MDQ0NDk3ODFlNjhjZjg0NzcxNDliNDYzOGNjYWI3MzBk NzU2NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDAyOjI3OjE3ICswNjAwClN1YmplY3Q6IFtQ QVRDSCA0OC81MV0gZ25vbWUtc2NyZWVuc2F2ZXI6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUt ZGVza3RvcC0zLnNvLjE5CgotLS0KIC4uLi9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRj aCAgICAgICAgICAgICAgICB8IDEzICsrKysrKysrKysrKysKIHNyY3BrZ3MvZ25vbWUtc2NyZWVu c2F2ZXIvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICA1ICsrKy0tCiAyIGZpbGVzIGNoYW5n ZWQsIDE2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1k ZXNrdG9wLTMuMzYucGF0Y2ggYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25v bWUtZGVza3RvcC0zLjM2LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwLi41OGQ5MmU0NjNhMwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVu c2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2gKQEAgLTAsMCArMSwxMyBAQAor ZGlmZiAtTmF1ciBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS5vcmlnL3NyYy9ncy1tYW5hZ2VyLmMg Z25vbWUtc2NyZWVuc2F2ZXItMy42LjEvc3JjL2dzLW1hbmFnZXIuYworLS0tIGdub21lLXNjcmVl bnNhdmVyLTMuNi4xLm9yaWcvc3JjL2dzLW1hbmFnZXIuYwkyMDIwLTAzLTA4IDA4OjUzOjQ2LjQw ODQzMTU3OCArMDAwMAorKysrIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xL3NyYy9ncy1tYW5hZ2Vy LmMJMjAyMC0wMy0wOCAwODo1NDozMS44NzU3Mzg3MzIgKzAwMDAKK0BAIC03ODgsOCArNzg4LDcg QEAKKyAgICAgICAgIHN1cmZhY2UgPSBnbm9tZV9iZ19jcmVhdGVfc3VyZmFjZSAobWFuYWdlci0+ cHJpdi0+YmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdk a193aW5kb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdp ZHRoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQs CistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZBTFNFKTsKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0KTsKKyAgICAg ICAgIGdzX3dpbmRvd19zZXRfYmFja2dyb3VuZF9zdXJmYWNlICh3aW5kb3csIHN1cmZhY2UpOwor ICAgICAgICAgY2Fpcm9fc3VyZmFjZV9kZXN0cm95IChzdXJmYWNlKTsKKyB9CmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1zY3Jl ZW5zYXZlci90ZW1wbGF0ZQppbmRleCAzNjNmY2YxMmUxMC4uNTRhOWEzNWVjY2IgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9t ZS1zY3JlZW5zYXZlci90ZW1wbGF0ZQpAQCAtMSwxNSArMSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZ25vbWUtc2NyZWVuc2F2ZXInCiBwa2duYW1lPWdub21lLXNjcmVlbnNhdmVyCiB2ZXJz aW9uPTMuNi4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1taW5pbXVtIgog aG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9tYWtlIGludGx0b29sIGdsaWItZGV2ZWwi CiBtYWtlZGVwZW5kcz0iZ25vbWUtZGVza3RvcC1kZXZlbCBkYnVzLWdsaWItZGV2ZWwgcGFtLWRl dmVsIgogZGVwZW5kcz0iZ25vbWUtZGVza3RvcCBsaWJnbm9tZWtiZCBkYnVzIgotc2hvcnRfZGVz Yz0iQSBuZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2ZXIiCitzaG9y dF9kZXNjPSJOZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2ZXIiCiBt YWludGFpbmVyPSJzaGl6b25pYyA8cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0z LjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9H bm9tZVNjcmVlbnNhdmVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09ZjM5Yjc4 ZDRmN2ZlZDc0OGM3ZjBhMzFkNjk0MTEyZmI5MDdjNmQzYzRlNjNkYjIyZWI4NThkZjA3ZTk2MmNk MAorcGF0Y2hfYXJncz0iLU5wMSIKCkZyb20gOGExNTQwMDdhMGFkYjAwMTBjODkwZjRhZWE5ZTc2 ZmI1NTc1ZGRjYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDExOjQzOjE5ICswNjAwClN1Ympl Y3Q6IFtQQVRDSCA0OS81MV0gZ25vbWUtd2VhdGhlcjogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21l LWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgfCAy ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXdl YXRoZXIvdGVtcGxhdGUKaW5kZXggZDMwYmU5YmYxOTIuLmMwMjhlNDZiYTY1IDEwMDY0NAotLS0g YS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS13ZWF0 aGVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUt d2VhdGhlcicKIHBrZ25hbWU9Z25vbWUtd2VhdGhlcgogdmVyc2lvbj0zLjM2LjEKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGhv c3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGl0c3Rvb2wgZ2xpYi1kZXZlbCBnanMi CgpGcm9tIGYwMzUxZTA1NGQ2ZWJmNGIwYzE3YTFjY2MwMTY5OWU0NDI2NTk3ZDkgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6 IFRodSwgMzAgQXByIDIwMjAgMDI6NTc6NTcgKzA2MDAKU3ViamVjdDogW1BBVENIIDUwLzUxXSB0 b3RlbTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNw a2dzL3RvdGVtL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90b3RlbS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvdG90ZW0vdGVtcGxhdGUKaW5kZXggODE1MjJiMzE0ODguLmU0MTg2NjMyMTUzIDEwMDY0 NAotLS0gYS9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdG90ZW0vdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0b3RlbScKIHBrZ25hbWU9 dG90ZW0KIHZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHls ZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURlbmFibGUtcHl0 aG9uPW5vIC1EZW5hYmxlLW5hdXRpbHVzPXllcwoKRnJvbSA4MzFmYjIzYzA3ZmEzZGYwYWI1MTJh NjA3OTI1OWZjMWQ1MzE3NTE0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAzOjA0OjA3ICsw NjAwClN1YmplY3Q6IFtQQVRDSCA1MS81MV0gbHV0cmlzOiByZWJ1aWxkIGFnYWluc3QgbGliZ25v bWUtZGVza3RvcC0zLnNvLjE5CgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2x1dHJpcy90ZW1wbGF0 ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlIGIvc3JjcGtncy9sdXRyaXMvdGVt cGxhdGUKaW5kZXggYzNjNDczOTJmZjYuLjdlZTc0Y2M3OTkwIDEwMDY0NAotLS0gYS9zcmNwa2dz L2x1dHJpcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2x1dHJpcycKIHBrZ25hbWU9bHV0cmlzCiB2ZXJz aW9uPTAuNS42Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0 eWxlPXB5dGhvbjMtbW9kdWxlCiBidWlsZF9oZWxwZXI9ImdpciIK --===============8788571692201928668==--