From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 15894 invoked from network); 25 May 2020 05:37:54 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 25 May 2020 05:37:54 -0000 Content-Type: multipart/mixed; boundary="===============1929718160650047044==" 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, 25 May 2020 07:37:50 +0200 List-Id: Message-ID: <20200525053750.PvD3ZCXhPFTrpU7fosxRY5QI_APfPliHtH5569IQnV8@z> GitHub notification mails are now in MIME to allow UTF8. --===============1929718160650047044== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW5hYmlkIGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFi aWQvdm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjEzODIKCltXSVBdIGdub21lIDMuMzYgdXBkYXRlcwpXYWl0aW5nIGZv ciAqKltgcGlwZXdpcmUtMC4zLjVgXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjA0MTMpKiogdG8gYmUgbWVyZ2VkLg0KDQo8ZGV0YWlscz4NCjxzdW1t YXJ5PjxiPkxpc3Qgb2YgdXBkYXRlcyA6IDwvYj48aT4oY2xpY2sgdG8gZXhwYW5kKTwvaT48L3N1 bW1hcnk+DQoNCiAqIGF0ayAtPiAyLjM2LjANCiAqIGF0LXNwaTItYXRrIC0+IDIuMzQuMg0KICog YnVkZ2llLWRlc2t0b3AgLT4gKHJldmJ1bXApDQogKiBjaGVlc2UgLT4gKHJldmJ1bXApDQogKiBk Y29uZi1lZGl0b3IgLT4gMy4zNi4yDQogKiBkZXZoZWxwIC0+IDMuMzYuMg0KICogZW9nIC0+IDMu MzYuMg0KICogZXZpbmNlIC0+IDMuMzYuMQ0KICogZXZvbHV0aW9uIC0+IDMuMzYuMg0KICogZXZv bHV0aW9uLWRhdGEtc2VydmVyIC0+IDMuMzYuMg0KICogZXZvbHV0aW9uLWV3cyAtPiAzLjM2LjIN CiAqIGZpbGUtcm9sbGVyIC0+IDMuMzYuMg0KICogZm9sa3MgLT4gMC4xNC4wDQogKiBnZG0gLT4g My4zNi4yDQogKiBnZWRpdCAtPiAzLjM2LjINCiAqIGdub21lLTIwNDggLT4gMy4zNi4yDQogKiBn bm9tZS1ib29rcyAtPiAocmV2YnVtcCkNCiAqIGdub21lLWNoYXJhY3RlcnMgLT4gKHJldmJ1bXAp DQogKiBnbm9tZS1jbG9ja3MgLT4gMy4zNi4yDQogKiBnbm9tZS1jb250YWN0cyAtPiAzLjM2LjEN CiAqIGdub21lLWNvbnRyb2wtY2VudGVyIC0+IDMuMzYuMg0KICogZ25vbWUtZGVza3RvcCAtPiAz LjM2LjINCiAqIGdub21lLWRvY3VtZW50cyAtPiAocmV2YnVtcCkNCiAqIGdub21lLWVwdWItdGh1 bWJuYWlsZXIgLT4gMS42DQogKiBnbm9tZS1mbGFzaGJhY2sgLT4gMy4zNi4zDQogKiBnbm9tZS1m b250LXZpZXdlciAtPiAocmV2YnVtcCkNCiAqIGdub21lLWdldHRpbmctc3RhcnRlZC1kb2NzIC0+ IDMuMzYuMg0KICogZ25vbWUtaW5pdGlhbC1zZXR1cCAtPiAzLjM2LjINCiAqIGdub21lLW1hcHMg LT4gMy4zNi4yDQogKiBnbm9tZS1tZW51cyAtPiAzLjM2LjANCiAqIGdub21lLW11c2ljIC0+IDMu MzYuMg0KICogZ25vbWUtcGFuZWwgLT4gMy4zNi4xDQogKiBnbm9tZS1wb2RjYXN0cyAtPiAwLjQu Nw0KICogZ25vbWUtc2NyZWVuc2F2ZXIgLT4gKHJldmJ1bXApDQogKiBnbm9tZS1zZXNzaW9uIC0+ IDMuMzYuMA0KICogZ25vbWUtc2V0dGluZ3MtZGFlbW9uIC0+IDMuMzYuMQ0KICogZ25vbWUtc2hl bGwgLT4gMy4zNi4yDQogKiBnbm9tZS1zaGVsbC1leHRlbnNpb25zIC0+IDMuMzYuMg0KICogZ25v bWUtdGVybWluYWwgLT4gMy4zNi4yDQogKiBnbm9tZS11c2VyLWRvY3MgLT4gMy4zNi4yDQogKiBn bm9tZS13ZWF0aGVyIC0+IChyZXZidW1wKQ0KICogZ3JhcGhlbmUgLT4gMS4xMC4wDQogKiBsdXRy aXMgLT4gKHJldmJ1bXApDQogKiBtZXRhY2l0eSAtPiAzLjM2LjENCiAqIG11dHRlciAtPiAzLjM2 LjINCiAqIG5hdXRpbHVzIC0+IDMuMzYuMg0KICogb3JjYSAtPiAzLjM2LjINCiAqIHB5dGhvbi1h dHNwaSAtPiAyLjM2LjANCiAqIHRvdGVtIC0+IChyZXZidW1wKQ0KICogdHJhY2tlciAtPiAyLjMu NA0KICogeGRnLWRlc2t0b3AtcG9ydGFsLWd0ayAtPiAocmV2YnVtcCkNCjwvZGV0YWlscz4NCg0K QnVpbHQgaW4gYHg4Nl82NGAuCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20v dm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMjEzODIucGF0Y2ggaXMgYXR0YWNoZWQ= --===============1929718160650047044== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSBiZTAxZWEwYTA0ZmIyMTQwN2YzNThlYjYzZjJmZDRkYjVlMjFkNDQzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS81Ml0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIHwgOCArKysr LS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggZjE4ZGY3MjY2 ZmYuLjM4NWYxZTFmYTA3IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z aGxpYnMKQEAgLTExNzcsNyArMTE3Nyw3IEBAIGxpYmdzdGJhc2VjYW1lcmFiaW5zcmMtMS4wLnNv LjAgZ3N0LXBsdWdpbnMtYmFkMS0xLjAuMF8xCiBsaWJnc3Rjb2RlY3BhcnNlcnMtMS4wLnNvLjAg Z3N0LXBsdWdpbnMtYmFkMS0xLjAuMF8xCiBsaWJnc3RwbGF5ZXItMS4wLnNvLjAgZ3N0LXBsdWdp bnMtYmFkMS0xLjAuMF8xCiBsaWJnc3RnbC0xLjAuc28uMCBnc3QtcGx1Z2lucy1iYXNlMS0xLjE0 LjBfMQotbGliZ25vbWUtZGVza3RvcC0zLnNvLjE4IGdub21lLWRlc2t0b3AtMy4zNC4wXzEKK2xp Ymdub21lLWRlc2t0b3AtMy5zby4xOSBnbm9tZS1kZXNrdG9wLTMuMzYuMl8xCiBsaWJzZWNyZXQt MS5zby4wIGxpYnNlY3JldC0wLjEwXzEKIGxpYmd3ZWF0aGVyLTMuc28uMTYgbGliZ3dlYXRoZXIt My4zNC4wXzEKIGxpYmdub21la2JkLnNvLjggbGliZ25vbWVrYmQtMy42LjBfMQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1kZXNrdG9w L3RlbXBsYXRlCmluZGV4IDk5MmNiMWZmMTZhLi5jMWE3NDA4YzIwNyAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZGVza3RvcC90 ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZGVz a3RvcCcKIHBrZ25hbWU9Z25vbWUtZGVza3RvcAotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4z Ni4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1j b25maWd1cmVfYXJncz0iLURnbm9tZS1kaXN0cmlidXRvcj1Wb2lkTGludXggLUR1ZGV2PWVuYWJs ZWQKLSAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKK2NvbmZpZ3Vy ZV9hcmdzPSItRGdub21lX2Rpc3RyaWJ1dG9yPVZvaWRMaW51eCAtRHVkZXY9ZW5hYmxlZAorIC1E c3lzdGVtZD1kaXNhYmxlZCAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNl KSIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBpdHN0b29sIHBrZy1jb25maWcgZ2xpYi1kZXZl bCIKIG1ha2VkZXBlbmRzPSJldWRldi1saWJ1ZGV2LWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNj aGVtYXMtZGV2ZWwgZ3RrKzMtZGV2ZWwKICBpc28tY29kZXMgbGliZ2xpYi1kZXZlbCBsaWJzZWNj b21wLWRldmVsIGxpYlgxMS1kZXZlbCBsaWJYZXh0LWRldmVsCkBAIC0xNiw3ICsxNiw3IEBAIG1h aW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJH UEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dp dGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtZGVza3RvcCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWMxZGJlYjU2NjZkYWQyNzE2NmM3NjllNDhlMmFiNDFkZDVlZDc0NzE4ZWEz NWViNTdjODQ4ODc5MDY2MmRjNWEKK2NoZWNrc3VtPTM4Zjk5NGRjYjFlMWFlMDkzZDFjOTI5Yzdh Y2M0Zjg4ZTM5MTExZTQzYjVmZGMxMzEyNWIwZjZlMjMxMWM3ODkKIAogYnVpbGRfb3B0aW9ucz0i Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIGUzNDY3YmMyMTBhMTNhZDc4 NjJiMWY3MmFiMDVmYTFlZmNkYmZhNDMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTJdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi44OGRlZTIwZWI2ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisJcm0gLXJmICR7REVT VERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIGM0OTNiNjc5MjIwODIyNjZmMDY4OTNiMDQ2 ZTdhNzE5Y2JmZTU0MTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUgKzA2MDAK U3ViamVjdDogW1BBVENIIDAzLzUyXSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQog c3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4NTE5NzNm Li4xMDEwODczZjRmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYuMS4xCit2 ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1hbmFnZXIi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNhZjMzODAz YTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPTI2NjczYzk1OTk1 MDI0NTJjZjI5OTM1ODcyOWJlOGI1NTQwNjZhOWI2NzBkODliMjRlMjQ1MTYwZDE1Nzc2ZmEKIAog YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDAz OWFjNGY3YWRkMGJiMmNlMGIyOTUwMjEzYmZkMmRlNWM5MTBjZDMgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcg QXByIDIwMjAgMTI6MjY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzUyXSBnbm9tZS0yMDQ4 OiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxhdGUgfCA0 ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS0y MDQ4L3RlbXBsYXRlCmluZGV4IGI1OWNjZjZkZTQ2Li45ODliNmZmMTI1YiAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0OC90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIwNDgnCiBw a2duYW1lPWdub21lLTIwNDgKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRl dmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFpbmVy PSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0OCIKIGRp c3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25vbWUtMjA0 OC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5YzE2YTcw Njc0ODA3MzQ0ZWQxMTgzMWU4YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTI5ZGE3NDk5 Yzg5ZWU3NGY5ODM0ZThkZTJiODU2MzMyMzlhNjZlNWM1M2Q5NTZhOGU5NWE5ODdiZGI0YjMzMjEK CkZyb20gZmMyMDg3YmZiYTU1YzA3YmZiMTNkOGJiOGU0YTA0MTk0ZTEwZGI2YSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCAyNyBBcHIgMjAyMCAxMjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDUvNTJdIGdu b21lLW11c2ljOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLW11c2ljL3Rl bXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUgYi9zcmNw a2dzL2dub21lLW11c2ljL3RlbXBsYXRlCmluZGV4IDEyNTExNzM2NDA3Li44MDJiY2VhODkxZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2du b21lLW11c2ljL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z25vbWUtbXVzaWMnCiBwa2duYW1lPWdub21lLW11c2ljCi12ZXJzaW9uPTMuMzYuMQordmVyc2lv bj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KQEAgLTE1LDUgKzE1LDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL011c2ljIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09N2I4MGY2MzBkMTU4MzM0OTM1YTg3NjAyOTY1NTBjYzkxYjUwZDYwNGZhNjhiNDAyZmU1 MTY1YjE1MzFlYzMzMgorY2hlY2tzdW09YWJhZDQxM2FlYmZhOGY4MTQxYWJjNzE2NDgwOWU4YzQ2 NzdmOGI2NTM4Zjg5MjEyODE5M2UwOTdlMGU5ODJhNQogbGliMzJkaXNhYmxlZD15ZXMKCkZyb20g OWE4MGQ2MjU4Y2UwODQxNzMzYzZmYTUxYTVlMGJhZjM3MjU2OTY1ZCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAy NyBBcHIgMjAyMCAxMzowMjo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTJdIGRldmhlbHA6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxh dGUKaW5kZXggYTFjMmRjYmI3NjIuLmJhNzVkZmZkY2U3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Rl dmhlbHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGV2aGVscCcKIHBrZ25hbWU9ZGV2aGVscAotdmVy c2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9Imdp ciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9EZXZoZWxwIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGNmOGVjOTMwMmJjNGE3OWUwMWFjNTNiZDljOGI5 NWE1OTZmNzFmMzUzNTFmNDhiNjMyNjMyMjdmMDlhOGEzZAorY2hlY2tzdW09OGI1YTg0MzE5ZWZi YjJlZjFiYzQwMjJlZTNlZDJkNjY3ODc5NGViYTJkZmE5OTNlNTBlMDNkNmU3YjkzMGM1ZQogCiBk ZXZoZWxwLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZp bGVzIgoKRnJvbSA1ZGFmNmI1NjdmYTJmNjkwZTQ1YzBjY2I0MjVkYTM4N2FkOWNlMGNjIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBNb24sIDI3IEFwciAyMDIwIDEzOjE3OjQyICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNy81 Ml0gZW9nOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2VvZy90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9nL3RlbXBsYXRlCmlu ZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9lb2cvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249 My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29u CkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v d2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWU0NTRh MWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVkYTFhN2JlMTg3Yzlj OTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4YzE5YWJkYjdiZWFl MWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cuc28iCiBsaWIzMmRp c2FibGVkPXllcwogCgpGcm9tIDZmNTZjZWJmMDY1MjdhMDRkMThiNmM1MGM2ZDU4Y2MyMzlkOTQ0 N2QgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMTY6MDg6MjMgKzA2MDAKU3ViamVjdDogW1BB VENIIDA4LzUyXSBldmluY2U6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNyY3BrZ3MvZXZpbmNl L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIvc3JjcGtn cy9ldmluY2UvdGVtcGxhdGUKaW5kZXggYzMzN2EyNjZjZTAuLmY1ZGZkZGFiMzZhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBrZ25hbWU9 ZXZpbmNlCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxk X2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTksNyArMTksNyBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvRXZpbmNlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODUxZDliNTIzNGQ0 NzlhYjRjOGY3YzVjYmFjZWIwZTkxYWQ3OWNjYmExYTdiNzMzY2RlNzJkYWNjOTI4ZmJhOAorY2hl Y2tzdW09OGNiOGJmZDM1OGEwMmQ4ZWRiYTUxMTE0NTQ4ZTk4MTU0MzIxZTA4OTViZjM3OWE1YmIz MzZhNDU4ZDU5NGJkNwogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1 bHQ9ImdpciIKCkZyb20gNzBiODIwZmI2M2Q1MGNiYzQ2MzQ2NWEyNmI1NGFjMDdhMGRmODhhYyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMzozMDo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0gg MDkvNTJdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUt bWFwcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKaW5kZXggMDMwMGJlNjA1OTkuLjlmZGQyN2Ri M2JkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1tYXBzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ25vbWUtbWFwcycKIHBrZ25hbWU9Z25vbWUtbWFwcwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNp b249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRz PSJnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBpbnRsdG9vbCBwa2ctY29uZmlnIEFw cFN0cmVhbSIKQEAgLTEyLDUgKzEyLDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL01hcHMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT0xYTMyZWZkOTZhZDg5OGY3N2E2MzZkMmQwNDYzZDc1NzAwOWI0YjgxMjI1OWM4 OWZmZGNiOTFkNmFmYzA1MmY5CitjaGVja3N1bT01YmEyMTliOWRlOTg2NzhjZWZhNTg0OGY2NTM4 ZGI4ZGJkMDdmNmM3NDdmZDQzYTk5MTY3YTI2Njg3OGE5Nzg0CiBub2Nyb3NzPSJldm9sdXRpb24t ZGF0YXNlcnZlciBjcm9zcyBnaXIgZG9lc24ndCB3b3JrIgoKRnJvbSAxNzliYmYzZTI0MzcxMGFh ZTYwMmZmOGJmNDc0MDdjYjVlZjM2ZGFkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE0OjI3 OjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMC81Ml0gZ2VkaXQ6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWRp dC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYxODIuLmUz ZWJlYTA1ZWE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ2VkaXQvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn ZWRpdCcKIHBrZ25hbWU9Z2VkaXQKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTcsNyAr MTcsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL0FwcHMvR2VkaXQiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02ZGMzOGVk YTIyN2QxYzM2OGUwMzllOWJmZjQ4NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4YTRlMzg3 CitjaGVja3N1bT02ODg3NTU0NjQzYzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1ZTY3NThh ZWFhMDhmNGE0ODJiNTU0MTk3CiBzaGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5zbyIKIHB5 dGhvbl92ZXJzaW9uPTMKIAoKRnJvbSA2MzNlZjc3YTIyM2E0MWJhZTgyN2U5ODU2ODg1NzExYTk3 OWEwMDQyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjAyOjE0ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAxMS81Ml0gZ25vbWUtY29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNy Y3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgfCAxMCArKysrKysrLS0tCiAxIGZpbGUgY2hh bmdlZCwgNyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBs YXRlCmluZGV4IDJhODIxM2E3MjQwLi43MWQxNWM4ZTNmNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9n bm9tZS1jb250YWN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY29udGFjdHMn CiBwa2duYW1lPWdub21lLWNvbnRhY3RzCi12ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MgordmVy c2lvbj0zLjM2LjEKK3JldmlzaW9uPTEKIHdya3NyYz0iZ25vbWUtY29udGFjdHMtJHt2ZXJzaW9u JS4qfSIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRvY2Jvb2steHNsIGdl dHRleHQgZ2xpYi1kZXZlbCBsaWJ4c2x0IHBrZy1jb25maWcgdmFsYSIKQEAgLTEzLDQgKzEzLDgg QEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9B cHBzL0NvbnRhY3RzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbiUuKn0udGFyLnh6IgotY2hlY2tzdW09OTk2MDJl YzhkNjYwYzFmM2M5MmNhZTYzNTZmNjRmNzJmYjZkYjU4ZTU1YmNlMjdhNTk5MzMwYmY3YjYyMmYx MgorY2hlY2tzdW09ZWVjYmQyMjA5ZDkzYzhkMzFkZjkyZjZjY2Y3OTE4M2I0NTZjNmUwN2EyOGFl MDE1NWNiZGExOGFhYmQzNmY3YgorCitpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KKwlob3N0 bWFrZWRlcGVuZHMrPSIgZm9sa3MtZGV2ZWwiCitmaQoKRnJvbSAzMDczMjAzNGZiNjhmYTMxZGQ4 YWRiZmRhMmE2NjNlYWY3ZmE2NDEzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjUyOjEy ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMi81Ml0gZ25vbWUtY2xvY2tzOiB1cGRhdGUgdG8gMy4z Ni4yLgoKLS0tCiBzcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBs YXRlCmluZGV4IDNlMDQ5YjQyZmIxLi4zNGIxNTlhZTZhNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9n bm9tZS1jbG9ja3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jbG9ja3MnCiBwa2du YW1lPWdub21lLWNsb2NrcwotdmVyc2lvbj0zLjM2LjAKK3ZlcnNpb249My4zNi4yCiByZXZpc2lv bj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xNSw0ICsxNSw0 IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNl bnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcv QXBwcy9DbG9ja3MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00Yzk3OGIwYzdm N2I5ZGFlYmQyNzJkMDE3NWY4YTU0NDE1ZTIwNzhmMTM0ZjQ4YWRkNWNmMjQzNjJlZWY0OWM2Citj aGVja3N1bT1mMTFiMWIyMmVjMWYyODVlNTA5ODgzNjg0YzBiMWY0YTUxNDk2YWVhMTA1NTkxMjM5 ZTViMjZmODk4Njc1MWU2CgpGcm9tIDE4N2JiM2FhMDMxNmQwNDYyNDI3ODdmZDk4ODRkMTg2MDdl YTc3NWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTU6Mjk6MzAgKzA2MDAKU3ViamVjdDog W1BBVENIIDEzLzUyXSBnbm9tZS1lcHViLXRodW1ibmFpbGVyOiB1cGRhdGUgdG8gMS42LgoKLS0t CiBzcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBm aWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21l LWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUKaW5kZXggYjE2ZTcwNTQ3NWYuLmQ2N2I3N2YxZTQz IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEz IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1lcHViLXRodW1ibmFpbGVyJwogcGtnbmFt ZT1nbm9tZS1lcHViLXRodW1ibmFpbGVyCi12ZXJzaW9uPTEuNQordmVyc2lvbj0xLjYKIHJldmlz aW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNv bmZpZyIKIG1ha2VkZXBlbmRzPSJnZGstcGl4YnVmLWRldmVsIGxpYmFyY2hpdmUtZGV2ZWwgbGli eG1sMi1kZXZlbCIKIHNob3J0X2Rlc2M9IlRodW1ibmFpbGVyIGZvciBFUHViIGFuZCBNT0JJIGJv b2tzIgogbWFpbnRhaW5lcj0iQWxpZiBSYWNobWF3YWRpIDxhcmNoQHN1Ym9zaXRvLmNvbT4iCi1s aWNlbnNlPSJHUEwtMyIKK2xpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly9naXQuZ25vbWUub3JnL2Jyb3dzZS9nbm9tZS1lcHViLXRodW1ibmFpbGVyIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09MzA4MjEwZjU4MDAyMTlmNjRjYWU0ODI4ZTU5YmI4ZTZl NGM1M2I4ODgwNDhjZjQ4NzIyMWFlYjQzMzdkNzkxYQorY2hlY2tzdW09YjUwMjQyMGQ5YjAyZWEw YjBmYzc5ODZlZjVhMDkxYTEyYjIyODZiZTE0ZmVkOWU0NzU5NGZlOWZhMGM1ODk4ZQoKRnJvbSBj ODhjNWJhNTNlNjYzYTI5NWRiYWFjYzczZDkyNTUwN2UwNmM2YTE4IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3 IEFwciAyMDIwIDE2OjIzOjQ2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxNC81Ml0gZ25vbWUtdGVy bWluYWw6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVt cGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlIGIv c3JjcGtncy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZQppbmRleCBiZjNkNWJjZGQ0Mi4uMjJkYmMx MWJhZGEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLXRlcm1pbmFsJwogcGtnbmFtZT1nbm9tZS10ZXJtaW5hbAotdmVy c2lvbj0zLjM2LjEuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdu dS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0td2l0aC1uYXV0 aWx1cy1leHRlbnNpb24iCkBAIC0xMyw4ICsxMyw4IEBAIHNob3J0X2Rlc2M9IkdOT01FIHRlcm1p bmFsIGVtdWxhdG9yIGFwcGxpY2F0aW9uIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdGREwtMS4zLW9u bHkiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL1Rlcm1pbmFsIgotZGlz dGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uOjA6NH0vJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWYzZDcwOGExZTc2ZDc3YzFjODViMTI2ZjZl MDAzMjIwYTE1ZDRhNDZhNTBmZDgwNzBlMWEzYWFiZTY3OGEzNzYKK2Rpc3RmaWxlcz0iJHtHTk9N RV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRh ci54eiIKK2NoZWNrc3VtPTQxZDFiNmEzZGM5N2MwNjZlMjk0YWNkYjdmMzY5MzFlODE2Njg2Mzhk Y2M5MmZmYTI1YmNhM2RkZWJhY2RmNDYKIGxpYjMyZGlzYWJsZWQ9eWVzCiAKIGlmIFsgIiRDUk9T U19CVUlMRCIgXTsgdGhlbgoKRnJvbSBiMzM3NWRjNjllNjM5MTQ1OWQ4MTIxZjRiNGRiY2NiZDM0 MmYzZDdjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDI4IEFwciAyMDIwIDE4OjE4OjAwICswNjAwClN1YmplY3Q6 IFtQQVRDSCAxNS81Ml0gZ25vbWUtcG9kY2FzdHM6IHVwZGF0ZSB0byAwLjQuNy4KCi0tLQogLi4u L2dub21lLXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoICAgIHwgMjEgLS0tLS0tLS0t LS0tLS0tLQogc3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZSAgICAgICAgICAgICAgIHwg MjQgKysrKysrKysrKy0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCsp LCAzMiBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLXBvZGNh c3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1w b2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaCBiL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMv cGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFl Yjk1ODFiZDc5Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3BhdGNo ZXMvZml4LWJ1aWxkLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjEgKzAsMCBAQAotLS0tIHBv ZGNhc3RzLWd0ay9zcmMvd2lkZ2V0cy9lcGlzb2RlLnJzLm9yaWcJMjAxOS0wNi0wOSAxNTo1NDo1 OS43OTM0NTEwNDcgKzAyMDAKLSsrKyBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvZXBpc29kZS5y cwkyMDE5LTA2LTA5IDE1OjU1OjE5LjE5MTMxMTUxMiArMDIwMAotQEAgLTU1OSw3ICs1NTksNyBA QAotICAgICAgICAgICAgIC50b3RhbF9zaXplCi0gICAgICAgICAgICAgLmdldF90ZXh0KCkKLSAg ICAgICAgICAgICAuYXNfcmVmKCkKLS0gICAgICAgICAgICAubWFwKHxzfCBzLnRyaW1fcmlnaHRf bWF0Y2hlcygiIE1CIikpCi0rICAgICAgICAgICAgLm1hcCh8c3wgcy50cmltX2VuZF9tYXRjaGVz KCIgTUIiKSkKLSAgICAgICAgICAgICAuYW5kX3RoZW4ofHN8IHMucGFyc2U6OjxpMzI+KCkub2so KSkKLSAgICAgICAgICAgICAuaXNfbm9uZSgpCi0gICAgICAgICB7Ci0tLS0gcG9kY2FzdHMtZ3Rr L3NyYy93aWRnZXRzL3Nob3dzX3ZpZXcucnMub3JpZwkyMDE5LTA2LTA5IDE1OjU0OjAwLjMyMDg3 ODg2NyArMDIwMAotKysrIHBvZGNhc3RzLWd0ay9zcmMvd2lkZ2V0cy9zaG93c192aWV3LnJzCTIw MTktMDYtMDkgMTU6NTQ6MTMuMTUxNzg2NTYzICswMjAwCi1AQCAtODAsNyArODAsNiBAQAotIH0K LSAKLSBmbiBvbl9jaGlsZF9hY3RpdmF0ZShjaGlsZDogJmd0azo6Rmxvd0JveENoaWxkLCBzZW5k ZXI6ICZTZW5kZXI8QWN0aW9uPikgLT4gUmVzdWx0PCgpLCBFcnJvcj4gewotLSAgICB1c2UgZ3Rr OjpXaWRnZXRFeHQ7Ci0gCi0gICAgIC8vIFRoaXMgaXMgc3VjaCBhbiB1Z2x5IGhhY2suLi4KLSAg ICAgbGV0IGlkID0gV2lkZ2V0RXh0OjpnZXRfbmFtZShjaGlsZCkKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBs YXRlCmluZGV4IDcyZTJkYjZiMTA5Li4zYzIzOWRmODQyNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9n bm9tZS1wb2RjYXN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBs YXRlCkBAIC0xLDI2ICsxLDI4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1wb2RjYXN0 cycKIHBrZ25hbWU9Z25vbWUtcG9kY2FzdHMKLXZlcnNpb249MC40LjYKLXJldmlzaW9uPTMKK3Zl cnNpb249MC40LjcKK3JldmlzaW9uPTEKIHdya3NyYz0icG9kY2FzdHMtJHt2ZXJzaW9ufSIKIGJ1 aWxkX3N0eWxlPW1lc29uCi1ob3N0bWFrZWRlcGVuZHM9ImNhcmdvIGdldHRleHQtZGV2ZWwgZ2xp Yi1kZXZlbCBwa2ctY29uZmlnIgorYnVpbGRfaGVscGVyPSJydXN0IgoraG9zdG1ha2VkZXBlbmRz PSJjYXJnbyBnZXR0ZXh0IGdsaWItZGV2ZWwgcGtnLWNvbmZpZyBzcWxpdGUtZGV2ZWwiCiBtYWtl ZGVwZW5kcz0iZ3N0cmVhbWVyMS1kZXZlbCBnc3QtcGx1Z2lucy1iYWQxLWRldmVsIGdzdC1wbHVn aW5zLWJhc2UxLWRldmVsCi0gZ3RrKzMtZGV2ZWwgbGliaGFuZHktZGV2ZWwgbGlicmVzc2wtZGV2 ZWwgc3FsaXRlLWRldmVsIHRleGluZm8iCisgZ3RrKzMtZGV2ZWwgbGliaGFuZHktZGV2ZWwgbGli cmVzc2wtZGV2ZWwgc3FsaXRlLWRldmVsIHJ1c3Qtc3RkIgogc2hvcnRfZGVzYz0iTGlzdGVuIHRv IHlvdXIgZmF2b3JpdGUgcG9kY2FzdHMiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94 QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJo dHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvUG9kY2FzdHMiCiBkaXN0ZmlsZXM9Imh0dHBzOi8v Z2l0bGFiLmdub21lLm9yZy9Xb3JsZC9wb2RjYXN0cy8tL2FyY2hpdmUvJHt2ZXJzaW9ufS9wb2Rj YXN0cy0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTk1M2M2M2U4MTg0Y2ExZjc0ODQxOGQ4 YTgyNjJkNDBlYWE0MTA0N2Y4MWUyZDJjODc0YTMwMzVkOWQ5ZDBlNGEKLW5vY3Jvc3M9InJ1c3Rj IGNhbnQgYmUgY3Jvc3Njb21waWxlZCBhcyBvZiBub3ciCi1icm9rZW49ImdldHRleHQtcnMgaGFz aCBkb2VzIG5vdCBleGlzdHMsIGlmIGZpeGVkIGJ1aWxkIGZhaWxzIGluIGdpbyAwLjUuMCIKK2No ZWNrc3VtPWE5YTFiNjJkZDM1NjdlM2NjYTM4ZWUyOWRmMmZhZGQ4MmUyZmI1ZTgzN2IwYTJhMjZl Y2FjNzRlOTMwNTE2MWMKIAogZXhwb3J0IEdFVFRFWFRfQklOX0RJUj0vdXNyL2JpbgogZXhwb3J0 IEdFVFRFWFRfTElCX0RJUj0iJHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIvZ2V0dGV4dCIKIGV4 cG9ydCBHRVRURVhUX0lOQ0xVREVfRElSPSIke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2luY2x1ZGUi CiAKLXByZV9idWlsZCgpIHsKLQljYXJnbyB1cGRhdGUgLS1wYWNrYWdlIG9wZW5zc2wtc3lzIC0t cHJlY2lzZSAwLjkuNDYKLQljYXJnbyB1cGRhdGUgLS1wYWNrYWdlIG9wZW5zc2wgLS1wcmVjaXNl IDAuMTAuMjIKLX0KK2lmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgorCXBvc3RfcGF0Y2goKSB7 CisJCXZzZWQgLWkgc2NyaXB0cy9jYXJnby5zaCBcCisJCQktZSAncyUiJENBUkdPX1RBUkdFVF9E SVIiLyUmJHtSVVNUX1RBUkdFVH0vJScgXAorCQkJLWUgJy9DQVJHT19IT01FL2QnCisJfQorZmkK CkZyb20gOTA3Y2QzNDk1ZGZiM2Q4ODRkYTZmM2ViMWJjZWY4ZTA1NjQ0NWI2YSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog V2VkLCAyOSBBcHIgMjAyMCAxNDo0MTozMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTYvNTJdIGdu b21lLWNvbnRyb2wtY2VudGVyOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21l LWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlIHwgMjAgKysrKysrKysrKysrKysrKy0tLS0KIDEgZmls ZSBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNv bnRyb2wtY2VudGVyL3RlbXBsYXRlCmluZGV4IDBlMjc4Nzg5OGFlLi4wNzAzNmNmOTlmMCAxMDA2 NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnZ25vbWUtY29udHJvbC1jZW50ZXInCiBwa2duYW1lPWdub21lLWNvbnRy b2wtY2VudGVyCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1 aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKQEAgLTEwLDI0ICsxMCwzNiBAQCBo b3N0bWFrZWRlcGVuZHM9ImdsaWItZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZl bCBpbnRsdG9vbCBwa2ctY29uZmlnCiBtYWtlZGVwZW5kcz0iTW9kZW1NYW5hZ2VyLWRldmVsIGFj Y291bnRzc2VydmljZS1kZXZlbCBhbHNhLXBsdWdpbnMKICBjb2xvcmQtZ3RrLWRldmVsIGdub21l LWJsdWV0b290aC1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdub21lLW1lbnVzLWRldmVsCiAg Z25vbWUtb25saW5lLWFjY291bnRzLWRldmVsIGdub21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCBn cmlsby1kZXZlbCBpYnVzLWRldmVsCi0gbGliU00tZGV2ZWwgbGliWHhmODZtaXNjLWRldmVsIGxp Ymdub21la2JkLWRldmVsIGxpYmd0b3AtZGV2ZWwKKyBsaWJTTS1kZXZlbCBsaWJYeGY4Nm1pc2Mt ZGV2ZWwgbGliZ25vbWVrYmQtZGV2ZWwgbGliZ3RvcC1kZXZlbCBsaWJoYW5keS1kZXZlbAogIGxp YnB3cXVhbGl0eS1kZXZlbCBtaXQta3JiNS1kZXZlbCBuZXR3b3JrLW1hbmFnZXItYXBwbGV0LWRl dmVsIHBvbGtpdC1kZXZlbAogIHB1bHNlYXVkaW8tZGV2ZWwgc2FtYmEtZGV2ZWwgdHpkYXRhIHVw b3dlci1kZXZlbCB2YWxhLWRldmVsIGNsdXR0ZXItZ3RrLWRldmVsCiAgbGlieG1sMi1kZXZlbCBs aWJYMTEtZGV2ZWwgZ3RrKzMtZGV2ZWwgY3Vwcy1kZXZlbCBsaWJndWRldi1kZXZlbCBsaWJ3YWNv bS1kZXZlbAogIGNsdXR0ZXItZGV2ZWwgbGlic2VjcmV0LWRldmVsIGxpYmNhbmJlcnJhLWRldmVs IHVkaXNrczItZGV2ZWwgZ3NvdW5kLWRldmVsCiAgJCh2b3B0X2lmIGNoZWVzZSBjaGVlc2UtZGV2 ZWwpIgotZGVwZW5kcz0iYWxzYS1wbHVnaW5zLXB1bHNlYXVkaW8gZGVza3RvcC1maWxlLXV0aWxz CitkZXBlbmRzPSJhbHNhLXBsdWdpbnMtcHVsc2VhdWRpbyBkZXNrdG9wLWZpbGUtdXRpbHMgdXBv d2VyIGNvbG9yZCBjdXBzLXBrLWhlbHBlcgogIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMgaGlj b2xvci1pY29uLXRoZW1lIGlzby1jb2RlcyBzb3VuZC10aGVtZS1mcmVlZGVza3RvcAogIGNyYWNr bGliIgorY2hlY2tkZXBlbmRzPSJweXRob24zLWRidXNtb2NrIHhvcmctc2VydmVyLXh2ZmIiCiBz aG9ydF9kZXNjPSJHTk9NRSBjb250cm9sIGNlbnRlciIKIG1haW50YWluZXI9IkVubm8gQm9sYW5k IDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1jb250cm9sLWNlbnRl ciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTVmODJlY2Q1NTU0MTM2YzQ2MjI0 OGVjNTM2M2I4MmQ5NTM1OGIzOWRmZDY3ODcwMDZkODMwN2I0NTA0ZTUxNWUKK2NoZWNrc3VtPWUw YTVlZmYwYzZkNmMyMmRiMGM1NGZkMDcwNDYwZGU4NzRkMzY3ZWYzZjkwNzJlMTU1OWI3MGYyOGI4 NDc4MTcKIAogYnVpbGRfb3B0aW9ucz0iY2hlZXNlIgogZGVzY19vcHRpb25fY2hlZXNlPSJBZGQg c3VwcG9ydCBmb3IgYWRkaW5nIHVzZXIgYWNjb3VudCBpbWFnZXMgd2l0aCB5b3VyIHdlYmNhbSIK KworcHJlX2NoZWNrKCkgeworCSMgdGVzdC1uZXR3b3JrLXBhbmVsIG5lZWRzIGlkIGdlbmVyYXRl ZCBieSBkYnVzLXV1aWRnZW4KKwlta2RpciAtcCAvdmFyL2xpYi9kYnVzCisJZGJ1cy11dWlkZ2Vu IC0tZW5zdXJlCit9CisKK3Bvc3RfY2hlY2soKSB7CisJcm0gLXJmIC92YXIvbGliL2RidXMKK30K KwogaWYgWyAteiAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJYnVpbGRfb3B0aW9uc19kZWZhdWx0 Kz0iIGNoZWVzZSIKIGZpCgpGcm9tIDc3MTlhYTliNjMzY2QwYjYyY2UwNDFlNWRiYzk4Y2E2MzUw ZGMwNmUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMDo1Nzo0NSArMDYwMApTdWJqZWN0OiBb UEFUQ0ggMTcvNTJdIGdub21lLXNldHRpbmdzLWRhZW1vbjogdXBkYXRlIHRvIDMuMzYuMS4KCkFk ZGVkIGEgcGF0Y2ggdG8gZml4IGJyaWdodG5lc3MgY29udHJvbHMgd2l0aCBlbG9naW5kLgotLS0K IC4uLnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5wYXRjaCB8IDEyMSArKysr KysrKysrKysrKysrKysKIHNyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlICAg ICAgICB8ICAxMCArLQogMiBmaWxlcyBjaGFuZ2VkLCAxMjYgaW5zZXJ0aW9ucygrKSwgNSBkZWxl dGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1v bi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5wYXRjaAoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3BhdGNoZXMvZG9udC11 c2UtbG9naW5kLWZvci1icmlnaHRuZXNzLWNoYW5naW5nLnBhdGNoIGIvc3JjcGtncy9nbm9tZS1z ZXR0aW5ncy1kYWVtb24vcGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5lc3MtY2hh bmdpbmcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmEzYTgz NGUzYjc0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24v cGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5lc3MtY2hhbmdpbmcucGF0Y2gKQEAg LTAsMCArMSwxMjEgQEAKK1Vwc3RyZWFtIGludHJvZHVjZWQgYnJpZ2h0bmVzcyBsZXZlbCBjaGFu Z2luZyB3aXRoCitodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2V0dGluZ3Mt ZGFlbW9uLy0vY29tbWl0L2NkMDUxZTZjN2NjZmI3ZTdiMGVjNDQwNDA5YzU1OWIyZTUxMjg0ZTgK K2J1dCBhcHBhcmVudGx5IHRoaXMgZG9lc24ndCB3b3JrIHdpdGggZWxvZ2luZCAoc2VlIGh0dHBz Oi8vZ2l0aHViLmNvbS9lbG9naW5kL2Vsb2dpbmQvaXNzdWVzLzE1OCksCitzbyBsZXQncyByZXZl cnQgdGhpcyBmb3Igbm93IGFuZCBrZWVwIHVzaW5nIHRoZSBvbGQgbWVjaGFuaXNtLgorZGlmZiAt LWdpdCBwbHVnaW5zL3Bvd2VyL2dzZC1iYWNrbGlnaHQuYyBwbHVnaW5zL3Bvd2VyL2dzZC1iYWNr bGlnaHQuYworaW5kZXggOWY0MDZjOS4uOWM4NzJmOCAxMDA2NDQKKy0tLSBwbHVnaW5zL3Bvd2Vy L2dzZC1iYWNrbGlnaHQuYworKysrIHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jCitAQCAt NDAsOCArNDAsNiBAQCBzdHJ1Y3QgX0dzZEJhY2tsaWdodAorICAgICAgICAgZ2ludCBicmlnaHRu ZXNzX3N0ZXA7CisgCisgI2lmZGVmIF9fbGludXhfXworLSAgICAgICAgR0RCdXNQcm94eSAqbG9n aW5kX3Byb3h5OworLQorICAgICAgICAgR1VkZXZDbGllbnQgKnVkZXY7CisgICAgICAgICBHVWRl dkRldmljZSAqdWRldl9kZXZpY2U7CisgCitAQCAtNjEsMTAgKzU5LDYgQEAgZW51bSB7CisgICAg ICAgICBQUk9QX0xBU1QsCisgfTsKKyAKKy0jZGVmaW5lIFNZU1RFTURfREJVU19OQU1FICAgICAg ICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9wLmxvZ2luMSIKKy0jZGVmaW5lIFNZU1RF TURfREJVU19QQVRIICAgICAgICAgICAgICAgICAgICAgICAiL29yZy9mcmVlZGVza3RvcC9sb2dp bjEvc2Vzc2lvbi9hdXRvIgorLSNkZWZpbmUgU1lTVEVNRF9EQlVTX0lOVEVSRkFDRSAgICAgICAg ICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AubG9naW4xLlNlc3Npb24iCistCisgc3RhdGljIEdQ YXJhbVNwZWMgKnByb3BzW1BST1BfTEFTVF07CisgCisgc3RhdGljIHZvaWQgICAgIGdzZF9iYWNr bGlnaHRfaW5pdGFibGVfaWZhY2VfaW5pdCAoR0luaXRhYmxlSWZhY2UgICppZmFjZSk7CitAQCAt NDgxLDMxICs0NzUsMTMgQEAgZ3NkX2JhY2tsaWdodF9zZXRfYnJpZ2h0bmVzc192YWxfYXN5bmMg KEdzZEJhY2tsaWdodCAqYmFja2xpZ2h0LAorICNpZmRlZiBfX2xpbnV4X18KKyAgICAgICAgIGlm IChiYWNrbGlnaHQtPnVkZXZfZGV2aWNlICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAgQmFj a2xpZ2h0SGVscGVyRGF0YSAqdGFza19kYXRhOworKyAgICAgICAgICAgICAgICAgIHRhc2tfZGF0 YSA9IGdfbmV3MCAoQmFja2xpZ2h0SGVscGVyRGF0YSwgMSk7CisrICAgICAgICAgICAgICAgICAg dGFza19kYXRhLT52YWx1ZSA9IGJhY2tsaWdodC0+YnJpZ2h0bmVzc190YXJnZXQ7CisrICAgICAg ICAgICAgICAgICAgZ190YXNrX3NldF90YXNrX2RhdGEgKHRhc2ssIHRhc2tfZGF0YSwgYmFja2xp Z2h0X3Rhc2tfZGF0YV9kZXN0cm95KTsKKyAKKy0gICAgICAgICAgICAgICAgaWYgKGJhY2tsaWdo dC0+bG9naW5kX3Byb3h5KSB7CistICAgICAgICAgICAgICAgICAgICAgICAgZ19kYnVzX3Byb3h5 X2NhbGwgKGJhY2tsaWdodC0+bG9naW5kX3Byb3h5LAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiU2V0QnJpZ2h0bmVzcyIsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGdfdmFyaWFudF9uZXcgKCIoc3N1KSIsCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJiYWNr bGlnaHQiLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBnX3VkZXZfZGV2aWNlX2dldF9uYW1lIChiYWNrbGlnaHQtPnVkZXZfZGV2aWNl KSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgYmFja2xpZ2h0LT5icmlnaHRuZXNzX3RhcmdldCksCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xLCBOVUxMLAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKKy0KKy0gICAg ICAgICAgICAgICAgICAgICAgICBwZXJjZW50ID0gQUJTX1RPX1BFUkNFTlRBR0UgKGJhY2tsaWdo dC0+YnJpZ2h0bmVzc19taW4sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfbWF4LAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2xpZ2h0LT5icmln aHRuZXNzX3RhcmdldCk7CistICAgICAgICAgICAgICAgICAgICAgICAgZ190YXNrX3JldHVybl9p bnQgKHRhc2ssIHBlcmNlbnQpOworLSAgICAgICAgICAgICAgICB9IGVsc2UgeworLSAgICAgICAg ICAgICAgICAgICAgICAgIHRhc2tfZGF0YSA9IGdfbmV3MCAoQmFja2xpZ2h0SGVscGVyRGF0YSwg MSk7CistICAgICAgICAgICAgICAgICAgICAgICAgdGFza19kYXRhLT52YWx1ZSA9IGJhY2tsaWdo dC0+YnJpZ2h0bmVzc190YXJnZXQ7CistICAgICAgICAgICAgICAgICAgICAgICAgZ190YXNrX3Nl dF90YXNrX2RhdGEgKHRhc2ssIHRhc2tfZGF0YSwgYmFja2xpZ2h0X3Rhc2tfZGF0YV9kZXN0cm95 KTsKKy0KKy0gICAgICAgICAgICAgICAgICAgICAgICAvKiBUYXNrIGlzIHNldCB1cCBub3cuIFF1 ZXVlIGl0IGFuZCBlbnN1cmUgd2UgYXJlIHdvcmtpbmcgc29tZXRoaW5nLiAqLworLSAgICAgICAg ICAgICAgICAgICAgICAgIGdfcXVldWVfcHVzaF90YWlsICgmYmFja2xpZ2h0LT50YXNrcywgdGFz ayk7CistICAgICAgICAgICAgICAgICAgICAgICAgZ3NkX2JhY2tsaWdodF9wcm9jZXNzX3Rhc2tx dWV1ZSAoYmFja2xpZ2h0KTsKKy0gICAgICAgICAgICAgICAgfQorKyAgICAgICAgICAgICAgICAg IC8qIFRhc2sgaXMgc2V0IHVwIG5vdy4gUXVldWUgaXQgYW5kIGVuc3VyZSB3ZSBhcmUgd29ya2lu ZyBzb21ldGhpbmcuICovCisrICAgICAgICAgICAgICAgICAgZ19xdWV1ZV9wdXNoX3RhaWwgKCZi YWNrbGlnaHQtPnRhc2tzLCB0YXNrKTsKKysgICAgICAgICAgICAgICAgICBnc2RfYmFja2xpZ2h0 X3Byb2Nlc3NfdGFza3F1ZXVlIChiYWNrbGlnaHQpOworIAorICAgICAgICAgICAgICAgICByZXR1 cm47CisgICAgICAgICB9CitAQCAtODIzLDcgKzc5OSw2IEBAIGdzZF9iYWNrbGlnaHRfaW5pdGFi bGVfaW5pdCAoR0luaXRhYmxlICAgICAgICppbml0YWJsZSwKKyB7CisgICAgICAgICBHc2RCYWNr bGlnaHQgKmJhY2tsaWdodCA9IEdTRF9CQUNLTElHSFQgKGluaXRhYmxlKTsKKyAgICAgICAgIEdu b21lUlJPdXRwdXQqIG91dHB1dCA9IE5VTEw7CistICAgICAgICBHRXJyb3IgKmxvZ2luZF9lcnJv ciA9IE5VTEw7CisgCisgICAgICAgICBpZiAoY2FuY2VsbGFibGUgIT0gTlVMTCkgeworICAgICAg ICAgICAgICAgICBnX3NldF9lcnJvcl9saXRlcmFsIChlcnJvciwgR19JT19FUlJPUiwgR19JT19F UlJPUl9OT1RfU1VQUE9SVEVELAorQEAgLTgzMiwzOCArODA3LDYgQEAgZ3NkX2JhY2tsaWdodF9p bml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICAgKmluaXRhYmxlLAorICAgICAgICAgfQorIAor ICNpZmRlZiBfX2xpbnV4X18KKy0gICAgICAgIGJhY2tsaWdodC0+bG9naW5kX3Byb3h5ID0KKy0g ICAgICAgICAgICAgICAgZ19kYnVzX3Byb3h5X25ld19mb3JfYnVzX3N5bmMgKEdfQlVTX1RZUEVf U1lTVEVNLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws CistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWVNURU1E X0RCVVNfTkFNRSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFNZU1RFTURfREJVU19QQVRILAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgU1lTVEVNRF9EQlVTX0lOVEVSRkFDRSwKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsICZsb2dpbmRfZXJyb3IpOworLSAg ICAgICAgaWYgKGJhY2tsaWdodC0+bG9naW5kX3Byb3h5KSB7CistICAgICAgICAgICAgICAgIC8q IENoZWNrIHRoYXQgdGhlIFNldEJyaWdodG5lc3MgbWV0aG9kIGRvZXMgZXhpc3QgKi8KKy0gICAg ICAgICAgICAgICAgZ19kYnVzX3Byb3h5X2NhbGxfc3luYyAoYmFja2xpZ2h0LT5sb2dpbmRfcHJv eHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTZXRCcmlnaHRu ZXNzIiwgTlVMTCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19E QlVTX0NBTExfRkxBR1NfTk9ORSwgLTEsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsICZsb2dpbmRfZXJyb3IpOworLQorLSAgICAgICAgICAgICAgICBpZiAo Z19lcnJvcl9tYXRjaGVzIChsb2dpbmRfZXJyb3IsIEdfREJVU19FUlJPUiwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0VSUk9SX0lOVkFMSURfQVJHUykpIHsK Ky0gICAgICAgICAgICAgICAgICAgICAgICAvKiBXZSBhcmUgY2FsbGluZyB0aGUgbWV0aG9kIHdp dGggbm8gYXJndW1lbnRzLCBzbworLSAgICAgICAgICAgICAgICAgICAgICAgICAqIHRoaXMgaXMg ZXhwZWN0ZWQuCistICAgICAgICAgICAgICAgICAgICAgICAgICovCistICAgICAgICAgICAgICAg ICAgICAgICAgZ19jbGVhcl9lcnJvciAoJmxvZ2luZF9lcnJvcik7CistICAgICAgICAgICAgICAg IH0gZWxzZSB7CistICAgICAgICAgICAgICAgICAgICAgICAgLyogRmFpbCBvbiBhbnl0aGluZyBl bHNlICovCistICAgICAgICAgICAgICAgICAgICAgICAgZ19jbGVhcl9vYmplY3QgKCZiYWNrbGln aHQtPmxvZ2luZF9wcm94eSk7CistICAgICAgICAgICAgICAgIH0KKy0gICAgICAgIH0KKy0KKy0g ICAgICAgIGlmIChsb2dpbmRfZXJyb3IpIHsKKy0gICAgICAgICAgICAgICAgZ193YXJuaW5nICgi Tm8gbG9naW5kIGZvdW5kOiAlcyIsIGxvZ2luZF9lcnJvci0+bWVzc2FnZSk7CistICAgICAgICAg ICAgICAgIGdfZXJyb3JfZnJlZSAobG9naW5kX2Vycm9yKTsKKy0gICAgICAgIH0KKy0KKyAgICAg ICAgIC8qIFRyeSBmaW5kaW5nIGEgdWRldiBkZXZpY2UuICovCisgICAgICAgICBpZiAoZ3NkX2Jh Y2tsaWdodF91ZGV2X2luaXQgKGJhY2tsaWdodCkpCisgICAgICAgICAgICAgICAgIGdvdG8gZm91 bmQ7CitAQCAtOTA1LDcgKzg0OCw2IEBAIGdzZF9iYWNrbGlnaHRfZmluYWxpemUgKEdPYmplY3Qg Km9iamVjdCkKKyAjaWZkZWYgX19saW51eF9fCisgICAgICAgICBnX2Fzc2VydCAoYmFja2xpZ2h0 LT5hY3RpdmVfdGFzayA9PSBOVUxMKTsKKyAgICAgICAgIGdfYXNzZXJ0IChnX3F1ZXVlX2lzX2Vt cHR5ICgmYmFja2xpZ2h0LT50YXNrcykpOworLSAgICAgICAgZ19jbGVhcl9vYmplY3QgKCZiYWNr bGlnaHQtPmxvZ2luZF9wcm94eSk7CisgICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJhY2tsaWdo dC0+dWRldik7CisgICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJhY2tsaWdodC0+dWRldl9kZXZp Y2UpOworICAgICAgICAgaWYgKGJhY2tsaWdodC0+aWRsZV91cGRhdGUpIHsKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUKaW5kZXggYTcwZTI4YmU1ZmEuLjljZWIxZDEzZGU5IDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2V0dGluZ3MtZGFlbW9uJwogcGtnbmFtZT1nbm9t ZS1zZXR0aW5ncy1kYWVtb24KLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTMu MzYuMQorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzKz0iLURz eXN0ZW1kPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJjbWFrZSBkb2Nib29rLXhzbCBnbGliLWRl dmVsIGxpYmdsaWItZGV2ZWwgbGlieHNsdCBwZXJsIHBrZy1jb25maWciCitjb25maWd1cmVfYXJn cz0iLURzeXN0ZW1kPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJjbWFrZSBkb2Nib29rLXhzbCBn ZXR0ZXh0IGdsaWItZGV2ZWwgbGliZ2xpYi1kZXZlbCBsaWJ4c2x0IHBlcmwgcGtnLWNvbmZpZyIK IG1ha2VkZXBlbmRzPSJOZXR3b3JrTWFuYWdlci1kZXZlbCBhbHNhLWxpYi1kZXZlbCBjb2xvcmQt ZGV2ZWwgY3Vwcy1kZXZlbCBnY3ItZGV2ZWwKICBnZW9jbHVlMi1kZXZlbCBnbm9tZS1kZXNrdG9w LWRldmVsIGlidXMtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliZ25vbWVrYmQtZGV2ZWwKICBs aWJnd2VhdGhlci1kZXZlbCBsaWJub3RpZnktZGV2ZWwgbGlicnN2Zy1kZXZlbCBsaWJ3YWNvbS1k ZXZlbCBuc3MtZGV2ZWwKQEAgLTE4LDcgKzE4LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQg PGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNldHRpbmdzLWRhZW1v biIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTk5ODFhMjBiYWJmOGRhNzc0NGI3 ZmJlMTc1YjllMzYwNzhiZjA4ZjNiZjY1ZmU1YWVkZWI4MmNmZTI3YWMxMWYKK2NoZWNrc3VtPTNl MzNkYmQzMTliNTYyYTVhYjYwMmRjYWI2ZGUzY2E4MWI4NWY4MzQ2NjcyZTkwZWM2MzJiMzZiYmYx NWVlNGIKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0i IHBvbGtpdCIKCkZyb20gZjBiOWYxYjkwYmNmNzI1NTQ0MmJmNjdjYjk4YTNmNTcxODIwOWI3OSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDEwOjExOjU0ICswNjAwClN1YmplY3Q6IFtQQVRDSCAx OC81Ml0gZ25vbWUtdXNlci1kb2NzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2du b21lLXVzZXItZG9jcy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS11 c2VyLWRvY3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZQppbmRl eCA0Y2I1NTM5NmUzNy4uY2E5OTMzNDZlM2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtdXNl ci1kb2NzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlCkBA IC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdXNlci1kb2NzJwogcGtn bmFtZT1nbm9tZS11c2VyLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMCw3 ICsxMCw3IEBAIGRlcGVuZHM9InllbHAiCiBzaG9ydF9kZXNjPSJVc2VyIGRvY3VtZW50YXRpb24g Zm9yIEdOT01FIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkNDLUJZLTMuMCIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vR05P TUUvZ25vbWUtdXNlci1kb2NzIgotI2NoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNv bnRlbnQuY29tL0dOT01FL2dub21lLXVzZXItZG9jcy9tYXN0ZXIvTkVXUyIKK2hvbWVwYWdlPSJo dHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzIgorY2hhbmdlbG9n PSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzLy0vcmF3LzMu MzYuMi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OGY5OTA3ZmYxNWZm Zjk3ZGE3NWVjZTY0NWNjODY3NjY3MDNhYzU0ZDcxNmQyNTU2M2JhNjdmZmVkMWFmMjRlZAorY2hl Y2tzdW09MTk4ZmU0YzgzNjc3NWE1ZGMyNTQzYTZhNTIwZGZiMGFjNWJmMjkyY2RjYjM1OGE1N2M4 NmYzNWY3MDVlOTk1OAoKRnJvbSBkYzVlZjE3NGYzZDU2MGZkZDBiZDFmYzM2MDgxNDUyODdiMWNj YTllIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBTdW4sIDMgTWF5IDIwMjAgMDI6MjA6NTIgKzA2MDAKU3ViamVjdDogW1BB VENIIDE5LzUyXSBnbm9tZS1pbml0aWFsLXNldHVwOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBz cmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUgfCAxMCArKysrKy0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtaW5p dGlhbC1zZXR1cC90ZW1wbGF0ZQppbmRleCBhYmE1YTA5NGMyOC4uNzNlZjk2YjE5OTMgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLWluaXRpYWwtc2V0dXAnCiBwa2duYW1lPWdub21lLWluaXRpYWwt c2V0dXAKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMgorcmV2aXNp b249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSItRHNvZnR3YXJlLXNvdXJj ZXM9ZGlzYWJsZWQgLURzeXN0ZW1kPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IGdsaWItZGV2ZWwiCitjb25maWd1cmVfYXJncz0iLURwYXJlbnRhbF9jb250cm9scz1kaXNhYmxl ZCAtRHN5c3RlbWQ9ZmFsc2UiCitob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBn bGliLWRldmVsIgogbWFrZWRlcGVuZHM9Ik5ldHdvcmtNYW5hZ2VyLWRldmVsIGFjY291bnRzc2Vy dmljZS1kZXZlbCBsaWJnbGliLWRldmVsCiAgZ25vbWUtZGVza3RvcC1kZXZlbCBjaGVlc2UtZGV2 ZWwgbGliZ3dlYXRoZXItZGV2ZWwgd2Via2l0Mmd0ay1kZXZlbAogIGdub21lLW9ubGluZS1hY2Nv dW50cy1kZXZlbCBnZG0tZGV2ZWwgbGlicHdxdWFsaXR5LWRldmVsCkBAIC0xNyw0ICsxNyw0IEBA IG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNl PSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvRGVz aWduL09TL0luaXRpYWxTZXR1cCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9 LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWU3 MWYxMGVmNmI2MzFjZDkyZmZkZTc3NGU0MTMwYjMyYjI0OTRiNGRmNWVmMjg4Mzc1ZDhiMTk1N2Vl YWJmYTEKK2NoZWNrc3VtPTRmOGJlNDFhZWExMDBjNTZkYmY4ZjBmZTFlMjM1NGQyZDFhYzA1Y2Yx Yzc5YTAxY2M5NzVjNmFhODkxNDU3NTYKCkZyb20gZGEzNDRkMjgwYWE1OTFhMmJkOTRhZjhlMTNh ODg5MjdlMzYzZjE3YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjE1ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAyMC81Ml0gZXZvbHV0aW9uLWRhdGEtc2VydmVyOiB1cGRhdGUgdG8gMy4z Ni4yLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSBiL3NyY3BrZ3Mv ZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCmluZGV4IDg4NWExMTVmNDliLi5kZWM3MmU3 YzQyNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKQEAgLTEsNiArMSw2 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZGF0YS1zZXJ2ZXInCiBwa2duYW1l PWV2b2x1dGlvbi1kYXRhLXNlcnZlcgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiBy ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWdpcgpAQCAtMTcsNyAr MTcsNyBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVz ZXJjb250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvZ25vbWUtMy0zNi9ORVdT IgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MTMxMjJiMmVkZGRiOTgzMDYyMDdk MmEzNWQ1Y2NhZTI1YTkwNzAyNzY5Y2EwYTBiNTE2NTNiNTk4NDk4Njc5NgorY2hlY2tzdW09OThl Mjc0Y2ZlYzE2Y2VlNmE0YjNiOWM3ODk3ZjZlMTEzNmQwMGU0ZjMxYTBkNjYyMTQ5MjVhYmJhYzc2 ZTk3YgogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRo ZW4KCkZyb20gZjA4YjY5ZDBlZTliZmFjYTNiMzM3NTNhYWY0MDE0MmY1NzBjYWY2MiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCAyMS81Ml0g ZXZvbHV0aW9uOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi90ZW1w bGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSBiL3NyY3BrZ3Mv ZXZvbHV0aW9uL3RlbXBsYXRlCmluZGV4IDU2MGVkOTNkYTAyLi5jOWMzYWZiN2Y2ZiAxMDA2NDQK LS0tIGEvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ldm9sdXRpb24v dGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24n CiBwa2duYW1lPWV2b2x1dGlvbgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ERU5BQkxFX0FVVE9B Uj1PRkYgLURFTkFCTEVfTElCQ1JZUFRVST1PRkYgLURFTkFCTEVfR1RLU1BFTEw9T0ZGCkBAIC0x OSw3ICsxOSw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyLCBMR1BMLTMuMC1vci1sYXRl ciwgR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvRXZvbHV0aW9uIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5j b20vR05PTUUvZXZvbHV0aW9uL2dub21lLTMtMzYvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPTg3M2FjZjFkYmVjMzhlNjdlMTY5MDY0NjQ1YWMzYTliOWE5NDRiZDJiNjMz MTYxZGY2ZTVmMDU3MDBlMzZjYjgKK2NoZWNrc3VtPWM1MDk0OGMxYTNkZGIzOWI3MmFjZDkzZGU3 N2Y5NDc4N2NkYzFiZWYzMzBiOTY3YmJiOGI2YzcyMzM0MzMxOGEKIHNobGliX3Byb3ZpZGVzPSJs aWJldm9sdXRpb24tY2FsZW5kYXIuc28gbGliZXZvbHV0aW9uLXV0aWwuc28gbGliZW1haWwtZW5n aW5lLnNvCiAgbGliZXZvbHV0aW9uLW1haWwuc28gbGliZXZvbHV0aW9uLXNoZWxsLnNvIgogCgpG cm9tIGI4NWVmODU4MDVlM2E2YWVhNzA0MjYwZWViODhhYzhiZGQ1MjZkYzEgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZy aSwgMSBNYXkgMjAyMCAwODozODoyNyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjIvNTJdIGV2b2x1 dGlvbi1ld3M6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWV3cy90 ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUgYi9z cmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKaW5kZXggNGZmODExNjQ2NmMuLmExNzFmNGM0 YTA4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZXZvbHV0aW9uLWV3cycKIHBrZ25hbWU9ZXZvbHV0aW9uLWV3cwotdmVyc2lvbj0z LjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29u ZmlndXJlX2FyZ3M9Ii1ETElCRVhFQ19JTlNUQUxMX0RJUj0vdXNyL2xpYi9ldm9sdXRpb24iCkBA IC0xMiw0ICsxMiw0IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8v cmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24tZXdzL2dub21lLTMtMzYv TkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQwODgzYzdkMjI3ODI3Y2M1 YzQ0NjhiN2UzMWEzZWUzNzBiY2Q3ZDQxYTRkYmI5NTBhYjVkYjM2Yzk1NTFhYzEKK2NoZWNrc3Vt PTJlNDJlNDg5MDQ4N2Y4YzdmOWQ3NzZhNDQ0NGRmNmVmZDUyOTljYTAwM2EzMDAwMmViNWYwMjIw OTFkYzM1OWQKCkZyb20gMTEzN2Q0YjFlNTlhNzQzNGFkMzQyYTEzNzUwMDk3NTBiZGMwZjBiMiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDExOjIwOjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCAy My81Ml0gYXRrOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL2F0ay90ZW1wbGF0ZSB8 IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXRrL3RlbXBsYXRlIGIvc3JjcGtncy9hdGsvdGVtcGxh dGUKaW5kZXggN2MxNGIxMTY1OTguLmNhMjJkMzY2MTk4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0 ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F0ay90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxOCBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnYXRrJwogcGtnbmFtZT1hdGsKLXZlcnNpb249Mi4zNC4xCit2 ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii1EaW50cm9zcGVjdGlvbj0kKHZvcHRfaWYgZ2lyIHRy dWUgZmFsc2UpIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwiCitob3N0 bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9 ImxpYmdsaWItZGV2ZWwiCiBzaG9ydF9kZXNjPSJTZXQgb2YgaW50ZXJmYWNlcyBmb3IgYWNjZXNz aWJpbGl0eSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2RldmVsb3Bl ci5nbm9tZS5vcmcvYXRrLyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9hdGsvJHt2ZXJzaW9u JS4qfS9hdGstJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1kNGYwZTNiM2QyMTI2NWZjZjJi YzM3MWUxMTdkYTUxYzQyZWRlMWE3MWY2ZGIxYzgzNGU2OTc2YmIyMDk5N2NiCitjaGVja3N1bT1m Yjc2MjQ3ZTM2OTQwMmJlMjNmMWY1YzY1ZDM4YTk2MzljMTE2NGQ5MzRlNDBmNmE5Y2YzYzllOTZi NjUyNzg4CiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25zCiBidWlsZF9vcHRpb25zPSJnaXIiCgpG cm9tIDg4ZWRhZTFkNjQ2MjU5MTQxNzE2NWRiYjlkMmQ1YzRiNTA0MmVhNTIgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1 ZSwgNSBNYXkgMjAyMCAxMjo0Mzo1MiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjQvNTJdIGF0LXNw aTItY29yZTogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVt cGxhdGUgfCA5ICsrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZSBi L3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCmluZGV4IGIzODNmZTk5YmVkLi5mYjc5OWFm N2U1MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKQEAgLTEsMTggKzEsMTcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2F0LXNwaTItY29yZScKIHBrZ25hbWU9YXQtc3BpMi1jb3JlCi12ZXJzaW9uPTIu MzQuMAordmVyc2lvbj0yLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWls ZF9oZWxwZXI9ImdpciIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2 ZWwiCi1tYWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJYZXh0LWRldmVsIGxpYlNNLWRldmVs IGxpYlh0c3QtZGV2ZWwKLSBsaWJYZXZpZS1kZXZlbCBkYnVzLWRldmVsIgoraG9zdG1ha2VkZXBl bmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgZGJ1cyBnbGliLWRldmVsIgorbWFrZWRlcGVuZHM9Imxp YmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBkYnVzLWRldmVsIgogc2hvcnRf ZGVzYz0iQXNzaXN0aXZlIFRlY2hub2xvZ3kgU2VydmljZSBQcm92aWRlciBJbnRlcmZhY2UiCiBt YWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0i R1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05P TUUvYXQtc3BpMi1jb3JlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDYyOWNk YmQ2NzRlNTM5Zjg5MTIwMjg1MTJhZjU4Mzk5MDkzOGM3YjQ5ZTI1MTg0YzEyNmIwMDEyMWVmMTFj NgorY2hlY2tzdW09ODhkYTU3ZGUwYTdlM2M2MGJjMzQxYTk3NGE4MGZkYmEwOTE2MTJkYjM1NDdj NDEwZDZkZWFiMDM5Y2E1YzA1YQogCiAjIFBhY2thZ2UgYnVpbGQgb3B0aW9ucwogYnVpbGRfb3B0 aW9ucz0iZ2lyIgoKRnJvbSA1Yzc1MjY1ODYzMjYxNTg4MDMxMWIwZjkxMTVlODAyYTA0N2M3MTIx IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTI6NDQ6MDAgKzA2MDAKU3ViamVjdDogW1BBVENI IDI1LzUyXSBhdC1zcGkyLWF0azogdXBkYXRlIHRvIDIuMzQuMi4KCi0tLQogc3JjcGtncy9hdC1z cGkyLWF0ay90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBs YXRlIGIvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQppbmRleCA0MzUxYjc5OTZmMy4uYWE3 Yjg4MzljOWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXQtc3BpMi1hdGsvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2F0LXNwaTItYXRrJwogcGtnbmFtZT1hdC1zcGkyLWF0awotdmVyc2lvbj0yLjM0 LjEKK3ZlcnNpb249Mi4zNC4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1h a2VkZXBlbmRzPSJsaWJ0b29sIHBrZy1jb25maWcgaW50bHRvb2wgZ2xpYi1kZXZlbCIKQEAgLTEw LDcgKzEwLDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkxHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cuZ25v bWUub3JnIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4q fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09Nzc2ZGY5MzA3NDhmZGU3 MWMxMjhiZTZjMzY2YTk4N2I5OGI2ZWU2NmQ1MDhlZDljOGRiMjM1NWJmNGI5Y2MxNgorY2hlY2tz dW09OTAxMzIzY2VlMGVlZjA1YzAxZWM0ZGVlMDZjNzAxYWVlY2E4MWEzMTRhN2Q2MDIxNmZhMzYz MDA1ZTI3ZjRmMAogCiBhdC1zcGkyLWF0ay1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9IiR7 bWFrZWRlcGVuZHN9ICR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKCkZyb20g MmQ0M2JhN2ZkZmJmNDMwNTVlNmQzZDM2NTk4YjU0M2UwZWFiZGQzMCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCA2 IE1heSAyMDIwIDE5OjQ3OjU4ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNi81Ml0gcHl0aG9uLWF0 c3BpOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0 ZSB8IDExICsrKystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA3IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRlIGIv c3JjcGtncy9weXRob24tYXRzcGkvdGVtcGxhdGUKaW5kZXggY2ZhMWVmMzUzNzcuLjEwYTZjYTdi YzcyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQpAQCAtMSwyMSArMSwxOSBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncHl0aG9uLWF0c3BpJwogcGtnbmFtZT1weXRob24tYXRzcGkKLXZlcnNpb249Mi4z Mi4xCit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MgogYXJjaHM9bm9hcmNoCiB3cmtzcmM9InB5 YXRzcGktJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKLXB5Y29tcGlsZV9t b2R1bGU9InB5YXRzcGkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcHl0aG9uIHB5dGhv bjMiCi1tYWtlZGVwZW5kcz0iYXQtc3BpMi1jb3JlLWRldmVsIHB5dGhvbi1nb2JqZWN0LWRldmVs Ci0gcHl0aG9uMy1nb2JqZWN0LWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHB5 dGhvbiBweXRob24zIHdoaWNoIgorbWFrZWRlcGVuZHM9ImF0LXNwaTItY29yZS1kZXZlbCBweXRo b24tZ29iamVjdC1kZXZlbCIKIGRlcGVuZHM9ImF0LXNwaTItY29yZSBweXRob24tZ29iamVjdCIK IHNob3J0X2Rlc2M9IlB5dGhvbjIgYmluZGluZ3MgZm9yIEFULVNQSSIKIG1haW50YWluZXI9IkVu bm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxh dGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9weWF0c3BpMiIK IGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9weWF0c3BpLyR7dmVyc2lvbiUuKn0vcHlhdHNwaS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTg0OTU0YTViYmVhY2M4MzY0M2YwNTc3OGQ4YmVh ZmNhYjgyMDhlMTFiMzliMjQ2MzdiNGM0ZGQxZjg2MjAzODkKK2NoZWNrc3VtPTUxMzZjMWJmOTE5 ZTEwMWQ0ZWM5MDFhMjc2ZTg2ZWE2MGU1ODgxYThmZjc3NjNlMzU2ZjE5ODQwZTVmZmUxZGQKIAog cHJlX2NvbmZpZ3VyZSgpIHsKIAlta2RpciAtcCBhdHNwaS0ke3B5Ml92ZXJ9CkBAIC00Niw3ICs0 NCw2IEBAIGRvX2luc3RhbGwoKSB7CiAKIHB5dGhvbjMtYXRzcGlfcGFja2FnZSgpIHsKIAlhcmNo cz1ub2FyY2gKLQlweWNvbXBpbGVfbW9kdWxlPSJweWF0c3BpIgogCWRlcGVuZHM9ImF0LXNwaTIt Y29yZSBweXRob24zLWdvYmplY3QiCiAJc2hvcnRfZGVzYz0iJHtzaG9ydF9kZXNjL1B5dGhvbjIv UHl0aG9uM30iCiAJcGtnX2luc3RhbGwoKSB7CgpGcm9tIDZiNThlZjMwYmMyNDQ0YWI3OTI1N2U1 ZDE4MTk3N2U2ZDIyYmVhNzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxNTo0MzowMSArMDYw MApTdWJqZWN0OiBbUEFUQ0ggMjcvNTJdIGZvbGtzOiB1cGRhdGUgdG8gMC4xNC4wLgoKLS0tCiBz cmNwa2dzL2ZvbGtzL3RlbXBsYXRlIHwgMTIgKysrKysrLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg NiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZm9s a3MvdGVtcGxhdGUgYi9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRlCmluZGV4IDMzMTBjNTRmYWRkLi40 YmY3YjU1YTA4MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9mb2xrcy90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2ZvbGtzL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdmb2xrcycKIHBrZ25hbWU9Zm9sa3MKLXZlcnNpb249MC4xMy4xCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTAuMTQuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1n aXIKLWNvbmZpZ3VyZV9hcmdzPSItRGJfbHRvPWZhbHNlIC1EbGlic29jaWFsd2ViLWJhY2tlbmQ9 ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wgZ2xpYi1kZXZlbCB2 YWxhIHB5dGhvbiBnb2JqZWN0LWludHJvc3BlY3Rpb24KK2NvbmZpZ3VyZV9hcmdzPSItRGJfbHRv PWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIGdsaWItZGV2ZWwg dmFsYSBweXRob24zIGdvYmplY3QtaW50cm9zcGVjdGlvbgogIGV2b2x1dGlvbi1kYXRhLXNlcnZl ci1kZXZlbCIKLW1ha2VkZXBlbmRzPSJyZWFkbGluZS1kZXZlbCB0ZWxlcGF0aHktZ2xpYi1kZXZl bCB6ZWl0Z2Vpc3QtZGV2ZWwKK21ha2VkZXBlbmRzPSJyZWFkbGluZS1kZXZlbCB0ZWxlcGF0aHkt Z2xpYi1kZXZlbCB6ZWl0Z2Vpc3QtZGV2ZWwgcHl0aG9uMy1kYnVzbW9jawogIGxpYmdlZTA4LWRl dmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVsIgogZGVwZW5kcz0i emVpdGdlaXN0Igogc2hvcnRfZGVzYz0iR09iamVjdCBMaWJyYXJ5IHRvIGFnZ3JlZ2F0ZSBwZW9w bGUgaW50byBtZXRhY29udGFjdHMiCkBAIC0xNSw3ICsxNSw3IEBAIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0ZvbGtzIgogZGlz dGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9 LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09M2RmMWM2NjNiODJmZTIxMWFlYWQyYjMxY2Fl MWZjNDFkMTI0ZTg1NDM2Mzc1NzYyZjY3NDVjNDViYTQ2YWE1ZAorY2hlY2tzdW09ZDZlNzc4ZGE2 MzdkM2IzM2ZkOWE2YjQ1MTE1ZTgxNTdkODg2ODIxMWRjMDhiOTQzZDEwNzViNWViNzI4MmJiOQog CiBmb2xrcy1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9IiR7bWFrZWRlcGVuZHN9ICR7c291 cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKCkZyb20gNWIyYTYwMGYzOWMzMTIzMTFl OTY5OGYxNzJlOWQ5ZmU2N2I0OWRkNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjQxOjU2 ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyOC81Ml0gZmlsZS1yb2xsZXI6IHVwZGF0ZSB0byAzLjM2 LjIuCgotLS0KIHNyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUK aW5kZXggNWZiNzZkOTczMDcuLjZhMGMyODBmMGQ1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZpbGUt cm9sbGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUKQEAgLTEs NiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmaWxlLXJvbGxlcicKIHBrZ25hbWU9Zmls ZS1yb2xsZXIKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVp bGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRldmVsIGl0c3Rv b2wgcGtnLWNvbmZpZyIKQEAgLTEyLDQgKzEyLDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQg PGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0ZpbGVSb2xsZXIiCiBkaXN0ZmlsZXM9 IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJz aW9ufS50YXIueHoiCi1jaGVja3N1bT1iOTE0NGRlOGY1MzZmNTgzZWMyOWQ3MDNjMmMxNzBiZjJk MDBjNmMxNjZjZDVlM2Y3ZWZhYmRhNTUxZjEwNDc4CitjaGVja3N1bT0yNjhmN2ZkYWQ4ZDJhNzhk ZmVkNWU4MmViODcxMGJhZDM4OWMzMTFiNzIwNjY2ZDZmMDdhMDRlZDUxMDU2YmQyCgpGcm9tIGU5 NmQxYjZhYzEwNDNlYjdkMjhlMWJiMWYyMjM1NDhmNzA0MTUxMmEgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBN YXkgMjAyMCAwNzo1ODowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjkvNTJdIGRjb25mLWVkaXRv cjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUg fCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUgYi9zcmNwa2dzL2Rj b25mLWVkaXRvci90ZW1wbGF0ZQppbmRleCBkZTI1MGJiYzhhOS4uM2I4Y2Q4Y2I3MmYgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZGNvbmYt ZWRpdG9yL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGNv bmYtZWRpdG9yJwogcGtnbmFtZT1kY29uZi1lZGl0b3IKLXZlcnNpb249My4zNi4wCit2ZXJzaW9u PTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0i ZG9jYm9vay14c2wgZ2xpYi1kZXZlbCBsaWJ4c2x0IHBrZy1jb25maWcgdmFsYSIKQEAgLTEwLDQg KzEwLDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIK IGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9Qcm9qZWN0cy9kY29uZiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9 LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTcy ZWVkMDU2NzA5MTdmOGU0MzIwMGU0MGNjYzZiZTYwMjExZjBhODdiMDE3NTM0ZWFjMWZkNmM3MTcz YTA2OTMKK2NoZWNrc3VtPWVkY2VjODg2N2YwMTg1ODkxMjVmMTc3NDA3NzYwYzY0MmJiYmI1MmZl NTEyMmRhYWM1OTA1MjIzZDZiM2UxYzcKCkZyb20gMzc3ZjNiODFhODk4ZWExZWNkNWEwNDc4MGNm MDg5MGFhNzYyZmY0NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDEwOjIwOjU2ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAzMC81Ml0gdHJhY2tlcjogdXBkYXRlIHRvIDIuMy40LgoKLS0tCiBzcmNw a2dzL3RyYWNrZXIvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0 aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVt cGxhdGUgYi9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKaW5kZXggODcwMmJjZjVmMzMuLmU4MTRm NzdjNzExIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy90cmFja2VyL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICd0cmFja2VyJwogcGtnbmFtZT10cmFja2VyCi12ZXJzaW9uPTIuMy4xCit2ZXJzaW9uPTIuMy40 CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25m aWd1cmVfYXJncz0iLURkb2NzPWZhbHNlIC1EZnRzPXRydWUgLURmdW5jdGlvbmFsX3Rlc3RzPWZh bHNlCiAgLURqb3VybmFsPXRydWUgLURtYW49dHJ1ZSAtRG5ldHdvcmtfbWFuYWdlcj1lbmFibGVk IC1Ec3RlbW1lcj1kaXNhYmxlZAogIC1Ec3lzdGVtZF91c2VyX3NlcnZpY2VzPW5vIgotaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKK2hvc3RtYWtlZGVwZW5kcz0i Z2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKIG1ha2VkZXBlbmRzPSJkYnVzLWRl dmVsIGxpYmdsaWItZGV2ZWwgaWN1LWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxpYnNvdXAtZGV2 ZWwgbGlieG1sMi1kZXZlbCBzcWxpdGUtZGV2ZWwgTmV0d29ya01hbmFnZXItZGV2ZWwKICBiYXNo LWNvbXBsZXRpb24iCkBAIC0xNiw3ICsxNiw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBo YW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9 Imh0dHBzOi8vbGl2ZS5nbm9tZS5vcmcvVHJhY2tlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS90cmFja2VyLyR7dmVyc2lvbiUuKn0vdHJhY2tlci0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWI2NzQ4NzI2ZTQ2NWFkMmY0ZDk5MTU2MDYzNGIxZmQwZGY4ODQxZjNkOTgxYjNiODM3YzQx NjJhYmVkZjA4YTEKK2NoZWNrc3VtPTU3Nzk1MjI0NGFiOTc3Yzc4YjBiODhlMmY2M2M0MTk3ZWFi YTE2ZTRkNjZiZmY2OTJiN2Y1ODk5M2UwNjUxNmQKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0 aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGRidXMiCgpGcm9tIDMzMzAzZTdlYTM3MmE4MzY4Yjk1 YjM4Mjg3NzFkMmVjMzI2ZThjZDAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgNiBNYXkgMjAyMCAxOTo1NjoxNCAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggMzEvNTJdIG9yY2E6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0K IHNyY3BrZ3Mvb3JjYS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29yY2EvdGVtcGxh dGUgYi9zcmNwa2dzL29yY2EvdGVtcGxhdGUKaW5kZXggZjcwMjAyZTZkNzYuLjhhNzBjODQ5ZjZk IDEwMDY0NAotLS0gYS9zcmNwa2dzL29yY2EvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9vcmNhL3Rl bXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3JjYScKIHBrZ25h bWU9b3JjYQotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNo cz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTEzLDcgKzEzLDcgQEAgbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0 cy9PcmNhIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4q fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzFhYzY0OGI2YmUzMTQ4 OGMyNmZmOTU5MTE0Mjg3ODY5ZGY5Y2UzY2EyMTk5OWU0MGRlZDg3NzQxYzk4ODMxZgorY2hlY2tz dW09Y2YwMDU1Yjc2ZjIxNTljMzNjOWQ5ZjdkZWJiNzY5NDM1YzIwMWJiZmE2ZGNmMGYwMWZkYzU4 ZTkyOTQ3YmY0MwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVu ZHMrPSIgcHl0aG9uMy1nb2JqZWN0LWRldmVsIgoKRnJvbSBkODA3ZWNjMmNlYTk1NDU4NWRhYzdj NTI3ODdlMGJmZDI4ZjJlZDk3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6MDM6MjkgKzA2 MDAKU3ViamVjdDogW1BBVENIIDMyLzUyXSBnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jczogdXBk YXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90 ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2Nz L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQpp bmRleCA1YmVjOTM0OTBiYS4uYmVkOWI2OTYxNjIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUt Z2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1nZXR0aW5n LXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzJwogcGtnbmFtZT1nbm9tZS1nZXR0aW5nLXN0 YXJ0ZWQtZG9jcwotdmVyc2lvbj0zLjM0LjAKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBh cmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTExLDQgKzExLDQgQEAg bGljZW5zZT0iQ0MtQlktU0EtMy4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9y Zy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcyIKICNjaGFuZ2Vsb2c9Imh0dHBzOi8v Z2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy9yYXcvbWFz dGVyL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mNzBjZTJjYTIzYWQ3 ODYyMTVmM2M5MmVjODU3ODNlM2FhYmVkMDdlNGY3ODcwMGZhMjdmOWIyY2Y3NmUwM2RiCitjaGVj a3N1bT0wNDk0Yjg5MTNhOTQ2YjY0NTA1MzZlMTIwYzE1NGFiZDI5MjM4ZWJiYTJmNTI3MzQ1OTJi MWY2NDVlNTIxZGM2CgpGcm9tIDc2OGY3M2E2NjJjNjBiYjI3NDYzMjk1ZDg2MTVmZDI1MDE2ZGQz MDEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFN1biwgMTkgQXByIDIwMjAgMTY6NTE6NDIgKzA2MDAKU3ViamVjdDogW1BB VENIIDMzLzUyXSBnbm9tZS1wYW5lbDogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQogY29tbW9uL3No bGlicyAgICAgICAgICAgICAgICB8IDMgKystCiBzcmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRl IHwgNiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDM4 NWYxZTFmYTA3Li4wMTNhMGY3Y2ZiZiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9j b21tb24vc2hsaWJzCkBAIC01NjcsNyArNTY3LDggQEAgbGlicGFja2FnZWtpdC1nbGliMi5zby4x OCBQYWNrYWdlS2l0LTEuMS4xMl8xCiBsaWJwc2wuc28uNSBsaWJwc2wtMC4yMC4yXzEKIGxpYnNv dXAtMi40LnNvLjEgbGlic291cC0yLjM0LjBfMQogbGlic291cC1nbm9tZS0yLjQuc28uMSBsaWJz b3VwLWdub21lLTIuMzQuMF8xCi1saWJwYW5lbC1hcHBsZXQuc28uMyBnbm9tZS1wYW5lbC0zLjMw LjBfMQorbGliZ25vbWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQorbGlicGFuZWwt YXBwbGV0LnNvLjMgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnVuaW51bS5zby41IGxpYnVuaW51 bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVuaXF1ZS0yLjkxLjRfMQogbGlid2Via2l0 Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL2du b21lLXBhbmVsL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZQppbmRleCA3 MGYyM2I4YjU1MS4uOWIwMGJmYWI2NTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtcGFuZWwv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXBhbmVsJwogcGtnbmFtZT1nbm9tZS1wYW5l bAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTMKK3ZlcnNpb249My4zNi4xCityZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iYXhfY3Zfem9uZWlu Zm9fdHpkaXI9L3Vzci9zaGFyZS96b25laW5mbyIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dC1k ZXZlbCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB0emRhdGEgZ2V0dGV4dCIKQEAgLTE0 LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdGREwtMS4xLW9yLWxhdGVyLCBMR1BMLTIu MS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0du b21lUGFuZWwiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1hNmJjMDI1NTI1MmVl YjRiOTY0YmNiZTU1ZmQ3OTA4YjY5ZjkxNGMwNjJjNWVjOGRmZjVhYzAyNjJkMjliOTBkCitjaGVj a3N1bT0xZTIxYjcyNmRkMzk3NTIzYWU3OWQyOWViNTM4YmNhZTA5ZTM0MjdlMjNjY2Q2M2YyOGVi MjVlZjM1NTJhYmQzCiBwYXRjaF9hcmdzPSItTnAxIgogCiBnbm9tZS1wYW5lbC1kZXZlbF9wYWNr YWdlKCkgewoKRnJvbSBjN2U4ODQ0ODliNmI2ZDU1MjU0ZTJiZDc3NTUxNzUxMzZjNjJiNzViIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBTdW4sIDE5IEFwciAyMDIwIDE3OjI2OjM2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAz NC81Ml0gbWV0YWNpdHk6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIGNvbW1vbi9zaGxpYnMgICAg ICAgICAgICAgfCAxICsKIHNyY3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUgfCA2ICsrKy0tLQogMiBm aWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggMDEzYTBmN2NmYmYuLjNhMDY3 YTkyMTE4IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAg LTU2OSw2ICs1NjksNyBAQCBsaWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4zNC4wXzEKIGxpYnNv dXAtZ25vbWUtMi40LnNvLjEgbGlic291cC1nbm9tZS0yLjM0LjBfMQogbGliZ25vbWUtcGFuZWwu c28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQogbGlicGFuZWwtYXBwbGV0LnNvLjMgZ25vbWUtcGFu ZWwtMy4zNi4xXzEKK2xpYm1ldGFjaXR5LnNvLjEgbWV0YWNpdHktMy4zNi4xXzEKIGxpYnVuaW51 bS5zby41IGxpYnVuaW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVuaXF1ZS0yLjkx LjRfMQogbGlid2Via2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8xCmRpZmYgLS1n aXQgYS9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlIGIvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0 ZQppbmRleCAxZDQxOTI2NzY2OC4uYmI3ZGZjMGJmYzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWV0 YWNpdHkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZQpAQCAtMSw5ICsx LDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21ldGFjaXR5JwogcGtnbmFtZT1tZXRhY2l0eQot dmVyc2lvbj0zLjMwLjEKK3ZlcnNpb249My4zNi4xCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1n bnUtY29uZmlndXJlCi1ob3N0bWFrZWRlcGVuZHM9ImdldHRleHQtZGV2ZWwgZ2xpYi1kZXZlbCBp dHN0b29sIHBrZy1jb25maWcgeWVscC10b29scyB6ZW5pdHkiCitob3N0bWFrZWRlcGVuZHM9Imdl dHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgeWVscC10b29scyB6ZW5pdHkiCiBt YWtlZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbCBndGsrMy1kZXZlbCBs aWJjYW5iZXJyYS1kZXZlbAogIGxpYmdsaWItZGV2ZWwgbGliZ3RvcC1kZXZlbCBsaWJTTS1kZXZl bCBsaWJYY29tcG9zaXRlLWRldmVsIGxpYlhkYW1hZ2UtZGV2ZWwKICBsaWJYZml4ZXMtZGV2ZWwg bGliWGluZXJhbWEtZGV2ZWwgbGliWHJlbmRlci1kZXZlbCBsaWJYMTEtZGV2ZWwgcGFuZ28tZGV2 ZWwKQEAgLTE0LDQgKzE0LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL21ldGFjaXR5IgogZGlzdGZpbGVzPSIke0dOT01FX1NJ VEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6 IgotY2hlY2tzdW09MGYxMzExYjdhYTM4ZGU3MWM2NjA4MGJkMmI3NDRkZTJjZDk1ODBhZmNhZWU5 YzYwOTdhN2QzZjVjNDIxNzk4YQorY2hlY2tzdW09MTFmMDc2OTNlMmIyNjY4NDA3NTkwNjNhNGJj ODA3MzQ2MDcwZThlN2ZlYzhmNTNjZDA3NTdmNjY2MmMxYjMyMwoKRnJvbSA2MTgyMDI3ODU4MWQw N2E1YTgyYWMwYzI3MDg5NmUwZDg2OGVhOGYyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDA1 OjMyOjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNS81Ml0gZ25vbWUtbWVudXM6IHVwZGF0ZSB0 byAzLjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUgfCA2ICsrKy0tLQog MSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1tZW51cy90 ZW1wbGF0ZQppbmRleCAyOTEwMjEyOWMzOC4uZTc4N2ZiOGRlNmIgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ25vbWUtbWVudXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW1lbnVzJwogcGtn bmFtZT1nbm9tZS1tZW51cwotdmVyc2lvbj0zLjMyLjAKLXJldmlzaW9uPTIKK3ZlcnNpb249My4z Ni4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBidWlsZF9oZWxwZXI9 ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIgpAQCAtMTIsNyArMTIsNyBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLW1lbnVzIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09Yzg1MGM2NGIyMDc0MjY1ZmU1OWUwOTlhMzQwYjg2ODljZjNkZDQ2NThk YzlmZWRkZDJhYjVlOTVmMWE3NGI3NAorY2hlY2tzdW09ZDkzNDhmMzhiZGU5NTZmYzMyNzUzYjI4 YzFjZGUxOWMxNzViZmRiZjFmNGQ1YjA2MDAzYjNhYTA5MTUzYmIxZgogCiBidWlsZF9vcHRpb25z PSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gYzM1MGM5YjE3MjhlNGZm MmY4NzMyNjgwZjZlNzgzYjZjMjk5OGMwMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDA2OjAz OjU1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNi81Ml0gZ25vbWUtZmxhc2hiYWNrOiB1cGRhdGUg dG8gMy4zNi4zLgoKLS0tCiAuLi4vZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5w YXRjaCAgfCAyOCArKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2dub21lLWZsYXNoYmFjay90 ZW1wbGF0ZSAgICAgICAgICAgICAgfCAyNiArKysrKysrKysrKy0tLS0tLQogMiBmaWxlcyBjaGFu Z2VkLCA0NSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaAoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaCBi L3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZThhMmE1Yzg3ZmQKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gK QEAgLTAsMCArMSwyOCBAQAorZGlmZiAtLWdpdCBjb25maWd1cmUgY29uZmlndXJlCitpbmRleCAy NmNlYTUxLi5kMjQ2M2NjIDEwMDc1NQorLS0tIGNvbmZpZ3VyZQorKysrIGNvbmZpZ3VyZQorQEAg LTIwODQyLDggKzIwODQyLDggQEAgZmkKKyBpZiB0ZXN0ICJ4JHdpdGhfY29tcGl6X3Nlc3Npb24i ICE9ICJ4bm8iOyB0aGVuIDoKKyAKKyAgIGlmIHRlc3QgLW4gIiRQS0dfQ09ORklHIiAmJiBcCist ICAgIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05G SUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC45LjE0LjBc IiI7IH0gPiY1CistICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNv bXBpemNvbmZpZyA+PSAwLjkuMTQuMCIpIDI+JjUKKysgICAgeyB7ICRhc19lY2hvICIkYXNfbWU6 JHthc19saW5lbm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9y cyBcImxpYmNvbXBpemNvbmZpZyA+PSAwLjguMTYuMFwiIjsgfSA+JjUKKysgICgkUEtHX0NPTkZJ RyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGliY29tcGl6Y29uZmlnID49IDAuOC4xNi4wIikg Mj4mNQorICAgYWNfc3RhdHVzPSQ/CisgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRM SU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07 IHRoZW4KK2RpZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5hYworaW5kZXggYjZlMTQ3 MC4uZDI4YTcwYiAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBjb25maWd1cmUuYWMKK0BA IC0zNDAsNyArMzQwLDcgQEAgQUNfQVJHX1dJVEgoW2NvbXBpei1zZXNzaW9uXSwKKyAgICAgICAg ICAgICBbd2l0aF9jb21waXpfc2Vzc2lvbj0iJHdpdGh2YWwiXSwgW3dpdGhfY29tcGl6X3Nlc3Np b249ImF1dG8iXSkKKyAKKyBBU19JRihbdGVzdCAieCR3aXRoX2NvbXBpel9zZXNzaW9uIiAhPSAi eG5vIl0sIFsKKy0gIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQu MF0sCisrICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjBdLAor ICAgICAgICAgICAgICAgICAgICBbZm91bmRfY29tcGl6PSJ5ZXMiXSwgW2ZvdW5kX2NvbXBpej0i bm8iXSkKKyAKKyAgIEFTX0lGKFt0ZXN0ICJ4JGZvdW5kX2NvbXBpeiIgPSAieHllcyJdLCBbCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtZmxhc2hiYWNrL3RlbXBsYXRlCmluZGV4IGQzMjEyMGNhYjZmLi5hMjlmZjAxNjQ5ZSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKKysrIGIvc3JjcGtncy9n bm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKQEAgLTEsMjAgKzEsMjggQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2dub21lLWZsYXNoYmFjaycKIHBrZ25hbWU9Z25vbWUtZmxhc2hiYWNrCi12ZXJzaW9u PTMuMzQuMgordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj1naXIKIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1jb21waWxl LXdhcm5pbmdzPW1pbmltdW0iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2Ug Z2xpYi1kZXZlbCBnZXR0ZXh0IgotbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIGdzZXR0aW5ncy1k ZXNrdG9wLXNjaGVtYXMtZGV2ZWwKLSBsaWJnbGliLWRldmVsIGdkay1waXhidWYtZGV2ZWwgdXBv d2VyLWRldmVsIGlidXMtZGV2ZWwgcG9sa2l0LWRldmVsCi0gcHVsc2VhdWRpby1kZXZlbCBsaWJj YW5iZXJyYS1kZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRldmVsCi0gbGli eGtiZmlsZS1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCIK K2NvbmZpZ3VyZV9hcmdzPSItLXdpdGgtY29tcGl6LXNlc3Npb24gLS1lbmFibGUtY29tcGlsZS13 YXJuaW5ncz1taW5pbXVtIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9tYWtlIGds aWItZGV2ZWwgZ2V0dGV4dCBsaWJ0b29sIgorbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIHBhbS1k ZXZlbCBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzLWRldmVsIGVsb2dpbmQtZGV2ZWwKKyBnZG0t ZGV2ZWwgbGliY29tcGl6Y29uZmlnLWRldmVsIGxpYmdsaWItZGV2ZWwgZ2RrLXBpeGJ1Zi1kZXZl bCB1cG93ZXItZGV2ZWwgaWJ1cy1kZXZlbAorIHBvbGtpdC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVs IGxpYmNhbmJlcnJhLWRldmVsIGxpYnhjYi1kZXZlbCBsaWJYMTEtZGV2ZWwgcGFuZ28tZGV2ZWwK KyBsaWJ4a2JmaWxlLWRldmVsIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1kZXNrdG9wLWRl dmVsIGdub21lLXBhbmVsLWRldmVsIgogZGVwZW5kcz0iZ25vbWUtYmx1ZXRvb3RoIGdub21lLXNl c3Npb24gZ25vbWUtc2V0dGluZ3MtZGFlbW9uCi0gZ25vbWUtcGFuZWwgZ25vbWUtdGhlbWVzLXN0 YW5kYXJkIG1ldGFjaXR5IgorIGdub21lLXBhbmVsIGdub21lLXRoZW1lcy1leHRyYSBtZXRhY2l0 eSIKIHNob3J0X2Rlc2M9IkdOT01FIDMgc2Vzc2lvbiB3aXRoIHNpbWlsYXIgdXNlciBleHBlcmll bmNlIHRvIHRoZSBHTk9NRSAyLnggc2VyaWVzIgogbWFpbnRhaW5lcj0ic2hpem9uaWMgPHJlYWx0 aWF6QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25vbWVGbGFzaGJhY2siCiBkaXN0ZmlsZXM9 IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJz aW9ufS50YXIueHoiCi1jaGVja3N1bT0zYmU2NTM4OGNkMmM4ZjM5NzQxYmNjMDVkYTg3ZWY0MDAz NTE4M2E5YTM5NTAyZDY3Njk2MjQyYzJhZWI0NjljCitjaGVja3N1bT0yZGJhOWVhNDBmMmRhODFj MjI5NTRhOGNjYzI5ZjhmMWZhNGNhODM5NWE2YmI1NTI1MDY2MzU4MzI3NTFjMWE3CisKK3ByZV9j b25maWd1cmUoKSB7CisJYXV0b3JlY29uZiAtdmZpCit9CisKK3Bvc3RfaW5zdGFsbCgpIHsKKwl2 c2VkIC1pIC1lICJzLyAtLXN5c3RlbWQvL2ciICR7REVTVERJUn0vdXNyL2xpYmV4ZWMvZ25vbWUt Zmxhc2hiYWNrLXtjb21waXosbWV0YWNpdHl9Cit9CgpGcm9tIGEwYTM1YWYyMzcxM2VkNDhlNzY5 YzUyZjYxOWI4Njg0YmMxZmMwN2IgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMDY6NTk6NDAg KzA2MDAKU3ViamVjdDogW1BBVENIIDM3LzUyXSBncmFwaGVuZTogdXBkYXRlIHRvIDEuMTAuMC4K Ci0tLQogc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZSB8IDEwICsrKysrLS0tLS0KIDEgZmlsZSBj aGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9ncmFwaGVuZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUKaW5kZXgg ZjJmZTgxYTNmNDcuLmNiNzM4NWZlZGI3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dyYXBoZW5lL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dyYXBoZW5lJwogcGtnbmFtZT1ncmFwaGVuZQotdmVyc2lv bj0xLjguMgotcmV2aXNpb249MgordmVyc2lvbj0xLjEwLjAKK3JldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKLWNvbmZpZ3VyZV9hcmdzPSItRHRlc3RzPWZh bHNlIC1EYmVuY2htYXJrcz1mYWxzZQorY29uZmlndXJlX2FyZ3M9Ii1EdGVzdHM9ZmFsc2UgLURh cm1fbmVvbj1mYWxzZQogIC1EaW50cm9zcGVjdGlvbj0kKHZvcHRfaWYgZ2lyIHRydWUgZmFsc2Up IgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9ImxpYmdsaWItZGV2 ZWwiCkBAIC0xMywxMyArMTMsMTMgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5j b20vZWJhc3NpL2dyYXBoZW5lIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2dyYXBoZW5lLyR7 dmVyc2lvbiUuKn0vZ3JhcGhlbmUtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iM2ZjZjIw OTk2ZTU3YjFmNGRmMzk0MWNhYWMxMGYxNDNiYjI5ODkwYTQyZjdhNjU0MDdjZDE5MjcxZmM4OWY3 CitjaGVja3N1bT00MDZkOTdmNTFkZDRjYTYxZTkxZjg0NjY2YTAwYzNlOTc2ZDNlNjY3Y2QyNDhi NzZkOTJmZGIzNWNlODc2NDk5CiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNf ZGVmYXVsdD0iZ2lyIgogCiBwb3N0X2luc3RhbGwoKSB7Ci0JdmxpY2Vuc2UgTElDRU5TRQorCXZs aWNlbnNlIExJQ0VOU0UudHh0IExJQ0VOU0UKIH0KIAogZ3JhcGhlbmUtZGV2ZWxfcGFja2FnZSgp IHsKCkZyb20gZWQwM2ExNTQ4MjI0NGNkNjNjOTg3NDRjNTRlZThlY2EzMjdlYWQ4YyBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogVGh1LCAzMCBBcHIgMjAyMCAxMTo1MzoyOSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzgvNTJd IG11dHRlcjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgMTggKysrKysrLS0tLS0tCiAuLi4vcGF0Y2hlcy9maXgt Y29nbC1lZ2wtaW5jbHVkZXMucGF0Y2ggICAgICAgfCAxMSAtLS0tLS0tLQogc3JjcGtncy9tdXR0 ZXIvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgIHwgMjggKysrKysrKysrLS0tLS0tLS0t LQogMyBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAzNCBkZWxldGlvbnMoLSkKIGRl bGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211dHRlci9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNs dWRlcy5wYXRjaAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmlu ZGV4IDNhMDY3YTkyMTE4Li4wNjNkZjkyZTM0ZSAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicwor KysgYi9jb21tb24vc2hsaWJzCkBAIC0yOTQ0LDE1ICsyOTQ0LDE1IEBAIGxpYmRlY29yYXRpb24u c28uMCBjb21waXotY29yZS0wLjguMTRfMQogbGliY29tcGl6Y29uZmlnLnNvLjAgbGliY29tcGl6 Y29uZmlnLTAuOC4xNF8xCiBsaWJlbWVyYWxkZW5naW5lLnNvLjAgZW1lcmFsZC0wLjguMTRfMQog bGliaGFuZ3VsLnNvLjEgbGliaGFuZ3VsLTAuMS4wXzEKLWxpYm11dHRlci01LnNvLjAgbXV0dGVy LTMuMzQuMV8xCi1saWJtdXR0ZXItY2x1dHRlci01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0 dGVyLWNsdXR0ZXItNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGF0aC01 LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGF0aC01LnNvLjAgbXV0dGVyLTMu MzQuMV8xCi1saWJtdXR0ZXItY29nbC01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNv Z2wtNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5zbyBtdXR0 ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLXBhbmdvLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEK K2xpYm11dHRlci02LnNvLjAgbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY2x1dHRlci02LnNv IG11dHRlci0zLjM2LjFfMQorbGlibXV0dGVyLWNsdXR0ZXItNi5zby4wIG11dHRlci0zLjM2LjFf MQorbGlibXV0dGVyLWNvZ2wtcGF0aC02LnNvIG11dHRlci0zLjM2LjFfMQorbGlibXV0dGVyLWNv Z2wtcGF0aC02LnNvLjAgbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC02LnNvIG11dHRl ci0zLjM2LjFfMQorbGlibXV0dGVyLWNvZ2wtNi5zby4wIG11dHRlci0zLjM2LjFfMQorbGlibXV0 dGVyLWNvZ2wtcGFuZ28tNi5zbyBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLXBhbmdv LTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKIGxpYmdlb2NsdWUtMi5zby4wIGdlb2NsdWUyLTIuNC40 XzEKIGxpYmdlcHViLnNvLjAgbGliZ2VwdWItMC40XzEKIGxpYnNsb3B5LnNvLjcuNSBzbG9wLTcu NV8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL211dHRlci9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNs dWRlcy5wYXRjaCBiL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVz LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkOTA5ODg4ODdjMy4uMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi0tLS0gY29nbC9jb2dsL21lc29u LmJ1aWxkCTIwMTktMTAtMDggMTk6MTU6MTAuMDAwMDAwMDAwICswMjAwCi0rKysgY29nbC9jb2ds L21lc29uLmJ1aWxkCTIwMTktMTItMTYgMTU6NDU6NDQuMDM3NjQwNTQ4ICswMTAwCi1AQCAtNDgs NyArNDgsNyBAQAotIGJ1aWx0X2hlYWRlcnMgKz0gW2NvZ2xfZ2xfaGVhZGVyX2hdCi0gCi0gaWYg aGF2ZV9lZ2wKLS0gIGNvZ2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2Vn bC5oPlxuI2luY2x1ZGUgPEVHTC9lZ2xleHQuaD4nCi0rICBjb2dsX2VnbF9pbmNsdWRlc19zdHJp bmcgPSAnI2luY2x1ZGUgPEVHTC9lZ2wuaD5cbiNpbmNsdWRlIDxFR0wvZWdsZXh0Lmg+XG4jaW5j bHVkZSA8RUdML2VnbG1lc2FleHQuaD4nCi0gZWxzZQotICAgY29nbF9lZ2xfaW5jbHVkZXNfc3Ry aW5nID0gJycKLSBlbmRpZgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUgYi9z cmNwa2dzL211dHRlci90ZW1wbGF0ZQppbmRleCA0ZTBiZDMyYjY3ZC4uN2MxNDgyOWFmOWUgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbXV0dGVyL3Rl bXBsYXRlCkBAIC0xLDM0ICsxLDM0IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtdXR0ZXInCiBw a2duYW1lPW11dHRlcgotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTIKK3ZlcnNpb249My4zNi4y CityZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25m aWd1cmVfYXJncz0iLURlZ2xfZGV2aWNlPXRydWUgLUR1ZGV2PXRydWUgLURuYXRpdmVfYmFja2Vu ZD10cnVlCi0gLURwcm9maWxlcj1mYWxzZSAtRGludHJvc3BlY3Rpb249dHJ1ZSAtRHh3YXlsYW5k X3BhdGg9L3Vzci9iaW4vWHdheWxhbmQiCitjb25maWd1cmVfYXJncz0iLURlZ2xfZGV2aWNlPXRy dWUgLUR1ZGV2PXRydWUgLURuYXRpdmVfYmFja2VuZD10cnVlIC1EcHJvZmlsZXI9ZmFsc2UKKyAt RGludHJvc3BlY3Rpb249dHJ1ZSAtRHh3YXlsYW5kX2luaXRmZD1kaXNhYmxlZCAtRHh3YXlsYW5k X3BhdGg9L3Vzci9iaW4vWHdheWxhbmQiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1k ZXZlbCBwa2ctY29uZmlnIHplbml0eSB3YXlsYW5kLWRldmVsIHhvcmctc2VydmVyIgotbWFrZWRl cGVuZHM9ImVsb2dpbmQtZGV2ZWwgZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGpzb24t Z2xpYi1kZXZlbAotIGxpYmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBsaWJj YW5iZXJyYS1kZXZlbCBsaWJpbnB1dC1kZXZlbAotIE1lc2FMaWItZGV2ZWwgcGlwZXdpcmUtZGV2 ZWwgc3RhcnR1cC1ub3RpZmljYXRpb24tZGV2ZWwgd2F5bGFuZC1wcm90b2NvbHMKLSBnbm9tZS1z ZXR0aW5ncy1kYWVtb24tZGV2ZWwiCittYWtlZGVwZW5kcz0iZWxvZ2luZC1kZXZlbCBnbGliLWRl dmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgZ3JhcGhlbmUtZGV2ZWwKKyBqc29uLWdsaWItZGV2ZWwg bGliZ2xpYi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsIGxpYmNhbmJlcnJhLWRldmVs CisgbGliaW5wdXQtZGV2ZWwgTWVzYUxpYi1kZXZlbCBwaXBld2lyZS1kZXZlbCBzdGFydHVwLW5v dGlmaWNhdGlvbi1kZXZlbAorIHdheWxhbmQtcHJvdG9jb2xzIGdub21lLXNldHRpbmdzLWRhZW1v bi1kZXZlbCIKIGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyB6ZW5pdHkiCiBzaG9ydF9kZXNj PSJMaWdodHdlaWdodCBHVEsrMyB3aW5kb3cgbWFuYWdlciIKIG1haW50YWluZXI9IkVubm8gQm9s YW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvTXV0dGVyLyIKIGRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWJhMTgyNmNmODhiZGI4MWU2Mzk0M2NhYzAxNGE4 ZThiY2YzNWVjMTc4YzUzMjY0NDAxZjljNzJmZGVhYjc1OGUKLXNobGliX3Byb3ZpZGVzPSJsaWJt dXR0ZXItY2x1dHRlci01LnNvIGxpYm11dHRlci1jb2dsLTUuc28KLSBsaWJtdXR0ZXItY29nbC1w YW5nby01LnNvIGxpYm11dHRlci1jb2dsLXBhdGgtNS5zbyIKK2NoZWNrc3VtPTc1YjM3NjRlYjA1 OWZjOTM1YTU0NTIzYTYyYmVjMWJlZGI5MzUyODQwNDZiNmRhYTUwODY5YjE5NWFkZGRhZjQKK3No bGliX3Byb3ZpZGVzPSJsaWJtdXR0ZXItY2x1dHRlci02LnNvIGxpYm11dHRlci1jb2dsLTYuc28K KyBsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvIGxpYm11dHRlci1jb2dsLXBhdGgtNi5zbyIKIAog bXV0dGVyLWRldmVsX3BhY2thZ2UoKSB7Ci0JZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2No ZW1hcyBndGsrMy1kZXZlbCBjbHV0dGVyLWRldmVsIGxpYlgxMS1kZXZlbAotCSBsaWJYdHN0LWRl dmVsIG11dHRlci0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCWRlcGVuZHM9ImdzZXR0aW5ncy1k ZXNrdG9wLXNjaGVtYXMgZ3JhcGhlbmUtZGV2ZWwgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbAor CSBsaWJYMTEtZGV2ZWwgbGliWHRzdC1kZXZlbCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9u fSIKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtnX2luc3RhbGwoKSB7 CiAJCXZtb3ZlIHVzci9pbmNsdWRlCiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCi0JCXZtb3Zl ICJ1c3IvbGliL211dHRlci01LyouZ2lyIgorCQl2bW92ZSAidXNyL2xpYi9tdXR0ZXItNi8qLmdp ciIKIAkJdm1vdmUgInVzci9saWIvKi5zbyIKIAl9CiB9CgpGcm9tIDI4ZWJlNmZkMWNlNDIzOTRi YzM4MjhkZGQ2ZDAyOWJhYzlhZjdmMTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgNCBNYXkgMjAyMCAxNDozODoy MyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzkvNTJdIGdub21lLXNoZWxsOiB1cGRhdGUgdG8gMy4z Ni4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmls ZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxh dGUKaW5kZXggOTZjNWI4MGExOTQuLmY1OWM0NmE1NjFmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2du b21lLXNoZWxsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUKQEAg LTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXNoZWxsJwogcGtnbmFt ZT1nbm9tZS1zaGVsbAotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29uZmlndXJlX2FyZ3M9Ii1E c3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0iZ29iamVjdC1pbnRyb3NwZWN0aW9uIGd0 ay1kb2MgbGlieHNsdCBwa2ctY29uZmlnIHB5dGhvbjMgc2Fzc2MKK2hvc3RtYWtlZGVwZW5kcz0i Z2V0dGV4dCBnb2JqZWN0LWludHJvc3BlY3Rpb24gZ3RrLWRvYyBsaWJ4c2x0IHBrZy1jb25maWcg cHl0aG9uMyBzYXNzYwogIGFzY2lpZG9jIHBlcmwgZ2xpYi1kZXZlbCBtdXR0ZXItZGV2ZWwiCiBt YWtlZGVwZW5kcz0iYXQtc3BpMi1hdGsgY2FyaWJvdS1kZXZlbCBldm9sdXRpb24tZGF0YS1zZXJ2 ZXItZGV2ZWwgZm9sa3MtZGV2ZWwKICBnY3ItZGV2ZWwgZ2pzLWRldmVsIGdub21lLWJsdWV0b290 aC1kZXZlbCBnbm9tZS1jb250cm9sLWNlbnRlci1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsCkBA IC0yMSw0ICsyMSw0IEBAIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsIgogY2hhbmdlbG9nPSJodHRw czovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtc2hlbGwvZ25vbWUtMy0z MC9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4q fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09Y2NkODY1NTliOWM4OTdj MjE5ZDJkMmViZmRiODQxM2VmYTRjMWJlZTg0NjQyN2M3NTBjYjhhMzAxYjNmNmQxZQorY2hlY2tz dW09M2IxMjliMmExZjFmMTY1NGExMDEwOThlYThiOTFhNzNhODM2YWFkN2QxNjZmNTJkZDQ2YjFj NjAzN2VjMTc1MwoKRnJvbSAxNmUxYmQ3ZGU3YzcwN2ZiNTQ3MzdiZDk1MjAzNDc5ZDQ5YzhlMWIw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBNb24sIDQgTWF5IDIwMjAgMTQ6Mzg6MzIgKzA2MDAKU3ViamVjdDogW1BBVENI IDQwLzUyXSBnbm9tZS1zaGVsbC1leHRlbnNpb25zOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBz cmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxl IGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNo ZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKaW5kZXggOTcxNjhiNDBmNjYuLmUxZGQ0M2JiMTUyIDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCkBAIC0xLDE1ICsxLDE1IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zaGVsbC1leHRlbnNpb25zJwogcGtnbmFtZT1n bm9tZS1zaGVsbC1leHRlbnNpb25zCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJl dmlzaW9uPTEKIGFyY2hzPW5vYXJjaAogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdz PSItRGV4dGVuc2lvbl9zZXQ9YWxsIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoraG9z dG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWciCiBkZXBlbmRzPSJnbm9tZS1zaGVsbD49 JHt2ZXJzaW9ufSBuYXV0aWx1cyB1bnppcCIKIHNob3J0X2Rlc2M9IkV4dGVuc2lvbnMgZm9yIEdO T01FIHNoZWxsLCBpbmNsdWRpbmcgY2xhc3NpYyBtb2RlIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xh bmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsL0V4dGVu c2lvbnMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iMGFkNTExNDNiMWJmNDBk ZWY0YTEwZjhmZDBhYjBmZmI0NzIxODMwNDgwMDc5NGU2MmNhZGQyOWQwYWNjNzViCitjaGVja3N1 bT05NzgyMDJkZTUxNWNkYjAzYTU4ODU4NTljNTM4MzY2YmNhOGZkNzg3NjJjZTk4YjE3MmFjMmMw MTI2ZjgwMDNmCgpGcm9tIDkzYzdmOTk3OWQ2Mzk2ODE4YjkwODYzYzE1ZGIyZmRhZjNmZTkwNzcg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IFRodSwgNyBNYXkgMjAyMCAxMjoyNzo1NSArMDYwMApTdWJqZWN0OiBbUEFUQ0gg NDEvNTJdIGdkbTogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nZG0vdGVtcGxhdGUg fCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ2RtL3RlbXBsYXRlIGIvc3JjcGtncy9nZG0vdGVt cGxhdGUKaW5kZXggYmI1YjQ4NjkyZDQuLjA5OWM0Y2M5ZDRkIDEwMDY0NAotLS0gYS9zcmNwa2dz L2dkbS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dkbS90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ2RtJwogcGtnbmFtZT1nZG0KLXZlcnNpb249My4zNC4x Cit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iJCh2b3B0X2VuYWJsZSBnaXIgaW50 cm9zcGVjdGlvbikKLSAtLWRpc2FibGUtc2NoZW1hcy1jb21waWxlIC0tZGlzYWJsZS1zdGF0aWMg LS13aXRoLWRlZmF1bHQtcGFtLWNvbmZpZz1hcmNoCisgLS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgt ZGVmYXVsdC1wYW0tY29uZmlnPWFyY2gKICAtLXdpdGgtYXQtc3BpLXJlZ2lzdHJ5ZC1kaXJlY3Rv cnk9L3Vzci9saWJleGVjIC0td2l0aG91dC10Y3Atd3JhcHBlcnMKICAtLXdpdGgtc2NyZWVuc2hv dC1kaXI9L3Zhci9saWIvZ2RtL2dyZWV0ZXIgLS1zYmluZGlyPS91c3IvYmluIC0td2l0aG91dC1w bHltb3V0aAogIC0td2l0aC14YXV0aC1kaXI9L3J1bi9nZG0gLS13aXRoLXBpZC1maWxlPS9ydW4v Z2RtL2dkbS5waWQKQEAgLTE0LDE0ICsxNCwxNCBAQCBob3N0bWFrZWRlcGVuZHM9ImRjb25mIGdl dHRleHQgaXRzdG9vbCBwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9ImFjY291bnRzc2VydmljZS1k ZXZlbCBlbG9naW5kLWRldmVsIGdldHRleHQtZGV2ZWwgZ2xpYi1kZXZlbAogIGlzby1jb2RlcyBs aWJTTS1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBuc3MtZGV2ZWwgcGFtLWRldmVsIHVwb3dlci1k ZXZlbCIKIGRlcGVuZHM9Imdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1zaGVsbCB4b3JnLXNl cnZlciB4b3JnLXNlcnZlci14d2F5bGFuZAotIHhyZGIiCisgeHJkYiBnc2V0dGluZ3MtZGVza3Rv cC1zY2hlbWFzIgogY2hlY2tkZXBlbmRzPSJjaGVjay1kZXZlbCIKIHNob3J0X2Rlc2M9IkdOT01F IERpc3BsYXkgTWFuYWdlciIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v d2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR0RNIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09ZTg1ZGY2NTdhYThkOTM2MWFmNGZiMTIyMDE0ZDhmMTIzYTkzYmZlNDVhNzY2MmZiYTJi MzczZDgzOWRiZDhkMworY2hlY2tzdW09M2Y1NjFjMTBhZTJlNTk0MmIwMzAyNmYwMmMwYWE3ZDg3 MTJlMzgyNzA4YjE3YTA5NzA4NzRkZjgxNzViODNhOAogCiBjb25mX2ZpbGVzPSIKIAkvZXRjL2dk bS9jdXN0b20uY29uZgoKRnJvbSBjMDM3ZDUxYjVhNzFhMTM1ZTQwMTFhYTU2MDhiNTUwYzgzM2Mz YTQzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMTg6MjQ6MDIgKzA1MzAKU3ViamVjdDogW1BB VENIIDQyLzUyXSBidWRnaWUtZGVza3RvcDogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNr dG9wLTMuc28uMTkKCi0tLQogLi4uL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4 LnBhdGNoIHwgMTI3MTMgKysrKysrKysrKysrKysrKwogc3JjcGtncy9idWRnaWUtZGVza3RvcC90 ZW1wbGF0ZSAgICAgICAgICAgICAgIHwgICAgIDkgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTI3MTgg aW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L2J1ZGdpZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNo CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1 LjkwLXN1cHBvcnQtMTkxOC5wYXRjaCBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9N dXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAuLmJmZjFiYWQwMzlmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9i dWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaApA QCAtMCwwICsxLDEyNzEzIEBACitGcm9tIDlkMDlhMWIxNWJiZjY2NzgwY2M4OWVmZjNjNGI4NGU2 NjZiMGJmZGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBEYXZpZCBNb2hhbW1lZCA8 Zm9zc2ZyZWVkb21AdXNlcnMubm9yZXBseS5naXRodWIuY29tPgorRGF0ZTogVHVlLCAxOCBGZWIg MjAyMCAwNjo0MDoxMiArMDAwMAorU3ViamVjdDogW1BBVENIXSBNdXR0ZXIgMy4zNiBzdXBwb3J0 ICgjMTkxOCkKKworKiBBZGQgbXV0dGVyIDMuMzUuMiBzdXBwb3J0CisKKyogTXV0dGVyIGNvbXBp bGVyIGZsYWdzIG5lZWRzIHRvIGJlIHNwZWNpZmllZCBiZWZvcmUgZGVwZW5kZW5jeSBjaGVja3MK KworKiBSZWdlbmVyYXRlIHZhcGkgZm9yIDMuMzUuOTAKKworT3JpZ2luOiBodHRwczovL2dpdGh1 Yi5jb20vc29sdXMtcHJvamVjdC9idWRnaWUtZGVza3RvcC9jb21taXRzLzlkMDlhMWIxNWIKKy0t LQorIHNyYy93bS9tZXNvbi5idWlsZCAgICAgICAgICAgICAgICB8ICAgMTIgKy0KKyBzcmMvd20v d20udmFsYSAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICstCisgdmFwaS9DbHV0dGVyLTYubWV0 YWRhdGEgICAgICAgICAgIHwgIDIwNCArCisgdmFwaS9Db2dsLTYubWV0YWRhdGEgICAgICAgICAg ICAgIHwgICAyNyArCisgdmFwaS9NZXRhLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICA4MCAr CisgdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpICAgIHwgIDY5MSArKysKKyB2YXBpL2xp Ym11dHRlci02LmRlcHMgICAgICAgICAgICAgfCAgICA2ICsKKyB2YXBpL2xpYm11dHRlci02LnZh cGkgICAgICAgICAgICAgfCAxNDc1ICsrKysrCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3Rv bS52YWxhIHwgIDE0NyArCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMgICAgICAgIHwgICAg NCArCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkgICAgICAgIHwgODY4NyArKysrKysrKysr KysrKysrKysrKysrKysrKysrKworIHZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYSAgICB8 ICAxMjUgKworIHZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzICAgICAgICAgICB8ICAgIDEgKworIHZh cGkvbXV0dGVyLWNvZ2wtNi52YXBpICAgICAgICAgICB8IDEwNzcgKysrKworIDE0IGZpbGVzIGNo YW5nZWQsIDEyNTQ5IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisgY3JlYXRlIG1vZGUg MTAwNjQ0IHZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkv Q29nbC02Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvTWV0YS02Lm1ldGFkYXRh CisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorIGNy ZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL2xpYm11dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2 NDQgdmFwaS9saWJtdXR0ZXItNi52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVy LWNsdXR0ZXItNi1jdXN0b20udmFsYQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1j bHV0dGVyLTYuZGVwcworIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYu dmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEK KyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY29nbC02LmRlcHMKKyBjcmVhdGUgbW9k ZSAxMDA2NDQgdmFwaS9tdXR0ZXItY29nbC02LnZhcGkKKworZGlmZiAtLWdpdCBhL3NyYy93bS9t ZXNvbi5idWlsZCBiL3NyYy93bS9tZXNvbi5idWlsZAoraW5kZXggZTM5Yjg2NzguLjRiY2MwZjll IDEwMDY0NAorLS0tIGEvc3JjL3dtL21lc29uLmJ1aWxkCisrKysgYi9zcmMvd20vbWVzb24uYnVp bGQKK0BAIC0yNSwxMSArMjUsMTkgQEAgaWYgbm90IGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAg ICAgbWVzc2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci00IEFCSSBmcm9tIEdOT01FIDMuMzInKQor ICAgICAgICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVyLTQnCisgICAgIGVsc2UKKy0gICAgICAg IGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNScsIHZlcnNpb246IGdub21lX21p bmltdW1fdmVyc2lvbikKKysgICAgICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0 ZXItNScsIHZlcnNpb246IGdub21lX21pbmltdW1fdmVyc2lvbiwgcmVxdWlyZWQ6IGZhbHNlKQor KyAgICAgICAgYnVkZ2llX3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRF Ul81J10KKyAgICAgICAgIGlmIGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgICAgIG1lc3Nh Z2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXItNSBBQkkgZnJvbSBHTk9NRSAzLjM0JykKKyAgICAgICAg ICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNScKKy0gICAgICAgICAgICBidWRnaWVfd21f c3RhdHVzX3ZhbGFfYXJncyArPSBbJy1EJywgJ0hBVkVfTVVUVEVSXzUnXQorKyAgICAgICAgZWxz ZQorKyAgICAgICAgICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNicsIHZl cnNpb246IGdub21lX21pbmltdW1fdmVyc2lvbikKKysgICAgICAgICAgICBidWRnaWVfd21fc3Rh dHVzX3ZhbGFfYXJncyArPSBbJy1EJywgJ0hBVkVfTVVUVEVSXzYnXQorKyAgICAgICAgICAgIGlm IGRlcF9tdXR0ZXIuZm91bmQoKQorKyAgICAgICAgICAgICAgICBkZXBfZ3JhcGhlbmUgPSBkZXBl bmRlbmN5KCdncmFwaGVuZS1nb2JqZWN0LTEuMCcsIHZlcnNpb246ICc+PSAxLjEwJykKKysgICAg ICAgICAgICAgICAgbWVzc2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci02IEFCSSBmcm9tIEdOT01F IDMuMzYnKQorKyAgICAgICAgICAgICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNicKKysg ICAgICAgICAgICBlbmRpZgorICAgICAgICAgZW5kaWYKKyAgICAgZW5kaWYKKyBlbmRpZgorZGlm ZiAtLWdpdCBhL3NyYy93bS93bS52YWxhIGIvc3JjL3dtL3dtLnZhbGEKK2luZGV4IGZlZTg5NDQz Li5iYjQ2Y2QwNiAxMDA2NDQKKy0tLSBhL3NyYy93bS93bS52YWxhCisrKysgYi9zcmMvd20vd20u dmFsYQorQEAgLTEzNyw4ICsxMzcsMTMgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5Q bHVnaW4KKyAgICAgcHVibGljIHN0YXRpYyBzdHJpbmdbXT8gb2xkX2FyZ3M7CisgICAgIHB1Ymxp YyBzdGF0aWMgYm9vbCB3YXlsYW5kID0gZmFsc2U7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysg ICAgc3RhdGljIEdyYXBoZW5lLlBvaW50IFBWX0NFTlRFUjsKKysgICAgc3RhdGljIEdyYXBoZW5l LlBvaW50IFBWX05PUk07CisrI2Vsc2UKKyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZfQ0VO VEVSOworICAgICBzdGF0aWMgQ2x1dHRlci5Qb2ludCBQVl9OT1JNOworKyNlbmRpZgorIAorICAg ICBwcml2YXRlIE1ldGEuQmFja2dyb3VuZEdyb3VwPyBiYWNrZ3JvdW5kX2dyb3VwOworIAorQEAg LTE3MSwxMCArMTc2LDE1IEBAIHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisg ICAgICAgICAgICAgbGljZW5zZSA9ICJHUEwtMi4wIiwKKyAgICAgICAgICAgICBkZXNjcmlwdGlv biA9ICJCdWRnaWUgV2luZG93IE1hbmFnZXIiCisgICAgICAgICB9OworKyNpZiBIQVZFX01VVFRF Ul82CisrICAgICAgICBQVl9DRU5URVIgPSBHcmFwaGVuZS5Qb2ludCgpOworKyAgICAgICAgUFZf Tk9STSA9IEdyYXBoZW5lLlBvaW50KCk7CisrI2Vsc2UKKyAgICAgICAgIFBWX0NFTlRFUiA9IENs dXR0ZXIuUG9pbnQuYWxsb2MoKTsKKysgICAgICAgIFBWX05PUk0gPSBDbHV0dGVyLlBvaW50LmFs bG9jKCk7CisrI2VuZGlmCisgICAgICAgICBQVl9DRU5URVIueCA9IDAuNWY7CisgICAgICAgICBQ Vl9DRU5URVIueSA9IDAuNWY7CistICAgICAgICBQVl9OT1JNID0gQ2x1dHRlci5Qb2ludC5hbGxv YygpOworICAgICAgICAgUFZfTk9STS54ID0gMC4wZjsKKyAgICAgICAgIFBWX05PUk0ueSA9IDAu MGY7CisgICAgIH0KK0BAIC0xMDAxLDcgKzEwMTEsMTEgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdN IDogTWV0YS5QbHVnaW4KKyAgICAgICAgIHRpbGVfcHJldmlldy5zZXQoInNjYWxlLXgiLCBOT1RJ RklDQVRJT05fTUFQX1NDQUxFX1gsICJzY2FsZS15IiwgTk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9Z LAorICAgICAgICAgICAgICJwaXZvdC1wb2ludCIsIFBWX0NFTlRFUik7CisgCisrI2lmIEhBVkVf TVVUVEVSXzYKKysgICAgICAgIC8vdGlsZV9wcmV2aWV3Lmxvd2VyKHdpbl9hY3Rvcik7CisrI2Vs c2UKKyAgICAgICAgIHRpbGVfcHJldmlldy5sb3dlcih3aW5fYWN0b3IpOworKyNlbmRpZgorICAg ICAgICAgdGlsZV9wcmV2aWV3LnRpbGVfcmVjdCA9IHRpbGVfcmVjdDsKKyAKKyAgICAgICAgIHRp bGVfcHJldmlldy5zaG93KCk7CitkaWZmIC0tZ2l0IGEvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEg Yi92YXBpL0NsdXR0ZXItNi5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAwLi44YzI2YTEyMgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9DbHV0dGVyLTYubWV0 YWRhdGEKK0BAIC0wLDAgKzEsMjA0IEBACisrLy8gTm9uIG1pbmktb2JqZWN0CisrQWN0b3JCb3gg c3RydWN0CisrQ29sb3Igc3RydWN0CisrRm9nIHN0cnVjdAorK0dlb21ldHJ5IHN0cnVjdAorK0tu b3Qgc3RydWN0CisrUGF0aE5vZGUgc3RydWN0CisrUGVyc3BlY3RpdmUgc3RydWN0CisrVW5pdHMg c3RydWN0CisrVmVydGV4IHN0cnVjdAorKworKyoucmVmIHVub3duZWQKKysKKytpbml0LmFyZ3Yg dW5vd25lZAorK2luaXRfd2l0aF9hcmdzCisrCS5hcmd2IHVub3duZWQKKytBY3RvcgorKwkuYXBw bHlfdHJhbnNmb3JtLm1hdHJpeCByZWYKKysJLmdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcy52 ZXJ0cyBvdXQ9ZmFsc2UKKysJLmdldF9hbGxvY2F0aW9uX3ZlcnRpY2VzLnZlcnRzIG91dD1mYWxz ZQorK0NhbnZhcworKwkubmV3IHN5bWJvbF90eXBlPSJjb25zdHJ1Y3RvciIKKytFdmVudC50eXBl I21ldGhvZCBuYW1lPSJnZXRfdHlwZSIKKytJbWFnZQorKwkubmV3IHN5bWJvbF90eXBlPSJjb25z dHJ1Y3RvciIKKysKKysvLyA/Pz8KKytBY3Rvci5oYXNfcG9pbnRlciNtZXRob2QgbmFtZT0iZ2V0 X2hhc19wb2ludGVyIgorK0luaXRFcnJvciBlcnJvcmRvbWFpbj1mYWxzZQorKworKy8vIE5vdCBh bGwgYmFja2luZyBzeW1ib2xzIGFyZSBkZXByZWNhdGVkCisrQWN0b3IucGljayBkZXByZWNhdGVk PWZhbHNlCisrCisrLy8gTnVsbGFibGUgcmV0dXJuIHZhbHVlcworK0FjdG9yCisrCS5nZXRfcGFy ZW50IG51bGxhYmxlCisrdmFsdWVfZ2V0X2NvbG9yIG51bGxhYmxlCisrCisrLy8gbWV0aG9kL3Zp cnR1YWwtbWV0aG9kL3NpZ25hbCBkb24ndCBtYXRjaAorK0FjdG9yCisrCS5ldmVudCNtZXRob2Qg bmFtZT0iZW1pdF9ldmVudCIKKysJLmdldF9wYWludF92b2x1bWUjbWV0aG9kIHNraXAKKysJLnF1 ZXVlX3JlZHJhdyNzaWduYWwgc2tpcAorKwkucXVldWVfcmVkcmF3I3ZpcnR1YWxfbWV0aG9kIHNr aXAKKytDb250YWluZXIKKysJLmFkZF9hY3RvciBza2lwPWZhbHNlCisrVGV4dAorKwkuYWN0aXZh dGUjbWV0aG9kIG5hbWU9InRyeV9hY3RpdmF0ZSIKKysJLmluc2VydF90ZXh0I3NpZ25hbCBza2lw CisrVGV4dEJ1ZmZlci5nZXRfdGV4dCN2aXJ0dWFsX21ldGhvZCBuYW1lPSJnZXRfdGV4dF93aXRo X2xlbmd0aCIKKysKKysvLyB2aXJ0dWFsL2Fic3RyYWN0IGRpc3RpbmN0aW9uCisrQ29udGFpbmVy CisrCS5sb3dlciB2aXJ0dWFsCisrCS5yYWlzZSB2aXJ0dWFsCisrCS4qX2NoaWxkX21ldGEjdmly dHVhbF9tZXRob2QgdmlydHVhbAorKwkuZm9yZWFjaF93aXRoX2ludGVybmFscyN2aXJ0dWFsX21l dGhvZCB2aXJ0dWFsCisrCisrLy8gRGVmYXVsdCB2YWx1ZXMKKytDb250YWluZXIKKysJLmxvd2Vy LnNpYmxpbmcgbnVsbGFibGUgZGVmYXVsdD1udWxsCisrCS5yYWlzZS5zaWJsaW5nIG51bGxhYmxl IGRlZmF1bHQ9bnVsbAorK1N0YWdlLnJlYWRfcGl4ZWxzCisrCS53aWR0aCBkZWZhdWx0PS0xCisr CS5oZWlnaHQgZGVmYXVsdD0tMQorK1RleHQKKysJLnBvc2l0aW9uX3RvX2Nvb3Jkcy5saW5lX2hl aWdodCBkZWZhdWx0PW51bGwKKysKKysvLyBSZXBhcmVudGVkIGZ1bmNzIG1ldGhvZHMgY2FuJ3Qg YmUgaW5zdGFuY2UgbWV0aG9kcworK2ZlYXR1cmVfYXZhaWxhYmxlIHNraXAKKytmZWF0dXJlX2dl dF9hbGwgc2tpcAorKworKy8vIFNraXBwZWQgYnkgZy1pIGZvciB1bmtub3duIHJlYXNvbnMKKytM YXlvdXRNYW5hZ2VyCisrCS5jcmVhdGVfY2hpbGRfbWV0YSBza2lwPWZhbHNlCisrCisrLy8gVmFy aWFkaWMgYXJndW1lbnRzCisrQWN0b3IKKysJLmFuaW1hdGUgc2tpcD1mYWxzZQorKwkuYW5pbWF0 ZV93aXRoX2FscGhhIHNraXA9ZmFsc2UKKysJLmFuaW1hdGVfd2l0aF90aW1lbGluZSBza2lwPWZh bHNlCisrQm94CisrCS5wYWNrIHNraXA9ZmFsc2UKKysJLnBhY2tfYWZ0ZXIgc2tpcD1mYWxzZQor KwkucGFja19hdCBza2lwPWZhbHNlCisrCS5wYWNrX2JlZm9yZSBza2lwPWZhbHNlCisrQ29udGFp bmVyCisrCS5hZGRfdmFsaXN0IHNraXA9ZmFsc2UKKysJLmNoaWxkX2dldCBza2lwPWZhbHNlCisr CS5jaGlsZF9zZXQgc2tpcD1mYWxzZQorKwkucmVtb3ZlIHNraXA9ZmFsc2UKKysJLnJlbW92ZV92 YWxpc3Qgc2tpcD1mYWxzZQorK0ludGVydmFsCisrCS5uZXcgc2tpcD1mYWxzZQorKwkuZ2V0X2lu dGVydmFsIHNraXA9ZmFsc2UKKysJLnNldF9maW5hbCBza2lwPWZhbHNlCisrCS5zZXRfaW5pdGlh bCBza2lwPWZhbHNlCisrCS5zZXRfaW50ZXJ2YWwgc2tpcD1mYWxzZQorK0xheW91dE1hbmFnZXIK KysJLmNoaWxkX2dldCBza2lwPWZhbHNlCisrCS5jaGlsZF9zZXQgc2tpcD1mYWxzZQorK1Njcmlw dAorKwkuZ2V0X29iamVjdHMgc2tpcD1mYWxzZQorKworKy8vIENoYW5naW5nIGVycm9yIGRvbWFp bnMKKytUZXh0dXJlCisrCS5uZXdfZnJvbV9maWxlIHRocm93cz0iQ2x1dHRlci5UZXh0dXJlRXJy b3IiCisrCisrLy8gU2tpcHBlZCB1cHN0cmVhbSBmb3IgdW5rbm93biByZWFzb25zCisrQWxwaGEu cmVnaXN0ZXJfZnVuYyBza2lwPWZhbHNlCisrSW50ZXJ2YWwucmVnaXN0ZXJfcHJvZ3Jlc3NfZnVu YyBza2lwPWZhbHNlCisrZ2V0X29wdGlvbl9ncm91cCBza2lwPWZhbHNlCisrZ2V0X29wdGlvbl9n cm91cF93aXRob3V0X2luaXQgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX2lkbGUgc2tpcD1mYWxz ZQorK3RocmVhZHNfYWRkX2lkbGVfZnVsbCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfdGltZW91 dCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIHNraXA9ZmFsc2UKKysKKysv LyBzdHJ1Y3QvY2xhc3MgY29uZnVzaW9uCisrQWN0b3JCb3gKKysJLm5ldyBza2lwCisrCS5mcm9t X3ZlcnRpY2VzIHNraXAKKytVbml0cy5mcm9tXyogc2tpcAorK0NvbG9yCisrCS5uZXcgc2tpcAor K1ZlcnRleC5uZXcgc2tpcAorKworKy8vIENsYXNzIG1ldGhvZHMKKytjb250YWluZXJfY2xhc3Nf ZmluZF9jaGlsZF9wcm9wZXJ0eSBza2lwCisrY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJv cGVydGllcyBza2lwCisrCisrLy8gTW92ZSBzeW1ib2xzCisrZ2V0X2FjdG9yX2J5X2dpZCBwYXJl bnQ9IkNsdXR0ZXIuQWN0b3IiIG5hbWU9ImdldF9ieV9naWQiCisrdW5pdHNfZnJvbV8qIHNraXAK KysKKysvLyBDbGFzc2VzIG1hcmtlZCBhcyBvdXQgYnV0IG5vdCBkb3VibGUgcHRyCisrQWN0b3IK KysJLmdldF9tYXJnaW4ubWFyZ2luIG91dD1mYWxzZQorK0RyYWdBY3Rpb24KKysJLmdldF9kcmFn X2FyZWEuZHJhZ19hcmVhIG91dD1mYWxzZQorK0lucHV0RGV2aWNlCisrCS5nZXRfY29vcmRzLnBv aW50IG91dD1mYWxzZQorK1JlY3QKKysJLmdldF9jZW50ZXIuY2VudGVyIG91dD1mYWxzZQorKwku aW50ZXJzZWN0aW9uLnJlcyBvdXQ9ZmFsc2UKKysJLnVuaW9uLnJlcyBvdXQ9ZmFsc2UKKytUaW1l bGluZQorKwkuZ2V0X2N1YmljX2Jlemllcl9wcm9ncmVzcy5jXyogb3V0PWZhbHNlCisrWm9vbUFj dGlvbgorKwkuZ2V0X2ZvY2FsX3BvaW50LnBvaW50IG91dD1mYWxzZQorKwkuZ2V0X3RyYW5zZm9y bWVkX2ZvY2FsX3BvaW50LnBvaW50IG91dD1mYWxzZQorKworKy8vIFN0cnVjdCByZXR1cm4gdmFs dWVzCisrY29sb3JfZ2V0X3N0YXRpYyBudWxsYWJsZQorKworKy8vIFJlbW92ZSBmb3IgY2x1dHRl ci0yLjAKKysvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCisrCisrU3RhZ2UKKysgCS5ldmVudCBu YW1lPSJlbWl0X2V2ZW50IgorKworKy8vICpFdmVudCBzaG91bGQgYmUgY29tcGFjdCBjbGFzc2Vz IGRlcml2ZWQgZnJvbSBDbHV0dGVyLkV2ZW50CisrRXZlbnQudHlwZSBza2lwPWZhbHNlCisrQW55 RXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytCdXR0b25FdmVu dCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK0Nyb3NzaW5nRXZlbnQg c3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytLZXlFdmVudCBzdHJ1Y3Q9 ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK01vdGlvbkV2ZW50IHN0cnVjdD1mYWxz ZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrU2Nyb2xsRXZlbnQgc3RydWN0PWZhbHNlIGJh c2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytTdGFnZVN0YXRlRXZlbnQgc3RydWN0PWZhbHNlIGJh c2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5 cGU9IkNsdXR0ZXIuRXZlbnQiCisrVG91Y2hwYWRQaW5jaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNl X3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrVG91Y2hwYWRTd2lwZUV2ZW50IHN0cnVjdD1mYWxzZSBi YXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrCisrLy8gS2V5c3ltcyB1c2VkIHRvIGJlIENMVVRU RVJfWCBpbnN0ZWFkIG9mIENMVVRURVJfS0VZX1gKKysqI2NvbnN0YW50IHNraXAKKytDT0dMIHNr aXA9ZmFsc2UKKytDVVJSRU5UX1RJTUUgc2tpcD1mYWxzZQorK0ZMQVZPVVIgc2tpcD1mYWxzZQor K1BBVEhfUkVMQVRJVkUgc2tpcD1mYWxzZQorK1BSSU9SSVRZX1JFRFJBVyBza2lwPWZhbHNlCisr CisrLy8gQ2x1dHRlciBkZXZzIGRvbid0IGxpa2UgdXMgY3JlYXRpbmcgbmVzdGVkIG5hbWVzcGFj ZXMKKyt2YWx1ZV8qIG5hbWU9InZhbHVlXyguKykiIHBhcmVudD0iQ2x1dHRlci5WYWx1ZSIKKyt0 aHJlYWRzXyogbmFtZT0idGhyZWFkc18oLispIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcyIKKyt0 aHJlYWRzX2FkZF9pZGxlIG5hbWU9ImFkZCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuSWRsZSIK Kyt0aHJlYWRzX2FkZF9pZGxlX2Z1bGwgbmFtZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5U aHJlYWRzLklkbGUiCisrdGhyZWFkc19hZGRfdGltZW91dCBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1 dHRlci5UaHJlYWRzLlRpbWVvdXQiCisrdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIG5hbWU9ImFk ZF9mdWxsIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcy5UaW1lb3V0IgorKworKy8vIEJhY2t3YXJk cyBjb21wYXRpYmlsaXR5CisrQ29sb3IuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1Bv aW50LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytSZWN0LmFsbG9jIHN5bWJvbF90eXBl PSJmdW5jdGlvbiIKKytTaXplLmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytWZXJ0ZXgu YWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorKworK0JpbkFsaWdubWVudCBkZXByZWNhdGVk PWZhbHNlIGRlcHJlY2F0ZWRfc2luY2U9bnVsbAorK0JpbkFsaWdubWVudC4qIGRlcHJlY2F0ZWQK KytCaW5BbGlnbm1lbnQuc3RhcnQgZGVwcmVjYXRlZD1mYWxzZQorK0JpbkxheW91dC5uZXcuKl9h bGlnbiBkZWZhdWx0PUNsdXR0ZXIuQmluQWxpZ25tZW50LlNUQVJUCisrCisrLy8gUG9zc2libHkg a2VlcAorK0tFWV8qIHNraXA9ZmFsc2UgbmFtZT0iS0VZXyguKykiIHR5cGU9InVpbnQiIHBhcmVu dD0iQ2x1dHRlci5LZXkiCitkaWZmIC0tZ2l0IGEvdmFwaS9Db2dsLTYubWV0YWRhdGEgYi92YXBp L0NvZ2wtNi5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4w OTJiNWUyOQorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9Db2dsLTYubWV0YWRhdGEKK0BAIC0w LDAgKzEsMjcgQEAKKytDb2dsIGNoZWFkZXJfZmlsZW5hbWU9ImNvZ2wvY29nbC5oIgorKworK0Nv bG9yIHN0cnVjdAorKyAgLm5ldyBza2lwCisrICAuZnJlZSBza2lwCisrCisrY3JlYXRlX3Byb2dy YW0gc2tpcAorK2NyZWF0ZV9zaGFkZXIgc2tpcAorKworKworK2lzX2JpdG1hcCBza2lwCisraXNf bWF0ZXJpYWwgc2tpcAorK2lzX29mZnNjcmVlbiBza2lwCisraXNfcHJvZ3JhbSBza2lwCisraXNf c2hhZGVyIHNraXAKKytpc190ZXh0dXJlIHNraXAKKytpc192ZXJ0ZXhfYnVmZmVyIHNraXAKKysK KytNYXRyaXggc3RydWN0CisrICAuZ2V0X2FycmF5IGFycmF5PXRydWUgYXJyYXlfbGVuZ3RoX2lk eD0tMQorKyAgLmdldF9pbnZlcnNlLmludmVyc2Ugb3V0PXRydWUKKysgIC5tdWx0aXBseSBza2lw CisrICAuaW5pdF9mcm9tX2FycmF5IHNraXAKKysgIC5pbml0X2lkZW50aXR5IHNraXAKKysgIC50 cmFuc2Zvcm1fcG9pbnQuKiByZWY9dHJ1ZQorKworK3Byb2dyYW1fKiBza2lwCitkaWZmIC0tZ2l0 IGEvdmFwaS9NZXRhLTYubWV0YWRhdGEgYi92YXBpL01ldGEtNi5tZXRhZGF0YQorbmV3IGZpbGUg bW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4xZDk4NDc3OAorLS0tIC9kZXYvbnVsbAorKysr IGIvdmFwaS9NZXRhLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEsODAgQEAKKytCYWNrZW5kIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZW5kLmgiCisrQmFja2dyb3VuZCBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC5oIgorK0JhY2tncm91bmRBY3RvciBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1hY3Rvci5oIgorK0JhY2tncm91bmRHcm91 cCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1ncm91cC5oIgorK0JhY2tn cm91bmRJbWFnZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5o IgorK0JhY2tncm91bmRJbWFnZUNhY2hlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNr Z3JvdW5kLWltYWdlLmgiCisrQmFycmllciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2JhcnJpZXIu aCIKKytCYXJyaWVyRXZlbnQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9iYXJyaWVyLmgiCisrQ2xv c2VEaWFsb2cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIgorK0N1 cnNvclRyYWNrZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWN1cnNvci10cmFja2VyLmgi CisrRGlzcGxheSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2Rpc3BsYXkuaCIKKytEbmQgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLWRuZC5oIgorK0lkbGVNb25pdG9yIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvbWV0YS1pZGxlLW1vbml0b3IuaCIKKytJbmhpYml0U2hvcnRjdXRzRGlhbG9nIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIKKytM YXVuY2hDb250ZXh0IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1sYXVuY2gtY29udGV4dC5o IgorK01ldGEgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tYWluLmgiCisrTW9uaXRvck1hbmFnZXIg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLW1vbml0b3ItbWFuYWdlci5oIgorK1ByZWZlcmVu Y2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9wcmVmcy5oIgorK1JlbW90ZUFjY2Vzc0NvbnRyb2xs ZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5o IgorK1JlbW90ZUFjY2Vzc0hhbmRsZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcmVtb3Rl LWFjY2Vzcy1jb250cm9sbGVyLmgiCisrU2V0dGluZ3MgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9t ZXRhLXNldHRpbmdzLmgiCisrU2hhZG93RmFjdG9yeSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21l dGEtc2hhZG93LWZhY3RvcnkuaCIKKytTaGFwZWRUZXh0dXJlIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1zaGFwZWQtdGV4dHVyZS5oIgorK1NvdW5kUGxheWVyIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvbWV0YS1zb3VuZC1wbGF5ZXIuaCIKKytTdGFnZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L21ldGEtc3RhZ2UuaCIKKytTdGFydHVwTm90aWZpY2F0aW9uIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1zdGFydHVwLW5vdGlmaWNhdGlvbi5oIgorK1RoZW1lIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvdGhlbWUuaCIKKytXaW5kb3cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS93aW5kb3cuaCIK KytXaW5kb3dBY3RvciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93LWFjdG9yLmgi CisrV2luZG93R3JvdXAgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1ncm91cC5o IgorK1dpbmRvd1NoYXBlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctc2hhcGUu aCIKKytXb3Jrc3BhY2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS93b3Jrc3BhY2UuaCIKKytXb3Jr c3BhY2VNYW5hZ2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdl ci5oIgorK1gxMURpc3BsYXkgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXgxMS1kaXNwbGF5 LmgiCisrUmVjdGFuZ2xlIHN0cnVjdAorK1BsdWdpbiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21l dGEtcGx1Z2luLmgiCisrUGx1Z2luSW5mbyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1 Z2luLmgiCisrcHJlZnNfKiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3ByZWZzLmgiIHBhcmVudD0i TWV0YS5QcmVmcyIKKythZGRfdmVyYm9zZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisreDExX2Vycm9yX3RyYXBfcG9wIHBhcmVudD0iTWV0 YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9w dXNoIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4 MTFfZXJyb3JfdHJhcF9wb3Bfd2l0aF9yZXR1cm4gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2V4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9u IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRf bG9jYWxlX2RpcmVjdGlvbiBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS91dGlsLmgiCisrZ3Jhdml0eV90b19zdHJpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX2RlYnVnZ2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfc3luY2luZyBwYXJlbnQ9Ik1ldGEu VXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfdmVyYm9zZSBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfd2F5bGFuZF9j b21wb3NpdG9yIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwu aCIKKytsYXRlcl9hZGQgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK2xhdGVyX3JlbW92ZSBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS91dGlsLmgiCisrcG9wX25vX21zZ19wcmVmaXggcGFyZW50PSJNZXRhLlV0aWwiIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3B1c2hfbm9fbXNnX3ByZWZpeCBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVjdCBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVtb3ZlX3ZlcmJv c2VfdG9waWMgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK3Vuc2lnbmVkX2xvbmdfZXF1YWwgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK3Vuc2lnbmVkX2xvbmdfaGFzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrc2hvd19kaWFsb2cgcGFyZW50PSJNZXRh LlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2dldF9zdGFnZV9mb3JfZGlz cGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21w b3NpdG9yLW11dHRlci5oIgorK2dldF93aW5kb3dfYWN0b3JzIHBhcmVudD0iTWV0YS5Db21wb3Np dG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dp bmRvd19ncm91cF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dldF90b3Bfd2luZG93X2dyb3Vw X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5 IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0 b3ItbXV0dGVyLmgiCisrZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0 YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgi CisrZW5hYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3Ii IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytzZXRfc3RhZ2Vf aW5wdXRfcmVnaW9uIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZW1wdHlfc3RhZ2VfaW5wdXRfcmVnaW9uIHBhcmVu dD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0 dGVyLmgiCisrZm9jdXNfc3RhZ2Vfd2luZG93IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisra2V5YmluZGluZ3Nfc2V0 X2N1c3RvbV9oYW5kbGVyIHBhcmVudD0iTWV0YS5LZXlCaW5kaW5nIiBuYW1lPSJzZXRfY3VzdG9t X2hhbmRsZXIiCisrS2V5SGFuZGxlckZ1bmMuZXZlbnQgdHlwZT0iQ2x1dHRlci5LZXlFdmVudD8i CisrZ2V0X2JhY2tlbmQgcGFyZW50PSJNZXRhLkJhY2tlbmQiCisrV2luZG93LmZvY3VzI3NpZ25h bCBza2lwPXRydWUKKytXaW5kb3cuZ2V0X3h3aW5kb3cgc2tpcD1mYWxzZQorK2dldF9vcHRpb25f Y29udGV4dCBza2lwPWZhbHNlCisrc2V0X2dub21lX3dtX2tleWJpbmRpbmdzIHNraXA9ZmFsc2UK KytzZXRfd21fbmFtZSBza2lwPWZhbHNlCisraW5pdCBza2lwPWZhbHNlCisrcnVuIHNraXA9ZmFs c2UKKytzaG93X2RpYWxvZyBza2lwPWZhbHNlCisrZ2V0X2JhY2tlbmQgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tZXRhLWJhY2tlbmQuaCIKK2RpZmYgLS1naXQgYS92YXBpL2dyYXBoZW5lLWdvYmpl Y3QtMS4wLnZhcGkgYi92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKK25ldyBmaWxlIG1v ZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uNjk4MDE1MzUKKy0tLSAvZGV2L251bGwKKysrKyBi L3ZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorQEAgLTAsMCArMSw2OTEgQEAKKysvKiBn cmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9k aWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJHcmFwaGVuZSIsIGdpcl9uYW1lc3BhY2Ug PSAiR3JhcGhlbmUiLCBnaXJfdmVyc2lvbiA9ICIxLjAiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAi Z3JhcGhlbmVfIildCisrbmFtZXNwYWNlIEdyYXBoZW5lIHsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2JveF90Iiwg dHlwZV9pZCA9ICJncmFwaGVuZV9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IEJveCB7CisrCQlwdWJsaWMgYm9vbCBjb250YWlu c19ib3ggKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChH cmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVu ZS5Cb3g/IGVtcHR5ICgpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkJveCBiKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZXhwYW5kIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsK KysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZXhwYW5kX3NjYWxhciAoZmxvYXQgc2NhbGFyKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5Cb3ggZXhwYW5kX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdmVjKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgZ2V0X2JvdW5kaW5nX3NwaGVyZSAoKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5Qb2ludDNEIGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rl cHRoICgpOworKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCBnZXRfbWF4ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21p biAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9zaXplICgpOworKwkJcHVibGljIHZv aWQgZ2V0X3ZlcnRpY2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBo ZW5lLlZlYzMgdmVydGljZXNbOF0pOworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluZmluaXRlICgpOworKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBtaW4sIEdy YXBoZW5lLlBvaW50M0Q/IG1heCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGlu aXRfZnJvbV9ib3ggKEdyYXBoZW5lLkJveCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuQm94PyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJu X3BvaW50cyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1 aW50IildIEdyYXBoZW5lLlBvaW50M0RbXSBwb2ludHMpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuQm94PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gbWluLCBHcmFwaGVuZS5W ZWMzPyBtYXgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fdmVj dG9ycyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVu Z3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVj M1tdIHZlY3RvcnMpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5Cb3gg Yiwgb3V0IEdyYXBoZW5lLkJveCByZXMpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBo ZW5lLkJveD8gbWludXNfb25lICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LkJveD8gb25lICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25l X21pbnVzX29uZSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggdW5pb24gKEdyYXBoZW5lLkJv eCBiKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IHplcm8gKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gImdyYXBoZW5lX2V1bGVyX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2V1bGVyX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBF dWxlciB7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuRXVsZXIgYik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JldGEgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9nYW1t YSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5FdWxlck9yZGVyIGdldF9vcmRlciAoKTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfeiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0 IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LkV1bGVyPyBpbml0X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyPyBzcmMpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJp eD8gbSwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5FdWxlcj8gaW5pdF9mcm9tX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24/IHEs IEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcmFkaWFucyAo ZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5l LlZlYzM/IHYsIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuRXVsZXI/IGluaXRfd2l0aF9vcmRlciAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg eiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXIg cmVvcmRlciAoR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUu TWF0cml4IHRvX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiB0b19xdWF0ZXJuaW9uICgpOworKwkJcHVibGljIEdy YXBoZW5lLlZlYzMgdG9fdmVjMyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfZnJ1c3R1bV90IiwgdHlw ZV9pZCA9ICJncmFwaGVuZV9mcnVzdHVtX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBGcnVzdHVtIHsKKysJCXB1YmxpYyBib29sIGNv bnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5GcnVzdHVtIGIpOwor KwkJcHVibGljIHZvaWQgZ2V0X3BsYW5lcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSld IHJlZiBHcmFwaGVuZS5QbGFuZSBwbGFuZXNbNl0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuRnJ1c3R1bT8gaW5pdCAoR3JhcGhlbmUuUGxhbmUgcDAsIEdyYXBoZW5lLlBsYW5lIHAxLCBH cmFwaGVuZS5QbGFuZSBwMiwgR3JhcGhlbmUuUGxhbmUgcDMsIEdyYXBoZW5lLlBsYW5lIHA0LCBH cmFwaGVuZS5QbGFuZSBwNSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBp bml0X2Zyb21fZnJ1c3R1bSAoR3JhcGhlbmUuRnJ1c3R1bSBzcmMpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuRnJ1c3R1bT8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG1h dHJpeCk7CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX2JveCAoR3JhcGhlbmUuQm94IGJveCk7 CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHNwaGVy ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImdyYXBoZW5lX21hdHJpeF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9tYXRy aXhfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVibGljIGJv b2wgZGVjb21wb3NlIChvdXQgR3JhcGhlbmUuVmVjMyB0cmFuc2xhdGUsIG91dCBHcmFwaGVuZS5W ZWMzIHNjYWxlLCBvdXQgR3JhcGhlbmUuUXVhdGVybmlvbiByb3RhdGUsIG91dCBHcmFwaGVuZS5W ZWMzIHNoZWFyLCBvdXQgR3JhcGhlbmUuVmVjNCBwZXJzcGVjdGl2ZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZGV0ZXJtaW5hbnQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLk1h dHJpeCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBl cXVhbF9mYXN0IChHcmFwaGVuZS5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfcm93ICh1aW50IGluZGV4Xyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZhbHVlICh1aW50 IHJvdywgdWludCBjb2wpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF94X3NjYWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfeF90cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeV9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3lfdHJhbnNsYXRpb24gKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfc2NhbGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96 X3RyYW5zbGF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fMmQgKGRvdWJsZSB4eCwgZG91Ymxl IHl4LCBkb3VibGUgeHksIGRvdWJsZSB5eSwgZG91YmxlIHhfMCwgZG91YmxlIHlfMCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRy aXg/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0 IHZbMTZdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IHNyYyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5NYXRyaXg/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHYwLCBHcmFwaGVuZS5WZWM0 IHYxLCBHcmFwaGVuZS5WZWM0IHYyLCBHcmFwaGVuZS5WZWM0IHYzKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9m cnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3As IGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2lkZW50aXR5ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu TWF0cml4PyBpbml0X2xvb2tfYXQgKEdyYXBoZW5lLlZlYzMgZXllLCBHcmFwaGVuZS5WZWMzIGNl bnRlciwgR3JhcGhlbmUuVmVjMyB1cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfb3J0aG8gKGZsb2F0IGxlZnQs IGZsb2F0IHJpZ2h0LCBmbG9hdCB0b3AsIGZsb2F0IGJvdHRvbSwgZmxvYXQgel9uZWFyLCBmbG9h dCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfcGVyc3BlY3RpdmUgKGZsb2F0IGZvdnksIGZsb2F0IGFz cGVjdCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfcm90YXRlIChm bG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVjMyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9zY2FsZSAoZmxv YXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfc2tldyAoZmxvYXQgeF9za2V3 LCBmbG9hdCB5X3NrZXcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3RyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQz RCBwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5N YXRyaXggaW50ZXJwb2xhdGUgKEdyYXBoZW5lLk1hdHJpeCBiLCBkb3VibGUgZmFjdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGludmVyc2UgKG91dCBH cmFwaGVuZS5NYXRyaXggcmVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBib29sIGlzXzJkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGJvb2wgaXNfYmFja2ZhY2VfdmlzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBib29sIGlzX2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfc2luZ3VsYXIgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IG11bHRpcGx5IChHcmFw aGVuZS5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGJvb2wgbmVhciAoR3JhcGhlbmUuTWF0cml4IGIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBub3JtYWxpemUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0 cml4IHBlcnNwZWN0aXZlIChmbG9hdCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBwcmludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBwcm9qZWN0X3BvaW50IChHcmFwaGVuZS5Qb2lu dCBwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5R dWFkIHByb2plY3RfcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHByb2plY3RfcmVjdF9ib3VuZHMgKEdy YXBoZW5lLlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCByb3RhdGUgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVu ZS5FdWxlciBlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHJvdGF0ZV9xdWF0ZXJuaW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9uIHEpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX3ggKGZsb2F0IGFuZ2xlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV95IChm bG9hdCBhbmdsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCByb3RhdGVfeiAoZmxvYXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0IGZhY3Rvcl94LCBmbG9hdCBmYWN0b3JfeSwgZmxv YXQgZmFjdG9yX3opOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZv aWQgc2tld194eSAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB2b2lkIHNrZXdfeHogKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBza2V3X3l6IChmbG9hdCBmYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgdG9fMmQgKG91dCBkb3Vi bGUgeHgsIG91dCBkb3VibGUgeXgsIG91dCBkb3VibGUgeHksIG91dCBkb3VibGUgeXksIG91dCBk b3VibGUgeF8wLCBvdXQgZG91YmxlIHlfMCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCB0b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSld IHJlZiBmbG9hdCB2WzE2XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgR3JhcGhlbmUuUmVjdCB0cmFuc2Zvcm1fYm91bmRzIChHcmFwaGVuZS5SZWN0IHIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLkJveCB0cmFuc2Zv cm1fYm94IChHcmFwaGVuZS5Cb3ggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgdHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Qb2ludCBw KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2lu dDNEIHRyYW5zZm9ybV9wb2ludDNkIChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheSB0cmFuc2Zvcm1fcmF5IChH cmFwaGVuZS5SYXkgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuUXVhZCB0cmFuc2Zvcm1fcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNmb3Jt X3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgdHJhbnNmb3JtX3ZlYzMgKEdyYXBoZW5lLlZlYzMg dik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVj NCB0cmFuc2Zvcm1fdmVjNCAoR3JhcGhlbmUuVmVjNCB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb3Mp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJp eCB0cmFuc3Bvc2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg R3JhcGhlbmUuUG9pbnQzRCB1bnByb2plY3RfcG9pbnQzZCAoR3JhcGhlbmUuTWF0cml4IG1vZGVs dmlldywgR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCB1bnRyYW5zZm9ybV9ib3VuZHMgKEdyYXBoZW5l LlJlY3QgciwgR3JhcGhlbmUuUmVjdCBib3VuZHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIGJvb2wgdW50cmFuc2Zvcm1fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHAs IEdyYXBoZW5lLlJlY3QgYm91bmRzLCBvdXQgR3JhcGhlbmUuUG9pbnQgcmVzKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAi Z3JhcGhlbmVfcGxhbmVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcGxhbmVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFBsYW5lIHsK KysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlw dWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUGxhbmUgYik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0 X2NvbnN0YW50ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0IChHcmFwaGVuZS5WZWMzPyBub3Jt YWwsIGZsb2F0IGNvbnN0YW50KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBp bml0X2Zyb21fcGxhbmUgKEdyYXBoZW5lLlBsYW5lIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5WZWMzIG5vcm1hbCwgR3Jh cGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8g aW5pdF9mcm9tX3BvaW50cyAoR3JhcGhlbmUuUG9pbnQzRCBhLCBHcmFwaGVuZS5Qb2ludDNEIGIs IEdyYXBoZW5lLlBvaW50M0QgYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8g aW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Q bGFuZSBuZWdhdGUgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUGxhbmUgbm9ybWFsaXplICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSB0 cmFuc2Zvcm0gKEdyYXBoZW5lLk1hdHJpeCBtYXRyaXgsIEdyYXBoZW5lLk1hdHJpeD8gbm9ybWFs X21hdHJpeCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdv YmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BvaW50X3QiLCB0eXBlX2lkID0gImdyYXBoZW5l X3BvaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIHN0cnVjdCBQb2ludCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5 OworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludCBiLCBvdXQgZmxvYXQg ZF94LCBvdXQgZmxvYXQgZF95KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Qb2lu dCBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0IChmbG9hdCB4LCBm bG9hdCB5KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0X2Zyb21fcG9p bnQgKEdyYXBoZW5lLlBvaW50IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5l LlZlYzIgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBpbnRlcnBvbGF0ZSAoR3JhcGhl bmUuUG9pbnQgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVu ZS5Qb2ludCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIHRvX3ZlYzIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgR3JhcGhlbmUuUG9pbnQ/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BvaW50M2Rf dCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9ICJwb2ludDNkIiwgdHlwZV9pZCA9ICJncmFwaGVuZV9w b2ludDNkX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIHN0cnVjdCBQb2ludDNEIHsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0 IHk7CisrCQlwdWJsaWMgZmxvYXQgejsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGNyb3Nz IChHcmFwaGVuZS5Qb2ludDNEIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5W ZWMzIGRlbHRhKTsKKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlBvaW50M0QgYik7Cisr CQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlBvaW50M0Q/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOwor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdF9mcm9tX3BvaW50IChHcmFw aGVuZS5Qb2ludDNEIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBp bml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMyB2KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2lu dDNEIGludGVycG9sYXRlIChHcmFwaGVuZS5Qb2ludDNEIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJ cHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlBv aW50M0QgYiwgZmxvYXQgZXBzaWxvbik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3Jt YWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCBub3JtYWxpemVfdmlld3BvcnQgKEdyYXBoZW5lLlJlY3Qgdmlld3BvcnQsIGZs b2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgc2Nh bGUgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOwor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/IHplcm8gKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1l ID0gImdyYXBoZW5lX3F1YWRfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcXVhZF9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhZCB7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBib3VuZHMgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250 YWlucyAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2lu dD8gZ2V0X3BvaW50ICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5R dWFkPyBpbml0IChHcmFwaGVuZS5Qb2ludCBwMSwgR3JhcGhlbmUuUG9pbnQgcDIsIEdyYXBoZW5l LlBvaW50IHAzLCBHcmFwaGVuZS5Qb2ludCBwNCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcG9pbnRzIChb Q0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQgcG9pbnRzWzRdKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YWQ/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVu ZS5SZWN0IHIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9xdWF0ZXJuaW9uX3QiLCB0eXBlX2lkID0gImdy YXBoZW5lX3F1YXRlcm5pb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgc3RydWN0IFF1YXRlcm5pb24geworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIGFkZCAoR3JhcGhlbmUuUXVh dGVybmlvbiBiKTsKKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7 CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZs b2F0IHosIGZsb2F0IHcpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8g aW5pdF9mcm9tX2FuZ2xlX3ZlYzMgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOwor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xlcyAo ZmxvYXQgZGVnX3gsIGZsb2F0IGRlZ195LCBmbG9hdCBkZWdfeik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0 X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG0pOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3F1YXRlcm5pb24g KEdyYXBoZW5lLlF1YXRlcm5pb24gc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1 YXRlcm5pb24/IGluaXRfZnJvbV9yYWRpYW5zIChmbG9hdCByYWRfeCwgZmxvYXQgcmFkX3ksIGZs b2F0IHJhZF96KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRf ZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5RdWF0ZXJuaW9uPyBpbml0X2lkZW50aXR5ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRl cm5pb24gaW52ZXJ0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5RdWF0ZXJuaW9uIG11bHRpcGx5IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOwor KwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNjYWxlIChm bG9hdCBmYWN0b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gc2xlcnAgKEdyYXBo ZW5lLlF1YXRlcm5pb24gYiwgZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHRvX2FuZ2xl X3ZlYzMgKG91dCBmbG9hdCBhbmdsZSwgb3V0IEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCB0b19hbmdsZXMgKG91dCBmbG9h dCBkZWdfeCwgb3V0IGZsb2F0IGRlZ195LCBvdXQgZmxvYXQgZGVnX3opOworKwkJcHVibGljIEdy YXBoZW5lLk1hdHJpeCB0b19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCB0b19yYWRpYW5zIChvdXQgZmxvYXQgcmFkX3gsIG91dCBmbG9hdCBy YWRfeSwgb3V0IGZsb2F0IHJhZF96KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHRvX3ZlYzQg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImdyYXBoZW5lX3JheV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yYXlfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0 IFJheSB7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUmF5IGIpOworKwkJcHVibGlj IEdyYXBoZW5lLlBvaW50M0QgZ2V0X2Nsb3Nlc3RfcG9pbnRfdG9fcG9pbnQgKEdyYXBoZW5lLlBv aW50M0QgcCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfZGlyZWN0aW9uICgpOworKwkJ cHVibGljIGZsb2F0IGdldF9kaXN0YW5jZV90b19wbGFuZSAoR3JhcGhlbmUuUGxhbmUgcCk7Cisr CQlwdWJsaWMgZmxvYXQgZ2V0X2Rpc3RhbmNlX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHAp OworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X29yaWdpbiAoKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludDNEIGdldF9wb3NpdGlvbl9hdCAoZmxvYXQgdCk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5SYXk/IGluaXQgKEdyYXBoZW5lLlBvaW50M0Q/IG9yaWdpbiwgR3JhcGhl bmUuVmVjMz8gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5p dF9mcm9tX3JheSAoR3JhcGhlbmUuUmF5IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5SYXk/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyBvcmlnaW4sIEdyYXBoZW5lLlZl YzM/IGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X2JveCAoR3JhcGhlbmUuQm94 IGIsIG91dCBmbG9hdCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3NwaGVyZSAoR3Jh cGhlbmUuU3BoZXJlIHMsIG91dCBmbG9hdCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0 X3RyaWFuZ2xlIChHcmFwaGVuZS5UcmlhbmdsZSB0LCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfYm94IChH cmFwaGVuZS5Cb3ggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGJvb2wgaW50ZXJzZWN0c19zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX3RyaWFuZ2xlIChH cmFwaGVuZS5UcmlhbmdsZSB0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Z3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmVjdF90IiwgdHlwZV9pZCA9 ICJncmFwaGVuZV9yZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIHN0cnVjdCBSZWN0IHsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBvcmln aW47CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzaXplOworKwkJcHVibGljIHN0YXRpYyBHcmFw aGVuZS5SZWN0PyBhbGxvYyAoKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFw aGVuZS5Qb2ludCBwKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3JlY3QgKEdyYXBoZW5lLlJl Y3QgYik7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGV4cGFuZCAoR3Jh cGhlbmUuUG9pbnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF9hcmVhICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9ib3R0b21f bGVmdCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfYm90dG9tX3JpZ2h0ICgpOwor KwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X2hlaWdodCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfdG9wX2xlZnQgKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X3RvcF9yaWdodCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBHcmFwaGVuZS5WZWMyIHZlcnRpY2VzWzRdKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7Cisr CQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0 PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5S ZWN0IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbnNldCAoZmxvYXQg ZF94LCBmbG9hdCBkX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlJlY3QgaW5zZXRfciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJcHVibGlj IEdyYXBoZW5lLlJlY3QgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlJlY3QgYiwgZG91YmxlIGZhY3Rv cik7CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3Rpb24gKEdyYXBoZW5lLlJlY3QgYiwgb3V0IEdy YXBoZW5lLlJlY3QgcmVzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IG5vcm1h bGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5SZWN0IG5vcm1hbGl6ZV9yICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8g b2Zmc2V0IChmbG9hdCBkX3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBvZmZzZXRfciAoZmxvYXQgZF94LCBmbG9hdCBk X3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0 IHJvdW5kX2V4dGVudHMgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS40Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5SZWN0PyByb3VuZF90b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBzY2FsZSAoZmxvYXQgc19oLCBmbG9hdCBz X3YpOworKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgdW5pb24gKEdyYXBoZW5lLlJlY3QgYik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuUmVjdD8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Z3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2ltZDRmX3QiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBTaW1kNEYgeworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVu ZV9zaW1kNHg0Zl90IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2lt ZDRYNEYgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2Jq ZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zaXplX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3Np emVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg c3RydWN0IFNpemUgeworKwkJcHVibGljIGZsb2F0IHdpZHRoOworKwkJcHVibGljIGZsb2F0IGhl aWdodDsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5TaXplIGIpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuU2l6ZT8gaW5pdCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyBpbml0X2Zyb21fc2l6ZSAoR3JhcGhl bmUuU2l6ZSBzcmMpOworKwkJcHVibGljIEdyYXBoZW5lLlNpemUgaW50ZXJwb2xhdGUgKEdyYXBo ZW5lLlNpemUgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzY2Fs ZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5TaXpl PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zcGhlcmVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhl bmVfc3BoZXJlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ cHVibGljIHN0cnVjdCBTcGhlcmUgeworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdy YXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVu ZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5TcGhlcmUg Yik7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9y YWRpdXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXQgKEdyYXBo ZW5lLlBvaW50M0Q/IGNlbnRlciwgZmxvYXQgcmFkaXVzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlNwaGVyZT8gaW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25h bWUgPSAibl9wb2ludHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlw ZSA9ICJndWludCIpXSBHcmFwaGVuZS5Qb2ludDNEW10gcG9pbnRzLCBHcmFwaGVuZS5Qb2ludDNE PyBjZW50ZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21f dmVjdG9ycyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlf bGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUu VmVjM1tdIHZlY3RvcnMsIEdyYXBoZW5lLlBvaW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgYm9v bCBpc19lbXB0eSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNsYXRlIChHcmFw aGVuZS5Qb2ludDNEIHBvaW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Z3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdHJpYW5nbGVfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfdHJpYW5nbGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFRyaWFuZ2xlIHsKKysJCXB1YmxpYyBib29sIGNv bnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIGJvb2wgZXF1YWwg KEdyYXBoZW5lLlRyaWFuZ2xlIGIpOworKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJ cHVibGljIGJvb2wgZ2V0X2Jhcnljb29yZHMgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIG91dCBHcmFw aGVuZS5WZWMyIHJlcyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3gg KCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfbWlkcG9pbnQgKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMyBnZXRfbm9ybWFsICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5l IGdldF9wbGFuZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludHMgKG91dCBHcmFwaGVuZS5Q b2ludDNEIGEsIG91dCBHcmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5Qb2ludDNEIGMp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGdldF91diAo R3JhcGhlbmUuUG9pbnQzRD8gcCwgR3JhcGhlbmUuVmVjMiB1dl9hLCBHcmFwaGVuZS5WZWMyIHV2 X2IsIEdyYXBoZW5lLlZlYzIgdXZfYywgb3V0IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1Ymxp YyB2b2lkIGdldF92ZXJ0aWNlcyAob3V0IEdyYXBoZW5lLlZlYzMgYSwgb3V0IEdyYXBoZW5lLlZl YzMgYiwgb3V0IEdyYXBoZW5lLlZlYzMgYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV9mbG9hdCAo W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IGFbM10sIFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBiWzNdLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gZmxvYXQgY1szXSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5p dF9mcm9tX3BvaW50M2QgKEdyYXBoZW5lLlBvaW50M0Q/IGEsIEdyYXBoZW5lLlBvaW50M0Q/IGIs IEdyYXBoZW5lLlBvaW50M0Q/IGMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5n bGU/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyBhLCBHcmFwaGVuZS5WZWMzPyBiLCBH cmFwaGVuZS5WZWMzPyBjKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjMl90IiwgdHlwZV9pZCA9ICJn cmFwaGVuZV92ZWMyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMiB7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBhZGQgKEdy YXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjMiBkaXZpZGUgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWMyIGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5l LlZlYzIgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuVmVjMj8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0X2Zy b21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbMl0pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu VmVjMj8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBpbnRlcnBvbGF0ZSAoR3Jh cGhlbmUuVmVjMiB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbWF4IChHcmFwaGVuZS5WZWMyIGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbWluIChH cmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzIgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMyIHYyLCBm bG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMyIG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWMyIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBvbmUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBz Y2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMyIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFsyXSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geF9h eGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIEdyYXBoZW5lLlZlYzI/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyB6ZXJvICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBj bmFtZSA9ICJncmFwaGVuZV92ZWMzX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzNfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBWZWMzIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGFkZCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGNyb3Nz IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzMgZGl2aWRlIChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMyBiKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFw aGVuZS5WZWMzIHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMyIGdldF94eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF94eTAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfeHl6MCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXoxICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0 X3h5encgKGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuVmVjMz8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5WZWMzPyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBm bG9hdCBzcmNbM10pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuVmVjMz8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBp bnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVjMyB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbWF4IChHcmFwaGVu ZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzMgbWluIChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzMgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFw aGVuZS5WZWMzIHYyLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG5vcm1hbGl6ZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVu ZS5WZWMzPyBvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjMyBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMz IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxv YXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFszXSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuVmVjMz8geF9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHlfYXhpcyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5W ZWMzPyB6X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVf dmVjNF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWM0X2dldF90eXBlICgpIildCisrCXB1Ymxp YyBzdHJ1Y3QgVmVjNCB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjNCBhZGQgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBkaXZpZGUgKEdyYXBoZW5lLlZlYzQg Yik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChH cmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IGJvb2wgZXF1YWwgKEdyYXBoZW5lLlZlYzQgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIGZsb2F0IGdldF93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgZ2V0X3h5ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3h5eiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/ IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIGZsb2F0IHcpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9m cm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzRdKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlZlYzQ/IGluaXRfZnJvbV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYywgZmxvYXQgeiwgZmxvYXQg dyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5WZWM0PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMyBzcmMsIGZsb2F0IHcpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu VmVjND8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBpbnRlcnBvbGF0ZSAoR3Jh cGhlbmUuVmVjNCB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbWF4IChHcmFwaGVuZS5WZWM0IGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbWluIChH cmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzQgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWM0IHYyLCBm bG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWM0IG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWM0IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBvbmUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBz Y2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWM0IHN1YnRyYWN0IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFs0XSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gd19h eGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB5X2F4aXMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuVmVjND8gel9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHplcm8gKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0g ImdyYXBoZW5lX2V1bGVyX29yZGVyX3QiLCBjcHJlZml4ID0gIkdSQVBIRU5FX0VVTEVSX09SREVS XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CXB1YmxpYyBlbnVtIEV1bGVyT3JkZXIgeworKwkJREVGQVVMVCwKKysJCVhZWiwKKysJCVlaWCwK KysJCVpYWSwKKysJCVhaWSwKKysJCVlYWiwKKysJCVpZWCwKKysJCVNYWVosCisrCQlTWFlYLAor KwkJU1haWSwKKysJCVNYWlgsCisrCQlTWVpYLAorKwkJU1laWSwKKysJCVNZWFosCisrCQlTWVhZ LAorKwkJU1pYWSwKKysJCVNaWFosCisrCQlTWllYLAorKwkJU1pZWiwKKysJCVJaWVgsCisrCQlS WFlYLAorKwkJUllaWCwKKysJCVJYWlgsCisrCQlSWFpZLAorKwkJUllaWSwKKysJCVJaWFksCisr CQlSWVhZLAorKwkJUllYWiwKKysJCVJaWFosCisrCQlSWFlaLAorKwkJUlpZWgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV9yYXlfaW50ZXJzZWN0aW9uX2tpbmRfdCIsIGNwcmVmaXggPSAiR1JBUEhFTkVfUkFZ X0lOVEVSU0VDVElPTl9LSU5EXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBSYXlJbnRlcnNlY3Rpb25LaW5kIHsKKysJ CU5PTkUsCisrCQlFTlRFUiwKKysJCUxFQVZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19HQ0MiKV0K KysJcHVibGljIGNvbnN0IGludCBIQVNfR0NDOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX1NDQUxBUiIpXQor KwlwdWJsaWMgY29uc3QgaW50IEhBU19TQ0FMQVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfU1NFIildCisr CXB1YmxpYyBjb25zdCBpbnQgSEFTX1NTRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1BJIildCisrCXB1YmxpYyBj b25zdCBkb3VibGUgUEk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9QSV8yIildCisrCXB1YmxpYyBjb25zdCBkb3Vi bGUgUElfMjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gIkdSQVBIRU5FX1NJTURfUyIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIFNJ TURfUzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIs IGNuYW1lID0gIkdSQVBIRU5FX1ZFQzJfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIGNvbnN0IGludCBWRUMyX0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzNfTEVOIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGludCBWRUMzX0xF TjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gIkdSQVBIRU5FX1ZFQzRfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJcHVibGljIGNvbnN0IGludCBWRUM0X0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImZhbHNlIildCisrCXB1YmxpYyBjb25z dCBpbnQgQGZhbHNlOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29i amVjdC5oIiwgY25hbWUgPSAidHJ1ZSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEB0cnVlOworK30K K2RpZmYgLS1naXQgYS92YXBpL2xpYm11dHRlci02LmRlcHMgYi92YXBpL2xpYm11dHRlci02LmRl cHMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMjIzNTI1ZTQKKy0tLSAv ZGV2L251bGwKKysrKyBiL3ZhcGkvbGlibXV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw2IEBACisr Z3RrKy0zLjAKKytqc29uLWdsaWItMS4wCisrbXV0dGVyLWNsdXR0ZXItNgorK3gxMQorK3hmaXhl cy00LjAKKytncmFwaGVuZS1nb2JqZWN0LTEuMAorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVy LTYudmFwaSBiL3ZhcGkvbGlibXV0dGVyLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2lu ZGV4IDAwMDAwMDAwLi4zMWY0ODAxYworLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0 ZXItNi52YXBpCitAQCAtMCwwICsxLDE0NzUgQEAKKysvKiBsaWJtdXR0ZXItNi52YXBpIGdlbmVy YXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9 ICJNZXRhIiwgZ2lyX25hbWVzcGFjZSA9ICJNZXRhIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2Vy X2Nhc2VfY3ByZWZpeCA9ICJtZXRhXyIpXQorK25hbWVzcGFjZSBNZXRhIHsKKysJbmFtZXNwYWNl IENvbXBvc2l0b3IgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9z aXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNw bGF5IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNw bGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9lbmFibGVfdW5yZWRp cmVjdF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGVuYWJsZV91bnJlZGly ZWN0X2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9m b2N1c19zdGFnZV93aW5kb3ciKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBmb2N1c19zdGFnZV93 aW5kb3cgKE1ldGEuRGlzcGxheSBkaXNwbGF5LCB1aW50MzIgdGltZXN0YW1wKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9 ICJtZXRhX2dldF9mZWVkYmFja19ncm91cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IChN ZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfc3RhZ2VfZm9yX2Rpc3Bs YXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zdGFnZV9m b3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3Rv cF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBD bHV0dGVyLkFjdG9yIGdldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3Bs YXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3Np dG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfd2luZG93X2FjdG9ycyIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdMaWIuTGlzdDxDbHV0dGVyLkFjdG9yPiBnZXRfd2luZG93X2Fj dG9ycyAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19n cm91cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOwor Kwl9CisrCW5hbWVzcGFjZSBQcmVmcyB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19iZWxsX2lzX2F1ZGlibGUiKV0KKysJ CXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19iZWxsX2lzX2F1ZGlibGUgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19j aGFuZ2Vfd29ya3NwYWNlX25hbWUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19jaGFu Z2Vfd29ya3NwYWNlX25hbWUgKGludCBpLCBzdHJpbmcgbmFtZSk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0 aW9uX2RvdWJsZV9jbGlja190aXRsZWJhciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5U aXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX2RvdWJsZV9jbGlja190aXRsZWJhciAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF9hY3Rpb25fbWlkZGxlX2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMg c3RhdGljIEdEZXNrdG9wLlRpdGxlYmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25fbWlkZGxlX2Ns aWNrX3RpdGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJh ciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRf YWN0aW9uX3JpZ2h0X2NsaWNrX3RpdGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F0dGFjaF9tb2Rh bF9kaWFsb2dzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F0dGFjaF9tb2Rh bF9kaWFsb2dzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F1dG9fbWF4aW1pemUiKV0KKysJCXB1YmxpYyBz dGF0aWMgYm9vbCBwcmVmc19nZXRfYXV0b19tYXhpbWl6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRv X3JhaXNlIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fcmFpc2UgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfYXV0b19yYWlzZV9kZWxheSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQg cHJlZnNfZ2V0X2F1dG9fcmFpc2VfZGVsYXkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYnV0dG9uX2xheW91 dCIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLkJ1dHRvbkxheW91dCBwcmVmc19nZXRfYnV0dG9u X2xheW91dCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgi LCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jZW50ZXJfbmV3X3dpbmRvd3MiKV0KKysJCXB1Ymxp YyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfY2VudGVyX25ld193aW5kb3dzICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2NvbXBvc2l0aW5nX21hbmFnZXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19n ZXRfY29tcG9zaXRpbmdfbWFuYWdlciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jdXJzb3Jfc2l6ZSIpXQor KwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2N1cnNvcl9zaXplICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2N1cnNvcl90aGVtZSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBwcmVm c19nZXRfY3Vyc29yX3RoZW1lICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fyb3VuZHMi KV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZGlzYWJsZV93b3JrYXJvdW5kcyAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9 ICJtZXRhX3ByZWZzX2dldF9kcmFnX3RocmVzaG9sZCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQg cHJlZnNfZ2V0X2RyYWdfdGhyZXNob2xkICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdnYWJsZV9ib3Jk ZXJfd2lkdGgiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9kcmFnZ2FibGVfYm9y ZGVyX3dpZHRoICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2R5bmFtaWNfd29ya3NwYWNlcyIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIHByZWZzX2dldF9keW5hbWljX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19nZXRfZWRnZV90aWxpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZWRn ZV90aWxpbmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9jdXNfY2hhbmdlX29uX3BvaW50ZXJfcmVzdCIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9mb2N1c19jaGFuZ2Vfb25fcG9pbnRl cl9yZXN0ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX21vZGUiKV0KKysJCXB1YmxpYyBzdGF0aWMg R0Rlc2t0b3AuRm9jdXNNb2RlIHByZWZzX2dldF9mb2N1c19tb2RlICgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0 X2ZvY3VzX25ld193aW5kb3dzIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLkZvY3VzTmV3 V2luZG93cyBwcmVmc19nZXRfZm9jdXNfbmV3X3dpbmRvd3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9y Y2VfZnVsbHNjcmVlbiIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9mb3JjZV9m dWxsc2NyZWVuICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2dub21lX2FjY2Vzc2liaWxpdHkiKV0KKysJCXB1 YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZ25vbWVfYWNjZXNzaWJpbGl0eSAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9nbm9tZV9hbmltYXRpb25zIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNf Z2V0X2dub21lX2FuaW1hdGlvbnMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfa2V5YmluZGluZ19hY3Rpb24i KV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5LZXlCaW5kaW5nQWN0aW9uIHByZWZzX2dldF9rZXli aW5kaW5nX2FjdGlvbiAoc3RyaW5nIG5hbWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9t ZW51IildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX21lbnUg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfbW91c2VfYnV0dG9uX21vZHMiKV0KKysJCXB1YmxpYyBzdGF0aWMg TWV0YS5WaXJ0dWFsTW9kaWZpZXIgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2RzICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9yZXNpemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHBy ZWZzX2dldF9tb3VzZV9idXR0b25fcmVzaXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X251bV93b3Jrc3Bh Y2VzIildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfbnVtX3dvcmtzcGFjZXMgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfcmFpc2Vfb25fY2xpY2siKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBw cmVmc19nZXRfcmFpc2Vfb25fY2xpY2sgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfc2hvd19mYWxsYmFja19h cHBfbWVudSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9zaG93X2ZhbGxiYWNr X2FwcF9tZW51ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3RpdGxlYmFyX2ZvbnQiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBQYW5nby5Gb250RGVzY3JpcHRpb24gcHJlZnNfZ2V0X3RpdGxlYmFyX2Zv bnQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfdmlzdWFsX2JlbGwiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9v bCBwcmVmc19nZXRfdmlzdWFsX2JlbGwgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlw ZSIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5WaXN1YWxCZWxsVHlwZSBwcmVmc19nZXRf dmlzdWFsX2JlbGxfdHlwZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF93b3Jrc3BhY2VfbmFtZSIpXQorKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBwcmVmc19nZXRfd29ya3NwYWNlX25hbWUgKGlu dCBpKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX2dldF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIHByZWZzX2dldF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2luaXQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19pbml0ICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfc2V0X2ZvcmNlX2Z1bGxzY3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBw cmVmc19zZXRfZm9yY2VfZnVsbHNjcmVlbiAoYm9vbCB3aGV0aGVyKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9u dW1fd29ya3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9udW1fd29y a3NwYWNlcyAoaW50IG5fd29ya3NwYWNlcyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19zZXRfc2hvd19mYWxsYmFja19h cHBfbWVudSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9zaG93X2ZhbGxiYWNr X2FwcF9tZW51IChib29sIHdoZXRoZXIpOworKwl9CisrCW5hbWVzcGFjZSBVdGlsIHsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfYWRk X3ZlcmJvc2VfdG9waWMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBhZGRfdmVyYm9zZV90b3Bp YyAoTWV0YS5EZWJ1Z1RvcGljIHRvcGljKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfZXh0ZXJuYWxfYmluZGluZ19uYW1lX2Zvcl9h Y3Rpb24iKV0KKysJCXB1YmxpYyBzdGF0aWMgc3RyaW5nIGV4dGVybmFsX2JpbmRpbmdfbmFtZV9m b3JfYWN0aW9uICh1aW50IGtleWJpbmRpbmdfYWN0aW9uKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X2xvY2FsZV9kaXJlY3Rp b24iKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5Mb2NhbGVEaXJlY3Rpb24gZ2V0X2xvY2FsZV9k aXJlY3Rpb24gKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX2dyYXZpdHlfdG9fc3RyaW5nIildCisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgc3RyaW5nIGdyYXZpdHlfdG9fc3RyaW5nIChpbnQgZ3Jhdml0eSk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX2RlYnVn Z2luZyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX2RlYnVnZ2luZyAoKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNfc3lu Y2luZyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX3N5bmNpbmcgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX3ZlcmJv c2UiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc192ZXJib3NlICgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc193YXlsYW5k X2NvbXBvc2l0b3IiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc193YXlsYW5kX2NvbXBvc2l0 b3IgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFt ZSA9ICJtZXRhX2xhdGVyX2FkZCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IGxhdGVyX2FkZCAo TWV0YS5MYXRlclR5cGUgd2hlbiwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9sYXRl cl9yZW1vdmUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBsYXRlcl9yZW1vdmUgKHVpbnQgbGF0 ZXJfaWQpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25h bWUgPSAibWV0YV9wb3Bfbm9fbXNnX3ByZWZpeCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHBv cF9ub19tc2dfcHJlZml4ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv dXRpbC5oIiwgY25hbWUgPSAibWV0YV9wdXNoX25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBz dGF0aWMgdm9pZCBwdXNoX25vX21zZ19wcmVmaXggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3JlY3QiKV0KKysJCXB1YmxpYyBz dGF0aWMgTWV0YS5SZWN0YW5nbGU/IHJlY3QgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQg aGVpZ2h0KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNu YW1lID0gIm1ldGFfcmVtb3ZlX3ZlcmJvc2VfdG9waWMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCByZW1vdmVfdmVyYm9zZV90b3BpYyAoTWV0YS5EZWJ1Z1RvcGljIHRvcGljKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfc2hvd19k aWFsb2ciKV0KKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5QaWQgc2hvd19kaWFsb2cgKHN0cmluZyB0 eXBlLCBzdHJpbmcgbWVzc2FnZSwgc3RyaW5nIHRpbWVvdXQsIHN0cmluZyBkaXNwbGF5LCBzdHJp bmcgb2tfdGV4dCwgc3RyaW5nIGNhbmNlbF90ZXh0LCBzdHJpbmcgaWNvbl9uYW1lLCBpbnQgdHJh bnNpZW50X2ZvciwgR0xpYi5TTGlzdDx2b2lkKj4gY29sdW1ucywgR0xpYi5TTGlzdDx2b2lkKj4g ZW50cmllcyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBj bmFtZSA9ICJtZXRhX3Vuc2lnbmVkX2xvbmdfZXF1YWwiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50 IHVuc2lnbmVkX2xvbmdfZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vuc2lnbmVkX2xv bmdfaGFzaCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IHVuc2lnbmVkX2xvbmdfaGFzaCAodm9p ZCogdik7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFt ZSA9ICJtZXRhX3gxMV9lcnJvcl90cmFwX3BvcCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHgx MV9lcnJvcl90cmFwX3BvcCAoTWV0YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vy cm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJuIildCisrCQlwdWJsaWMgc3RhdGljIGludCB4MTFfZXJy b3JfdHJhcF9wb3Bfd2l0aF9yZXR1cm4gKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRh X3gxMV9lcnJvcl90cmFwX3B1c2giKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB4MTFfZXJyb3Jf dHJhcF9wdXNoIChNZXRhLlgxMURpc3BsYXkgeDExX2Rpc3BsYXkpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2VuZC5oIiwgdHlwZV9pZCA9ICJtZXRh X2JhY2tlbmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEJhY2tlbmQg OiBHTGliLk9iamVjdCwgR0xpYi5Jbml0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2VuZC5oIiwgY25hbWUgPSAibWV0YV9n ZXRfYmFja2VuZCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2VuZCBnZXRf YmFja2VuZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRG5kIGdldF9kbmQgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBNZXRhLlJlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgZ2V0X3JlbW90ZV9hY2Nl c3NfY29udHJvbGxlciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3N0 YWdlICgpOworKwkJcHVibGljIHZvaWQgbG9ja19sYXlvdXRfZ3JvdXAgKHVpbnQgaWR4KTsKKysJ CXB1YmxpYyB2b2lkIHNldF9rZXltYXAgKHN0cmluZyBsYXlvdXRzLCBzdHJpbmcgdmFyaWFudHMs IHN0cmluZyBvcHRpb25zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9udW1sb2NrIChib29sIG51bWxv Y2tfc3RhdGUpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGtleW1hcF9jaGFuZ2VkICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIGtleW1hcF9sYXlvdXRfZ3JvdXBfY2hhbmdlZCAodWludCBvYmpl Y3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxhc3RfZGV2aWNlX2NoYW5nZWQgKENsdXR0ZXIu SW5wdXREZXZpY2Ugb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsaWRfaXNfY2xvc2Vk X2NoYW5nZWQgKGJvb2wgb2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tZXRhLWJhY2tncm91bmQuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kIDogR0xpYi5PYmplY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEJh Y2tncm91bmQgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBy ZWZyZXNoX2FsbCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZCAoR0xpYi5GaWxlIGZpbGUx LCBHTGliLkZpbGUgZmlsZTIsIGRvdWJsZSBibGVuZF9mYWN0b3IsIEdEZXNrdG9wLkJhY2tncm91 bmRTdHlsZSBzdHlsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3Ig Y29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X2ZpbGUgKEdMaWIuRmlsZT8gZmlsZSwgR0Rlc2t0 b3AuQmFja2dyb3VuZFN0eWxlIHN0eWxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ncmFkaWVudCAo R0Rlc2t0b3AuQmFja2dyb3VuZFNoYWRpbmcgc2hhZGluZ19kaXJlY3Rpb24sIENsdXR0ZXIuQ29s b3IgY29sb3IsIENsdXR0ZXIuQ29sb3Igc2Vjb25kX2NvbG9yKTsKKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNv bnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWFjdG9yLmgiLCB0 eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgQmFja2dyb3VuZEFjdG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBD bHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdG9yKiIpXQorKwkJcHVibGljIEJhY2tncm91bmRBY3RvciAoTWV0YS5EaXNwbGF5IGRp c3BsYXksIGludCBtb25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kIChNZXRh LkJhY2tncm91bmQgYmFja2dyb3VuZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JhZGllbnQgKGJv b2wgZW5hYmxlZCwgaW50IGhlaWdodCwgZG91YmxlIHRvbmVfc3RhcnQpOworKwkJcHVibGljIHZv aWQgc2V0X21vbml0b3IgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF92aWduZXR0 ZSAoYm9vbCBlbmFibGVkLCBkb3VibGUgYnJpZ2h0bmVzcywgZG91YmxlIHNoYXJwbmVzcyk7Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhY2tncm91bmQgYmFja2dyb3Vu ZCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBk b3VibGUgYnJpZ2h0bmVzcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIGdyYWRpZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGludCBncmFkaWVudF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZG91YmxlIGdyYWRpZW50X21heF9kYXJrbmVzcyB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkg bWV0YV9kaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGludCBtb25pdG9yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgdmlnbmV0dGUgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZG91YmxlIHZpZ25ldHRlX3NoYXJwbmVzcyB7 IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0 YS1iYWNrZ3JvdW5kLWdyb3VwLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9ncm91cF9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEdyb3VwIDogQ2x1dHRlci5B Y3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFp bmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIEJhY2tncm91 bmRHcm91cCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRh LWJhY2tncm91bmQtaW1hZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kSW1hZ2UgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgQmFja2dyb3VuZEltYWdlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3N1Y2Nlc3MgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19sb2FkZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbG9hZGVkICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1p bWFnZS5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfaW1hZ2VfY2FjaGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmRJbWFnZUNhY2hlIDogR0xpYi5PYmplY3Qg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIEJhY2tncm91bmRJbWFnZUNhY2hlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1l dGEuQmFja2dyb3VuZEltYWdlQ2FjaGUgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5C YWNrZ3JvdW5kSW1hZ2UgbG9hZCAoR0xpYi5GaWxlIGZpbGUpOworKwkJcHVibGljIHZvaWQgcHVy Z2UgKEdMaWIuRmlsZSBmaWxlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9iYXJyaWVyLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFycmllcl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgQmFycmllciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYXJyaWVyICgpOworKwkJ cHVibGljIHZvaWQgZGVzdHJveSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FjdGl2ZSAoKTsKKysJ CXB1YmxpYyB2b2lkIHJlbGVhc2UgKE1ldGEuQmFycmllckV2ZW50IGV2ZW50KTsKKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuQmFycmllckRpcmVjdGlvbiBkaXJlY3Rpb25z IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1l dGEuRGlzcGxheSBkaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGludCB4MSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeDIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHkxIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5MiB7IGdldDsgY29uc3RydWN0 OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgaGl0IChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbGVmdCAoTWV0YS5CYXJyaWVyRXZlbnQgZXZlbnQpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2JhcnJpZXIuaCIsIGNvcHlf ZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUi LCB0eXBlX2lkID0gIm1ldGFfYmFycmllcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFj dF0KKysJcHVibGljIGNsYXNzIEJhcnJpZXJFdmVudCB7CisrCQlwdWJsaWMgaW50IGR0OworKwkJ cHVibGljIGRvdWJsZSBkeDsKKysJCXB1YmxpYyBkb3VibGUgZHk7CisrCQlwdWJsaWMgaW50IGV2 ZW50X2lkOworKwkJcHVibGljIGJvb2wgZ3JhYmJlZDsKKysJCXB1YmxpYyBib29sIHJlbGVhc2Vk OworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIGRvdWJsZSB4OworKwkJcHVibGlj IGRvdWJsZSB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEt Y3Vyc29yLXRyYWNrZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9jdXJzb3JfdHJhY2tlcl9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQ3Vyc29yVHJhY2tlciA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBD dXJzb3JUcmFja2VyICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQ3Vyc29yVHJh Y2tlciBnZXRfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyB2 b2lkIGdldF9ob3QgKG91dCBpbnQgeCwgb3V0IGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9w b2ludGVyIChpbnQgeCwgaW50IHksIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZHMpOworKwkJcHVi bGljIGJvb2wgZ2V0X3BvaW50ZXJfdmlzaWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wu VGV4dHVyZSBnZXRfc3ByaXRlICgpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfdmlzaWJs ZSAoYm9vbCB2aXNpYmxlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfbW92ZWQgKGZsb2F0IHgsIGZsb2F0IHkp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHZpc2liaWxpdHlfY2hhbmdlZCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1l dGFfZGlzcGxheV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgRGlzcGxheSA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBEaXNwbGF5ICgpOworKwkJcHVibGljIHZvaWQgYWRkX2lnbm9yZWRfY3Jvc3Np bmdfc2VyaWFsICh1bG9uZyBzZXJpYWwpOworKwkJcHVibGljIHVpbnQgYWRkX2tleWJpbmRpbmcg KHN0cmluZyBuYW1lLCBHTGliLlNldHRpbmdzIHNldHRpbmdzLCBNZXRhLktleUJpbmRpbmdGbGFn cyBmbGFncywgb3duZWQgTWV0YS5LZXlIYW5kbGVyRnVuYyBoYW5kbGVyKTsKKysJCXB1YmxpYyBi b29sIGJlZ2luX2dyYWJfb3AgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5HcmFiT3Agb3AsIGJv b2wgcG9pbnRlcl9hbHJlYWR5X2dyYWJiZWQsIGJvb2wgZnJhbWVfYWN0aW9uLCBpbnQgYnV0dG9u LCB1bG9uZyBtb2RtYXNrLCB1aW50MzIgdGltZXN0YW1wLCBpbnQgcm9vdF94LCBpbnQgcm9vdF95 KTsKKysJCXB1YmxpYyB2b2lkIGNsZWFyX21vdXNlX21vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBj bG9zZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBlbmRfZ3JhYl9vcCAodWlu dDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBmb2N1c19kZWZhdWx0X3dpbmRvdyAodWlu dDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0 aW1lc3RhbXApOworKwkJcHVibGljIGludCBnZXRfY3VycmVudF9tb25pdG9yICgpOworKwkJcHVi bGljIHVpbnQzMiBnZXRfY3VycmVudF90aW1lICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRfY3Vy cmVudF90aW1lX3JvdW5kdHJpcCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdl dF9mb2N1c193aW5kb3cgKCk7CisrCQlwdWJsaWMgTWV0YS5HcmFiT3AgZ2V0X2dyYWJfb3AgKCk7 CisrCQlwdWJsaWMgdWludCBnZXRfa2V5YmluZGluZ19hY3Rpb24gKHVpbnQga2V5Y29kZSwgdWxv bmcgbWFzayk7CisrCQlwdWJsaWMgdWludDMyIGdldF9sYXN0X3VzZXJfdGltZSAoKTsKKysJCXB1 YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfbW9uaXRvcl9nZW9tZXRyeSAoaW50IG1vbml0b3IpOwor KwkJcHVibGljIGJvb2wgZ2V0X21vbml0b3JfaW5fZnVsbHNjcmVlbiAoaW50IG1vbml0b3IpOwor KwkJcHVibGljIGludCBnZXRfbW9uaXRvcl9pbmRleF9mb3JfcmVjdCAoTWV0YS5SZWN0YW5nbGUg cmVjdCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yX25laWdoYm9yX2luZGV4IChpbnQgd2hp Y2hfbW9uaXRvciwgTWV0YS5EaXNwbGF5RGlyZWN0aW9uIGRpcik7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X21vbml0b3Jfc2NhbGUgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fbW9u aXRvcnMgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9wYWRfYWN0aW9uX2xhYmVsIChDbHV0dGVy LklucHV0RGV2aWNlIHBhZCwgTWV0YS5QYWRBY3Rpb25UeXBlIGFjdGlvbl90eXBlLCB1aW50IGFj dGlvbl9udW1iZXIpOworKwkJcHVibGljIGludCBnZXRfcHJpbWFyeV9tb25pdG9yICgpOworKwkJ cHVibGljIHVub3duZWQgTWV0YS5TZWxlY3Rpb24gZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1Ymxp YyB2b2lkIGdldF9zaXplIChvdXQgaW50IHdpZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlwdWJs aWMgdW5vd25lZCBNZXRhLlNvdW5kUGxheWVyIGdldF9zb3VuZF9wbGF5ZXIgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfdGFiX2N1cnJlbnQgKE1ldGEuVGFiTGlzdCB0eXBl LCBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1l dGEuV2luZG93PiBnZXRfdGFiX2xpc3QgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFj ZT8gd29ya3NwYWNlKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJfbmV4 dCAoTWV0YS5UYWJMaXN0IHR5cGUsIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgTWV0YS5XaW5k b3c/IHdpbmRvdywgYm9vbCBiYWNrd2FyZCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtz cGFjZU1hbmFnZXIgZ2V0X3dvcmtzcGFjZV9tYW5hZ2VyICgpOworKwkJcHVibGljIHVpbnQgZ3Jh Yl9hY2NlbGVyYXRvciAoc3RyaW5nIGFjY2VsZXJhdG9yLCBNZXRhLktleUJpbmRpbmdGbGFncyBm bGFncyk7CisrCQlwdWJsaWMgYm9vbCBpc19wb2ludGVyX2VtdWxhdGluZ19zZXF1ZW5jZSAoQ2x1 dHRlci5FdmVudFNlcXVlbmNlPyBzZXF1ZW5jZSk7CisrCQlwdWJsaWMgYm9vbCByZW1vdmVfa2V5 YmluZGluZyAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIHZvaWQgcmVxdWVzdF9wYWRfb3NkIChD bHV0dGVyLklucHV0RGV2aWNlIHBhZCwgYm9vbCBlZGl0aW9uX21vZGUpOworKwkJcHVibGljIHZv aWQgc2V0X2N1cnNvciAoTWV0YS5DdXJzb3IgY3Vyc29yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9p bnB1dF9mb2N1cyAoTWV0YS5XaW5kb3cgd2luZG93LCBib29sIGZvY3VzX2ZyYW1lLCB1aW50MzIg dGltZXN0YW1wKTsKKysJCXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgTWV0YS5XaW5kb3c+IHNvcnRf d2luZG93c19ieV9zdGFja2luZyAoR0xpYi5TTGlzdDxNZXRhLldpbmRvdz4gd2luZG93cyk7Cisr CQlwdWJsaWMgYm9vbCBzdXBwb3J0c19leHRlbmRlZF9iYXJyaWVycyAoKTsKKysJCXB1YmxpYyB2 b2lkIHVuZnJlZXplX2tleWJvYXJkICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29s IHVuZ3JhYl9hY2NlbGVyYXRvciAodWludCBhY3Rpb25faWQpOworKwkJcHVibGljIHZvaWQgdW5n cmFiX2tleWJvYXJkICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X2lu cHV0X2ZvY3VzICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHhzZXJ2ZXJfdGlt ZV9pc19iZWZvcmUgKHVpbnQzMiB0aW1lMSwgdWludDMyIHRpbWUyKTsKKysJCXB1YmxpYyBNZXRh LldpbmRvdyBmb2N1c193aW5kb3cgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY2Nl bGVyYXRvcl9hY3RpdmF0ZWQgKHVpbnQgb2JqZWN0LCBDbHV0dGVyLklucHV0RGV2aWNlIHAwLCB1 aW50IHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjbG9zaW5nICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGN1cnNvcl91cGRhdGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdsX3Zp ZGVvX21lbW9yeV9wdXJnZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9iZWdp biAoTWV0YS5EaXNwbGF5IG9iamVjdCwgTWV0YS5XaW5kb3cgcDAsIE1ldGEuR3JhYk9wIHAxKTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBncmFiX29wX2VuZCAoTWV0YS5EaXNwbGF5IG9iamVjdCwg TWV0YS5XaW5kb3cgcDAsIE1ldGEuR3JhYk9wIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBp bl9mdWxsc2NyZWVuX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgbW9kaWZpZXJz X2FjY2VsZXJhdG9yX2FjdGl2YXRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBvdmVybGF5 X2tleSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwYWRfbW9kZV9zd2l0Y2ggKENsdXR0ZXIu SW5wdXREZXZpY2Ugb2JqZWN0LCB1aW50IHAwLCB1aW50IHAxKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCByZXN0YWNrZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgcmVzdGFydCAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBzaG93X29zZCAoaW50IG9iamVjdCwgc3RyaW5nIHAwLCBzdHJp bmcgcDEpOworKwkJcHVibGljIHNpZ25hbCB1bm93bmVkIENsdXR0ZXIuQWN0b3I/IHNob3dfcGFk X29zZCAoQ2x1dHRlci5JbnB1dERldmljZSBwYWQsIEdMaWIuU2V0dGluZ3Mgc2V0dGluZ3MsIHN0 cmluZyBsYXlvdXRfcGF0aCwgYm9vbCBlZGl0aW9uX21vZGUsIGludCBtb25pdG9yX2lkeCk7Cisr CQlwdWJsaWMgc2lnbmFsIGJvb2wgc2hvd19yZXNpemVfcG9wdXAgKGJvb2wgb2JqZWN0LCBNZXRh LlJlY3RhbmdsZSBwMCwgaW50IHAxLCBpbnQgcDIpOworKwkJcHVibGljIHNpZ25hbCBib29sIHNo b3dfcmVzdGFydF9tZXNzYWdlIChzdHJpbmc/IG1lc3NhZ2UpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIHNob3dpbmdfZGVza3RvcF9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdp bmRvd19jcmVhdGVkIChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHdpbmRvd19kZW1hbmRzX2F0dGVudGlvbiAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCB3aW5kb3dfZW50ZXJlZF9tb25pdG9yIChpbnQgb2JqZWN0LCBNZXRhLldp bmRvdyBwMCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2xlZnRfbW9uaXRvciAoaW50 IG9iamVjdCwgTWV0YS5XaW5kb3cgcDApOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19t YXJrZWRfdXJnZW50IChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHdvcmthcmVhc19jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5 X2Nsb3NpbmcgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfb3BlbmVkICgp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X3NldHVwICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtZG5kLmgiLCB0eXBlX2lkID0gIm1l dGFfZG5kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBEbmQgOiBHTGliLk9iamVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgRG5kICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRuZF9lbnRlciAoKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBkbmRfbGVhdmUgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX3Bv c2l0aW9uX2NoYW5nZSAoaW50IG9iamVjdCwgaW50IHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBGcmFtZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWV0YS1pZGxlLW1vbml0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV9pZGxl X21vbml0b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIElkbGVNb25pdG9yIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIElkbGVNb25pdG9yICgpOworKwkJcHVibGljIHVpbnQgYWRkX2lkbGVfd2F0 Y2ggKHVpbnQ2NCBpbnRlcnZhbF9tc2VjLCBvd25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5j PyBjYWxsYmFjayk7CisrCQlwdWJsaWMgdWludCBhZGRfdXNlcl9hY3RpdmVfd2F0Y2ggKG93bmVk IE1ldGEuSWRsZU1vbml0b3JXYXRjaEZ1bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBNZXRhLklkbGVNb25pdG9yIGdldF9jb3JlICgpOworKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIE1ldGEuSWRsZU1vbml0b3IgZ2V0X2Zvcl9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZp Y2UgZGV2aWNlKTsKKysJCXB1YmxpYyBpbnQ2NCBnZXRfaWRsZXRpbWUgKCk7CisrCQlwdWJsaWMg dm9pZCByZW1vdmVfd2F0Y2ggKHVpbnQgaWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlf ZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUi LCB0eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3Rd CisrCXB1YmxpYyBjbGFzcyBLZXlCaW5kaW5nIHsKKysJCXB1YmxpYyB1aW50IGdldF9tYXNrICgp OworKwkJcHVibGljIE1ldGEuVmlydHVhbE1vZGlmaWVyIGdldF9tb2RpZmllcnMgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19idWls dGluICgpOworKwkJcHVibGljIGJvb2wgaXNfcmV2ZXJzZWQgKCk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gIm1ldGFfa2V5YmluZGluZ3Nfc2V0X2N1c3RvbV9oYW5kbGVyIildCisrCQlwdWJsaWMgc3Rh dGljIGJvb2wgc2V0X2N1c3RvbV9oYW5kbGVyIChzdHJpbmcgbmFtZSwgb3duZWQgTWV0YS5LZXlI YW5kbGVyRnVuYz8gaGFuZGxlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWV0YS1sYXVuY2gtY29udGV4dC5oIiwgdHlwZV9pZCA9ICJtZXRhX2xhdW5jaF9jb250 ZXh0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBMYXVuY2hDb250ZXh0IDogR0xpYi5B cHBMYXVuY2hDb250ZXh0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBMYXVuY2hDb250ZXh0ICgpOworKwkJcHVibGljIHZvaWQgc2V0 X3RpbWVzdGFtcCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfd29ya3Nw YWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB0aW1lc3RhbXAgeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5Xb3Jrc3BhY2Ugd29y a3NwYWNlIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLW1vbml0b3ItbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX21vbml0 b3JfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTW9uaXRvck1hbmFnZXIg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgTW9uaXRvck1hbmFnZXIgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5f c3dpdGNoX2NvbmZpZyAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLk1vbml0b3JN YW5hZ2VyIEBnZXQgKCk7CisrCQlwdWJsaWMgc3RhdGljIGludCBnZXRfZGlzcGxheV9jb25maWd1 cmF0aW9uX3RpbWVvdXQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaXNfYnVpbHRpbl9kaXNwbGF5 X29uICgpOworKwkJcHVibGljIGludCBnZXRfbW9uaXRvcl9mb3JfY29ubmVjdG9yIChzdHJpbmcg Y29ubmVjdG9yKTsKKysJCXB1YmxpYyBNZXRhLk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGdldF9z d2l0Y2hfY29uZmlnICgpOworKwkJcHVibGljIHZvaWQgc3dpdGNoX2NvbmZpZyAoTWV0YS5Nb25p dG9yU3dpdGNoQ29uZmlnVHlwZSBjb25maWdfdHlwZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBNZXRhLkJhY2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBtb25pdG9yc19jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIG1vbml0b3JzX2NoYW5nZWRfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg cG93ZXJfc2F2ZV9tb2RlX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWV0YS1wbHVnaW4uaCIsIHR5cGVfaWQgPSAibWV0YV9wbHVnaW5fZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFBsdWdpbiA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBQbHVnaW4gKCk7CisrCQlwdWJsaWMgYm9vbCBiZWdpbl9tb2RhbCAoTWV0YS5Nb2RhbE9wdGlv bnMgb3B0aW9ucywgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBjb21wbGV0ZV9k aXNwbGF5X2NoYW5nZSAoYm9vbCBvayk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBjb25maXJtX2Rpc3BsYXlfY2hhbmdlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgZGVzdHJveSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlw dWJsaWMgdm9pZCBkZXN0cm95X2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7Cisr CQlwdWJsaWMgdm9pZCBlbmRfbW9kYWwgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVu b3duZWQgTWV0YS5EaXNwbGF5IGdldF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5QbHVnaW5JbmZvPyBnZXRfaW5mbyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGhpZGVfdGlsZV9wcmV2aWV3ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIGJvb2wga2V5YmluZGluZ19maWx0ZXIgKE1ldGEuS2V5QmluZGluZyBiaW5kaW5n KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfc3dpdGNoX3dv cmtzcGFjZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxf d2luZG93X2VmZmVjdHMgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbG9jYXRlX3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgbWFuYWdlcl9zZXRfcGx1Z2luX3R5cGUgKEdMaWIuVHlwZSBndHlwZSk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtYXAgKE1ldGEuV2luZG93QWN0b3Ig YWN0b3IpOworKwkJcHVibGljIHZvaWQgbWFwX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBh Y3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtaW5pbWl6ZSAo TWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBtaW5pbWl6ZV9jb21wbGV0 ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHVub3duZWQgTWV0YS5QbHVnaW5JbmZvPyBwbHVnaW5faW5mbyAoKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNob3dfdGlsZV9wcmV2aWV3IChNZXRhLldp bmRvdyB3aW5kb3csIE1ldGEuUmVjdGFuZ2xlIHRpbGVfcmVjdCwgaW50IHRpbGVfbW9uaXRvcl9u dW1iZXIpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd193aW5k b3dfbWVudSAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLldpbmRvd01lbnVUeXBlIG1lbnUsIGlu dCB4LCBpbnQgeSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93 X3dpbmRvd19tZW51X2Zvcl9yZWN0IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuV2luZG93TWVu dVR5cGUgbWVudSwgTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBzaXplX2NoYW5nZSAoTWV0YS5XaW5kb3dBY3RvciBhY3RvciwgTWV0 YS5TaXplQ2hhbmdlIHdoaWNoX2NoYW5nZSwgTWV0YS5SZWN0YW5nbGUgb2xkX2ZyYW1lX3JlY3Qs IE1ldGEuUmVjdGFuZ2xlIG9sZF9idWZmZXJfcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzaXplX2No YW5nZV9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2l6ZV9jaGFuZ2VkIChNZXRhLldpbmRvd0FjdG9yIGFj dG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0YXJ0ICgpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc3dpdGNoX3dvcmtzcGFjZSAo aW50IGZyb20sIGludCB0bywgTWV0YS5Nb3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1 YmxpYyB2b2lkIHN3aXRjaF93b3Jrc3BhY2VfY29tcGxldGVkICgpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdW5taW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rv cik7CisrCQlwdWJsaWMgdm9pZCB1bm1pbmltaXplX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3Rv ciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCB4ZXZlbnRf ZmlsdGVyIChYLkV2ZW50IGV2ZW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIiwgdHlwZV9pZCA9ICJtZXRh X3JlbW90ZV9hY2Nlc3NfY29udHJvbGxlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg UmVtb3RlQWNjZXNzQ29udHJvbGxlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NDb250 cm9sbGVyICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG5ld19oYW5kbGUgKE1ldGEuUmVtb3Rl QWNjZXNzSGFuZGxlIG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9y ZW1vdGVfYWNjZXNzX2hhbmRsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3Rl QWNjZXNzSGFuZGxlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFJlbW90ZUFjY2Vzc0hhbmRsZSAoKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgc3RvcCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzdG9w cGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IFNlbGVjdGlvbiA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBTZWxlY3Rpb24gKE1ldGEuRGlzcGxheSBkaXNwbGF5 KTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8c3RyaW5nPiBnZXRfbWltZXR5cGVzIChNZXRhLlNlbGVj dGlvblR5cGUgc2VsZWN0aW9uX3R5cGUpOworKwkJcHVibGljIHZvaWQgc2V0X293bmVyIChNZXRh LlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVy KTsKKysJCXB1YmxpYyBhc3luYyBib29sIHRyYW5zZmVyX2FzeW5jIChNZXRhLlNlbGVjdGlvblR5 cGUgc2VsZWN0aW9uX3R5cGUsIHN0cmluZyBtaW1ldHlwZSwgc3NpemVfdCBzaXplLCBHTGliLk91 dHB1dFN0cmVhbSBvdXRwdXQsIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5 cGUgc2VsZWN0aW9uX3R5cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBvd25lcl9jaGFuZ2VkICh1aW50IG9iamVjdCwgTWV0YS5TZWxlY3Rpb25T b3VyY2UgcDApOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fc291cmNlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBTZWxlY3Rpb25Tb3VyY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2VsZWN0aW9uU291 cmNlICgpOworKwkJcHVibGljIHZpcnR1YWwgR0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBl cyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGFz eW5jIEdMaWIuSW5wdXRTdHJlYW0gcmVhZF9hc3luYyAoc3RyaW5nIG1pbWV0eXBlLCBHTGliLkNh bmNlbGxhYmxlPyBjYW5jZWxsYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCBhY3RpdmF0ZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBkZWFjdGl2YXRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3NvdXJjZV9tZW1vcnlfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVjdGlvblNvdXJjZU1lbW9yeSA6IE1ldGEu U2VsZWN0aW9uU291cmNlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlLCB0eXBlID0gIk1ldGFTZWxlY3Rpb25Tb3VyY2UqIildCisrCQlwdWJsaWMgU2VsZWN0aW9u U291cmNlTWVtb3J5IChzdHJpbmcgbWltZXR5cGUsIEdMaWIuQnl0ZXMgY29udGVudCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zZXR0aW5ncy5oIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3Mg eworKwkJcHVibGljIGludCBnZXRfZm9udF9kcGkgKCk7CisrCQlwdWJsaWMgaW50IGdldF91aV9z Y2FsaW5nX2ZhY3RvciAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCByZWZfZnVuY3Rpb24gPSAibWV0YV9zaGFkb3dfcmVmIiwgdHlwZV9pZCA9ICJt ZXRhX3NoYWRvd19nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3Vu cmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZG93IHsKKysJCXB1YmxpYyB2 b2lkIGdldF9ib3VuZHMgKGludCB3aW5kb3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dp ZHRoLCBpbnQgd2luZG93X2hlaWdodCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IGJvdW5kcyk7CisrCQlw dWJsaWMgdm9pZCBwYWludCAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgaW50IHdpbmRv d194LCBpbnQgd2luZG93X3ksIGludCB3aW5kb3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCB1 aW50OCBvcGFjaXR5LCBDYWlyby5SZWdpb24/IGNsaXAsIGJvb2wgY2xpcF9zdHJpY3RseSk7Cisr CQlwdWJsaWMgTWV0YS5TaGFkb3cgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhZG93LWZhY3Rv cnkuaCIsIHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfZmFjdG9yeV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgU2hhZG93RmFjdG9yeSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBTaGFkb3dGYWN0b3J5ICgp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuU2hhZG93RmFjdG9yeSBnZXRfZGVmYXVs dCAoKTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvd1BhcmFtcyBnZXRfcGFyYW1zIChzdHJpbmcgY2xh c3NfbmFtZSwgYm9vbCBmb2N1c2VkKTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvdyBnZXRfc2hhZG93 IChNZXRhLldpbmRvd1NoYXBlIHNoYXBlLCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIHN0cmluZyBj bGFzc19uYW1lLCBib29sIGZvY3VzZWQpOworKwkJcHVibGljIHZvaWQgc2V0X3BhcmFtcyAoc3Ry aW5nIGNsYXNzX25hbWUsIGJvb2wgZm9jdXNlZCwgTWV0YS5TaGFkb3dQYXJhbXMgQHBhcmFtcyk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNoYXBlZC10ZXh0dXJlLmgiLCB0eXBlX2lkID0gIm1l dGFfc2hhcGVkX3RleHR1cmVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYXBlZFRl eHR1cmUgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFwZWRUZXh0dXJlICgp OworKwkJcHVibGljIENhaXJvLlN1cmZhY2U/IGdldF9pbWFnZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50 PyBjbGlwKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsK KysJCXB1YmxpYyB2b2lkIHNldF9jcmVhdGVfbWlwbWFwcyAoYm9vbCBjcmVhdGVfbWlwbWFwcyk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfbWFza190ZXh0dXJlIChDb2dsLlRleHR1cmUgbWFza190ZXh0 dXJlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcGFxdWVfcmVnaW9uIChvd25lZCBDYWlyby5SZWdp b24gb3BhcXVlX3JlZ2lvbik7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2l6ZV9jaGFuZ2VkICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc291bmQtcGxh eWVyLmgiLCB0eXBlX2lkID0gIm1ldGFfc291bmRfcGxheWVyX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBTb3VuZFBsYXllciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTb3VuZFBsYXllciAoKTsK KysJCXB1YmxpYyB2b2lkIHBsYXlfZnJvbV9maWxlIChHTGliLkZpbGUgZmlsZSwgc3RyaW5nIGRl c2NyaXB0aW9uLCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwkJcHVi bGljIHZvaWQgcGxheV9mcm9tX3RoZW1lIChzdHJpbmcgbmFtZSwgc3RyaW5nIGRlc2NyaXB0aW9u LCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc3RhZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9z dGFnZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLlN0YWdl LCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIs IENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2UgKCk7CisrCQlwdWJsaWMgc3RhdGljIGJvb2wg aXNfZm9jdXNlZCAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IGFjdG9yc19wYWludGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21ldGEtc3RhcnR1cC1ub3RpZmljYXRpb24uaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFydHVw X25vdGlmaWNhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cE5vdGlm aWNhdGlvbiA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFydHVwTm90aWZpY2F0aW9uICgpOworKwkJcHVi bGljIE1ldGEuTGF1bmNoQ29udGV4dCBjcmVhdGVfbGF1bmNoZXIgKCk7CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29u c3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2hhbmdlZCAodm9pZCogb2JqZWN0KTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lk ID0gIm1ldGFfc3RhcnR1cF9zZXF1ZW5jZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg U3RhcnR1cFNlcXVlbmNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YXJ0dXBTZXF1ZW5jZSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfYXBwbGljYXRpb25faWQgKCk7CisrCQlwdWJsaWMg Ym9vbCBnZXRfY29tcGxldGVkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pY29u X25hbWUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVibGlj IHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJcHVibGljIHVpbnQ2NCBnZXRfdGltZXN0 YW1wICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF93bWNsYXNzICgpOworKwkJcHVi bGljIGludCBnZXRfd29ya3NwYWNlICgpOworKwkJcHVibGljIHN0cmluZyBhcHBsaWNhdGlvbl9p ZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGljb25fbmFtZSB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0 IHRpbWVzdGFtcCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHdtY2xhc3Mg eyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGludCB3b3Jrc3BhY2UgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29tcGxldGUg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdGhlbWUuaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFRoZW1lIHsK KysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvd2luZG93LmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2dldF90eXBlICgpIild CisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93 ICgpOworKwkJcHVibGljIHZvaWQgYWN0aXZhdGUgKHVpbnQzMiBjdXJyZW50X3RpbWUpOworKwkJ cHVibGljIHZvaWQgYWN0aXZhdGVfd2l0aF93b3Jrc3BhY2UgKHVpbnQzMiBjdXJyZW50X3RpbWUs IE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfbW92ZSAo KTsKKysJCXB1YmxpYyBib29sIGFsbG93c19yZXNpemUgKCk7CisrCQlwdWJsaWMgdm9pZCBiZWdp bl9ncmFiX29wIChNZXRhLkdyYWJPcCBvcCwgYm9vbCBmcmFtZV9hY3Rpb24sIHVpbnQzMiB0aW1l c3RhbXApOworKwkJcHVibGljIGJvb2wgY2FuX2Nsb3NlICgpOworKwkJcHVibGljIGJvb2wgY2Fu X21heGltaXplICgpOworKwkJcHVibGljIGJvb2wgY2FuX21pbmltaXplICgpOworKwkJcHVibGlj IGJvb2wgY2FuX3NoYWRlICgpOworKwkJcHVibGljIHZvaWQgY2hhbmdlX3dvcmtzcGFjZSAoTWV0 YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3BhY2Vf YnlfaW5kZXggKGludCBzcGFjZV9pbmRleCwgYm9vbCBhcHBlbmQpOworKwkJcHVibGljIHZvaWQg Y2hlY2tfYWxpdmUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xl IGNsaWVudF9yZWN0X3RvX2ZyYW1lX3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0KTsK KysJCXB1YmxpYyB2b2lkIGNvbXB1dGVfZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRl ICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGZpbmRf cm9vdF9hbmNlc3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIGZvY3VzICh1aW50MzIgdGltZXN0YW1w KTsKKysJCXB1YmxpYyB2b2lkIGZvcmVhY2hfYW5jZXN0b3IgKE1ldGEuV2luZG93Rm9yZWFjaEZ1 bmMgZnVuYyk7CisrCQlwdWJsaWMgdm9pZCBmb3JlYWNoX3RyYW5zaWVudCAoTWV0YS5XaW5kb3dG b3JlYWNoRnVuYyBmdW5jKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0X3Rv X2NsaWVudF9yZWN0IChNZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0KTsKKysJCXB1YmxpYyBNZXRh LlJlY3RhbmdsZSBnZXRfYnVmZmVyX3JlY3QgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcg Z2V0X2NsaWVudF9tYWNoaW5lICgpOworKwkJcHVibGljIE1ldGEuV2luZG93Q2xpZW50VHlwZSBn ZXRfY2xpZW50X3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfY29t cG9zaXRvcl9wcml2YXRlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXNjcmlw dGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsK KysJCXB1YmxpYyB1bm93bmVkIENhaXJvLlJlZ2lvbj8gZ2V0X2ZyYW1lX2JvdW5kcyAoKTsKKysJ CXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfZnJhbWVfcmVjdCAoKTsKKysJCXB1YmxpYyBNZXRh LkZyYW1lVHlwZSBnZXRfZnJhbWVfdHlwZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfZ3RrX2FwcF9tZW51X29iamVjdF9wYXRoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF9ndGtfYXBwbGljYXRpb25faWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X2d0a19hcHBsaWNhdGlvbl9vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfZ3RrX21lbnViYXJfb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X2d0a190aGVtZV92YXJpYW50ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdl dF9ndGtfdW5pcXVlX2J1c19uYW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9n dGtfd2luZG93X29iamVjdF9wYXRoICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2ljb25fZ2VvbWV0 cnkgKG91dCBNZXRhLlJlY3RhbmdsZSByZWN0KTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X2lkICgp OworKwkJcHVibGljIE1ldGEuU3RhY2tMYXllciBnZXRfbGF5ZXIgKCk7CisrCQlwdWJsaWMgTWV0 YS5NYXhpbWl6ZUZsYWdzIGdldF9tYXhpbWl6ZWQgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25p dG9yICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9tdXR0ZXJfaGludHMgKCk7Cisr CQlwdWJsaWMgaW50IGdldF9waWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Jv bGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3NhbmRib3hlZF9hcHBfaWQgKCk7 CisrCQlwdWJsaWMgdWludCBnZXRfc3RhYmxlX3NlcXVlbmNlICgpOworKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIGdldF9zdGFydHVwX2lkICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5k b3c/IGdldF90aWxlX21hdGNoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90aXRs ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90cmFuc2llbnRfZm9yICgp OworKwkJcHVibGljIHVpbnQzMiBnZXRfdXNlcl90aW1lICgpOworKwkJcHVibGljIE1ldGEuV2lu ZG93VHlwZSBnZXRfd2luZG93X3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X3dtX2NsYXNzICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF93bV9jbGFzc19pbnN0 YW5jZSAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2FsbF9tb25p dG9ycyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2N1cnJlbnRf bW9uaXRvciAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2Zvcl9t b25pdG9yIChpbnQgd2hpY2hfbW9uaXRvcik7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtz cGFjZSBnZXRfd29ya3NwYWNlICgpOworKwkJcHVibGljIFguV2luZG93IGdldF94d2luZG93ICgp OworKwkJcHVibGljIHZvaWQgZ3JvdXBfbGVhZGVyX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgYm9v bCBoYXNfZm9jdXMgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hYm92ZSAoKTsKKysJCXB1YmxpYyBi b29sIGlzX2Fsd2F5c19vbl9hbGxfd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Fu Y2VzdG9yX29mX3RyYW5zaWVudCAoTWV0YS5XaW5kb3cgdHJhbnNpZW50KTsKKysJCXB1YmxpYyBi b29sIGlzX2F0dGFjaGVkX2RpYWxvZyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2NsaWVudF9kZWNv cmF0ZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19mdWxsc2NyZWVuICgpOworKwkJcHVibGljIGJv b2wgaXNfaGlkZGVuICgpOworKwkJcHVibGljIGJvb2wgaXNfbW9uaXRvcl9zaXplZCAoKTsKKysJ CXB1YmxpYyBib29sIGlzX29uX2FsbF93b3Jrc3BhY2VzICgpOworKwkJcHVibGljIGJvb2wgaXNf b25fcHJpbWFyeV9tb25pdG9yICgpOworKwkJcHVibGljIGJvb2wgaXNfb3ZlcnJpZGVfcmVkaXJl Y3QgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19yZW1vdGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19z Y3JlZW5fc2l6ZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZWQgKCk7CisrCQlwdWJsaWMg Ym9vbCBpc19za2lwX3Rhc2tiYXIgKCk7CisrCQlwdWJsaWMgdm9pZCBraWxsICgpOworKwkJcHVi bGljIGJvb2wgbG9jYXRlZF9vbl93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7 CisrCQlwdWJsaWMgdm9pZCBsb3dlciAoKTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfYWJvdmUgKCk7 CisrCQlwdWJsaWMgdm9pZCBtYWtlX2Z1bGxzY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCBtYXhp bWl6ZSAoTWV0YS5NYXhpbWl6ZUZsYWdzIGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQgbWlu aW1pemUgKCk7CisrCQlwdWJsaWMgdm9pZCBtb3ZlX2ZyYW1lIChib29sIHVzZXJfb3AsIGludCBy b290X3hfbncsIGludCByb290X3lfbncpOworKwkJcHVibGljIHZvaWQgbW92ZV9yZXNpemVfZnJh bWUgKGJvb2wgdXNlcl9vcCwgaW50IHJvb3RfeF9udywgaW50IHJvb3RfeV9udywgaW50IHcsIGlu dCBoKTsKKysJCXB1YmxpYyB2b2lkIG1vdmVfdG9fbW9uaXRvciAoaW50IG1vbml0b3IpOworKwkJ cHVibGljIHZvaWQgcmFpc2UgKCk7CisrCQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfYnlwYXNzX2Nv bXBvc2l0b3IgKCk7CisrCQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfZG9udF9ieXBhc3NfY29tcG9z aXRvciAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb21wb3NpdG9yX3ByaXZhdGUgKEdMaWIuT2Jq ZWN0IHByaXYpOworKwkJcHVibGljIHZvaWQgc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJ cHVibGljIHZvaWQgc2V0X2ljb25fZ2VvbWV0cnkgKE1ldGEuUmVjdGFuZ2xlPyByZWN0KTsKKysJ CXB1YmxpYyB2b2lkIHNoYWRlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHNo b3ZlX3RpdGxlYmFyX29uc2NyZWVuICgpOworKwkJcHVibGljIGJvb2wgc2hvd2luZ19vbl9pdHNf d29ya3NwYWNlICgpOworKwkJcHVibGljIHZvaWQgc2h1dGRvd25fZ3JvdXAgKCk7CisrCQlwdWJs aWMgdm9pZCBzdGljayAoKTsKKysJCXB1YmxpYyBib29sIHRpdGxlYmFyX2lzX29uc2NyZWVuICgp OworKwkJcHVibGljIHZvaWQgdW5tYWtlX2Fib3ZlICgpOworKwkJcHVibGljIHZvaWQgdW5tYWtl X2Z1bGxzY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCB1bm1heGltaXplIChNZXRhLk1heGltaXpl RmxhZ3MgZGlyZWN0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCB1bm1pbmltaXplICgpOworKwkJcHVi bGljIHZvaWQgdW5zZXRfZGVtYW5kc19hdHRlbnRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCB1bnNo YWRlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc3RpY2sgKCk7CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGFib3ZlIHsgZ2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGFwcGVhcnNfZm9jdXNlZCB7IGdldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBkZWNvcmF0ZWQgeyBnZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZGVtYW5kc19hdHRlbnRpb24g eyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZnVsbHNjcmVl biB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggeyBn ZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX2FwcGxpY2F0aW9uX2lkIHsgZ2V0OyB9CisrCQlw dWJsaWMgc3RyaW5nIGd0a19hcHBsaWNhdGlvbl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVi bGljIHN0cmluZyBndGtfbWVudWJhcl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0 cmluZyBndGtfdW5pcXVlX2J1c19uYW1lIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a193 aW5kb3dfb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIHZvaWQqIGljb24geyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGJvb2wgbWF4aW1pemVkX2hvcml6b250YWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgYm9vbCBtYXhpbWl6ZWRfdmVydGljYWxseSB7IGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdm9pZCogbWluaV9pY29uIHsgZ2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG1pbmltaXplZCB7IGdldDsgfQorKwkJ cHVibGljIHN0cmluZyBtdXR0ZXJfaGludHMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGJvb2wgb25fYWxsX3dvcmtzcGFjZXMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgcmVzaXplYWJsZSB7IGdldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBza2lwX3Rhc2tiYXIgeyBnZXQ7IH0KKysJCXB1 YmxpYyBzdHJpbmcgdGl0bGUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGJvb2wgdXJnZW50IHsgZ2V0OyB9CisrCQlwdWJsaWMgdWludCB1c2VyX3RpbWUgeyBnZXQ7 IH0KKysJCXB1YmxpYyBNZXRhLldpbmRvd1R5cGUgd2luZG93X3R5cGUgeyBnZXQ7IH0KKysJCXB1 YmxpYyBzdHJpbmcgd21fY2xhc3MgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwb3Np dGlvbl9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHJhaXNlZCAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBzaG93biAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaXplX2No YW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdW5tYW5hZ2VkICgpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd2luZG93LWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFf d2luZG93X2FjdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBXaW5k b3dBY3RvciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRh YmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dBY3Rv ciAoKTsKKysJCXB1YmxpYyBDYWlyby5TdXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3Rhbmds ZUludD8gY2xpcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfbWV0YV93aW5k b3cgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlNoYXBlZFRleHR1cmUgZ2V0X3RleHR1cmUg KCk7CisrCQlwdWJsaWMgYm9vbCBpc19kZXN0cm95ZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzeW5j X3Zpc2liaWxpdHkgKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3cgbWV0YV93aW5kb3cgeyBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRhbWFnZWQgKCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgZWZmZWN0c19jb21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgZmlyc3RfZnJhbWUgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdGhhd2VkICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd2luZG93LWdyb3VwLmgi LCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2dyb3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBXaW5kb3dHcm91cCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRl ci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBX aW5kb3dHcm91cCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t ZXRhLXdpbmRvdy1zaGFwZS5oIiwgcmVmX2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3Jl ZiIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfc2hhcGVfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5j dGlvbiA9ICJtZXRhX3dpbmRvd19zaGFwZV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGlj IGNsYXNzIFdpbmRvd1NoYXBlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXB1YmxpYyBXaW5kb3dTaGFwZSAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7Cisr CQlwdWJsaWMgYm9vbCBlcXVhbCAoTWV0YS5XaW5kb3dTaGFwZSBzaGFwZV9iKTsKKysJCXB1Ymxp YyB2b2lkIGdldF9ib3JkZXJzIChpbnQgYm9yZGVyX3RvcCwgaW50IGJvcmRlcl9yaWdodCwgaW50 IGJvcmRlcl9ib3R0b20sIGludCBib3JkZXJfbGVmdCk7CisrCQlwdWJsaWMgdWludCBoYXNoICgp OworKwkJcHVibGljIE1ldGEuV2luZG93U2hhcGUgQHJlZiAoKTsKKysJCXB1YmxpYyBDYWlyby5S ZWdpb24gdG9fcmVnaW9uIChpbnQgY2VudGVyX3dpZHRoLCBpbnQgY2VudGVyX2hlaWdodCk7Cisr CQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS93b3Jrc3BhY2UuaCIsIHR5cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFdvcmtzcGFjZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3Bh Y2UgKCk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlw dWJsaWMgdm9pZCBhY3RpdmF0ZV93aXRoX2ZvY3VzIChNZXRhLldpbmRvdyBmb2N1c190aGlzLCB1 aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlz cGxheSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGdldF9uZWlnaGJvciAo TWV0YS5Nb3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyBNZXRhLlJlY3Rhbmds ZSBnZXRfd29ya19hcmVhX2FsbF9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3Rhbmds ZSBnZXRfd29ya19hcmVhX2Zvcl9tb25pdG9yIChpbnQgd2hpY2hfbW9uaXRvcik7CisrCQlwdWJs aWMgaW50IGluZGV4ICgpOworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBs aXN0X3dpbmRvd3MgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnVpbHRpbl9zdHJ1dHMgKEdMaWIu U0xpc3Q8TWV0YS5TdHJ1dD8+IHN0cnV0cyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyB1aW50IG5fd2luZG93cyB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgdWludCB3b3Jrc3BhY2VfaW5kZXggeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9p ZCB3aW5kb3dfYWRkZWQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgd2luZG93X3JlbW92ZWQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIiwgdHlwZV9p ZCA9ICJtZXRhX3dvcmtzcGFjZV9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFz cyBXb3Jrc3BhY2VNYW5hZ2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdvcmtzcGFjZU1hbmFnZXIgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBhcHBlbmRfbmV3X3dvcmtzcGFjZSAo Ym9vbCBhY3RpdmF0ZSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRh LldvcmtzcGFjZSBnZXRfYWN0aXZlX3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2Fj dGl2ZV93b3Jrc3BhY2VfaW5kZXggKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3dvcmtzcGFjZXMg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZT8gZ2V0X3dvcmtzcGFjZV9ieV9p bmRleCAoaW50IGluZGV4KTsKKysJCXB1YmxpYyB2b2lkIG92ZXJyaWRlX3dvcmtzcGFjZV9sYXlv dXQgKE1ldGEuRGlzcGxheUNvcm5lciBzdGFydGluZ19jb3JuZXIsIGJvb2wgdmVydGljYWxfbGF5 b3V0LCBpbnQgbl9yb3dzLCBpbnQgbl9jb2x1bW5zKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV93 b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgdWludDMyIHRpbWVzdGFtcCk7Cisr CQlwdWJsaWMgdm9pZCByZW9yZGVyX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNl LCBpbnQgbmV3X2luZGV4KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBs YXlvdXRfY29sdW1ucyB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg aW50IGxheW91dF9yb3dzIHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fd29ya3NwYWNlcyB7IGdl dDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFjdGl2ZV93b3Jrc3BhY2VfY2hhbmdlZCAoKTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VfYWRkZWQgKGludCBvYmplY3QpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9yZW1vdmVkIChpbnQgb2JqZWN0KTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCB3b3Jrc3BhY2Vfc3dpdGNoZWQgKGludCBvYmplY3QsIGludCBwMCwgTWV0YS5N b3Rpb25EaXJlY3Rpb24gcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZXNfcmVv cmRlcmVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEt eDExLWRpc3BsYXkuaCIsIHR5cGVfaWQgPSAibWV0YV94MTFfZGlzcGxheV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgWDExRGlzcGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBYMTFEaXNwbGF5 ICgpOworKwkJcHVibGljIHZvaWQgY2xlYXJfc3RhZ2VfaW5wdXRfcmVnaW9uICgpOworKwkJcHVi bGljIGludCBnZXRfZGFtYWdlX2V2ZW50X2Jhc2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9zY3Jl ZW5fbnVtYmVyICgpOworKwkJcHVibGljIGludCBnZXRfc2hhcGVfZXZlbnRfYmFzZSAoKTsKKysJ CXB1YmxpYyBib29sIGhhc19zaGFwZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jbV9zZWxlY3Rp b24gKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIChYLlhzZXJ2ZXJS ZWdpb24gcmVnaW9uKTsKKysJCXB1YmxpYyBib29sIHh3aW5kb3dfaXNfYV9ub19mb2N1c193aW5k b3cgKFguV2luZG93IHh3aW5kb3cpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21ldGEtY2xvc2UtZGlhbG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFDbG9zZURpYWxv Z0ludGVyZmFjZSIsIHR5cGVfaWQgPSAibWV0YV9jbG9zZV9kaWFsb2dfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGludGVyZmFjZSBDbG9zZURpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIGZvY3VzICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAo KTsKKysJCXB1YmxpYyBib29sIGlzX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9p ZCBzaG93ICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0 YS5XaW5kb3cgd2luZG93IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVy XQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHJlc3BvbnNlIChNZXRhLkNsb3NlRGlhbG9nUmVzcG9u c2UgcmVzcG9uc2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21l dGEtaW5oaWJpdC1zaG9ydGN1dHMtZGlhbG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFJbmhpYml0 U2hvcnRjdXRzRGlhbG9nSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJtZXRhX2luaGliaXRfc2hvcnRj dXRzX2RpYWxvZ19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIEluaGliaXRTaG9y dGN1dHNEaWFsb2cgOiBHTGliLk9iamVjdCB7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRl ICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGFic3RyYWN0IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsg Y29uc3RydWN0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNw b25zZSAoTWV0YS5JbmhpYml0U2hvcnRjdXRzRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IEJ1dHRvbkxheW91dCB7CisrCQlbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIE1ldGEuQnV0dG9uRnVuY3Rpb24g bGVmdF9idXR0b25zWzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlw dWJsaWMgd2VhayBib29sIGxlZnRfYnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwkJW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1bmN0aW9u IHJpZ2h0X2J1dHRvbnNbNF07CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJ CXB1YmxpYyB3ZWFrIGJvb2wgcmlnaHRfYnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlwdWJsaWMgc3RydWN0IEVkZ2UgeworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHJl Y3Q7CisrCQlwdWJsaWMgTWV0YS5TaWRlIHNpZGVfdHlwZTsKKysJCXB1YmxpYyBNZXRhLkVkZ2VU eXBlIGVkZ2VfdHlwZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBGcmFtZUJvcmRl cnMgeworKwkJcHVibGljIEd0ay5Cb3JkZXIgdmlzaWJsZTsKKysJCXB1YmxpYyBHdGsuQm9yZGVy IGludmlzaWJsZTsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIHRvdGFsOworKwkJcHVibGljIHZvaWQg Y2xlYXIgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1w bHVnaW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdpbklu Zm8geworKwkJcHVibGljIHdlYWsgc3RyaW5nIG5hbWU7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcg dmVyc2lvbjsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBhdXRob3I7CisrCQlwdWJsaWMgd2VhayBz dHJpbmcgbGljZW5zZTsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBkZXNjcmlwdGlvbjsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQbHVnaW5WZXJzaW9uIHsKKysJCXB1YmxpYyB1aW50 IHZlcnNpb25fbWFqb3I7CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX21pbm9yOworKwkJcHVibGlj IHVpbnQgdmVyc2lvbl9taWNybzsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fYXBpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24g PSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lk ID0gIm1ldGFfcmVjdGFuZ2xlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdGFu Z2xlIHsKKysJCXB1YmxpYyBpbnQgeDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQg d2lkdGg7CisrCQlwdWJsaWMgaW50IGhlaWdodDsKKysJCXB1YmxpYyBpbnQgYXJlYSAoKTsKKysJ CXB1YmxpYyBib29sIGNvbnRhaW5zX3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGlubmVyX3JlY3QpOwor KwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlPyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgY291bGRf Zml0X3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGlubmVyX3JlY3QpOworKwkJcHVibGljIGJvb2wgZXF1 YWwgKE1ldGEuUmVjdGFuZ2xlIHNyYzIpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCXB1 YmxpYyBib29sIGhvcml6X292ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1Ymxp YyBib29sIGludGVyc2VjdCAoTWV0YS5SZWN0YW5nbGUgc3JjMiwgb3V0IE1ldGEuUmVjdGFuZ2xl IGRlc3QpOworKwkJcHVibGljIGJvb2wgb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOwor KwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHVuaW9uIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7Cisr CQlwdWJsaWMgYm9vbCB2ZXJ0X292ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBTaGFkb3dQYXJhbXMgeworKwkJcHVibGljIGludCBy YWRpdXM7CisrCQlwdWJsaWMgaW50IHRvcF9mYWRlOworKwkJcHVibGljIGludCB4X29mZnNldDsK KysJCXB1YmxpYyBpbnQgeV9vZmZzZXQ7CisrCQlwdWJsaWMgdWludDggb3BhY2l0eTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBTdHJ1dCB7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5n bGUgcmVjdDsKKysJCXB1YmxpYyBNZXRhLlNpZGUgc2lkZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQkFSUklFUl9ESVJF Q1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZGlyZWN0aW9uX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJcHVibGljIGVudW0gQmFycmllckRpcmVjdGlvbiB7CisrCQlQT1NJVElW RV9YLAorKwkJUE9TSVRJVkVfWSwKKysJCU5FR0FUSVZFX1gsCisrCQlORUdBVElWRV9ZCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBX0JVVFRPTl9GVU5DVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfYnV0dG9uX2Z1bmN0aW9uX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEJ1dHRvbkZ1bmN0aW9uIHsKKysJCU1FTlUsCisr CQlNSU5JTUlaRSwKKysJCU1BWElNSVpFLAorKwkJQ0xPU0UsCisrCQlMQVNUCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NM T1NFX0RJQUxPR19SRVNQT05TRV8iLCB0eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX3Jlc3Bv bnNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIENsb3NlRGlhbG9nUmVzcG9uc2Ugewor KwkJV0FJVCwKKysJCUZPUkNFX0NMT1NFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NPTVBfRUZGRUNUXyIsIHR5cGVfaWQg PSAibWV0YV9jb21wX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDb21wRWZm ZWN0IHsKKysJCUNSRUFURSwKKysJCVVOTUlOSU1JWkUsCisrCQlERVNUUk9ZLAorKwkJTUlOSU1J WkUsCisrCQlOT05FCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NVUlNPUl8iLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEN1cnNvciB7CisrCQlOT05FLAorKwkJREVGQVVM VCwKKysJCU5PUlRIX1JFU0laRSwKKysJCVNPVVRIX1JFU0laRSwKKysJCVdFU1RfUkVTSVpFLAor KwkJRUFTVF9SRVNJWkUsCisrCQlTRV9SRVNJWkUsCisrCQlTV19SRVNJWkUsCisrCQlORV9SRVNJ WkUsCisrCQlOV19SRVNJWkUsCisrCQlNT1ZFX09SX1JFU0laRV9XSU5ET1csCisrCQlCVVNZLAor KwkJRE5EX0lOX0RSQUcsCisrCQlETkRfTU9WRSwKKysJCURORF9DT1BZLAorKwkJRE5EX1VOU1VQ UE9SVEVEX1RBUkdFVCwKKysJCVBPSU5USU5HX0hBTkQsCisrCQlDUk9TU0hBSVIsCisrCQlJQkVB TSwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfREVCVUdfIiwgdHlwZV9pZCA9ICJtZXRhX2RlYnVnX3RvcGlj X2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGVidWdUb3BpYyB7Cisr CQlWRVJCT1NFLAorKwkJRk9DVVMsCisrCQlXT1JLQVJFQSwKKysJCVNUQUNLLAorKwkJVEhFTUVT LAorKwkJU00sCisrCQlFVkVOVFMsCisrCQlXSU5ET1dfU1RBVEUsCisrCQlXSU5ET1dfT1BTLAor KwkJR0VPTUVUUlksCisrCQlQTEFDRU1FTlQsCisrCQlQSU5HLAorKwkJWElORVJBTUEsCisrCQlL RVlCSU5ESU5HUywKKysJCVNZTkMsCisrCQlFUlJPUlMsCisrCQlTVEFSVFVQLAorKwkJUFJFRlMs CisrCQlHUk9VUFMsCisrCQlSRVNJWklORywKKysJCVNIQVBFUywKKysJCUNPTVBPU0lUT1IsCisr CQlFREdFX1JFU0lTVEFOQ0UsCisrCQlEQlVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RJUkVDVElPTl8iLCB0eXBlX2lk ID0gIm1ldGFfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVu dW0gRGlyZWN0aW9uIHsKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTSwK KysJCVVQLAorKwkJRE9XTiwKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9E SVNQTEFZXyIsIHR5cGVfaWQgPSAibWV0YV9kaXNwbGF5X2Nvcm5lcl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBEaXNwbGF5Q29ybmVyIHsKKysJCVRPUExFRlQsCisrCQlUT1BSSUdIVCwK KysJCUJPVFRPTUxFRlQsCisrCQlCT1RUT01SSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVf aWQgPSAibWV0YV9kaXNwbGF5X2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBEaXNwbGF5RGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdI VAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVm aXggPSAiTUVUQV9FREdFXyIsIHR5cGVfaWQgPSAibWV0YV9lZGdlX3R5cGVfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGVudW0gRWRnZVR5cGUgeworKwkJV0lORE9XLAorKwkJTU9OSVRPUiwKKysJ CVNDUkVFTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9FWElUXyIsIHR5cGVfaWQgPSAibWV0YV9leGl0X2NvZGVfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGVudW0gRXhpdENvZGUgeworKwkJU1VDQ0VTUywKKysJCUVSUk9S CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZp eCA9ICJNRVRBX0ZSQU1FXyIsIHR5cGVfaWQgPSAibWV0YV9mcmFtZV9mbGFnc19nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEZyYW1lRmxhZ3MgeworKwkJQUxMT1dTX0RF TEVURSwKKysJCUFMTE9XU19NRU5VLAorKwkJQUxMT1dTX01JTklNSVpFLAorKwkJQUxMT1dTX01B WElNSVpFLAorKwkJQUxMT1dTX1ZFUlRJQ0FMX1JFU0laRSwKKysJCUFMTE9XU19IT1JJWk9OVEFM X1JFU0laRSwKKysJCUhBU19GT0NVUywKKysJCVNIQURFRCwKKysJCVNUVUNLLAorKwkJTUFYSU1J WkVELAorKwkJQUxMT1dTX1NIQURFLAorKwkJQUxMT1dTX01PVkUsCisrCQlGVUxMU0NSRUVOLAor KwkJQUJPVkUsCisrCQlUSUxFRF9MRUZULAorKwkJVElMRURfUklHSFQKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRlJBTUVf VFlQRV8iLCB0eXBlX2lkID0gIm1ldGFfZnJhbWVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBGcmFtZVR5cGUgeworKwkJTk9STUFMLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElB TE9HLAorKwkJVVRJTElUWSwKKysJCU1FTlUsCisrCQlCT1JERVIsCisrCQlBVFRBQ0hFRCwKKysJ CUxBU1Q7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9H UkFCX09QXyIsIHR5cGVfaWQgPSAibWV0YV9ncmFiX29wX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIEdyYWJPcCB7CisrCQlOT05FLAorKwkJV0lORE9XX0JBU0UsCisrCQlDT01QT1NJVE9S LAorKwkJV0FZTEFORF9QT1BVUCwKKysJCUZSQU1FX0JVVFRPTiwKKysJCU1PVklORywKKysJCVJF U0laSU5HX05XLAorKwkJUkVTSVpJTkdfTiwKKysJCVJFU0laSU5HX05FLAorKwkJUkVTSVpJTkdf RSwKKysJCVJFU0laSU5HX1NXLAorKwkJUkVTSVpJTkdfUywKKysJCVJFU0laSU5HX1NFLAorKwkJ UkVTSVpJTkdfVywKKysJCUtFWUJPQVJEX01PVklORywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1VO S05PV04sCisrCQlLRVlCT0FSRF9SRVNJWklOR19OVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX04s CisrCQlLRVlCT0FSRF9SRVNJWklOR19ORSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX0UsCisrCQlL RVlCT0FSRF9SRVNJWklOR19TVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1MsCisrCQlLRVlCT0FS RF9SRVNJWklOR19TRSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX1cKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfSU5ISUJJVF9T SE9SVENVVFNfRElBTE9HX1JFU1BPTlNFXyIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0X3Nob3J0 Y3V0c19kaWFsb2dfcmVzcG9uc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5oaWJp dFNob3J0Y3V0c0RpYWxvZ1Jlc3BvbnNlIHsKKysJCUFMTE9XLAorKwkJREVOWQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9L RVlCSU5ESU5HX0FDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfYWN0aW9uX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEtleUJpbmRpbmdBY3Rpb24geworKwkJTk9ORSwK KysJCVdPUktTUEFDRV8xLAorKwkJV09SS1NQQUNFXzIsCisrCQlXT1JLU1BBQ0VfMywKKysJCVdP UktTUEFDRV80LAorKwkJV09SS1NQQUNFXzUsCisrCQlXT1JLU1BBQ0VfNiwKKysJCVdPUktTUEFD RV83LAorKwkJV09SS1NQQUNFXzgsCisrCQlXT1JLU1BBQ0VfOSwKKysJCVdPUktTUEFDRV8xMCwK KysJCVdPUktTUEFDRV8xMSwKKysJCVdPUktTUEFDRV8xMiwKKysJCVdPUktTUEFDRV9MRUZULAor KwkJV09SS1NQQUNFX1JJR0hULAorKwkJV09SS1NQQUNFX1VQLAorKwkJV09SS1NQQUNFX0RPV04s CisrCQlXT1JLU1BBQ0VfTEFTVCwKKysJCVNXSVRDSF9BUFBMSUNBVElPTlMsCisrCQlTV0lUQ0hf QVBQTElDQVRJT05TX0JBQ0tXQVJELAorKwkJU1dJVENIX0dST1VQLAorKwkJU1dJVENIX0dST1VQ X0JBQ0tXQVJELAorKwkJU1dJVENIX1dJTkRPV1MsCisrCQlTV0lUQ0hfV0lORE9XU19CQUNLV0FS RCwKKysJCVNXSVRDSF9QQU5FTFMsCisrCQlTV0lUQ0hfUEFORUxTX0JBQ0tXQVJELAorKwkJQ1lD TEVfR1JPVVAsCisrCQlDWUNMRV9HUk9VUF9CQUNLV0FSRCwKKysJCUNZQ0xFX1dJTkRPV1MsCisr CQlDWUNMRV9XSU5ET1dTX0JBQ0tXQVJELAorKwkJQ1lDTEVfUEFORUxTLAorKwkJQ1lDTEVfUEFO RUxTX0JBQ0tXQVJELAorKwkJU0hPV19ERVNLVE9QLAorKwkJUEFORUxfTUFJTl9NRU5VLAorKwkJ UEFORUxfUlVOX0RJQUxPRywKKysJCVRPR0dMRV9SRUNPUkRJTkcsCisrCQlTRVRfU1BFV19NQVJL LAorKwkJQUNUSVZBVEVfV0lORE9XX01FTlUsCisrCQlUT0dHTEVfRlVMTFNDUkVFTiwKKysJCVRP R0dMRV9NQVhJTUlaRUQsCisrCQlUT0dHTEVfVElMRURfTEVGVCwKKysJCVRPR0dMRV9USUxFRF9S SUdIVCwKKysJCVRPR0dMRV9BQk9WRSwKKysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJ CVRPR0dMRV9TSEFERUQsCisrCQlNSU5JTUlaRSwKKysJCUNMT1NFLAorKwkJQkVHSU5fTU9WRSwK KysJCUJFR0lOX1JFU0laRSwKKysJCVRPR0dMRV9PTl9BTExfV09SS1NQQUNFUywKKysJCU1PVkVf VE9fV09SS1NQQUNFXzEsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8yLAorKwkJTU9WRV9UT19XT1JL U1BBQ0VfMywKKysJCU1PVkVfVE9fV09SS1NQQUNFXzQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV81 LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfNiwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzcsCisrCQlN T1ZFX1RPX1dPUktTUEFDRV84LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfOSwKKysJCU1PVkVfVE9f V09SS1NQQUNFXzEwLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMTEsCisrCQlNT1ZFX1RPX1dPUktT UEFDRV8xMiwKKysJCU1PVkVfVE9fV09SS1NQQUNFX0xFRlQsCisrCQlNT1ZFX1RPX1dPUktTUEFD RV9SSUdIVCwKKysJCU1PVkVfVE9fV09SS1NQQUNFX1VQLAorKwkJTU9WRV9UT19XT1JLU1BBQ0Vf RE9XTiwKKysJCU1PVkVfVE9fV09SS1NQQUNFX0xBU1QsCisrCQlNT1ZFX1RPX01PTklUT1JfTEVG VCwKKysJCU1PVkVfVE9fTU9OSVRPUl9SSUdIVCwKKysJCU1PVkVfVE9fTU9OSVRPUl9VUCwKKysJ CU1PVkVfVE9fTU9OSVRPUl9ET1dOLAorKwkJUkFJU0VfT1JfTE9XRVIsCisrCQlSQUlTRSwKKysJ CUxPV0VSLAorKwkJTUFYSU1JWkVfVkVSVElDQUxMWSwKKysJCU1BWElNSVpFX0hPUklaT05UQUxM WSwKKysJCU1PVkVfVE9fQ09STkVSX05XLAorKwkJTU9WRV9UT19DT1JORVJfTkUsCisrCQlNT1ZF X1RPX0NPUk5FUl9TVywKKysJCU1PVkVfVE9fQ09STkVSX1NFLAorKwkJTU9WRV9UT19TSURFX04s CisrCQlNT1ZFX1RPX1NJREVfUywKKysJCU1PVkVfVE9fU0lERV9FLAorKwkJTU9WRV9UT19TSURF X1csCisrCQlNT1ZFX1RPX0NFTlRFUiwKKysJCU9WRVJMQVlfS0VZLAorKwkJTE9DQVRFX1BPSU5U RVJfS0VZLAorKwkJSVNPX05FWFRfR1JPVVAsCisrCQlBTFdBWVNfT05fVE9QLAorKwkJU1dJVENI X01PTklUT1IsCisrCQlST1RBVEVfTU9OSVRPUiwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfS0VZX0JJTkRJ TkdfIiwgdHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2ZsYWdzX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJcHVibGljIGVudW0gS2V5QmluZGluZ0ZsYWdzIHsKKysJCU5PTkUsCisrCQlQ RVJfV0lORE9XLAorKwkJQlVJTFRJTiwKKysJCUlTX1JFVkVSU0VELAorKwkJTk9OX01BU0tBQkxF LAorKwkJSUdOT1JFX0FVVE9SRVBFQVQsCisrCQlOT19BVVRPX0dSQUIKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTEFURVJf IiwgdHlwZV9pZCA9ICJtZXRhX2xhdGVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gTGF0ZXJUeXBlIHsKKysJCVJFU0laRSwKKysJCUNBTENfU0hPV0lORywKKysJCUNIRUNLX0ZV TExTQ1JFRU4sCisrCQlTWU5DX1NUQUNLLAorKwkJQkVGT1JFX1JFRFJBVywKKysJCUlETEUKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfTE9DQUxFX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfbG9jYWxlX2RpcmVjdGlv bl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBMb2NhbGVEaXJlY3Rpb24geworKwkJTFRS LAorKwkJUlRMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgY3ByZWZpeCA9ICJNRVRBX01BWElNSVpFXyIsIHR5cGVfaWQgPSAibWV0YV9tYXhpbWl6ZV9m bGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIE1heGltaXplRmxh Z3MgeworKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMLAorKwkJQk9USAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT0RB TF8iLCB0eXBlX2lkID0gIm1ldGFfbW9kYWxfb3B0aW9uc19nZXRfdHlwZSAoKSIpXQorKwlbRmxh Z3NdCisrCXB1YmxpYyBlbnVtIE1vZGFsT3B0aW9ucyB7CisrCQlQT0lOVEVSX0FMUkVBRFlfR1JB QkJFRCwKKysJCUtFWUJPQVJEX0FMUkVBRFlfR1JBQkJFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT05JVE9SX1NXSVRD SF9DT05GSUdfIiwgdHlwZV9pZCA9ICJtZXRhX21vbml0b3Jfc3dpdGNoX2NvbmZpZ190eXBlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIE1vbml0b3JTd2l0Y2hDb25maWdUeXBlIHsKKysJ CUFMTF9NSVJST1IsCisrCQlBTExfTElORUFSLAorKwkJRVhURVJOQUwsCisrCQlCVUlMVElOLAor KwkJVU5LTk9XTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9NT1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX21vdGlvbl9kaXJl Y3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTW90aW9uRGlyZWN0aW9uIHsKKysJ CVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQX0xFRlQsCisrCQlVUF9S SUdIVCwKKysJCURPV05fTEVGVCwKKysJCURPV05fUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfUEFEX0FDVElPTl8i LCB0eXBlX2lkID0gIm1ldGFfcGFkX2FjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIFBhZEFjdGlvblR5cGUgeworKwkJQlVUVE9OLAorKwkJUklORywKKysJCVNUUklQCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNwcmVmaXgg PSAiTUVUQV9QUkVGXyIsIHR5cGVfaWQgPSAibWV0YV9wcmVmZXJlbmNlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIFByZWZlcmVuY2UgeworKwkJTU9VU0VfQlVUVE9OX01PRFMsCisrCQlG T0NVU19NT0RFLAorKwkJRk9DVVNfTkVXX1dJTkRPV1MsCisrCQlBVFRBQ0hfTU9EQUxfRElBTE9H UywKKysJCVJBSVNFX09OX0NMSUNLLAorKwkJQUNUSU9OX0RPVUJMRV9DTElDS19USVRMRUJBUiwK KysJCUFDVElPTl9NSURETEVfQ0xJQ0tfVElUTEVCQVIsCisrCQlBQ1RJT05fUklHSFRfQ0xJQ0tf VElUTEVCQVIsCisrCQlBVVRPX1JBSVNFLAorKwkJQVVUT19SQUlTRV9ERUxBWSwKKysJCUZPQ1VT X0NIQU5HRV9PTl9QT0lOVEVSX1JFU1QsCisrCQlUSVRMRUJBUl9GT05ULAorKwkJTlVNX1dPUktT UEFDRVMsCisrCQlEWU5BTUlDX1dPUktTUEFDRVMsCisrCQlLRVlCSU5ESU5HUywKKysJCURJU0FC TEVfV09SS0FST1VORFMsCisrCQlCVVRUT05fTEFZT1VULAorKwkJV09SS1NQQUNFX05BTUVTLAor KwkJVklTVUFMX0JFTEwsCisrCQlBVURJQkxFX0JFTEwsCisrCQlWSVNVQUxfQkVMTF9UWVBFLAor KwkJR05PTUVfQUNDRVNTSUJJTElUWSwKKysJCUdOT01FX0FOSU1BVElPTlMsCisrCQlDVVJTT1Jf VEhFTUUsCisrCQlDVVJTT1JfU0laRSwKKysJCVJFU0laRV9XSVRIX1JJR0hUX0JVVFRPTiwKKysJ CUVER0VfVElMSU5HLAorKwkJRk9SQ0VfRlVMTFNDUkVFTiwKKysJCVdPUktTUEFDRVNfT05MWV9P Tl9QUklNQVJZLAorKwkJRFJBR0dBQkxFX0JPUkRFUl9XSURUSCwKKysJCUFVVE9fTUFYSU1JWkUs CisrCQlDRU5URVJfTkVXX1dJTkRPV1MsCisrCQlEUkFHX1RIUkVTSE9MRCwKKysJCUxPQ0FURV9Q T0lOVEVSOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFf IiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIFNlbGVjdGlvblR5cGUgeworKwkJU0VMRUNUSU9OX1BSSU1BUlksCisrCQlTRUxFQ1RJ T05fQ0xJUEJPQVJELAorKwkJU0VMRUNUSU9OX0RORCwKKysJCU5fU0VMRUNUSU9OX1RZUEVTCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9 ICJNRVRBX1NIQURPV19NT0RFXyIsIHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfbW9kZV9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTaGFkb3dNb2RlIHsKKysJCUFVVE8sCisrCQlGT1JDRURf T0ZGLAorKwkJRk9SQ0VEX09OCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NJREVfIiwgdHlwZV9pZCA9ICJtZXRhX3NpZGVf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gU2lkZSB7CisrCQlMRUZULAorKwkJUklHSFQs CisrCQlUT1AsCisrCQlCT1RUT00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfU0laRV9DSEFOR0VfIiwgdHlwZV9pZCA9ICJt ZXRhX3NpemVfY2hhbmdlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNpemVDaGFuZ2Ug eworKwkJTUFYSU1JWkUsCisrCQlVTk1BWElNSVpFLAorKwkJRlVMTFNDUkVFTiwKKysJCVVORlVM TFNDUkVFTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9MQVlFUl8iLCB0eXBlX2lkID0gIm1ldGFfc3RhY2tfbGF5ZXJfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gU3RhY2tMYXllciB7CisrCQlERVNLVE9QLAorKwkJ Qk9UVE9NLAorKwkJTk9STUFMLAorKwkJVE9QLAorKwkJRE9DSywKKysJCU9WRVJSSURFX1JFRElS RUNULAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNwcmVmaXggPSAiTUVUQV9UQUJfTElTVF8iLCB0eXBlX2lkID0gIm1ldGFfdGFiX2xp c3RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gVGFiTGlzdCB7CisrCQlOT1JNQUwsCisr CQlET0NLUywKKysJCUdST1VQLAorKwkJTk9STUFMX0FMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9UQUJfU0hPV18iLCB0 eXBlX2lkID0gIm1ldGFfdGFiX3Nob3dfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBUYWJTaG93VHlwZSB7CisrCQlJQ09OLAorKwkJSU5TVEFOVExZCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1ZJUlRVQUxf IiwgdHlwZV9pZCA9ICJtZXRhX3ZpcnR1YWxfbW9kaWZpZXJfZ2V0X3R5cGUgKCkiKV0KKysJW0Zs YWdzXQorKwlwdWJsaWMgZW51bSBWaXJ0dWFsTW9kaWZpZXIgeworKwkJU0hJRlRfTUFTSywKKysJ CUNPTlRST0xfTUFTSywKKysJCUFMVF9NQVNLLAorKwkJTUVUQV9NQVNLLAorKwkJU1VQRVJfTUFT SywKKysJCUhZUEVSX01BU0ssCisrCQlNT0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0 X01BU0ssCisrCQlNT0Q1X01BU0sKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfV0lORE9XX0NMSUVOVF9UWVBFXyIsIHR5cGVf aWQgPSAibWV0YV93aW5kb3dfY2xpZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gV2luZG93Q2xpZW50VHlwZSB7CisrCQlXQVlMQU5ELAorKwkJWDExCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRP V19NRU5VXyIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfbWVudV90eXBlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIFdpbmRvd01lbnVUeXBlIHsKKysJCVdNLAorKwkJQVBQCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X1dJTkRPV18iLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gV2luZG93VHlwZSB7CisrCQlOT1JNQUwsCisrCQlERVNLVE9QLAorKwkJRE9D SywKKysJCURJQUxPRywKKysJCU1PREFMX0RJQUxPRywKKysJCVRPT0xCQVIsCisrCQlNRU5VLAor KwkJVVRJTElUWSwKKysJCVNQTEFTSFNDUkVFTiwKKysJCURST1BET1dOX01FTlUsCisrCQlQT1BV UF9NRU5VLAorKwkJVE9PTFRJUCwKKysJCU5PVElGSUNBVElPTiwKKysJCUNPTUJPLAorKwkJRE5E LAorKwkJT1ZFUlJJREVfT1RIRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9p ZCBJZGxlTW9uaXRvcldhdGNoRnVuYyAoTWV0YS5JZGxlTW9uaXRvciBtb25pdG9yLCB1aW50IHdh dGNoX2lkKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5z dGFuY2VfcG9zID0gNC45KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgS2V5SGFuZGxlckZ1bmMg KE1ldGEuRGlzcGxheSBkaXNwbGF5LCBNZXRhLldpbmRvdyB3aW5kb3csIFtDQ29kZSAodHlwZSA9 ICJDbHV0dGVyS2V5RXZlbnQqIildIENsdXR0ZXIuS2V5RXZlbnQ/IGV2ZW50LCBNZXRhLktleUJp bmRpbmcgYmluZGluZyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFByZWZzQ2hh bmdlZEZ1bmMgKE1ldGEuUHJlZmVyZW5jZSBwcmVmKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVn YXRlIGJvb2wgV2luZG93Rm9yZWFjaEZ1bmMgKE1ldGEuV2luZG93IHdpbmRvdyk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfQ1VSUkVO VF9USU1FIildCisrCXB1YmxpYyBjb25zdCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0RFRkFVTFRfSUNP Tl9OQU1FIildCisrCXB1YmxpYyBjb25zdCBzdHJpbmcgREVGQVVMVF9JQ09OX05BTUU7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNP Tl9IRUlHSFQiKV0KKysJcHVibGljIGNvbnN0IGludCBJQ09OX0hFSUdIVDsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9JQ09OX1dJRFRI IildCisrCXB1YmxpYyBjb25zdCBpbnQgSUNPTl9XSURUSDsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NQUpPUl9WRVJTSU9OIildCisr CXB1YmxpYyBjb25zdCBpbnQgTUFKT1JfVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSUNST19WRVJTSU9OIildCisrCXB1 YmxpYyBjb25zdCBpbnQgTUlDUk9fVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSU5JX0lDT05fSEVJR0hUIildCisrCXB1 YmxpYyBjb25zdCBpbnQgTUlOSV9JQ09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSU5JX0lDT05fV0lEVEgiKV0KKysJ cHVibGljIGNvbnN0IGludCBNSU5JX0lDT05fV0lEVEg7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOT1JfVkVSU0lPTiIpXQorKwlw dWJsaWMgY29uc3QgaW50IE1JTk9SX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUExVR0lOX0FQSV9WRVJTSU9OIildCisr CXB1YmxpYyBjb25zdCBpbnQgUExVR0lOX0FQSV9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX0JFRk9SRV9S RURSQVciKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9CRUZPUkVfUkVEUkFXOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BS SU9SSVRZX1BSRUZTX05PVElGWSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1BSRUZT X05PVElGWTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25h bWUgPSAiTUVUQV9QUklPUklUWV9SRURSQVciKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklU WV9SRURSQVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNu YW1lID0gIk1FVEFfUFJJT1JJVFlfUkVTSVpFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJ VFlfUkVTSVpFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj bmFtZSA9ICJNRVRBX1ZJUlRVQUxfQ09SRV9LRVlCT0FSRF9JRCIpXQorKwlwdWJsaWMgY29uc3Qg aW50IFZJUlRVQUxfQ09SRV9LRVlCT0FSRF9JRDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9WSVJUVUFMX0NPUkVfUE9JTlRFUl9JRCIp XQorKwlwdWJsaWMgY29uc3QgaW50IFZJUlRVQUxfQ09SRV9QT0lOVEVSX0lEOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29s IGFjdGl2YXRlX3Nlc3Npb24gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgYWRkX2NsdXR0ZXJfZGVidWdfZmxhZ3Mg KENsdXR0ZXIuRGVidWdGbGFnIGRlYnVnX2ZsYWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJh d19mbGFncywgQ2x1dHRlci5QaWNrRGVidWdGbGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGV4 aXQgKE1ldGEuRXhpdENvZGUgY29kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHN0cmluZyBnX3V0Zjhfc3RybmR1cCAoc3Ry aW5nIHNyYywgc2l6ZV90IG4pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIEdMaWIuT3B0aW9uQ29udGV4dCBnZXRf b3B0aW9uX2NvbnRleHQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X3JlcGxhY2VfY3VycmVudF93bSAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBz dGF0aWMgdm9pZCBpbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3Jlc3RhcnQgKCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQg cXVpdCAoTWV0YS5FeGl0Q29kZSBjb2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZWdpc3Rlcl93aXRoX3Nlc3Np b24gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgcmVtb3ZlX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVi dWdGbGFnIGRlYnVnX2ZsYWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1 dHRlci5QaWNrRGVidWdGbGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHJlc3RhcnQgKHN0cmlu Zz8gbWVzc2FnZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIp XQorKwlwdWJsaWMgc3RhdGljIGludCBydW4gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2dub21lX3dtX2tl eWJpbmRpbmdzIChzdHJpbmcgd21fa2V5YmluZGluZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF93bV9uYW1l IChzdHJpbmcgd21fbmFtZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgdGVzdF9pbml0ICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIHgx MV9pbml0X2dka19kaXNwbGF5ICgpIHRocm93cyBHTGliLkVycm9yOworK30KK2RpZmYgLS1naXQg YS92YXBpL211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1jbHV0dGVy LTYtY3VzdG9tLnZhbGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uODky MjRiZTYKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20u dmFsYQorQEAgLTAsMCArMSwxNDcgQEAKKytuYW1lc3BhY2UgQ2x1dHRlciB7CisrCisrICBwdWJs aWMgc3RydWN0IE1hdHJpeCA6IENvZ2wuTWF0cml4IHsKKysgIH0KKysKKysgIHB1YmxpYyBjbGFz cyBCYWNrZW5kIDogR0xpYi5PYmplY3QgeworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMg dmlydHVhbCB2b2lkIGFkZF9vcHRpb25zIChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgYm9vbCBjcmVhdGVfY29udGV4dCAoKSB0 aHJvd3MgR0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwg dW5vd25lZCBDbHV0dGVyLlN0YWdlV2luZG93IGNyZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3 cmFwcGVyKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGlj IHZpcnR1YWwgdm9pZCBlbnN1cmVfY29udGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrICAg IFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuRmVhdHVyZUZsYWdzIGdl dF9mZWF0dXJlcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9p ZCBpbml0X2V2ZW50cyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwg dm9pZCBpbml0X2ZlYXR1cmVzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmly dHVhbCBib29sIHBvc3RfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBw ZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVy cm9yOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIHJlZHJhdyAo Q2x1dHRlci5TdGFnZSBzdGFnZSk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBl ICgpIildCisrICBwdWJsaWMgY2xhc3MgQm94IDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1Ymxp YyBDbHV0dGVyLkxheW91dE1hbmFnZXIgbGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKyAg fQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9DT0xPUiIsIGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBzdHJ1Y3QgQ29sb3Ig eworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysgICAg cHVibGljIENvbG9yLmZyb21faGxzIChmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQg c2F0dXJhdGlvbik7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3Bp eGVsIildCisrICAgIHB1YmxpYyBDb2xvci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKyAg ICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysgICAgcHVi bGljIENvbG9yLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysgICAgW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBib29sIHBhcnNlX3N0 cmluZyAoc3RyaW5nIHN0cik7CisrICAgIHB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNv bG9yPyBnZXRfc3RhdGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysgIH0KKysKKysg IFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9jb250YWluZXJfZ2V0X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBpbnRlcmZhY2Ug Q29udGFpbmVyIDogR0xpYi5PYmplY3QgeworKyAgICBwdWJsaWMgdm9pZCBhZGQgKHBhcmFtcyBD bHV0dGVyLkFjdG9yW10gYWN0b3JzKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2Nv bnRhaW5lcl9jbGFzc19maW5kX2NoaWxkX3Byb3BlcnR5IildCisrICAgIHB1YmxpYyBjbGFzcyB1 bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0 eV9uYW1lKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19s aXN0X2NoaWxkX3Byb3BlcnRpZXMiKV0KKysgICAgcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5Q YXJhbVNwZWNbXSBsaXN0X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrICB9CisrCisrICBbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0g ImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2V2ZW50X2dldF90eXBlICgpIildCisrICBbQ29tcGFjdF0KKysgIHB1YmxpYyBj bGFzcyBFdmVudCB7CisrICAgIHB1YmxpYyBDbHV0dGVyLkFueUV2ZW50IGFueSB7IFtDQ29kZSAo Y25hbWUgPSAiKENsdXR0ZXJBbnlFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0 ZXIuQnV0dG9uRXZlbnQgYnV0dG9uIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckJ1dHRvbkV2 ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGNyb3Nz aW5nIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gZ2V0OyB9 CisrICAgIHB1YmxpYyBDbHV0dGVyLktleUV2ZW50IGtleSB7IFtDQ29kZSAoY25hbWUgPSAiKENs dXR0ZXJLZXlFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuTW90aW9uRXZl bnQgbW90aW9uIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICopIildIGdl dDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5TY3JvbGxFdmVudCBzY3JvbGwgeyBbQ0NvZGUgKGNu YW1lID0gIihDbHV0dGVyU2Nyb2xsRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0 dGVyLlN0YWdlU3RhdGVFdmVudCBzdGFnZV9zdGF0ZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0 ZXJTdGFnZVN0YXRlRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNo RXZlbnQgdG91Y2ggeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSBn ZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuVG91Y2hwYWRQaW5jaEV2ZW50IHRvdWNocGFkX3Bp bmNoIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSBn ZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3 aXBlIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkU3dpcGVFdmVudCAqKSIpXSBn ZXQ7IH0KKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX2dldF90 eXBlICgpIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVi bGljIGNsYXNzIFN0YWdlIDogQ2x1dHRlci5Hcm91cCB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAi Y2x1dHRlcl9yZWRyYXciKV0KKysgICAgcHVibGljIHZvaWQgcmVkcmF3ICgpOworKyAgfQorKwor KyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBw dWJsaWMgaW50ZXJmYWNlIFN0YWdlV2luZG93IDogR0xpYi5PYmplY3QgeworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgaW50IGdldF9wZW5kaW5nX3N3YXBzICgpOworKyAg ICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGdldF93cmFwcGVyICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qg Ym9vbCBoYXNfcmVkcmF3X2NsaXBzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMg YWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJz dHJhY3QgYm9vbCBpZ25vcmluZ19yZWRyYXdfY2xpcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyBhYnN0cmFjdCBib29sIHJlYWxpemUgKCk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsK KysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1cnNvcl92 aXNpYmxlIChib29sIGN1cnNvcl92aXNpYmxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVi bGljIGFic3RyYWN0IHZvaWQgc2V0X2Z1bGxzY3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7Cisr ICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3Ry aW5nIHRpdGxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQg c2V0X3VzZXJfcmVzaXphYmxlIChib29sIGlzX3Jlc2l6YWJsZSk7CisrICAgIFtOb1dyYXBwZXJd CisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKGJvb2wgZG9fcmFpc2UpOworKyAgICBb Tm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrICB9 CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX2dldF90eXBlICgpIiwg Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNz IFRleHR1cmUgOiBDbHV0dGVyLkFjdG9yIHsKKysgICAgcHVibGljIENvZ2wuTWF0ZXJpYWwgY29n bF9tYXRlcmlhbCB7IGdldDsgc2V0OyB9CisrICAgIHB1YmxpYyBDb2dsLlRleHR1cmUgY29nbF90 ZXh0dXJlIHsgZ2V0OyBzZXQ7IH0KKysgIH0KKysKKysgIFtDb21wYWN0XQorKyAgW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgY2xhc3Mg VGltZW91dFBvb2wgeworKyAgICBbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrICAgIHB1YmxpYyBUaW1lb3V0UG9vbCAoaW50IHByaW9yaXR5KTsKKysgIH0KKysKKysg IFtDQ29kZSAoY3ByZWZpeCA9ICJDTFVUVEVSX0ZFQVRVUkVfIiwgY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgW0ZsYWdzXQorKyAgcHVibGljIGVudW0gRmVhdHVy ZUZsYWdzIHsKKysgICAgVEVYVFVSRV9OUE9UOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfZmVhdHVyZV9hdmFpbGFibGUiKV0KKysgICAgcHVibGljIGJvb2wgaXNfYXZhaWxhYmxlICgp OworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrICAg IHB1YmxpYyBzdGF0aWMgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgQGdldCAoKTsKKysgIH0KKysKKysg IFtDQ29kZSAodHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfVU5JVFMiLCBjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgc3RydWN0IFVuaXRzIHsKKysgICAg W0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fY20iKV0KKysgICAgcHVibGljIFVu aXRzLmZyb21fY20gKGZsb2F0IGNtKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3Vu aXRzX2Zyb21fZW0iKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsKKysg ICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysg ICAgcHVibGljIFVuaXRzLmZyb21fZW1fZm9yX2ZvbnQgKHN0cmluZyBmb250X25hbWUsIGZsb2F0 IGVtKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysg ICAgcHVibGljIFVuaXRzLmZyb21fbW0gKGZsb2F0IG1tKTsKKysgICAgW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX3VuaXRzX2Zyb21fcGl4ZWxzIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3Bp eGVscyAoaW50IHB4KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21f cHQiKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fcHQgKGZsb2F0IHB0KTsKKysgICAgW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBVbml0 cy5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrICB9CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkv bXV0dGVyLWNsdXR0ZXItNi5kZXBzIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKK25ldyBm aWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uN2E3MGQ2ZGYKKy0tLSAvZGV2L251bGwK KysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzCitAQCAtMCwwICsxLDQgQEAKKythdGsK KytjYWlybworK2pzb24tZ2xpYi0xLjAKKyttdXR0ZXItY29nbC02CitkaWZmIC0tZ2l0IGEvdmFw aS9tdXR0ZXItY2x1dHRlci02LnZhcGkgYi92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorbmV3 IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5kNjZmOWFjOAorLS0tIC9kZXYvbnVs bAorKysrIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsODY4NyBAQAor Ky8qIG11dHRlci1jbHV0dGVyLTYudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1v ZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAiQ2x1dHRlciIsIGdpcl9uYW1lc3BhY2Ug PSAiQ2x1dHRlciIsIGdpcl92ZXJzaW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiY2x1 dHRlcl8iKV0KKytuYW1lc3BhY2UgQ2x1dHRlciB7CisrCW5hbWVzcGFjZSBLZXkgeworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8x IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0FsdEN1cnNvciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQDMyNzBfQWx0Q3Vyc29yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BdHRuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9BdHRuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9CYWNr VGFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9CYWNrVGFiOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMzI3MF9DaGFuZ2VTY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0NoYW5n ZVNjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQ29weSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfQ29weTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQ3Vyc29yQmxpbmsiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAzMjcwX0N1cnNvckJsaW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9D dXJzb3JTZWxlY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0N1cnNvclNlbGVjdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzMyNzBfRGVsZXRlV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QDMyNzBfRGVsZXRlV29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRHVwbGljYXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBAMzI3MF9EdXBsaWNhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0Vu dGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FbnRlcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ XzMyNzBfRXJhc2VFT0YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0VyYXNlRU9GOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMzI3MF9FcmFzZUlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9FcmFzZUlucHV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9FeFNlbGVjdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQDMyNzBfRXhTZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0ZpZWxk TWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRmllbGRNYXJrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfMzI3MF9JZGVudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfSWRlbnQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV8zMjcwX0p1bXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0p1 bXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0tleUNsaWNrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMzI3MF9LZXlDbGljazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfTGVmdDIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX0xlZnQyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BBMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEEyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QQTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BB MyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEEzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3 MF9QbGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QbGF5OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMzI3MF9QcmludFNjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUHJpbnRT Y3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1F1aXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEAzMjcwX1F1aXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1JlY29yZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQDMyNzBfUmVjb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SZXNldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUmVzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1JpZ2h0 MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUmlnaHQyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9SdWxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SdWxlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfMzI3MF9TZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfU2V0dXA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV8zMjcwX1Rlc3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Rl c3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA1OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV83IildCisrCQlw dWJsaWMgY29uc3QgdWludCBANzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEA4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QWJyZXZlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQWJyZXZlYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWJl bG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFicmV2ZWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlaG9vayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQWJyZXZlaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZXRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBYnJldmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hf RW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2Nlc3NYX0VuYWJsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FjY2Vzc1hfRmVlZGJhY2tfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB Y2Nlc3NYX0ZlZWRiYWNrX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1m bGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4YWN1dGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB Y2lyY3VtZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhncmF2ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fj aXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhob29rOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QWNpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FkZEZhdm9yaXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBZGRGYXZvcml0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FkaWFlcmVzaXMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZ3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fob29rIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9MIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBbHRfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9SIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBbHRfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FtYWNyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bb2dvbmVrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXBwbGljYXRpb25MZWZ0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcHBsaWNhdGlvbkxlZnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcHBsaWNhdGlvblJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcHBsaWNhdGlvblJp Z2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY18wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY18xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY18yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY18zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY180OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY181OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY182OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY184OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY185OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2FpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FpbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19hbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYWxlZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19hbGVmbWFrc3VyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2FsZWZtYWtzdXJhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2JlaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2JlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19jb21tYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2RhZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RhZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19kYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfZGFtbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYW1t YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYW1tYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2RhbW1hdGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RkYWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19kZGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhcnNp X3llaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhcnNpX3llaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY19mYXRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhdGhh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhdGhhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfZmF0aGF0YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmVoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfZmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2Z1bGxzdG9w IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZnVsbHN0b3A7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfZ2FmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2FmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2doYWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2hh aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19oYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19oYWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19oYW16YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9h Ym92ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphX2Fib3ZlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2hhbXphX2JlbG93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfaGFtemFfYmVsb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbmFsZWYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19oYW16YW9ud2F3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbndh dzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YW9ueWVoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfaGFtemFvbnllaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YXVuZGVy YWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphdW5kZXJhbGVmOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2hlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hl aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oZWhfZG9hY2hhc2htZWUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19oZWhfZG9hY2hhc2htZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf aGVoX2dvYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oZWhfZ29hbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19qZWVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfamVl bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19qZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19qZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FmIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfa2FmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2thc3JhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfa2FzcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FzcmF0 YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rYXNyYXRhbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19rZWhlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2tlaGVoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2toYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19raGFoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2xhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19tYWRkYV9hYm92ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX21hZGRhX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX21hZGRhb25hbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFvbmFs ZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbWVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX21lZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX25vb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbl9naHVubmEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19ub29uX2dodW5uYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19wZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19wZWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfcGVyY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X3BlcmNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcWFmIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfcWFmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3F1ZXN0aW9uX21hcmsiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19xdWVzdGlvbl9tYXJrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcmE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfcnJlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JyZWg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfc2FkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19zZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NlbWljb2xvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3NlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19zaGFkZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGFkZGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfc2hlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGVl bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zdWt1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX3N1a3VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N1cGVyc2NyaXB0X2FsZWYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zdXBlcnNjcmlwdF9hbGVmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N3aXRj aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY190YWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGF0d2VlbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX3RhdHdlZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGNoZWgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190Y2hlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y190ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190ZWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfdGVobWFyYnV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RlaG1h cmJ1dGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGhhbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3RoYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGhlaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX3RoZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdHRlaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3R0ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf dmVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdmVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX3dhdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3dhdzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY195ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY195ZWg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfeWVoX2JhcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfeWVoX2JhcmVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3phaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX3phaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWluIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfemFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyaW5nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FU IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9BVDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX0FZQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQVlCOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fQkVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9C RU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9DSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX0NIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9EQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RaQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRFpBOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX0ZFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9GRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX0dIQVQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X0dIQVQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9HSU0iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX0dJTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hJIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9ISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hPIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9ITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX0lOSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSU5JOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0pFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fS0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX0tFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fS0VOIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9LRU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LSEUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0tIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0xZ VU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0xZVU47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9NRU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX01FTjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9OVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QWVVSIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9QWVVSOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fUkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fUkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X1NFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fU0hBIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9TSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UQ0hFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9UQ0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVE8i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RPOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fVFNBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UU0E7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9UU08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RT TzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RZVU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX1RZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9WRVYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX1ZFVjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZPIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX1ZZVU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1ZZVU47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9ZRUNIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9Z RUNIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fWkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX1pBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fWkhFIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9aSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hY2NlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2FjY2VudDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX2FtYW5hayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYW1hbmFr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYXBvc3Ryb3BoZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fYXBvc3Ryb3BoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9hdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX2F5YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXliOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fYmVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9iZW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9idXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2J1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2NoYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f ZHphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9kemE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9lOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fZXhjbGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9leGNsYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9mZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fZmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9mdWxsX3N0b3AiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2Z1bGxfc3RvcDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX2doYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2doYXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9naW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX2dpbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2hpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9oaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2hvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2h5cGhl biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faHlwaGVuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5faW5pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9pbmk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5famU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fa2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9rZW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2tlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2toZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2hlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fbGlnYXR1cmVfZXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2xpZ2F0 dXJlX2V3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbHl1biIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fbHl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX21lbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f bnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX251OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX3BhcnV5ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f cGFydXlrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3BlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcHl1ciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcHl1cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3F1 ZXN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9xdWVzdGlvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9y YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9yZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9zZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NlcGFyYXRpb25f bWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2VwYXJhdGlvbl9tYXJrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fc2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9zaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zaGVzaHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX3NoZXNodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RjaGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RjaGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl90byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdG87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl90c2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3Rz YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RzbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fdHNvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHl1biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fdHl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Zlcmph a2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl92ZXJqYWtldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX3ZldiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmV2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX3ZvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdnl1biIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fdnl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3llY2giKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3llY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl95ZW50YW1uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5feWVudGFtbmE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl96YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5femE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl96aGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX3poZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F0aWxkZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaWJsZUJlbGxfRW5hYmxlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpYmxlQmVsbF9FbmFibGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BdWRpb0N5Y2xlVHJhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvQ3ljbGVUcmFj azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXVkaW9Gb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9Mb3dlclZvbHVtZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXVkaW9Mb3dlclZvbHVtZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTWVk aWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTWVkaWE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B dWRpb01pY011dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTWljTXV0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0F1ZGlvTXV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXVkaW9OZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb05l eHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1BhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB dWRpb1BhdXNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QbGF5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBdWRpb1BsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1ByZXYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEF1ZGlvUHJldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmFpc2VWb2x1bWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmFpc2VWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B dWRpb1JhbmRvbVBsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmFuZG9tUGxheTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0F1ZGlvUmVjb3JkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRp b1JlY29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmVwZWF0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBdWRpb1JlcGVhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmV3aW5kIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBdWRpb1Jld2luZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvU3RvcCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9TdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXdheSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXdheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEJhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhY2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrRm9yd2FyZCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQmFja0ZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrU3BhY2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEJhY2tTcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhdHRlcnkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEJhdHRlcnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CZWdpbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQmVnaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CbHVlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBCbHVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmx1ZXRvb3RoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBCbHVldG9vdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Cb29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBCb29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQm91bmNlS2V5c19FbmFibGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJvdW5jZUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQnJlYWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJyZWFrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QnJpZ2h0bmVzc0FkanVzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnJpZ2h0bmVzc0FkanVz dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0J5ZWxvcnVzc2lhbl9TSE9SVFUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEJ5ZWxvcnVzc2lhbl9TSE9SVFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5f c2hvcnR1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCeWVsb3J1c3NpYW5fc2hvcnR1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0NEIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NIIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NfSCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ19IOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ19oIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDX2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IENhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2FsY3VsYXRvciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ2FsY3VsYXRvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbGVuZGFyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDYWxlbmRhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbmNlbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ2FuY2VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Fwc19Mb2NrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDYXBzX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2Fyb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IENjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjZWRpbGxhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjaXJjdW1mbGV4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0No IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDbGVhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyR3JhYiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ2xlYXJHcmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2xvc2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IENsb3NlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29kZWlucHV0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBDb2RlaW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db2xvblNp Z24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbG9uU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Nv bW11bml0eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29tbXVuaXR5OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ29udHJhc3RBZGp1c3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyYXN0QWRqdXN0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJvbF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250 cm9sX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db250cm9sX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IENvbnRyb2xfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvcHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IENvcHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DcnV6ZWlyb1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IENydXplaXJvU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N1dCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ljbGVBbmdsZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3ljbGVBbmdsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0EiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19CRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19DSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0NIRV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0NIRV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEVfdmVydHN0cm9r ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQ0hFX3ZlcnRzdHJva2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19ERSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf REU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19EWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19EWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VGIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X0VMIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX0VNIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX0VOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19F TjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VOX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfRU5fZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf RVIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VSOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfRVMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VTOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfR0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19H SEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19HSEVfYmFyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19HSEVfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf SEFSRFNJR04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0hBUkRTSUdOOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEFfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19IQV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf SUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfSU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lPOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfSV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0lfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSkUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0EiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0tBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf S0FfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQV9kZXNjZW5k ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19LQV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19LQV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfTEpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19MSkU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19OSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX05KRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19PX2JhciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfT19iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19QRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19T Q0hXQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0NIV0E7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19TSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NIQ0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19TSENIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NISEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX1NISEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSE9S VEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIT1JUSTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX1NPRlRTSUdOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19T T0ZUU0lHTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1RFIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19URTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1RTRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVFNFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1VfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VX21hY3JvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1Vfc3RyYWlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1Vfc3RyYWlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFp Z2h0X2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodF9iYXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19WRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfVkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ZQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfWUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ZRVJVIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19ZRVJVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf WVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1lVOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfWkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19a SEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19aSEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19aSEVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX2JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19iZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX2NoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf Y2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfY2hlX2Rlc2NlbmRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfY2hlX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2NoZV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVf dmVydHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2RlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2R6aGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2R6aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2Vs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2VtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX2VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW5fZGVzY2VuZGVy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lbl9kZXNjZW5kZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19naGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX2doZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2doZV9iYXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2doZV9iYXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19oYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19oYV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2hhX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2hhcmRzaWduIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19oYXJkc2lnbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2k7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19pX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfaV9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfaWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pbyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19q ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfamU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19rYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2E7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19rYV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2thX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2thX3ZlcnRzdHJv a2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thX3ZlcnRzdHJva2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19samUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2xqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfbmplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX29fYmFyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19vX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3BlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19wZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX3NjaHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19z Y2h3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hjaGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NoY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf c2hoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hoYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX3Nob3J0aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hv cnRpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc29mdHNpZ24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX3NvZnRzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3RlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfdHNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY190c2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY191IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX3VfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdV9zdHJhaWdodDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX3Vfc3RyYWlnaHRfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y191X3N0cmFpZ2h0X2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3ZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY192ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3lhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY195YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX3llcnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3llcnU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY195dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeXU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY196ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfemU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY196aGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX3poZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3poZV9kZXNjZW5k ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3poZV9kZXNjZW5kZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9EIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RE9TIildCisrCQlwdWJsaWMgY29uc3QgdWludCBET1M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EYWJvdmVk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Rj YXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGVs ZXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEZWxldGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EaXNw bGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBEaXNwbGF5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG9j dW1lbnRzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEb2N1bWVudHM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Eb25nU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRG9uZ1NpZ247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEb3duOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRHN0cm9rZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FTkciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVORzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VUSCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRVRIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRVpIIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBFWkg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEVhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWJlbG93ZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBFYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2Fyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEVjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBFY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4YWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9FY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3Vt ZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1m bGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1 bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjdVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEVjdVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBFZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWdyYXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FaG9vayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FaXN1X1NoaWZ0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFaXN1X1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWlzdV90b2dnbGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVpc3VfdG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWplY3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEVqZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW1hY3JvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VuZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW9nb25layIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VzY2FwZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRXNjYXBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXRoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FdGlsZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V1cm9TaWduIildCisrCQlwdWJsaWMgY29u c3QgdWludCBFdXJvU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V4Y2VsIildCisrCQlwdWJsaWMgY29u c3QgdWludCBFeGNlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V4ZWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEV4ZWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FeHBsb3JlciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRXhwbG9yZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMTEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YxMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYxNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjE1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YxOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjE5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYyMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjIxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYyMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjI1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyNjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YyNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYyOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjMwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GMzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YzMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBGNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0Y3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0Y4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZGcmFuY1NpZ24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZGcmFuY1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYWJv dmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0ZhcnNpXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzA7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GYXJzaV8xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8xOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRmFyc2lfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0ZhcnNpXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GYXJzaV80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV80OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRmFyc2lfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0ZhcnNpXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GYXJzaV83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV83OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRmFyc2lfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0ZhcnNpXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GYXJzaV95ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpX3llaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0Zhdm9yaXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmF2b3Jp dGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRmluYW5jZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmlu YW5jZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0ZpbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpbmQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9GaXJzdF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRmlyc3RfVmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Gb3J3YXJkIildCisr CQlwdWJsaWMgY29uc3QgdWludCBGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRnJhbWVCYWNrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBGcmFtZUJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GcmFtZUZv cndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZyYW1lRm9yd2FyZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYWJvdmVk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dh bWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdhbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYnJldmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NpcmN1 bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5fYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2FuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR2VvcmdpYW5fYmFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lh bl9iYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdlb3JnaWFuX2NhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2NoYXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2NoYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9j aGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaGluOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5fY2lsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaWw7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9kb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX2RvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2VuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2ZpIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHZW9yZ2lhbl9maTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2dhbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZ2FuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5fZ2hhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZ2hhbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2hhZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f aGFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl9oYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5faGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oaWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hpZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faG9lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5faW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2luOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5famhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vv cmdpYW5famhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2ppbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5famlsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fa2FuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lh bl9raGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9raGFyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5fbGFzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9sYXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9tYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX21hbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX25hciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fbmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f cGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9wYXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl9waGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9waGFyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9y Z2lhbl9xYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9yYWUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdlb3JnaWFuX3JhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3NhbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fc2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f c2hpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fc2hpbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX3RhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdGFuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9y Z2lhbl90YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl91biIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5fdW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl92aW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3ZpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3dl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl93ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dl b3JnaWFuX3hhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5feGFuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5femVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96 ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl96aGFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl96aGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR28iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQUxQSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX0FMUEhBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQUxQSEFhY2NlbnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0FMUEhBYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfQkVUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQkVUQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0NISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQ0hJOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfREVMVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0RFTFRB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfRVBTSUxPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfRVBTSUxPTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VQU0lMT05hY2NlbnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VQU0lMT05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19FVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VUQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0VUQWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVRBYWNj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfR0FNTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX0dBTU1BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfSU9UQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFhY2NlbnQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0lPVEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19JT1RBZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBZGlh ZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQWRpZXJlc2lzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19JT1RBZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19LQVBQ QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfS0FQUEE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19MQU1CREEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0xBTUJEQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX0xBTURBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1E QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX01VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19NVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19OVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NRUdBIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19PTUVHQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NRUdBYWNjZW50IildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUVHQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX09NSUNST04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NSUNST047CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19PTUlDUk9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19PTUlDUk9OYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUEhJIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19QSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QSSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QU0kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1BTSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1JI TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUkhPOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfU0lHTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1NJR01BOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfVEFVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19UQVU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19USEVUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEhF VEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19VUFNJTE9OIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19VUFNJTE9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTmFjY2VudCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX1VQU0lMT05kaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBT SUxPTmRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfWEkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX1hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfWkVUQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfWkVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2FjY2VudGRpZXJl c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hY2NlbnRkaWVyZXNpczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX2FscGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBo YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2FscGhhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19hbHBoYWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2JldGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2JldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19jaGki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2NoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2RlbHRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19kZWx0YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX2Vwc2lsb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2Vwc2lsb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19lcHNpbG9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19lcHNpbG9uYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXRhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19ldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ldGFh Y2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2V0YWFjY2VudDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX2ZpbmFsc21hbGxzaWdtYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfZmluYWxzbWFsbHNpZ21hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZ2FtbWEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX2dhbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaG9yaXpi YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2hvcml6YmFyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfaW90YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX2lvdGFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X2lvdGFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhYWNjZW50ZGllcmVzaXMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFhY2NlbnRkaWVyZXNpczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX2lvdGFkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf aW90YWRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfa2FwcGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX2thcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbGFtYmRhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19sYW1iZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19s YW1kYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbGFtZGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19tdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbXU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19udSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbnU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19vbWVnYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWVnYWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfb21lZ2FhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWljcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19vbWljcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf b21pY3JvbmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbmFjY2Vu dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3BoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfcGhpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX3BpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcHNpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19wc2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19yaG8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX3JobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3NpZ21hIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19zaWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3N3aXRj aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfc3dpdGNoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfdGF1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla190YXU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla190aGV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGhldGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla191cHNpbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a191cHNpbG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmFjY2VudCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X3Vwc2lsb25hY2NlbnRkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBz aWxvbmFjY2VudGRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmRpZXJlc2lz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uZGllcmVzaXM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla194aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfeGk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla196ZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla196ZXRh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0FFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQUU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfQXJhZUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9B cmFlQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BcmFlQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9BcmFlQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQmFuamEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9CYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9DaWV1 YyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0NpZXVjOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0NvZGVpbnB1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0NvZGVpbnB1 dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9EaWtldWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRU8iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9FTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FVSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0VVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VuZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9IYW5qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0hhbmphOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0hpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSGlldWg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0NpZXVjIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSl9DaWV1YzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0Rp a2V1ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfRGlrZXVkOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0pfSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0hp ZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX0lldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSmlldWoiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X0pfS2hpZXVxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaGlldXE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfSl9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX0tpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0tpeWVvZ1Npb3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9La29namlEYWxyaW5JZXVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pf S2tvZ2ppRGFscmluSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9NaWV1bSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9OaWV1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9OaWV1bkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9OaWV1bkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5KaWV1aiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9KX1BhblNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BhblNp b3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX1BoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KX1BpZXViU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWJTaW9z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9KX1JpZXVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxIaWV1aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxIaWV1aDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9KX1JpZXVsS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9S aWV1bEtpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsTWlldW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9SaWV1bFBoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQ aGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bFBpZXViIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pf UmlldWxTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFNpb3M7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfSl9SaWV1bFRpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU2lvcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KX1NzYW5nS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ0tp eWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0pfU3NhbmdTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfVGll dXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1RpZXV0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0pfWWVvcmluSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9K X1llb3JpbkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0phbW8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9KYW1vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0plb25qYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0plb25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0ppZXVqOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0toaWV1cSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0toaWV1 cTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9LaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2l5ZW9nU2lvcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfS2tvZ2ppRGFscmluSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9La29n amlEYWxyaW5JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9NaWV1bSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX01pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX011bHRpcGxl Q2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTXVsdGlwbGVDYW5kaWRh dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9OaWV1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1bkhpZXVoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfTmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9OaWV1bkppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTmlldW5KaWV1ajsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf TzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9PRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX09FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BhblNpb3MiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9QYW5TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BoaWV1ZiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9QaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX1BpZXViU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1Bp ZXViU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Qb3N0SGFuamEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9Qb3N0SGFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUHJlSGFu amEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QcmVIYW5qYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9QcmV2aW91c0NhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1ByZXZpb3VzQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf UmlldWxIaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsSGlldWg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9SaWV1bEtpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bE1pZXVtIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxNaWV1bTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9SaWV1bFBoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVs UGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsUGlldWIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9SaWV1bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVs U2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsU2lvczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9SaWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf UmlldWxUaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFllb3JpbkhpZXVoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9Sb21hamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Sb21hamE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfU2luZ2xlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Np b3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TaW9zOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1NwZWNpYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TcGVjaWFsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5nRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfU3NhbmdEaWtldWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdKaWV1aiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nSmlldWo7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfU3NhbmdLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2Fu Z0tpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ1BpZXViIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfU3NhbmdQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2Fu Z1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ1Npb3M7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfU3RhcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdGFy dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1NaWV1bSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bU1pZXVtOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX1N1bmt5ZW9uZ2V1bVBoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1 bmt5ZW9uZ2V1bVBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1QaWV1 YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBpZXViOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX1RpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf VGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9XQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XQUUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9XQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XRU8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf V0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XSTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9ZQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1lBRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9ZRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lFTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X1lFTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lPIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfWU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWVUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9ZVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZZW9yaW5IaWV1aCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1llb3JpbkhpZXVoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX3N3aXRjaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmtha3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmtha3U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGNp cmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IZWJyZXdfc3dpdGNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIZWJyZXdfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVscCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGVscDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlbmthbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGVua2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVua2FuX01vZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhlbmthbl9Nb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGliZXJuYXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIaWJlcm5hdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGlyYWdhbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2Fu YV9LYXRha2FuYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGlyYWdhbmFfS2F0YWthbmE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IaXN0b3J5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXN0b3J5Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hvbWVQYWdlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb21lUGFnZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hvdExpbmtzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb3RMaW5rczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhzdHJva2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IeXBlcl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIeXBlcl9M OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSHlwZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHlwZXJf UjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fQ2VudGVyX09iamVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Nl bnRlcl9PYmplY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fQ29udGludW91c19VbmRlcmxpbmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Db250aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0lTT19EaXNjb250aW51b3VzX1VuZGVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX0Rpc2NvbnRpbnVvdXNfVW5kZXJsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0VtcGhh c2l6ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0VtcGhhc2l6ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0lTT19FbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0VudGVyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19GYXN0X0N1cnNvcl9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX0xlZnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9MZWZ0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX0Zhc3RfQ3Vyc29yX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09f RmFzdF9DdXJzb3JfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9VcDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0lTT19GaXJzdF9Hcm91cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3Vw OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0ZpcnN0X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19GaXJzdF9Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX0xh dGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fR3JvdXBfTGF0Y2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xv Y2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fR3JvdXBfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElTT19Hcm91cF9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJU09fTGFzdF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19M YXN0X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dyb3VwX0xv Y2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGVmdF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19MZWZ0X1RhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDJfTGF0Y2giKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDJfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2 ZWwzX0xhdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwzX0xhdGNoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX0xldmVsM19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09f TGV2ZWwzX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX1NoaWZ0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fTGV2ZWwzX1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVs NV9MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9MYXRjaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lTT19MZXZlbDVfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xl dmVsNV9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9TaGlmdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX0xldmVsNV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Mb2NrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3Zl X0xpbmVfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9Eb3duOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX01vdmVfTGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SVNPX01vdmVfTGluZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3VwIildCisrCQlw dWJsaWMgY29uc3QgdWludCBJU09fTmV4dF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0 X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19OZXh0X0dyb3VwX0xvY2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JU09fUGFydGlhbF9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19QYXJ0aWFsX0xpbmVfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFs X0xpbmVfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX0xpbmVfVXA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fUGFydGlhbF9TcGFjZV9MZWZ0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fUGFydGlhbF9TcGFjZV9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxf U3BhY2VfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX1Jp Z2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1ByZXZfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElTT19QcmV2X0dyb3VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1ByZXZfR3JvdXBfTG9jayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1ByZXZfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0lTT19SZWxlYXNlX0JvdGhfTWFyZ2lucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNP X1JlbGVhc2VfQm90aF9NYXJnaW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfTWFyZ2lu X0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9MZWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fUmVsZWFzZV9NYXJnaW5fUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0 X01hcmdpbl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fU2V0X01hcmdpbl9MZWZ0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1NldF9NYXJnaW5fUmlnaHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19TZXRfTWFyZ2luX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWFib3ZlZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBJYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0liZWxvd2Rv dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWJy ZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JY2ly Y3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJZGlhZXJlc2lzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJZ3JhdmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWhvb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJbWFjcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSW5zZXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJbnNlcnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Jb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJb2dvbmVrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJdGlsZGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9KIildCisrCQlwdWJsaWMgY29uc3QgdWludCBKOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSmNp cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEpjaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzAi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8xIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS1BfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEtQXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF80IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S1BfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF83OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS1BfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9LUF9BZGQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0FkZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX0JlZ2luIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9CZWdpbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0tQX0RlY2ltYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlY2ltYWw7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LUF9EZWxldGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlbGV0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX0RpdmlkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRGl2 aWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf RG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf RW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X0VudGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX0VxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX0YxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X0YyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Yz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfRjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Y0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfSG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSG9tZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX0luc2VydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSW5z ZXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf TGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX011bHRpcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9NdWx0aXBseTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX05leHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEtQX05leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QYWdlX0Rvd24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtQX1BhZ2VfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1BhZ2VfVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1BhZ2VfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9Qcmlv ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9S aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9L UF9TZXBhcmF0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1NlcGFyYXRvcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tQX1NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TcGFjZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0tQX1N1YnRyYWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TdWJ0 cmFjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf VGFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1Vw OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS2FuYV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5h X0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5hX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLYW5hX1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuamkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEthbmppOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuamlfQmFuZ291IildCisrCQlwdWJsaWMgY29u c3QgdWludCBLYW5qaV9CYW5nb3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYXRha2FuYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS2F0YWthbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRuZXNzRG93 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2JkQnJpZ2h0bmVzc0Rvd247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9LYmRCcmlnaHRuZXNzVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdodG5l c3NVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tiZExpZ2h0T25PZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtiZExpZ2h0T25PZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LY2VkaWxsYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Lb3JlYW5fV29uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBLb3JlYW5fV29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wxIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDEw OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTDMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TDQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEw1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEw2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEw3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTDkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw5OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9MYXN0X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXN0X1ZpcnR1 YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTGF1bmNoMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IExhdW5jaDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMYXVuY2gyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTGF1bmNoMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IExhdW5jaDQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBMYXVuY2g1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGF1bmNoNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IExhdW5jaDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMYXVuY2g4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoOSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTGF1bmNoOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IExhdW5jaEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hCIildCisrCQlwdWJs aWMgY29uc3QgdWludCBMYXVuY2hCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTGF1bmNoQzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IExhdW5jaEQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBMYXVuY2hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTGF1bmNoRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xiZWxvd2RvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNhcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBMY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MY2VkaWxsYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MZWZ0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBMZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGlnaHRCdWxiIild CisrCQlwdWJsaWMgY29uc3QgdWludCBMaWdodEJ1bGI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaW5lZmVl ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGluZWZlZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaXJh U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9M b2dHcmFiSW5mbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTG9nR3JhYkluZm87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Mb2dPZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ09mZjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xvZ1dpbmRvd1RyZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ1dpbmRvd1Ry ZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Mc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMc3Ry b2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01hYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFib3ZlZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX0RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFj ZWRvbmlhX0RTRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9HSkUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1hY2Vkb25pYV9HSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfS0pFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfS0pFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFj ZWRvbmlhX2RzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX2RzZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01hY2Vkb25pYV9namUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25p YV9namU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfa2plIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBNYWNlZG9uaWFfa2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFlX0tvaG8iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE1hZV9Lb2hvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFpbCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTWFpbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01haWxGb3J3YXJkIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNYWlsRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hcmtldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTWFya2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFzc3lvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNYXNzeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZWV0aW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNZWV0aW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVtbyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTWVtbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbnUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1lbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51S0IiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE1lbnVLQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbnVQQiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTWVudVBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVzc2VuZ2VyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBNZXNzZW5nZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZXRhX0wiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1ldGFfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01ldGFfUiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTWV0YV9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWlsbFNpZ24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1pbGxTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9kZUxvY2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE1vZGVMb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9kZV9zd2l0Y2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE1vZGVfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9uQnJpZ2h0 bmVzc0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vbkJyaWdodG5lc3NEb3duOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTW9uQnJpZ2h0bmVzc1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb25C cmlnaHRuZXNzVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb3VzZUtleXNfQWNjZWxfRW5hYmxlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBNb3VzZUtleXNfQWNjZWxfRW5hYmxlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTW91c2VLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0Vu YWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX011aGVua2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN dWhlbmthbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX011bHRpX2tleSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTXVsdGlfa2V5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVsdGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE11bHRpcGxlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVzaWMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE11c2ljOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXlDb21wdXRl ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXlDb21wdXRlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015 U2l0ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE15U2l0ZXM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9O IildCisrCQlwdWJsaWMgY29uc3QgdWludCBOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBOYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OYWlyYVNpZ24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE5haXJhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05jYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmNlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBOZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXdTaGVxZWxTaWdu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXdTaGVxZWxTaWduOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TmV3cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3czsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05leHQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXh0X1ZNb2Rl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXh0X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4 dF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dF9WaXJ0dWFsX1Nj cmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX050aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTnRp bGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTnVtX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE51 bV9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX09FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX09hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2FjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT2JhcnJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2JhcnJlZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX09iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2JlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2Fyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBPY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhiZWxvd2RvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX09jaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4 Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE9jaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4dGlsZGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZGlhZXJlc2lzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZG91YmxlYWN1 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9PZmZpY2VIb21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBP ZmZpY2VIb21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBPZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg T2hvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hv cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBP aG9ybmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgT2hvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE9ob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmhvb2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3Ju dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPbWFjcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT29ibGlxdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9vYmxpcXVlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT3BlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3BlbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X09wZW5VUkwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9wZW5VUkw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PcHRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9wdGlvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X09zbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3NsYXNoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf T3RpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9P dmVybGF5MV9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE92ZXJsYXkxX0VuYWJsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX092ZXJsYXkyX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg T3ZlcmxheTJfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1BhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFnZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQYWdlX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWdlX1VwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQYWdlX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFzdGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFBhc3RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGF1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBhdXNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGVzZXRhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUGVzZXRhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bob25lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQaG9uZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BpY3R1cmVzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQaWN0dXJlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQWNjZWxlcmF0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9BY2NlbGVyYXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UG9pbnRlcl9CdXR0b24xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFBvaW50ZXJfQnV0dG9uMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b24zOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9CdXR0b240IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfQnV0dG9uNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uX0RmbHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0RibENsaWNrMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUG9pbnRlcl9EYmxDbGljazI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0RibENsaWNrNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxD bGljazQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENs aWNrX0RmbHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2tfRGZsdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGZsdEJ0bk5leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfRGZsdEJ0bk5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5Q cmV2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RmbHRCdG5QcmV2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG9pbnRlcl9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rv d247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Rvd25MZWZ0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX0Rvd25MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duUmlnaHQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRG93blJpZ2h0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9EcmFnMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBv aW50ZXJfRHJhZzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWczIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQb2ludGVyX0RyYWczOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnNCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnNDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv aW50ZXJfRHJhZzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Qb2ludGVyX0RyYWdfRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9EcmFnX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0VuYWJsZUtleXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRW5hYmxlS2V5czsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv aW50ZXJfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9MZWZ0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG9pbnRlcl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9S aWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFBvaW50ZXJfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwTGVmdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUG9pbnRlcl9VcExlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwUmln aHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXBSaWdodDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1Bvd2VyRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG93ZXJEb3duOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG93ZXJPZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvd2VyT2ZmOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUHJldl9WTW9kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldl9WTW9k ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1ByZXZfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFByZXZfVmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2aW91c0NhbmRp ZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9QcmludCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJpbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9QcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJpb3I7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9RIildCisrCQlwdWJsaWMgY29uc3QgdWludCBROworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxIildCisrCQlwdWJsaWMgY29u c3QgdWludCBSMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UjEwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUjExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1IxMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UjE0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFIxNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBSMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBSMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1I1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1I2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBSODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBSOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUmNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1JlZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZG87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9SZWZyZXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWZyZXNo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUmVsb2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWxvYWQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9SZXBlYXRLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUmVwZWF0S2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZXBseSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUmVwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZXR1cm4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJldHVybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JpZ2h0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBSaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvY2tlckRvd24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJvY2tlckRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJFbnRlciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUm9ja2VyRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJVcCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9ja2VyVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb21hamki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvbWFqaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvdGF0ZVdp bmRvd3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvdGF0ZVdpbmRvd3M7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Sb3RhdGlvbktCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb3RhdGlvbktCOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUm90YXRpb25QQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25Q QjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1J1cGVlU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUnVw ZWVTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NDSFdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTQ0hXQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Fib3ZlZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYWN1dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYXZlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY2Fyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NlZGlsbGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TY3JlZW5TYXZlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2NyZWVuU2F2ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxDbGljayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2Nyb2xsQ2xpY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxEb3duIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTY3JvbGxEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9sbFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsX0xv Y2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9sbF9Mb2NrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2VhcmNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZWFyY2g7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T ZWxlY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nl bGVjdEJ1dHRvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VsZWN0QnV0dG9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VuZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NlcmJpYW5fREpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RKRTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NlcmJpYW5fRFpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFu X0RaRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNlcmJpYW5fSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0xKRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2VyYmlhbl9MSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX05KRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9OSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX1RT SEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fVFNIRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NlcmJpYW5fZGplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2RqZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NlcmJpYW5fZHplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2R6 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNl cmJpYW5famU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2xqZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2VyYmlhbl9samU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX25qZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2VyYmlhbl9uamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX3RzaGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fdHNoZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1No aWZ0X0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNoaWZ0X0w7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aGlmdF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaGlmdF9Mb2NrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2hpZnRfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfUjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1Nob3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNob3A7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5nbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmdsZUNhbmRpZGF0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9h OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9h YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2FhMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9hZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9hZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlZTIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfYWVlMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FpMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9haTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hdSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9hdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYXUyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2F1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYmEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2JoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9iaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2NhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2NhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9jaGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9k ZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGRhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9kZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RkaGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2RoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kaGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2RoaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGhoYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9lMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lMjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZWU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2VlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lZTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2ZhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9nYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9nYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfZ2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2do YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf aDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2kyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2kyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9paSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9paTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaWkyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2lpMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2poYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9qaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2pueWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfam55YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfa2EiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfa2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2toYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9raGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2t1bmRkYWxpeWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfa3VuZGRhbGl5YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2xsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sbGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2x1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9sdTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHUyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9sdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHV1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9sdXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX21hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX21hOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9tYmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbWJh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9u YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9uZGRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX25kaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25nIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX25nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZzIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfbmcyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZ2EiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfbmdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uamEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ubmEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfbm5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ueWEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbnlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX28yIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX28yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vbyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfb28yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX29vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3Bo YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9waGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3JhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9yaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9yaTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfcmlpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3JpaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfcnUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3J1MjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfcnV1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ydXUyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9zYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1Npbmhfc2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3NoYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Npbmhfc3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zc2hh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf dGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90aGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX3RoaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3R0YSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF90dGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3R0aGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfdHRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91MiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF91MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdXUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfdXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3V1MiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF91dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3ZhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX3ZhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF95YSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NsZWVwIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTbGVlcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nsb3dLZXlzX0VuYWJsZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2xvd0tleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3Bl bGwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNwZWxsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BsaXRT Y3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNwbGl0U2NyZWVuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3RhbmRieSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3RhbmRieTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1N0YXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdGFydDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1N0aWNreUtleXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdGlja3lLZXlzX0Vu YWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1N0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0b3A7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TdWJ0aXRsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VidGl0 bGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBlcl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXBl cl9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VwZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3Vw ZXJfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1N1cHBvcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1 cHBvcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXNwZW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT dXNwZW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFN3aXRjaF9WVF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEwIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3 aXRjaF9WVF8xMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3dpdGNoX1ZUXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3 aXRjaF9WVF8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFN3aXRjaF9WVF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF82OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dp dGNoX1ZUXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF83OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU3dpdGNoX1ZUXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF84Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRj aF9WVF85OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3lzX1JlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3lzX1JlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9USE9STiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVEhPUk47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhYjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGFib3ZlZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGFza1BhbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhc2tQYW5lOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUY2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGNlZGlsbGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UZXJtaW5hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGVybWluYWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UZXJtaW5hdGVfU2VydmVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUZXJtaW5hdGVfU2VydmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9iYWh0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX2JhaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2JvYmFpbWFpIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2JvYmFpbWFpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9jaG9jaGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX2Nob2NoYW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2No YW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9jaG9jaGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hvZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9kb2NoYWRh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2RvY2hhZGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX2RvZGVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2RvZGVrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9mb2ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2ZvZmFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmFu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ob2hpcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9ob2hpcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfaG9ub2todWsiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfaG9ub2todWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2toYWkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2hhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hv a2hvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raG9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9raG9raHVhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raHVhdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2h3YWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfa2hva2h3YWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob3Jha2hhbmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfa2hvcmFraGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa29rYWki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa29rYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X2xha2toYW5neWFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xha2toYW5neWFvOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtjaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X2xla2NoZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2hhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX2xla2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtob2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbGVraG9rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtrYW8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVra2FvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9s ZWtudW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla251bmc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX2xla3BhZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrcGFldDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc2FtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X2xla3NhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc2kiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfbGVrc2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NvbmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbGVrc29uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc3VuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3N1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf bG9jaHVsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sb2NodWxhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9sb2xpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9saW5nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9sdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sdTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpY2hhdHRhd2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfbWFpY2hhdHRhd2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWVrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX21haWVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWloYW5ha2F0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWhhbmFrYXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX21haWhhbmFrYXRfbWFpdGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21h aWhhbmFrYXRfbWFpdGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0YWlraHUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpdGFpa2h1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0 aG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpdGhvOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9tYWl0cmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpdHJpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9tYWl5YW1vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl5 YW1vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbW9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9tb21hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9uZ29uZ3UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbmdvbmd1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9uaWtoYWhpdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9uaWtoYWhpdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbm9u ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbm9uZW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX25vbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbm9udTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfb2FuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9vYW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9wYWl5YW5ub2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGFp eWFubm9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9waGludGh1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3BoaW50aHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3BoYW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvcGhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvcGh1 bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvcGh1bmc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3Bob3NhbXBoYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvc2FtcGhh bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcG9wbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfcG9wbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3JvcnVhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3JvcnVhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ydSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9ydTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfc2FyYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nh cmFhZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3NhcmFhaW1haW1hbGFpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFh aW1haW1hbGFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWltYWltdWFuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3NhcmFhaW1haW11YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nh cmFhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYW07CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3NhcmFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9zYXJhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhaTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWlpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X3NhcmFpaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfc2FyYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX3NhcmF1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJh dWVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1ZWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3NhcmF1dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdXU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3NvcnVzaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3J1 c2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc2FsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9zb3NhbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc28iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfc29zbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zdWEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfc29zdWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RoYW50aGFraGF0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3RoYW50aGFraGF0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV90aG9uYW5nbW9udGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob25h bmdtb250aG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3BodXRoYW8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfdGhvcGh1dGhhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhaGFu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob3RoYWhhbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfdGhvdGhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aGFuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV90aG90aG9uZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90 aG90aG9uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGh1bmciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfdGhvdGh1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RvcGF0YWsiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdG9wYXRhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdG90 YW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdG90YW87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX3dvd2FlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV93b3dhZW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX3lveWFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3lveWFrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV95b3lpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf eW95aW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo b3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGltZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGltZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RvRG9MaXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb0RvTGlz dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1Rvb2xzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb29sczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RvcE1lbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvcE1lbnU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Ub3VjaHBhZE9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91 Y2hwYWRPZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3VjaHBhZE9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUb3VjaHBhZE9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRUb2dnbGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRvdWNocGFkVG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91cm9rdSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91cm9rdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RyYXZlbCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVHJhdmVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVHNsYXNoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVVdCIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVV0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWJyZXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VY2lyY3VtZmxleCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZGlhZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRvdWJsZWFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9VZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVncmF2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1Vob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9vazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vo b3JuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3Ju YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9VaG9ybmJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVWhvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5n cmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWhvcm5ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVWhvcm50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9HSEVfV0lUSF9VUFRV Uk4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWlu aWFuX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fSUUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVrcmFpbmlhbl9JRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9ZSSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2do ZV93aXRoX3VwdHVybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX2doZV93aXRo X3VwdHVybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9pIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVa3JhaW5pYW5faTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9pZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX3lp IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V a3Jhbmlhbl9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9JOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVWtyYW5pYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX0pFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5fWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFu aWFuX1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5faSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVWtyYW5pYW5faTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX2plIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVa3Jhbmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX3lpIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl95aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VtYWNyb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbmRvIild CisrCQlwdWJsaWMgY29uc3QgdWludCBVbmRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW5ncmFiIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVbmdyYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vb2dvbmVrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXJpbmciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXNlcjFLQiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVXNlcjFLQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VzZXIyS0IiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVzZXIyS0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyUEIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVzZXJQQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1V0aWxkZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfViIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1ZlbmRvckhvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFZlbmRvckhvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WaWRlbyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVmlkZW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WaWV3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBW aWV3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVm9pZFN5bWJvbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Vm9pZFN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9XTEFOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXTEFOOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfV1dXIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXV1c7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9XYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1dha2VVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2FrZVVwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfV2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdjaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfV2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2RpYWVyZXNp czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1dlYkNhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2ViQ2Ft OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfV2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXZ3JhdmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9XaGVlbEJ1dHRvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2hl ZWxCdXR0b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XaW5kb3dDbGVhciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgV2luZG93Q2xlYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Xb25TaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBXb25TaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV29yZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgV29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9YYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhh Ym92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1hmZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhm ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ZIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfWWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZYWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ZYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFliZWxvd2RvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZY2lyY3Vt ZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZWxsb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFllbGxvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgWWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFlob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZ dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfWmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBaYWJvdmVkb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9aYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFphY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1pjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmNhcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfWmVuX0tvaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbl9Lb2hv OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfWmVua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2Fr dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1plbmtha3VfSGFua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgWmVua2FrdV9IYW5rYWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWm9vbUluIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBab29tSW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ab29tT3V0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBab29tT3V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWnN0cm9rZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgWnN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2EiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGFhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBhYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYWJyZXZlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmViZWxvd2RvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h YnJldmVncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9hYnJldmVob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVob29rOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYWJyZXZldGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2 ZXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGFjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJj dW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YmVsb3dk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBhY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhob29rIild CisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h Y2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleHRpbGRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWRpYWVy ZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2FlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2FncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW1hY3JvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2FtcGVyc2FuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW1wZXJzYW5kOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW9nb25lazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2Fwb3N0cm9waGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwb3N0 cm9waGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hcHByb3hlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YXBwcm94ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hcHByb3hpbWF0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYXBwcm94aW1hdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hcmluZyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hc2NpaWNpcmN1bSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYXNjaWljaXJjdW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hc2NpaXRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBhc2NpaXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXN0ZXJpc2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFzdGVyaXNrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFib3ZlZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBiYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYWNrc2xhc2giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJhY2tzbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhbGxvdGNyb3NzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBiYWxsb3Rjcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmVjYXVzZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYmVjYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JsYW5rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBibGFuazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGludGVncmFsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBib3RpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRw YXJlbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGxlZnRwYXJlbnM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ib3RsZWZ0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0c3Fi cmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90bGVmdHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYm90bGVmdHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0cGFyZW5z IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHBhcmVuczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JvdHJpZ2h0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHNxYnJh Y2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0c3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBib3RyaWdodHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJvdHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3R2ZXJ0c3VtbWF0aW9uY29u bmVjdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2VsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFj ZWxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFjZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFjZXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2tldGxlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWNrZXRsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2tldHJpZ2h0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFja2V0cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2JsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2JsYW5rOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rf MTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzEwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdF8xMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dF8zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8zOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90XzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF82IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90XzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdF85OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTIzNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTIzNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy MzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1 NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1Njc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTY3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjM1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTI0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0 Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTI0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTI0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTI2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1 Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0 NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1NjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzOCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzE0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ2OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzE0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzE0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzE1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzE1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzE2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzE3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0 NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzIzNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzIzNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzIzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzIzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIz NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzIzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzIzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0 NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzI0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzI0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzI0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0Njc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzI0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1NjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1 NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzI1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzI1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf Mjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzI4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1Njci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18zNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18zNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18zNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18zNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18zNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18zNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18z Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zOCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180 NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180Njc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180Njg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c180Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c181IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c181Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c181Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c181NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c181ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c183OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icm9rZW5iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyb2tlbmJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9jX2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNfaDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2NhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fib3ZlZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfY2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jYXJlb2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhcmVvZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2NhcmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Nhcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfY2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjZWRpbGxhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfY2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjaXJjdW1m bGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Vk aWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNlbnQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2g7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9jaGVja2VyYm9hcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoZWNrZXJib2Fy ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2NoZWNrbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2hl Y2ttYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBj aXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jbHViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjbHVi OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfY29sb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbG9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfY29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbW1hOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfY29udGFpbnNhcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29udGFpbnNh czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2NvcHlyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29w eXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfY3Jvc3NpbmdsaW5lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Jv c3NpbmdsaW5lczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2N1YmVyb290IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBjdWJlcm9vdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2N1cnJlbmN5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBjdXJyZW5jeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2N1cnNvciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgY3Vyc29yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkYWdnZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRf YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVjb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9hYm92ZWNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZWRvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJv dmVyZXZlcnNlZGNvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlcmV2ZXJz ZWRjb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVyaW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWFkX2Fib3ZlcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmV2ZXJ0aWNh bGxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmV2ZXJ0aWNhbGxpbmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2JyZXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX2JlbG93YnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93Y2lyY3VtZmxl eCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2NpcmN1bWZsZXg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX2JlbG93Y29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVs b3djb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dkaWFlcmVzaXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfYmVsb3dkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Jl bG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93ZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9iZWxvd21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxv d21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dyaW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWFkX2JlbG93cmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3d0aWxkZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3RpbGRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9iZWxvd3ZlcnRpY2FsbGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxv d3ZlcnRpY2FsbGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYnJldmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NhcGl0YWxfc2Nod2Ei KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2FwaXRhbF9zY2h3YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2Vk aWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9jaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jdXJyZW5jeSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9jdXJyZW5jeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRf ZGFzaWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZGFzaWE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kaWFlcmVzaXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX2RvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kb3VibGVncmF2ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kb3VibGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9lOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9ncmF2ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfZ3JlZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JlZWs7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2hvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaG9vazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9o b3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2ludmVydGVkYnJldmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfaW52ZXJ0ZWRicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW90YSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9pb3RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9sb25n c29saWR1c292ZXJsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbG9uZ3NvbGlkdXNv dmVybGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9sb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX2xvd2xpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX21hY3JvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX28iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfb2dvbmVrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX29nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRf cGVyaXNwb21lbmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfcGVyaXNwb21lbmk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX3BzaWxpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3Bz aWxpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9zZW1pdm9pY2VkX3NvdW5kIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX3NlbWl2b2ljZWRfc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3Nt YWxsX3NjaHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3NtYWxsX3NjaHdhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF9zdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc3Ry b2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF90aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF90aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF92b2ljZWRfc291bmQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfdm9pY2VkX3NvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVjaW1hbHBv aW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWNpbWFscG9pbnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWdyZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlZ3JlZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGlhZXJlc2lzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGlhbW9uZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGlhbW9uZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RpZ2l0c3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpZ2l0c3BhY2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kaW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpbnRlZ3Jh bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RpdmlzaW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaXZp c2lvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RvbGxhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG9s bGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91YmJhc2VsaW5lZG90IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkb3ViYmFzZWxpbmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVhY3V0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVkYWdn ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJsZWRhZ2dlcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RvdWJsZWxvd3F1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmxlbG93cXVv dGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bmFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkb3duYXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duY2FyZXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRvd25jYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25zaG9lIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkb3duc2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25zdGlsZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZG93bnN0aWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnRhY2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRvd250YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZHN0cm9rZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lYWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWJlbG93ZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2Fyb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGVjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJj dW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4YWN1dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhncmF2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VjaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhob29r OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZWNpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VkaWFlcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBlaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3Vic2NyaXB0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBlaWdodHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vp Z2h0c3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVpZ2h0c3VwZXJpb3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lbGVtZW50b2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVsZW1lbnRvZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VsbGlwc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGxpcHNp czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VtM3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTNz cGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2VtNHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBl bTRzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVtZGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtZmlsbGVkY2lyY2xlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlbWZpbGxlZGNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtZmlsbGVkcmVjdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZW1maWxsZWRyZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1vcGVu Y2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbW9wZW5jaXJjbGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lbW9wZW5yZWN0YW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtb3BlbnJlY3Rh bmdsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2VtcHR5c2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBl bXB0eXNldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vtc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVtc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbmRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVuZGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZmlsbGVkY2lyY2J1bGxldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZW5maWxsZWRjaXJjYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxsZWRz cWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5maWxsZWRzcWJ1bGxldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2VuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5nOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZW5vcGVuY2lyY2J1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVuY2lyY2J1 bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2Vub3BlbnNxdWFyZWJ1bGxldCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZW5vcGVuc3F1YXJlYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5zcGFjZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZW5zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VvZ29uZWsiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lcXVhbCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ldGgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V0aWxkZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXhjbGFtIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBleGNsYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9leGNsYW1kb3duIildCisrCQlwdWJs aWMgY29uc3QgdWludCBleGNsYW1kb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXpoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBlemg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBmYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mZW1hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGZlbWFsZXN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZmIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBmZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpZ2Rhc2giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGZpZ2Rhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWRsZWZ0dHJpYnVsbGV0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWRsZWZ0dHJpYnVsbGV0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZmlsbGVkcmVjdGJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkcmVjdGJ1bGxl dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHJpZ2h0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBmaWxsZWRyaWdodHRyaWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1 bGxldGRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHRyaWJ1bGxldGRvd247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9maWxsZWR0cmlidWxsZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZmlsbGVkdHJpYnVsbGV0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlZWlnaHRocyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZml2ZWVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc2l4dGhzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBmaXZlc2l4dGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXN1 YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXN1YnNjcmlwdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2ZpdmVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXN1cGVyaW9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZm91cmZpZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91 cmZpZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGZvdXJzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3Vyc3VwZXJpb3IiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGZvdXJzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJ0aHJv b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZvdXJ0aHJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9m dW5jdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZnVuY3Rpb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2Fib3ZlZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBnYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nYnJl dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2djYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NlZGls bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2Np cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdjaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyYXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZ3JlYXRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3JlYXRlcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2dyZWF0ZXJ0aGFuZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXJ0aGFu ZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ndWlsbGVtb3RsZWZ0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBndWlsbGVtb3RsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3VpbGxlbW90cmlnaHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGd1aWxsZW1vdHJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hhaXJzcGFjZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGFpcnNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGNpcmN1bWZsZXgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVh cnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3 X2FsZXBoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYWxlcGg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oZWJyZXdfYXlpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2F5aW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZWJyZXdfYmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdf YmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2JldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld19iZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2NoZXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld19jaGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RhbGV0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZGFsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdf ZGFsZXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZGFsZXRoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X2RvdWJsZWxvd2xpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d19kb3VibGVsb3dsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsa2FwaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJl d19maW5hbG1lbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsbWVtOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsbnVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfZmluYWxudW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxwZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFscGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6 YWRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWx6YWRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X2ZpbmFsemFkaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2Zp bmFsemFkaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19naW1lbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2dpbWVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2dpbW1lbCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2dpbW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19o ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2hlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X2hldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2hldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hlYnJld19rYXBoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfa2FwaDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2hlYnJld19rdWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19r dWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbGFtZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld19sYW1lZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19tZW0iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld19tZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbnVuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfbnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3BlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdf cW9waCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3FvcGg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfcmVzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3Jlc2g7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfc2FtZWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdf c2FtZWNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3NhbWVraCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X3NhbWVraDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zaGluIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190YWYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld190YWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfdGF3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGF3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaGVicmV3X3RldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld190ZXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGV0 aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld193YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfeW9kIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfeW9kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGhlYnJld196YWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld196YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3 X3phaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld196YWluOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaGVicmV3X3pheWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemF5aW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZXhhZ3JhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGV4YWdyYW07 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9ob3JpemNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aG9yaXpjb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVz Y2FuMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ob3JpemxpbmVzY2FuNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2Nh bjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuNyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaG9yaXpsaW5lc2Nhbjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuOSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2Nhbjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oc3Ryb2tl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHlwaGVuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoeXBoZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaVRvdWNoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBpVG91Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGlhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWJyZXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBpYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pY2lyY3VtZmxleCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZGVudGljYWwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGlkZW50aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lkaWFlcmVzaXMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZG90 bGVzcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRvdGxlc3M7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9p Zm9ubHlpZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWZvbmx5aWY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9pZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlncmF2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2lob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpaG9vazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lt YWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGltYWNyb247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9p bXBsaWVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbXBsaWVzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aW5jbHVkZWRpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5jbHVkZWRpbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2luY2x1ZGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmNsdWRlczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2luZmluaXR5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmZpbml0eTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2ludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbnRlZ3JhbDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2ludGVyc2VjdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50 ZXJzZWN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgajsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2pjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBqY2ly Y3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2pvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgam90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9BOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9DSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfQ0hJOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX0ZVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0ZVOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9IQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9IQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hJOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9ITyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ITzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfSFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSFU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfS0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS0E7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX0tFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9LSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9LSTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfS08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS087 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tV OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9N QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfTUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf TUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X01JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9NTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfTVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfTkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX05FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9OSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfTk87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05VIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX05VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9PIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX1JBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9SRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUkkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfUkk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JPIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX1JPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SVSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9SVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU0EiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfU0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX1NFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TSEkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfU0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TTyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9TTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU1UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfU1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RBIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrYW5hX1RBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9URSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9URTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfVEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RPIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UU1UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfVFNVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UVSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9XQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9XQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfV08iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfV087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1lBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ZTyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ZTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfWVUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Ei KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY2xv c2luZ2JyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfY2xvc2luZ2JyYWNrZXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9jb25qdW5jdGl2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9jb25qdW5jdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9mdWxsc3RvcCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9mdWxsc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9pOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9taWRkbGVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfbWlkZGxlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX287CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX29wZW5pbmdicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX29wZW5pbmdicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9zd2l0Y2giKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90c3UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfdHN1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90dSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV90dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV95YSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfeW8i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3l1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FwcGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2NlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGtjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa3JhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sIildCisrCQlwdWJs aWMgY29uc3QgdWludCBsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBsYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sYXRpbmNyb3NzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBsYXRpbmNyb3NzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGJlbG93ZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBsYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sY2Fyb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGxjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xjZWRpbGxhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBsY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRhbmdsZWJy YWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRhbmdsZWJyYWNrZXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sZWZ0YXJyb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRhcnJvdzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2xlZnRjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGNhcmV0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGRvdWJsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbGVmdGRvdWJsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRtaWRkbGVjdXJs eWJyYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0bWlkZGxlY3VybHlicmFjZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2xlZnRvcGVudHJpYW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxl ZnRvcGVudHJpYW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cG9pbnRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbGVmdHBvaW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cmFkaWNhbCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2hv ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0 c2luZ2xlcXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0c2luZ2xlcXVvdGVt YXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0 YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVzcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVzczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2xlc3N0aGFuZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxl c3N0aGFuZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9sb2dpY2FsYW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBs b2dpY2FsYW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG9naWNhbG9yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsb2dpY2Fsb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sb3dsZWZ0Y29ybmVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBsb3dsZWZ0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93cmlnaHRjb3Ju ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxvd3JpZ2h0Y29ybmVyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbHN0cm9rZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX20iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWJvdmVk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21h Y3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFs ZXN5bWJvbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFsZXN5bWJvbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX21hbHRlc2Vjcm9zcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFsdGVzZWNyb3NzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbWFya2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYXJrZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9tYXNjdWxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hc2N1bGlu ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX21pbnVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtaW51czsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX21pbnV0ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1pbnV0ZXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9tdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9tdWx0aXBseSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVsdGlwbHk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9tdXNpY2FsZmxhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVzaWNhbGZs YXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9tdXNpY2Fsc2hhcnAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG11c2ljYWxzaGFycDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9uYWJsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmFibGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9uYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5hY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX25jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmNhcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5jZWRpbGxh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbmluZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bmluZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25pbmVzdXBlcmlvciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbmluZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG5sOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm9icmVha3NwYWNlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBub2JyZWFrc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RhcHByb3hlcSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90YXBwcm94ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3Rl bGVtZW50b2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGVsZW1lbnRvZjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX25vdGVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RlcXVhbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX25vdGlkZW50aWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90aWRlbnRp Y2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90c2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90 c2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX250aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnRp bGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbnVtYmVyc2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bnVtYmVyc2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX251bWVyb3NpZ24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG51bWVyb3NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vYmFycmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv YmFycmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2JlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBvY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4YWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v Y2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGJl bG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb2NpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4aG9v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfb2NpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXh0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9kaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9kb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29lIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29nb25layIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2dyYXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBvZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb2hvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg b2hvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvaG9ybmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb2hvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuZ3JhdmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmhv b2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29o b3JudGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JudGlsZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbWFjcm9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb25lZWlnaHRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVlaWdodGg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9vbmVmaWZ0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lZmlmdGg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vbmVoYWxmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVoYWxmOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb25lcXVhcnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lcXVh cnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXNpeHRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv bmVzaXh0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb25lc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc3VwZXJpb3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9uZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25ldGhpcmQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9uZXRoaXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb29ibGlxdWUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnJl Y3RidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW5yZWN0YnVsbGV0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb3BlbnN0YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW5zdGFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb3BlbnRyaWJ1bGxldGRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9w ZW50cmlidWxsZXRkb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnRyaWJ1bGxldHVwIildCisrCQlw dWJsaWMgY29uc3QgdWludCBvcGVudHJpYnVsbGV0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcmRmZW1p bmluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3JkZmVtaW5pbmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9zbGFzaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X290aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3RpbGRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b3ZlcmJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3ZlcmJhcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X292ZXJsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvdmVybGluZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYWJvdmVk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bh cmFncmFwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyYWdyYXBoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcGFyZW5sZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJlbmxlZnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9wYXJlbnJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJlbnJpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcGFydGRpZmZlcmVudGlhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cGFydGRpZmZlcmVudGlhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcnRpYWxkZXJpdmF0aXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBwYXJ0aWFsZGVyaXZhdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bl cmNlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBlcmNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9w ZXJpb2QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBlcmlvZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bl cmlvZGNlbnRlcmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJpb2RjZW50ZXJlZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3Blcm1pbGxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJtaWxsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3Bob25vZ3JhcGhjb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHBob25vZ3JhcGhjb3B5cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wbHVzIildCisrCQlwdWJs aWMgY29uc3QgdWludCBwbHVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGx1c21pbnVzIildCisrCQlwdWJs aWMgY29uc3QgdWludCBwbHVzbWludXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wcmVzY3JpcHRpb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHByZXNjcmlwdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Byb2xv bmdlZHNvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwcm9sb25nZWRzb3VuZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3B1bmN0c3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHB1bmN0c3BhY2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcXVhZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVhZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3F1ZXN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdWVzdGlvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3F1ZXN0aW9uZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb25kb3duOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcXVvdGVkYmwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1b3RlZGJs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcXVvdGVsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90 ZWxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdW90ZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBxdW90ZXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFkaWNh bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3JjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmNhcm9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJjZWRp bGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcmVnaXN0ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cmVnaXN0ZXJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0YW5nbGVicmFja2V0IildCisrCQlwdWJs aWMgY29uc3QgdWludCByaWdodGFuZ2xlYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0YXJy b3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9y aWdodGNhcmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGNhcmV0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcmlnaHRkb3VibGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0 ZG91YmxlcXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRtaWRkbGVjdXJseWJyYWNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodG1pZGRsZWN1cmx5YnJhY2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9yaWdodG1pZGRsZXN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRt aWRkbGVzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodG9wZW50cmlhbmdsZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcmlnaHRvcGVudHJpYW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdo dHBvaW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0cG9pbnRlcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3JpZ2h0c2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRzaG9lOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcmlnaHRzaW5nbGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHJpZ2h0c2luZ2xlcXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHR0IildCisrCQlwdWJs aWMgY29uc3QgdWludCByaWdodHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHRhY2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHJpZ2h0dGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3MiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHNhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Nhcm9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBzY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2VkaWxsYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2h3YSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2lyY3VtZmxleCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgc2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY3JpcHRfc3dpdGNo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY3JpcHRfc3dpdGNoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf c2Vjb25kcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Vjb25kczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NlY3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlY3Rpb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9zZW1pY29sb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlbWljb2xvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3NlbWl2b2ljZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VtaXZvaWNl ZHNvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2V2ZW5laWdodGhzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBzZXZlbmVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1YnNjcmlwdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgc2V2ZW5zdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1 cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbnN1cGVyaW9yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfc2lnbmF0dXJlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2lnbmF0dXJlbWFy azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3NpZ25pZmJsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBz aWduaWZibGFuazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpbWlsYXJlcXVhbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgc2ltaWxhcmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2luZ2xlbG93cXVvdGVtYXJr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaW5nbGVsb3dxdW90ZW1hcms7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9zaXhzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpeHN1YnNjcmlwdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3NpeHN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhz dXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBz bGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3NvbGlkZGlhbW9uZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc29saWRkaWFtb25kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3BhY2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3F1YXJlcm9vdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgc3F1YXJlcm9vdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NzaGFycCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc3NoYXJwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3RlcmxpbmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHN0ZXJsaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3RyaWN0ZXEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHN0cmljdGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGNhcm9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB0Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90Y2VkaWxsYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90ZWxlcGhvbmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRlbGVwaG9uZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RlbGVwaG9uZXJlY29y ZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0ZWxlcGhvbmVyZWNvcmRlcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3RoZXJlZm9yZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhlcmVmb3JlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdGhpbnNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aGluc3BhY2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhvcm47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90aHJlZWVpZ2h0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVl ZWlnaHRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RocmVlZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB0aHJlZWZpZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RocmVlcXVhcnRlcnMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRocmVlcXVhcnRlcnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1YnNj cmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV90aHJlZXN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXN1cGVyaW9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aW50 ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdG9waW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0cGFyZW5zIildCisrCQlwdWJs aWMgY29uc3QgdWludCB0b3BsZWZ0cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHJhZGlj YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdG9wbGVmdHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHNxYnJh Y2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxlZnRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHRvcGxlZnRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHBhcmVucyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 b3ByaWdodHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRzcWJyYWNr ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdG9wcmlnaHRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3B0IildCisrCQlwdWJs aWMgY29uc3QgdWludCB0b3B0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wdmVydHN1bW1hdGlvbmNvbm5l Y3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3RyYWRlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHJhZGVt YXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdHJhZGVtYXJraW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHRyYWRlbWFya2luY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHNsYXNoIildCisrCQlw dWJsaWMgY29uc3QgdWludCB0c2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d29maWZ0aHMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHR3b2ZpZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3N1YnNjcmlw dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dHdvc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3b3N1cGVyaW9yOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdHdvdGhpcmRzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d290aGlyZHM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV91IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1YWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV91YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHViZWxvd2RvdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3VicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWJyZXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVjaXJjdW1mbGV4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRpYWVy ZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3Vkb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdWRvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWdyYXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCB1Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9vayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdWhvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB1aG9ybmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5iZWxvd2RvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdWhvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuZ3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9y bmhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3Vob3JudGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JudGlsZGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91bWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bWFjcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdW5kZXJiYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVuZGVyYmFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdW5kZXJzY29yZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5kZXJzY29y ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3VuaW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmlvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVvZ29uZWs7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV91cGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cGFycm93 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdXBjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBjYXJl dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3VwbGVmdGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dXBsZWZ0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXByaWdodGNvcm5lciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdXByaWdodGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwc2hvZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdXBzaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBzdGlsZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdXBzdGlsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwdGFjayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdXB0YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXJpbmciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHVyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXRpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCB1dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92IildCisrCQlwdWJsaWMgY29u c3QgdWludCB2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdmFyaWF0aW9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB2YXJpYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92ZXJ0YmFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCB2ZXJ0YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdmVydGNvbm5lY3RvciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdmVydGNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZvaWNlZHNvdW5k IildCisrCQlwdWJsaWMgY29uc3QgdWludCB2b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Z0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCB2dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93YWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHdhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3djaXJjdW1mbGV4IildCisrCQlwdWJs aWMgY29uc3QgdWludCB3Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3dkaWFlcmVzaXMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHdkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Z3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHdncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV94YWJvdmVkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHhhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3kiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95YWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHlhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3liZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgeWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWNpcmN1bWZsZXgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWRpYWVyZXNpcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3llbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWdyYXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCB5Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95aG9vayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgeWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95dGlsZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3oiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHphYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3phY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgemFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemNhcm9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCB6Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96ZXJvc3Vic2NyaXB0IildCisrCQlwdWJs aWMgY29uc3QgdWludCB6ZXJvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1cGVyaW9y IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6ZXJvc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96 c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB6c3Ryb2tlOworKwl9CisrCW5hbWVzcGFj ZSBUaHJlYWRzIHsKKysJCW5hbWVzcGFjZSBJZGxlIHsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRk X2lkbGUiKV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRp YyB1aW50IGFkZCAoR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19h ZGRfaWRsZV9mdWxsIildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1Ymxp YyBzdGF0aWMgdWludCBhZGRfZnVsbCAoaW50IHByaW9yaXR5LCBvd25lZCBHTGliLlNvdXJjZUZ1 bmMgZnVuYyk7CisrCQl9CisrCQluYW1lc3BhY2UgVGltZW91dCB7CisrCQkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJl YWRzX2FkZF90aW1lb3V0IildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1 YmxpYyBzdGF0aWMgdWludCBhZGQgKHVpbnQgaW50ZXJ2YWwsIEdMaWIuU291cmNlRnVuYyBmdW5j KTsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCIpXQorKwkJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjQiKV0KKysJCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBw cmlvcml0eSwgdWludCBpbnRlcnZhbCwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJ fQorKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX3Jl cGFpbnRfZnVuYyAob3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9yZXBhaW50X2Z1bmNfZnVsbCAo Q2x1dHRlci5SZXBhaW50RmxhZ3MgZmxhZ3MsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9y ZXBhaW50X2Z1bmMgKHVpbnQgaGFuZGxlX2lkKTsKKysJfQorKwluYW1lc3BhY2UgVmFsdWUgewor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLlBhaW50 Tm9kZSBkdXBfcGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfY29s b3IgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnROb2RlIGdldF9wYWludF9ub2RlIChHTGli LlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlf bGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgZmxvYXRbXSBnZXRfc2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtD Q29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUi LCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgaW50W10gZ2V0X3NoYWRl cl9pbnQgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0g MS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBmbG9hdFtdIGdldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZh bHVlKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IENsdXR0ZXIuVW5pdHM/IGdldF91bml0cyAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfY29sb3IgKEdMaWIuVmFs dWUgdmFsdWUsIENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVl LCBDbHV0dGVyLlBhaW50Tm9kZT8gbm9kZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfc2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlLCBb Q0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEu NSldIGZsb2F0W10gZmxvYXRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHN0YXRpYyB2b2lkIHNldF9zaGFkZXJfaW50IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFy cmF5X2xlbmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGludFtd IGludHMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQg c2V0X3NoYWRlcl9tYXRyaXggKEdMaWIuVmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3Ro X2NuYW1lID0gInNpemUiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41KV0gZmxvYXRbXSBtYXRyaXgp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3Vu aXRzIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlVuaXRzIHVuaXRzKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB0YWtlX3BhaW50X25vZGUgKEdM aWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIuUGFpbnROb2RlPyBub2RlKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ cHVibGljIGFic3RyYWN0IGNsYXNzIEFjdGlvbiA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBBY3Rp b24gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBBY3RvciA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCwgQXRrLkltcGxlbWVudG9yLCBDbHV0 dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgewor KwkJcHVibGljIHVpbnQzMiBmbGFnczsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQWN0 b3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRf YWN0aW9uIChDbHV0dGVyLkFjdGlvbiBhY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2FjdGlvbl93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBD bHV0dGVyLkFjdGlvbiBhY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGFkZF9jaGlsZCAoQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfY29uc3RyYWludCAoQ2x1dHRl ci5Db25zdHJhaW50IGNvbnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIHZvaWQgYWRkX2NvbnN0cmFpbnRfd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1 dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgYWRkX2VmZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3Rfd2l0 aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBhZGRfdHJhbnNpdGlvbiAoc3RyaW5n IG5hbWUsIENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFuc2l0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQWN0 b3JCb3ggYm94LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9hbGlnbl9maWxsIChDbHV0 dGVyLkFjdG9yQm94IGJveCwgZG91YmxlIHhfYWxpZ24sIGRvdWJsZSB5X2FsaWduLCBib29sIHhf ZmlsbCwgYm9vbCB5X2ZpbGwsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX2F2YWlsYWJs ZV9zaXplIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCBhdmFpbGFibGVfd2lkdGgsIGZsb2F0IGF2 YWlsYWJsZV9oZWlnaHQsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX3ByZWZlcnJlZF9z aXplIChDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0ZSAodWxvbmcgbW9kZSwg dWludCBkdXJhdGlvbiwgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFuaW1hdGlvbiBhbmltYXRlX3dpdGhfdGltZWxpbmUgKHVsb25nIG1vZGUsIENs dXR0ZXIuVGltZWxpbmUgdGltZWxpbmUsIC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdm9pZCBhcHBseV9yZWxhdGl2ZV90cmFuc2Zvcm1fdG9fcG9pbnQgKENs dXR0ZXIuQWN0b3I/IGFuY2VzdG9yLCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25l ZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBhcHBseV90cmFuc2Zvcm0gKHJlZiBDbHV0dGVyLk1hdHJpeCBtYXRyaXgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfdHJhbnNm b3JtX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVu ZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVi bGljIHZvaWQgYmluZF9tb2RlbCAoR0xpYi5MaXN0TW9kZWw/IG1vZGVsLCBvd25lZCBDbHV0dGVy LkFjdG9yQ3JlYXRlQ2hpbGRGdW5jIGNyZWF0ZV9jaGlsZF9mdW5jKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2FjdGlvbnMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcl9jb25zdHJhaW50cyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2Vm ZmVjdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBj b250YWlucyAoQ2x1dHRlci5BY3RvciBkZXNjZW5kYW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNvbnRpbnVlX3BhaW50IChDbHV0dGVyLlBhaW50Q29u dGV4dCBwYWludF9jb250ZXh0KTsKKysJCXB1YmxpYyB2b2lkIGNvbnRpbnVlX3BpY2sgKENsdXR0 ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBQYW5nby5Db250ZXh0IGNyZWF0ZV9wYW5nb19jb250ZXh0ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIFBhbmdvLkxheW91dCBjcmVhdGVf cGFuZ29fbGF5b3V0IChzdHJpbmc/IHRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3lfYWxsX2NoaWxkcmVuICgpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX2FjdG9yX2V2ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgYm9vbCBlbWl0X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29s IGNhcHR1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQg Z2V0X2Fic19hbGxvY2F0aW9uX3ZlcnRpY2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0c1s0XSk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVk IEF0ay5PYmplY3QgZ2V0X2FjY2Vzc2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdGlvbiBnZXRfYWN0aW9uIChzdHJpbmcg bmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0 PHdlYWsgQ2x1dHRlci5BY3Rpb24+IGdldF9hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggZ2V0X2FsbG9jYXRpb25fYm94 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Fs bG9jYXRpb25fdmVydGljZXMgKENsdXR0ZXIuQWN0b3I/IGFuY2VzdG9yLCBbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0c1s0XSk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBnZXRfYW5jaG9yX3BvaW50X2dyYXZp dHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIu Q29sb3IgZ2V0X2JhY2tncm91bmRfY29sb3IgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfZ2V0X2FjdG9yX2J5X2dpZCIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuOCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2J5X2dpZCAodWludDMyIGlkXyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBn ZXRfY2hpbGRfYXRfaW5kZXggKGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1hdHJpeCBnZXRfY2hpbGRfdHJhbnNmb3JtICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBD bHV0dGVyLkFjdG9yPiBnZXRfY2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY2xpcCAob3V0IGZsb2F0IHhvZmYsIG91dCBmbG9hdCB5 b2ZmLCBvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2NsaXBfdG9fYWxsb2NhdGlvbiAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu Q29uc3RyYWludCBnZXRfY29uc3RyYWludCAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQ29uc3RyYWlu dD4gZ2V0X2NvbnN0cmFpbnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29udGVudCBnZXRfY29udGVudCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBnZXRfY29u dGVudF9ib3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQ29udGVudEdyYXZpdHkgZ2V0X2NvbnRlbnRfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50UmVwZWF0IGdldF9j b250ZW50X3JlcGVhdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBnZXRfY29udGVudF9zY2FsaW5nX2ZpbHRlcnMgKG91dCBDbHV0dGVyLlNjYWxpbmdG aWx0ZXIgbWluX2ZpbHRlciwgb3V0IENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LlBhaW50Vm9sdW1lIGdldF9kZWZhdWx0X3BhaW50X3ZvbHVtZSAoKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB1aW50IGdldF9lYXNpbmdfZGVsYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIGdldF9l YXNpbmdfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuRWZmZWN0IGdldF9lZmZlY3QgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkVm ZmVjdD4gZ2V0X2VmZmVjdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZmlyc3RfY2hpbGQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZml4ZWRfcG9zaXRpb25f c2V0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIu QWN0b3JGbGFncyBnZXRfZmxhZ3MgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0 b3JfaGFzX3BvaW50ZXIiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyBib29sIGdldF9oYXNfcG9pbnRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2xhc3RfY2hpbGQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFu YWdlciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBn ZXRfbWFyZ2luIChDbHV0dGVyLk1hcmdpbiBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX2JvdHRvbSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9sZWZ0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFy Z2luX3JpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfbWFyZ2luX3RvcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgaW50IGdldF9uX2NoaWxkcmVuICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF9uYW1lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X25leHRfc2libGluZyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IGdldF9v ZmZzY3JlZW5fcmVkaXJlY3QgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X29wYWNpdHkgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIGludCBnZXRfb3BhY2l0eV9v dmVycmlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29s IGdldF9wYWludF9ib3ggKG91dCBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdWludDggZ2V0X3BhaW50X29wYWNpdHkgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGFpbnRfdmlz aWJpbGl0eSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9w YWludF92b2x1bWUgKENsdXR0ZXIuUGFpbnRWb2x1bWUgdm9sdW1lKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIFBhbmdvLkNvbnRleHQgZ2V0X3Bhbmdv X2NvbnRleHQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yPyBnZXRfcGFyZW50 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9w aXZvdF9wb2ludCAob3V0IGZsb2F0IHBpdm90X3gsIG91dCBmbG9hdCBwaXZvdF95KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Bpdm90X3BvaW50 X3ogKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBnZXRf cG9zaXRpb24gKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfaGVpZ2h0IChm bG9hdCBmb3Jfd2lkdGgsIG91dCBmbG9hdCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFs X2hlaWdodF9wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lk IGdldF9wcmVmZXJyZWRfc2l6ZSAob3V0IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbWlu X2hlaWdodF9wLCBvdXQgZmxvYXQgbmF0dXJhbF93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF9o ZWlnaHRfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIGdldF9wcmVmZXJyZWRfd2lkdGggKGZsb2F0IGZvcl9oZWlnaHQsIG91dCBmbG9hdCBt aW5fd2lkdGhfcCwgb3V0IGZsb2F0IG5hdHVyYWxfd2lkdGhfcCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcHJldmlv dXNfc2libGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBi b29sIGdldF9yZWFjdGl2ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLlJlcXVlc3RNb2RlIGdldF9yZXF1ZXN0X21vZGUgKCk7CisrCQlwdWJsaWMg Ym9vbCBnZXRfcmVzb3VyY2Vfc2NhbGUgKG91dCBmbG9hdCByZXNvdXJjZV9zY2FsZSk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfcm90YXRpb24gKENsdXR0ZXIuUm90 YXRlQXhpcyBheGlzLCBvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHksIG91dCBmbG9hdCB6KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91YmxlIGdldF9yb3RhdGlv bl9hbmdsZSAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NjYWxlIChvdXQgZG91YmxlIHNjYWxlX3gsIG91 dCBkb3VibGUgc2NhbGVfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0 X3NjYWxlX2NlbnRlciAob3V0IGZsb2F0IGNlbnRlcl94LCBvdXQgZmxvYXQgY2VudGVyX3kpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3NjYWxlX2dy YXZpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJs ZSBnZXRfc2NhbGVfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1Ymxp YyB2b2lkIGdldF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFn ZSBnZXRfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg Q2x1dHRlci5UZXh0RGlyZWN0aW9uIGdldF90ZXh0X2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0X3RyYW5zZm9y bSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuUGFpbnRWb2x1bWUgZ2V0X3RyYW5zZm9ybWVkX3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5B Y3RvciByZWxhdGl2ZV90b19hbmNlc3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfcG9zaXRpb24gKG91dCBmbG9hdCB4LCBv dXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBnZXRfdHJhbnNmb3JtZWRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLlRyYW5zaXRpb24gZ2V0X3RyYW5zaXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNsYXRpb24gKG91dCBm bG9hdCB0cmFuc2xhdGVfeCwgb3V0IGZsb2F0IHRyYW5zbGF0ZV95LCBvdXQgZmxvYXQgdHJhbnNs YXRlX3opOworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRl ci5BY3RvckFsaWduIGdldF94X2FsaWduICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBib29sIGdldF94X2V4cGFuZCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRf eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5B Y3RvckFsaWduIGdldF95X2FsaWduICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBib29sIGdldF95X2V4cGFuZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfcG9zaXRpb24gKCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBnZXRfel9yb3RhdGlvbl9ncmF2aXR5ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ3JhYl9rZXlf Zm9jdXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wg aGFzX2FjdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg Ym9vbCBoYXNfYWxsb2NhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgYm9vbCBoYXNfY29uc3RyYWludHMgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZGFt YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhh c19lZmZlY3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJv b2wgaGFzX2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlw dWJsaWMgYm9vbCBoYXNfbWFwcGVkX2Nsb25lcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgaGFzX292ZXJsYXBzICgpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaGlkZV9hbGwgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2Fib3ZlIChDbHV0 dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRfYXRfaW5kZXggKENs dXR0ZXIuQWN0b3IgY2hpbGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIGluc2VydF9jaGlsZF9iZWxvdyAoQ2x1dHRlci5BY3RvciBj aGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgYm9vbCBpc19pbl9jbG9uZV9wYWludCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgYm9vbCBpc19tYXBwZWQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGJvb2wgaXNfcmVhbGl6ZWQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBpc19yb3RhdGVkICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgaXNfc2NhbGVkICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3Zpc2li bGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIG1hcCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBtb3ZlX2FuY2hv cl9wb2ludCAoZmxvYXQgYW5jaG9yX3gsIGZsb2F0IGFuY2hvcl95KTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdm9pZCBtb3ZlX2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0 ZXIuR3Jhdml0eSBncmF2aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyB2b2lkIG1vdmVfYnkgKGZsb2F0IGR4LCBmbG9hdCBkeSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgbmVlZHNfZXhwYW5kIChDbHV0dGVyLk9yaWVu dGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIHBhaW50X25vZGUgKENsdXR0ZXIuUGFpbnROb2RlIHJvb3QpOworKwkJcHVibGljIHZvaWQg cGlja19ib3ggKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0LCBDbHV0dGVyLkFjdG9y Qm94IGJveCk7CisrCQlwdWJsaWMgdm9pZCBwb3BfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgdm9p ZCBwdXNoX2ludGVybmFsICgpOworKwkJcHVibGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhd193 aXRoX2NsaXAgKENhaXJvLlJlY3RhbmdsZUludD8gY2xpcCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWN0aW9uIChDbHV0dGVyLkFjdGlvbiBh Y3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVt b3ZlX2FjdGlvbl9ieV9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FsbF9jaGlsZHJlbiAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsX3RyYW5zaXRp b25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJl bW92ZV9jaGlsZCAoQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVf Y2xpcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJl bW92ZV9jb25zdHJhaW50IChDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY29uc3RyYWludF9i eV9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCByZW1vdmVfZWZmZWN0IChDbHV0dGVyLkVmZmVjdCBlZmZlY3QpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdF9ieV9u YW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgcmVtb3ZlX3RyYW5zaXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZXBsYWNlX2NoaWxkIChDbHV0dGVyLkFj dG9yIG9sZF9jaGlsZCwgQ2x1dHRlci5BY3RvciBuZXdfY2hpbGQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlc3RvcmVfZWFzaW5nX3N0YXRlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNhdmVfZWFzaW5n X3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9hbGxvY2F0aW9uIChDbHV0dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9u RmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNo b3JfcG9pbnQgKGZsb2F0IGFuY2hvcl94LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0 ZXIuR3Jhdml0eSBncmF2aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfYmFja2dyb3VuZF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9h Ym92ZV9zaWJsaW5nIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5n KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hp bGRfYXRfaW5kZXggKENsdXR0ZXIuQWN0b3IgY2hpbGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9iZWxvd19zaWJs aW5nIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfdHJhbnNm b3JtIChDbHV0dGVyLk1hdHJpeD8gdHJhbnNmb3JtKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jbGlwIChmbG9hdCB4b2ZmLCBmbG9hdCB5b2ZmLCBm bG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jbGlwX3RvX2FsbG9jYXRpb24gKGJvb2wgY2xpcF9zZXQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50 IChDbHV0dGVyLkNvbnRlbnQ/IGNvbnRlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X2dyYXZpdHkgKENsdXR0ZXIuQ29udGVudEdy YXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2NvbnRlbnRfcmVwZWF0IChDbHV0dGVyLkNvbnRlbnRSZXBlYXQgcmVwZWF0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVu dF9zY2FsaW5nX2ZpbHRlcnMgKENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0 dGVyLlNjYWxpbmdGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Rl cHRoIChmbG9hdCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2Vhc2luZ19kZWxheSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBt c2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2Vhc2luZ19tb2RlIChDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZml4ZWRfcG9zaXRpb25fc2V0IChi b29sIGlzX3NldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfZmxhZ3MgKENsdXR0ZXIuQWN0b3JGbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXlvdXRf bWFuYWdlciAoQ2x1dHRlci5MYXlvdXRNYW5hZ2VyPyBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luIChDbHV0dGVyLk1hcmdp biBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9tYXJnaW5fYm90dG9tIChmbG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW5fbGVmdCAoZmxvYXQgbWFyZ2luKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2lu X3JpZ2h0IChmbG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9tYXJnaW5fdG9wIChmbG9hdCBtYXJnaW4pOworKwkJcHVibGljIHZv aWQgc2V0X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9vZmZzY3JlZW5fcmVkaXJlY3QgKENsdXR0ZXIuT2Zmc2NyZWVu UmVkaXJlY3QgcmVkaXJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X29wYWNpdHkgKHVpbnQ4IG9w YWNpdHkpOworKwkJcHVibGljIHZvaWQgc2V0X29wYWNpdHlfb3ZlcnJpZGUgKGludCBvcGFjaXR5 KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcGFyZW50IChDbHV0dGVyLkFjdG9yIHBhcmVudCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bpdm90 X3BvaW50IChmbG9hdCBwaXZvdF94LCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcGl2b3RfcG9pbnRfeiAoZmxvYXQgcGl2 b3Rfeik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcG9zaXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlYWN0aXZl IChib29sIHJlYWN0aXZlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9yZXF1ZXN0X21vZGUgKENsdXR0ZXIuUmVxdWVzdE1vZGUgbW9kZSk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JvdGF0aW9uIChDbHV0dGVyLlJvdGF0 ZUF4aXMgYXhpcywgZG91YmxlIGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcm90YXRpb25f YW5nbGUgKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzLCBkb3VibGUgYW5nbGUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NjYWxlIChkb3VibGUgc2Nh bGVfeCwgZG91YmxlIHNjYWxlX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9zY2FsZV9mdWxsIChkb3VibGUgc2NhbGVfeCwgZG91YmxlIHNjYWxlX3ksIGZsb2F0IGNl bnRlcl94LCBmbG9hdCBjZW50ZXJfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3NjYWxlX3ogKGRvdWJsZSBzY2FsZV96KTsKKysJCXB1YmxpYyB2 b2lkIHNldF9zaXplIChmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90ZXh0X2RpcmVjdGlvbiAoQ2x1dHRl ci5UZXh0RGlyZWN0aW9uIHRleHRfZGlyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNmb3JtIChDbHV0dGVyLk1hdHJpeD8gdHJhbnNmb3Jt KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJh bnNsYXRpb24gKGZsb2F0IHRyYW5zbGF0ZV94LCBmbG9hdCB0cmFuc2xhdGVfeSwgZmxvYXQgdHJh bnNsYXRlX3opOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3dpZHRoIChmbG9hdCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdm9pZCBzZXRfeCAoZmxvYXQgeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3hfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGlnbiB4X2Fs aWduKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRf eF9leHBhbmQgKGJvb2wgZXhwYW5kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF95IChmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBzZXRfeV9hbGlnbiAoQ2x1dHRlci5BY3RvckFsaWduIHlfYWxp Z24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95 X2V4cGFuZCAoYm9vbCBleHBhbmQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF96X3Bvc2l0aW9uIChmbG9hdCB6X3Bvc2l0aW9uKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfel9yb3RhdGlvbl9mcm9tX2dyYXZpdHkgKGRv dWJsZSBhbmdsZSwgQ2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJcHVibGljIGJvb2wgc2hv dWxkX3BpY2tfcGFpbnQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBzaG93X2FsbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyBib29sIHRyYW5zZm9ybV9zdGFnZV9wb2ludCAoZmxvYXQgeCwgZmxvYXQgeSwgb3V0IGZsb2F0 IHhfb3V0LCBvdXQgZmxvYXQgeV9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCB1bm1hcCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlw dWJsaWMgdm9pZCB1bnBhcmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHVuc2V0X2ZsYWdzIChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgQ2x1dHRlci5BY3Rpb24gYWN0aW9ucyB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJv eCBhbGxvY2F0aW9uIHsgb3duZWQgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGFuY2hvcl9ncmF2aXR5IHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBmbG9hdCBhbmNob3JfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgYW5jaG9yX3kgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGJhY2tncm91bmRfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgYmFja2dyb3Vu ZF9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGNoaWxkX3RyYW5zZm9ybV9zZXQgeyBn ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGNsaXBfcmVjdCB7IG93bmVkIGdldDsgc2V0OyB9 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBjbGlwX3RvX2Fs bG9jYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFp bnRzIHsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQ29udGVudCBjb250ZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBjb250ZW50X2JveCB7IGdldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRl bnRHcmF2aXR5IGNvbnRlbnRfZ3Jhdml0eSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudFJlcGVhdCBjb250ZW50X3Jl cGVhdCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGZsb2F0IGRl cHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuRWZmZWN0IGVmZmVjdCB7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGZp cnN0X2NoaWxkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgYm9vbCBmaXhlZF9wb3NpdGlvbl9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4 ZWRfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBmaXhlZF95IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgaGFzX2NsaXAgeyBnZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIGJvb2wgaGFzX3BvaW50ZXIgeyBnZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCBoZWlnaHQgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLkFjdG9yIGxhc3RfY2hpbGQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGlu Z0ZpbHRlciBtYWduaWZpY2F0aW9uX2ZpbHRlciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIG1h cHBlZCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBm bG9hdCBtYXJnaW5fYm90dG9tIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX2xlZnQgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fcmlnaHQgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9h dCBtYXJnaW5fdG9wIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG1pbl9oZWlnaHQgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgYm9vbCBtaW5faGVpZ2h0X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBm bG9hdCBtaW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBtaW5fd2lkdGhfc2V0IHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2Nh bGluZ0ZpbHRlciBtaW5pZmljYXRpb25fZmlsdGVyIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBmbG9hdCBuYXR1cmFsX2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVy YWxfaGVpZ2h0X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBuYXR1cmFsX3dpZHRoIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGJvb2wgbmF0dXJhbF93aWR0aF9zZXQgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuT2Zmc2NyZWVu UmVkaXJlY3Qgb2Zmc2NyZWVuX3JlZGlyZWN0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50 IG9wYWNpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHBpdm90X3BvaW50 IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgZmxvYXQgcGl2b3RfcG9pbnRfeiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQgcG9zaXRpb24geyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIGJvb2wgcmVhY3RpdmUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9v bCByZWFsaXplZCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIENsdXR0ZXIuUmVxdWVzdE1vZGUgcmVxdWVzdF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IHJlc291cmNlX3NjYWxlIHsgZ2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5nbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3Vi bGUgcm90YXRpb25fYW5nbGVfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25f YW5nbGVfeiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeCB7IG93 bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeSB7IG93bmVkIGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeiB7IG93bmVkIGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Q2x1dHRlci5HcmF2aXR5IHJvdGF0aW9uX2NlbnRlcl96X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IHNjYWxlX2NlbnRlcl94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZV9jZW50ZXJfeSB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Q2x1dHRlci5HcmF2aXR5IHNjYWxlX2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91Ymxl IHNjYWxlX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxlX3kgeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVf eiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIHNob3dfb25fc2V0X3BhcmVudCB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzaXplIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24g dGV4dF9kaXJlY3Rpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgdHJhbnNmb3JtX3NldCB7 IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3ggeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IGZsb2F0IHRyYW5zbGF0aW9uX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0 aW9uX3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9v bCB2aXNpYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB3aWR0aCB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgZmxvYXQgeCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduIHsgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB4X2V4 cGFuZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgeSB7IGdldDsgc2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB5 X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgYm9vbCB5X2V4cGFuZCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHpfcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFsbG9jYXRpb25f Y2hhbmdlZCAoQ2x1dHRlci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZs YWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCBib29sIGJ1dHRvbl9wcmVzc19ldmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg Ym9vbCBidXR0b25fcmVsZWFzZV9ldmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9v bCBjYXB0dXJlZF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIGRlc3Ryb3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgYm9vbCBlbnRlcl9ldmVudCAoQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2 ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCBib29sIGV2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgaGlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIGtleV9mb2N1c19pbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGtleV9mb2N1c19vdXQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9v bCBrZXlfcHJlc3NfZXZlbnQgKENsdXR0ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wga2V5X3JlbGVh c2VfZXZlbnQgKENsdXR0ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgbGVhdmVfZXZlbnQgKENsdXR0 ZXIuQ3Jvc3NpbmdFdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBtb3Rpb25fZXZlbnQgKENsdXR0ZXIuTW90aW9u RXZlbnQgZXZlbnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50 X2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgcGFyZW50X3NldCAoQ2x1dHRlci5BY3Rvcj8gb2xkX3BhcmVudCk7Cisr CQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCB2b2lkIHBpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0 KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcXVldWVfcmVsYXlvdXQgKCk7CisrCQlbSGFzRW1pdHRl cl0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjE2Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCByZWFs aXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIGJvb2wgc2Nyb2xsX2V2ZW50IChDbHV0dGVyLlNjcm9sbEV2ZW50IGV2ZW50KTsKKysJ CVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgc2hvdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCB0b3VjaF9ldmVudCAoQ2x1dHRlci5FdmVu dCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHNpZ25h bCB2b2lkIHRyYW5zaXRpb25fc3RvcHBlZCAoc3RyaW5nIG5hbWUsIGJvb2wgaXNfZmluaXNoZWQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0 cmFuc2l0aW9uc19jb21wbGV0ZWQgKCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2FjdG9yX21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQWN0b3JNZXRhIDogR0xpYi5Jbml0aWFs bHlVbm93bmVkIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBBY3Rvck1ldGEgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFj dG9yIGdldF9hY3RvciAoKTsKKysJCXB1YmxpYyBib29sIGdldF9lbmFibGVkICgpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgc2V0X2FjdG9yIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlwdWJs aWMgdm9pZCBzZXRfZW5hYmxlZCAoYm9vbCBpc19lbmFibGVkKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBhY3RvciB7IGdl dDsgfQorKwkJcHVibGljIGJvb2wgZW5hYmxlZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3Ry aW5nIG5hbWUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9ub2RlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBBY3Rvck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIEFjdG9yTm9kZSAoQ2x1dHRlci5BY3RvciBhY3Rv cik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FsaWduX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQWxpZ25Db25zdHJhaW50 IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEFsaWdu Q29uc3RyYWludCAoQ2x1dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLkFsaWduQXhpcyBheGlz LCBmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIENsdXR0ZXIuQWxpZ25BeGlzIGdldF9hbGlnbl9h eGlzICgpOworKwkJcHVibGljIGZsb2F0IGdldF9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25f YXhpcyAoQ2x1dHRlci5BbGlnbkF4aXMgYXhpcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9y IChmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rv cj8gc291cmNlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFsaWduQXhpcyBhbGlnbl9heGlzIHsgZ2V0 OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgZmFjdG9yIHsgZ2V0OyBzZXQgY29u c3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25z dHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxwaGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEFscGhhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBD bHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHVibGljIEFscGhhICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEFscGhhLmZ1bGwgKENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUsIHVsb25nIG1vZGUpOworKwkJ cHVibGljIGRvdWJsZSBnZXRfYWxwaGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdWxvbmcgZ2V0X21vZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LlRpbWVsaW5lIGdldF90aW1lbGluZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jbG9zdXJlIChHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfZnVuYyAob3duZWQgQ2x1dHRlci5BbHBoYUZ1bmMgZnVuYyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZSAodWxvbmcg bW9kZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmUgdGlt ZWxpbmUpOworKwkJcHVibGljIGRvdWJsZSBhbHBoYSB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVsb25nIG1vZGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7 IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfYW5pbWF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBjbGFzcyBBbmltYXRpb24gOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRh YmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1 YmxpYyBBbmltYXRpb24gKCk7CisrCQlwdWJsaWMgdWludCBnZXRfZHVyYXRpb24gKCk7CisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkludGVydmFsIGdldF9pbnRlcnZhbCAoc3RyaW5nIHByb3Bl cnR5X25hbWUpOworKwkJcHVibGljIGJvb2wgZ2V0X2xvb3AgKCk7CisrCQlwdWJsaWMgdWxvbmcg Z2V0X21vZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90aW1l bGluZSAoKTsKKysJCXB1YmxpYyBib29sIGhhc19wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25h bWUpOworKwkJcHVibGljIHZvaWQgc2V0X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9sb29wIChib29sIGxvb3ApOworKwkJcHVibGljIHZvaWQgc2V0X21vZGUgKHVs b25nIG1vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X29iamVjdCAoR0xpYi5PYmplY3Qgb2JqZWN0 KTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW1lbGluZSAoQ2x1dHRlci5UaW1lbGluZT8gdGltZWxp bmUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQWxwaGEgYWxwaGEgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQg ZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgbG9vcCB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgdWxvbmcgbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBHTGliLk9iamVjdCBvYmplY3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJ cHVibGljIENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgc3RhcnRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEFueUV2ZW50IDogQ2x1 dHRlci5FdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0 YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZl bnRUeXBlIHR5cGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JhY2tlbmRfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2VuZCA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBCYWNrZW5kICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgYWRkX29wdGlvbnMgKEdMaWIuT3B0aW9uR3JvdXAgZ3JvdXApOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgY3JlYXRlX2NvbnRleHQgKCkgdGhyb3dzIEdMaWIu RXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVy LlN0YWdlV2luZG93IGNyZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGVuc3Vy ZV9jb250ZXh0IChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuU2VhdCBnZXRfZGVmYXVsdF9zZWF0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIENsdXR0ZXIuRmVhdHVyZUZsYWdzIGdldF9mZWF0dXJlcyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENhaXJvLkZvbnRPcHRpb25zIGdl dF9mb250X29wdGlvbnMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0TWV0aG9k IGdldF9pbnB1dF9tZXRob2QgKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9yZXNvbHV0aW9uICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9ldmVudHMgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1cmVzICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0 aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29s IHByZV9wYXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIHJlZHJhdyAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9vcHRpb25zIChDYWly by5Gb250T3B0aW9ucyBvcHRpb25zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9tZXRob2Qg KENsdXR0ZXIuSW5wdXRNZXRob2QgbWV0aG9kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBmb250X2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzb2x1dGlvbl9jaGFuZ2Vk ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lk IHNldHRpbmdzX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Jpbl9sYXlvdXRfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQmlu TGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJ cHVibGljIEJpbkxheW91dCAoQ2x1dHRlci5CaW5BbGlnbm1lbnQgeF9hbGlnbiA9IENsdXR0ZXIu QmluQWxpZ25tZW50LlNUQVJULCBDbHV0dGVyLkJpbkFsaWdubWVudCB5X2FsaWduID0gQ2x1dHRl ci5CaW5BbGlnbm1lbnQuU1RBUlQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24geyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IENsdXR0ZXIuQmluQWxpZ25tZW50IHlfYWxpZ24geyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9iaW5kX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQmluZENvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFp bnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckNvbnN0cmFpbnQqIildCisrCQlwdWJsaWMgQmluZENvbnN0cmFpbnQgKENsdXR0ZXIu QWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlLCBmbG9hdCBv ZmZzZXQpOworKwkJcHVibGljIENsdXR0ZXIuQmluZENvb3JkaW5hdGUgZ2V0X2Nvb3JkaW5hdGUg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb29yZGluYXRl IChDbHV0dGVyLkJpbmRDb29yZGluYXRlIGNvb3JkaW5hdGUpOworKwkJcHVibGljIHZvaWQgc2V0 X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0 ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29y ZGluYXRlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0IHsg Z2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBn ZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluZGluZ19wb29sX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEJp bmRpbmdQb29sIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEJpbmRpbmdQb29sIChzdHJpbmcgbmFtZSk7CisrCQlw dWJsaWMgYm9vbCBhY3RpdmF0ZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBt b2RpZmllcnMsIEdMaWIuT2JqZWN0IGdvYmplY3QpOworKwkJcHVibGljIHZvaWQgYmxvY2tfYWN0 aW9uIChzdHJpbmcgYWN0aW9uX25hbWUpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuQmluZGluZ1Bvb2wgZmluZCAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGZpbmRfYWN0aW9uICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlm aWVycyk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CaW5kaW5nUG9vbCBnZXRf Zm9yX2NsYXNzICh2b2lkKiBrbGFzcyk7CisrCQlwdWJsaWMgdm9pZCBpbnN0YWxsX2FjdGlvbiAo c3RyaW5nIGFjdGlvbl9uYW1lLCB1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1v ZGlmaWVycywgb3duZWQgQ2x1dHRlci5CaW5kaW5nQWN0aW9uRnVuYyBjYWxsYmFjayk7CisrCQlw dWJsaWMgdm9pZCBpbnN0YWxsX2Nsb3N1cmUgKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlf dmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJl KTsKKysJCXB1YmxpYyB2b2lkIG92ZXJyaWRlX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVy Lk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIG93bmVkIEdMaWIuQ2FsbGJhY2sgY2FsbGJhY2spOwor KwkJcHVibGljIHZvaWQgb3ZlcnJpZGVfY2xvc3VyZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1v ZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2 b2lkIHJlbW92ZV9hY3Rpb24gKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9k aWZpZXJzKTsKKysJCXB1YmxpYyB2b2lkIHVuYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25h bWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBvd25l ZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ibHVyX2VmZmVjdF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCbHVy RWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1Ymxp YyBCbHVyRWZmZWN0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQm94IDogQ2x1dHRlci5B Y3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFp bmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBCb3ggKENsdXR0ZXIuTGF5b3V0TWFuYWdlciBtYW5hZ2VyKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9s YXlvdXRfbWFuYWdlciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNr IChDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2b2lkIHBhY2tfYWZ0ZXIgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNp YmxpbmcsIC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19hdCAo Q2x1dHRlci5BY3RvciBhY3RvciwgaW50IHBvc2l0aW9uLCAuLi4pOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2b2lkIHBhY2tfYmVmb3JlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0 dGVyLkFjdG9yPyBzaWJsaW5nLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 b2lkIHBhY2t2IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFt ZSA9ICJuX3Byb3BlcnRpZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhf dHlwZSA9ICJndWludCIpXSBzdHJpbmdbXSBwcm9wZXJ0aWVzLCBbQ0NvZGUgKGFycmF5X2xlbmd0 aF9jbmFtZSA9ICJuX3Byb3BlcnRpZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9s ZW5ndGhfdHlwZSA9ICJndWludCIpXSBHTGliLlZhbHVlW10gdmFsdWVzKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw Iiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5b3V0X21hbmFnZXIgKENs dXR0ZXIuTGF5b3V0TWFuYWdlciBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBjb2xvcl9zZXQgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdl dDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQm94TGF5b3V0IDogQ2x1 dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJveExh eW91dCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfYWxpZ25tZW50 IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBvdXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwg b3V0IENsdXR0ZXIuQm94QWxpZ25tZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB1aW50IGdldF9lYXNpbmdfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHVsb25nIGdldF9lYXNpbmdfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgYm9vbCBnZXRfZXhwYW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfZmlsbCAoQ2x1dHRlci5BY3RvciBhY3Rvciwg b3V0IGJvb2wgeF9maWxsLCBvdXQgYm9vbCB5X2ZpbGwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2hvbW9nZW5lb3VzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmll bnRhdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9wYWNrX3N0YXJ0ICgpOworKwkJcHVibGlj IHVpbnQgZ2V0X3NwYWNpbmcgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wg Z2V0X3VzZV9hbmltYXRpb25zICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29s IGdldF92ZXJ0aWNhbCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNr IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBib29sIGV4cGFuZCwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9m aWxsLCBDbHV0dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVudCB5 X2FsaWduKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25tZW50 IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBDbHV0 dGVyLkJveEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCBzZXRfZWFzaW5nX2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX21vZGUgKHVsb25nIG1vZGUpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9leHBhbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3Is IGJvb2wgZXhwYW5kKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmls bCAoQ2x1dHRlci5BY3RvciBhY3RvciwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAo Ym9vbCBob21vZ2VuZW91cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X29yaWVudGF0aW9uIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9u KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYWNrX3N0YXJ0IChib29sIHBhY2tfc3RhcnQpOworKwkJ cHVibGljIHZvaWQgc2V0X3NwYWNpbmcgKHVpbnQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3VzZV9hbmltYXRpb25zIChib29sIGFuaW1hdGUpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF92ZXJ0aWNhbCAoYm9vbCB2ZXJ0aWNh bCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVpbnQgZWFzaW5nX2R1cmF0aW9uIHsg Z2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWxvbmcgZWFzaW5nX21v ZGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IGJvb2wgaG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyBib29sIHBhY2tfc3RhcnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHVpbnQgc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IGJvb2wgdXNlX2FuaW1hdGlvbnMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBib29sIHZlcnRpY2FsIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYnJp Z2h0bmVzc19jb250cmFzdF9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIEJyaWdodG5lc3NDb250cmFzdEVmZmVjdCA6IENs dXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQnJpZ2h0bmVz c0NvbnRyYXN0RWZmZWN0ICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2JyaWdodG5lc3MgKG91dCBm bG9hdCByZWQsIG91dCBmbG9hdCBncmVlbiwgb3V0IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZv aWQgZ2V0X2NvbnRyYXN0IChvdXQgZmxvYXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9h dCBibHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9icmlnaHRuZXNzIChmbG9hdCBicmlnaHRuZXNz KTsKKysJCXB1YmxpYyB2b2lkIHNldF9icmlnaHRuZXNzX2Z1bGwgKGZsb2F0IHJlZCwgZmxvYXQg Z3JlZW4sIGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRyYXN0IChmbG9hdCBj b250cmFzdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29udHJhc3RfZnVsbCAoZmxvYXQgcmVkLCBm bG9hdCBncmVlbiwgZmxvYXQgYmx1ZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBDbHV0dGVyLkNvbG9yIGJyaWdodG5lc3MgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb250cmFzdCB7IG93bmVkIGdl dDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBCdXR0b25FdmVudCA6IENsdXR0ZXIuRXZl bnQgeworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVibGljIHVpbnQzMiBidXR0b247Cisr CQlwdWJsaWMgdWludCBjbGlja19jb3VudDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXRE ZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1 YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFr IENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFn ZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0 eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfY2FudmFzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCXB1YmxpYyBjbGFzcyBDYW52YXMgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJDb250ZW50KiIpXQorKwkJcHVibGljIENhbnZhcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRf c2NhbGVfZmFjdG9yICgpOworKwkJcHVibGljIHZvaWQgc2V0X3NjYWxlX2ZhY3RvciAoZmxvYXQg c2NhbGUpOworKwkJcHVibGljIGJvb2wgc2V0X3NpemUgKGludCB3aWR0aCwgaW50IGhlaWdodCk7 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgaGVpZ2h0IHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZV9mYWN0b3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHdpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCBib29sIGRyYXcgKENhaXJvLkNvbnRleHQgY3IsIGludCB3aWR0aCwg aW50IGhlaWdodCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NoaWxkX21ldGFfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQ2hp bGRNZXRhIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIENoaWxkTWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuQWN0b3IgZ2V0X2FjdG9yICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5D b250YWluZXIgZ2V0X2NvbnRhaW5lciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGFjdG9y IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRhaW5lciBjb250YWlu ZXIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jbGlja19hY3Rpb25fZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3Mg Q2xpY2tBY3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIENs aWNrQWN0aW9uICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9hdCBw cmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJcHVibGlj IHZvaWQgcmVsZWFzZSAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wg aGVsZCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgaW50IGxvbmdfcHJlc3NfZHVyYXRpb24geyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgaW50IGxvbmdfcHJlc3NfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgcHJlc3NlZCB7IGdldDsgfQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgY2xpY2tlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBs b25nX3ByZXNzIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkxvbmdQcmVzc1N0YXRlIHN0 YXRlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2xpcF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBDbGlwTm9kZSA6IENsdXR0ZXIu UGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgQ2xpcE5vZGUgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2Nsb25lX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIGNsYXNzIENsb25lIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVu dG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlw dGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUg PSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIENsb25lIChDbHV0dGVyLkFjdG9yIHNvdXJj ZSk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGlj IENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2NvbG9yX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGNsYXNzIENvbG9yTm9kZSA6IENsdXR0ZXIuUGlwZWxpbmVOb2RlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgQ29sb3JOb2RlIChDbHV0dGVyLkNvbG9yPyBjb2xv cik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbG9yaXplX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBDb2xvcml6ZUVmZmVjdCA6 IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQ29sb3Jp emVFZmZlY3QgKENsdXR0ZXIuQ29sb3IgdGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBn ZXRfdGludCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW50IChDbHV0dGVyLkNvbG9yIHRpbnQp OworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgdGludCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQ29uc3RyYWludCA6IENsdXR0ZXIuQWN0b3JN ZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBDb25zdHJhaW50ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgdXBkYXRlX2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0 b3JCb3ggYWxsb2NhdGlvbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCB1cGRhdGVfcHJlZmVycmVkX3NpemUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuT3Jp ZW50YXRpb24gZGlyZWN0aW9uLCBmbG9hdCBmb3Jfc2l6ZSwgZmxvYXQgbWluaW11bV9zaXplLCBm bG9hdCBuYXR1cmFsX3NpemUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQ3Jvc3NpbmdFdmVudCA6 IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZp Y2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5BY3RvciByZWxhdGVkOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5FdmVudFNlcXVl bmNlIHNlcXVlbmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOwor KwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJ CXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZWZvcm1fZWZmZWN0X2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNs YXNzIERlZm9ybUVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEZWZvcm1FZmZl Y3QgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZWZvcm1fdmVy dGV4IChmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0LCBDb2dsLlRleHR1cmVWZXJ0ZXggdmVydGV4 KTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF9iYWNrX21hdGVyaWFsICgpOwor KwkJcHVibGljIHZvaWQgZ2V0X25fdGlsZXMgKG91dCB1aW50IHhfdGlsZXMsIG91dCB1aW50IHlf dGlsZXMpOworKwkJcHVibGljIHZvaWQgaW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9iYWNrX21hdGVyaWFsIChDb2dsLkhhbmRsZT8gbWF0ZXJpYWwpOworKwkJcHVibGljIHZvaWQg c2V0X25fdGlsZXMgKHVpbnQgeF90aWxlcywgdWludCB5X3RpbGVzKTsKKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIHVpbnQgeF90aWxlcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHlfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9kZXNhdHVyYXRlX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBEZXNhdHVyYXRlRWZmZWN0IDogQ2x1dHRl ci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBEZXNhdHVyYXRlRWZm ZWN0IChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2ZhY3RvciAoKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9mYWN0b3IgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGRvdWJs ZSBmYWN0b3IgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2FjdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBE cmFnQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBEcmFn QWN0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdCBk cmFnX2FyZWEpOworKwkJcHVibGljIENsdXR0ZXIuRHJhZ0F4aXMgZ2V0X2RyYWdfYXhpcyAoKTsK KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2RyYWdfaGFuZGxlICgpOworKwkJ cHVibGljIHZvaWQgZ2V0X2RyYWdfdGhyZXNob2xkIChvdXQgdWludCB4X3RocmVzaG9sZCwgb3V0 IHVpbnQgeV90aHJlc2hvbGQpOworKwkJcHVibGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKG91 dCBmbG9hdCBtb3Rpb25feCwgb3V0IGZsb2F0IG1vdGlvbl95KTsKKysJCXB1YmxpYyB2b2lkIGdl dF9wcmVzc19jb29yZHMgKG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19hcmVhIChHcmFwaGVuZS5SZWN0PyBkcmFnX2FyZWEpOwor KwkJcHVibGljIHZvaWQgc2V0X2RyYWdfYXhpcyAoQ2x1dHRlci5EcmFnQXhpcyBheGlzKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9kcmFnX2hhbmRsZSAoQ2x1dHRlci5BY3Rvcj8gaGFuZGxlKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9kcmFnX3RocmVzaG9sZCAoaW50IHhfdGhyZXNob2xkLCBpbnQgeV90 aHJlc2hvbGQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgZHJhZ19hcmVhIHsgb3duZWQgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBib29sIGRyYWdfYXJlYV9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0 dGVyLkRyYWdBeGlzIGRyYWdfYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5B Y3RvciBkcmFnX2hhbmRsZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBpbnQgeF9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeV9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFnX2JlZ2luIChDbHV0dGVyLkFjdG9yIGFj dG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBt b2RpZmllcnMpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19lbmQgKENsdXR0 ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3ksIENsdXR0ZXIuTW9k aWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFn X21vdGlvbiAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFf eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIGJvb2wgZHJhZ19wcm9ncmVzcyAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFf eCwgZmxvYXQgZGVsdGFfeSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Ryb3BfYWN0aW9uX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIERyb3BB Y3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIERyb3BBY3Rp b24gKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBjYW5fZHJvcCAoQ2x1dHRlci5B Y3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCBkcm9wIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94 LCBmbG9hdCBldmVudF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgZHJvcF9jYW5jZWwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2 ZW50X3gsIGZsb2F0IGV2ZW50X3kpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgb3Zl cl9pbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBvdmVyX291dCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVj dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBh YnN0cmFjdCBjbGFzcyBFZmZlY3QgOiBDbHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRWZmZWN0ICgpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgbW9kaWZ5X3BhaW50X3ZvbHVt ZSAoQ2x1dHRlci5QYWludFZvbHVtZSB2b2x1bWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQs IENsdXR0ZXIuRWZmZWN0UGFpbnRGbGFncyBmbGFncyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBwaWNrIChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwb3N0X3BhaW50IChDbHV0 dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCBib29sIHByZV9wYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29u dGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBxdWV1 ZV9yZXBhaW50ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlv biA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCki KV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNs YXNzIEV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEV2ZW50IChDbHV0 dGVyLkV2ZW50VHlwZSB0eXBlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50IGNvcHkgKCk7Cisr CQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBkb3VibGUgZ2V0X2FuZ2xlIChDbHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9heGVzIChvdXQgdWlu dCBuX2F4ZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQz MiBnZXRfYnV0dG9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVpbnQgZ2V0X2NsaWNrX2NvdW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQor KwkJcHVibGljIHZvaWQgZ2V0X2Nvb3JkcyAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5w dXREZXZpY2UgZ2V0X2RldmljZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV9pZCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LklucHV0RGV2aWNlVG9vbCBnZXRfZGV2aWNlX3Rvb2wgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZ2V0X2RldmljZV90 eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfZGlzdGFuY2UgKENsdXR0ZXIuRXZlbnQgdGFyZ2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X2V2 ZW50X3NlcXVlbmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuRXZlbnRGbGFncyBnZXRfZmxhZ3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2dlc3R1cmVfbW90aW9uX2RlbHRhIChvdXQgZG91 YmxlIGR4LCBvdXQgZG91YmxlIGR5KTsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVy ZVBoYXNlIGdldF9nZXN0dXJlX3BoYXNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQi KV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X2dlc3R1cmVfcGluY2hfYW5nbGVfZGVsdGEgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVy ZV9waW5jaF9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB1aW50MTYgZ2V0X2tleV9jb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVpbnQgZ2V0X2tleV9zeW1ib2wgKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRf a2V5X3VuaWNvZGUgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfbW9kZV9ncm91cCAoKTsKKysJCXB1 YmxpYyBib29sIGdldF9wYWRfZXZlbnRfZGV0YWlscyAob3V0IHVpbnQgbnVtYmVyLCBvdXQgdWlu dCBtb2RlLCBvdXQgZG91YmxlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9zaXRpb24gKEdyYXBoZW5lLlBvaW50IHBvc2l0aW9uKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X3JlbGF0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X3Njcm9sbF9kZWx0YSAob3V0IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBk eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3Jv bGxEaXJlY3Rpb24gZ2V0X3Njcm9sbF9kaXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yNiIpXQorKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZ2V0X3Njcm9s bF9maW5pc2hfZmxhZ3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJcHVi bGljIENsdXR0ZXIuU2Nyb2xsU291cmNlIGdldF9zY3JvbGxfc291cmNlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRf c291cmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfc291cmNlX2RldmljZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3N0 YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIu TW9kaWZpZXJUeXBlIGdldF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2Iild CisrCQlwdWJsaWMgdm9pZCBnZXRfc3RhdGVfZnVsbCAob3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBl IGJ1dHRvbl9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGJhc2Vfc3RhdGUsIG91dCBD bHV0dGVyLk1vZGlmaWVyVHlwZSBsYXRjaGVkX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbG9ja2VkX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgZWZmZWN0aXZlX3N0YXRl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50MzIgZ2V0X3Rp bWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0 X3RvdWNocGFkX2dlc3R1cmVfZmluZ2VyX2NvdW50ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX2V2ZW50X3R5cGUiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSBnZXRfdHlw ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNf Y29udHJvbF9tb2RpZmllciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgYm9vbCBoYXNfc2hpZnRfbW9kaWZpZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGJvb2wgaXNfcG9pbnRlcl9lbXVsYXRlZCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHB1dCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9idXR0b24gKHVpbnQzMiBidXR0 b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nv b3JkcyAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgdm9pZCBzZXRfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2Vf dG9vbCAoQ2x1dHRlci5JbnB1dERldmljZVRvb2w/IHRvb2wpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZsYWdzIChDbHV0dGVyLkV2ZW50RmxhZ3Mg ZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2tleV9jb2RlICh1aW50MTYga2V5X2NvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2tleV9zeW1ib2wgKHVpbnQga2V5X3N5bSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X3VuaWNvZGUgKHVu aWNoYXIga2V5X3VuaWNvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3JlbGF0ZWQgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX2RlbHRhIChkb3Vi bGUgZHgsIGRvdWJsZSBkeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBzZXRfc2Nyb2xsX2RpcmVjdGlvbiAoQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGly ZWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2VfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2 aWNlPyBkZXZpY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3N0YWdlIChDbHV0dGVyLlN0YWdlPyBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc3RhdGUgKENsdXR0ZXIuTW9kaWZpZXJUeXBl IHN0YXRlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF90aW1lICh1aW50MzIgdGltZV8pOworKwkJcHVibGljIENsdXR0ZXIuQW55RXZlbnQgYW55IHtb Q0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQW55RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuQnV0dG9uRXZlbnQgYnV0dG9uIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQnV0 dG9uRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBj cm9zc2luZyB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gIGdl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuS2V5RXZlbnQga2V5IHtbQ0NvZGUgKGNuYW1lID0gIihD bHV0dGVyS2V5RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuTW90aW9uRXZl bnQgbW90aW9uIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyTW90aW9uRXZlbnQgKikiKV0gIGdl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRXZlbnQgc2Nyb2xsIHtbQ0NvZGUgKGNuYW1l ID0gIihDbHV0dGVyU2Nyb2xsRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIu U3RhZ2VTdGF0ZUV2ZW50IHN0YWdlX3N0YXRlIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU3Rh Z2VTdGF0ZUV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQg dG91Y2gge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaEV2ZW50ICopIildICBnZXQ7IH0K KysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkUGluY2hFdmVudCB0b3VjaHBhZF9waW5jaCB7W0ND b2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSAgZ2V0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFN3aXBlRXZlbnQgdG91Y2hwYWRfc3dpcGUge1tDQ29k ZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFN3aXBlRXZlbnQgKikiKV0gIGdldDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlf ZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUi LCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJW0Nv bXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBFdmVu dFNlcXVlbmNlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZml4ZWRfbGF5b3V0X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEZpeGVkTGF5b3V0 IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGlj IEZpeGVkTGF5b3V0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9mbG93X2xheW91dF9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGbG93TGF5 b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVi bGljIEZsb3dMYXlvdXQgKENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfY29sdW1uX3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRf Y29sdW1uX3dpZHRoIChvdXQgZmxvYXQgbWluX3dpZHRoLCBvdXQgZmxvYXQgbWF4X3dpZHRoKTsK KysJCXB1YmxpYyBib29sIGdldF9ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkZs b3dPcmllbnRhdGlvbiBnZXRfb3JpZW50YXRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcm93 X2hlaWdodCAob3V0IGZsb2F0IG1pbl9oZWlnaHQsIG91dCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfcm93X3NwYWNpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3NuYXBfdG9fZ3JpZCAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9jb2x1bW5fc3BhY2luZyAoZmxvYXQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfY29sdW1uX3dpZHRoIChmbG9hdCBtaW5fd2lkdGgsIGZsb2F0IG1heF93aWR0aCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfaG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGlj IHZvaWQgc2V0X29yaWVudGF0aW9uIChDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlv bik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X2hlaWdodCAoZmxvYXQgbWluX2hlaWdodCwgZmxv YXQgbWF4X2hlaWdodCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X3NwYWNpbmcgKGZsb2F0IHNw YWNpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9zbmFwX3RvX2dyaWQgKGJvb2wgc25hcF90b19ncmlkKTsKKysJCXB1YmxpYyBmbG9hdCBjb2x1 bW5fc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtYXhfY29s dW1uX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGZsb2F0IG1heF9yb3dfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGZsb2F0IG1pbl9jb2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWluX3Jvd19oZWlnaHQgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0 OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgcm93X3NwYWNpbmcgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIHNuYXBf dG9fZ3JpZCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dlc3R1cmVfYWN0aW9uX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNz IEdlc3R1cmVBY3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGlj IEdlc3R1cmVBY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIHZvaWQgY2FuY2VsICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJv b2wgZ2VzdHVyZV9wcmVwYXJlIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdl dF9kZXZpY2UgKHVpbnQgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnQgZ2V0X2xhc3RfZXZlbnQgKHVpbnQgcG9pbnQp OworKwkJcHVibGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9h dCBtb3Rpb25feCwgb3V0IGZsb2F0IG1vdGlvbl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0 IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgdWludCBnZXRfbl9jdXJyZW50X3BvaW50cyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgaW50IGdldF9uX3RvdWNoX3BvaW50 cyAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9wcmVzc19jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBm bG9hdCBwcmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcmVs ZWFzZV9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCByZWxlYXNlX3gsIG91dCBmbG9hdCBy ZWxlYXNlX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBnZXRfc2VxdWVuY2UgKHVpbnQgcG9pbnQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90aHJlc2hvbGRf dHJpZ2dlcl9kaXN0YW5jZSAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIwIildCisrCQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2Ug Z2V0X3RocmVzaG9sZF90cmlnZ2VyX2VkZ2UgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMCIsIHNpbmNlID0gIjEuMTgiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkdlc3R1cmVUcmlnZ2VyRWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWdk ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0 X3ZlbG9jaXR5ICh1aW50IHBvaW50LCBvdXQgZmxvYXQgdmVsb2NpdHlfeCwgb3V0IGZsb2F0IHZl bG9jaXR5X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9uX3RvdWNoX3BvaW50cyAoaW50IG5iX3BvaW50cyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNl IChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlw dWJsaWMgdm9pZCBzZXRfdGhyZXNob2xkX3RyaWdnZXJfZWRnZSAoQ2x1dHRlci5HZXN0dXJlVHJp Z2dlckVkZ2UgZWRnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGlj IGludCBuX3RvdWNoX3BvaW50cyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xk X3RyaWdnZXJfZGlzdGFuY2VfeCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhy ZXNob2xkX3RyaWdnZXJfZGlzdGFuY2VfeSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdl IHRocmVzaG9sZF90cmlnZ2VyX2VkZ2UgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIGJvb2wgZ2VzdHVyZV9iZWdpbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBnZXN0dXJlX2NhbmNlbCAoQ2x1dHRlci5BY3Rv ciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBnZXN0dXJlX2VuZCAoQ2x1 dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJl X3Byb2dyZXNzIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JpZF9s YXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVi bGljIGNsYXNzIEdyaWRMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1h bmFnZXIqIildCisrCQlwdWJsaWMgR3JpZExheW91dCAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFj aCAoQ2x1dHRlci5BY3RvciBjaGlsZCwgaW50IGxlZnQsIGludCB0b3AsIGludCB3aWR0aCwgaW50 IGhlaWdodCk7CisrCQlwdWJsaWMgdm9pZCBhdHRhY2hfbmV4dF90byAoQ2x1dHRlci5BY3RvciBj aGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSwg aW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X2NoaWxkX2F0IChpbnQgbGVmdCwgaW50IHRvcCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29s dW1uX2hvbW9nZW5lb3VzICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2NvbHVtbl9zcGFjaW5nICgp OworKwkJcHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJ cHVibGljIGJvb2wgZ2V0X3Jvd19ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9y b3dfc3BhY2luZyAoKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9jb2x1bW4gKGludCBwb3NpdGlv bik7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfbmV4dF90byAoQ2x1dHRlci5BY3RvciBzaWJsaW5n LCBDbHV0dGVyLkdyaWRQb3NpdGlvbiBzaWRlKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9yb3cg KGludCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX2hvbW9nZW5lb3VzIChi b29sIGhvbW9nZW5lb3VzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fc3BhY2luZyAodWlu dCBzcGFjaW5nKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5Pcmll bnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X2hvbW9nZW5lb3Vz IChib29sIGhvbW9nZW5lb3VzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfc3BhY2luZyAodWlu dCBzcGFjaW5nKTsKKysJCXB1YmxpYyBib29sIGNvbHVtbl9ob21vZ2VuZW91cyB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgdWludCBjb2x1bW5fc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgYm9vbCByb3dfaG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgcm93 X3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncm91cF9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBHcm91cCA6 IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0 dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JvdXAgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIGludCBnZXRfbl9j aGlsZHJlbiAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LkFjdG9yIGdldF9udGhfY2hpbGQgKGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJl bW92ZV9hbGwgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ltYWdlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBJbWFnZSA6IEdMaWIuT2Jq ZWN0LCBDbHV0dGVyLkNvbnRlbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnRlbnQqIildCisrCQlwdWJsaWMgSW1hZ2UgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJs aWMgYm9vbCBzZXRfYXJlYSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10g ZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBwaXhlbF9mb3JtYXQsIENhaXJvLlJlY3RhbmdsZUludCBy ZWN0LCB1aW50IHJvd19zdHJpZGUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIHNldF9ieXRlcyAoR0xpYi5CeXRlcyBkYXRh LCBDb2dsLlBpeGVsRm9ybWF0IHBpeGVsX2Zvcm1hdCwgdWludCB3aWR0aCwgdWludCBoZWlnaHQs IHVpbnQgcm93X3N0cmlkZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgYm9vbCBzZXRf ZGF0YSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5Q aXhlbEZvcm1hdCBwaXhlbF9mb3JtYXQsIHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCB1aW50IHJv d19zdHJpZGUpIHRocm93cyBHTGliLkVycm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZp Y2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIElucHV0RGV2aWNlIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIElucHV0RGV2aWNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfYXNzb2NpYXRlZF9kZXZpY2Ug KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1 dEF4aXMgZ2V0X2F4aXMgKHVpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyBib29sIGdldF9heGlzX3ZhbHVlIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9 IGZhbHNlKV0gZG91YmxlW10gYXhlcywgQ2x1dHRlci5JbnB1dEF4aXMgYXhpcywgb3V0IGRvdWJs ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wg Z2V0X2Nvb3JkcyAoQ2x1dHRlci5FdmVudFNlcXVlbmNlPyBzZXF1ZW5jZSwgR3JhcGhlbmUuUG9p bnQgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBn ZXRfZGV2aWNlX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IENsdXR0ZXIuSW5wdXRNb2RlIGdldF9kZXZpY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZGV2aWNlX25hbWUgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2RldmljZV9ub2RlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdl dF9kZXZpY2VfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBib29sIGdldF9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2dyYWJiZWRfYWN0b3IgKCk7CisrCQlw dWJsaWMgdmlydHVhbCBpbnQgZ2V0X2dyb3VwX25fbW9kZXMgKGludCBncm91cCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfaGFzX2N1cnNvciAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9rZXkgKHVp bnQgaW5kZXhfLCBvdXQgdWludCBrZXl2YWwsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2Rp ZmllcnMpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIGdldF9tYXBwaW5n X21vZGUgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb2RlX3N3aXRjaF9idXR0b25fZ3JvdXAgKHVp bnQgYnV0dG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ2x1 dHRlci5Nb2RpZmllclR5cGUgZ2V0X21vZGlmaWVyX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X25fYXhlcyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9uX2tleXMgKCk7CisrCQlwdWJs aWMgaW50IGdldF9uX21vZGVfZ3JvdXBzICgpOworKwkJcHVibGljIGludCBnZXRfbl9yaW5ncyAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fc3RyaXBzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcG9pbnRlcl9hY3Rv ciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuU3RhZ2UgZ2V0X3BvaW50ZXJfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yMiIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9wcm9kdWN0X2lkICgpOworKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5TZWF0IGdldF9zZWF0ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZp Y2U+IGdldF9zbGF2ZV9kZXZpY2VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0K KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdmVuZG9yX2lkICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGdyYWIgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBpc19ncm91cGVkIChDbHV0dGVyLklucHV0RGV2 aWNlIG90aGVyX2RldmljZSk7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGlzX21vZGVfc3dpdGNo X2J1dHRvbiAodWludCBncm91cCwgdWludCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wga2V5Y29kZV90b19ldmRldiAodWludCBo YXJkd2FyZV9rZXljb2RlLCB1aW50IGV2ZGV2X2tleWNvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Igc2VxdWVuY2VfZ2V0 X2dyYWJiZWRfYWN0b3IgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2VxdWVuY2VfZ3JhYiAoQ2x1 dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXF1ZW5jZV91bmdyYWIg KENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXkgKHVpbnQgaW5k ZXhfLCB1aW50IGtleXZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9tYXBwaW5nX21vZGUgKENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIG1h cHBpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVu Z3JhYiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHVw ZGF0ZV9mcm9tX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIHVwZGF0ZV9zdGFnZSk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfZnJvbV90b29s IChDbHV0dGVyLklucHV0RGV2aWNlVG9vbCB0b29sKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBi YWNrZW5kIHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0 TW9kZSBkZXZpY2VfbW9kZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGRl dmljZV9ub2RlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9v bCBlbmFibGVkIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyBib29sIGhhc19jdXJzb3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgaW50IGlk IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGlu ZyBtYXBwaW5nX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIHVpbnQgbl9heGVzIHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fbW9kZV9n cm91cHMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGludCBuX3JpbmdzIHsgZ2V0OyBj b25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBpbnQgbl9zdHJpcHMgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgc3RyaW5nIG5hbWUgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgcHJvZHVjdF9pZCB7IGdldDsgY29u c3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5TZWF0IHNlYXQgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdmVuZG9y X2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3Rv b2xfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0RGV2aWNlVG9v bCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dERldmljZVRvb2wgKCk7CisrCQlwdWJsaWMgdWludDY0 IGdldF9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdWlu dDY0IGdldF9zZXJpYWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVi bGljIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sVHlwZSBnZXRfdG9vbF90eXBlICgpOworKwkJcHVi bGljIHVpbnQ2NCBpZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHNlcmlh bCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBD bHV0dGVyLklucHV0RGV2aWNlVG9vbFR5cGUgdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2lucHV0X2ZvY3VzX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFj dCBjbGFzcyBJbnB1dEZvY3VzIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0Rm9jdXMgKCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb21taXRfdGV4dCAoc3RyaW5nIHRl eHQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVsZXRlX3N1cnJv dW5kaW5nICh1aW50IG9mZnNldCwgdWludCBsZW4pOworKwkJcHVibGljIGJvb2wgZmlsdGVyX2tl eV9ldmVudCAoQ2x1dHRlci5LZXlFdmVudCBrZXkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgZm9jdXNfaW4gKENsdXR0ZXIuSW5wdXRNZXRob2QgaW5wdXRfbWV0aG9k KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX291dCAoKTsK KysJCXB1YmxpYyBib29sIGlzX2ZvY3VzZWQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCByZXF1ZXN0X3N1cnJvdW5kaW5nICgpOworKwkJcHVibGljIHZvaWQgcmVz ZXQgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY2FuX3Nob3dfcHJlZWRpdCAoYm9vbCBjYW5fc2hv d19wcmVlZGl0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X2hpbnRzIChDbHV0dGVyLklu cHV0Q29udGVudEhpbnRGbGFncyBoaW50KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3B1 cnBvc2UgKENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9jdXJzb3JfbG9jYXRpb24gKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfaW5wdXRfcGFuZWxfc3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRl KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9wcmVlZGl0X3Rl eHQgKHN0cmluZyBwcmVlZGl0LCB1aW50IGN1cnNvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3Vy cm91bmRpbmcgKHN0cmluZyB0ZXh0LCB1aW50IGN1cnNvciwgdWludCBhbmNob3IpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9pbnB1dF9tZXRob2RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0 IGNsYXNzIElucHV0TWV0aG9kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0TWV0aG9kICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1 dHRlci5FdmVudCBrZXkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRl ci5JbnB1dEZvY3VzIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfb3V0ICgp OworKwkJcHVibGljIHZvaWQgZm9yd2FyZF9rZXkgKHVpbnQzMiBrZXl2YWwsIHVpbnQzMiBrZXlj b2RlLCB1aW50MzIgc3RhdGUsIHVpbnQ2NCB0aW1lXywgYm9vbCBwcmVzcyk7CisrCQlwdWJsaWMg dm9pZCBub3RpZnlfa2V5X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGZpbHRlcmVk KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlc2V0ICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAo R3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0 ZSAoQ2x1dHRlci5JbnB1dFBhbmVsU3RhdGUgc3RhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3By ZWVkaXRfdGV4dCAoc3RyaW5nPyBwcmVlZGl0LCB1aW50IGN1cnNvcik7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfc3Vycm91bmRpbmcgKHN0cmluZyB0ZXh0LCB1 aW50IGN1cnNvciwgdWludCBhbmNob3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgdXBkYXRlX2NvbnRlbnRfaGludHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZs YWdzIGhpbnQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRl X2NvbnRlbnRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjYW5fc2hvd19wcmVlZGl0IHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5w dXRDb250ZW50SGludEZsYWdzIGNvbnRlbnRfaGludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGNvbnRl bnRfcHVycG9zZSB7IGdldDsgc2V0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBjb21taXQgKHN0cmluZyB0ZXh0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJz b3JfbG9jYXRpb25fY2hhbmdlZCAoR3JhcGhlbmUuUmVjdCBvYmplY3QpOworKwkJW0hhc0VtaXR0 ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9mZnNl dCwgdWludCBsZW4pOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGlucHV0X3BhbmVsX3N0YXRlIChD bHV0dGVyLklucHV0UGFuZWxTdGF0ZSBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgcmVxdWVzdF9zdXJyb3VuZGluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf aW50ZXJ2YWxfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlw dWJsaWMgY2xhc3MgSW50ZXJ2YWwgOiBHTGliLkluaXRpYWxseVVub3duZWQsIENsdXR0ZXIuU2Ny aXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwdWJsaWMgSW50ZXJ2YWwgKEdMaWIuVHlwZSBndHlwZSwgLi4uKTsKKysJCXB1YmxpYyBDbHV0 dGVyLkludGVydmFsIGNsb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHVub3duZWQgR0xpYi5WYWx1ZT8gY29tcHV0ZSAoZG91YmxlIGZhY3Rvcik7CisrCQlw dWJsaWMgdmlydHVhbCBib29sIGNvbXB1dGVfdmFsdWUgKGRvdWJsZSBmYWN0b3IsIG91dCBHTGli LlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyBHTGliLlZhbHVlIGdldF9maW5hbF92YWx1ZSAoKTsK KysJCXB1YmxpYyBHTGliLlZhbHVlIGdldF9pbml0aWFsX3ZhbHVlICgpOworKwkJcHVibGljIHZv aWQgZ2V0X2ludGVydmFsICguLi4pOworKwkJcHVibGljIEdMaWIuVHlwZSBnZXRfdmFsdWVfdHlw ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192 YWxpZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IHBlZWtfZmluYWxfdmFsdWUg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBwZWVrX2luaXRpYWxfdmFsdWUgKCk7 CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyAoR0xpYi5UeXBl IHZhbHVlX3R5cGUsIENsdXR0ZXIuUHJvZ3Jlc3NGdW5jIGZ1bmMpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9maW5hbCAoLi4uKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9maW5hbF92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2luaXRpYWwgKC4uLik7CisrCQlw dWJsaWMgdm9pZCBzZXRfaW5pdGlhbF92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfaW50ZXJ2YWwgKC4uLik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIHZhbGlk YXRlIChHTGliLlBhcmFtU3BlYyBwc3BlYyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgSW50ZXJ2YWwud2l0aF92YWx1ZXMgKEdMaWIuVHlw ZSBndHlwZSwgR0xpYi5WYWx1ZT8gaW5pdGlhbCwgR0xpYi5WYWx1ZT8gZmluYWwpOworKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IEdMaWIuVmFsdWUgZmluYWwgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUg aW5pdGlhbCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlwdWJsaWMgR0xpYi5UeXBlIHZhbHVlX3R5 cGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgS2V5RXZlbnQgOiBD bHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNl OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1aW50MTYg aGFyZHdhcmVfa2V5Y29kZTsKKysJCXB1YmxpYyB1aW50IGtleXZhbDsKKysJCXB1YmxpYyBDbHV0 dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu QWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1 YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJ cHVibGljIHVuaWNoYXIgdW5pY29kZV92YWx1ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5ZnJhbWVf dHJhbnNpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwlwdWJsaWMgY2xhc3MgS2V5ZnJhbWVUcmFuc2l0aW9uIDogQ2x1dHRlci5Qcm9wZXJ0eVRyYW5z aXRpb24sIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1YmxpYyBL ZXlmcmFtZVRyYW5zaXRpb24gKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lk IGNsZWFyICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2tleV9mcmFtZSAodWludCBpbmRleF8sIG91 dCBkb3VibGUga2V5LCBvdXQgQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUsIG91dCBHTGliLlZh bHVlIHZhbHVlKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX2tleV9mcmFtZXMgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfa2V5X2ZyYW1lICh1aW50IGluZGV4XywgZG91YmxlIGtleSwgQ2x1dHRlci5B bmltYXRpb25Nb2RlIG1vZGUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0 X2tleV9mcmFtZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fa2V5X2ZyYW1lcyIs IGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIGRv dWJsZVtdIGtleV9mcmFtZXMpOworKwkJcHVibGljIHZvaWQgc2V0X21vZGVzIChbQ0NvZGUgKGFy cmF5X2xlbmd0aF9jbmFtZSA9ICJuX21vZGVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJy YXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gQ2x1dHRlci5BbmltYXRpb25Nb2RlW10gbW9kZXMp OworKwkJcHVibGljIHZvaWQgc2V0X3ZhbHVlcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUg PSAibl92YWx1ZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9 ICJndWludCIpXSBHTGliLlZhbHVlW10gdmFsdWVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5bWFw X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBLZXltYXAgOiBHTGliLk9i amVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgS2V5bWFwICgpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRfY2Fwc19sb2Nr X3N0YXRlICgpOworKwkJcHVibGljIHZpcnR1YWwgUGFuZ28uRGlyZWN0aW9uIGdldF9kaXJlY3Rp b24gKCk7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9udW1fbG9ja19zdGF0ZSAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBzdGF0ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9s YXllcl9ub2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBMYXllck5vZGUgOiBDbHV0 dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIExheWVyTm9kZSAoQ29n bC5NYXRyaXggcHJvamVjdGlvbiwgQ2Fpcm8uUmVjdGFuZ2xlIHZpZXdwb3J0LCBmbG9hdCB3aWR0 aCwgZmxvYXQgaGVpZ2h0LCB1aW50OCBvcGFjaXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5b3V0 X21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlw dWJsaWMgYWJzdHJhY3QgY2xhc3MgTGF5b3V0TWFuYWdlciA6IEdMaWIuSW5pdGlhbGx5VW5vd25l ZCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgTGF5b3V0TWFuYWdlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUg KENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9u LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9n ZXQgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3RvciwgLi4u KTsKKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5Db250YWluZXIg Y29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXQgKENsdXR0ZXIuQ29udGFp bmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2b2lk IGNoaWxkX3NldF9wcm9wZXJ0eSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVy LkFjdG9yIGFjdG9yLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLkxheW91dE1l dGEgY3JlYXRlX2NoaWxkX21ldGEgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRl ci5BY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBl bmRfYW5pbWF0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9j aGlsZF9wcm9wZXJ0eSAoc3RyaW5nIG5hbWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIGRvdWJsZSBnZXRfYW5pbWF0aW9uX3Byb2dyZXNzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNZXRhIGdldF9j aGlsZF9tZXRhIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRfY2hp bGRfbWV0YV90eXBlICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hl aWdodCAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBmbG9hdCBmb3Jfd2lkdGgsIG91dCBm bG9hdCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXRfaGVpZ2h0X3ApOworKwkJcHVibGljIHZp cnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX3dpZHRoIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWlu ZXIsIGZsb2F0IGZvcl9oZWlnaHQsIG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0IG5h dF93aWR0aF9wKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDAuMSwgYXJyYXlfbGVu Z3RoX3R5cGUgPSAiZ3VpbnQiKV0KKysJCXB1YmxpYyBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hp bGRfcHJvcGVydGllcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2NvbnRhaW5lciAo Q2x1dHRlci5Db250YWluZXI/IGNvbnRhaW5lcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGxheW91dF9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9sYXlvdXRfbWV0YV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBMYXlvdXRNZXRhIDogQ2x1dHRlci5DaGlsZE1ldGEg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIExheW91dE1ldGEgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFn ZXIgZ2V0X21hbmFnZXIgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFn ZXIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJl ZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfbWFyZ2luX2dl dF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgY2xhc3MgTWFyZ2luIHsKKysJCXB1YmxpYyBmbG9hdCBib3R0b207CisrCQlwdWJs aWMgZmxvYXQgbGVmdDsKKysJCXB1YmxpYyBmbG9hdCByaWdodDsKKysJCXB1YmxpYyBmbG9hdCB0 b3A7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJs aWMgTWFyZ2luICgpOworKwkJcHVibGljIENsdXR0ZXIuTWFyZ2luIGNvcHkgKCk7CisrCQlwdWJs aWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgTW90aW9uRXZlbnQgOiBDbHV0 dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFn czsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5T dGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfb2Zmc2NyZWVuX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBPZmZzY3JlZW5FZmZl Y3QgOiBDbHV0dGVyLkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgT2Zmc2NyZWVuRWZmZWN0ICgpOworKwkJcHVibGljIHZp cnR1YWwgQ29nbC5IYW5kbGUgY3JlYXRlX3RleHR1cmUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWln aHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBib29sIGdldF90 YXJnZXRfcmVjdCAob3V0IHVub3duZWQgR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfdGFyZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwg b3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIHBhaW50X3RhcmdldCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3BhZ2VfdHVybl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgUGFnZVR1cm5FZmZlY3QgOiBD bHV0dGVyLkRlZm9ybUVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIFBhZ2VUdXJuRWZm ZWN0IChkb3VibGUgcGVyaW9kLCBkb3VibGUgYW5nbGUsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJs aWMgZG91YmxlIGdldF9hbmdsZSAoKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X3BlcmlvZCAoKTsK KysJCXB1YmxpYyBmbG9hdCBnZXRfcmFkaXVzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FuZ2xl IChkb3VibGUgYW5nbGUpOworKwkJcHVibGljIHZvaWQgc2V0X3BlcmlvZCAoZG91YmxlIHBlcmlv ZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcmFkaXVzIChmbG9hdCByYWRpdXMpOworKwkJcHVibGlj IGRvdWJsZSBhbmdsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZG91YmxlIHBlcmlvZCB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgcmFkaXVzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rp b24gPSAiY2x1dHRlcl9wYWludF9jb250ZXh0X3JlZiIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWlu dF9jb250ZXh0X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9wYWludF9j b250ZXh0X3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGFpbnRDb250ZXh0 IHsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZy YW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHBvcF9mcmFtZWJ1 ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHB1c2hfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZm ZXIgZnJhbWVidWZmZXIpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludENvbnRleHQg QHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWlu dF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBhYnN0cmFjdCBjbGFzcyBQYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBhaW50Tm9kZSAoKTsKKysJCXB1Ymxp YyB2b2lkIGFkZF9jaGlsZCAoQ2x1dHRlci5QYWludE5vZGUgY2hpbGQpOworKwkJcHVibGljIHZv aWQgYWRkX211bHRpdGV4dHVyZV9yZWN0YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxv YXQgdGV4dF9jb29yZHMsIHVpbnQgdGV4dF9jb29yZHNfbGVuKTsKKysJCXB1YmxpYyB2b2lkIGFk ZF9yZWN0YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBhZGRf dGV4dHVyZV9yZWN0YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgeF8xLCBmbG9h dCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJh bWVidWZmZXIgZ2V0X2ZyYW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgcGFpbnQgKENsdXR0 ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5QYWludE5vZGUgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFt ZSk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29w eSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bh aW50X3ZvbHVtZV9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgUGFpbnRWb2x1bWUgeworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuUGFpbnRWb2x1bWUgY29weSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3Jp Z2luIChvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0 aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBzZXRfZnJv bV9hbGxvY2F0aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9oZWlnaHQgKGZsb2F0IGhlaWdodCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChHcmFw aGVuZS5Qb2ludDNEIG9yaWdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgdm9pZCBzZXRfd2lkdGggKGZsb2F0IHdpZHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHVuaW9uIChDbHV0dGVyLlBhaW50Vm9sdW1lIGFub3Ro ZXJfcHYpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVu aW9uX2JveCAoQ2x1dHRlci5BY3RvckJveCBib3gpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYW5fYWN0 aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1Ymxp YyBjbGFzcyBQYW5BY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0K KysJCXB1YmxpYyBQYW5BY3Rpb24gKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hY2NlbGVyYXRp b25fZmFjdG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfY29uc3RyYWluZWRfbW90aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQg ZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJcHVibGljIGRvdWJsZSBnZXRfZGVjZWxl cmF0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2ludGVycG9sYXRlICgpOworKwkJcHVibGlj IHZvaWQgZ2V0X2ludGVycG9sYXRlZF9jb29yZHMgKG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeCwg b3V0IGZsb2F0IGludGVycG9sYXRlZF95KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaW50ZXJwb2xh dGVkX2RlbHRhIChvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRz ICh1aW50IHBvaW50LCBvdXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25f ZGVsdGEgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7 CisrCQlwdWJsaWMgQ2x1dHRlci5QYW5BeGlzIGdldF9wYW5fYXhpcyAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9hY2NlbGVyYXRpb25fZmFjdG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9kZWNlbGVyYXRpb24gKGRvdWJsZSByYXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9p bnRlcnBvbGF0ZSAoYm9vbCBzaG91bGRfaW50ZXJwb2xhdGUpOworKwkJcHVibGljIHZvaWQgc2V0 X3Bhbl9heGlzIChDbHV0dGVyLlBhbkF4aXMgYXhpcyk7CisrCQlwdWJsaWMgZG91YmxlIGFjY2Vs ZXJhdGlvbl9mYWN0b3IgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGRvdWJsZSBkZWNlbGVyYXRp b24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgaW50ZXJwb2xhdGUgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIENsdXR0ZXIuUGFuQXhpcyBwYW5fYXhpcyB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBwYW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wg aXNfaW50ZXJwb2xhdGVkKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhbl9zdG9w cGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicGFyYW1fdW5p dHMiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFyYW1fdW5pdHNfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIFBhcmFtU3BlY1VuaXQgOiBHTGliLlBhcmFtU3BlYyB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGFyYW1TcGVjVW5p dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBQYXRoIDogR0xpYi5Jbml0aWFsbHlVbm93 bmVkIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1 YmxpYyBQYXRoICgpOworKwkJcHVibGljIHZvaWQgYWRkX2NhaXJvX3BhdGggKENhaXJvLlBhdGgg Y3BhdGgpOworKwkJcHVibGljIHZvaWQgYWRkX2Nsb3NlICgpOworKwkJcHVibGljIHZvaWQgYWRk X2N1cnZlX3RvIChpbnQgeF8xLCBpbnQgeV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQgeF8zLCBp bnQgeV8zKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJ cHVibGljIHZvaWQgYWRkX21vdmVfdG8gKGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBh ZGRfbm9kZSAoQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxf Y3VydmVfdG8gKGludCB4XzEsIGludCB5XzEsIGludCB4XzIsIGludCB5XzIsIGludCB4XzMsIGlu dCB5XzMpOworKwkJcHVibGljIHZvaWQgYWRkX3JlbF9saW5lX3RvIChpbnQgeCwgaW50IHkpOwor KwkJcHVibGljIHZvaWQgYWRkX3JlbF9tb3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGlj IGJvb2wgYWRkX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsK KysJCXB1YmxpYyB2b2lkIEBmb3JlYWNoIChDbHV0dGVyLlBhdGhDYWxsYmFjayBjYWxsYmFjayk7 CisrCQlwdWJsaWMgc3RyaW5nIGdldF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdl dF9sZW5ndGggKCk7CisrCQlwdWJsaWMgdWludCBnZXRfbl9ub2RlcyAoKTsKKysJCXB1YmxpYyBD bHV0dGVyLlBhdGhOb2RlIGdldF9ub2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgR0xpYi5T TGlzdDx3ZWFrIENsdXR0ZXIuUGF0aE5vZGU/PiBnZXRfbm9kZXMgKCk7CisrCQlwdWJsaWMgdWlu dCBnZXRfcG9zaXRpb24gKGRvdWJsZSBwcm9ncmVzcywgb3V0IENsdXR0ZXIuS25vdCBwb3NpdGlv bik7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfbm9kZSAoaW50IGluZGV4XywgQ2x1dHRlci5QYXRo Tm9kZSBub2RlKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9ub2RlICh1aW50IGluZGV4Xyk7Cisr CQlwdWJsaWMgdm9pZCByZXBsYWNlX25vZGUgKHVpbnQgaW5kZXhfLCBDbHV0dGVyLlBhdGhOb2Rl IG5vZGUpOworKwkJcHVibGljIGJvb2wgc2V0X2Rlc2NyaXB0aW9uIChzdHJpbmcgc3RyKTsKKysJ CXB1YmxpYyB2b2lkIHRvX2NhaXJvX3BhdGggKENhaXJvLkNvbnRleHQgY3IpOworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFBhdGgud2l0aF9k ZXNjcmlwdGlvbiAoc3RyaW5nIGRlc2MpOworKwkJcHVibGljIHN0cmluZyBkZXNjcmlwdGlvbiB7 IG93bmVkIGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfcGF0aF9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGNsYXNzIFBhdGhDb25zdHJhaW50IDogQ2x1dHRlci5D b25zdHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIFBhdGhDb25zdHJhaW50IChD bHV0dGVyLlBhdGg/IHBhdGgsIGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X29m ZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGF0aCBnZXRfcGF0aCAoKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9vZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcGF0aCAoQ2x1dHRlci5QYXRoPyBwYXRoKTsKKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuUGF0aCBwYXRoIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBub2RlX3JlYWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIHVp bnQgaW5kZXgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHJlZl9mdW5jdGlvbiA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF9yZWYiLCB0eXBl X2lkID0gImNsdXR0ZXJfcGlja19jb250ZXh0X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24g PSAiY2x1dHRlcl9waWNrX2NvbnRleHRfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBj bGFzcyBQaWNrQ29udGV4dCB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5QaWNrQ29udGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5y ZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpcGVsaW5lX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFBpcGVsaW5lTm9kZSA6 IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQaXBlbGluZU5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3Byb3BlcnR5X3RyYW5zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFByb3BlcnR5VHJhbnNpdGlvbiA6IENsdXR0ZXIuVHJh bnNpdGlvbiwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGlj IFByb3BlcnR5VHJhbnNpdGlvbiAoc3RyaW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfcHJvcGVydHlfbmFtZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9w cm9wZXJ0eV9uYW1lIChzdHJpbmc/IHByb3BlcnR5X25hbWUpOworKwkJcHVibGljIHN0cmluZyBw cm9wZXJ0eV9uYW1lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVjdGFuZ2xlX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNz IFJlY3RhbmdsZSA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5Bbmlt YXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rvcioi KV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgUmVjdGFuZ2xlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9ib3JkZXJfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIp XQorKwkJcHVibGljIHVpbnQgZ2V0X2JvcmRlcl93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRlcl9j b2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2JvcmRlcl93aWR0aCAodWludCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgUmVjdGFuZ2xlLndpdGhfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGlj IENsdXR0ZXIuQ29sb3IgYm9yZGVyX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50 IGJvcmRlcl93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xv ciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhh c19ib3JkZXIgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yb290X25vZGVfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFJvb3ROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl clBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBSb290Tm9kZSAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFt ZWJ1ZmZlciwgQ2x1dHRlci5Db2xvciBjbGVhcl9jb2xvciwgQ29nbC5CdWZmZXJCaXQgY2xlYXJf ZmxhZ3MpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yb3RhdGVfYWN0aW9uX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBSb3RhdGVBY3Rpb24g OiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBSb3RhdGVB Y3Rpb24gKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCByb3RhdGUgKENsdXR0ZXIu QWN0b3IgYWN0b3IsIGRvdWJsZSBhbmdsZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjcmlwdF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBjbGFzcyBT Y3JpcHQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwdWJsaWMgU2NyaXB0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZvaWQgYWRkX3NlYXJjaF9wYXRocyAoW0NDb2RlIChhcnJheV9sZW5n dGhfY25hbWUgPSAibl9wYXRocyIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0 aF90eXBlID0gImdzaXplIildIHN0cmluZ1tdIHBhdGhzKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgdm9pZCBhZGRfc3RhdGVzIChzdHJpbmc/IG5hbWUsIENsdXR0ZXIuU3RhdGUgc3Rh dGUpOworKwkJcHVibGljIHZvaWQgY29ubmVjdF9zaWduYWxzICh2b2lkKiB1c2VyX2RhdGEpOwor KwkJcHVibGljIHZvaWQgY29ubmVjdF9zaWduYWxzX2Z1bGwgKENsdXR0ZXIuU2NyaXB0Q29ubmVj dEZ1bmMgZnVuYyk7CisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfb2JqZWN0cyAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIEdMaWIuT2JqZWN0IGdldF9vYmplY3QgKHN0cmluZyBuYW1lKTsKKysJCXB1Ymxp YyBpbnQgZ2V0X29iamVjdHMgKC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5TdGF0ZSBnZXRfc3RhdGVzIChzdHJpbmc/IG5hbWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdHJhbnNs YXRpb25fZG9tYWluICgpOworKwkJcHVibGljIHZpcnR1YWwgR0xpYi5UeXBlIGdldF90eXBlX2Zy b21fbmFtZSAoc3RyaW5nIHR5cGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgR0xpYi5PYmplY3Q+IGxpc3Rfb2JqZWN0cyAoKTsK KysJCXB1YmxpYyB1aW50IGxvYWRfZnJvbV9kYXRhIChzdHJpbmcgZGF0YSwgc3NpemVfdCBsZW5n dGgpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2ZpbGUgKHN0 cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX3Jlc291cmNlIChzdHJpbmcgcmVzb3Vy Y2VfcGF0aCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgc3RyaW5nIGxvb2t1cF9maWxlbmFtZSAoc3RyaW5nIGZpbGVuYW1lKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRp b25fZG9tYWluIChzdHJpbmc/IGRvbWFpbik7CisrCQlwdWJsaWMgdm9pZCB1bm1lcmdlX29iamVj dHMgKHVpbnQgbWVyZ2VfaWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3Ry aW5nIGZpbGVuYW1lIHsgb3duZWQgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBib29sIGZpbGVuYW1lX3NldCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBzdHJpbmcgdHJhbnNsYXRpb25fZG9tYWluIHsgZ2V0OyBzZXQ7IH0K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX2FjdG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBTY3JvbGxBY3RvciA6IENsdXR0ZXIu QWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRh aW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBTY3JvbGxB Y3RvciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbE1vZGUgZ2V0X3Njcm9sbF9tb2RlICgp OworKwkJcHVibGljIHZvaWQgc2Nyb2xsX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7 CisrCQlwdWJsaWMgdm9pZCBzY3JvbGxfdG9fcmVjdCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJ CXB1YmxpYyB2b2lkIHNldF9zY3JvbGxfbW9kZSAoQ2x1dHRlci5TY3JvbGxNb2RlIG1vZGUpOwor KwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsTW9kZSBzY3JvbGxfbW9kZSB7IGdldDsgc2V0OyB9Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4y IildCisrCXB1YmxpYyBjbGFzcyBTY3JvbGxFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVi bGljIGRvdWJsZSBheGVzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZp Y2U7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uOworKwkJcHVi bGljIENsdXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZmluaXNoX2ZsYWdzOworKwkJcHVibGljIENs dXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBt b2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291 cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGlj IENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBm bG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zZWF0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBh YnN0cmFjdCBjbGFzcyBTZWF0IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNlYXQgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhcHBseV9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1 dHRlci5LYmRBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBi ZWxsX25vdGlmeSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29tcHJlc3NfbW90aW9uIChD bHV0dGVyLkV2ZW50IGV2ZW50LCBDbHV0dGVyLkV2ZW50IHRvX2Rpc2NhcmQpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29weV9ldmVudF9kYXRhIChDbHV0dGVyLkV2 ZW50IHNyYywgQ2x1dHRlci5FdmVudCBkZXN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIu VmlydHVhbElucHV0RGV2aWNlIGNyZWF0ZV92aXJ0dWFsX2RldmljZSAoQ2x1dHRlci5JbnB1dERl dmljZVR5cGUgZGV2aWNlX3R5cGUpOworKwkJcHVibGljIHZvaWQgZW5zdXJlX2ExMXlfc3RhdGUg KCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmcmVlX2V2ZW50X2Rh dGEgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJcHVibGljIHZvaWQgZ2V0X2tiZF9hMTF5X3Nl dHRpbmdzIChDbHV0dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmly dHVhbCB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2tleWJvYXJkICgpOworKwkJcHVi bGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLktleW1hcCBnZXRfa2V5bWFwICgpOworKwkJcHVi bGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9wb2ludGVyICgpOwor KwkJcHVibGljIHZvaWQgZ2V0X3BvaW50ZXJfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5Qb2ludGVy QTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVh bERldmljZVR5cGUgZ2V0X3N1cHBvcnRlZF92aXJ0dWFsX2RldmljZV90eXBlcyAoKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGxpc3RfZGV2 aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5L YmRBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTEx eV9kd2VsbF9jbGlja190eXBlIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xp Y2tfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRlcl9hMTF5X3NldHRpbmdzIChDbHV0 dGVyLlBvaW50ZXJBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9p ZCB3YXJwX3BvaW50ZXIgKGludCB4LCBpbnQgeSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBDbHV0dGVyLkJhY2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGV2aWNlX2FkZGVkIChDbHV0dGVyLklucHV0RGV2aWNl IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGV2aWNlX3JlbW92ZWQgKENsdXR0ZXIu SW5wdXREZXZpY2Ugb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9mbGFn c19jaGFuZ2VkICh1aW50IHNldHRpbmdzX2ZsYWdzLCB1aW50IGNoYW5nZWRfbWFzayk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQga2JkX2ExMXlfbW9kc19zdGF0ZV9jaGFuZ2VkICh1aW50IGxhdGNo ZWRfbWFzaywgdWludCBsb2NrZWRfbWFzayk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2Ex MXlfZHdlbGxfY2xpY2tfdHlwZV9jaGFuZ2VkIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlj a1R5cGUgY2xpY2tfdHlwZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfdGltZW91 dF9zdGFydGVkIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2ludGVyQTEx eVRpbWVvdXRUeXBlIHRpbWVvdXRfdHlwZSwgdWludCBkZWxheSk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgcHRyX2ExMXlfdGltZW91dF9zdG9wcGVkIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmlj ZSwgQ2x1dHRlci5Qb2ludGVyQTExeVRpbWVvdXRUeXBlIHRpbWVvdXRfdHlwZSwgYm9vbCBjbGlj a2VkKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0b29sX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXRE ZXZpY2Ugb2JqZWN0LCBDbHV0dGVyLklucHV0RGV2aWNlVG9vbCBwMCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3NldHRpbmdzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJcHVibGljIGNsYXNzIFNldHRpbmdzIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNldHRpbmdzICgpOwor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuU2V0dGluZ3MgZ2V0X2RlZmF1bHQgKCk7 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1 dHRlci5CYWNrZW5kIGJhY2tlbmQgeyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBkbmRfZHJhZ190 aHJlc2hvbGQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg aW50IGRvdWJsZV9jbGlja19kaXN0YW5jZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBpbnQgZG91YmxlX2NsaWNrX3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGZvbnRfYW50aWFsaWFzIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2RwaSB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9o aW50X3N0eWxlIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGludCBmb250X2hpbnRpbmcgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfbmFtZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9zdWJwaXhlbF9vcmRlciB7 IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50 IGZvbnRjb25maWdfdGltZXN0YW1wIHsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc19kdXJh dGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50 IHBhc3N3b3JkX2hpbnRfdGltZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBpbnQgdW5zY2FsZWRfZm9udF9kcGkgeyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkZXIgeworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zaGFkZXJfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZm ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJFZmZlY3QqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgU2hhZGVyRWZmZWN0IChDbHV0dGVyLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVi bGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X3Byb2dyYW0gKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBDb2dsLkhhbmRsZSBnZXRfc2hhZGVyICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHN0cmluZyBnZXRfc3RhdGljX3NoYWRlcl9zb3VyY2UgKCk7CisrCQlwdWJsaWMgYm9v bCBzZXRfc2hhZGVyX3NvdXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRf dW5pZm9ybV92YWx1ZSAoc3RyaW5nIG5hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlIHsg Y29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9mbG9hdF9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyRmxvYXQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNoYWRlckZsb2F0ICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zaGFkZXJfaW50X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFk ZXJJbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFNoYWRlckludCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX21hdHJpeF9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyTWF0cml4IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJNYXRy aXggKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NuYXBfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBjbGFzcyBTbmFwQ29uc3RyYWlu dCA6IENsdXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBTbmFw Q29uc3RyYWludCAoQ2x1dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLlNuYXBFZGdlIGZyb21f ZWRnZSwgQ2x1dHRlci5TbmFwRWRnZSB0b19lZGdlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGlj IHZvaWQgZ2V0X2VkZ2VzIChvdXQgQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIG91dCBDbHV0 dGVyLlNuYXBFZGdlIHRvX2VkZ2UpOworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfZWRnZXMgKENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBF ZGdlIHRvX2VkZ2UpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsK KysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSB7 IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0 IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQg Y29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNu YXBFZGdlIHRvX2VkZ2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf c3RhZ2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJs aWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLkdyb3VwLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIu QW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 b3IqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgU3RhZ2UgKCk7 CisrCQlwdWJsaWMgYm9vbCBjYXB0dXJlIChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJbnQg cmVjdCwgQ2x1dHRlci5DYXB0dXJlIGNhcHR1cmVzLCBpbnQgbl9jYXB0dXJlcyk7CisrCQlwdWJs aWMgdm9pZCBjYXB0dXJlX2ludG8gKGJvb2wgcGFpbnQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0 LCB1aW50OCBkYXRhKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9zdGFnZV9ldmVudCIp XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVu dCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX2N1cnJlbnQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfcmVkcmF3ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3Zp ZXdwb3J0ICgpOworKwkJcHVibGljIHZvaWQgZnJlZXplX3VwZGF0ZXMgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYWNjZXB0X2ZvY3VzICgpOwor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3JfYXRfcG9zIChDbHV0dGVy LlBpY2tNb2RlIHBpY2tfbW9kZSwgZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfY2FwdHVyZV9maW5hbF9zaXplIChDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgaW50IHdpZHRo LCBpbnQgaGVpZ2h0LCBmbG9hdCBzY2FsZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig Z2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlN0YWdl IGdldF9kZWZhdWx0ICgpOworKwkJcHVibGljIGludDY0IGdldF9mcmFtZV9jb3VudGVyICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5B Y3RvciBnZXRfa2V5X2ZvY3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X21pbmltdW1fc2l6ZSAob3V0IHVpbnQgd2lkdGgsIG91dCB1aW50IGhl aWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRf bW90aW9uX2V2ZW50c19lbmFibGVkICgpOworKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUg Z2V0X3BlcnNwZWN0aXZlICgpOworKwkJcHVibGljIENhaXJvLlJlZ2lvbiBnZXRfcmVkcmF3X2Ns aXAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRf dGhyb3R0bGVfbW90aW9uX2V2ZW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0K KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdGl0bGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdXNlX2FscGhhICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgaGlkZV9jdXJzb3IgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgaXNfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZWRyYXcgKCk7CisrCQlbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB1aW50OFtdIHJlYWRfcGl4ZWxzIChpbnQgeCwg aW50IHksIGludCB3aWR0aCA9IC0xLCBpbnQgaGVpZ2h0ID0gLTEpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3JlZHJhdyIpXQorKwkJcHVibGljIHZvaWQgcmVkcmF3ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FjY2VwdF9mb2N1cyAo Ym9vbCBhY2NlcHRfZm9jdXMpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRl ci5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dm9pZCBzZXRfa2V5X2ZvY3VzIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWluaW11bV9zaXplICh1aW50IHdp ZHRoLCB1aW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBzZXRfbW90aW9uX2V2ZW50c19lbmFibGVkIChib29sIGVuYWJsZWQpOworKwkJcHVi bGljIHZvaWQgc2V0X3BlcnNwZWN0aXZlIChDbHV0dGVyLlBlcnNwZWN0aXZlIHBlcnNwZWN0aXZl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJv dHRsZV9tb3Rpb25fZXZlbnRzIChib29sIHRocm90dGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VfYWxwaGEgKGJv b2wgdXNlX2FscGhhKTsKKysJCXB1YmxpYyB2b2lkIHNob3dfY3Vyc29yICgpOworKwkJcHVibGlj IHZvaWQgdGhhd191cGRhdGVzICgpOworKwkJcHVibGljIHZvaWQgdXBkYXRlX3Jlc291cmNlX3Nj YWxlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGFj Y2VwdF9mb2N1cyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29s b3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBj dXJzb3JfdmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBrZXlfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgcGVy c3BlY3RpdmUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJ cHVibGljIHN0cmluZyB0aXRsZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgYm9vbCB1c2VfYWxwaGEgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZh dGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIHNpZ25hbCB2 b2lkIGFmdGVyX3BhaW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZGVhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGRlbGV0ZV9ldmVudCAo Q2x1dHRlci5FdmVudCBldmVudCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWlu dF92aWV3IChDbHV0dGVyLlN0YWdlVmlldyB2aWV3KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vf bWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBjbGFzcyBTdGFnZU1hbmFnZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VNYW5hZ2VyICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IENsdXR0ZXIuU3RhZ2VNYW5hZ2VyIGdldF9kZWZhdWx0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfZGVmYXVsdF9z dGFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBHTGliLlNM aXN0PHdlYWsgQ2x1dHRlci5TdGFnZT4gbGlzdF9zdGFnZXMgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBHTGliLlNMaXN0PENsdXR0ZXIuU3RhZ2U+IHBlZWtfc3RhZ2VzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuU3RhZ2UgZGVmYXVsdF9zdGFnZSB7 IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIHZvaWQgc3RhZ2VfYWRkZWQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhZ2Vf cmVtb3ZlZCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtD b21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBTdGFn ZVN0YXRlRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3Rh dGUgY2hhbmdlZF9tYXNrOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGUgbmV3X3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1 dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOwor KwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX3ZpZXdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFN0YWdlVmlldyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFnZVZpZXcgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2 b2lkIGdldF9sYXlvdXQgKENhaXJvLlJlY3RhbmdsZUludCByZWN0KTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgZ2V0X29mZnNjcmVlbl90cmFuc2Zvcm1hdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4 IG1hdHJpeCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9vbnNjcmVl biAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfc2NhbGUgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnZh bGlkYXRlX29mZnNjcmVlbl9ibGl0X3BpcGVsaW5lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgc2V0dXBfb2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUgKENvZ2wuUGlw ZWxpbmUgcGlwZWxpbmUpOworKwkJcHVibGljIHZvaWQgdHJhbnNmb3JtX3RvX29uc2NyZWVuIChm bG9hdCB4LCBmbG9hdCB5KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENhaXJv LlJlY3RhbmdsZUludCBsYXlvdXQgeyBvd25lZCBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IHNjYWxlIHsgZ2V0OyBzZXQgY29uc3Ry dWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFN0YXRlIDogR0xpYi5PYmplY3QsIENs dXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIFN0YXRlICgpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3Rh dGVfbmFtZSwgc3RyaW5nPyB0YXJnZXRfc3RhdGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgc3RyaW5nPiBnZXRfc3RhdGVzICgpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vf c3RhdGVfbmFtZSwgc3RyaW5nPyB0YXJnZXRfc3RhdGVfbmFtZSwgdWludCBkdXJhdGlvbik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGF0ZSBzZXRfa2V5 IChzdHJpbmc/IHNvdXJjZV9zdGF0ZV9uYW1lLCBzdHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUsIEdM aWIuT2JqZWN0IG9iamVjdCwgc3RyaW5nIHByb3BlcnR5X25hbWUsIHVpbnQgbW9kZSwgR0xpYi5W YWx1ZSB2YWx1ZSwgZG91YmxlIHByZV9kZWxheSwgZG91YmxlIHBvc3RfZGVsYXkpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgc2V0X3N0YXRl IChzdHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgd2FycF90b19zdGF0ZSAoc3RyaW5nIHRhcmdldF9z dGF0ZV9uYW1lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB1aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBzdHJpbmcgc3RhdGUgeyBvd25lZCBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGNvbXBsZXRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rp b24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRlX2tleV9nZXRfdHlw ZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJs aWMgY2xhc3MgU3RhdGVLZXkgeworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLlR5 cGUgZ2V0X3Byb3BlcnR5X3R5cGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2FjdGlvbl9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFz cyBTd2lwZUFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJ cHVibGljIFN3aXBlQWN0aW9uICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTQiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIHN3ZXB0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlN3aXBl RGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgc3dpcGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENs dXR0ZXIuU3dpcGVEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGFwX2Fj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJs aWMgY2xhc3MgVGFwQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIild CisrCQlwdWJsaWMgVGFwQWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg dGFwIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBUZXh0 IDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENs dXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVi bGljIFRleHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGlu dCBjb29yZHNfdG9fcG9zaXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHZvaWQg ZGVsZXRlX2NoYXJzICh1aW50IG5fY2hhcnMpOworKwkJcHVibGljIGJvb2wgZGVsZXRlX3NlbGVj dGlvbiAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBUZXh0LmZ1bGwgKHN0cmluZyBmb250X25h bWUsIHN0cmluZyB0ZXh0LCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyBib29sIGdl dF9hY3RpdmF0YWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIFBhbmdvLkF0dHJMaXN0IGdldF9h dHRyaWJ1dGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuVGV4dEJ1ZmZlciBnZXRfYnVmZmVyICgpOworKwkJcHVibGljIHN0cmlu ZyBnZXRfY2hhcnMgKHNzaXplX3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVi bGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig Z2V0X2N1cnNvcl9jb2xvciAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnNvcl9wb3NpdGlvbiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY3Vy c29yX3JlY3QgKG91dCB1bm93bmVkIEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdWlu dCBnZXRfY3Vyc29yX3NpemUgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY3Vyc29yX3Zpc2libGUg KCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZWRpdGFibGUgKCk7CisrCQlwdWJsaWMgUGFuZ28uRWxs aXBzaXplTW9kZSBnZXRfZWxsaXBzaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIFBhbmdvLkZvbnREZXNjcmlwdGlvbiBnZXRfZm9udF9kZXNjcmlwdGlvbiAo KTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZm9udF9uYW1lICgpOworKwkJcHVibGlj IENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGdldF9pbnB1dF9oaW50cyAoKTsKKysJCXB1 YmxpYyBDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgZ2V0X2lucHV0X3B1cnBvc2UgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfanVzdGlmeSAo KTsKKysJCXB1YmxpYyB1bm93bmVkIFBhbmdvLkxheW91dCBnZXRfbGF5b3V0ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2xheW91dF9vZmZzZXRz IChvdXQgaW50IHgsIG91dCBpbnQgeSk7CisrCQlwdWJsaWMgUGFuZ28uQWxpZ25tZW50IGdldF9s aW5lX2FsaWdubWVudCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9saW5lX3dyYXAgKCk7CisrCQlw dWJsaWMgUGFuZ28uV3JhcE1vZGUgZ2V0X2xpbmVfd3JhcF9tb2RlICgpOworKwkJcHVibGljIGlu dCBnZXRfbWF4X2xlbmd0aCAoKTsKKysJCXB1YmxpYyB1bmljaGFyIGdldF9wYXNzd29yZF9jaGFy ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3NlbGVjdGFibGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfc2VsZWN0ZWRfdGV4dF9j b2xvciAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyBp bnQgZ2V0X3NlbGVjdGlvbl9ib3VuZCAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9z ZWxlY3Rpb25fY29sb3IgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfc2luZ2xlX2xpbmVfbW9kZSAo KTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdGV4dCAoKTsKKysJCXB1YmxpYyBib29s IGdldF91c2VfbWFya3VwICgpOworKwkJcHVibGljIGJvb2wgaGFzX3ByZWVkaXQgKCk7CisrCQlw dWJsaWMgdm9pZCBpbnNlcnRfdGV4dCAoc3RyaW5nIHRleHQsIHNzaXplX3QgcG9zaXRpb24pOwor KwkJcHVibGljIHZvaWQgaW5zZXJ0X3VuaWNoYXIgKHVuaWNoYXIgd2MpOworKwkJcHVibGljIGJv b2wgcG9zaXRpb25fdG9fY29vcmRzIChpbnQgcG9zaXRpb24sIG91dCBmbG9hdCB4LCBvdXQgZmxv YXQgeSwgb3V0IGZsb2F0IGxpbmVfaGVpZ2h0ID0gbnVsbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf YWN0aXZhdGFibGUgKGJvb2wgYWN0aXZhdGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2F0dHJp YnV0ZXMgKFBhbmdvLkF0dHJMaXN0PyBhdHRycyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2J1ZmZlciAoQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZl cik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJ cHVibGljIHZvaWQgc2V0X2N1cnNvcl9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJ cHVibGljIHZvaWQgc2V0X2N1cnNvcl9wb3NpdGlvbiAoaW50IHBvc2l0aW9uKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9jdXJzb3Jfc2l6ZSAoaW50IHNpemUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1 cnNvcl92aXNpYmxlIChib29sIGN1cnNvcl92aXNpYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9l ZGl0YWJsZSAoYm9vbCBlZGl0YWJsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWxsaXBzaXplIChQ YW5nby5FbGxpcHNpemVNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X2ZvbnRfZGVzY3JpcHRpb24gKFBhbmdvLkZvbnREZXNjcmlwdGlv biBmb250X2Rlc2MpOworKwkJcHVibGljIHZvaWQgc2V0X2ZvbnRfbmFtZSAoc3RyaW5nPyBmb250 X25hbWUpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X2hpbnRzIChDbHV0dGVyLklucHV0Q29u dGVudEhpbnRGbGFncyBoaW50cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcHVycG9zZSAo Q2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJcHVibGljIHZvaWQgc2V0 X2p1c3RpZnkgKGJvb2wganVzdGlmeSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGluZV9hbGlnbm1l bnQgKFBhbmdvLkFsaWdubWVudCBhbGlnbm1lbnQpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVf d3JhcCAoYm9vbCBsaW5lX3dyYXApOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcF9tb2Rl IChQYW5nby5XcmFwTW9kZSB3cmFwX21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X21hcmt1cCAo c3RyaW5nPyBtYXJrdXApOworKwkJcHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXgp OworKwkJcHVibGljIHZvaWQgc2V0X3Bhc3N3b3JkX2NoYXIgKHVuaWNoYXIgd2MpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfc3RyaW5n IChzdHJpbmc/IHByZWVkaXRfc3RyLCBQYW5nby5BdHRyTGlzdD8gcHJlZWRpdF9hdHRycywgdWlu dCBjdXJzb3JfcG9zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3RhYmxlIChib29sIHNlbGVj dGFibGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3NlbGVjdGVkX3RleHRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9zZWxlY3Rpb24gKHNzaXplX3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOwor KwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGlvbl9ib3VuZCAoaW50IHNlbGVjdGlvbl9ib3VuZCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0aW9uX2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xv cik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2luZ2xlX2xpbmVfbW9kZSAoYm9vbCBzaW5nbGVfbGlu ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGV4dCAoc3RyaW5nPyB0ZXh0KTsKKysJCXB1YmxpYyB2 b2lkIHNldF91c2VfbWFya3VwIChib29sIHNldHRpbmcpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX3RleHRfYWN0aXZhdGUiKV0KKysJCXB1YmxpYyBib29sIHRyeV9hY3RpdmF0ZSAoKTsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgVGV4 dC53aXRoX2J1ZmZlciAoQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisr CQlwdWJsaWMgVGV4dC53aXRoX3RleHQgKHN0cmluZz8gZm9udF9uYW1lLCBzdHJpbmcgdGV4dCk7 CisrCQlwdWJsaWMgYm9vbCBhY3RpdmF0YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFu Z28uQXR0ckxpc3QgYXR0cmlidXRlcyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlciB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgQ2x1dHRlci5Db2xvciBjdXJzb3JfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjdXJzb3JfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGludCBjdXJzb3JfcG9zaXRpb24g eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGludCBjdXJzb3Jfc2l6ZSB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgYm9vbCBjdXJzb3JfdmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9v bCBlZGl0YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBl bGxpcHNpemUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIFBhbmdvLkZvbnREZXNjcmlwdGlvbiBmb250X2Rlc2NyaXB0aW9uIHsgb3duZWQgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9uYW1lIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBpbnB1dF9oaW50cyB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGlucHV0X3B1cnBvc2Ug eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wganVzdGlmeSB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgUGFuZ28uQWxpZ25tZW50IGxpbmVfYWxpZ25tZW50IHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBib29sIGxpbmVfd3JhcCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uV3JhcE1v ZGUgbGluZV93cmFwX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3Ro IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IHBhc3N3b3JkX2NoYXIgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGlu dCBwb3NpdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBzZWxlY3RhYmxlIHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIHNlbGVjdGVkX3RleHRfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZWxl Y3RlZF90ZXh0X2NvbG9yX3NldCB7IGdldDsgfQorKwkJcHVibGljIGludCBzZWxlY3Rpb25fYm91 bmQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc2VsZWN0aW9uX2NvbG9y IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2Vs ZWN0aW9uX2NvbG9yX3NldCB7IGdldDsgfQorKwkJcHVibGljIGJvb2wgc2luZ2xlX2xpbmVfbW9k ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHRleHQgeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIGJvb2wgdXNlX21hcmt1cCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjdXJzb3JfZXZlbnQgKEdy YXBoZW5lLlJlY3QgcmVjdCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZWxldGVfdGV4dCAoaW50IHN0YXJ0X3Bv cywgaW50IGVuZF9wb3MpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGV4dF9jaGFu Z2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X2J1ZmZlcl9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dEJ1ZmZlciA6IEdM aWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXB1YmxpYyBUZXh0QnVmZmVyICgpOworKwkJcHVibGljIHZpcnR1YWwgdWludCBkZWxldGVf dGV4dCAodWludCBwb3NpdGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIGVtaXRf ZGVsZXRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZv aWQgZW1pdF9pbnNlcnRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQg bl9jaGFycyk7CisrCQlwdWJsaWMgc2l6ZV90IGdldF9ieXRlcyAoKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHVpbnQgZ2V0X2xlbmd0aCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF9sZW5ndGggKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RleHQgKCk7CisrCQlbQ0NvZGUgKHZmdW5j X25hbWUgPSAiZ2V0X3RleHQiKV0KKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1 bm93bmVkIHN0cmluZyBnZXRfdGV4dF93aXRoX2xlbmd0aCAoc2l6ZV90IG5fYnl0ZXMpOworKwkJ cHVibGljIHZpcnR1YWwgdWludCBpbnNlcnRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNo YXJzLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBt YXhfbGVuZ3RoKTsKKysJCXB1YmxpYyB2b2lkIHNldF90ZXh0IChzdHJpbmcgY2hhcnMsIGludCBu X2NoYXJzKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXB1YmxpYyBUZXh0QnVmZmVyLndpdGhfdGV4dCAoc3RyaW5nPyB0ZXh0LCBzc2l6ZV90IHRleHRf bGVuKTsKKysJCXB1YmxpYyB1aW50IGxlbmd0aCB7IGdldDsgfQorKwkJcHVibGljIGludCBtYXhf bGVuZ3RoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGV4dCB7IGdldDsgfQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZGVsZXRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCB1 aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaW5zZXJ0ZWRfdGV4 dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl90ZXh0X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGNsYXNzIFRleHROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBh aW50Tm9kZSoiKV0KKysJCXB1YmxpYyBUZXh0Tm9kZSAoUGFuZ28uTGF5b3V0PyBsYXlvdXQsIENs dXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKwkJcHVibGlj IENvZ2wuTWF0ZXJpYWwgY29nbF9tYXRlcmlhbCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ29n bC5UZXh0dXJlIGNvZ2xfdGV4dHVyZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Rl eHR1cmVfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgY2xhc3MgVGV4dHVyZU5vZGUgOiBDbHV0dGVyLlBpcGVsaW5lTm9kZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFp bnROb2RlKiIpXQorKwkJcHVibGljIFRleHR1cmVOb2RlIChDb2dsLlRleHR1cmUgdGV4dHVyZSwg Q2x1dHRlci5Db2xvcj8gY29sb3IsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBD bHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RpbWVs aW5lX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGlj IGNsYXNzIFRpbWVsaW5lIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgVGltZWxpbmUgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9tYXJrZXIgKHN0cmluZyBt YXJrZXJfbmFtZSwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyB2b2lkIGFkZF9tYXJrZXJfYXRfdGltZSAoc3RyaW5nIG1hcmtlcl9uYW1l LCB1aW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIGFkdmFuY2UgKHVpbnQgbXNlY3MpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWR2YW5jZV90b19tYXJr ZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENs dXR0ZXIuVGltZWxpbmUgY2xvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgYm9vbCBnZXRfYXV0b19yZXZlcnNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdyYXBo ZW5lLlBvaW50IGNfMSwgR3JhcGhlbmUuUG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9jdXJyZW50X3JlcGVhdCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kZWxheSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kZWx0YSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lRGly ZWN0aW9uIGdldF9kaXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdWludCBnZXRfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGludDY0IGdldF9kdXJhdGlvbl9oaW50ICgpOworKwkJcHVibGljIHVp bnQgZ2V0X2VsYXBzZWRfdGltZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBnZXRfbG9vcCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3Byb2dy ZXNzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVy LkFuaW1hdGlvbk1vZGUgZ2V0X3Byb2dyZXNzX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfcmVwZWF0X2NvdW50ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdldF9zdGVwX3Byb2dyZXNzIChv dXQgaW50IG5fc3RlcHMsIG91dCBDbHV0dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBoYXNfbWFya2VyIChzdHJpbmcg bWFya2VyX25hbWUpOworKwkJcHVibGljIGJvb2wgaXNfcGxheWluZyAoKTsKKysJCVtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gdHJ1ZSwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3Ro X3R5cGUgPSAiZ3NpemUiLCBhcnJheV9udWxsX3Rlcm1pbmF0ZWQgPSB0cnVlKV0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdHJpbmdbXSBsaXN0X21hcmtlcnMgKGlu dCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBwYXVzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFt ZSk7CisrCQlwdWJsaWMgdm9pZCByZXdpbmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYXV0b19yZXZlcnNlIChib29sIHJldmVyc2UpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jdWJpY19iZXpp ZXJfcHJvZ3Jlc3MgKEdyYXBoZW5lLlBvaW50IGNfMSwgR3JhcGhlbmUuUG9pbnQgY18yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZWxheSAodWlu dCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfZGlyZWN0aW9uIChDbHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHVp bnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sb29wIChib29sIGxvb3ApOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9ncmVzc19m dW5jIChvd25lZCBDbHV0dGVyLlRpbWVsaW5lUHJvZ3Jlc3NGdW5jPyBmdW5jKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvZ3Jlc3NfbW9kZSAo Q2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZXBlYXRfY291bnQgKGludCBjb3VudCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0ZXBfcHJvZ3Jlc3Mg KGludCBuX3N0ZXBzLCBDbHV0dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlwdWJsaWMgdm9p ZCBza2lwICh1aW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHN0YXJ0ICgpOworKwkJcHVibGlj IHZvaWQgc3RvcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBi b29sIGF1dG9fcmV2ZXJzZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40 IildCisrCQlwdWJsaWMgdWludCBkZWxheSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rp b24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHVpbnQgZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0 dGVyLkFuaW1hdGlvbk1vZGUgcHJvZ3Jlc3NfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCByZXBlYXRfY291bnQgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbWFy a2VyX3JlYWNoZWQgKHN0cmluZyBtYXJrZXJfbmFtZSwgaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCB2b2lkIG5ld19mcmFtZSAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIHBhdXNlZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IHN0YXJ0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgc3RvcHBlZCAoYm9vbCBpc19maW5pc2hlZCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtDb21wYWN0 XQorKwlwdWJsaWMgY2xhc3MgVGltZW91dFBvb2wgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFRpbWVvdXRQb29sIChpbnQgcHJpb3JpdHkp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFRvdWNoRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJ CXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBD bHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig c291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1 aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0Nv bXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3Vj aHBhZFBpbmNoRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBmbG9hdCBhbmdsZV9k ZWx0YTsKKysJCXB1YmxpYyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1Ymxp YyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7Cisr CQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyBm bG9hdCBzY2FsZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlw dWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFN3aXBlRXZlbnQg OiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBk eTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBu X2ZpbmdlcnM7CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1 dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0 dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQg eTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNmb3JtX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIFRyYW5zZm9ybU5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2Rl KiIpXQorKwkJcHVibGljIFRyYW5zZm9ybU5vZGUgKENvZ2wuTWF0cml4IHByb2plY3Rpb24pOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBUcmFuc2l0aW9uIDogQ2x1 dHRlci5UaW1lbGluZSwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBUcmFuc2l0aW9uICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQW5p bWF0YWJsZSBhbmltYXRhYmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGNvbXB1dGVfdmFsdWUgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlLCBDbHV0dGVy LkludGVydmFsIGludGVydmFsLCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGV0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRh YmxlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0YWJsZSBnZXRfYW5pbWF0YWJs ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW50ZXJ2YWwgZ2V0X2ludGVydmFsICgp OworKwkJcHVibGljIGJvb2wgZ2V0X3JlbW92ZV9vbl9jb21wbGV0ZSAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9hbmltYXRhYmxlIChDbHV0dGVyLkFuaW1hdGFibGU/IGFuaW1hdGFibGUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mcm9tX3ZhbHVl IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoQ2x1dHRl ci5JbnRlcnZhbD8gaW50ZXJ2YWwpOworKwkJcHVibGljIHZvaWQgc2V0X3JlbW92ZV9vbl9jb21w bGV0ZSAoYm9vbCByZW1vdmVfY29tcGxldGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF90b192YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlw dWJsaWMgQ2x1dHRlci5BbmltYXRhYmxlIGFuaW1hdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIENsdXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJv b2wgcmVtb3ZlX29uX2NvbXBsZXRlIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJh bnNpdGlvbl9ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwlwdWJsaWMgY2xhc3MgVHJhbnNpdGlvbkdyb3VwIDogQ2x1dHRlci5UcmFuc2l0aW9uLCBD bHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclRyYW5zaXRpb24qIildCisrCQlwdWJsaWMgVHJhbnNpdGlv bkdyb3VwICgpOworKwkJcHVibGljIHZvaWQgYWRkX3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNp dGlvbiB0cmFuc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7CisrCQlwdWJs aWMgdm9pZCByZW1vdmVfdHJhbnNpdGlvbiAoQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24p OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl92aXJ0dWFsX2lucHV0X2RldmljZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgVmlydHVhbElucHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFZpcnR1 YWxJbnB1dERldmljZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV90eXBlICgpOworKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfYWJzb2x1dGVfbW90aW9uICh1aW50NjQgdGltZV91 cywgZG91YmxlIHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2J1 dHRvbiAodWludDY0IHRpbWVfdXMsIHVpbnQzMiBidXR0b24sIENsdXR0ZXIuQnV0dG9uU3RhdGUg YnV0dG9uX3N0YXRlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Rpc2NyZXRlX3Nj cm9sbCAodWludDY0IHRpbWVfdXMsIENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbiwg Q2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Nyb2xsX3NvdXJjZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIG5vdGlmeV9rZXkgKHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIga2V5LCBDbHV0dGVyLktleVN0 YXRlIGtleV9zdGF0ZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXl2YWwgKHVp bnQ2NCB0aW1lX3VzLCB1aW50MzIga2V5dmFsLCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9yZWxhdGl2ZV9tb3Rpb24gKHVpbnQ2NCB0 aW1lX3VzLCBkb3VibGUgZHgsIGRvdWJsZSBkeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5v dGlmeV9zY3JvbGxfY29udGludW91cyAodWludDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91Ymxl IGR5LCBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlLCBDbHV0dGVyLlNjcm9sbEZp bmlzaEZsYWdzIGZpbmlzaF9mbGFncyk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90 b3VjaF9kb3duICh1aW50NjQgdGltZV91cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3VjaF9tb3Rpb24gKHVpbnQ2NCB0aW1l X3VzLCBpbnQgc2xvdCwgZG91YmxlIHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgbm90aWZ5X3RvdWNoX3VwICh1aW50NjQgdGltZV91cywgaW50IHNsb3QpOworKwkJcHVibGlj IENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGRldmljZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgb3du ZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfem9vbV9hY3Rpb25fZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFpv b21BY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1Ymxp YyBab29tQWN0aW9uICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ZvY2FsX3BvaW50IChHcmFwaGVu ZS5Qb2ludCBwb2ludCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfZm9jYWxfcG9p bnQgKEdyYXBoZW5lLlBvaW50IHBvaW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIGdl dF96b29tX2F4aXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfem9vbV9heGlzIChDbHV0dGVyLlpv b21BeGlzIGF4aXMpOworKwkJcHVibGljIENsdXR0ZXIuWm9vbUF4aXMgem9vbV9heGlzIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHpvb20gKENsdXR0ZXIuQWN0 b3IgYWN0b3IsIEdyYXBoZW5lLlBvaW50IGZvY2FsX3BvaW50LCBkb3VibGUgZmFjdG9yKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2NuYW1lID0gIkNsdXR0ZXJBbmltYXRhYmxlSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2FuaW1hdGFibGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBBbmltYXRhYmxl IDogR0xpYi5PYmplY3QgeworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29s IGFuaW1hdGVfcHJvcGVydHkgKENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGlvbiwgc3RyaW5nIHBy b3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgaW5pdGlhbF92YWx1ZSwgR0xpYi5WYWx1ZSBmaW5hbF92 YWx1ZSwgZG91YmxlIHByb2dyZXNzLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB1bm93bmVkIEdMaWIuUGFyYW1TcGVj IGZpbmRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGdldF9pbml0aWFsX3N0YXRlIChz dHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBpbnRlcnBvbGF0ZV92YWx1ZSAo c3RyaW5nIHByb3BlcnR5X25hbWUsIENsdXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBw cm9ncmVzcywgb3V0IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2ZpbmFsX3N0YXRlIChzdHJpbmcgcHJv cGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5l cl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBp bnRlcmZhY2UgQ29udGFpbmVyIDogR0xpYi5PYmplY3QgeworKwkJcHVibGljIHZvaWQgYWRkIChw YXJhbXMgQ2x1dHRlci5BY3RvcltdIGFjdG9ycyk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAi YWRkIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgYWRkX2Fj dG9yIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldCAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldF9wcm9w ZXJ0eSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgc3RyaW5nIHByb3BlcnR5LCBHTGliLlZhbHVlIHZh bHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxk X3NldCAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldF9wcm9wZXJ0eSAoQ2x1dHRlci5BY3RvciBj aGlsZCwgc3RyaW5nIHByb3BlcnR5LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBj bGFzc19maW5kX2NoaWxkX3Byb3BlcnR5IChHTGliLk9iamVjdENsYXNzIGtsYXNzLCBzdHJpbmcg cHJvcGVydHlfbmFtZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5 X2xlbmd0aF90eXBlID0gImd1aW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgc3RhdGljIEdMaWIuUGFyYW1TcGVjW10gY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0 aWVzIChHTGliLk9iamVjdENsYXNzIGtsYXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY3JlYXRlX2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0 b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBkZXN0cm95X2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBm aW5kX2NoaWxkX2J5X25hbWUgKHN0cmluZyBjaGlsZF9uYW1lKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl9jb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKwkJcHVi bGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3Ry aW5nIHByb3BlcnR5X25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLkNoaWxkTWV0YSBnZXRfY2hpbGRfbWV0YSAoQ2x1 dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIEdMaWIuTGlz dDx3ZWFrIENsdXR0ZXIuQWN0b3I+IGdldF9jaGlsZHJlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl9jb250YWluZXJfY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrCQlw dWJsaWMgY2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGll cyAoKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJsb3dlciIpXQorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbG93ZXJfY2hpbGQgKENsdXR0ZXIuQWN0b3IgYWN0 b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcgPSBudWxsKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFt ZSA9ICJyYWlzZSIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg cmFpc2VfY2hpbGQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcg PSBudWxsKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmUgKC4uLik7 CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAicmVtb3ZlIildCisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQor KwkJcHVibGljIGFic3RyYWN0IHZvaWQgcmVtb3ZlX2FjdG9yIChDbHV0dGVyLkFjdG9yIGFjdG9y KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzb3J0X2RlcHRo X29yZGVyICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfYWRkZWQgKENs dXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3Jf cmVtb3ZlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNoaWxk X25vdGlmeSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf Y25hbWUgPSAiQ2x1dHRlckNvbnRlbnRJbnRlcmZhY2UiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29u dGVudF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENvbnRlbnQgOiBHTGliLk9i amVjdCB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGFic3RyYWN0 IGJvb2wgZ2V0X3ByZWZlcnJlZF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWln aHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2 b2lkIGludmFsaWRhdGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBpbnZhbGlkYXRlX3Np emUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgcGFpbnRfY29u dGVudCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5QYWludE5vZGUgbm9kZSwgQ2x1dHRl ci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQWN0 b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIGRldGFjaGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfc2NyaXB0YWJsZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCXB1YmxpYyBpbnRlcmZhY2UgU2NyaXB0YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJ CXB1YmxpYyBhYnN0cmFjdCB1bm93bmVkIHN0cmluZyBnZXRfaWQgKCk7CisrCQlwdWJsaWMgYWJz dHJhY3QgYm9vbCBwYXJzZV9jdXN0b21fbm9kZSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGli LlZhbHVlIHZhbHVlLCBzdHJpbmcgbmFtZSwgSnNvbi5Ob2RlIG5vZGUpOworKwkJcHVibGljIGFi c3RyYWN0IHZvaWQgc2V0X2N1c3RvbV9wcm9wZXJ0eSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBz dHJpbmcgbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBz ZXRfaWQgKHN0cmluZyBpZF8pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIFN0YWdlV2luZG93IDogR0xp Yi5PYmplY3QgeworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBpbnQgZ2V0X3Bl bmRpbmdfc3dhcHMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHVub3du ZWQgQ2x1dHRlci5BY3RvciBnZXRfd3JhcHBlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgYWJzdHJhY3QgYm9vbCBoYXNfcmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IGFic3RyYWN0IGJvb2wgaWdub3JpbmdfcmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyBhYnN0cmFjdCBib29sIHJlYWxpemUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIGFic3RyYWN0IHZvaWQgcmVzaXplIChpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAo Ym9vbCBjdXJzb3JfdmlzaWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2V0X2Z1bGxzY3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAo Ym9vbCBpc19yZXNpemFibGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2 b2lkIHNob3cgKGJvb2wgZG9fcmFpc2UpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0 cmFjdCB2b2lkIHVucmVhbGl6ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZy ZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2Jv eF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IEFjdG9yQm94IHsKKysJCXB1YmxpYyBm bG9hdCB4MTsKKysJCXB1YmxpYyBmbG9hdCB5MTsKKysJCXB1YmxpYyBmbG9hdCB4MjsKKysJCXB1 YmxpYyBmbG9hdCB5MjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg c3RhdGljIENsdXR0ZXIuQWN0b3JCb3g/IGFsbG9jICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGNsYW1wX3RvX3BpeGVsIChyZWYgQ2x1dHRl ci5BY3RvckJveCBib3gpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGJvb2wgY29udGFpbnMgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3g/IGNvcHkgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5BY3RvckJv eCBib3hfYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBm cmVlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF9hcmVhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBnZXRfb3JpZ2luIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0 aCwgb3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3JCb3g/IGluaXQgKGZsb2F0IHhfMSwgZmxv YXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9yZWN0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3 aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkFjdG9yQm94IGludGVycG9sYXRlIChDbHV0dGVyLkFjdG9yQm94IGZpbmFs LCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIHZvaWQgc2NhbGUgKGZsb2F0IHNjYWxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9vcmlnaW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdp ZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIENsdXR0ZXIuQWN0b3JCb3ggdW5pb24gKENsdXR0ZXIuQWN0b3JCb3ggYik7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdHJ1 Y3QgQWN0b3JJdGVyIHsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdm9p ZCBpbml0IChDbHV0dGVyLkFjdG9yIHJvb3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBib29sIGlzX3ZhbGlkICgpOworKwkJcHVibGljIGJvb2wgbmV4dCAob3V0 IHVub3duZWQgQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgYm9vbCBwcmV2IChvdXQg dW5vd25lZCBDbHV0dGVyLkFjdG9yIGNoaWxkKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZSAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBDYXB0dXJlIHsKKysJCXB1Ymxp YyB3ZWFrIENhaXJvLlN1cmZhY2UgaW1hZ2U7CisrCQlwdWJsaWMgQ2Fpcm8uUmVjdGFuZ2xlSW50 IHJlY3Q7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdf Ym94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX0NPTE9SIildCisrCXB1YmxpYyBz dHJ1Y3QgQ29sb3IgeworKwkJcHVibGljIHVpbnQ4IHJlZDsKKysJCXB1YmxpYyB1aW50OCBncmVl bjsKKysJCXB1YmxpYyB1aW50OCBibHVlOworKwkJcHVibGljIHVpbnQ4IGFscGhhOworKwkJcHVi bGljIENsdXR0ZXIuQ29sb3IgYWRkIChDbHV0dGVyLkNvbG9yIGIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Db2xvcj8gYWxsb2MgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvcj8g Y29weSAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGRhcmtlbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLkNvbG9yIHYy KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysJCXB1Ymxp YyBDb2xvci5mcm9tX2hscyAoZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVy YXRpb24pOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fcGl4ZWwiKV0K KysJCXB1YmxpYyBDb2xvci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgQ29sb3IuZnJv bV9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIu Q29sb3I/IGdldF9zdGF0aWMgKENsdXR0ZXIuU3RhdGljQ29sb3IgY29sb3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQgaGFzaCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBpbml0 ICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBpbnRlcnBv bGF0ZSAoQ2x1dHRlci5Db2xvciBmaW5hbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCXB1YmxpYyBD bHV0dGVyLkNvbG9yIGxpZ2h0ZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29s b3JfZnJvbV9zdHJpbmciKV0KKysJCXB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0 cik7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBzaGFkZSAoZG91YmxlIGZhY3Rvcik7CisrCQlw dWJsaWMgQ2x1dHRlci5Db2xvciBzdWJ0cmFjdCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCXB1Ymxp YyB2b2lkIHRvX2hscyAob3V0IGZsb2F0IGh1ZSwgb3V0IGZsb2F0IGx1bWluYW5jZSwgb3V0IGZs b2F0IHNhdHVyYXRpb24pOworKwkJcHVibGljIHVpbnQzMiB0b19waXhlbCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IEtiZEExMXlTZXR0aW5ncyB7CisrCQlw dWJsaWMgQ2x1dHRlci5LZXlib2FyZEExMXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBpbnQg c2xvd2tleXNfZGVsYXk7CisrCQlwdWJsaWMgaW50IGRlYm91bmNlX2RlbGF5OworKwkJcHVibGlj IGludCB0aW1lb3V0X2RlbGF5OworKwkJcHVibGljIGludCBtb3VzZWtleXNfaW5pdF9kZWxheTsK KysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX21heF9zcGVlZDsKKysJCXB1YmxpYyBpbnQgbW91c2Vr ZXlzX2FjY2VsX3RpbWU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0 aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rbm90X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0cnVjdCBLbm90IHsK KysJCXB1YmxpYyBpbnQgeDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBDbHV0dGVyLktu b3Q/IGNvcHkgKCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5Lbm90IGtub3RfYik7 CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCA6IENvZ2wu TWF0cml4IHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRCdXR0b25F dmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50 MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMg d2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBz b3VyY2U7CisrCQlwdWJsaWMgdWludDMyIGJ1dHRvbjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7 CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyB1 aW50MzIgbW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRSaW5n RXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWlu dDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig c291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlw dWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVBhZFNvdXJjZSByaW5nX3NvdXJjZTsKKysJCXB1Ymxp YyB1aW50MzIgcmluZ19udW1iZXI7CisrCQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGlj IGRvdWJsZSBhbmdsZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIHN0cnVjdCBQYWRTdHJpcEV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50VHlwZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIu RXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRT b3VyY2Ugc3RyaXBfc291cmNlOworKwkJcHVibGljIHVpbnQzMiBzdHJpcF9udW1iZXI7CisrCQlw dWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGljIGRvdWJsZSB2YWx1ZTsKKysJCXB1YmxpYyB1 aW50MzIgbW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24g PSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfbm9kZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUGF0aE5v ZGUgeworKwkJcHVibGljIENsdXR0ZXIuUGF0aE5vZGVUeXBlIHR5cGU7CisrCQlbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuS25vdCBwb2ludHNb M107CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoTm9kZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29s IGVxdWFsIChDbHV0dGVyLlBhdGhOb2RlIG5vZGVfYik7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVk X2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGVyc3BlY3RpdmVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RydWN0IFBlcnNwZWN0aXZlIHsK KysJCXB1YmxpYyBmbG9hdCBmb3Z5OworKwkJcHVibGljIGZsb2F0IGFzcGVjdDsKKysJCXB1Ymxp YyBmbG9hdCB6X25lYXI7CisrCQlwdWJsaWMgZmxvYXQgel9mYXI7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCXB1YmxpYyBzdHJ1Y3QgUG9pbnRlckExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1 dHRlci5Qb2ludGVyQTExeUZsYWdzIGNvbnRyb2xzOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRl ckExMXlEd2VsbENsaWNrVHlwZSBkd2VsbF9jbGlja190eXBlOworKwkJcHVibGljIENsdXR0ZXIu UG9pbnRlckExMXlEd2VsbE1vZGUgZHdlbGxfbW9kZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50 ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2VzdHVyZV9zaW5nbGU7CisrCQlwdWJsaWMgQ2x1 dHRlci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfZG91YmxlOworKwkJ cHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2Ry YWc7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dl c3R1cmVfc2Vjb25kYXJ5OworKwkJcHVibGljIGludCBzZWNvbmRhcnlfY2xpY2tfZGVsYXk7Cisr CQlwdWJsaWMgaW50IGR3ZWxsX2RlbGF5OworKwkJcHVibGljIGludCBkd2VsbF90aHJlc2hvbGQ7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCXB1 YmxpYyBzdHJ1Y3QgUHJveGltaXR5RXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBl IHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZs YWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1Ymxp YyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1 dERldmljZSBkZXZpY2U7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0 aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBVbml0cyB7CisrCQlw dWJsaWMgQ2x1dHRlci5Vbml0cz8gY29weSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9jbSIpXQorKwkJcHVibGljIFVu aXRzLmZyb21fY20gKGZsb2F0IGNtKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0 c19mcm9tX2VtIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9lbSAoZmxvYXQgZW0pOworKwkJW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysJCXB1Ymxp YyBVbml0cy5mcm9tX2VtX2Zvcl9mb250IChzdHJpbmcgZm9udF9uYW1lLCBmbG9hdCBlbSk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9tbSIpXQorKwkJcHVibGljIFVu aXRzLmZyb21fbW0gKGZsb2F0IG1tKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0 c19mcm9tX3BpeGVscyIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fcGl4ZWxzIChpbnQgcHgpOwor KwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysJCXB1YmxpYyBV bml0cy5mcm9tX3B0IChmbG9hdCBwdCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5p dHNfZnJvbV9zdHJpbmciKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3N0cmluZyAoc3RyaW5nIHN0 cik7CisrCQlwdWJsaWMgQ2x1dHRlci5Vbml0VHlwZSBnZXRfdW5pdF90eXBlICgpOworKwkJcHVi bGljIGZsb2F0IGdldF91bml0X3ZhbHVlICgpOworKwkJcHVibGljIGZsb2F0IHRvX3BpeGVscyAo KTsKKysJCXB1YmxpYyBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BQ1RP Ul9BTElHTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfYWxpZ25fZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gQWN0b3JBbGlnbiB7 CisrCQlGSUxMLAorKwkJU1RBUlQsCisrCQlDRU5URVIsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfQUNUT1JfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2ZsYWdzX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJcHVibGljIGVudW0gQWN0b3JGbGFncyB7CisrCQlNQVBQRUQsCisrCQlS RUFMSVpFRCwKKysJCVJFQUNUSVZFLAorKwkJVklTSUJMRSwKKysJCU5PX0xBWU9VVAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9BTElHTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxpZ25fYXhpc19nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEFsaWdu QXhpcyB7CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbGxvY2F0aW9uX2ZsYWdzX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbGxv Y2F0aW9uRmxhZ3MgeworKwkJQUxMT0NBVElPTl9OT05FLAorKwkJQUJTT0xVVEVfT1JJR0lOX0NI QU5HRUQsCisrCQlERUxFR0FURV9MQVlPVVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2FuaW1hdGlvbl9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQW5pbWF0aW9uTW9kZSB7CisrCQlDVVNUT01fTU9E RSwKKysJCUxJTkVBUiwKKysJCUVBU0VfSU5fUVVBRCwKKysJCUVBU0VfT1VUX1FVQUQsCisrCQlF QVNFX0lOX09VVF9RVUFELAorKwkJRUFTRV9JTl9DVUJJQywKKysJCUVBU0VfT1VUX0NVQklDLAor KwkJRUFTRV9JTl9PVVRfQ1VCSUMsCisrCQlFQVNFX0lOX1FVQVJULAorKwkJRUFTRV9PVVRfUVVB UlQsCisrCQlFQVNFX0lOX09VVF9RVUFSVCwKKysJCUVBU0VfSU5fUVVJTlQsCisrCQlFQVNFX09V VF9RVUlOVCwKKysJCUVBU0VfSU5fT1VUX1FVSU5ULAorKwkJRUFTRV9JTl9TSU5FLAorKwkJRUFT RV9PVVRfU0lORSwKKysJCUVBU0VfSU5fT1VUX1NJTkUsCisrCQlFQVNFX0lOX0VYUE8sCisrCQlF QVNFX09VVF9FWFBPLAorKwkJRUFTRV9JTl9PVVRfRVhQTywKKysJCUVBU0VfSU5fQ0lSQywKKysJ CUVBU0VfT1VUX0NJUkMsCisrCQlFQVNFX0lOX09VVF9DSVJDLAorKwkJRUFTRV9JTl9FTEFTVElD LAorKwkJRUFTRV9PVVRfRUxBU1RJQywKKysJCUVBU0VfSU5fT1VUX0VMQVNUSUMsCisrCQlFQVNF X0lOX0JBQ0ssCisrCQlFQVNFX09VVF9CQUNLLAorKwkJRUFTRV9JTl9PVVRfQkFDSywKKysJCUVB U0VfSU5fQk9VTkNFLAorKwkJRUFTRV9PVVRfQk9VTkNFLAorKwkJRUFTRV9JTl9PVVRfQk9VTkNF LAorKwkJU1RFUFMsCisrCQlTVEVQX1NUQVJULAorKwkJU1RFUF9FTkQsCisrCQlDVUJJQ19CRVpJ RVIsCisrCQlFQVNFLAorKwkJRUFTRV9JTiwKKysJCUVBU0VfT1VULAorKwkJRUFTRV9JTl9PVVQs CisrCQlBTklNQVRJT05fTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9CSU5fQUxJR05NRU5UXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9iaW5fYWxpZ25tZW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gQmluQWxpZ25tZW50IHsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSldCisrCQlGSVhFRCwKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSldCisrCQlGSUxMLAorKwkJU1RBUlQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUpXQorKwkJRU5ELAorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJ CUNFTlRFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9CSU5EXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5k X2Nvb3JkaW5hdGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwlwdWJsaWMgZW51bSBCaW5kQ29vcmRpbmF0ZSB7CisrCQlYLAorKwkJWSwKKysJCVdJRFRILAor KwkJSEVJR0hULAorKwkJUE9TSVRJT04sCisrCQlTSVpFLAorKwkJQUxMCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0JPWF9BTElHTk1FTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9hbGlnbm1lbnRfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBC b3hBbGlnbm1lbnQgeworKwkJU1RBUlQsCisrCQlFTkQsCisrCQlDRU5URVIKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfQlVUVE9OX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9idXR0b25fc3RhdGVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQnV0dG9uU3RhdGUgeworKwkJUkVMRUFTRUQsCisr CQlQUkVTU0VECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0NPTlRFTlRfR1JBVklUWV8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfY29udGVudF9ncmF2aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIENvbnRlbnRHcmF2aXR5IHsKKysJCVRPUF9MRUZU LAorKwkJVE9QLAorKwkJVE9QX1JJR0hULAorKwkJTEVGVCwKKysJCUNFTlRFUiwKKysJCVJJR0hU LAorKwkJQk9UVE9NX0xFRlQsCisrCQlCT1RUT00sCisrCQlCT1RUT01fUklHSFQsCisrCQlSRVNJ WkVfRklMTCwKKysJCVJFU0laRV9BU1BFQ1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUkVQRUFUXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9jb250ZW50X3JlcGVhdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3Nd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIENvbnRlbnRSZXBl YXQgeworKwkJTk9ORSwKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfREVCVUdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RlYnVnX2ZsYWdfZ2V0X3R5cGUg KCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBEZWJ1Z0ZsYWcgeworKwkJTUlTQywKKysJ CUFDVE9SLAorKwkJVEVYVFVSRSwKKysJCUVWRU5ULAorKwkJUEFJTlQsCisrCQlQQU5HTywKKysJ CUJBQ0tFTkQsCisrCQlTQ0hFRFVMRVIsCisrCQlTQ1JJUFQsCisrCQlTSEFERVIsCisrCQlNVUxU SVNUQUdFLAorKwkJQU5JTUFUSU9OLAorKwkJTEFZT1VULAorKwkJUElDSywKKysJCUVWRU5UTE9P UCwKKysJCUNMSVBQSU5HLAorKwkJT09CX1RSQU5TRk9STVMKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRFJB R18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJhZ19heGlzX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gRHJhZ0F4aXMgeworKwkJQVhJU19O T05FLAorKwkJWF9BWElTLAorKwkJWV9BWElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9kcmF3X2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdz XQorKwlwdWJsaWMgZW51bSBEcmF3RGVidWdGbGFnIHsKKysJCURJU0FCTEVfU1dBUF9FVkVOVFMs CisrCQlESVNBQkxFX0NMSVBQRURfUkVEUkFXUywKKysJCVJFRFJBV1MsCisrCQlQQUlOVF9WT0xV TUVTLAorKwkJRElTQUJMRV9DVUxMSU5HLAorKwkJRElTQUJMRV9PRkZTQ1JFRU5fUkVESVJFQ1Qs CisrCQlDT05USU5VT1VTX1JFRFJBVywKKysJCVBBSU5UX0RFRk9STV9USUxFUywKKysJCVBBSU5U X0RBTUFHRV9SRUdJT04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9lZmZlY3RfcGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0Zs YWdzXQorKwlwdWJsaWMgZW51bSBFZmZlY3RQYWludEZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUg PSAiQ0xVVFRFUl9FRkZFQ1RfUEFJTlRfQUNUT1JfRElSVFkiKV0KKysJCUFDVE9SX0RJUlRZCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0VWRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9mbGFnc19n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ cHVibGljIGVudW0gRXZlbnRGbGFncyB7CisrCQlOT05FLAorKwkJRkxBR19TWU5USEVUSUMsCisr CQlGTEFHX0lOUFVUX01FVEhPRCwKKysJCUZMQUdfUkVQRUFURUQKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBFdmVudFR5cGUgeworKwkJTk9USElO RywKKysJCUtFWV9QUkVTUywKKysJCUtFWV9SRUxFQVNFLAorKwkJTU9USU9OLAorKwkJRU5URVIs CisrCQlMRUFWRSwKKysJCUJVVFRPTl9QUkVTUywKKysJCUJVVFRPTl9SRUxFQVNFLAorKwkJU0NS T0xMLAorKwkJU1RBR0VfU1RBVEUsCisrCQlERVNUUk9ZX05PVElGWSwKKysJCUNMSUVOVF9NRVNT QUdFLAorKwkJREVMRVRFLAorKwkJVE9VQ0hfQkVHSU4sCisrCQlUT1VDSF9VUERBVEUsCisrCQlU T1VDSF9FTkQsCisrCQlUT1VDSF9DQU5DRUwsCisrCQlUT1VDSFBBRF9QSU5DSCwKKysJCVRPVUNI UEFEX1NXSVBFLAorKwkJUFJPWElNSVRZX0lOLAorKwkJUFJPWElNSVRZX09VVCwKKysJCVBBRF9C VVRUT05fUFJFU1MsCisrCQlQQURfQlVUVE9OX1JFTEVBU0UsCisrCQlQQURfU1RSSVAsCisrCQlQ QURfUklORywKKysJCUVWRU5UX0xBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRkVBVFVSRV8iLCB0eXBl X2lkID0gImNsdXR0ZXJfZmVhdHVyZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsK KysJCVRFWFRVUkVfTlBPVCwKKysJCVNXQVBfVEhST1RUTEUsCisrCQlTVEFHRV9TVEFUSUMsCisr CQlTVEFHRV9DVVJTT1IsCisrCQlTSEFERVJTX0dMU0wsCisrCQlPRkZTQ1JFRU4sCisrCQlTVEFH RV9NVUxUSVBMRSwKKysJCVNXQVBfRVZFTlRTOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X2ZlYXR1cmVfYXZhaWxhYmxlIildCisrCQlwdWJsaWMgYm9vbCBpc19hdmFpbGFibGUgKCk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrCQlwdWJsaWMg c3RhdGljIENsdXR0ZXIuRmVhdHVyZUZsYWdzIEBnZXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZM T1dfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Zsb3dfb3JpZW50YXRpb25fZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBGbG93T3JpZW50YXRp b24geworKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dFU1RV UkVfVFJJR0dFUl9FREdFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9nZXN0dXJlX3RyaWdnZXJfZWRn ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMg ZW51bSBHZXN0dXJlVHJpZ2dlckVkZ2UgeworKwkJTk9ORSwKKysJCUFGVEVSLAorKwkJQkVGT1JF CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0dSQVZJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyYXZpdHlf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGVudW0gR3Jhdml0eSB7 CisrCQlOT05FLAorKwkJTk9SVEgsCisrCQlOT1JUSF9FQVNULAorKwkJRUFTVCwKKysJCVNPVVRI X0VBU1QsCisrCQlTT1VUSCwKKysJCVNPVVRIX1dFU1QsCisrCQlXRVNULAorKwkJTk9SVEhfV0VT VCwKKysJCUNFTlRFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9HUklEX1BPU0lUSU9OXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9ncmlkX3Bvc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIEdyaWRQb3NpdGlvbiB7CisrCQlMRUZULAorKwkJ UklHSFQsCisrCQlUT1AsCisrCQlCT1RUT00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5JVF8iLCB0eXBl X2lkID0gImNsdXR0ZXJfaW5pdF9lcnJvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCXB1YmxpYyBlbnVtIEluaXRFcnJvciB7CisrCQlTVUNDRVNTLAorKwkJ RVJST1JfVU5LTk9XTiwKKysJCUVSUk9SX1RIUkVBRFMsCisrCQlFUlJPUl9CQUNLRU5ELAorKwkJ RVJST1JfSU5URVJOQUw7CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0FYSVNfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2F4 aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMg ZW51bSBJbnB1dEF4aXMgeworKwkJSUdOT1JFLAorKwkJWCwKKysJCVksCisrCQlQUkVTU1VSRSwK KysJCVhUSUxULAorKwkJWVRJTFQsCisrCQlXSEVFTCwKKysJCURJU1RBTkNFLAorKwkJUk9UQVRJ T04sCisrCQlTTElERVIsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRf SElOVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfY29udGVudF9oaW50X2ZsYWdzX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gSW5wdXRDb250ZW50SGludEZsYWdz IHsKKysJCUNPTVBMRVRJT04sCisrCQlTUEVMTENIRUNLLAorKwkJQVVUT19DQVBJVEFMSVpBVElP TiwKKysJCUxPV0VSQ0FTRSwKKysJCVVQUEVSQ0FTRSwKKysJCVRJVExFQ0FTRSwKKysJCUhJRERF Tl9URVhULAorKwkJU0VOU0lUSVZFX0RBVEEsCisrCQlMQVRJTiwKKysJCU1VTFRJTElORQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9JTlBVVF9DT05URU5UX1BVUlBPU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2lucHV0X2NvbnRlbnRfcHVycG9zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1 dENvbnRlbnRQdXJwb3NlIHsKKysJCU5PUk1BTCwKKysJCUFMUEhBLAorKwkJRElHSVRTLAorKwkJ TlVNQkVSLAorKwkJUEhPTkUsCisrCQlVUkwsCisrCQlFTUFJTCwKKysJCU5BTUUsCisrCQlQQVNT V09SRCwKKysJCURBVEUsCisrCQlUSU1FLAorKwkJREFURVRJTUUsCisrCQlURVJNSU5BTAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9JTlBVVF9ERVZJQ0VfTUFQUElOR18iLCB0eXBlX2lkID0gImNsdXR0ZXJf aW5wdXRfZGV2aWNlX21hcHBpbmdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXRE ZXZpY2VNYXBwaW5nIHsKKysJCUFCU09MVVRFLAorKwkJUkVMQVRJVkUKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfSU5QVVRfREVWSUNFX1BBRF9TT1VSQ0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2Rl dmljZV9wYWRfc291cmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNl UGFkU291cmNlIHsKKysJCVVOS05PV04sCisrCQlGSU5HRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5Q VVRfREVWSUNFX1RPT0xfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV90b29sX3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJcHVibGlj IGVudW0gSW5wdXREZXZpY2VUb29sVHlwZSB7CisrCQlOT05FLAorKwkJUEVOLAorKwkJRVJBU0VS LAorKwkJQlJVU0gsCisrCQlQRU5DSUwsCisrCQlBSVJCUlVTSCwKKysJCU1PVVNFLAorKwkJTEVO UworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg ZW51bSBJbnB1dERldmljZVR5cGUgeworKwkJUE9JTlRFUl9ERVZJQ0UsCisrCQlLRVlCT0FSRF9E RVZJQ0UsCisrCQlFWFRFTlNJT05fREVWSUNFLAorKwkJSk9ZU1RJQ0tfREVWSUNFLAorKwkJVEFC TEVUX0RFVklDRSwKKysJCVRPVUNIUEFEX0RFVklDRSwKKysJCVRPVUNIU0NSRUVOX0RFVklDRSwK KysJCVBFTl9ERVZJQ0UsCisrCQlFUkFTRVJfREVWSUNFLAorKwkJQ1VSU09SX0RFVklDRSwKKysJ CVBBRF9ERVZJQ0UsCisrCQlOX0RFVklDRV9UWVBFUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9N T0RFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9tb2RlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gSW5wdXRNb2RlIHsKKysJCU1B U1RFUiwKKysJCVNMQVZFLAorKwkJRkxPQVRJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfUEFO RUxfU1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X3BhbmVsX3N0YXRlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0UGFuZWxTdGF0ZSB7CisrCQlPRkYsCisrCQlPTiwK KysJCVRPR0dMRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlRFUlBPTEFUSU9OXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9pbnRlcnBvbGF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMS4yIildCisr CXB1YmxpYyBlbnVtIEludGVycG9sYXRpb24geworKwkJTElORUFSLAorKwkJQ1VCSUMKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfS0VZX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rZXlfc3RhdGVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gS2V5U3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQ UkVTU0VECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleWJv YXJkX2ExMXlfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBL ZXlib2FyZEExMXlGbGFncyB7CisrCQlLRVlCT0FSRF9FTkFCTEVELAorKwkJVElNRU9VVF9FTkFC TEVELAorKwkJTU9VU0VfS0VZU19FTkFCTEVELAorKwkJU0xPV19LRVlTX0VOQUJMRUQsCisrCQlT TE9XX0tFWVNfQkVFUF9QUkVTUywKKysJCVNMT1dfS0VZU19CRUVQX0FDQ0VQVCwKKysJCVNMT1df S0VZU19CRUVQX1JFSkVDVCwKKysJCUJPVU5DRV9LRVlTX0VOQUJMRUQsCisrCQlCT1VOQ0VfS0VZ U19CRUVQX1JFSkVDVCwKKysJCVRPR0dMRV9LRVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19F TkFCTEVELAorKwkJU1RJQ0tZX0tFWVNfVFdPX0tFWV9PRkYsCisrCQlTVElDS1lfS0VZU19CRUVQ LAorKwkJRkVBVFVSRV9TVEFURV9DSEFOR0VfQkVFUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9MT05HX1BS RVNTXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sb25nX3ByZXNzX3N0YXRlX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gTG9uZ1ByZXNzU3Rh dGUgeworKwkJUVVFUlksCisrCQlBQ1RJVkFURSwKKysJCUNBTkNFTAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul8iLCB0eXBlX2lkID0gImNsdXR0ZXJfbW9kaWZpZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlb RmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gTW9kaWZp ZXJUeXBlIHsKKysJCVNISUZUX01BU0ssCisrCQlMT0NLX01BU0ssCisrCQlDT05UUk9MX01BU0ss CisrCQlNT0QxX01BU0ssCisrCQlNT0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01B U0ssCisrCQlNT0Q1X01BU0ssCisrCQlCVVRUT04xX01BU0ssCisrCQlCVVRUT04yX01BU0ssCisr CQlCVVRUT04zX01BU0ssCisrCQlCVVRUT040X01BU0ssCisrCQlCVVRUT041X01BU0ssCisrCQlN T0RJRklFUl9SRVNFUlZFRF8xM19NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTRfTUFTSywK KysJCU1PRElGSUVSX1JFU0VSVkVEXzE1X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNl9N QVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTdfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVE XzE4X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xOV9NQVNLLAorKwkJTU9ESUZJRVJfUkVT RVJWRURfMjBfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIxX01BU0ssCisrCQlNT0RJRklF Ul9SRVNFUlZFRF8yMl9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjNfTUFTSywKKysJCU1P RElGSUVSX1JFU0VSVkVEXzI0X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yNV9NQVNLLAor KwkJU1VQRVJfTUFTSywKKysJCUhZUEVSX01BU0ssCisrCQlNRVRBX01BU0ssCisrCQlNT0RJRklF Ul9SRVNFUlZFRF8yOV9NQVNLLAorKwkJUkVMRUFTRV9NQVNLLAorKwkJTU9ESUZJRVJfTUFTSwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9PRkZTQ1JFRU5fUkVESVJFQ1RfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X29mZnNjcmVlbl9yZWRpcmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gT2Zmc2NyZWVuUmVkaXJlY3QgeworKwkJ QVVUT01BVElDX0ZPUl9PUEFDSVRZLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX09SSUVO VEFUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9vcmllbnRhdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBPcmllbnRhdGlvbiB7 CisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUEFOXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9wYW5fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBQYW5BeGlzIHsKKysJCUFYSVNfTk9ORSwKKysJ CVhfQVhJUywKKysJCVlfQVhJUywKKysJCUFYSVNfQVVUTworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QQVRI XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX25vZGVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFBhdGhOb2RlVHlwZSB7Cisr CQlNT1ZFX1RPLAorKwkJTElORV9UTywKKysJCUNVUlZFX1RPLAorKwkJQ0xPU0UsCisrCQlSRUxf TU9WRV9UTywKKysJCVJFTF9MSU5FX1RPLAorKwkJUkVMX0NVUlZFX1RPCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0RFQlVHX05PUF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcGlja19kZWJ1Z19mbGFnX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gUGlja0RlYnVnRmxhZyB7CisrCQlQ SUNLSU5HCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1BJQ0tfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tf bW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBlbnVtIFBpY2tNb2RlIHsKKysJCU5PTkUsCisrCQlSRUFDVElWRSwKKysJCUFMTAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9BMTFZX0RXRUxMX0NMSUNLX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bv aW50ZXJfYTExeV9kd2VsbF9jbGlja190eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IFBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgeworKwkJTk9ORSwKKysJCVBSSU1BUlksCisrCQlT RUNPTkRBUlksCisrCQlNSURETEUsCisrCQlET1VCTEUsCisrCQlEUkFHCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0ExMVlfRFdFTExfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2Ex MXlfZHdlbGxfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJB MTF5RHdlbGxEaXJlY3Rpb24geworKwkJTk9ORSwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQ LAorKwkJRE9XTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX0RXRUxMX01PREVfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3BvaW50ZXJfYTExeV9kd2VsbF9tb2RlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIFBvaW50ZXJBMTF5RHdlbGxNb2RlIHsKKysJCVdJTkRPVywKKysJCUdFU1RVUkUKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfQTExWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2Zs YWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlG bGFncyB7CisrCQlTRUNPTkRBUllfQ0xJQ0tfRU5BQkxFRCwKKysJCURXRUxMX0VOQUJMRUQKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfQTExWV9USU1FT1VUX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bv aW50ZXJfYTExeV90aW1lb3V0X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9p bnRlckExMXlUaW1lb3V0VHlwZSB7CisrCQlTRUNPTkRBUllfQ0xJQ0ssCisrCQlEV0VMTCwKKysJ CUdFU1RVUkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUkVQQUlOVF9GTEFHU18iLCB0eXBlX2lkID0gImNs dXR0ZXJfcmVwYWludF9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIFJlcGFpbnRGbGFncyB7CisrCQlQUkVf UEFJTlQsCisrCQlQT1NUX1BBSU5ULAorKwkJUVVFVUVfUkVEUkFXX09OX0FERAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9SRVFVRVNUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yZXF1ZXN0X21vZGVfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBSZXF1 ZXN0TW9kZSB7CisrCQlIRUlHSFRfRk9SX1dJRFRILAorKwkJV0lEVEhfRk9SX0hFSUdIVCwKKysJ CUNPTlRFTlRfU0laRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90 YXRlX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlw dWJsaWMgZW51bSBSb3RhdGVBeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCVpfQVhJ UworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9ST1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9k aXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0g Um90YXRlRGlyZWN0aW9uIHsKKysJCUNXLAorKwkJQ0NXCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDQUxJ TkdfRklMVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY2FsaW5nX2ZpbHRlcl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBTY2FsaW5n RmlsdGVyIHsKKysJCUxJTkVBUiwKKysJCU5FQVJFU1QsCisrCQlUUklMSU5FQVIKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfU0NST0xMXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfZGlyZWN0aW9uX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0g U2Nyb2xsRGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVCwK KysJCVNNT09USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfRklOSVNIRURfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3Njcm9sbF9maW5pc2hfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxGaW5pc2hG bGFncyB7CisrCQlOT05FLAorKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX1NDUk9MTF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX21vZGVfZ2V0X3R5cGUg KCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMg ZW51bSBTY3JvbGxNb2RlIHsKKysJCU5PTkUsCisrCQlIT1JJWk9OVEFMTFksCisrCQlWRVJUSUNB TExZLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfU09VUkNFXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zY3JvbGxfc291cmNlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjI2IildCisrCXB1YmxpYyBlbnVtIFNjcm9sbFNvdXJjZSB7CisrCQlVTktOT1dOLAor KwkJV0hFRUwsCisrCQlGSU5HRVIsCisrCQlDT05USU5VT1VTCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJVkVSVEVY X1NIQURFUiwKKysJCUZSQUdNRU5UX1NIQURFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TTkFQX0VER0Vf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NuYXBfZWRnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIFNuYXBFZGdlIHsKKysJCVRPUCwKKysJ CVJJR0hULAorKwkJQk9UVE9NLAorKwkJTEVGVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TVEFHRV9TVEFU RV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJW0Zs YWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFN0YWdlU3Rh dGUgeworKwkJQUNUSVZBVEVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0NPTE9SXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9zdGF0aWNfY29sb3JfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwlwdWJsaWMgZW51bSBTdGF0aWNDb2xvciB7CisrCQlXSElURSwKKysJCUJMQUNL LAorKwkJUkVELAorKwkJREFSS19SRUQsCisrCQlHUkVFTiwKKysJCURBUktfR1JFRU4sCisrCQlC TFVFLAorKwkJREFSS19CTFVFLAorKwkJQ1lBTiwKKysJCURBUktfQ1lBTiwKKysJCU1BR0VOVEEs CisrCQlEQVJLX01BR0VOVEEsCisrCQlZRUxMT1csCisrCQlEQVJLX1lFTExPVywKKysJCUdSQVks CisrCQlEQVJLX0dSQVksCisrCQlMSUdIVF9HUkFZLAorKwkJQlVUVEVSLAorKwkJQlVUVEVSX0xJ R0hULAorKwkJQlVUVEVSX0RBUkssCisrCQlPUkFOR0UsCisrCQlPUkFOR0VfTElHSFQsCisrCQlP UkFOR0VfREFSSywKKysJCUNIT0NPTEFURSwKKysJCUNIT0NPTEFURV9MSUdIVCwKKysJCUNIT0NP TEFURV9EQVJLLAorKwkJQ0hBTUVMRU9OLAorKwkJQ0hBTUVMRU9OX0xJR0hULAorKwkJQ0hBTUVM RU9OX0RBUkssCisrCQlTS1lfQkxVRSwKKysJCVNLWV9CTFVFX0xJR0hULAorKwkJU0tZX0JMVUVf REFSSywKKysJCVBMVU0sCisrCQlQTFVNX0xJR0hULAorKwkJUExVTV9EQVJLLAorKwkJU0NBUkxF VF9SRUQsCisrCQlTQ0FSTEVUX1JFRF9MSUdIVCwKKysJCVNDQVJMRVRfUkVEX0RBUkssCisrCQlB TFVNSU5JVU1fMSwKKysJCUFMVU1JTklVTV8yLAorKwkJQUxVTUlOSVVNXzMsCisrCQlBTFVNSU5J VU1fNCwKKysJCUFMVU1JTklVTV81LAorKwkJQUxVTUlOSVVNXzYsCisrCQlUUkFOU1BBUkVOVAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9TVEVQX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0ZXBfbW9k ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMg ZW51bSBTdGVwTW9kZSB7CisrCQlTVEFSVCwKKysJCUVORAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TV0lQ RV9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2RpcmVjdGlvbl9nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGlj IGVudW0gU3dpcGVEaXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJ R0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RFWFRfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl90ZXh0X2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCXB1YmxpYyBlbnVtIFRleHREaXJlY3Rpb24geworKwkJREVGQVVMVCwKKysJCUxUUiwK KysJCVJUTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUVVJFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90 ZXh0dXJlX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0K KysJcHVibGljIGVudW0gVGV4dHVyZUZsYWdzIHsKKysJCU5PTkUsCisrCQlSR0JfRkxBR19CR1Is CisrCQlSR0JfRkxBR19QUkVNVUxULAorKwkJWVVWX0ZMQUdfWVVWMgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9URVhUVVJFX1FVQUxJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfcXVhbGl0eV9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlUXVh bGl0eSB7CisrCQlMT1csCisrCQlNRURJVU0sCisrCQlISUdICisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RJ TUVMSU5FXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90aW1lbGluZV9kaXJlY3Rpb25fZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZW51bSBUaW1lbGlu ZURpcmVjdGlvbiB7CisrCQlGT1JXQVJELAorKwkJQkFDS1dBUkQKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf VE9VQ0hQQURfR0VTVFVSRV9QSEFTRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdG91Y2hwYWRfZ2Vz dHVyZV9waGFzZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQor KwlwdWJsaWMgZW51bSBUb3VjaHBhZEdlc3R1cmVQaGFzZSB7CisrCQlCRUdJTiwKKysJCVVQREFU RSwKKysJCUVORCwKKysJCUNBTkNFTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9VTklUXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl91bml0X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgZW51bSBVbml0VHlwZSB7CisrCQlQSVhFTCwKKysJCUVNLAorKwkJ TU0sCisrCQlQT0lOVCwKKysJCUNNCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1ZJUlRVQUxfREVWSUNFX1RZ UEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3ZpcnR1YWxfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCki KV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBWaXJ0dWFsRGV2aWNlVHlwZSB7CisrCQlOT05F LAorKwkJS0VZQk9BUkQsCisrCQlQT0lOVEVSLAorKwkJVE9VQ0hTQ1JFRU4KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfWk9PTV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfem9vbV9heGlzX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFpvb21BeGlzIHsK KysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU1BR0Vf RVJST1JfSU5WQUxJRF8iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IGVycm9yZG9tYWluIEltYWdlRXJyb3IgeworKwkJREFUQTsKKysJCXB1YmxpYyBzdGF0aWMgR0xp Yi5RdWFyayBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NSSVBUX0VSUk9SX0lOVkFMSURf IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVycm9yZG9tYWluIFNj cmlwdEVycm9yIHsKKysJCVRZUEVfRlVOQ1RJT04sCisrCQlQUk9QRVJUWSwKKysJCVZBTFVFOwor KwkJcHVibGljIHN0YXRpYyBHTGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBkZWxlZ2F0ZSBDbHV0dGVy LkFjdG9yIEFjdG9yQ3JlYXRlQ2hpbGRGdW5jIChHTGliLk9iamVjdCBpdGVtKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0g MS45KV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBBbHBoYUZ1 bmMgKENsdXR0ZXIuQWxwaGEgYWxwaGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSA0LjkpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIEJpbmRpbmdBY3Rpb25GdW5jIChH TGliLk9iamVjdCBnb2JqZWN0LCBzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1 dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRl bGVnYXRlIHZvaWQgQ2FsbGJhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2Up XQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBFbWl0SW5wdXREZXZpY2VFdmVudCAoQ2x1dHRlci5F dmVudCBldmVudCwgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBFdmVu dEZpbHRlckZ1bmMgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFBhdGhDYWxsYmFj ayAoQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBQcm9ncmVzc0Z1bmMgKEdMaWIu VmFsdWUgYSwgR0xpYi5WYWx1ZSBiLCBkb3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFsdWUgcmV0dmFs KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5z dGFuY2VfcG9zID0gNi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMg ZGVsZWdhdGUgdm9pZCBTY3JpcHRDb25uZWN0RnVuYyAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBH TGliLk9iamVjdCBvYmplY3QsIHN0cmluZyBzaWduYWxfbmFtZSwgc3RyaW5nIGhhbmRsZXJfbmFt ZSwgR0xpYi5PYmplY3QgY29ubmVjdF9vYmplY3QsIEdMaWIuQ29ubmVjdEZsYWdzIGZsYWdzKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFu Y2VfcG9zID0gMy45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGRl bGVnYXRlIGRvdWJsZSBUaW1lbGluZVByb2dyZXNzRnVuYyAoQ2x1dHRlci5UaW1lbGluZSB0aW1l bGluZSwgZG91YmxlIGVsYXBzZWQsIGRvdWJsZSB0b3RhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ09HTCIpXQor KwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIENPR0w7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf Q1VSUkVOVF9USU1FIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNv bnN0IGludCBDVVJSRU5UX1RJTUU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfRkxBVk9VUiIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAu NCIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIEZMQVZPVVI7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUEFUSF9SRUxB VElWRSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBBVEhfUkVMQVRJVkU7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUFJJ T1JJVFlfUkVEUkFXIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGNv bnN0IGludCBQUklPUklUWV9SRURSQVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgYmFzZV9pbml0ICgpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJvX2NsZWFy IChDYWlyby5Db250ZXh0IGNyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIGNhaXJvX3NldF9zb3VyY2VfY29sb3IgKENhaXJvLkNvbnRleHQgY3IsIENsdXR0 ZXIuQ29sb3IgY29sb3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRp YyBib29sIGNoZWNrX3dpbmRvd2luZ19iYWNrZW5kIChzdHJpbmcgYmFja2VuZF90eXBlKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBjb2xvcl9mcm9tX2hscyAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIGZs b2F0IGh1ZSwgZmxvYXQgbHVtaW5hbmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMg dm9pZCBjb2xvcl9mcm9tX3BpeGVsIChvdXQgQ2x1dHRlci5Db2xvciBjb2xvciwgdWludDMyIHBp eGVsKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9y X2Zyb21fc3RyaW5nIChvdXQgQ2x1dHRlci5Db2xvciBjb2xvciwgc3RyaW5nIHN0cik7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9y PyBjb2xvcl9nZXRfc3RhdGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkaXNhYmxlX2FjY2Vzc2liaWxp dHkgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkb19l dmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlw dWJsaWMgc3RhdGljIHVpbnQgZXZlbnRfYWRkX2ZpbHRlciAoQ2x1dHRlci5TdGFnZT8gc3RhZ2Us IFtDQ29kZSAoZGVsZWdhdGVfdGFyZ2V0X3BvcyA9IDIuMiwgZGVzdHJveV9ub3RpZnlfcG9zID0g Mi4xKV0gb3duZWQgQ2x1dHRlci5FdmVudEZpbHRlckZ1bmMgZnVuYyk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5FdmVudCBldmVudF9nZXQgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2 ZW50IGV2ZW50X3BlZWsgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3Rh dGljIHZvaWQgZXZlbnRfcmVtb3ZlX2ZpbHRlciAodWludCBpZCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBldmVudHNfcGVuZGluZyAoKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9hY2Nlc3NpYmlsaXR5X2Vu YWJsZWQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBDbHV0dGVyLkV2ZW50IGdldF9jdXJyZW50X2V2ZW50ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQzMiBnZXRfY3VycmVudF9ldmVudF90aW1lICgpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5C YWNrZW5kIGdldF9kZWZhdWx0X2JhY2tlbmQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CXB1YmxpYyBzdGF0aWMgdWludCBnZXRfZGVmYXVsdF9mcmFtZV9yYXRlICgpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRf ZGVmYXVsdF90ZXh0X2RpcmVjdGlvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIHN0YXRpYyB1bm93bmVkIFBhbmdvLkZvbnRNYXAgZ2V0X2ZvbnRfbWFwICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29w dGlvbl9ncm91cCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBH TGliLk9wdGlvbkdyb3VwIGdldF9vcHRpb25fZ3JvdXBfd2l0aG91dF9pbml0ICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdldF9zY3Jp cHRfaWQgKEdMaWIuT2JqZWN0IGdvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJv ciBpbml0IChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJhcmdjIiwgYXJyYXlfbGVuZ3Ro X3BvcyA9IDAuNSldIHJlZiB1bm93bmVkIHN0cmluZ1tdPyBhcmd2KTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjIiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0X3dpdGhfYXJn cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAiYXJnYyIsIGFycmF5X2xlbmd0aF9wb3Mg PSAwLjUpXSByZWYgdW5vd25lZCBzdHJpbmdbXT8gYXJndiwgc3RyaW5nPyBwYXJhbWV0ZXJfc3Ry aW5nLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR0xpYi5PcHRpb25FbnRyeVtdPyBl bnRyaWVzLCBzdHJpbmc/IHRyYW5zbGF0aW9uX2RvbWFpbikgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJs aWMgc3RhdGljIHVpbnQzMiBrZXlzeW1fdG9fdW5pY29kZSAodWludCBrZXl2YWwpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIG1haW4gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIGludCBtYWluX2xldmVsICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIG1haW5fcXVpdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfY3VzdG9tX2JhY2tl bmRfZnVuYyAodm9pZCogZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMg c3RhdGljIHVpbnQgdW5pY29kZV90b19rZXlzeW0gKHVpbnQzMiB3Yyk7CisrfQorZGlmZiAtLWdp dCBhL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYSBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1j dXN0b20udmFsYQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5hMmMxMDY0 NQorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhCitA QCAtMCwwICsxLDEyNSBAQAorK25hbWVzcGFjZSBDb2dsIHsKKysJW0NvbXBhY3RdCisrCVtDQ29k ZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3MgQml0bWFwOiBIYW5kbGUg eworKwkJcHVibGljIHN0YXRpYyBCaXRtYXAgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1l KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFt ZSA9ICJDb2dsSGFuZGxlIildCisrCXB1YmxpYyBjbGFzcyBCdWZmZXI6IEhhbmRsZSB7CisrCQlw dWJsaWMgdWludCBnZXRfc2l6ZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qg b2Zmc2V0LCBbQ0NvZGUgKGFycmF5X2xlbmd0aF90eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRh dGEpOworKwkJcHVibGljIHZvaWQgdW5tYXAgKCk7CisrCX0KKysKKysJW0NDb2RlIChoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgQ29sb3Iu ZnJvbV80ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEp OworKwkJcHVibGljIENvbG9yLmZyb21fNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50 OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAocmVm X2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFu ZGxlX3VucmVmIildCisrCXB1YmxpYyBjbGFzcyBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9 ICJjb2dsX2lzX2JpdG1hcCIpXQorKwkJcHVibGljIGJvb2wgaXNfYml0bWFwICgpOworKwkJW0ND b2RlIChjbmFtZSA9ICJjb2dsX2lzX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVy ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMg Ym9vbCBpc19tYXRlcmlhbCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3Jl ZW4iKV0KKysJCXB1YmxpYyBib29sIGlzX29mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9pc19waXhlbF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZl ciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMg Ym9vbCBpc19wcm9ncmFtICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIp XQorKwkJcHVibGljIGJvb2wgaXNfc2hhZGVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2ds X2lzX3RleHR1cmUiKV0KKysJCXB1YmxpYyBib29sIGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfaXNfdmVydGV4X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVy dGV4X2J1ZmZlciAoKTsKKysJfQorKworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0 XQorKwlwdWJsaWMgY2xhc3MgUGF0aCB7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsK KysJfQorKworKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBpeGVsQnVmZmVyOiBIYW5kbGUg eworKwkJcHVibGljIFBpeGVsQnVmZmVyICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVm ZmVyLmZvcl9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBm b3JtYXQsIHVpbnQgc3RyaWRlKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFt ZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV9yZWYiLCB1bnJl Zl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFByb2dy YW06IEhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3Byb2dyYW0iLCB0 eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXB1YmxpYyBQcm9ncmFtICgpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX3NoYWRlciAoQ29nbC5T aGFkZXIgc2hhZGVyX2hhbmRsZSk7CisrCQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9u IChzdHJpbmcgdW5pZm9ybV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGxpbmsgKCk7CisrCQlwdWJs aWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xZiAoaW50IHVuaWZvcm1fbm8sIGZsb2F0IHZhbHVlKTsK KysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9ubywgaW50IHZh bHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9u bywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFs dWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1faW50IChpbnQgdW5pZm9ybV9ubywg aW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGludFtdIHZhbHVlKTsK KysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbm8sIGlu dCBzaXplLCBib29sIHRyYW5zcG9zZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0g ZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCB1c2UgKCk7CisrCX0KKysKKysJW0NvbXBh Y3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2ds X3NoYWRlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlw dWJsaWMgY2xhc3MgU2hhZGVyOiBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2Ny ZWF0ZV9zaGFkZXIiLCB0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXB1YmxpYyBTaGFkZXIgKENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfdHlw ZSk7CisrCQlwdWJsaWMgdm9pZCBjb21waWxlICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfaW5m b19sb2cgKCk7CisrCQlwdWJsaWMgQ29nbC5TaGFkZXJUeXBlIGdldF90eXBlICgpOworKwkJcHVi bGljIGJvb2wgaXNfY29tcGlsZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzb3VyY2UgKHN0cmluZyBz b3VyY2UpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5k bGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3JlZiIsIHVucmVmX2Z1bmN0 aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4 QnVmZmVyOiBIYW5kbGUgeworKwkJW0NDb2RlICh0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXIgKHVpbnQg bl92ZXJ0aWNlcyk7CisrCQlwdWJsaWMgdm9pZCBhZGQgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSwg dWNoYXIgbl9jb21wb25lbnRzLCBDb2dsLkF0dHJpYnV0ZVR5cGUgdHlwZSwgYm9vbCBub3JtYWxp emVkLCB1aW50MTYgc3RyaWRlLCB2b2lkKiBwb2ludGVyKTsKKysJCXB1YmxpYyB2b2lkIGRlbGV0 ZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUgKHN0cmlu ZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRpY2VzTW9k ZSBtb2RlLCBpbnQgZmlyc3QsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3X2VsZW1l bnRzIChDb2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBWZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMs IGludCBtaW5faW5kZXgsIGludCBtYXhfaW5kZXgsIGludCBpbmRpY2VzX29mZnNldCwgaW50IGNv dW50KTsKKysJCXB1YmxpYyB2b2lkIGVuYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJ CXB1YmxpYyB1aW50IGdldF9uX3ZlcnRpY2VzICgpOworKwkJcHVibGljIHZvaWQgc3VibWl0ICgp OworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0K KysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZlckluZGljZXM6IEhhbmRsZSB7CisrCQlwdWJsaWMg VmVydGV4QnVmZmVySW5kaWNlcyAoQ29nbC5JbmRpY2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQq IGluZGljZXNfYXJyYXksIGludCBpbmRpY2VzX2xlbik7CisrCQlwdWJsaWMgc3RhdGljIHVub3du ZWQgQ29nbC5WZXJ0ZXhCdWZmZXJJbmRpY2VzIGdldF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2Vz KTsKKysJCXB1YmxpYyBDb2dsLkluZGljZXNUeXBlIGdldF90eXBlICgpOworKwl9CisrCisrCVtD Q29kZSAodHlwZV9pZCA9ICJDT0dMX1RZUEVfTUFUUklYIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNvZ2xfbWF0cml4X2luaXRfZnJvbV9hcnJheSIsIGFycmF5X2xlbmd0aCA9IGZhbHNlLCBh cnJheV9udWxsX3Rlcm1pbmF0ZWQgPSBmYWxzZSldCisrCQlwdWJsaWMgTWF0cml4LmZyb21fYXJy YXkgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGFycmF5KTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9pZGVudGl0eSIpXQorKwkJcHVibGljIE1h dHJpeC5pZGVudGl0eSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfbXVsdGlw bHkiKV0KKysJCXB1YmxpYyBNYXRyaXgubXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENvZ2wuTWF0 cml4IGIpOworKwl9CisrCisrCVtTaW1wbGVUeXBlXQorKwlbR0lSIChuYW1lID0gIkJvb2wiKV0K KysJW0Jvb2xlYW5UeXBlXQorKwlwdWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKwor KwlwdWJsaWMgc3RhdGljIEdMaWIuQ2FsbGJhY2sgZ2V0X3Byb2NfYWRkcmVzcyhzdHJpbmcgcyk7 CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzIGIvdmFwaS9tdXR0ZXIt Y29nbC02LmRlcHMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uOThjY2Fj NWIKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCitAQCAtMCww ICsxIEBACisrcGFuZ28KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jb2dsLTYudmFwaSBiL3Zh cGkvbXV0dGVyLWNvZ2wtNi52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAw MDAuLmM5YWI1ZDU3CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYudmFw aQorQEAgLTAsMCArMSwxMDc3IEBACisrLyogbXV0dGVyLWNvZ2wtNi52YXBpIGdlbmVyYXRlZCBi eSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJDb2ds IiwgZ2lyX25hbWVzcGFjZSA9ICJDb2dsIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2Vf Y3ByZWZpeCA9ICJjb2dsXyIpXQorK25hbWVzcGFjZSBDb2dsIHsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHR5cGVfaWQg PSAiY29nbF9iaXRtYXBfZ2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xh c3MgQml0bWFwIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3Jf cXVhcmsgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDb2dsQml0bWFwKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEJpdG1hcC5mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGl4ZWxGb3Jt YXQgZ2V0X2Zvcm1hdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgaW50IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGludCBnZXRfcm93c3RyaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIGdldF9zaXplX2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVu YW1lLCBvdXQgaW50IHdpZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgc3RhdGlj IENvZ2wuQml0bWFwIG5ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIu RXJyb3I7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y25hbWUgPSAiQ29nbEhhbmRsZSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJ1ZmZl ciA6IENvZ2wuSGFuZGxlIHsKKysJCXB1YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVibGlj IGJvb2wgc2V0X2RhdGEgKHNpemVfdCBvZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5cGUg PSAic2l6ZV90IildIHVpbnQ4W10gZGF0YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0g ImNvZ2xfY29udGV4dF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIENvbnRleHQgOiBD b2dsLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwcm90ZWN0ZWQgQ29udGV4dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVf ZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lX2Nsb3N1cmVf Z2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIp XQorKwlwdWJsaWMgY2xhc3MgRnJhbWVDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVm IiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisr CXB1YmxpYyBjbGFzcyBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1h cCIpXQorKwkJcHVibGljIGJvb2wgaXNfYml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj b2dsX2lzX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJjb2dsX2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlh bCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1Ymxp YyBib29sIGlzX29mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhl bF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY29nbF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFt ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJv b2wgaXNfc2hhZGVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0K KysJCXB1YmxpYyBib29sIGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xf aXNfdmVydGV4X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1 bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwg dHlwZV9pZCA9ICJjb2dsX21hdGVyaWFsX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlw dWJsaWMgY2xhc3MgTWF0ZXJpYWwgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBNYXRlcmlhbCAoKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoQ29nbC5NYXRlcmlhbEFs cGhhRnVuYyBhbHBoYV9mdW5jLCBmbG9hdCBhbHBoYV9yZWZlcmVuY2UpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9ibGVuZCAoc3RyaW5nIGJsZW5kX3N0cmluZykgdGhy b3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Js ZW5kX2NvbnN0YW50IChDb2dsLkNvbG9yIGNvbnN0YW50X2NvbG9yKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50 OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9sYXllciAoaW50IGxheWVyX2luZGV4LCBDb2dsLkhhbmRsZSB0ZXh0 dXJlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfY29tYmlu ZSAoaW50IGxheWVyX2luZGV4LCBzdHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJv cjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmluZV9j b25zdGFudCAoaW50IGxheWVyX2luZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlw dWJsaWMgdm9pZCBzZXRfbGF5ZXJfZmlsdGVycyAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdGVy aWFsRmlsdGVyIG1pbl9maWx0ZXIsIENvZ2wuTWF0ZXJpYWxGaWx0ZXIgbWFnX2ZpbHRlcik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2ds Lk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIHNldF9s YXllcl9wb2ludF9zcHJpdGVfY29vcmRzX2VuYWJsZWQgKGludCBsYXllcl9pbmRleCwgYm9vbCBl bmFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9wb2ludF9zaXplIChmbG9hdCBwb2ludF9zaXplKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlcl9wcm9ncmFtIChDb2dsLkhhbmRsZSBwcm9ncmFtKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbExheWVy IHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBl X2lkID0gImNvZ2xfb2JqZWN0X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xh c3MgT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBPYmplY3QgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX29mZnNjcmVlbl9nZXRfZ3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIE9mZnNjcmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVm ZmVyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBPZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNiIpXQorKwkJcHVibGljIE9mZnNjcmVlbi50b190ZXh0dXJlIChDb2dsLlRleHR1 cmUgdGV4dHVyZSk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgT2Zmc2NyZWVuLndpdGhfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVf aWQgPSAiY29nbF9vbnNjcmVlbl9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE9uc2Ny ZWVuIDogQ29nbC5PYmplY3QsIENvZ2wuRnJhbWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9uc2NyZWVuICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuRGlydHlD bG9zdXJlIGFkZF9kaXJ0eV9jYWxsYmFjayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0g MS41KV0gQ29nbC5PbnNjcmVlbkRpcnR5Q2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFE ZXN0cm95Q2FsbGJhY2s/IGRlc3Ryb3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIENvZ2wuT25zY3JlZW5SZXNpemVDbG9zdXJlIGFkZF9yZXNpemVfY2FsbGJhY2sg KFtDQ29kZSAoZGVsZWdhdGVfdGFyZ2V0X3BvcyA9IDEuNSldIENvZ2wuT25zY3JlZW5SZXNpemVD YWxsYmFjayBjYWxsYmFjaywgQ29nbC5Vc2VyRGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGludCBnZXRfYnVmZmVy X2FnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgaW50NjQg Z2V0X2ZyYW1lX2NvdW50ZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgYm9vbCBnZXRfcmVzaXphYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHZvaWQgaGlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2Iild CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfZGlydHlfY2FsbGJhY2sgKENvZ2wuT25zY3JlZW5EaXJ0 eUNsb3N1cmUgY2xvc3VyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVi bGljIHZvaWQgcmVtb3ZlX2ZyYW1lX2NhbGxiYWNrIChDb2dsLkZyYW1lQ2xvc3VyZSBjbG9zdXJl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9y ZXNpemVfY2FsbGJhY2sgKENvZ2wuT25zY3JlZW5SZXNpemVDbG9zdXJlIGNsb3N1cmUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Jlc2l6YWJsZSAo Ym9vbCByZXNpemFibGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IHZvaWQgc2hvdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzd2FwX2J1ZmZlcnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJ cHVibGljIHZvaWQgc3dhcF9idWZmZXJzX3dpdGhfZGFtYWdlIChpbnQgcmVjdGFuZ2xlcywgaW50 IG5fcmVjdGFuZ2xlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc3dhcF9yZWdpb24gKGludCByZWN0YW5nbGVzLCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0 aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlw ZV9pZCA9ICJjb2dsX29uc2NyZWVuX2RpcnR5X2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtD b21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgY2xhc3MgT25z Y3JlZW5EaXJ0eUNsb3N1cmUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlv biA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fcmVzaXplX2Nsb3N1 cmVfZ2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCXB1YmxpYyBjbGFzcyBPbnNjcmVlblJlc2l6ZUNsb3N1cmUgeworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29n bF9wYXRoX2NvcHkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCBAbmV3ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9waXBlbGluZV9nZXRfZ3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIFBpcGVsaW5lIDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIFBpcGVsaW5lIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZSBjb3B5ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgZm9yZWFjaF9sYXll ciAoQ29nbC5QaXBlbGluZUxheWVyQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVBbHBoYUZ1bmMgZ2V0X2FscGhh X3Rlc3RfZnVuY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X2FscGhhX3Rlc3RfcmVmZXJlbmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUg Z2V0X2N1bGxfZmFjZV9tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIENvZ2wuV2luZGluZyBnZXRfZnJvbnRfZmFjZV93aW5kaW5nICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9s YXllcl9tYWdfZmlsdGVyIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9taW5fZmls dGVyIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIGJvb2wgZ2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxh eWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5v d25lZCBDb2dsLlRleHR1cmUgZ2V0X2xheWVyX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBN b2RlIGdldF9sYXllcl93cmFwX21vZGVfcyAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgZ2V0X2xh eWVyX3dyYXBfbW9kZV90IChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIGludCBnZXRfbl9sYXllcnMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9wb2lu dF9zaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBn ZXRfdW5pZm9ybV9sb2NhdGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdXNlcl9w cm9ncmFtICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHJlbW92ZV9sYXllciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV90ZXN0X2Z1bmN0aW9uIChDb2dsLlBpcGVs aW5lQWxwaGFGdW5jIGFscGhhX2Z1bmMsIGZsb2F0IGFscGhhX3JlZmVyZW5jZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBi bGVuZF9zdHJpbmcpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsZW5kX2NvbnN0YW50IChDb2dsLkNvbG9yIGNvbnN0 YW50X2NvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9jb2xvciAoQ29nbC5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwg ZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2NvbG9yNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50 OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdm9pZCBzZXRfY3VsbF9mYWNlX21vZGUgKENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUg Y3VsbF9mYWNlX21vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2Zyb250X2ZhY2Vfd2luZGluZyAoQ29nbC5XaW5kaW5nIGZyb250X3dpbmRpbmcp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVy X2NvbWJpbmUgKGludCBsYXllcl9pbmRleCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdM aWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfbGF5ZXJfY29tYmluZV9jb25zdGFudCAoaW50IGxheWVyX2luZGV4LCBDb2dsLkNvbG9yIGNv bnN0YW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfbGF5ZXJfZmlsdGVycyAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1p bl9maWx0ZXIsIENvZ2wuUGlwZWxpbmVGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxh eWVyX2luZGV4LCBDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9udWxsX3RleHR1cmUgKGludCBsYXllcl9p bmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRf bGF5ZXJfcG9pbnRfc3ByaXRlX2Nvb3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgsIGJvb2wg ZW5hYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl90ZXh0 dXJlIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGUgKGlu dCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX3dyYXBfbW9kZV9zIChp bnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGVfdCAo aW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfcGVyX3ZlcnRleF9wb2ludF9z aXplIChib29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6 ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5p Zm9ybV8xZiAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3JtXzFpIChpbnQgdW5p Zm9ybV9sb2NhdGlvbiwgaW50IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwg aW50IG5fY29tcG9uZW50cywgaW50IGNvdW50LCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9pbnQgKGludCB1bmlm b3JtX2xvY2F0aW9uLCBpbnQgbl9jb21wb25lbnRzLCBpbnQgY291bnQsIGludCB2YWx1ZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9t YXRyaXggKGludCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgZGltZW5zaW9ucywgaW50IGNvdW50LCBi b29sIHRyYW5zcG9zZSwgZmxvYXQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X3VzZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJvZ3JhbSk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtD b21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGl4ZWxCdWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlw dWJsaWMgUGl4ZWxCdWZmZXIgKHVpbnQgc2l6ZSk7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIuZm9y X3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwg dWludCBzdHJpZGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFt X3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV91bnJlZiIpXQorKwlbQ29tcGFj dF0KKysJcHVibGljIGNsYXNzIFByb2dyYW0gOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfY3JlYXRlX3Byb2dyYW0iLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1YmxpYyBQcm9ncmFtICgpOworKwkJcHVi bGljIHZvaWQgYXR0YWNoX3NoYWRlciAoQ29nbC5TaGFkZXIgc2hhZGVyX2hhbmRsZSk7CisrCQlw dWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsKKysJ CXB1YmxpYyB2b2lkIGxpbmsgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xZiAo aW50IHVuaWZvcm1fbm8sIGZsb2F0IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlm b3JtXzFpIChpbnQgdW5pZm9ybV9ubywgaW50IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCB1bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlf bGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lk IHVuaWZvcm1faW50IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVu Z3RoX3BvcyA9IDIuOSldIGludFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlm b3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBib29sIHRyYW5zcG9zZSwgW0ND b2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMg dm9pZCB1c2UgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9y ZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlbQ29tcGFjdF0K KysJcHVibGljIGNsYXNzIFNoYWRlciA6IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9jcmVhdGVfc2hhZGVyIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNvZ2xIYW5kbGUqIildCisrCQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUg c2hhZGVyX3R5cGUpOworKwkJcHVibGljIHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJp bmcgZ2V0X2luZm9fbG9nICgpOworKwkJcHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAo KTsKKysJCXB1YmxpYyBib29sIGlzX2NvbXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNl IChzdHJpbmcgc291cmNlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAidGV4dHVyZV8yZCIsIHR5cGVfaWQgPSAi Y29nbF90ZXh0dXJlXzJkX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZTJE IDogQ29nbC5PYmplY3QsIENvZ2wuVGV4dHVyZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVGV4dHVyZTJEICgpOworKwkJcHVibGlj IHZvaWQgZWdsX2ltYWdlX2V4dGVybmFsX2FsbG9jX2ZpbmlzaCAodm9pZCogdXNlcl9kYXRhLCBH TGliLkRlc3Ryb3lOb3RpZnkgZGVzdHJveSk7CisrCQlwdWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0 ZXJuYWxfYmluZCAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkQuZnJv bV9iaXRtYXAgKENvZ2wuQml0bWFwIGJpdG1hcCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmRf c2xpY2VkIiwgdHlwZV9pZCA9ICJjb2dsX3RleHR1cmVfMmRfc2xpY2VkX2dldF9ndHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZTJEU2xpY2VkIDogQ29nbC5PYmplY3QsIENvZ2wuVGV4 dHVyZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgVGV4dHVyZTJEU2xpY2VkICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1Ymxp YyBUZXh0dXJlMkRTbGljZWQuZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFwIGJtcCwgaW50IG1heF93 YXN0ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJf cmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVmIildCisrCVtD b21wYWN0XQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRs ZSoiKV0KKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7CisrCQlwdWJs aWMgdm9pZCBhZGQgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25lbnRzLCBD b2dsLkF0dHJpYnV0ZVR5cGUgdHlwZSwgYm9vbCBub3JtYWxpemVkLCB1aW50MTYgc3RyaWRlLCB2 b2lkKiBwb2ludGVyKTsKKysJCXB1YmxpYyB2b2lkIEBkZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVf bmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkaXNhYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOwor KwkJcHVibGljIHZvaWQgZHJhdyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgaW50IGZpcnN0LCBp bnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZHJhd19lbGVtZW50cyAoQ29nbC5WZXJ0aWNlc01v ZGUgbW9kZSwgQ29nbC5WZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgs IGludCBtYXhfaW5kZXgsIGludCBpbmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1Ymxp YyB2b2lkIGVuYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdl dF9uX3ZlcnRpY2VzICgpOworKwkJcHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUi KV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIDogQ29n bC5IYW5kbGUgeworKwkJcHVibGljIFZlcnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5 cGUgaW5kaWNlc190eXBlLCB2b2lkKiBpbmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOwor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9y X3F1YWRzICh1aW50IG5faW5kaWNlcyk7CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRf dHlwZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCB0eXBlX2lkID0gImNvZ2xfZnJhbWVidWZmZXJfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBp bnRlcmZhY2UgRnJhbWVidWZmZXIgOiBDb2dsLk9iamVjdCB7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBhbGxvY2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyICh1bG9u ZyBidWZmZXJzLCBDb2dsLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyNGYgKHVsb25nIGJ1ZmZlcnMsIGZsb2F0IHJlZCwgZmxv YXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGRpc2NhcmRfYnVmZmVycyAodWxvbmcgYnVmZmVycyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19tdWx0 aXRleHR1cmVkX3JlY3RhbmdsZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBm bG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gZmxvYXRbXSB0ZXhfY29vcmRzLCBpbnQgdGV4X2Nvb3Jkc19sZW4pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlIChDb2ds LlBpcGVsaW5lIHBpcGVsaW5lLCBmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9h dCB5XzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRy YXdfcmVjdGFuZ2xlcyAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5n dGggPSBmYWxzZSldIGZsb2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3RleHR1cmVk X3JlY3RhbmdsZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEs IGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBzXzEsIGZsb2F0IHRfMSwgZmxvYXQgc18yLCBm bG9hdCB0XzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IGRyYXdfdGV4dHVyZWRfcmVjdGFuZ2xlcyAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0 YW5nbGVzKTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGZpbmlzaCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBmcnVzdHVtIChmbG9hdCBs ZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwg ZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGlu dCBnZXRfYWxwaGFfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBpbnQgZ2V0X2JsdWVfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB1bm93bmVkIENvZ2wuQ29udGV4dCBnZXRfY29udGV4dCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2RlcHRoX2JpdHMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2RlcHRoX3dy aXRlX2VuYWJsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg Ym9vbCBnZXRfZGl0aGVyX2VuYWJsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgaW50IGdldF9ncmVlbl9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0 X2lzX3N0ZXJlbyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q29nbC5NYXRyaXggZ2V0X21vZGVsdmlld19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuTWF0cml4IGdldF9wcm9qZWN0aW9uX21hdHJpeCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlZF9i aXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0 X3NhbXBsZXNfcGVyX3BpeGVsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJ CXB1YmxpYyBDb2dsLlN0ZXJlb01vZGUgZ2V0X3N0ZXJlb19tb2RlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3ZpZXdwb3J0NGZ2IChbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gb3V0IHVub3duZWQgZmxvYXQgdmlld3BvcnRbNF0pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9y dF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X3ZpZXdwb3J0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF95ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaWRlbnRpdHlfbWF0cml4ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIG9ydGhvZ3JhcGhp YyAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBuZWFy LCBmbG9hdCBmYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHBlcnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIs IGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBwb3BfY2xpcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBwb3BfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHB1c2hfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHB1c2hfcmVjdGFuZ2xlX2NsaXAgKGZsb2F0IHhfMSwgZmxvYXQg eV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlZ2lvbl9j bGlwIChDYWlyby5SZWdpb24gcmVnaW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBwdXNoX3NjaXNzb3JfY2xpcCAoaW50IHgsIGludCB5LCBpbnQgd2lk dGgsIGludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBib29sIHJlYWRfcGl4ZWxzIChpbnQgeCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCwg Q29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQ4IHBpeGVscyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgcmVhZF9waXhlbHNfaW50b19iaXRtYXAgKGlu dCB4LCBpbnQgeSwgQ29nbC5SZWFkUGl4ZWxzRmxhZ3Mgc291cmNlLCBDb2dsLkJpdG1hcCBiaXRt YXApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2 ZV9zYW1wbGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgcmVzb2x2ZV9zYW1wbGVzX3JlZ2lvbiAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBo ZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJv dGF0ZSAoZmxvYXQgYW5nbGUsIGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVu ZS5FdWxlciBldWxlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2NhbGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aF93cml0ZV9lbmFibGVkIChi b29sIGRlcHRoX3dyaXRlX2VuYWJsZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2RpdGhlcl9lbmFibGVkIChib29sIGRpdGhlcl9lbmFibGVkKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZWx2 aWV3X21hdHJpeCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvamVjdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4 IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfc2FtcGxlc19wZXJfcGl4ZWwgKGludCBzYW1wbGVzX3Blcl9waXhlbCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0ZXJlb19tb2RlIChDb2ds LlN0ZXJlb01vZGUgc3RlcmVvX21vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3ZpZXdwb3J0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0 aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCB0cmFuc2Zvcm0gKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5 LCBmbG9hdCB6KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCB0eXBlX2lkID0gImNvZ2xfdGV4dHVyZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGlu dGVyZmFjZSBUZXh0dXJlIDogQ29nbC5PYmplY3QgeworKwkJcHVibGljIGJvb2wgYWxsb2NhdGUg KCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFy ayAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ29nbC5UZXh0 dXJlQ29tcG9uZW50cyBnZXRfY29tcG9uZW50cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RhdGEg KENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfZ2xfdGV4dHVyZSAob3V0IHVpbnQgb3V0X2dsX2hhbmRsZSwgb3V0 IHVpbnQgb3V0X2dsX3RhcmdldCk7CisrCQlwdWJsaWMgdWludCBnZXRfaGVpZ2h0ICgpOworKwkJ cHVibGljIGludCBnZXRfbWF4X3dhc3RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgi KV0KKysJCXB1YmxpYyBib29sIGdldF9wcmVtdWx0aXBsaWVkICgpOworKwkJcHVibGljIHVpbnQg Z2V0X3dpZHRoICgpOworKwkJcHVibGljIGJvb2wgaXNfc2xpY2VkICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX2JpdG1hcCAoQ29n bC5CaXRtYXAgYml0bWFwLCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1h dCBpbnRlcm5hbF9mb3JtYXQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMg Q29nbC5UZXh0dXJlIG5ld19mcm9tX2RhdGEgKGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5U ZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBDb2dsLlBpeGVsRm9y bWF0IGludGVybmFsX2Zvcm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZmlsZSAo c3RyaW5nIGZpbGVuYW1lLCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1h dCBpbnRlcm5hbF9mb3JtYXQpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fc3ViX3RleHR1cmUgKGludCBzdWJfeCwg aW50IHN1Yl95LCBpbnQgc3ViX3dpZHRoLCBpbnQgc3ViX2hlaWdodCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X3dpdGhfc2l6ZSAodWludCB3 aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9y bWF0IGludGVybmFsX2Zvcm1hdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2NvbXBvbmVudHMgKENvZ2wuVGV4dHVyZUNvbXBvbmVudHMgY29tcG9u ZW50cyk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQs IGludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEsIGludCBsZXZlbCkgdGhyb3dzIEdMaWIuRXJyb3I7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZW11 bHRpcGxpZWQgKGJvb2wgcHJlbXVsdGlwbGllZCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9u IChpbnQgc3JjX3gsIGludCBzcmNfeSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0X3dp ZHRoLCB1aW50IGRzdF9oZWlnaHQsIGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZv cm1hdCBmb3JtYXQsIHVpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIHNldF9yZWdpb25fZnJvbV9iaXRtYXAgKGlu dCBzcmNfeCwgaW50IHNyY195LCBpbnQgZHN0X3gsIGludCBkc3RfeSwgdWludCBkc3Rfd2lkdGgs IHVpbnQgZHN0X2hlaWdodCwgQ29nbC5CaXRtYXAgYml0bWFwKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1Ymxp YyBzdHJ1Y3QgQW5nbGUgOiBpbnQzMiB7CisrCX0KKysJW0Jvb2xlYW5UeXBlXQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW0dJUiAobmFtZSA9ICJCb29s IildCisrCVtTaW1wbGVUeXBlXQorKwlwdWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IENv bG9yIHsKKysJCXB1YmxpYyBDb2dsLkNvbG9yPyBjb3B5ICgpOworKwkJcHVibGljIENvbG9yLmZy b21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsK KysJCXB1YmxpYyBDb2xvci5mcm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDgg Ymx1ZSwgdWludDggYWxwaGEpOworKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCXB1 YmxpYyB1aW50OCBnZXRfYWxwaGFfYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFf ZmxvYXQgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JsdWUgKCk7CisrCQlwdWJsaWMgdWludDgg Z2V0X2JsdWVfYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYmx1ZV9mbG9hdCAoKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfZ3JlZW4gKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2dyZWVuX2J5 dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2dyZWVuX2Zsb2F0ICgpOworKwkJcHVibGljIGZs b2F0IGdldF9yZWQgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X3JlZF9ieXRlICgpOworKwkJcHVi bGljIGZsb2F0IGdldF9yZWRfZmxvYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZs b2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIGluaXRfZnJvbV80ZnYgKGZsb2F0IGNvbG9yX2FycmF5KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80dWIgKHVpbnQ4 IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyB2 b2lkIHByZW11bHRpcGx5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2FscGhhIChmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGFfYnl0ZSAodWludDggYWxwaGEpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2Zsb2F0 IChmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dm9pZCBzZXRfYmx1ZSAoZmxvYXQgYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1ZV9ieXRlICh1aW50OCBibHVlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlX2Zsb2F0IChmbG9hdCBi bHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9n cmVlbiAoZmxvYXQgZ3JlZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2dyZWVuX2J5dGUgKHVpbnQ4IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbl9mbG9hdCAoZmxvYXQgZ3JlZW4p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZCAo ZmxvYXQgcmVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9yZWRfYnl0ZSAodWludDggcmVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9yZWRfZmxvYXQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgdG9faHNsIChvdXQgZmxvYXQgaHVlLCBv dXQgZmxvYXQgc2F0dXJhdGlvbiwgb3V0IGZsb2F0IGx1bWluYW5jZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCB1bnByZW11bHRpcGx5ICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdHJ1Y3QgRGVi dWdPYmplY3RUeXBlSW5mbyB7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbmFtZTsKKysJCXB1Ymxp YyB1bG9uZyBpbnN0YW5jZV9jb3VudDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJDT0dMX1RZUEVfTUFUUklYIildCisr CXB1YmxpYyBzdHJ1Y3QgTWF0cml4IHsKKysJCXB1YmxpYyBmbG9hdCB4eDsKKysJCXB1YmxpYyBm bG9hdCB5eDsKKysJCXB1YmxpYyBmbG9hdCB6eDsKKysJCXB1YmxpYyBmbG9hdCB3eDsKKysJCXB1 YmxpYyBmbG9hdCB4eTsKKysJCXB1YmxpYyBmbG9hdCB5eTsKKysJCXB1YmxpYyBmbG9hdCB6eTsK KysJCXB1YmxpYyBmbG9hdCB3eTsKKysJCXB1YmxpYyBmbG9hdCB4ejsKKysJCXB1YmxpYyBmbG9h dCB5ejsKKysJCXB1YmxpYyBmbG9hdCB6ejsKKysJCXB1YmxpYyBmbG9hdCB3ejsKKysJCXB1Ymxp YyBmbG9hdCB4dzsKKysJCXB1YmxpYyBmbG9hdCB5dzsKKysJCXB1YmxpYyBmbG9hdCB6dzsKKysJ CXB1YmxpYyBmbG9hdCB3dzsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBDb2dsLk1hdHJpeD8gY29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlLCBh cnJheV9udWxsX3Rlcm1pbmF0ZWQgPSBmYWxzZSwgY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9m cm9tX2FycmF5IildCisrCQlwdWJsaWMgTWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGFycmF5KTsKKysJCXB1YmxpYyB2b2lkIGZydXN0dW0g KGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQg el9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlwdWJsaWMgdW5vd25lZCBmbG9hdFtdIGdldF9hcnJh eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9p bnZlcnNlIChvdXQgQ29nbC5NYXRyaXggaW52ZXJzZSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNv Z2xfbWF0cml4X2luaXRfaWRlbnRpdHkiKV0KKysJCXB1YmxpYyBNYXRyaXguaWRlbnRpdHkgKCk7 CisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfdHJhbnNs YXRpb24gKGZsb2F0IHR4LCBmbG9hdCB0eSwgZmxvYXQgdHopOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgaXNfaWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBsb29rX2F0IChmbG9hdCBleWVfcG9zaXRp b25feCwgZmxvYXQgZXllX3Bvc2l0aW9uX3ksIGZsb2F0IGV5ZV9wb3NpdGlvbl96LCBmbG9hdCBv YmplY3RfeCwgZmxvYXQgb2JqZWN0X3ksIGZsb2F0IG9iamVjdF96LCBmbG9hdCB3b3JsZF91cF94 LCBmbG9hdCB3b3JsZF91cF95LCBmbG9hdCB3b3JsZF91cF96KTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9tYXRyaXhfbXVsdGlwbHkiKV0KKysJCXB1YmxpYyBNYXRyaXgubXVsdGlwbHkgKENv Z2wuTWF0cml4IGEsIENvZ2wuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIG9ydGhvZ3JhcGhpYyAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZs b2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBuZWFyLCBmbG9hdCBmYXIpOworKwkJcHVibGljIHZv aWQgcGVyc3BlY3RpdmUgKGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwg ZmxvYXQgel9mYXIpOworKwkJcHVibGljIHZvaWQgcHJvamVjdF9wb2ludHMgKGludCBuX2NvbXBv bmVudHMsIHNpemVfdCBzdHJpZGVfaW4sIHZvaWQqIHBvaW50c19pbiwgc2l6ZV90IHN0cmlkZV9v dXQsIHZvaWQqIHBvaW50c19vdXQsIGludCBuX3BvaW50cyk7CisrCQlwdWJsaWMgdm9pZCByb3Rh dGUgKGZsb2F0IGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUu RXVsZXIgZXVsZXIpOworKwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0IHN4LCBmbG9hdCBzeSwg ZmxvYXQgc3opOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHRyYW5zZm9ybV9wb2ludCAocmVmIENv Z2wuTWF0cml4IG1hdHJpeCwgcmVmIGZsb2F0IHgsIHJlZiBmbG9hdCB5LCByZWYgZmxvYXQgeiwg cmVmIGZsb2F0IHcpOworKwkJcHVibGljIHZvaWQgdHJhbnNmb3JtX3BvaW50cyAoaW50IG5fY29t cG9uZW50cywgc2l6ZV90IHN0cmlkZV9pbiwgdm9pZCogcG9pbnRzX2luLCBzaXplX3Qgc3RyaWRl X291dCwgdm9pZCogcG9pbnRzX291dCwgaW50IG5fcG9pbnRzKTsKKysJCXB1YmxpYyB2b2lkIHRy YW5zbGF0ZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgdmlld18yZF9pbl9mcnVzdHVtIChmbG9hdCBs ZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwg ZmxvYXQgel8yZCwgZmxvYXQgd2lkdGhfMmQsIGZsb2F0IGhlaWdodF8yZCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCB2aWV3XzJkX2luX3BlcnNwZWN0aXZl IChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfMmQsIGZs b2F0IHdpZHRoXzJkLCBmbG9hdCBoZWlnaHRfMmQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RydWN0IE9uc2NyZWVuRGlydHlJbmZvIHsK KysJCXB1YmxpYyBpbnQgeDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7 CisrCQlwdWJsaWMgaW50IGhlaWdodDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBU ZXh0dXJlVmVydGV4IHsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7Cisr CQlwdWJsaWMgZmxvYXQgejsKKysJCXB1YmxpYyBmbG9hdCB0eDsKKysJCXB1YmxpYyBmbG9hdCB0 eTsKKysJCXB1YmxpYyBDb2dsLkNvbG9yIGNvbG9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBzdHJ1Y3QgVXNlckRhdGFLZXkgeworKwkJcHVi bGljIGludCB1bnVzZWQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgY25hbWUgPSAiX0NvZ2xDb2xvclNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlwdWJsaWMgc3RydWN0IF9Db2xvclNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNz ZXJ0X0NvZ2xDb2xvcl9zaXplOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9Db2dsTWF0cml4U2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgX01hdHJpeFNpemVDaGVjayB7CisrCQlbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3Rp bWVfYXNzZXJ0X0NvZ2xNYXRyaXhfc2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbFRleHR1cmVWZXJ0ZXhTaXplQ2hlY2si LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfVGV4dHVyZVZlcnRleFNp emVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3 ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xUZXh0dXJlVmVydGV4X3NpemU7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9 ICJDT0dMX0FUVFJJQlVURV9UWVBFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEF0dHJpYnV0ZVR5cGUgeworKwkJQllU RSwKKysJCVVOU0lHTkVEX0JZVEUsCisrCQlTSE9SVCwKKysJCVVOU0lHTkVEX1NIT1JULAorKwkJ RkxPQVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfQklUTUFQX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEJpdG1hcEVycm9yIHsKKysJ CUZBSUxFRCwKKysJCVVOS05PV05fVFlQRSwKKysJCUNPUlJVUFRfSU1BR0UKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQkxF TkRfU1RSSU5HX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEJsZW5kU3RyaW5nRXJyb3IgeworKwkJUEFSU0Vf RVJST1IsCisrCQlBUkdVTUVOVF9QQVJTRV9FUlJPUiwKKysJCUlOVkFMSURfRVJST1IsCisrCQlH UFVfVU5TVVBQT1JURURfRVJST1I7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfQlVGRkVSX0JJVF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlckJpdCB7Cisr CQlDT0xPUiwKKysJCURFUFRILAorKwkJU1RFTkNJTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF8iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1Ymxp YyBlbnVtIEJ1ZmZlclRhcmdldCB7CisrCQlXSU5ET1dfQlVGRkVSLAorKwkJT0ZGU0NSRUVOX0JV RkZFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9ERVBUSF9URVNUX0ZVTkNUSU9OXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgZW51bSBEZXB0aFRlc3RGdW5jdGlvbiB7CisrCQlORVZFUiwKKysJCUxFU1Ms CisrCQlFUVVBTCwKKysJCUxFUVVBTCwKKysJCUdSRUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdF UVVBTCwKKysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9FR0xfSU1BR0VfRkxBR18iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBFZ2xJbWFnZUZsYWdzIHsKKysJCU5P TkUsCisrCQlOT19HRVRfREFUQQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9GRUFUVVJFX0lEXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBGZWF0 dXJlSUQgeworKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVU5TSUdORURfSU5U X0lORElDRVMiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1VOU0lHTkVEX0lOVF9JTkRJQ0VTLAorKwkJ W0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfUkVBRCIpXQor KwkJT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfUkVBRCwKKysJCVtDQ29kZSAoY25hbWUg PSAiQ09HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1dSSVRFIildCisrCQlPR0xfRkVBVFVS RV9JRF9NQVBfQlVGRkVSX0ZPUl9XUklURSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFU VVJFX0lEX1NXQVBfQlVGRkVSU19FVkVOVCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfU1dBUF9CVUZG RVJTX0VWRU5ULAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfUFJFU0VOVEFU SU9OX1RJTUUiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1BSRVNFTlRBVElPTl9USU1FLAorKwkJW0ND b2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfRkVOQ0UiKV0KKysJCU9HTF9GRUFUVVJFX0lE X0ZFTkNFLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9SRyIp XQorKwkJT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9SRywKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09H TF9GRUFUVVJFX0lEX0JVRkZFUl9BR0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0JVRkZFUl9BR0Us CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9URVhUVVJFX0VHTF9JTUFHRV9F WFRFUk5BTCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9FR0xfSU1BR0VfRVhURVJOQUwK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfRklMVEVSXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBG aWx0ZXJSZXR1cm4geworKwkJQ09OVElOVUUsCisrCQlSRU1PVkUKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRlJBTUVfRVZF TlRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0Iild CisrCXB1YmxpYyBlbnVtIEZyYW1lRXZlbnQgeworKwkJU1lOQywKKysJCUNPTVBMRVRFCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJD T0dMX0ZSQU1FQlVGRkVSX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg ZW51bSBGcmFtZWJ1ZmZlckVycm9yIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GUkFNRUJV RkZFUl9FUlJPUl9BTExPQ0FURSIpXQorKwkJRlJBTUVCVUZGRVJfRVJST1JfQUxMT0NBVEU7Cisr CQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfR1JBUEhJQ1NfUkVTRVRf U1RBVFVTXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBHcmFwaGljc1Jl c2V0U3RhdHVzIHsKKysJCU5PX0VSUk9SLAorKwkJR1VJTFRZX0NPTlRFWFRfUkVTRVQsCisrCQlJ Tk5PQ0VOVF9DT05URVhUX1JFU0VULAorKwkJVU5LTk9XTl9DT05URVhUX1JFU0VULAorKwkJUFVS R0VEX0NPTlRFWFRfUkVTRVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfSU5ESUNFU19UWVBFX1VOU0lHTkVEXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBJbmRpY2VzVHlwZSB7CisrCQlCWVRFLAor KwkJU0hPUlQsCisrCQlJTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfQUxQSEFfRlVOQ18iLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gTWF0ZXJpYWxBbHBoYUZ1bmMgeworKwkJTkVW RVIsCisrCQlMRVNTLAorKwkJRVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9U RVFVQUwsCisrCQlHRVFVQUwsCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfRklMVEVSXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbEZpbHRlciB7Cisr CQlORUFSRVNULAorKwkJTElORUFSLAorKwkJTkVBUkVTVF9NSVBNQVBfTkVBUkVTVCwKKysJCUxJ TkVBUl9NSVBNQVBfTkVBUkVTVCwKKysJCU5FQVJFU1RfTUlQTUFQX0xJTkVBUiwKKysJCUxJTkVB Ul9NSVBNQVBfTElORUFSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFMX1dSQVBfTU9ERV8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBN YXRlcmlhbFdyYXBNb2RlIHsKKysJCVJFUEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRP TUFUSUMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfUElQRUxJTkVfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNT LAorKwkJRVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlH RVFVQUwsCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUElQRUxJTkVfQ1VMTF9GQUNFX01PREVfIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lQ3VsbEZhY2VNb2RlIHsK KysJCU5PTkUsCisrCQlGUk9OVCwKKysJCUJBQ0ssCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5F X0ZJTFRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVG aWx0ZXIgeworKwkJTkVBUkVTVCwKKysJCUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJF U1QsCisrCQlMSU5FQVJfTUlQTUFQX05FQVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIs CisrCQlMSU5FQVJfTUlQTUFQX0xJTkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9XUkFQX01PREVfIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVi bGljIGVudW0gUGlwZWxpbmVXcmFwTW9kZSB7CisrCQlSRVBFQVQsCisrCQlNSVJST1JFRF9SRVBF QVQsCisrCQlDTEFNUF9UT19FREdFLAorKwkJQVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJWEVMX0ZPUk1B VF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCXB1YmxpYyBlbnVtIFBpeGVsRm9ybWF0IHsKKysJCUFOWSwKKysJCUFfOCwK KysJCVJHQl81NjUsCisrCQlSR0JBXzQ0NDQsCisrCQlSR0JBXzU1NTEsCisrCQlZVVYsCisrCQlH XzgsCisrCQlSR184OCwKKysJCVJHQl84ODgsCisrCQlCR1JfODg4LAorKwkJUkdCQV84ODg4LAor KwkJQkdSQV84ODg4LAorKwkJQVJHQl84ODg4LAorKwkJQUJHUl84ODg4LAorKwkJUkdCQV8xMDEw MTAyLAorKwkJQkdSQV8xMDEwMTAyLAorKwkJQVJHQl8yMTAxMDEwLAorKwkJQUJHUl8yMTAxMDEw LAorKwkJUkdCQV84ODg4X1BSRSwKKysJCUJHUkFfODg4OF9QUkUsCisrCQlBUkdCXzg4ODhfUFJF LAorKwkJQUJHUl84ODg4X1BSRSwKKysJCVJHQkFfNDQ0NF9QUkUsCisrCQlSR0JBXzU1NTFfUFJF LAorKwkJUkdCQV8xMDEwMTAyX1BSRSwKKysJCUJHUkFfMTAxMDEwMl9QUkUsCisrCQlBUkdCXzIx MDEwMTBfUFJFLAorKwkJQUJHUl8yMTAxMDEwX1BSRSwKKysJCURFUFRIXzE2LAorKwkJREVQVEhf MzIsCisrCQlERVBUSF8yNF9TVEVOQ0lMXzg7CisrCQlwdWJsaWMgaW50IGdldF9ieXRlc19wZXJf cGl4ZWwgKGludCBwbGFuZSk7CisrCQlwdWJsaWMgaW50IGdldF9uX3BsYW5lcyAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1JFQURfUElYRUxTX0NP TE9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gUmVhZFBpeGVsc0ZsYWdzIHsKKysJCVtDQ29kZSAo Y25hbWUgPSAiQ09HTF9SRUFEX1BJWEVMU19DT0xPUl9CVUZGRVIiKV0KKysJCVJFQURfUElYRUxT X0NPTE9SX0JVRkZFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNwcmVmaXggPSAiQ09HTF9SRU5ERVJFUl9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIGVudW0gUmVuZGVyZXJFcnJvciB7CisrCQlYTElCX0RJU1BMQVlfT1BF TiwKKysJCUJBRF9DT05TVFJBSU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NIQURFUl9UWVBFXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFNo YWRlclR5cGUgeworKwkJVkVSVEVYLAorKwkJRlJBR01FTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU1RFUkVPXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBTdGVyZW9Nb2RlIHsKKysJCUJPVEgs CisrCQlMRUZULAorKwkJUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU1lTVEVNX0VSUk9SXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIFN5 c3RlbUVycm9yIHsKKysJCVVOU1VQUE9SVEVELAorKwkJTk9fTUVNT1JZCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRV UkVfQ09NUE9ORU5UU18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTgiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUNvbXBvbmVudHMgeworKwkJQSwKKysJ CVJHLAorKwkJUkdCLAorKwkJUkdCQSwKKysJCURFUFRICisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfRVJST1Jf IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ cHVibGljIGVudW0gVGV4dHVyZUVycm9yIHsKKysJCVNJWkUsCisrCQlGT1JNQVQsCisrCQlCQURf UEFSQU1FVEVSLAorKwkJVFlQRTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9URVhUVVJFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUZsYWdzIHsKKysJ CU5PTkUsCisrCQlOT19BVVRPX01JUE1BUCwKKysJCU5PX1NMSUNJTkcsCisrCQlOT19BVExBUwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9WRVJUSUNFU19NT0RFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFZlcnRpY2VzTW9kZSB7CisrCQlQT0lO VFMsCisrCQlMSU5FUywKKysJCUxJTkVfTE9PUCwKKysJCUxJTkVfU1RSSVAsCisrCQlUUklBTkdM RVMsCisrCQlUUklBTkdMRV9TVFJJUCwKKysJCVRSSUFOR0xFX0ZBTgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5ESU5H XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBXaW5kaW5nIHsKKysJCUNM T0NLV0lTRSwKKysJCUNPVU5URVJfQ0xPQ0tXSVNFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1dJTlNZU19GRUFUVVJFXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBXaW5zeXNGZWF0dXJlIHsKKysJ CU1VTFRJUExFX09OU0NSRUVOLAorKwkJU1dBUF9USFJPVFRMRSwKKysJCVZCTEFOS19DT1VOVEVS LAorKwkJVkJMQU5LX1dBSVQsCisrCQlURVhUVVJFX0ZST01fUElYTUFQLAorKwkJU1dBUF9CVUZG RVJTX0VWRU5ULAorKwkJU1dBUF9SRUdJT04sCisrCQlTV0FQX1JFR0lPTl9USFJPVFRMRSwKKysJ CVNXQVBfUkVHSU9OX1NZTkNIUk9OSVpFRCwKKysJCUJVRkZFUl9BR0UsCisrCQlTWU5DX0FORF9D T01QTEVURV9FVkVOVCwKKysJCU5fRkVBVFVSRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIERlYnVnT2JqZWN0Rm9yZWFj aFR5cGVDYWxsYmFjayAoQ29nbC5EZWJ1Z09iamVjdFR5cGVJbmZvIGluZm8pOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC4xMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBGZWF0 dXJlQ2FsbGJhY2sgKENvZ2wuRmVhdHVyZUlEIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlbkRpcnR5 Q2FsbGJhY2sgKENvZ2wuT25zY3JlZW4gb25zY3JlZW4sIENvZ2wuT25zY3JlZW5EaXJ0eUluZm8g aW5mbyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3Rh bmNlX3BvcyA9IDMuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGRl bGVnYXRlIHZvaWQgT25zY3JlZW5SZXNpemVDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVl biwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBQaXBlbGluZUxheWVyQ2FsbGJhY2sgKENv Z2wuUGlwZWxpbmUgcGlwZWxpbmUsIGludCBsYXllcl9pbmRleCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1Ymxp YyBkZWxlZ2F0ZSBib29sIFRleHR1cmUyREVHTEltYWdlRXh0ZXJuYWxBbGxvYyAoQ29nbC5UZXh0 dXJlMkQgdGV4XzJkKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJcHVibGljIGRlbGVn YXRlIHZvaWQgVXNlckRhdGFEZXN0cm95Q2FsbGJhY2sgKHZvaWQqIGRhdGEpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FGSVJTVF9C SVQiKV0KKysJcHVibGljIGNvbnN0IGludCBBRklSU1RfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FfQklUIildCisrCXB1Ymxp YyBjb25zdCBpbnQgQV9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNuYW1lID0gIkNPR0xfQkdSX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEJHUl9C SVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g IkNPR0xfREVQVEhfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgREVQVEhfQklUOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1BJWEVM X0ZPUk1BVF9NQVhfUExBTkVTIildCisrCXB1YmxpYyBjb25zdCBpbnQgUElYRUxfRk9STUFUX01B WF9QTEFORVM7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNu YW1lID0gIkNPR0xfUFJFTVVMVF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBQUkVNVUxUX0JJ VDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAi Q09HTF9TVEVOQ0lMX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFNURU5DSUxfQklUOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1RF WFRVUkVfTUFYX1dBU1RFIildCisrCXB1YmxpYyBjb25zdCBpbnQgVEVYVFVSRV9NQVhfV0FTVEU7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMg c3RhdGljIGJvb2wgYmxpdF9mcmFtZWJ1ZmZlciAoQ29nbC5GcmFtZWJ1ZmZlciBzcmMsIENvZ2wu RnJhbWVidWZmZXIgZGVzdCwgaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRz dF95LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29s IGNsdXR0ZXJfd2luc3lzX2hhc19mZWF0dXJlX0NMVVRURVIgKENvZ2wuV2luc3lzRmVhdHVyZSBm ZWF0dXJlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2Vx dWFsICh2b2lkKiB2MSwgdm9pZCogdjIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIGNvbG9yX2luaXRfZnJvbV9oc2wgKG91dCBDb2dsLkNvbG9yIGNvbG9yLCBmbG9h dCBodWUsIGZsb2F0IHNhdHVyYXRpb24sIGZsb2F0IGx1bWluYW5jZSk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19tYXRyaXhfcHJpbnQgKENvZ2wuTWF0cml4 IG1hdHJpeCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19v YmplY3RfZm9yZWFjaF90eXBlIChDb2dsLkRlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayBm dW5jKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX29iamVj dF9wcmludF9pbnN0YW5jZXMgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMg dm9pZCBmbHVzaCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBm b3JlYWNoX2ZlYXR1cmUgKENvZ2wuQ29udGV4dCBjb250ZXh0LCBDb2dsLkZlYXR1cmVDYWxsYmFj ayBjYWxsYmFjayk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x NiIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBzdGF0aWMgaW50NjQgZ2V0X2Nsb2NrX3Rp bWUgKENvZ2wuQ29udGV4dCBjb250ZXh0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfZGVwdGhfdGVzdF9l bmFibGVkICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJcHVibGljIHN0YXRpYyBDb2dsLkdyYXBoaWNzUmVzZXRTdGF0dXMgZ2V0X2dyYXBoaWNzX3Jl c2V0X3N0YXR1cyAoQ29nbC5Db250ZXh0IGNvbnRleHQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRp YyBHTGliLk9wdGlvbkdyb3VwIGdldF9vcHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuQ2FsbGJh Y2sgZ2V0X3Byb2NfYWRkcmVzcyAoc3RyaW5nIHMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLlR5cGUgZ3R5cGVf bWF0cml4X2dldF90eXBlICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBi b29sIGhhc19mZWF0dXJlIChDb2dsLkNvbnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJlSUQgZmVh dHVyZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfY29udGV4 dCAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9v bCBpc19mcmFtZWJ1ZmZlciAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBzdGF0aWMgYm9vbCBpc19vbnNjcmVlbiAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3BpcGVsaW5lICh2b2lkKiBvYmplY3QpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0 YXRpYyBib29sIGlzX3RleHR1cmVfMmQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfdGV4dHVyZV8yZF9zbGljZWQgKHZvaWQqIG9iamVj dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBtYXRyaXhfZXF1YWwg KHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2JhY2tmYWNlX2N1bGxpbmdf ZW5hYmxlZCAoYm9vbCBzZXR0aW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfZGVwdGhfdGVzdF9lbmFi bGVkIChib29sIHNldHRpbmcpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNoYWRlcl9jb21waWxlIChDb2dsLkhh bmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTYiKV0KKysJcHVibGljIHN0YXRpYyBzdHJpbmcgc2hhZGVyX2dldF9pbmZvX2xvZyAoQ29nbC5I YW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjE2IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5TaGFkZXJUeXBlIHNoYWRlcl9nZXRfdHlwZSAo Q29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBzaGFkZXJfaXNfY29tcGlsZWQgKENv Z2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2hhZGVyX3NvdXJjZSAoQ29nbC5IYW5k bGUgc2hhZGVyLCBzdHJpbmcgc291cmNlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5U ZXh0dXJlIHRleHR1cmVfbmV3X2Zyb21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wu VGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAu OCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2RhdGEg KGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4 ZWxGb3JtYXQgZm9ybWF0LCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCwgaW50IHJv d3N0cmlkZSwgdWludDggZGF0YSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVy ZSB0ZXh0dXJlX25ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxh Z3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2lu Y2UgPSAiMC44IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X3dp dGhfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdz LCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgc3RhdGljIHVpbnQzMiB4MTFfb25zY3JlZW5fZ2V0X3dpbmRvd194aWQgKENvZ2wu T25zY3JlZW4gb25zY3JlZW4pOworK30KKy0tIAorMi4yNS4wCisKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBs YXRlCmluZGV4IGIzMmU3NzM0ZDNiLi4xODBjZGMwMmYxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9i dWRnaWUtZGVza3RvcC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBs YXRlCkBAIC0xLDIxICsxLDIyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdidWRnaWUtZGVza3Rv cCcKIHBrZ25hbWU9YnVkZ2llLWRlc2t0b3AKIHZlcnNpb249MTAuNS4xCi1yZXZpc2lvbj0zCity ZXZpc2lvbj00CiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29uZmlndXJl X2FyZ3M9Ii1Ed2l0aC1ndGstZG9jPWZhbHNlIC1Ed2l0aC1kZXNrdG9wLWljb25zPW5vbmUiCiBo b3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wgdmFsYSBnbGliLWRldmVsIGdvYmpl Y3QtaW50cm9zcGVjdGlvbiBzYXNzYyIKIG1ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBsaWJu b3RpZnktZGV2ZWwgYWNjb3VudHNzZXJ2aWNlLWRldmVsIGxpYnBlYXMtZGV2ZWwgbGlid25jay1k ZXZlbAotbXV0dGVyLWRldmVsIGlidXMtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1 ZGlvLWRldmVsIHVwb3dlci1kZXZlbCBndGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKLWdub21lLWJs dWV0b290aC1kZXZlbCBnbm9tZS1tZW51cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2 ZWwgdmFsYSBsaWJ1dWlkLWRldmVsIGxpYnVwb3dlci1nbGliMyIKLWRlcGVuZHM9Imdub21lLXNl c3Npb24gZ25vbWUtc2V0dGluZ3MtZGFlbW9uIGdub21lLWNvbnRyb2wtY2VudGVyIGVsb2dpbmQi CisgbXV0dGVyLWRldmVsIGlidXMtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlv LWRldmVsIHVwb3dlci1kZXZlbCBndGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKKyBnbm9tZS1ibHVl dG9vdGgtZGV2ZWwgZ25vbWUtbWVudXMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVs IHZhbGEgbGlidXVpZC1kZXZlbCBsaWJ1cG93ZXItZ2xpYjMiCitkZXBlbmRzPSJnbm9tZS1zZXNz aW9uIGdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1jb250cm9sLWNlbnRlciBnbm9tZS10aGVt ZXMtZXh0cmEgZWxvZ2luZCIKIHNob3J0X2Rlc2M9Ik1vZGVybiBkZXNrdG9wIGVudmlyb25tZW50 IGZyb20gdGhlIFNvbHVzIFByb2plY3QiCiBtYWludGFpbmVyPSJMb3JlbSA8bm90bG9yZW1pcHN1 bUBwcm90b25tYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9ubHksIExHUEwtMi4xLW9ubHki CiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0 b3AiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1k ZXNrdG9wL3JlbGVhc2VzL2Rvd25sb2FkL3Yke3ZlcnNpb259L2J1ZGdpZS1kZXNrdG9wLSR7dmVy c2lvbn0udGFyLnh6IgogY2hlY2tzdW09ZDAzNWVjNzY0ZTAwOTM3MjJhODMyNDExYWViNmFiYTI5 NmMwOTk1ZDkyN2VhMDY5YjIwNWIxOWM4NWFhZTU2NQorcGF0Y2hfYXJncz0iLU5wMSIKIAogcHJl X2NvbmZpZ3VyZSgpIHsKIAl2c2VkIC1pICdzL2V4ZWMgZ25vbWUtc2Vzc2lvbi9leGVjIGdub21l LXNlc3Npb24gLS1idWlsdGluLycgc3JjL3Nlc3Npb24vYnVkZ2llLWRlc2t0b3AuaW4KCkZyb20g MjRlMTEwMGQ1NmI4ZDQ0YWQ3MWJmMzg4NTg5ZTEyYTU2ZDYxMTUwNyBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAz MCBBcHIgMjAyMCAxMzo0NjoxNiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDMvNTJdIHhkZy1kZXNr dG9wLXBvcnRhbC1ndGs6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5 CgotLS0KIHNyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRl c2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQppbmRleCBkZWUwZTQ2MzM4Ni4uNTU4Yzc1ZjUzOWQg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4ZGctZGVza3RvcC1wb3J0YWwtZ3RrJwogcGtnbmFtZT14 ZGctZGVza3RvcC1wb3J0YWwtZ3RrCiB2ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25m aWcgbGlieHNsdCBnbGliLWRldmVsIHhkZy1kZXNrdG9wLXBvcnRhbCBnZXR0ZXh0IgogbWFrZWRl cGVuZHM9ImZsYXRwYWstZGV2ZWwgZ3RrKzMtZGV2ZWwgbGlieHNsdC1kZXZlbCBsaWJnbGliLWRl dmVsCgpGcm9tIGRjNWJjMTAxZjgwNjNhMjExZjMyYWJiNzA1NzEwOWRlZTk2NGIwNTEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IFRodSwgMzAgQXByIDIwMjAgMDI6NDk6MTMgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ0LzUy XSBjaGVlc2U6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQog c3JjcGtncy9jaGVlc2UvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRp b24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCmluZGV4IDdhNTZiYTAzOWZiLi4wMzdjZGE0OWM5 OCAxMDA2NDQKLS0tIGEvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jaGVl c2UvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjaGVlc2Un CiBwa2duYW1lPWNoZWVzZQogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK IGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSIt RGd0a19kb2M9JCh2b3B0X2lmIGd0a19kb2MgJ3RydWUnICdmYWxzZScpCgpGcm9tIDYyYTc5MjBj NDg1NDA3ZGVhZDViMjUxYTdiODczYWZmZjFkYjM5OWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIw MjAgMDI6MzQ6NTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ1LzUyXSBnbm9tZS1ib29rczogcmVi dWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21l LWJvb2tzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxhdGUKaW5kZXggMTE0YjllMDM0YzIuLjFkNDk3NGZl MTgzIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ25vbWUtYm9va3MvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdnbm9tZS1ib29rcycKIHBrZ25hbWU9Z25vbWUtYm9va3MKIHZlcnNpb249My4zNC4wCi1y ZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1l c29uCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgdmFsYSBnbGliLWRldmVsIGxpYnJzdmcg ZG9jYm9vay14c2wgbGlieHNsdAoKRnJvbSBhNjk1MDJlMjE3OWQ0OTVkNmQzYmY1MGU4NGEwMGU3 NzFkYmY2NTIwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjQ3OjMxICswNjAwClN1Ympl Y3Q6IFtQQVRDSCA0Ni81Ml0gZ25vbWUtY2hhcmFjdGVyczogcmVidWlsZCBhZ2FpbnN0CiBsaWJn bm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIGIvc3JjcGtn cy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCmluZGV4IDg5ODY4ZjRiYzA0Li5hYzI2NGU1MWE2 YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLWNoYXJhY3RlcnMnCiBwa2duYW1lPWdub21lLWNoYXJhY3RlcnMK IHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1tZXNv bgogYnVpbGRfaGVscGVyPSJnaXIiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2pzIGdsaWIt ZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmlnIgoKRnJvbSBjMGIzOWQzNjEyZTViNDEyNDY3MDU0MmRl YmY4YTFkZmMzNDdjOGU3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU1OjE4ICswNjAw ClN1YmplY3Q6IFtQQVRDSCA0Ny81Ml0gZ25vbWUtZG9jdW1lbnRzOiByZWJ1aWxkIGFnYWluc3QK IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWRvY3VtZW50cy90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlIGIvc3Jj cGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKaW5kZXggOTdiNTNkNjM1ZDcuLjdlNDViODI1 ZTcxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLWRvY3VtZW50cycKIHBrZ25hbWU9Z25vbWUtZG9jdW1lbnRzCiB2 ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIi CiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0 IGl0c3Rvb2wgcGtnLWNvbmZpZyBnbGliLWRldmVsIGxpYnhzbHQgZ2RrLXBpeGJ1ZgoKRnJvbSA2 NjE4OTM4Mzk4YTY0YmIzNmQwN2VhODJiYTY0ZjExYzIzYTY0MmNhIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMw IEFwciAyMDIwIDAyOjU2OjU2ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0OC81Ml0gZ25vbWUtZm9u dC12aWV3ZXI6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0K IHNyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2du b21lLWZvbnQtdmlld2VyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1w bGF0ZQppbmRleCA2ZDAzNTM2NmQ0NC4uZjc0ZmNiY2IwMDAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv Z25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdl ci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWZv bnQtdmlld2VyJwogcGtnbmFtZT1nbm9tZS1mb250LXZpZXdlcgogdmVyc2lvbj0zLjM0LjAKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJmb250Y29uZmlnLWRldmVsIGZy ZWV0eXBlLWRldmVsIGdsaWItZGV2ZWwgZ3RrKzMtZGV2ZWwKCkZyb20gYTJlMmQzOWI2OGMzYmYw NTg3MDkyOWVjZWViNWIxOWY4ZmQwZGJiMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDAyOjI3 OjE3ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0OS81Ml0gZ25vbWUtc2NyZWVuc2F2ZXI6IHJlYnVp bGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIC4uLi9wYXRjaGVzL2du b21lLWRlc2t0b3AtMy4zNi5wYXRjaCAgICAgICAgICAgICAgICB8IDEzICsrKysrKysrKysrKysK IHNyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICA1 ICsrKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRjaGVzL2du b21lLWRlc2t0b3AtMy4zNi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVu c2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2ggYi9zcmNwa2dzL2dub21lLXNj cmVlbnNhdmVyL3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi41OGQ5MmU0NjNhMwotLS0gL2Rldi9udWxsCisrKyBi L3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0 Y2gKQEAgLTAsMCArMSwxMyBAQAorZGlmZiAtTmF1ciBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS5v cmlnL3NyYy9ncy1tYW5hZ2VyLmMgZ25vbWUtc2NyZWVuc2F2ZXItMy42LjEvc3JjL2dzLW1hbmFn ZXIuYworLS0tIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xLm9yaWcvc3JjL2dzLW1hbmFnZXIuYwky MDIwLTAzLTA4IDA4OjUzOjQ2LjQwODQzMTU3OCArMDAwMAorKysrIGdub21lLXNjcmVlbnNhdmVy LTMuNi4xL3NyYy9ncy1tYW5hZ2VyLmMJMjAyMC0wMy0wOCAwODo1NDozMS44NzU3Mzg3MzIgKzAw MDAKK0BAIC03ODgsOCArNzg4LDcgQEAKKyAgICAgICAgIHN1cmZhY2UgPSBnbm9tZV9iZ19jcmVh dGVfc3VyZmFjZSAobWFuYWdlci0+cHJpdi0+YmcsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGdka193aW5kb3csCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHdpZHRoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBoZWlnaHQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEZBTFNFKTsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaGVpZ2h0KTsKKyAgICAgICAgIGdzX3dpbmRvd19zZXRfYmFja2dyb3VuZF9zdXJmYWNl ICh3aW5kb3csIHN1cmZhY2UpOworICAgICAgICAgY2Fpcm9fc3VyZmFjZV9kZXN0cm95IChzdXJm YWNlKTsKKyB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRl IGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZQppbmRleCAzNjNmY2YxMmUxMC4u NTRhOWEzNWVjY2IgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZQpAQCAtMSwxNSArMSwx NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2NyZWVuc2F2ZXInCiBwa2duYW1lPWdu b21lLXNjcmVlbnNhdmVyCiB2ZXJzaW9uPTMuNi4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29tcGls ZS13YXJuaW5ncz1taW5pbXVtIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9tYWtl IGludGx0b29sIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZ25vbWUtZGVza3RvcC1kZXZlbCBk YnVzLWdsaWItZGV2ZWwgcGFtLWRldmVsIgogZGVwZW5kcz0iZ25vbWUtZGVza3RvcCBsaWJnbm9t ZWtiZCBkYnVzIgotc2hvcnRfZGVzYz0iQSBuZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVwbGFj ZSB4c2NyZWVuc2F2ZXIiCitzaG9ydF9kZXNjPSJOZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVw bGFjZSB4c2NyZWVuc2F2ZXIiCiBtYWludGFpbmVyPSJzaGl6b25pYyA8cmVhbHRpYXpAZ21haWwu Y29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtp Lmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNjcmVlbnNhdmVyIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFy Lnh6IgogY2hlY2tzdW09ZjM5Yjc4ZDRmN2ZlZDc0OGM3ZjBhMzFkNjk0MTEyZmI5MDdjNmQzYzRl NjNkYjIyZWI4NThkZjA3ZTk2MmNkMAorcGF0Y2hfYXJncz0iLU5wMSIKCkZyb20gYmZkYWZjZThj OTkxZTQ1MzBjYTgzYmQ0MGJhMGVmNDhhMWFlZGMzMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIw IDExOjQzOjE5ICswNjAwClN1YmplY3Q6IFtQQVRDSCA1MC81Ml0gZ25vbWUtd2VhdGhlcjogcmVi dWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21l LXdlYXRoZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxh dGUgYi9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKaW5kZXggZDMwYmU5YmYxOTIuLmMw MjhlNDZiYTY1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9nbm9tZS13ZWF0aGVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnZ25vbWUtd2VhdGhlcicKIHBrZ25hbWU9Z25vbWUtd2VhdGhlcgogdmVy c2lvbj0zLjM2LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgog YnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGl0 c3Rvb2wgZ2xpYi1kZXZlbCBnanMiCgpGcm9tIDc1ZmIxZDkyNzM5MzlmYmYxNDliZWE2ZjY2MjU5 NmNjY2UwYmYxODIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6NTc6NTcgKzA2MDAKU3Vi amVjdDogW1BBVENIIDUxLzUyXSB0b3RlbTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0 b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL3RvdGVtL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy90b3RlbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKaW5kZXggODE1MjJiMzE0 ODguLmU0MTg2NjMyMTUzIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICd0b3RlbScKIHBrZ25hbWU9dG90ZW0KIHZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0xCity ZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1 cmVfYXJncz0iLURlbmFibGUtcHl0aG9uPW5vIC1EZW5hYmxlLW5hdXRpbHVzPXllcwoKRnJvbSBi MWUyN2I3YTI3ODg3NTBmZWUxZjYxNjQ0N2VhYzFkYjhiMWM3ZTUyIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMw IEFwciAyMDIwIDAzOjA0OjA3ICswNjAwClN1YmplY3Q6IFtQQVRDSCA1Mi81Ml0gbHV0cmlzOiBy ZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgpbY2kgc2tpcF0KLS0tCiBz cmNwa2dzL2x1dHJpcy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRl IGIvc3JjcGtncy9sdXRyaXMvdGVtcGxhdGUKaW5kZXggZjgwMTg0NGM3N2EuLjM5NjIyOWFlNjI3 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2x1dHJp cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2x1dHJpcycK IHBrZ25hbWU9bHV0cmlzCiB2ZXJzaW9uPTAuNS42Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBh cmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBidWlsZF9oZWxwZXI9Imdp ciIK --===============1929718160650047044==--